:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#242126;background:#fbfaf8;font-synthesis:none;--bg:#fbfaf8;--panel:#fff;--panel-soft:#f5f1f2;--border:#e8e1e4;--text:#242126;--muted:#756e76;--accent:#704260;--accent-strong:#56314b;--accent-tint:#f2eaf0;--success:#718d77;--warning:#b47a32;--danger:#b65a5b;--shadow:0 18px 55px rgba(58,37,50,.08)}:root[data-theme=dark]{--bg:#171317;--panel:#231d23;--panel-soft:#30262f;--border:#443640;--text:#f7f1f5;--muted:#b7aab4;--accent:#c890af;--accent-strong:#e7b8d0;--accent-tint:#3b2938;--shadow:0 18px 55px rgba(0,0,0,.22)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-width:320px}button,input,select{font:inherit}button{cursor:pointer;background:var(--accent);color:#fff;border:0;border-radius:12px;padding:.7rem 1rem;font-weight:700;transition:transform .16s,box-shadow .16s,background .16s}button:hover{transform:translateY(-1px);box-shadow:0 8px 18px #7042602e}button.secondary{background:transparent;color:var(--text);border:1px solid var(--border);box-shadow:none}button:disabled{opacity:.55;cursor:not-allowed;transform:none}input,select{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:11px;padding:.72rem .8rem;outline:none}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}label{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.85rem;color:var(--muted);font-size:.86rem}label.checkbox{flex-direction:row;align-items:center}.error{color:var(--danger)}.hint{color:var(--muted)}.app-shell{min-height:100vh}.sidebar-nav{display:none}.main-column{min-width:0;flex:1}main{max-width:1160px;margin:0 auto;padding:2.5rem clamp(1.25rem,4vw,4.5rem) 4rem}.brand{display:flex;align-items:center;gap:.65rem;color:var(--text);font-family:Georgia,serif;font-size:1.3rem;letter-spacing:-.02em}.brand img{width:32px;height:32px;object-fit:contain}.mobile-brand{display:flex;margin-bottom:2rem}.nav-section-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);padding:.5rem .75rem;margin-top:2.3rem}.sidebar-spacer{flex:1}.sidebar-nav a,.sidebar-nav button.logout{display:flex;align-items:center;gap:.7rem;width:100%;padding:.78rem .85rem;border-radius:12px;color:var(--muted);text-decoration:none;background:transparent;border:0;text-align:left}.sidebar-nav a.active{background:var(--accent-tint);color:var(--accent-strong);font-weight:700}.nav-icon{width:1.25rem;text-align:center;font-size:1.15rem;line-height:1}.bottom-nav{position:fixed;z-index:5;bottom:0;left:0;right:0;display:flex;background:color-mix(in srgb,var(--panel) 94%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--border);padding:.35rem .35rem calc(.35rem + env(safe-area-inset-bottom))}.bottom-nav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:.28rem;text-align:center;padding:.55rem .1rem;color:var(--muted);font-size:.66rem;text-decoration:none}.bottom-nav a.active{color:var(--accent);font-weight:700}.bottom-nav .nav-icon{font-size:1.05rem}.page{max-width:100%;margin:0;padding:0 0 4rem}.page h1{font-family:Georgia,serif;font-size:clamp(2.25rem,5vw,4rem);font-weight:400;letter-spacing:-.045em;margin:.3rem 0 .75rem}.page h2{font-size:1.25rem;margin:2rem 0 .8rem}.page>p:first-of-type{color:var(--muted)}.card,.dose-row,.medication-row{background:var(--panel);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:1.15rem;margin-bottom:1rem}.dose-list,.medication-list,.prescription-list,.search-results,.profile-list{list-style:none;padding:0;display:grid;gap:.7rem}.dose-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:76px}.dose-row--taken{border-color:color-mix(in srgb,var(--success) 55%,var(--border));background:color-mix(in srgb,var(--success) 6%,var(--panel))}.dose-row--skipped{opacity:.68}.dose-info{display:flex;align-items:center;gap:.75rem}.dose-info strong{font-family:Georgia,serif;font-size:1.45rem;color:var(--accent)}.dose-actions{display:flex;gap:.5rem;flex-shrink:0}.dose-status{color:var(--success);font-weight:700}.medication-row{overflow:hidden;padding:0}.medication-header{width:100%;background:transparent;color:var(--text);border:0;text-align:left;padding:1.05rem}.medication-detail{padding:0 1.05rem 1.05rem}.tabs,.mode-toggle{display:flex;gap:.5rem;margin-bottom:1rem}.tab,.mode-toggle button{background:transparent;color:var(--muted);border:1px solid var(--border);box-shadow:none}.tab--active,.mode-toggle button.mode-toggle--active{color:var(--accent-strong);background:var(--accent-tint);border-color:var(--accent)}.inline-form{display:flex;gap:.6rem}.inline-form input{flex:1}.search-result,.profile-card{width:100%;background:var(--panel);color:var(--text);border:1px solid var(--border);text-align:left;padding:1rem;border-radius:14px}.stacked-form fieldset{border:1px solid var(--border);border-radius:14px;margin-bottom:1rem}.accent-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.6rem}.accent-swatch{display:flex;flex-direction:column;align-items:center;gap:.35rem;background:transparent;border:0;padding:0}.accent-swatch .accent-swatch-dot{width:36px;height:36px;border-radius:50%;border:2px solid transparent;box-shadow:inset 0 0 0 1px var(--border)}.accent-swatch--selected .accent-swatch-dot{border-color:var(--text)}.accent-swatch-label{font-size:.7rem;color:var(--muted);text-align:center}.disclaimer{color:var(--muted);font-size:.75rem;max-width:720px;margin:2rem auto 0;padding-top:1rem;border-top:1px solid var(--border)}.auth-page{max-width:430px;margin:8vh auto;padding:1.5rem}.auth-page h1{font-family:Georgia,serif;font-weight:400;font-size:2.7rem}.auth-page .card{padding:1.5rem}@media (min-width:900px){.app-shell{display:flex}.sidebar-nav{display:flex;flex-direction:column;width:250px;flex-shrink:0;background:var(--panel);border-right:1px solid var(--border);padding:2rem 1rem;position:sticky;top:0;height:100vh}.mobile-brand,.bottom-nav{display:none}main{padding-top:3.5rem}.dose-row{padding:1.35rem 1.5rem}.dose-info strong{font-size:1.7rem}.disclaimer{margin-left:0}.page{padding-bottom:1rem}}@media (min-width:1180px){.page{max-width:980px}.page:has(.dose-list){display:grid;grid-template-columns:minmax(0,1fr) 280px;column-gap:2.5rem;align-items:start}.page:has(.dose-list)>h1,.page:has(.dose-list)>p:first-of-type,.page:has(.dose-list)>.error{grid-column:1/-1}.page:has(.dose-list)>.dose-list{grid-column:1}.page:has(.dose-list)>.disclaimer{grid-column:1/-1}}@media (max-width:560px){main{padding:1.15rem 1rem 5.5rem}.page h1{font-size:2.6rem}.dose-row{align-items:flex-start;flex-direction:column}.dose-info,.dose-actions{width:100%}.dose-actions button{flex:1}.inline-form{flex-direction:column}.card{border-radius:15px}.brand{font-size:1.2rem}}.auth-brand img{width:68px;height:68px}.brand img{width:50px;height:50px}.auth-page h1{margin-top:1.75rem}.auth-kicker{display:none}.auth-page h1{margin-top:1.5rem}.brand img{width:42px;height:42px;object-fit:contain}.nav-icon{font-family:Arial,sans-serif;font-weight:600}.title-with-help{display:flex;align-items:center;gap:.8rem}.title-with-help h1{margin-bottom:.75rem}.help-tip{position:relative;display:inline-flex;align-items:center;margin-bottom:.5rem}.help-popover{position:absolute;z-index:10;top:2.5rem;left:0;width:min(300px,calc(100vw - 2rem));display:grid;gap:.35rem;padding:.85rem 1rem;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);font-size:.82rem;line-height:1.4;color:var(--text)}.help-popover strong{font-family:Georgia,serif;color:var(--accent-strong)}.auth-forgot{display:block;margin-top:.95rem;text-align:center;font-size:.9rem}.button-link{display:inline-flex;margin-top:1rem}.success{color:#16734a;line-height:1.55}.search-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7rem;font-weight:700;color:var(--text)}.help-button{width:2rem;height:2rem;padding:0;border-radius:50%;background:var(--accent-tint);color:var(--accent-strong);border:1px solid var(--accent);box-shadow:none}.identifier-help{display:grid;grid-template-columns:150px 1fr;gap:1rem;align-items:center;background:var(--accent-tint);border:1px solid var(--border);border-radius:14px;padding:.8rem;margin-bottom:1rem;color:var(--text);font-size:.82rem;line-height:1.35}.identifier-help img{width:100%;border-radius:10px}.identifier-help p{margin:.35rem 0}.identifier-help strong{font-family:Georgia,serif;font-size:1.1rem}@media (max-width:560px){.identifier-help{grid-template-columns:1fr}.identifier-help img{max-height:170px;object-fit:cover;object-position:center 42%}}.auth-brand{display:flex;align-items:center;gap:.7rem;font-family:Georgia,serif;font-size:1.35rem}.auth-brand img{width:42px;height:42px}.auth-kicker{color:var(--accent);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;margin:3rem 0 1rem}.auth-page h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.45rem,6vw,4rem);line-height:1.02;letter-spacing:-.045em;margin:0 0 2rem}.auth-page .card{padding:1.5rem;background:var(--panel);box-shadow:var(--shadow)}.auth-page .card button{width:100%;margin-top:.5rem}.auth-switch{color:var(--muted)}.auth-switch a{color:var(--accent);font-weight:700}.auth-page{max-width:none;width:100%;min-height:100vh;margin:0;padding:7vh 1.5rem 3rem;background:var(--bg);color:var(--text)}.auth-page>*{max-width:430px;margin-left:auto;margin-right:auto}.auth-page h1{font-family:Inter,Avenir Next,Segoe UI,sans-serif;font-size:clamp(2.25rem,5vw,3.35rem);font-weight:650;letter-spacing:-.045em;line-height:1.02;margin-top:1.25rem;margin-bottom:1.5rem}.auth-brand{font-family:Inter,Avenir Next,Segoe UI,sans-serif;font-weight:650;letter-spacing:-.02em}.login-page{display:grid;grid-template-columns:minmax(300px,35vw) minmax(0,1fr);padding:0;background:#151217;color:#f8f5f7;overflow:hidden}.login-page>*{max-width:none;margin:0}.auth-identity{position:relative;display:flex;align-items:flex-start;justify-content:center;padding:clamp(4rem,15vh,9rem) 2rem;background:#211a22;border-right:1px solid #493d47;overflow:hidden}.auth-identity:before,.auth-identity:after{content:"";position:absolute;width:26rem;height:1px;background:#796a75;opacity:.42;transform:rotate(45deg)}.auth-identity:before{left:-8rem;top:26%}.auth-identity:after{right:-10rem;bottom:21%}.auth-identity .auth-brand{position:relative;z-index:2;font-size:clamp(1.35rem,2vw,1.8rem)}.auth-brand{display:flex;align-items:center;gap:.85rem;color:#fbf8fa}.auth-brand img{width:54px;height:54px;object-fit:contain}.auth-watermark{position:absolute;left:5%;bottom:7%;width:min(32vw,390px);height:auto;opacity:.075;transform:rotate(-9deg) scale(1.75);filter:saturate(.35)}.auth-login-panel{display:flex;align-items:center;min-height:100svh;padding:clamp(2rem,6vw,6rem)}.auth-login-content{position:relative;width:min(100%,520px);margin:0 auto}.auth-mobile-brand{display:none}.login-page h1{margin:0 0 2.75rem;font-family:Inter,Avenir Next,Segoe UI,sans-serif;font-size:clamp(2.55rem,4.4vw,4.25rem);font-weight:690;line-height:.98;letter-spacing:-.055em;color:#fbf8fa}.login-page .auth-form{margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}.login-page label{gap:.55rem;margin:0 0 1.35rem;color:#e7dfe5;font-size:.9rem;font-weight:520}.login-page input{min-height:58px;padding:.9rem 1rem;background:#211b21;color:#fff;border-color:#574a54;border-radius:12px;transition:border-color .18s,box-shadow .18s,background .18s}.login-page input:hover{border-color:#746470}.login-page input:focus{background:#251e25;border-color:#b9a4b2;box-shadow:0 0 0 4px #c890af1f}.login-page button{min-height:58px;margin-top:.25rem;border-radius:12px;background:#a8c5a1;color:#172017;font-size:1rem;box-shadow:none}.login-page button:hover{background:#b5d0ae;box-shadow:0 10px 28px #7ea17829}.login-page .auth-forgot{margin:1.35rem 0 0;color:#c99bb9;text-decoration-color:#c99bb973;text-underline-offset:4px}.login-page .auth-switch{margin:2.75rem 0 0;color:#e9e2e7;font-size:1rem}.login-page .auth-switch a{color:#a8c5a1;text-underline-offset:4px}.login-page .disclaimer{max-width:none;margin:2rem 0 0;padding-top:1.25rem;border-color:#493d47;color:#a99da6;font-size:.76rem;line-height:1.5}@media (max-width:760px){.login-page{display:block;overflow:auto}.auth-identity{display:none}.auth-login-panel{align-items:flex-start;padding:clamp(2rem,7vh,4rem) 1.35rem}.auth-login-content{width:min(100%,440px)}.auth-mobile-brand{display:flex;margin-bottom:clamp(3.5rem,10vh,6rem)}.login-page h1{font-size:clamp(2.35rem,12vw,3.35rem);margin-bottom:2.25rem}.login-page .auth-switch{margin-top:2.25rem}.login-page .disclaimer{margin-top:1.6rem}.login-page input,.login-page button{min-height:56px}}@media (prefers-reduced-motion:reduce){.login-page input,.login-page button{transition:none}}.nav-svg{display:block;width:1.2rem;height:1.2rem}.sidebar-nav .utility-link{display:flex;align-items:center;gap:.7rem;width:100%;padding:.78rem .85rem;border-radius:12px;color:var(--muted);text-decoration:none}.sidebar-nav .utility-link.active{background:var(--accent-tint);color:var(--accent-strong);font-weight:700}.mobile-brand{align-items:center;justify-content:space-between}.mobile-settings{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--border);border-radius:12px;color:var(--muted);background:var(--panel)}.mobile-settings .nav-svg{width:1.25rem;height:1.25rem}.settings-page .card{max-width:760px}.settings-page>p:first-of-type{margin-bottom:2rem}:root{--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--space-1:.35rem;--space-2:.65rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:3rem;--focus-ring:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.brand,.page h1,.page h2,.dose-info strong,.help-popover strong,.identifier-help strong{font-family:Inter,Avenir Next,Segoe UI,sans-serif}.brand{font-weight:650;font-size:1.18rem;letter-spacing:-.025em}.page h1{font-size:clamp(2.5rem,4.4vw,3.55rem);font-weight:670;line-height:1;letter-spacing:-.052em;margin:0}.page h2{font-size:1.25rem;font-weight:650;letter-spacing:-.02em}.page{width:100%;max-width:1040px;padding-bottom:2rem}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin:0 0 2.5rem}.page-title-line{display:flex;align-items:center;gap:.75rem}.page-header p{margin:.8rem 0 0;color:var(--muted);font-size:1rem}.page-header-action{flex-shrink:0}.title-with-help{display:none}button{border-radius:var(--radius-sm);min-height:44px;padding:.72rem 1rem;box-shadow:none}button:hover{box-shadow:none}.secondary{background:transparent!important;border:1px solid var(--border)!important;color:var(--text)!important}.danger-button{background:color-mix(in srgb,var(--danger) 14%,transparent);border:1px solid color-mix(in srgb,var(--danger) 65%,var(--border));color:color-mix(in srgb,var(--danger) 80%,#fff)}.danger-outline{border-color:color-mix(in srgb,var(--danger) 65%,var(--border))!important;color:var(--danger)!important}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem}button:focus-visible,a:focus-visible{outline:none;box-shadow:var(--focus-ring)}.sidebar-nav{background:color-mix(in srgb,var(--panel) 94%,var(--bg));padding:2rem .8rem 1.4rem}.sidebar-nav .brand{padding:0 .65rem}.sidebar-nav a,.sidebar-nav button.logout,.sidebar-nav .utility-link{min-height:48px;border-radius:11px}.sidebar-nav a.active,.sidebar-nav .utility-link.active{background:var(--accent-tint);color:var(--accent-strong);font-weight:650}.sidebar-nav a:focus:not(:focus-visible){outline:none;box-shadow:none}.sidebar-nav button.logout{color:var(--danger)}.nav-section-label{margin-top:2rem}.nav-svg{width:1.15rem;height:1.15rem}.loading-state{display:flex;align-items:center;gap:.45rem;min-height:160px;color:var(--muted)}.loading-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:loading-pulse 1.2s infinite}.loading-dot:nth-child(2){animation-delay:.15s}.loading-dot:nth-child(3){animation-delay:.3s}.loading-state .loading-dot+span:not(.loading-dot){margin-left:.35rem}@keyframes loading-pulse{0%,70%,to{opacity:.28;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:220px;padding:2.5rem;border:1px dashed var(--border);border-radius:var(--radius-lg);color:var(--muted)}.empty-state svg{width:38px;height:38px;margin-bottom:1rem;color:var(--muted)}.empty-state strong{color:var(--text);font-size:1.12rem}.empty-state p{max-width:420px;margin:.55rem 0 0;line-height:1.5}.empty-state button{margin-top:1.25rem}.status-badge{display:inline-flex;align-items:center;width:max-content;padding:.42rem .68rem;border:1px solid var(--border);border-radius:999px;font-size:.76rem;font-weight:650;white-space:nowrap}.status-badge--success{color:var(--success);border-color:color-mix(in srgb,var(--success) 55%,var(--border));background:color-mix(in srgb,var(--success) 9%,transparent)}.status-badge--warning{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 50%,var(--border));background:color-mix(in srgb,var(--danger) 8%,transparent)}.status-badge--neutral{color:var(--muted);background:var(--panel-soft)}.profile-list{gap:.8rem}.profile-card{display:grid;grid-template-columns:52px 1fr auto 24px;align-items:center;gap:1rem;min-height:88px;padding:1rem 1.25rem;border-radius:var(--radius-md);transition:border-color .16s,background .16s}.profile-card:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent-tint) 55%,var(--panel))}.profile-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--accent-tint);color:var(--accent-strong);font-size:1.3rem;font-weight:700}.profile-name{font-size:1.06rem;font-weight:650}.profile-selected{display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--success);border-radius:50%;color:var(--success)}.row-chevron{width:20px;height:20px;color:var(--muted)}.add-profile-button{margin-top:1.25rem}.profile-create-form{max-width:640px;margin-top:1.5rem}.profile-create-form h2{margin-top:0}.dose-list{gap:0;border-top:1px solid var(--border)}.dose-row{display:grid;grid-template-columns:110px minmax(220px,1fr) 120px auto;align-items:center;gap:1.5rem;min-height:124px;margin:0;padding:1.3rem .5rem;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}.dose-time{display:flex;flex-direction:column}.dose-time strong{font-size:1.35rem}.dose-time span,.dose-medication span{margin-top:.28rem;color:var(--muted);font-size:.83rem}.dose-medication{display:flex;align-items:center;gap:1rem}.dose-medication>div{display:flex;flex-direction:column}.dose-medication strong{font-size:1.02rem}.dose-pill{display:grid;place-items:center;width:44px;height:44px;margin:0!important;border-radius:50%;background:var(--accent-tint);color:var(--accent-strong);font-size:1.35rem}.dose-actions{justify-content:flex-end}.dose-actions button{min-width:100px}.dose-row--taken{background:color-mix(in srgb,var(--success) 3%,transparent)}.dose-row--skipped{opacity:.82}.adherence-summary{max-width:560px;margin-bottom:2rem;padding:1.25rem 1.35rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel)}.adherence-summary>div:first-child{display:flex;align-items:baseline;justify-content:space-between}.adherence-summary strong{font-size:1.65rem;color:var(--success)}.adherence-summary p{margin:.65rem 0 0;color:var(--muted);font-size:.8rem}.adherence-track{height:7px;margin-top:.85rem;border-radius:999px;background:var(--panel-soft);overflow:hidden}.adherence-track span{display:block;height:100%;border-radius:inherit;background:var(--success)}.history-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--border)}.history-row{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:1.25rem;padding:1.15rem .35rem;border-bottom:1px solid var(--border)}.history-row time{color:var(--muted);font-size:.86rem}.history-row>div{display:flex;flex-direction:column;gap:.3rem}.history-row>div span{color:var(--muted);font-size:.82rem}.medication-list{gap:.75rem}.medication-row{border-radius:var(--radius-md);box-shadow:none}.medication-header{display:grid;grid-template-columns:48px 1fr auto 28px;align-items:center;gap:1rem;min-height:82px}.medication-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--accent-tint);color:var(--accent-strong);font-size:1.35rem}.medication-summary{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.medication-summary strong{font-size:1rem}.medication-summary>span{color:var(--muted);font-size:.8rem}.medication-expand{color:var(--muted);font-size:1.2rem;transition:transform .16s}.medication-row--expanded .medication-expand{transform:rotate(180deg)}.medication-detail{border-top:1px solid var(--border);padding:1.25rem}.medication-list>.empty-state{list-style:none}.tabs{display:inline-flex;padding:.25rem;border:1px solid var(--border);border-radius:12px;background:var(--panel-soft)}.tab{border:0!important;border-radius:9px}.tab--active{background:var(--accent-tint)!important}.search-heading{margin-top:1rem}.identifier-help{margin-top:.8rem}.search-results{margin-top:1rem}.search-result:hover{border-color:var(--accent)}.settings-section{max-width:760px;margin-bottom:1.25rem;box-shadow:none}.settings-section h2{margin-top:0}.accent-grid{grid-template-columns:repeat(5,minmax(70px,1fr));gap:1rem}.accent-swatch .accent-swatch-dot{width:44px;height:44px}.account-section{border-color:color-mix(in srgb,var(--danger) 18%,var(--border))}.auth-page:not(.login-page){display:flex;flex-direction:column;justify-content:center;max-width:none;min-height:100svh;padding:3rem 1.5rem;background:#151217;color:#f8f5f7}.auth-page:not(.login-page)>*{width:min(100%,480px);margin-left:auto;margin-right:auto}.auth-page:not(.login-page) .auth-brand{margin-bottom:3rem}.auth-page:not(.login-page) h1{color:#fbf8fa;font-size:clamp(2.35rem,5vw,3.4rem);margin:0 0 2rem}.auth-page:not(.login-page) .card{padding:1.5rem;background:#211b21;border-color:#493d47;box-shadow:none}.auth-page:not(.login-page) label{color:#ded4db}.auth-page:not(.login-page) input{background:#19151a;color:#fff;border-color:#574a54}.auth-page:not(.login-page) .disclaimer{color:#a99da6;border-color:#493d47}@media (max-width:820px){.page-header{gap:1rem}.page-header-action{margin-top:.15rem}.dose-row{grid-template-columns:82px 1fr auto}.dose-state{grid-column:3}.dose-actions{grid-column:2/4;justify-content:flex-start}.history-row{grid-template-columns:110px 1fr auto}.accent-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:560px){.page h1{font-size:2.5rem}.page-header{flex-direction:column;margin-bottom:2rem}.page-header-action,.page-header-action button{width:100%}.profile-card{grid-template-columns:46px 1fr auto 18px}.profile-avatar{width:46px;height:46px}.dose-row{grid-template-columns:68px 1fr;gap:1rem;padding:1.2rem 0}.dose-state{grid-column:2}.dose-actions{grid-column:1/3}.dose-actions button{flex:1;min-width:0}.history-row{grid-template-columns:1fr auto}.history-row time{grid-column:1/3}.medication-header{grid-template-columns:42px 1fr 24px}.medication-header .status-badge{grid-column:2}.medication-expand{grid-column:3;grid-row:1/3}.accent-grid{grid-template-columns:repeat(2,1fr)}.empty-state{min-height:190px;padding:2rem 1.25rem}}@media (prefers-reduced-motion:reduce){.loading-dot{animation:none}.profile-card,.medication-expand{transition:none}}.settings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:1.25rem}.settings-heading h2{margin-bottom:.35rem}.settings-heading p{margin:0;color:var(--muted);line-height:1.5}.security-methods{display:grid;gap:.75rem}.security-method{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:1rem;width:100%;min-height:76px;padding:.9rem 1rem;background:transparent;color:var(--text);border:1px solid var(--border);text-align:left}.security-method:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent-tint) 45%,transparent);transform:none}.security-method-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--accent-tint);color:var(--accent-strong);font-size:1.2rem;font-weight:750}.security-method>span:nth-child(2){display:flex;flex-direction:column;gap:.28rem}.security-method small{color:var(--muted);font-weight:450}.method-tag{padding:.35rem .55rem;border-radius:999px;background:color-mix(in srgb,var(--success) 12%,transparent);color:var(--success);font-size:.7rem;font-weight:700}.two-factor-setup{display:grid;grid-template-columns:260px 1fr;gap:2rem;padding-top:.5rem}.two-factor-setup h3,.email-code-setup h3{margin:.25rem 0 .75rem;font-size:1.15rem}.two-factor-setup ol{padding-left:1.2rem;color:var(--muted);line-height:1.65}.qr-panel{display:grid;place-items:center;align-self:start;padding:10px;background:#fff;border-radius:var(--radius-md);border:1px solid var(--border)}.qr-panel img{display:block;width:100%;height:auto}.totp-secret{display:block;margin:.75rem 0 1rem;padding:.7rem;border-radius:8px;background:var(--panel-soft);color:var(--text);overflow-wrap:anywhere;font-size:.8rem}.code-input{max-width:220px;font-variant-numeric:tabular-nums;letter-spacing:.3em;font-size:1.15rem}.email-code-setup{max-width:580px;padding:1rem 0}.active-security-method{display:grid;grid-template-columns:1fr minmax(220px,300px) auto;align-items:end;gap:1rem}.active-security-method p{margin:.35rem 0 0;color:var(--muted);font-size:.85rem}.active-security-method label{margin:0}.field-hint{color:var(--muted);font-size:.76rem;line-height:1.4}@media (max-width:760px){.two-factor-setup{grid-template-columns:1fr}.qr-panel{width:min(100%,260px)}.active-security-method{grid-template-columns:1fr}.settings-heading{flex-direction:column;gap:.75rem}.security-method{grid-template-columns:42px 1fr}.security-method .method-tag{grid-column:2;width:max-content}}.language-select{display:grid;gap:.45rem;max-width:24rem}.language-select__label{color:var(--muted);font-size:.84rem;font-weight:650}.language-select__icon{display:none}.language-select--compact{position:fixed;right:clamp(1.25rem,2.5vw,2.5rem);top:clamp(1.25rem,3vh,2rem);display:block;width:auto;margin:0;z-index:20}.language-select--compact .language-select__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.language-select--compact .language-select__icon{position:absolute;z-index:1;left:.8rem;top:50%;display:block;width:16px;height:16px;color:#cfc4cc;pointer-events:none;transform:translateY(-50%);stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.language-select--compact select{min-width:10.75rem;min-height:42px;padding:.55rem 2rem .55rem 2.2rem;background-color:#211b21e6;border-color:#574a54;color:#f8f5f7;font-size:.78rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}:root:not([data-theme=dark]) select{color-scheme:light}:root:not([data-theme=dark]) select option{background:#fff;color:#242126}:root[data-theme=dark] select{color-scheme:dark}:root[data-theme=dark] select option{background:#231d23;color:#f7f1f5}.login-page select{color-scheme:dark;background:#211b21;color:#f8f5f7;border-color:#574a54}.login-page select option{background:#211b21;color:#f8f5f7}.login-page select:hover{border-color:#746470}@media (max-width: 760px){.language-select--compact{position:relative;right:auto;top:auto;justify-self:end;width:max-content;margin:0 0 1.35rem auto}.language-select--compact select{min-width:10rem}}
