@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Young Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/young-serif-latin-ext-400-normal-DzElnxZw.woff2)format("woff2"),url(/assets/young-serif-latin-ext-400-normal-4arC2Gh9.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Young Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/young-serif-latin-400-normal-DIMmNPI9.woff2)format("woff2"),url(/assets/young-serif-latin-400-normal-D1tz0Z9s.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#f4efe6;--paper-2:#ebe3d4;--card:#fffcf6;--ink:#1e1a15;--ink-2:#4a4238;--muted:#776c5d;--line:#e3d8c6;--line-strong:#cbbda6;--accent:#b23a26;--accent-press:#952f1e;--accent-soft:#f6e0d7;--accent-ink:#fffaf5;--navy:#213d5c;--navy-soft:#dfe7ef;--good:#2c6a49;--good-soft:#dcebdf;--warn:#9c5c0f;--warn-soft:#f6e6c9;--bad:#a3271b;--bad-soft:#f5d8d2;--stripe:repeating-linear-gradient(135deg, var(--accent) 0 9px, #fffaf5 9px 18px, var(--navy) 18px 27px, #fffaf5 27px 36px);--radius:18px;--radius-sm:12px;--shadow:0 1px 0 #1e1a150a, 0 10px 28px -16px #1e1a1547;--shadow-lift:0 2px 0 #1e1a150d, 0 18px 40px -18px #1e1a1566;--font-display:"Young Serif", "Iowan Old Style", Georgia, serif;--font-body:"Atkinson Hyperlegible Next Variable", "Atkinson Hyperlegible Next", "Segoe UI", sans-serif;--tap:48px;--tabbar-h:68px;--safe-bottom:env(safe-area-inset-bottom,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-vertical=CLINIC]{--accent:#1d6a66;--accent-press:#155350;--accent-soft:#d7ebe8;--stripe:linear-gradient(90deg, var(--accent), var(--navy))}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-body);color:var(--ink);background-color:var(--paper);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.2 0 0 0 0 0.15 0 0 0 0 0.1 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");margin:0;font-size:17px;line-height:1.45}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-weight:400;line-height:1.12}h1{font-size:clamp(30px,6vw,40px)}h2{font-size:23px}h3{font-size:19px}p{margin:0}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid color-mix(in srgb, var(--navy) 55%, transparent);outline-offset:2px;border-radius:8px}.icon{flex-shrink:0;width:22px;height:22px}.chip .icon{width:18px;height:18px}.pill .icon{width:15px;height:15px}.callout .icon,.item-sub .icon{width:20px;height:20px}.muted{color:var(--muted)}.small{font-size:15px}.tiny{letter-spacing:.02em;font-size:13px}.serif{font-family:var(--font-display)}.eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:700}.nowrap{white-space:nowrap}.grow{flex:1;min-width:0}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.shell{min-height:100dvh;display:flex}.stripe{background:var(--stripe);background-size:51px 100%;height:5px}.sidebar{display:none}.main{min-width:0;padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 24px);flex:1}.topbar{z-index:20;background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(10px);position:sticky;top:0}.topbar-inner{align-items:center;gap:10px;min-height:56px;padding:10px 18px;display:flex}.brand{align-items:center;gap:10px;text-decoration:none;display:flex}.brand-mark{background:var(--ink);width:34px;height:34px;color:var(--paper);font-family:var(--font-display);border-radius:10px;place-items:center;font-size:19px;display:grid;position:relative;overflow:hidden}.brand-mark:after{content:"";background:var(--stripe);background-size:30px 100%;height:5px;position:absolute;inset:auto 0 0}.brand-name{font-family:var(--font-display);font-size:19px;line-height:1.1}.brand-sub{color:var(--muted);font-size:13px}.tabbar{z-index:30;height:calc(var(--tabbar-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--card);border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 30px -22px #1e1a1580}.tab{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:12.5px;font-weight:600;text-decoration:none;display:flex;position:relative}.tab svg{width:25px;height:25px}.tab.active{color:var(--ink)}.tab.active:before{content:"";background:var(--stripe);background-size:34px 100%;border-radius:0 0 4px 4px;height:4px;position:absolute;top:0;left:26%;right:26%}.tab .badge{position:absolute;top:8px;left:calc(50% + 6px)}.badge{background:var(--accent);min-width:21px;height:21px;color:var(--accent-ink);border-radius:999px;place-items:center;padding:0 6px;font-size:12.5px;font-weight:700;line-height:1;display:inline-grid}.page{max-width:1080px;margin:0 auto;padding:8px 18px 0}.page-head{flex-wrap:wrap;align-items:flex-end;gap:12px;margin:6px 0 18px;display:flex}.page-head>.grow{flex:280px}.page-head .grow p{margin-top:6px}.back{color:var(--muted);align-items:center;gap:4px;min-height:40px;margin-bottom:2px;font-weight:600;text-decoration:none;display:inline-flex}.back svg{width:20px;height:20px}@media (width>=960px){.sidebar{border-right:1px solid var(--line);background:color-mix(in srgb, var(--card) 70%, var(--paper));flex-direction:column;flex-shrink:0;width:252px;height:100dvh;display:flex;position:sticky;top:0}.sidebar .brand{padding:22px 20px 18px}.sidebar nav{flex-direction:column;gap:2px;padding:6px 12px;display:flex}.side-link{min-height:48px;color:var(--ink-2);border-radius:12px;align-items:center;gap:12px;padding:0 12px;font-weight:600;text-decoration:none;display:flex}.side-link svg{width:22px;height:22px;color:var(--muted)}.side-link:hover{background:var(--paper-2)}.side-link.active{background:var(--ink);color:var(--paper)}.side-link.active svg{color:var(--paper)}.side-link .badge{margin-left:auto}.side-group{padding:14px 12px 4px}.sidebar-foot{border-top:1px solid var(--line);margin-top:auto;padding:16px 20px 22px}.tabbar,.topbar.mobile-only{display:none}.main{padding-bottom:48px}.page{padding:34px 40px 0}.page-head{margin-bottom:26px}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:18px}.card-head{align-items:center;gap:10px;padding:16px 18px 10px;display:flex}.card-head h2,.card-head h3{flex:1}.section{margin-bottom:22px}.section-title{align-items:baseline;gap:10px;margin:0 2px 10px;display:flex}.section-title h2{flex:1}.stack{flex-direction:column;gap:12px;display:flex}.stack-lg{flex-direction:column;gap:20px;display:flex}.row{align-items:center;gap:12px;display:flex}.row-wrap{flex-wrap:wrap;gap:8px;display:flex}.grid-2{gap:16px;display:grid}@media (width>=760px){.grid-2{grid-template-columns:1fr 1fr}.grid-2-wide{grid-template-columns:1.35fr 1fr;align-items:start;gap:20px;display:grid}}.divider{background:var(--line);height:1px;margin:4px 0}.list{margin:0;padding:0;list-style:none}.list>li+li{border-top:1px solid var(--line)}.list-item{min-height:64px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;width:100%;padding:14px 18px;text-decoration:none;display:flex}@media (hover:hover){.list-item:hover{background:color-mix(in srgb, var(--paper-2) 45%, transparent)}}.list-item .chev{width:20px;height:20px;color:var(--line-strong);flex-shrink:0}.item-title{font-weight:700}.item-sub{color:var(--muted);font-size:15px}.avatar{background:var(--paper-2);width:44px;height:44px;color:var(--ink-2);border:1px solid var(--line);border-radius:50%;flex-shrink:0;place-items:center;font-size:15px;font-weight:700;display:grid}.avatar.lg{width:64px;height:64px;font-size:22px;font-family:var(--font-display);font-weight:400}.btn{min-height:var(--tap);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:16.5px;font-weight:700;text-decoration:none;transition:transform 80ms,background-color .15s,box-shadow .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn svg{flex-shrink:0;width:21px;height:21px}.btn[disabled]{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 6px 16px -10px var(--accent)}@media (hover:hover){.btn-primary:hover{background:var(--accent-press)}}.btn-dark{background:var(--ink);color:var(--paper)}.btn-secondary{background:var(--card);border-color:var(--line-strong);color:var(--ink)}@media (hover:hover){.btn-secondary:hover{background:var(--paper-2)}}.btn-ghost{color:var(--ink-2);background:0 0;padding:0 12px}@media (hover:hover){.btn-ghost:hover{background:var(--paper-2)}}.btn-danger{background:var(--card);color:var(--bad);border-color:color-mix(in srgb, var(--bad) 45%, var(--line))}.btn-good{background:var(--good);color:#fff}.btn-lg{min-height:58px;padding:0 26px;font-size:18px}.btn-sm{min-height:40px;padding:0 14px;font-size:15px}.btn-block{width:100%}.btn-icon{width:var(--tap);padding:0}.btn-row{flex-wrap:wrap;gap:10px;display:flex}.btn-row>.btn{flex:auto}.field{flex-direction:column;gap:6px;display:flex}.field>span:first-child,.label{font-size:15.5px;font-weight:700}.hint{color:var(--muted);font-size:14.5px}.error-text{color:var(--bad);font-size:14.5px;font-weight:600}.input,.select,.textarea{border-radius:var(--radius-sm);border:1.5px solid var(--line-strong);background:#fffefb;width:100%;min-height:50px;padding:12px 14px;font-size:17px;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus,.textarea:focus{border-color:var(--navy);box-shadow:0 0 0 4px color-mix(in srgb, var(--navy) 16%, transparent);outline:none}.textarea{resize:vertical;min-height:120px;line-height:1.5}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%23776c5d' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 8 5 5 5-5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:40px}.input-time{min-width:0}.search{position:relative}.search svg{width:21px;height:21px;color:var(--muted);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search .input{border-radius:999px;padding-left:46px}.toggle{min-height:var(--tap);cursor:pointer;align-items:center;gap:14px;display:flex}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle .track{background:var(--line-strong);border-radius:999px;flex-shrink:0;width:52px;height:32px;transition:background-color .18s;position:relative}.toggle .track:after{content:"";background:#fff;border-radius:50%;width:26px;height:26px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #00000038}.toggle input:checked+.track{background:var(--good)}.toggle input:checked+.track:after{transform:translate(20px)}.toggle input:focus-visible+.track{outline:3px solid color-mix(in srgb, var(--navy) 55%, transparent);outline-offset:2px}.check{cursor:pointer;align-items:flex-start;gap:12px;padding:4px 0;display:flex}.check input{width:26px;height:26px;accent-color:var(--good);cursor:pointer;flex-shrink:0;margin:1px 0 0}.check-label{min-height:28px;font-weight:700;display:block}.consent{color:var(--muted);margin-top:4px;font-size:13.5px;line-height:1.45;display:block}.segmented{background:var(--paper-2);border:1px solid var(--line);border-radius:999px;gap:2px;padding:4px;display:inline-flex}.segmented button{min-height:40px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 16px;font-size:15px;font-weight:700;display:inline-flex}.segmented button.on{background:var(--card);color:var(--ink);box-shadow:0 2px 6px -2px #1e1a1540}.chips{scrollbar-width:none;gap:8px;margin:0 -18px;padding:2px 18px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1.5px solid var(--line-strong);background:var(--card);cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;max-width:100%;min-height:42px;padding:0 16px;font-size:15px;font-weight:700;display:inline-flex}.chip.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.chip .count{opacity:.7;font-size:13px}.choice-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.choice{border:1.5px solid var(--line-strong);background:var(--card);border-radius:var(--radius-sm);text-align:left;cursor:pointer;flex-direction:column;gap:4px;min-height:64px;padding:14px;display:flex}.choice strong{font-size:16.5px}.choice span{color:var(--muted);font-size:14.5px}.choice.on{border-color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink);background:#fffefb}.choice .ic{width:28px;height:28px;margin-bottom:4px}.pill{white-space:nowrap;background:var(--paper-2);height:27px;color:var(--ink-2);border-radius:999px;align-items:center;gap:5px;padding:0 10px;font-size:13.5px;font-weight:700;display:inline-flex}.pill:before{content:"";opacity:.85;background:currentColor;border-radius:50%;width:7px;height:7px}.pill.plain:before{display:none}.tone-good{background:var(--good-soft);color:var(--good)}.tone-info{background:var(--navy-soft);color:var(--navy)}.tone-warn{background:var(--warn-soft);color:var(--warn)}.tone-bad{background:var(--bad-soft);color:var(--bad)}.tone-muted{background:var(--paper-2);color:var(--muted)}.tone-accent{background:var(--accent-soft);color:var(--accent)}.banner{border-radius:var(--radius);border:1px solid var(--line);background:var(--card);align-items:center;gap:14px;padding:14px 16px;display:flex}.banner .ic{border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.banner .ic svg{width:23px;height:23px}.banner.good .ic{background:var(--good-soft);color:var(--good)}.banner.warn{background:var(--ink);color:var(--paper);border:0;padding-top:19px;position:relative;overflow:hidden}.banner.warn:before{content:"";background:var(--stripe);background-size:51px 100%;height:6px;position:absolute;inset:0 0 auto}.banner.warn .ic{color:#ffd9c9;background:#ffffff1a}.banner.warn .muted{color:#cdbfae}.banner.info .ic{background:var(--navy-soft);color:var(--navy)}.callout{border-radius:var(--radius-sm);background:var(--warn-soft);color:#5b3a0c;align-items:flex-start;gap:10px;padding:12px 14px;font-size:15px;display:flex}.callout svg{flex-shrink:0;width:20px;height:20px;margin-top:2px}.callout.info{background:var(--navy-soft);color:var(--navy)}.callout.bad{background:var(--bad-soft);color:var(--bad)}.empty{text-align:center;color:var(--muted);padding:34px 20px}.empty .art{background:var(--paper-2);width:56px;height:56px;color:var(--muted);border-radius:18px;place-items:center;margin:0 auto 12px;display:grid}.empty .art svg{width:28px;height:28px}.empty strong{color:var(--ink);margin-bottom:4px;font-size:18px;display:block}.spinner{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite spin}.loading{place-items:center;padding:48px 0;display:grid}.skeleton{background:linear-gradient(90deg, var(--paper-2), #f5efe4, var(--paper-2));background-size:200% 100%;border-radius:10px;animation:1.2s ease-in-out infinite shimmer}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position:-200% 0}}.toast-wrap{z-index:80;left:50%;bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 14px);pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:min(92vw,420px);display:flex;position:fixed;transform:translate(-50%)}@media (width>=960px){.toast-wrap{bottom:28px}}.toast{pointer-events:auto;background:var(--ink);color:var(--paper);box-shadow:var(--shadow-lift);border-radius:14px;align-items:center;gap:10px;padding:13px 18px;font-weight:600;animation:.22s ease-out toastIn;display:flex}.toast svg{color:#9fd6b5;width:20px;height:20px}.toast.bad svg{color:#ffb4a6}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}}.sheet-backdrop{z-index:60;background:#1e1a156b;justify-content:center;align-items:flex-end;animation:.18s ease-out fadeIn;display:flex;position:fixed;inset:0}.sheet{overscroll-behavior:contain;background:var(--card);width:100%;max-height:92dvh;padding:8px 18px calc(18px + var(--safe-bottom));box-shadow:var(--shadow-lift);border-radius:24px 24px 0 0;animation:.26s cubic-bezier(.2,.9,.3,1) sheetUp;overflow-y:auto}.sheet-grip{background:var(--line-strong);border-radius:999px;width:44px;height:5px;margin:4px auto 12px}.sheet-head{align-items:flex-start;gap:10px;margin-bottom:14px;display:flex}.sheet-head h2{flex:1;padding-top:6px}@media (width>=760px){.sheet-backdrop{align-items:center;padding:24px}.sheet{border-radius:24px;max-width:560px;padding:20px 24px 24px;animation:.2s ease-out popIn}.sheet-grip{display:none}}@keyframes fadeIn{0%{opacity:0}}@keyframes sheetUp{0%{opacity:.4;transform:translateY(40px)}}@keyframes popIn{0%{opacity:0;transform:scale(.97)}}.rise>*{animation:.42s cubic-bezier(.2,.8,.3,1) both rise}.rise>:nth-child(2){animation-delay:50ms}.rise>:nth-child(3){animation-delay:.1s}.rise>:nth-child(4){animation-delay:.15s}.rise>:nth-child(5){animation-delay:.2s}.rise>:nth-child(n+6){animation-delay:.24s}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-delay:0s!important}}.hello{margin:6px 0 18px}.hello .date{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:15px;font-weight:700}.hello h1{margin-top:4px}.stats{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat{color:inherit;flex-direction:column;gap:2px;min-height:98px;padding:14px 14px 12px;text-decoration:none;display:flex;position:relative}.stat .num{font-family:var(--font-display);font-size:38px;line-height:1}.stat .lbl{color:var(--ink-2);font-size:14.5px;font-weight:700;line-height:1.2}.stat.hot .num{color:var(--accent)}.stat .arrow{width:18px;height:18px;color:var(--line-strong);position:absolute;top:12px;right:12px}.next-up{overflow:hidden}.next-up .when{align-items:baseline;gap:8px;display:flex}.next-up .clock{font-family:var(--font-display);font-size:46px;line-height:1}.next-up .ampm{color:var(--muted);font-size:18px;font-weight:700}.next-up .in{margin-left:auto}.next-up .who{margin-top:12px;font-size:21px;font-weight:700}.timeline{margin:0;padding:0;list-style:none}.timeline li+li{border-top:1px dashed var(--line)}.slot{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:74px 1fr auto;align-items:center;gap:12px;width:100%;min-height:66px;padding:12px 18px;display:grid}@media (hover:hover){.slot:hover{background:color-mix(in srgb, var(--paper-2) 45%, transparent)}}.slot .t{font-family:var(--font-display);font-size:19px;line-height:1.1}.slot .t small{font-family:var(--font-body);color:var(--muted);margin-top:2px;font-size:13px;display:block}.slot.past{opacity:.55}.slot.compact{grid-template-columns:82px 1fr auto;min-height:56px;padding:8px 16px}.slot.compact .t{font-size:17px}.slot.compact .t small{margin-left:3px;display:inline}.slot.cancelled .item-title{text-decoration:line-through}.cal-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.cal-nav{flex:320px;align-items:center;gap:6px;min-width:0;display:flex}.cal-date{font-family:var(--font-display);text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:22px;overflow:hidden}@media (width>=960px){.cal-date{text-align:left;order:3;padding-left:8px}}.cal-actions{flex:auto;justify-content:space-between;align-items:center;gap:8px;display:flex}@media (width>=960px){.cal-actions{flex:none}}.daystrip{grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:14px;display:grid}.daystrip button{border:1.5px solid var(--line);background:var(--card);cursor:pointer;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-height:62px;padding:4px 0;display:flex}.daystrip .dow{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12.5px;font-weight:700}.daystrip .dnum{font-family:var(--font-display);font-size:21px;line-height:1.1}.daystrip .dots{height:6px;font-size:0}.daystrip .dot{background:var(--accent);border-radius:50%;width:5px;height:5px;margin:0 1px;display:inline-block}.daystrip button.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.daystrip button.on .dow{color:#cdbfae}.daystrip button.today:not(.on){border-color:var(--accent)}.daystrip button.closed{background:0 0;border-style:dashed}.grid-wrap{border-radius:var(--radius);border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);overflow:auto}@media (width>=960px){.grid-wrap{min-height:420px;max-height:calc(100dvh - 250px)}}.daygrid{min-width:max-content;display:grid;position:relative}.dg-head{z-index:5;background:var(--card);border-bottom:1px solid var(--line);align-items:center;gap:8px;min-height:56px;padding:10px;font-weight:700;display:flex;position:sticky;top:0}.dg-head .avatar{width:32px;height:32px;font-size:13px}.dg-corner{z-index:7;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;left:0}.dg-times{z-index:4;background:var(--card);border-right:1px solid var(--line);position:sticky;left:0}.dg-time{color:var(--muted);white-space:nowrap;font-size:12.5px;font-weight:700;position:absolute;right:8px;transform:translateY(-50%)}.dg-col{border-right:1px solid var(--line);position:relative}.dg-col:last-child{border-right:0}.dg-hour{border-top:1px solid var(--line);position:absolute;left:0;right:0}.dg-half{border-top:1px dashed color-mix(in srgb, var(--line) 70%, transparent);position:absolute;left:0;right:0}.dg-off{background:repeating-linear-gradient(-45deg, color-mix(in srgb, var(--paper-2) 80%, transparent) 0 6px, transparent 6px 12px);position:absolute;left:0;right:0}.dg-tap{cursor:pointer;background:0 0;border:0;padding:0;position:absolute;left:0;right:0}@media (hover:hover){.dg-tap:hover{background:color-mix(in srgb, var(--accent-soft) 55%, transparent)}}.appt{text-align:left;border:0;border-left:4px solid var(--navy);background:var(--navy-soft);color:var(--ink);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:flex-start;padding:5px 8px;font-size:14px;line-height:1.2;display:flex;position:absolute;left:4px;right:4px;overflow:hidden;box-shadow:0 1px #1e1a150f}.appt strong{white-space:nowrap;text-overflow:ellipsis;font-size:14.5px;display:block;overflow:hidden}.appt .meta{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.appt.CONFIRMED{background:var(--good-soft);border-left-color:var(--good)}.appt.COMPLETED{background:var(--paper-2);border-left-color:var(--line-strong);color:var(--muted)}.appt.NO_SHOW{background:var(--warn-soft);border-left-color:var(--warn)}.appt.REQUESTED{background:repeating-linear-gradient(135deg, var(--accent-soft) 0 8px, #fff6f1 8px 16px);border-left-color:var(--accent)}.appt.CANCELLED{border:1px dashed var(--line-strong);color:var(--muted);background:0 0;border-left-width:4px;text-decoration:line-through}.now-line{border-top:2px solid var(--accent);z-index:3;pointer-events:none;height:0;position:absolute;left:0;right:0}.now-line:before{content:"";background:var(--accent);border-radius:50%;width:10px;height:10px;position:absolute;top:-6px;left:-5px}.agenda-day{margin-bottom:16px}.agenda-day h3{align-items:baseline;gap:10px;margin:0 2px 8px;display:flex}.agenda-day h3 .muted{font-family:var(--font-body);font-size:14.5px}.openings{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;display:grid}.opening{border:1.5px solid var(--line-strong);background:var(--card);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;min-height:56px;padding:4px;line-height:1.15;display:flex}.opening strong{font-size:16px}.opening span{color:var(--muted);font-size:12.5px}.opening.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.opening.on span{color:#cdbfae}.fab{z-index:25;right:18px;bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 16px);min-height:58px;box-shadow:var(--shadow-lift), 0 10px 22px -12px var(--accent);padding:0 22px;position:fixed}@media (width>=960px){.fab{display:none}}.inbox-card{flex-direction:column;gap:10px;padding:16px 18px;display:flex}.inbox-card.urgent{border-left:5px solid var(--accent)}.inbox-card .text{font-size:17.5px;line-height:1.45}.inbox-card.done{opacity:.7}.call-row .summary{color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:15.5px;display:-webkit-box;overflow:hidden}.settings-layout{gap:18px;display:grid}@media (width>=960px){.settings-layout{grid-template-columns:230px 1fr;align-items:start}.settings-nav{position:sticky;top:24px}}.settings-nav a.active{background:var(--paper-2)}.hours-row{grid-template-columns:1fr;align-items:center;gap:6px;padding:8px 0;display:grid}.hours-row .toggle{justify-content:flex-start}@media (width>=560px){.hours-row{grid-template-columns:118px 1fr;gap:10px}}.hours-row+.hours-row{border-top:1px solid var(--line)}.hours-times{align-items:center;gap:8px;display:flex}.hours-times .input{flex:1;min-width:0;min-height:46px;padding:8px 10px}@media (width<=559px){.wide-only{display:none!important}}@media (width>=560px){.narrow-only{display:none!important}}.hours-closed{color:var(--muted);font-weight:600}.save-bar{bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 10px);z-index:15;background:var(--ink);color:var(--paper);box-shadow:var(--shadow-lift);border-radius:999px;align-items:center;gap:10px;margin-top:18px;padding:10px 10px 10px 18px;animation:.25s ease-out rise;display:flex;position:sticky}@media (width>=960px){.save-bar{bottom:18px}}.preview-bubble{white-space:pre-wrap;background:#e9e4da;border-radius:20px 20px 20px 6px;max-width:420px;padding:12px 15px;font-size:16px;line-height:1.4}.code-row{background:var(--paper-2);border:1px solid var(--line);border-radius:14px;align-items:center;gap:10px;padding:10px 12px 10px 16px;display:flex}.code-row code{letter-spacing:.01em;white-space:nowrap;flex:1;min-width:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:17px;font-weight:600;overflow-x:auto}.big-number{font-family:var(--font-display);white-space:nowrap;font-size:clamp(30px,8.4vw,44px);line-height:1.1}.input-prefix{position:relative}.input-prefix>span{color:var(--muted);pointer-events:none;font-weight:700;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.input-prefix .input{padding-left:30px}.list-group-label{padding:12px 18px 4px}.steps{counter-reset:step;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.steps>li{grid-template-columns:34px minmax(0,1fr);gap:12px;display:grid}.steps>li:before{counter-increment:step;content:counter(step);background:var(--ink);width:34px;height:34px;color:var(--paper);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:17px;display:grid}.solo{flex-direction:column;min-height:100dvh;display:flex}.solo-body{flex:1;width:100%;max-width:620px;margin:0 auto;padding:22px 18px 40px}.progress{grid-template-columns:repeat(5,1fr);gap:6px;margin:8px 0 22px;display:grid}.progress span{background:var(--line);border-radius:999px;height:6px}.progress span.on{background:var(--ink)}.solo-body.has-foot{padding-bottom:120px}.wizard-foot{z-index:20;max-width:620px;padding:18px 18px calc(14px + var(--safe-bottom));background:linear-gradient(transparent, var(--paper) 32%);gap:10px;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0}.wizard-foot .btn-primary{flex:1}.signin-hero{place-items:center;min-height:100dvh;padding:24px;display:grid}.signin-card{text-align:left;width:min(440px,100%);padding:28px 24px 24px;position:relative;overflow:hidden}.signin-card:before{content:"";background:var(--stripe);background-size:51px 100%;height:8px;position:absolute;inset:0 0 auto}.signin-card h1{margin:16px 0 10px;font-size:36px}.mock-pill{z-index:90;background:var(--warn-soft);color:var(--warn);letter-spacing:.04em;pointer-events:none;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;position:fixed;top:8px;right:8px}@media (width<=959px){.desktop-only{display:none!important}}@media (width>=960px){.mobile-only{display:none!important}}
