:root,:root[data-theme=light]{color-scheme:light;--bg: #f4f6f8;--surface: #ffffff;--surface-2: #eef1f4;--text: #0f172a;--muted: #5b6675;--border: #d7dde4;--accent: #0f766e;--accent-contrast: #ffffff;--danger: #dc2626;--next: #dc2626;--next-contrast: #ffffff;--text-title: 1.35rem;--text-heading: 1.05rem;--text-body: .9375rem;--text-meta: .8125rem;--warning-bg: #fef3c7;--warning-text: #92400e;--shadow: 0 6px 20px rgba(15, 23, 42, .08);--radius: 14px;--page-pad: clamp(var(--space-md), 2vw, 1.5rem);--space-3xs: .25rem;--space-2xs: .35rem;--space-xs: .5rem;--space-sm: .65rem;--space-md: .75rem;--space-lg: 1rem;--space-xl: 1.25rem;--dot: clamp(.55rem, 1.6vw, .75rem);--color-dot: clamp(1.15rem, 3.2vw, 1.55rem);--swatch: clamp(1.45rem, 4.2vw, 1.9rem);--accent-dot: clamp(1.85rem, 5.6vw, 2.45rem);--safe-top: max(env(safe-area-inset-top, 0px), var(--safe-area-inset-top, 0px));--safe-right: max(env(safe-area-inset-right, 0px), var(--safe-area-inset-right, 0px));--safe-bottom: max(env(safe-area-inset-bottom, 0px), var(--safe-area-inset-bottom, 0px));--safe-left: max(env(safe-area-inset-left, 0px), var(--safe-area-inset-left, 0px))}:root[data-theme=dark]{color-scheme:dark;--bg: #161616;--surface: #1f1f1f;--surface-2: #2a2a2a;--text: #ededed;--muted: #a1a1a1;--border: #363636;--accent: #2dd4bf;--accent-contrast: #04201d;--danger: #f87171;--next: #dc2626;--next-contrast: #ffffff;--warning-bg: #33301a;--warning-text: #fcd34d;--shadow: 0 8px 24px rgba(0, 0, 0, .45);--radius: 14px}:root[data-theme=oled]{color-scheme:dark;--bg: #000000;--surface: #0a0a0a;--surface-2: #141414;--text: #f3f4f6;--muted: #9ca3af;--border: #262626;--accent: #2dd4bf;--accent-contrast: #04201d;--danger: #f87171;--next: #dc2626;--next-contrast: #ffffff;--warning-bg: #241c05;--warning-text: #fcd34d;--shadow: 0 8px 24px rgba(0, 0, 0, .7);--radius: 14px}@media (prefers-color-scheme: dark){:root[data-theme=system]{color-scheme:dark;--bg: #161616;--surface: #1f1f1f;--surface-2: #2a2a2a;--text: #ededed;--muted: #a1a1a1;--border: #363636;--accent: #2dd4bf;--accent-contrast: #04201d;--danger: #f87171;--next: #dc2626;--next-contrast: #ffffff;--warning-bg: #33301a;--warning-text: #fcd34d;--shadow: 0 8px 24px rgba(0, 0, 0, .45)}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:var(--text-body);line-height:1.45;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;transition:background-color .3s ease,color .3s ease}button,a,input,select,textarea,summary{font:inherit;-webkit-tap-highlight-color:transparent}button:focus,a:focus,input:focus,select:focus,textarea:focus,summary:focus,[role=button]:focus{outline:none}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible,[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{max-width:min(1800px,100%);min-width:0;margin:0 auto;padding:var(--page-pad);container-type:inline-size}.app-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-lg)}.brand{display:flex;align-items:center;gap:var(--space-md);min-width:0}.brand .logo{width:3.1rem;height:3.1rem;display:block;flex:none}.logo-tile{fill:var(--accent)}.logo-mark{fill:none;stroke:var(--accent-contrast);stroke-width:3.5}.brand h1{font-size:var(--text-title);font-weight:650;margin:0;line-height:1.15}.tagline{margin:var(--space-3xs) 0 0;color:var(--muted);font-size:var(--text-meta);line-height:1.3}@media (max-width: 640px){.tagline{display:none}.brand .logo{width:2.5rem;height:2.5rem}}.header-actions{display:flex;align-items:center;gap:var(--space-2xs);flex:none}.header-actions .icon-btn{width:44px;height:44px}.header-actions .icon-btn svg,.header-actions .session-switch svg{width:22px;height:22px}.session-switch{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--surface-2);color:var(--text);height:44px;flex:none;max-width:12rem;padding:0 var(--space-sm);border-radius:10px;cursor:pointer;font:inherit;font-size:var(--text-meta);font-weight:600}.session-switch-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-switch:hover{filter:brightness(1.08)}.session-switch:active{transform:scale(.94)}.session-mark{display:none}@media (max-width: 640px){.session-switch{width:44px;padding:0;max-width:none}.session-switch-label{display:none}.session-mark{display:block}}@media (max-width: 720px){.app-header{position:fixed;top:var(--safe-top);left:0;right:0;z-index:30;margin:0;padding:var(--page-pad) calc(var(--page-pad) + var(--safe-right)) var(--page-pad) calc(var(--page-pad) + var(--safe-left));background:var(--bg);border-bottom:1px solid var(--border);transform:translateY(0);transition:transform .22s ease}.app-header:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:var(--safe-top);background:var(--bg)}.app-header.header-hidden{transform:translateY(calc(-100% - var(--safe-top)));pointer-events:none}.app{padding-top:calc(var(--safe-top) + var(--app-header-space, var(--space-xl)) + var(--page-pad))}}.layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.layout>*{min-width:0;display:flex;flex-direction:column}.layout>*>.card{flex:1 1 auto;display:flex;flex-direction:column;width:100%}.layout>*>.card>.pagination{margin-top:auto}.col{display:flex;flex-direction:column;gap:var(--space-lg);min-width:0}@media (min-width: 720px){.layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.layout-stats{grid-column:1 / -1}}@container (min-width: 1560px){.layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1fr)}.layout-stats{grid-column:auto}}.card{--card-pad: clamp(1rem, 2.5vw, 1.4rem);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--card-pad);box-shadow:var(--shadow);min-width:0;max-width:100%}.card h2{margin:0 0 var(--space-lg);font-size:var(--text-heading);font-weight:600;line-height:1.15}#active-heading,#history-heading,#stats-heading{font-size:var(--text-title)}.intake-form{display:flex;flex-direction:column;gap:var(--space-lg)}.intake-form>.field,.intake-form>.link-btn,.intake-form>.warning{margin:0}.intake-form>.link-btn{align-self:flex-start}.intake-form>.btn.block{margin-top:0}.field{display:flex;flex-direction:column;gap:var(--space-xs);margin:var(--space-md) 0;border:0;padding:0;min-inline-size:0}.field:first-child{margin-top:0}.intake-form>.field:first-child{margin-top:0}fieldset.field{min-inline-size:0}.field>span,.field>legend,.field>.who-legend{margin:0;padding:0;font-size:var(--text-meta);color:var(--muted);font-weight:600}.field>legend{display:flex;width:100%;padding:0;margin:0 0 var(--space-xs)}.field-label{display:inline-flex;align-items:center;gap:var(--space-2xs)}.field-label .drug-glyph{width:1.15em;height:1.15em}.who-legend{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.who-legend .link-btn,.field .link-btn,.intake-form>.link-btn{margin:0;width:auto;flex:none}.row.between{justify-content:space-between;width:100%}.link-btn{background:none;border:none;color:var(--accent);font-size:var(--text-meta);padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px;align-self:flex-start;margin:var(--space-xs) 0}.link-btn:hover{filter:brightness(1.1)}.input{width:100%;padding:var(--space-md);border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);transition:border-color .2s ease,box-shadow .2s ease}.input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent)}select.input,input.input{color-scheme:inherit}select.input,input.datetime-input,.select-trigger{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:var(--space-xl);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%238b939e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center;background-size:.7rem}.select-menu{position:relative;width:100%}.select-trigger{display:flex;align-items:center;width:100%;text-align:left;cursor:pointer;font:inherit}.select-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-list{position:fixed;z-index:80;margin:0;padding:var(--space-3xs);list-style:none;overflow:auto;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow)}.select-option{display:block;width:100%;margin:0;padding:var(--space-xs) var(--space-sm);border:none;border-radius:8px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.select-option.active{background:color-mix(in srgb,var(--accent) 16%,var(--surface))}.select-option[aria-selected=true]{font-weight:600}input.datetime-input{position:relative}input.datetime-input::-webkit-calendar-picker-indicator{position:absolute;right:.45rem;top:50%;width:1.5rem;height:1.5rem;margin:0;padding:0;transform:translateY(-50%);opacity:0;cursor:pointer}select.input option{background:var(--surface);color:var(--text)}.duration-field{position:relative}.duration-input{color:transparent;caret-color:transparent}.duration-input::-webkit-datetime-edit,.duration-input::-webkit-datetime-edit-fields-wrapper,.duration-input::-webkit-datetime-edit-text,.duration-input::-webkit-datetime-edit-hour-field,.duration-input::-webkit-datetime-edit-minute-field,.duration-input::-webkit-datetime-edit-ampm-field{color:transparent}.duration-readout{position:absolute;left:.75rem;top:0;bottom:0;display:flex;align-items:center;pointer-events:none;color:var(--text)}.row{display:flex;gap:var(--space-xs);flex-wrap:wrap;align-items:center}.field-inline{display:flex;align-items:stretch;gap:var(--space-2xs)}.field-inline>.input{flex:1;width:auto;min-width:0}.field-inline>.icon-btn{width:2.75rem;height:auto;flex:none}.amount-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs)}.amount-row+.input{margin-top:var(--space-xs)}a.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.apk-offer{display:flex;flex-direction:column;gap:var(--space-md);margin:0}.welcome-actions+.apk-offer{margin-top:var(--space-md)}.modal-body:has(>.apk-offer:first-child){padding-top:var(--space-md)}.btn{border:1px solid var(--border);background:var(--surface-2);color:var(--text);padding:var(--space-sm) var(--space-lg);border-radius:10px;cursor:pointer;transition:transform .08s ease,background-color .2s ease,filter .2s ease}.btn:hover{filter:brightness(1.05)}.btn:active{transform:translateY(1px) scale(.99)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover,.btn:disabled:active{filter:none;transform:none}.choice-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs);margin-top:var(--modal-pad, var(--space-xl))}.choice-actions .btn{width:100%;min-width:0;margin-top:0}.choice-actions .btn:last-child{grid-column:1 / -1}.choice-actions.pair .btn:last-child{grid-column:auto}.btn.btn-progress{position:relative;overflow:hidden;background:color-mix(in srgb,var(--accent) 72%,#000);color:var(--accent-contrast);border-color:transparent}.btn.primary.btn-progress:disabled{opacity:1;cursor:wait}.btn-progress-fill{position:absolute;inset:0 auto 0 0;width:0%;background:var(--accent);pointer-events:none;transition:width .12s linear}.btn-progress-fill.indeterminate{width:36%;animation:btn-progress-indeterminate 1.1s ease-in-out infinite}@keyframes btn-progress-indeterminate{0%{transform:translate(0)}to{transform:translate(180%)}}.btn-progress-label{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs)}.btn.block>.btn-progress-label{width:100%}.btn.primary{background:var(--accent);color:var(--accent-contrast);border-color:transparent;font-weight:600}.btn.next{background:var(--next);color:var(--next-contrast);border-color:transparent;font-weight:600}.btn.danger{background:transparent;color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.btn.ghost{background:transparent}.btn.small{padding:var(--space-2xs) var(--space-sm);font-size:var(--text-meta)}.btn.block{display:block;width:100%;margin-top:var(--space-xs)}.btn:has(>svg){display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs)}.btn.block:has(>svg){display:flex}.btn>svg{display:block;flex:none}.icon-btn{border:1px solid var(--border);background:var(--surface-2);color:var(--text);width:40px;height:40px;border-radius:10px;cursor:pointer;transition:transform .08s ease,filter .2s ease}.icon-btn:hover{filter:brightness(1.08)}.icon-btn:active{transform:scale(.94)}.icon-btn.primary{background:var(--accent);color:var(--accent-contrast);border-color:transparent}.icon-btn.primary:disabled,.icon-btn.next:disabled,.icon-btn:disabled{opacity:.45;cursor:not-allowed}.icon-btn.next{background:var(--next);color:var(--next-contrast);border-color:transparent}.icon-btn.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.icon-btn.small{width:32px;height:32px}.multi-select{display:flex;flex-wrap:wrap;gap:var(--space-2xs)}.pill{border:2px solid var(--border);background:transparent;color:var(--text);padding:var(--space-2xs) var(--space-md);border-radius:999px;cursor:pointer;transition:transform .1s ease,background-color .2s ease,color .2s ease}.pill.active{color:#fff;transform:translateY(-1px)}.chip-list{list-style:none;padding:0;margin:var(--space-lg) 0 0;display:flex;flex-wrap:wrap;gap:var(--space-sm)}.member-chip{display:flex;align-items:center;gap:var(--space-sm);border:1px solid var(--border);border-left-width:4px;border-radius:10px;padding:var(--space-xs) var(--space-xs) var(--space-xs) var(--space-sm);background:var(--surface-2)}.member-chip.editing{box-shadow:0 0 0 2px var(--accent)}.chip-name{background:none;border:none;color:var(--text);cursor:pointer}.dot{width:var(--dot);height:var(--dot);border-radius:50%;flex:none}.member-name-row{display:flex;align-items:stretch;gap:var(--space-xs)}.member-name-row>.btn{display:inline-flex;align-items:center;justify-content:center;height:auto;padding-block:0}.member-name-row .input{flex:1}.input-with-action{position:relative;flex:1;min-width:0}.input-with-action .input{padding-right:var(--space-xl)}.input-icon-btn{position:absolute;top:50%;right:.3rem;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.input-icon-btn:hover{color:var(--text);background:color-mix(in srgb,var(--text) 8%,transparent)}.input-icon-btn:disabled{opacity:.4;cursor:default}.input-icon-btn:disabled:hover{color:var(--muted);background:transparent}.color-picker{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);margin-top:var(--space-lg)}.crew-section-label{margin:0 0 var(--space-sm);font-size:var(--text-meta);font-weight:600;color:var(--muted)}.crew-add .warning{margin-top:var(--space-lg)}.crew-members{margin-top:var(--space-xl)}.member-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-xs);height:min(18rem,38dvh);overflow-y:auto;overscroll-behavior:contain}.crew-members .empty{margin:0;height:min(18rem,38dvh);box-sizing:border-box}.member-row{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-2xs) var(--space-xs);border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.member-row .member-name-input{flex:1 1 auto;width:auto;max-width:none;min-width:0;padding:var(--space-xs) var(--space-sm)}.member-row .icon-btn{flex:none}.member-row-error{margin:var(--space-2xs) 0 0}.custom-swatch{position:relative;display:inline-flex;align-items:center;justify-content:center;border-style:dashed;border-color:var(--accent);color:var(--accent);background:transparent;overflow:hidden}.custom-swatch svg{width:12px;height:12px;pointer-events:none}.custom-swatch input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;padding:0}.custom-swatch.selected{border-style:solid;color:#fff}.swatch{width:var(--swatch);height:var(--swatch);border-radius:50%;border:.125rem solid transparent;cursor:pointer}.swatch.selected{border-color:var(--text)}.custom-color{position:relative;overflow:hidden;padding:0;background:conic-gradient(#ef4444,#eab308,#22c55e,#06b6d4,#3b82f6,#a855f7,#ef4444)}.custom-color input[type=color]{position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;width:160%;height:160%;padding:0;border:none;cursor:pointer;background:transparent}.color-dot{position:relative;display:block;overflow:hidden;flex:none;width:var(--color-dot);height:var(--color-dot);border-radius:50%;cursor:pointer}.color-dot input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:none;opacity:0;cursor:pointer}.timer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-md);min-width:0;max-width:100%}.timer-row{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-sm);min-width:0;max-width:100%;border:1px solid var(--border);border-left-width:3px;border-radius:10px;padding:calc(var(--space-md) - 1px) calc(var(--space-md) - 1px) calc(var(--space-md) - 1px) calc(var(--space-md) - 3px);background:var(--surface-2);cursor:pointer}.timer-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm);width:100%}button.timer-title{flex:1;min-width:0;padding:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.timer-line,.timer-member{display:flex;align-items:center;gap:var(--space-xs);min-width:0;min-height:20px}.timer-gutter{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none}.timer-gutter .drug-glyph{display:block;width:20px;height:20px}.timer-line-text{display:flex;align-items:center;gap:var(--space-2xs);min-width:0}.timer-members{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space-2xs) var(--space-sm);min-width:0}.timer-member-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1}.timer-member-name.departed{text-decoration:line-through;opacity:.55;font-weight:500}.timer-imported{display:inline-flex;flex:none;color:var(--muted)}.timer-imported svg{width:14px;height:14px}.timer-row.exit-cancelled,.timer-row.exit-skipped,.timer-row.exit-completed{pointer-events:none}.timer-row.exit-cancelled{animation:exit-cancel .45s ease forwards}.timer-row.exit-skipped{animation:exit-skip .45s ease forwards}.timer-row.exit-completed{animation:exit-done .5s ease forwards}.timer-info{min-width:0;flex:1}.timer-title{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-xs)}.drug-glyph{display:inline-flex;flex:none;color:var(--accent)}.drug-name,.history-name{display:inline-flex;align-items:flex-start;flex-wrap:wrap;gap:var(--space-2xs);min-width:0}.history-name{align-items:center}.history-member{display:inline-flex;align-items:center;gap:var(--space-3xs);min-width:0;font-weight:600;color:var(--member)}.timer-title .drug-name{align-items:center}.timer-title strong,.history-main strong,.reminder-text strong{font-weight:600}.timer-title strong,.timer-title .tick,.timer-title .timer-sep{font-size:20px;line-height:20px;font-weight:600}.timer-title .tick{font-variant-numeric:tabular-nums;color:var(--accent)}.timer-sep{color:var(--muted)}.timer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs) var(--space-sm);margin-top:var(--space-3xs);font-size:var(--text-meta)}.member-dots{display:inline-flex;flex-wrap:wrap;gap:var(--space-xs)}.member-tag{display:inline-flex;align-items:center;gap:var(--space-3xs);font-weight:600;color:var(--member, inherit);transition:opacity .25s ease,text-decoration-color .25s ease}.member-tag.departed{text-decoration:line-through;opacity:.55;font-weight:500;animation:fade .35s ease}.countdown-inline{color:var(--muted)}.countdown-inline.due{color:var(--accent);font-weight:600}.postpone-row{display:flex;gap:var(--space-3xs);flex-wrap:wrap;margin-top:var(--space-xs)}.timer-actions{display:flex;flex-direction:row;align-items:center;gap:var(--space-2xs);flex:none}.timer-menu-btn{width:32px;height:32px}.details-actions{display:flex;flex-wrap:nowrap;gap:var(--space-xs);margin-top:var(--modal-pad)}.details-actions .icon-btn{flex:1 1 0;width:auto;min-width:0;height:2.75rem}.history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-md)}.timer-row{display:flex;align-items:stretch;justify-content:space-between;gap:var(--space-sm);border:1px solid var(--border);border-left-width:3px;border-radius:10px;padding:calc(var(--space-md) - 1px) calc(var(--space-md) - 1px) calc(var(--space-md) - 1px) calc(var(--space-md) - 3px);background:var(--surface-2)}.timer-main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3xs);padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.timer-next{position:relative;display:flex;align-items:center;justify-content:center;gap:0;width:100%;margin:0;padding:var(--space-sm);overflow:hidden;border:none;border-radius:8px;background:color-mix(in srgb,var(--timer-accent, var(--accent)) 10%,var(--surface));color:inherit;font-family:inherit;font-size:var(--text-body);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1.2;cursor:pointer;text-align:center}.timer-next span,.timer-next strong{min-width:0;max-width:100%;font-family:inherit;font-size:inherit;font-weight:inherit;font-variant-numeric:inherit;letter-spacing:inherit;line-height:inherit;color:inherit;white-space:normal;overflow-wrap:anywhere}.timer-next.metered{background-color:color-mix(in srgb,var(--timer-accent, var(--accent)) 10%,var(--surface));background-image:linear-gradient(color-mix(in srgb,var(--timer-accent, var(--accent)) 34%,var(--surface)),color-mix(in srgb,var(--timer-accent, var(--accent)) 34%,var(--surface)));background-repeat:no-repeat;background-position:left center;background-size:var(--timer-progress, 0%) 100%;transition:background-size 1s linear}.timer-next.due{background-color:color-mix(in srgb,var(--timer-accent, var(--accent)) 22%,var(--surface))}.timer-overdue{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm);border-radius:8px;background:var(--warning-bg);color:var(--warning-text);font-size:var(--text-meta)}.timer-overdue strong{font-size:var(--text-heading);font-weight:600;font-variant-numeric:tabular-nums}.history-item{display:flex;align-items:flex-start;gap:var(--space-xs);width:100%;padding:var(--space-md);border:none;border-radius:10px;background:var(--surface-2);color:inherit;font:inherit;text-align:left;cursor:pointer}.history-item:hover{filter:brightness(1.06)}.details{display:flex;flex-direction:column;gap:var(--space-sm);margin:0}.details>div{display:grid;grid-template-columns:7.5rem 1fr;gap:var(--space-xs);align-items:baseline}.details dt{margin:0;color:var(--muted);font-size:var(--text-meta);font-weight:600}.details dd{margin:0;display:flex;flex-wrap:wrap;gap:var(--space-xs)}.details-note{white-space:pre-wrap}.history-main{flex:1;min-width:0;overflow-wrap:anywhere}.badge{flex:none;font-size:var(--text-meta);padding:var(--space-3xs) var(--space-xs);border-radius:999px;border:1px solid var(--border);white-space:nowrap}.status-active{color:var(--accent)}.status-cancelled,.status-skipped{color:var(--muted)}.reminder-stack{display:flex;flex-direction:column;gap:var(--space-xl);margin-bottom:var(--space-lg)}.reminder-deck{margin-bottom:var(--space-lg)}.reminder-deck,.reminder-stage{min-width:0;max-width:100%}.reminder-stage{--deck-peek: 1.7rem;position:relative;padding-right:var(--deck-peek);padding-bottom:var(--deck-peek);touch-action:pan-y}.reminder-card[data-depth="0"],.reminder-card.incoming{transition:transform .32s cubic-bezier(.22,1,.36,1)}.reminder-card[data-depth="0"]{position:relative;z-index:3;transform:translate(min(0px,calc(var(--shift, 0) * 1px)))}.reminder-card.incoming,.reminder-card.outgoing{position:absolute;z-index:4;top:0;left:0;width:calc(100% - var(--deck-peek));height:calc(100% - var(--deck-peek));pointer-events:none}.reminder-card.incoming{transform:translate(calc(-100% + var(--shift, 0) * 1px))}.reminder-card.outgoing{animation:reminder-leave .32s cubic-bezier(.22,1,.36,1) forwards}@keyframes reminder-leave{0%{transform:translate(calc(var(--shift, 0) * 1px))}to{transform:translate(-100%)}}.reminder-card[data-depth="0"].dragging,.reminder-card.incoming.dragging{transition:none}.reminder-card[data-depth="1"],.reminder-card[data-depth="2"]{position:absolute;pointer-events:none}.reminder-card[data-depth="1"]{z-index:2;top:calc(var(--deck-peek) / 2);left:calc(var(--deck-peek) / 2);right:calc(var(--deck-peek) / 2);bottom:calc(var(--deck-peek) / 2)}.reminder-card[data-depth="2"]{z-index:1;top:var(--deck-peek);left:var(--deck-peek);right:0;bottom:0}.reminder-deck .reminder-card[data-depth="0"] .reminder-banner{box-shadow:0 1px 4px #00000047}.reminder-card .reminder-banner{height:100%;box-sizing:border-box;box-shadow:var(--shadow)}.reminder-deck .reminder-banner{animation:none}.reminder-pager{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);margin-top:var(--space-sm)}.reminder-nav{width:1.7rem;height:1.7rem;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text);font-size:var(--text-heading);line-height:1;cursor:pointer}.reminder-nav:hover{filter:brightness(1.08)}.reminder-dots{display:flex;align-items:center;gap:var(--space-2xs)}.reminder-dot{width:.42rem;height:.42rem;padding:0;border:0;border-radius:999px;background:var(--border-strong);cursor:pointer;transition:width .25s ease,background-color .25s ease}.reminder-dot[aria-selected=true]{width:1.15rem;background:var(--accent)}.reminder-banner{background:var(--warning-bg);color:var(--warning-text);border:1px solid color-mix(in srgb,var(--warning-text) 22%,transparent);border-radius:var(--radius);padding:var(--space-lg);margin:0;display:flex;flex-direction:column;gap:var(--space-xs);min-width:0;max-width:100%}.reminder-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-xs);min-width:0;max-width:100%}.reminder-text{display:inline-flex;align-items:center;gap:var(--space-xs);min-width:0;max-width:100%}.reminder-copy{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2xs);line-height:1.3}.reminder-member.departed{text-decoration:line-through;opacity:.55}.reminder-copy .drug-name{display:inline-flex;align-items:center;gap:var(--space-3xs)}.reminder-copy .drug-glyph{width:1.05em;height:1.05em}.reminder-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text)}.reminder-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2xs);width:100%;min-width:0;max-width:100%}.reminder-snooze,.reminder-finish{display:flex;flex-wrap:wrap;gap:var(--space-2xs);min-width:0;max-width:100%}.reminder-snooze{margin-right:auto}.reminder-finish{margin-left:auto}.modal-overlay.front{z-index:70}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:max(1rem,var(--safe-top)) max(1rem,var(--safe-right)) max(1rem,var(--safe-bottom)) max(1rem,var(--safe-left));z-index:50;overflow:hidden;overscroll-behavior:none;animation:fade .2s ease}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;padding:0;margin:0;background:transparent;cursor:default}.modal{position:relative;z-index:1}.modal{--modal-pad: 1.2rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(520px,100%);max-height:calc(100dvh - max(1rem,var(--safe-top)) - max(1rem,var(--safe-bottom)));display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain;box-shadow:var(--shadow)}.modal-header{display:flex;align-items:center;justify-content:space-between;flex:none;padding:var(--modal-pad);border-bottom:1px solid var(--border)}.modal-header-tools{display:flex;align-items:center;gap:var(--space-2xs);flex:none}.modal-header h2{display:flex;align-items:center;gap:var(--space-xs);margin:0;font-size:var(--text-title);font-weight:600;line-height:1}.modal-body{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:var(--modal-pad)}.modal-footer{flex:none;padding:var(--modal-pad);border-top:1px solid var(--border)}.modal:has(>.modal-footer) .modal-body{padding-bottom:0}.modal-footer .choice-actions,.modal-footer .btn.block,.modal-footer .btn.block.crew-done{margin-top:0}.modal-body>:first-child{margin-top:0}.modal-body>.choice-actions:last-child,.modal-body>.btn.block:has(+.welcome-actions),.modal-body>.btn.block:last-child,.modal-body>.row:last-child,.modal-body .field-in>.btn.block:last-child,.modal-body .notif-actions,.modal-body>.recovery-actions,.modal-body>:not(.btn.block)+.btn.block:has(+.btn.block:last-child){margin-top:var(--modal-pad)}.modal-body>.btn.block+.btn.block:last-child{margin-top:var(--space-xs)}.modal-body>p:last-child,.modal-body>p:has(+.choice-actions),.modal-body>p:has(+.btn){margin-bottom:0}.modal-body p{margin:0 0 var(--space-md)}.limit-breaches{display:flex;flex-direction:column;gap:var(--space-sm);margin:0 0 var(--space-md);padding:0;list-style:none}.modal-body .settings-notifications p.settings-note{margin:0}.modal-body h3{margin:var(--space-xl) 0 var(--space-sm);font-size:var(--text-body);font-weight:600}.modal-body .modal-section-first,.modal-body h3.modal-section-first{margin-top:0}.modal-lead{margin:0 0 var(--space-md)}.modal-body .about-lead{margin:0 0 var(--space-lg)}.about-block{margin:0 0 var(--space-md);padding:var(--space-md) var(--space-lg);border-radius:10px;background:var(--surface-2)}.modal-body .about-block h3{margin:0 0 var(--space-2xs);font-size:var(--text-meta);font-weight:600;color:var(--muted)}.modal-body .about-block p,.modal-body .about-credit{margin:0}.about-credit{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-lg);margin-top:var(--space-md);font-size:var(--text-meta);color:color-mix(in srgb,var(--muted) 72%,transparent)}.about-credit a{color:inherit}.about-build{font-variant-numeric:tabular-nums}.about-points{padding-left:var(--space-lg);margin:0 0 var(--space-md)}.settings-inline,.settings-notifications{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm) var(--space-xl)}.settings-notifications{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:var(--space-sm) var(--space-md)}.settings-notifications>.btn,.settings-notifications>.settings-note{grid-column:1 / -1;justify-self:start}.settings-notifications>.btn{width:fit-content;max-width:100%;padding-left:var(--space-xs);padding-right:var(--space-xs)}.modal-body .settings-notifications+h3{margin-top:var(--space-md)}.settings-pair{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-xl)}.settings-erase{margin-top:0;margin-bottom:var(--space-md)}.settings-inline .settings-note{flex:1 0 100%;margin:var(--space-3xs) 0 0}.toggle{position:relative;display:flex;align-items:center;gap:var(--space-sm);margin:0;cursor:pointer}.toggle input{position:absolute;opacity:0;width:1.25rem;height:1.25rem;margin:0}.toggle-box{width:1.25rem;height:1.25rem;flex:none;border-radius:6px;border:1.5px solid var(--border);background:var(--surface-2);display:grid;place-items:center}.toggle input:checked+.toggle-box{background:var(--accent);border-color:transparent}.toggle input:checked+.toggle-box:after{content:"";width:.3rem;height:.55rem;border:solid var(--accent-contrast);border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}.toggle input:focus-visible+.toggle-box{outline:2px solid var(--accent);outline-offset:2px}.toggle input:disabled+.toggle-box{opacity:.45}.settings-appearance{display:flex;align-items:stretch;gap:var(--space-xs)}.settings-appearance>.field,.settings-notifications>.field{margin:0;min-width:0}.settings-appearance>.field{flex:1 1 0}.settings-appearance+.field{margin-bottom:0}.modal-body .settings-appearance+.field+h3{margin-top:var(--space-md)}.accent-swatches{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs)}.accent-swatch{position:relative;width:var(--accent-dot);height:var(--accent-dot);padding:0;border-radius:50%;border:.125rem solid transparent;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;overflow:hidden;background-color:transparent}.accent-swatch-fill{position:absolute;top:-.125rem;right:-.125rem;bottom:-.125rem;left:-.125rem;border-radius:inherit;background:conic-gradient(#ef4444,#eab308,#22c55e,#3b82f6,#a855f7,#ef4444);clip-path:circle(50%);pointer-events:none}.accent-swatch.selected{border-color:var(--text)}.item-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-md)}.item-card{display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-sm);border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.item-name-row{align-items:stretch;padding:0;border:0;background:transparent}.crew-manager .input,.crew-manager .select-trigger,.crew-manager .member-name-row>.btn,.crew-manager .item-name-row>.icon-btn{height:2.75rem;min-height:2.75rem;padding-block:0}.crew-manager .item-name-row>.icon-btn{width:2.75rem}.item-fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs) var(--space-sm)}.crew-add .member-name-row+.item-fields{margin-top:var(--space-xs)}.item-fields .field{margin:0;gap:var(--space-xs)}.custom-drug{display:flex;flex-direction:column;gap:var(--space-xs);margin-top:var(--space-sm)}.custom-drug>.link-btn{align-self:flex-start}.item-fields .field:has(input[aria-label^=Custom]){grid-column:1 / -1}.icon-select{width:auto;flex:none}.icon-select .select-trigger{width:auto;min-width:3.25rem;height:100%;justify-content:center;padding-left:var(--space-xs);padding-right:var(--space-xl);background-position:right .45rem center}.icon-select .select-trigger>span{display:flex;overflow:visible}.icon-select-list .select-option{display:flex;justify-content:center;padding:var(--space-xs)}.settings-message{margin-top:var(--space-xl)}.empty-hero{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2xs);margin-top:var(--space-xs)}.empty-hero h2{margin:0}.empty-hero p{margin:0 0 var(--space-md)}.hero-cta{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);width:100%;padding:var(--space-md) var(--space-xl)}.app-footer{text-align:center;margin-top:var(--space-xl);padding-bottom:0}.app-footer p{margin:var(--space-3xs) 0}.settings-data-row{flex-wrap:nowrap}.settings-data-row .btn{flex:1;padding-left:var(--space-xs);padding-right:var(--space-xs)}.backup-key-form{margin:0}.backup-key-form .backup-key-error,.backup-key-actions{margin-top:var(--modal-pad, var(--space-xl))}.backup-key-actions .btn.block{margin-top:0}@media (max-width: 720px){.modal-overlay{align-items:center}.modal{--modal-pad: 1rem}.modal-body h3{margin:var(--space-lg) 0 var(--space-sm)}.modal-body p{margin-bottom:var(--space-md)}.toggle{margin:0}}.fab{position:fixed;right:calc((100% - min(100%,1800px)) / 2 + var(--page-pad) + max(1rem,var(--safe-right)));bottom:max(1rem,var(--safe-bottom));z-index:40;display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-lg) var(--space-xl);border:none;border-radius:999px;background:var(--accent);color:var(--accent-contrast);font-weight:600;cursor:pointer;box-shadow:0 8px 24px #0000004d;transition:transform .12s ease,filter .2s ease;animation:pop .25s ease,fab-breathe 3.2s ease-in-out .4s infinite}.fab svg{width:24px;height:24px}.fab:hover{filter:brightness(1.05)}.fab:active{transform:scale(.96)}@media (max-width: 480px){.fab span{display:none}.fab{padding:var(--space-xl)}}.notif-prompt{text-align:center}.notif-icon{width:52px;height:52px;margin:0 auto var(--space-md);border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.row.end{justify-content:flex-end;margin-top:var(--space-lg)}.notif-actions{display:flex;flex-direction:column;gap:var(--space-xs);margin-top:var(--space-lg)}.notif-actions .btn.block{margin-top:0}.notif-actions .muted{margin:var(--space-3xs) 0 0}.recovery-error{margin:0 0 var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:calc(var(--radius) - 4px);background:var(--surface-2);border:1px solid var(--border);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--text-meta);line-height:1.45;white-space:pre-wrap;word-break:break-word;max-height:8rem;overflow:auto}.custom-timer .row{gap:var(--space-md)}.duration-part{display:inline-flex;align-items:center;gap:var(--space-2xs)}.duration-part .input{width:5rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center}.muted{color:var(--muted)}.small{font-size:var(--text-meta)}.empty{color:var(--muted);font-style:italic}.warning{background:var(--warning-bg);color:var(--warning-text);padding:var(--space-md);border-radius:10px}a{color:var(--accent)}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes pop-out{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.96) translateY(8px)}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes slidein{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slidein-left{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes exit-cancel{0%{transform:translate(0);opacity:1}35%{transform:translate(8px);background:color-mix(in srgb,var(--danger) 22%,var(--surface-2))}to{transform:translate(28px);opacity:0}}@keyframes exit-skip{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-10px) scale(.98);opacity:0}}@keyframes exit-done{0%{transform:translateY(0);opacity:1}35%{transform:translateY(0);background:color-mix(in srgb,var(--accent) 24%,var(--surface-2))}to{transform:translateY(12px);opacity:0}}@keyframes fab-breathe{0%,to{box-shadow:0 8px 24px #0000004d}50%{box-shadow:0 10px 28px #00000059,0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}}@keyframes pill-select{0%{transform:scale(.92)}to{transform:scale(1)}}@keyframes banner-shake{0%,to{transform:translate(0)}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}.app-held .app-header,.app-held .demo-banner,.app-held .reminder-stack,.app-held .layout,.app-held .empty-hero,.app-held .app-footer,.app-held .fab{opacity:0;pointer-events:none}.app-reveal .app-header{animation:rise-fade .45s ease both}.app-reveal .demo-banner,.app-reveal .reminder-stack,.app-reveal .layout,.app-reveal .empty-hero{animation:rise .55s ease .08s both}.app-reveal .app-footer{animation:rise .5s ease .16s both}.app-reveal .fab{animation:rise-fade .4s ease .22s both,fab-breathe 3.2s ease-in-out .7s infinite}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes rise-fade{0%{opacity:0}to{opacity:1}}.animate-pop{animation:pop .22s ease}.animate-in{animation:slidein .28s ease both}.timer-row.animate-in{animation-fill-mode:backwards}.animate-in-left{animation:slidein-left .28s ease both}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.12s}.stagger-3{animation-delay:.18s}.modal-overlay.closing{z-index:40;animation:fade-out .2s ease forwards;pointer-events:none}.modal-overlay.front.closing{z-index:60}.modal.closing{animation:pop-out .2s ease forwards}.card{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.timer-row{transition:background-color .2s ease,border-color .2s ease,transform .15s ease,filter .15s ease}.timer-row:hover{transform:translate(2px);filter:brightness(1.06)}.timer-title .tick{transition:color .2s ease}.history-item{transition:background-color .2s ease,transform .15s ease}.history-item:hover{transform:translate(2px)}.pill{transition:transform .15s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.pill.active{animation:pill-select .18s ease}.member-chip{transition:transform .15s ease,opacity .2s ease}.member-chip:hover{transform:translateY(-1px)}.dot,.stats-dot,.color-dot{background-color:var(--member, var(--accent))}.swatch{background-color:var(--member)}.timer-row{border-color:var(--member, var(--border))}.timer-member-name{color:var(--member, inherit)}.timer-next{color:var(--timer-accent, var(--accent))}.pill{border-color:var(--member, var(--border))}.pill.active{background:var(--member, var(--accent));border-color:var(--member, var(--accent))}.leader-fill{width:var(--bar, 0);background:var(--accent)}.gap-bar{height:var(--bar, 8px)}.reminder-banner{animation:slidein .28s ease,banner-shake .45s ease .15s}.badge{transition:color .2s ease,border-color .2s ease}.modal-overlay{animation:fade .2s ease}.card-heading-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-lg)}.card-heading-row h2{display:flex;align-items:center;margin:0;line-height:1.2}.card-heading-end{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-xs);margin-left:auto}.welcome-install-hint{margin:var(--space-xs) 0 0}.welcome-actions{display:flex;gap:var(--space-xs);margin-top:var(--space-xs)}.card>.empty{margin:0}.card>.empty+.btn{margin-top:var(--card-pad)}.welcome-actions .btn{flex:1;min-width:0;margin-top:0}.demo-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-lg);padding:var(--space-md) var(--space-lg);border-radius:var(--radius);background:var(--warning-bg);color:var(--warning-text)}.demo-banner p{margin:0}.demo-banner .btn{flex:none;background:transparent;color:inherit;border-color:currentColor}.save-error-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-lg);padding:var(--space-md) var(--space-lg);border-radius:var(--radius);background:color-mix(in srgb,var(--danger) 16%,var(--surface));color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 45%,transparent)}.save-error-banner p{margin:0}.save-error-banner .btn{flex:none;background:transparent;color:inherit;border-color:currentColor}.btn.block.crew-done{margin-top:var(--modal-pad)}.toast{position:fixed;left:50%;bottom:max(1.25rem,var(--safe-bottom));transform:translate(-50%);z-index:80;max-width:calc(100% - 2rem);padding:var(--space-sm) var(--space-lg);border-radius:999px;background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow);animation:fade .2s ease}.pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;column-gap:var(--space-2xs);margin:var(--space-sm) 0 0;padding:var(--space-xs) 0 0;border-top:1px solid var(--border)}.pagination .btn{display:inline-flex;align-items:center}.pagination .btn.small{padding:var(--space-3xs) var(--space-2xs);font-size:var(--text-meta);font-weight:500;color:var(--muted);background:transparent;border-color:transparent}.pagination .btn.small:hover:not(:disabled){color:var(--text);background:transparent}.pagination .btn:first-of-type{justify-self:start}.pagination .btn:last-of-type{justify-self:end}.page-status{display:flex;align-items:center;justify-content:center;justify-self:center;text-align:center;color:var(--muted);font-size:var(--text-meta);font-weight:500;font-variant-numeric:tabular-nums;line-height:1.2}.interval-chart{margin:var(--space-md) 0 0}.interval-chart figcaption{display:flex;flex-wrap:wrap;gap:var(--space-3xs) var(--space-md);margin:0 0 var(--space-2xs);color:var(--muted);font-size:var(--text-meta)}.gap-cols{display:flex;align-items:flex-end;justify-content:flex-start;gap:var(--space-xs);width:100%;max-width:100%;min-width:0;padding:var(--space-sm) var(--space-md) var(--space-xs);box-sizing:border-box;border-radius:10px;background:var(--surface-2);overflow-x:auto}.gap-col{flex:1 1 2.4rem;width:auto;max-width:none;min-width:2.4rem;display:flex;flex-direction:column;align-items:center;gap:var(--space-3xs)}.gap-bar{display:block;width:100%;border-radius:4px;background:var(--accent)}.gap-label{color:var(--muted);font-size:var(--text-meta);line-height:1.15;text-align:center}.drug-note{margin:var(--space-xs) 0 0;color:var(--muted);font-size:var(--text-meta)}.session-stats{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-lg)}.session-stat-top{display:flex;justify-content:space-between;gap:var(--space-sm);min-width:0}.session-stat-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.session-stat-count{font-variant-numeric:tabular-nums;font-weight:600}.duration-cols{display:flex;align-items:flex-end;gap:var(--space-xs);margin-top:var(--space-xs)}.duration-col{flex:1 1 2rem;min-width:2rem;max-width:4rem;display:flex;flex-direction:column;align-items:center;gap:var(--space-3xs)}.duration-bar{display:block;width:100%;border-radius:4px;background:var(--accent);height:var(--bar, 0)}.apk-qr-panel .share-qr{width:min(100%,360px);margin:0 auto}.modal-body .apk-offer p,.apk-offer .btn.block{margin:0}.apk-qr-panel{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);margin:0}.apk-qr-panel .muted{margin:0}.settings-menu{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3xs);width:100%;margin:var(--space-md) 0 var(--space-3xs);padding:var(--space-md) var(--space-lg);border:1px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer}.settings-menu-title{font-weight:600}.settings-menu:hover{filter:brightness(1.05)}.share-qr{display:block;width:min(100%,360px);height:auto;margin:var(--space-xl) auto;padding:var(--space-xs);box-sizing:border-box;border-radius:12px;background:#fff;color:#111}.modal-body>.field:has(+.share-qr){margin-bottom:0}.modal-body>.share-qr+.btn.block{margin-top:0}.share-qr path{fill:currentColor}.share-qr .qr-logo-plate{fill:#fff}.share-qr .qr-logo .logo-tile{fill:currentColor}.share-qr .qr-logo .logo-mark{stroke:#fff}.member-stats,.drug-stats{list-style:none;margin:0;padding:0}.member-stats{display:flex;flex-direction:column;gap:var(--space-lg)}.stats-block{margin-bottom:var(--space-lg)}.stats-split>.stats-block{display:flex;flex-direction:column;height:100%;margin-bottom:0;padding:var(--space-md);border:1px solid var(--border);border-radius:12px;background:var(--surface-2);box-sizing:border-box}.stats-split>.stats-block>.pagination{margin-top:auto}.stats-subhead{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md)}.stats-block .intake-board{margin-bottom:0}.intake-board{list-style:none;margin:0 0 var(--space-lg);padding:0;display:flex;flex-direction:column;gap:var(--space-xs)}.intake-board li{display:grid;grid-template-columns:1.1rem .7rem minmax(0,1fr) auto auto;grid-template-areas:"rank dot name count score" ". . bar bar bar";align-items:center;gap:var(--space-3xs) var(--space-sm)}.intake-board li>:nth-child(1){grid-area:rank}.intake-board li>:nth-child(2){grid-area:dot}.intake-board li>:nth-child(3){grid-area:name}.intake-board li>:nth-child(4){grid-area:count}.intake-board li>:nth-child(5){grid-area:score}.intake-board li>:nth-child(6){grid-area:bar}.board-stat{display:flex;flex-direction:column;align-items:flex-end;min-width:3.4rem;line-height:1.15}.board-stat-value{font-weight:600;font-variant-numeric:tabular-nums}.board-stat-label{font-size:var(--text-meta);font-weight:500;color:var(--muted)}.intake-rank{font-size:var(--text-meta);color:var(--muted);font-variant-numeric:tabular-nums}.stats-sub{margin:0 0 var(--space-xs);font-size:var(--text-body);font-weight:600}.member-stat-head{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xs)}.member-stat-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.member-stat-head .muted{margin-left:auto}.stats-dot{width:.7rem;height:.7rem;border-radius:50%;flex:none}.adherence-list{list-style:none;margin:0 0 var(--space-lg);padding:0;display:flex;flex-direction:column;gap:var(--space-xs)}.adherence-list li{display:grid;grid-template-columns:.7rem minmax(0,1fr) auto;align-items:center;gap:var(--space-sm)}.adherence-meta{display:flex;align-items:flex-start;gap:var(--space-xs);justify-content:flex-end}.adherence-meta .board-stat{min-width:0}.drug-stats{display:flex;flex-direction:column;gap:var(--space-sm)}.drug-stat-top{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2xs) var(--space-md)}.drug-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drug-count{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:600;text-align:right}.stats-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:var(--space-sm)}.stats-tile{display:flex;flex-direction:column;height:100%;box-sizing:border-box;gap:var(--space-3xs);min-width:0;padding:var(--space-sm) var(--space-md);border-radius:12px;background:var(--surface-2)}.stats-tile-value{font-size:1.35rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.1}.stats-tile-label{color:var(--muted);font-size:var(--text-meta);font-weight:500}.stats-span{margin:var(--space-sm) 0 0;color:var(--muted);font-size:var(--text-meta)}.stats-charts,.stats-split{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-lg);margin-top:var(--space-lg)}.stats-chart{min-width:0;margin:0}.stats-chart figcaption,.mix-chart figcaption{display:flex;flex-wrap:wrap;gap:var(--space-3xs) var(--space-md);margin:0 0 var(--space-2xs);color:var(--muted);font-size:var(--text-meta)}.bar-chart,.donut{display:block;width:100%;height:auto;color:var(--accent);background:var(--surface-2);border-radius:10px}.donut{width:7.5rem;height:7.5rem;background:transparent}.stats-axis{display:flex;justify-content:space-between;margin-top:var(--space-3xs);color:var(--muted);font-size:var(--text-meta);font-variant-numeric:tabular-nums}.mix-row{display:flex;align-items:center;gap:var(--space-md)}.mix-legend{list-style:none;margin:0;padding:0;flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-3xs)}.mix-legend li{display:flex;justify-content:space-between;gap:var(--space-sm);font-variant-numeric:tabular-nums}.mix-legend li span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adhere-bar{display:flex;height:.55rem;margin:0 0 var(--space-sm);border-radius:999px;overflow:hidden;background:var(--surface-2)}.adhere-on{background:var(--accent)}.adhere-late{background:color-mix(in srgb,var(--accent) 55%,var(--surface))}.adhere-miss{background:color-mix(in srgb,var(--text) 28%,var(--surface))}.stats-share-preview{display:block;width:100%;height:auto;margin:0;border-radius:12px;background:var(--surface-2)}.card-heading-row .btn.small{display:inline-flex;align-items:center;gap:var(--space-2xs)}.card-heading-row .btn.small svg{width:1rem;height:1rem}@media (min-width: 720px){.stats-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}.stats-charts,.stats-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.mix-chart{grid-column:1 / -1}}.leader-track{display:block;height:.4rem;margin-top:var(--space-3xs);border-radius:999px;background:var(--surface-2);overflow:hidden}.leader-fill{display:block;height:100%;border-radius:inherit}@keyframes field-in{0%{opacity:0;transform:translateY(-.35rem)}to{opacity:1;transform:none}}.field-in{animation:field-in .22s ease}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
