@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400;500&display=swap");:root{--color-bg:#f4f6f8;--color-fg:#0f172a;--color-accent:#005cbb;--color-accent-fg:#fff;--color-accent-hover:#004a97;--color-accent-soft:#d5e3ff;--color-muted:#64748b;--color-card:#fff;--color-border:#e5e7eb;--color-surface:#f4f3f8;--color-success:#146c2e;--color-success-bg:#a6f4b3;--color-warning:#7d5700;--color-warning-bg:#ffdea0;--color-error:#ba1a1a;--color-error-bg:#ffdad6;--radius:16px;--radius-lg:20px;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.04),0 1px 3px 1px rgba(0,0,0,.05);--motion:200ms cubic-bezier(0.2,0,0,1);font-family:Noto Sans JP,system-ui,-apple-system,Segoe UI,Hiragino Sans,sans-serif;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-fg);min-height:100vh;-webkit-tap-highlight-color:transparent}.page{max-width:420px;margin:0 auto;padding:20px 16px 64px}.home-with-nav{padding-bottom:calc(96px + env(safe-area-inset-bottom))}h1{font-size:1.5rem;margin:8px 0 12px;letter-spacing:0}h1,h2{font-weight:600}h2{font-size:.8125rem;margin:24px 4px 12px;color:var(--color-muted);letter-spacing:.3px}p{line-height:1.65;color:var(--color-fg)}.muted{color:var(--color-muted);font-size:.8125rem}.home-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.home-header h1{font-size:1.375rem;font-weight:600;margin:4px 0 0;letter-spacing:0}.top-bar{display:flex;align-items:center;justify-content:space-between;margin:0 -4px 16px;padding:4px 0}.top-bar-title{font-size:.9375rem;font-weight:500;color:var(--color-muted)}.icon-button{width:44px;height:44px;border-radius:22px;background:var(--color-card);border:1px solid var(--color-border);font-size:18px;cursor:pointer;color:var(--color-fg);display:flex;align-items:center;justify-content:center;transition:background var(--motion);font-family:inherit}.icon-button:hover{background:var(--color-surface)}.back-btn{width:44px;height:44px;border-radius:22px;background:transparent;border:none;font-size:22px;cursor:pointer;color:var(--color-fg);display:inline-flex;align-items:center;justify-content:center;transition:background var(--motion);font-family:inherit}.back-btn:hover{background:var(--color-surface)}.card{background:var(--color-card);border-radius:var(--radius);border:1px solid var(--color-border);padding:16px;box-shadow:var(--shadow-sm)}.card+.card{margin-top:16px}.button{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--color-accent);color:var(--color-accent-fg);border:0;border-radius:var(--radius);padding:16px 24px;font-size:1rem;font-weight:600;cursor:pointer;width:100%;text-align:center;text-decoration:none;box-shadow:0 2px 6px rgba(0,92,187,.2);font-family:inherit;transition:background var(--motion);margin-bottom:10px}.button:hover{background:var(--color-accent-hover)}.button:disabled{background:var(--color-muted);cursor:not-allowed;box-shadow:none}.button-secondary{background:transparent;color:var(--color-accent);border:1px solid var(--color-accent);box-shadow:none}.button-secondary:hover{background:var(--color-accent-soft)}.button-warning{background:var(--color-warning-bg);color:var(--color-warning);box-shadow:none}.button-warning:hover{filter:brightness(.95)}.cta-share{background:linear-gradient(135deg,var(--color-accent) 0,#1e77d9 100%);color:#fff;border:none;border-radius:var(--radius-lg);padding:20px;width:100%;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:14px;box-shadow:0 4px 12px rgba(0,92,187,.25);font-family:inherit;margin:12px 0 24px;text-decoration:none;transition:transform var(--motion),box-shadow var(--motion)}.cta-share:active{transform:scale(.98)}.cta-share-icon{width:52px;height:52px;border-radius:14px;background:hsla(0,0%,100%,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:28px}.cta-share-body{flex:1 1;text-align:left}.cta-share-title{font-size:15px;font-weight:600;line-height:1.3}.cta-share-sub{font-size:11px;font-weight:400;opacity:.85;margin-top:4px}.rx-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.rx-list .rx-item{margin:0}.rx-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px}.rx-title{font-size:1rem;font-weight:600;line-height:1.35}.rx-date{font-size:.75rem;white-space:nowrap;padding:3px 8px;background:var(--color-surface);border-radius:8px;font-weight:500}.rx-date,.rx-dosage{color:var(--color-muted)}.rx-dosage{font-size:.875rem;margin-bottom:8px}.rx-meta{font-size:.75rem;color:var(--color-muted);padding-top:8px}.bottom-nav,.rx-meta{border-top:1px solid var(--color-border)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:grid;grid-template-columns:repeat(2,1fr);background:var(--color-card);padding:8px 0 calc(12px + env(safe-area-inset-bottom));box-shadow:0 -1px 4px rgba(0,0,0,.04)}.bottom-nav-tab{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--color-muted);font-size:.75rem;text-decoration:none;padding:4px 8px;cursor:pointer;background:transparent;border:none;font-family:inherit;font-weight:500}.bottom-nav-tab-active{color:var(--color-accent)}.nav-icon{width:56px;height:28px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:20px;transition:background var(--motion)}.bottom-nav-tab-active .nav-icon{background:var(--color-accent-soft)}.share-title{font-size:1.5rem;font-weight:600;margin:8px 0 12px}.lead{font-size:.9375rem;line-height:1.65;color:var(--color-fg);margin:0 0 20px}.lead strong{color:var(--color-accent);font-weight:600}.qr-card{padding:24px;flex-direction:column;gap:16px;margin-bottom:16px;border-radius:var(--radius-lg)}.qr-card,.qr-frame{display:flex;align-items:center}.qr-frame{width:240px;height:240px;background:#fff;padding:12px;border-radius:12px;border:1px solid var(--color-border);justify-content:center}.qr-caption{font-size:.75rem;color:var(--color-muted)}.countdown{background:var(--color-accent-soft);color:#001b3d;padding:14px 16px;border-radius:14px;display:flex;align-items:center;gap:12px;margin:0 0 20px}.countdown-icon{font-size:22px}.countdown-body{flex:1 1}.countdown-label{font-size:.6875rem;font-weight:600;color:var(--color-accent)}.countdown-time{font-size:1.375rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-family:Roboto Mono,monospace;color:#001b3d;line-height:1.1;margin-top:2px}.vc-card{margin-bottom:24px;padding:14px 16px}.vc-card h2{font-size:.75rem;font-weight:600;margin:0 0 8px;color:var(--color-muted);letter-spacing:.3px}.mono{font-family:Roboto Mono,JetBrains Mono,SF Mono,Consolas,monospace;font-size:.75rem;word-break:break-all;background:var(--color-surface);padding:10px 12px;border-radius:8px;display:block;line-height:1.55;color:var(--color-fg)}.form-field{display:block;margin-bottom:12px}.form-field label{display:block;font-size:.8125rem;font-weight:500;margin-bottom:6px;color:var(--color-fg)}.form-field input,.form-field select,.form-field textarea{width:100%;padding:12px 14px;border:1px solid var(--color-border);border-radius:12px;font-size:1rem;background:var(--color-card);font-family:inherit;color:var(--color-fg)}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--color-accent)}.form-field .error{color:var(--color-error);font-size:.75rem;margin-top:4px}.error{color:var(--color-error);font-size:.875rem;padding:12px;background:var(--color-error-bg);border-radius:8px;margin:12px 0}.mypage-dl{margin:0;padding:0}.mypage-row{display:grid;grid-template-columns:6rem 1fr;grid-gap:8px;gap:8px;padding:6px 0;border-bottom:1px solid var(--color-border)}.mypage-row:last-child{border-bottom:none}.mypage-row dt{color:var(--color-muted);font-size:.8125rem;margin:0}.mypage-row dd{margin:0;color:var(--color-fg)}.mypage-actions{display:flex;flex-direction:column;gap:10px;margin:16px 0 24px}.steps{display:flex;gap:6px;margin-bottom:20px}.step{flex:1 1;height:4px;background:var(--color-border);border-radius:2px}.step.active{background:var(--color-accent)}.manual-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.manual-back{font-size:.875rem;color:var(--color-accent);text-decoration:none;white-space:nowrap}.manual-lead{font-size:.9375rem;color:var(--color-muted);margin:0 0 20px}.manual-toc{padding:16px}.manual-toc-title{font-size:.8125rem;color:var(--color-muted);margin:0 0 10px}.manual-toc-list{list-style:none;margin:0;padding:0;font-size:.9375rem;line-height:2}.manual-toc-list a{color:var(--color-accent);text-decoration:none}.manual-chapter{margin-top:32px;scroll-margin-top:12px}.manual-chapter-title{font-size:1.0625rem;font-weight:600;color:var(--color-fg);margin:0 4px 6px;letter-spacing:0}.manual-chapter-lead{font-size:.875rem;color:var(--color-muted);margin:0 4px 14px}.manual-section{scroll-margin-top:12px}.manual-section-title{font-size:1rem;font-weight:600;margin:0 0 4px}.manual-when{font-size:.8125rem;color:var(--color-muted);margin:0 0 14px}.manual-steps{list-style:decimal;margin:0;padding-left:20px;font-size:.9375rem;line-height:1.85}.manual-steps li{margin-bottom:10px}.manual-step-text{display:block}.manual-step-hint{display:block;font-size:.8125rem;color:var(--color-muted);margin-top:2px}.manual-faq{margin:0}.manual-faq>div{padding:12px 0;border-bottom:1px solid var(--color-border)}.manual-faq>div:last-child{border-bottom:none;padding-bottom:0}.manual-faq dt{font-size:.9375rem;font-weight:600;margin-bottom:4px}.manual-faq dd{margin:0;font-size:.875rem;line-height:1.8;color:var(--color-muted)}.manual-figure{margin:16px 0 0}.manual-figure img{width:100%;height:auto;display:block;border:1px solid var(--color-border);border-radius:var(--radius)}.manual-figure figcaption{font-size:.75rem;color:var(--color-muted);text-align:center;margin-top:8px}.manual-notes{margin-top:16px;padding:12px 14px;background:var(--color-surface);border-radius:var(--radius)}.manual-notes-title{font-size:.8125rem;font-weight:600;margin-bottom:6px}.manual-notes ul{margin:0;padding-left:18px;font-size:.875rem;line-height:1.8;color:var(--color-muted)}.manual-notes li{margin-bottom:4px}