/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.z-199{z-index:199}.row-1{grid-row:1}.row-2{grid-row:2}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.\!block{display:block!important}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.flex-shrink,.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.break-all{word-break:break-all}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.ring,.shadow{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.invert{--tw-invert:invert(100%)}.filter,.invert{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--bone:#f7f4ee;--card:#fff;--sand:#d8cfc4;--sand-soft:#f0ede8;--pine:#24372d;--pine-rgb:36,55,45;--pine-2:#30493c;--pine-3:#426151;--sage:#5e7463;--sage-rgb:94,116,99;--sage-soft:#e8eeec;--charcoal:#2b2b2b;--blush:#c9978e;--blush-rgb:201,151,142;--blush-soft:#faf0f2;--gold:#c9b37a;--gold-soft:#f5eddb;--nav-bg:var(--pine);--nav-text:#fff;--nav-active-bg:var(--sand);--nav-active-text:var(--charcoal);--ink:#2b2b2b;--ink-rgb:43,43,43;--muted:#5a5650;--faint:#8a857d;--iris:#c9b37a;--iris-rgb:201,179,122;--iris-deep:#a9854e;--iris-deep-rgb:169,133,78;--iris-soft:#f5eddb;--iris-soft-rgb:245,237,219;--iris-line:#e3dccf;--green:#2e7d5b;--green-soft:#e4f1ea;--amber:#b97f22;--amber-soft:#f8eedc;--red:#b5483c;--red-soft:#f8e7e4;--line:#e3dccf;--line-soft:#efe7d8;--border:var(--line);--surface:var(--card);--surface-2:var(--sand-soft);--accent:var(--iris);--bg:var(--bone);--bg-card:var(--card);--bg-subtle:var(--sand-soft);--card-soft:var(--sand-soft);--fg:var(--ink);--ink-soft:var(--muted);--border-soft:var(--line-soft);--danger:var(--red);--emerald:var(--green);--sky:var(--pine);--r:14px;--r-sm:10px;--sh:0 1px 2px #2f3d340d,0 8px 28px -12px #2f3d3424;--sh-lift:0 2px 4px #2f3d340f,0 18px 44px -14px #2f3d3438;--disp:var(--font-playfair),Georgia,serif;--ui:var(--font-inter),-apple-system,sans-serif;--mono:var(--font-mono),"SF Mono",Menlo,monospace}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{font-family:var(--ui);background:var(--bone);color:var(--ink);-webkit-font-smoothing:antialiased;overflow:hidden}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh)}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.btn-pri{background:var(--blush);color:#fff;box-shadow:0 6px 16px -6px #c9978e8c}.btn-pri:hover{background:#b8837a}.btn-ghost{background:var(--card)}.btn-ghost,.btn-sec{border:1px solid var(--line);color:var(--ink)}.btn-sec{background:var(--sand-soft);border-radius:9px}.btn-sec:hover{background:var(--line-soft)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--blush);color:#fff}.btn-primary:hover{background:#b8837a}.btn-gold{background:var(--iris);color:var(--pine)}.btn-gold:hover{background:var(--iris-deep);color:#fff}.chip{border-radius:99px;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.chip-green{background:var(--green-soft);color:var(--green)}.chip-amber{background:var(--amber-soft);color:var(--amber)}.chip-red{background:var(--red-soft);color:var(--red)}.chip-iris{background:var(--iris-soft);color:var(--iris-deep)}.chip-mute{color:var(--muted);background:#efeee8}.chip-sage{background:var(--sage-soft);color:var(--sage)}.chip-charcoal{background:var(--sand-soft);color:var(--charcoal)}.chip-purple{background:var(--blush-soft);color:var(--iris-deep)}.toggle-label:focus-within{outline:2px solid var(--iris);outline-offset:3px}.icon-badge{border-radius:11px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.icon-badge-sage{background:var(--sage-soft);color:var(--sage)}.icon-badge-gold{background:var(--gold-soft);color:var(--gold)}.icon-badge-blush{background:var(--blush-soft);color:var(--blush)}.icon-badge-green{background:var(--green-soft);color:var(--green)}.icon-badge-amber{background:var(--amber-soft);color:var(--amber)}.rail{color:#fff;will-change:max-width;background:linear-gradient(#273a30,#1f2f27);border-right:1px solid #ffffff14;flex-direction:column;flex-shrink:0;width:248px;max-width:248px;padding:18px 12px;transition:max-width .22s;display:flex;position:relative;overflow:hidden}.rail-collapse-toggle{z-index:20;background:var(--pine-2);color:#ffffffd9;border:1px solid #ffffff24;border-radius:99px;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:26px;right:-17px;box-shadow:0 10px 28px -14px #000000a6}.rail-collapse-toggle:hover{background:var(--pine-3);color:#fff}.rail-brand{align-items:center;gap:11px;padding:0 4px 16px;display:flex}.rail-logo{place-items:center;width:56px;height:42px;padding:7px;display:grid;overflow:hidden}.rail-brand-name,.rail-clinic-name,.rail-user{font-size:13.5px;font-weight:700;line-height:1.2}.rail-brand-sub,.rail-clinic-sub,.rail-user-sub{color:#ffffff8c;margin-top:2px;font-size:11px}.rail-clinic{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:13px;align-items:center;gap:9px;margin-bottom:10px;padding:10px;display:flex}.rail-clinic-dot{background:var(--green);border-radius:99px;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 4px #7fd8ac29}.rail-search{color:#fff9;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:8px;margin-bottom:8px;padding:10px 11px;font-size:12px;transition:all .15s;display:flex}.rail-search:hover{color:#ffffffe6;background:#ffffff14;border-color:#ffffff2e}.rail-nav{scrollbar-width:none;flex:1;overflow-y:auto}.rail-nav::-webkit-scrollbar{display:none}.nav-section{margin-top:10px}.navgroup{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#ebf5f0b8;padding:12px 10px 6px;font-size:10px;font-weight:700}.navitem{color:#ffffffd1;border-radius:11px;align-items:center;gap:11px;width:100%;margin-bottom:2px;padding:9.5px 12px;font-size:13px;font-weight:600;text-decoration:none;transition:all .18s;display:flex;position:relative}.navitem:hover{color:#fff;background:#ffffff16}.rail-logout-form{margin-top:8px}.rail-logout{cursor:pointer;text-align:left;background:0 0;border:0;font-family:inherit}.navitem.on{color:#fff;background:#c9978e3d;border:1px solid #c9978e73;font-weight:700;box-shadow:0 4px 14px #0003}.nav-badge{background:var(--gold);min-width:18px;height:18px;color:var(--charcoal);font-family:var(--mono);border-radius:99px;place-items:center;margin-left:auto;padding:0 5px;font-size:10px;font-weight:700;display:grid}.rail-foot{border-top:1px solid #ffffff14;align-items:center;gap:9px;margin-top:10px;padding:13px 4px 0;display:flex}.rail-avatar{color:#ffffffdb;background:#ffffff1a;border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.rail-collapsed{max-width:76px;padding-left:10px;padding-right:10px}.rail-collapsed .rail-brand{justify-content:center;padding-left:0;padding-right:0}.rail-collapsed .rail-logo{width:44px;height:44px}.rail-collapsed .navgroup,.rail-collapsed .navitem span:not(.nav-badge),.rail-collapsed .rail-search span,.rail-collapsed .rail-text{display:none}.rail-collapsed .rail-clinic{justify-content:center;margin-left:2px;margin-right:2px;padding:12px 0}.rail-collapsed .rail-clinic-dot{width:10px;height:10px}.rail-collapsed .rail-search{justify-content:center;margin-left:2px;margin-right:2px;padding:11px 0}.rail-collapsed .nav-section{margin-top:5px}.rail-collapsed .navitem{border-radius:12px;justify-content:center;gap:0;width:44px;height:44px;margin:2px auto;padding:0}.rail-collapsed .nav-badge{color:#0000;width:8px;min-width:8px;height:8px;padding:0;position:absolute;top:6px;right:5px;overflow:hidden}.rail-collapsed .rail-foot{justify-content:center;padding-left:0;padding-right:0}.rail-collapsed .rail-avatar{width:36px;height:36px}.rail-collapsed .rail-logout{margin-left:auto;margin-right:auto}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px;display:flex}.page-eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);align-items:center;gap:10px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.page-eyebrow-dot{background:var(--iris);border-radius:999px;flex:none;width:5px;height:5px}.page-title{font-family:var(--disp);letter-spacing:0;font-size:34px;font-weight:500;line-height:1.1}.page-description{color:var(--muted);max-width:680px;margin-top:8px;font-size:13.5px}.page-meta{margin-top:10px}.page-actions,.page-meta{flex-wrap:wrap;gap:8px;display:flex}.page-actions{justify-content:flex-end}.section-tabs{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.board-bar{align-items:center;gap:12px;margin-bottom:14px;display:flex}.board-bar .section-tabs{margin-bottom:0}.section-tab{color:var(--muted);border:1px solid var(--line);background:var(--card);border-radius:99px;align-items:center;gap:6px;padding:8px 13px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.section-tab.on{background:var(--pine);border-color:var(--pine);color:#fff}.section-tab-badge{background:var(--iris);min-width:18px;height:18px;color:var(--iris-deep);font-variant-numeric:tabular-nums;border-radius:99px;place-items:center;padding:0 5px;font-size:10px;font-weight:800;display:grid}.section-tab.on .section-tab-badge{color:#fff;background:#ffffff38}.data-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);overflow:hidden}.data-card+.data-card{margin-top:16px}.followup-grid>.data-card,.followup-queue-grid>.data-card,.followup-side>.data-card,.grid-3>.data-card,.intake-consent-grid>.data-card,.intake-grid>.data-card,.intake-side>.data-card,.msg-grid>.data-card,.msg-wide-grid>.data-card,.settings-grid>.data-card,.today-appts,.today-right>.data-card{margin-top:0}.data-card-dark{background:var(--pine);color:#fff;border-color:#ffffff14}.data-card-header{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:12px;padding:15px 18px;display:flex}.data-card-dark .data-card-header{border-color:#ffffff14}.data-card-title{letter-spacing:.01em;font-size:13.5px;font-weight:800}.data-card-subtitle{color:var(--muted);margin-top:3px;font-size:12.5px}.data-card-dark .data-card-subtitle{color:#ffffff85}.data-card-stat{flex-direction:column;padding:20px 18px 18px;display:flex}.data-card-stat-eyebrow{color:var(--muted);letter-spacing:.01em;margin-bottom:10px;font-size:12.5px;font-weight:700}.data-card-stat .metric-value{line-height:1}.data-card-stat .data-card-subtitle{margin-top:8px}.data-card form .btn-pri,.data-card form .btn-primary,.data-card form button[type=submit]{white-space:nowrap;justify-self:start;width:auto;height:38px;padding:0 20px}.table-wrap{overflow-x:auto}.ops-table{border-collapse:collapse;width:100%;font-size:13px}.ops-table th{color:var(--muted);text-align:left;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line-soft);padding:10px 14px;font-size:11px;font-weight:800}.ops-table td{border-top:1px solid var(--line-soft);vertical-align:top;padding:12px 14px}.ops-table tbody tr:first-child td{border-top:none}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.metric-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:16px 18px}.metric-label,.section-title{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.metric-value{color:var(--ink);font-family:var(--disp);margin-top:6px;font-size:30px;font-weight:550}.metric-sub{color:var(--muted);margin-top:4px;font-size:12.5px}.skeleton-card{pointer-events:none}.skeleton-line{background:linear-gradient(90deg,var(--line-soft) 25%,#e3dccf40 50%,var(--line-soft) 75%);background-size:200% 100%;border-radius:6px;animation:shimmer 1.4s ease-in-out infinite}.skeleton-label{width:60%;height:12px;margin-bottom:12px}.skeleton-value{width:45%;height:36px;margin-bottom:8px}.skeleton-sub{width:75%;height:11px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.section-title{margin-bottom:10px}.segmented{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.segmented button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;padding:7px 11px;font-size:13px;font-weight:700}.segmented button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #0f172a14}.form-row{gap:5px;display:grid}.form-row label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.settings-row{color:inherit;border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:14px;padding:15px 18px;text-decoration:none;display:flex}.settings-row:first-child{border-top:none}.settings-name{font-size:14px;font-weight:750}.settings-desc{color:var(--muted);margin-top:3px;font-size:12.5px}.catalog-form{border-bottom:1px solid var(--line-soft);grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px 18px;display:grid}.catalog-form-wide{grid-column:span 2}.svc-tabs{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;gap:8px;padding:14px 18px;display:flex}button.section-tab{cursor:pointer;font-family:inherit}.svc-row{border-bottom:1px solid var(--line-soft);background:var(--card);grid-template-columns:28px minmax(0,1fr) 84px 96px 96px 150px;align-items:center;gap:10px;padding:10px 18px;display:grid}.svc-row-head{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding-block:8px;font-size:11px;font-weight:700}.svc-num{font-variant-numeric:tabular-nums}.svc-field{min-width:0;display:block}.svc-field-label{display:none}.svc-row-actions{justify-content:flex-end;gap:8px;display:flex}.sortable-handle{width:28px;height:28px;color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.sortable-handle:hover{background:var(--line-soft);color:var(--ink)}.sortable-handle:focus-visible{outline:2px solid var(--iris-deep);outline-offset:1px}.cat-manager{border-bottom:1px solid var(--line-soft);padding:8px 0}.cat-manager,.cat-row{background:var(--bone,#faf9f6)}.cat-row{grid-template-columns:28px minmax(0,260px) auto 1fr;align-items:center;gap:10px;padding:6px 18px;display:grid}.cat-row>:last-child{justify-self:start}.stars{color:var(--gold,#c9a24b);letter-spacing:1px;white-space:nowrap}.stars-off{color:var(--line)}.review-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.review-list li{border:1px solid var(--line-soft);border-radius:10px;padding:10px 12px;font-size:13.5px}.review-list a{color:var(--ink);font-weight:650;text-decoration:none}.review-page{width:100%;max-width:440px}.review-card{border:1px solid var(--line-soft);background:var(--card);text-align:center;border-radius:16px;gap:14px;padding:22px;display:grid}.review-card h2{margin:0;font-size:20px}.review-card p{color:var(--muted);margin:0}.review-stars{border:0;justify-content:center;gap:6px;margin:0;padding:0;display:flex}.review-stars label{cursor:pointer;color:var(--line);border-radius:10px;padding:4px}.review-stars label.on{color:var(--gold,#c9a24b)}.review-stars label.on svg{fill:currentColor}.review-stars label:focus-within{outline:2px solid var(--iris-deep)}.review-comment{text-align:left;color:var(--muted);gap:6px;font-size:13px;display:grid}.review-comment textarea{font:inherit;border:1px solid var(--line-soft);background:var(--bg);color:var(--ink);resize:vertical;border-radius:10px;padding:10px}.my-day{max-width:760px}.my-day-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.my-day-nav{gap:6px;display:flex}.my-day-rating{color:var(--ink);border:1px solid var(--line-soft);background:var(--card);border-radius:99px;padding:6px 10px;font-size:13px;font-weight:650;text-decoration:none}.my-day-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.my-day-visit{border:1px solid var(--line-soft);background:var(--card);border-radius:14px;grid-template-columns:64px minmax(0,1fr);gap:12px;padding:14px;display:grid}.my-day-time{font-variant-numeric:tabular-nums;flex-direction:column;gap:2px;font-size:13px;display:flex}.my-day-time span,.my-day-time strong{white-space:nowrap}.my-day-time span{color:var(--muted);font-size:12px}.my-day-body{gap:6px;min-width:0;display:grid}.my-day-title{flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.my-day-title a{color:var(--ink);text-decoration:none}.my-day-tags{flex-wrap:wrap;gap:6px;display:flex}.my-day-notes{background:var(--bone,#faf9f6);border-radius:10px;gap:4px;margin:0;padding:8px 10px;font-size:13px;list-style:none;display:grid}.my-day-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.my-day-actions .btn{align-items:center;gap:6px;display:inline-flex}@media (max-width:720px){.my-day-visit{grid-template-columns:62px minmax(0,1fr);gap:10px;padding:12px}.my-day-time{font-size:12.5px}.my-day-actions .btn,.my-day-nav .btn{min-height:40px}}.install-card{border:1px solid var(--line-soft);background:var(--card);border-radius:14px;align-items:center;gap:12px;margin:12px 16px 0;padding:12px 14px;font-size:13.5px;display:flex}.cal-online-window{background:var(--iris-deep);opacity:.55;pointer-events:none;border-radius:0 3px 3px 0;width:4px;position:absolute;left:0}.svc-group-row th{text-align:left;color:var(--ink);letter-spacing:.02em;text-transform:none;border-bottom:1px solid var(--line-soft);background:0 0;padding:12px 12px 6px;font-size:12px;font-weight:800}.svc-pick{gap:8px;display:grid}.svc-pick-tabs{flex-wrap:wrap;gap:6px;display:flex}.svc-pick-tab{border:1px solid var(--line);background:var(--card);color:var(--muted);font:inherit;cursor:pointer;border-radius:99px;align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:700;display:inline-flex}.svc-pick-tab.on{background:var(--pine);border-color:var(--pine);color:#fff}.svc-pick-tab:focus-visible{outline:2px solid var(--iris-deep);outline-offset:1px}.svc-pick-count{color:var(--iris-deep);background:var(--iris);border-radius:99px;padding:1px 6px;font-size:10.5px;font-weight:800}.svc-pick-tab.on .svc-pick-count{color:#fff;background:#ffffff38}.svc-pick-list{border:1px solid var(--line-soft);border-radius:8px;padding:6px 8px;overflow-y:auto}.svc-pick-row{cursor:pointer;align-items:center;gap:8px;padding:5px 0;font-size:13px;display:flex}.svc-pick-detail,.svc-pick-empty{color:var(--muted);font-size:12px}.svc-pick-empty{margin:4px 0}.provider-checklist{border:1px solid var(--line-soft);border-radius:10px;grid-column:1/-1;min-width:0;margin:0;padding:10px 12px}.provider-checklist-head{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:8px;display:flex}.provider-checklist-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px 14px;display:grid}.cat-delete{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (max-width:720px){.svc-row{grid-template-columns:28px repeat(3,minmax(0,1fr))}.svc-row>.sortable-handle,.svc-row>span:first-child{grid-row:span 3;align-self:start}.svc-row-actions,.svc-row-name{grid-column:2/-1}.svc-row-actions{justify-content:flex-start}.svc-row-head{display:none}.svc-field-label{color:var(--muted);margin-bottom:3px;font-size:11px;font-weight:700;display:block}.cat-row{grid-template-columns:28px minmax(0,1fr) auto}.cat-row>:last-child{grid-column:2/-1}}.field-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px;font-size:10.5px;font-weight:800;display:block}.switch-row{color:var(--muted);align-items:center;gap:8px;font-size:12.5px;display:flex}.modal-backdrop{z-index:300;background:#1016137a;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-card{background:var(--card);border:1px solid var(--line);width:min(560px,100%);box-shadow:var(--sh-lift);border-radius:16px;margin:auto}.appt-modal-card{width:min(640px,100%);max-height:85vh}.appt-form-dialog,.appt-modal-card{flex-direction:column;display:flex;overflow:hidden}.appt-form-dialog{min-height:0;padding:20px}.appt-form-dialog>form{flex:1;min-height:0;padding-right:2px;overflow-y:auto}@media (max-width:640px){.modal-backdrop{padding:0}.appt-modal-card{border:0;border-radius:0;width:100%;height:100%;max-height:100%}}.modal-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.icon-button{border:1px solid var(--line);background:var(--card);border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.app-shell{height:100dvh;display:flex;overflow:hidden}.main-area{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden auto}.screen{flex:1;padding:28px 32px;overflow-y:auto}body>.screen{height:100dvh}.today-page{padding:32px 32px 48px}.today-greeting{justify-content:space-between;align-items:flex-start;margin-bottom:28px;display:flex}.today-greeting-sub{color:var(--muted);margin-bottom:2px;font-size:13px}.today-greeting-name{font-family:var(--disp);color:var(--ink);margin:0 0 4px;font-size:30px;font-weight:500}.today-greeting-desc{color:var(--muted);font-size:13px}.today-metrics{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}.today-main>div:first-child>.data-card:first-child{border-top:3px solid var(--iris);box-shadow:var(--sh-lift)}.today-metric-card{background:var(--card);border:1px solid var(--line-soft);border-radius:14px;flex-direction:column;gap:8px;padding:20px;display:flex}.today-metric-value{color:var(--ink);font-size:26px;font-weight:600;font-family:var(--disp);line-height:1.1}.today-metric-label{color:var(--muted);font-size:12px;font-weight:500}.today-metric-link{color:var(--sage);margin-top:2px;font-size:12px;font-weight:500;text-decoration:none}.today-metric-link:hover{text-decoration:underline}.today-main{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}.today-appts{background:var(--card);border:1px solid var(--line-soft);border-radius:14px;overflow:hidden}.today-section-header{justify-content:space-between;align-items:center;margin-bottom:8px;padding:20px 20px 0;display:flex}.today-section-header h2{color:var(--ink);margin:0;font-size:15px;font-weight:600}.today-right{flex-direction:column;gap:16px;display:flex}.today-appts .schedule-list{padding:0 20px 16px}.today-appts .sched-row{border-bottom:1px solid var(--line-soft);padding:14px 0}.today-appts .sched-row:last-child{border-bottom:none}.today-mini-cal.data-card{padding:0}.mini-cal-header{align-items:center;padding:16px 16px 10px;display:flex}.mini-cal-month{color:var(--ink);font-size:14px;font-weight:600}.mini-cal-grid{gap:1px;padding:0 12px 14px}.mini-cal-day-name{color:var(--muted);text-align:center;letter-spacing:.04em;padding:4px 0;font-size:10px;font-weight:600}.mini-cal-day{text-align:center;border-radius:6px;padding:5px 2px;font-size:12px;line-height:1.2;position:relative}.mini-cal-day.today{background:var(--pine);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;margin:0 auto;font-weight:700;display:grid}.mini-cal-day.has-appt:after{content:"";background:var(--sage);border-radius:50%;width:4px;height:4px;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.mini-cal-day.empty{color:#0000;pointer-events:none}.schedule-list{background:var(--card)}.readiness-card{grid-template-columns:96px 1fr;align-items:center;gap:20px;padding:24px;display:grid}.readiness-card p{color:var(--muted);margin-top:6px;font-size:13px;line-height:1.45}.readiness-ring{background:conic-gradient(var(--iris) var(--ready),var(--line-soft) 0);border-radius:50%;place-items:center;width:86px;height:86px;display:grid;position:relative}.readiness-ring:after{content:"";background:var(--card);border-radius:50%;position:absolute;inset:11px}.readiness-ring div{z-index:1;font-family:var(--disp);font-size:24px;font-weight:700;position:relative}.attention-list{gap:0;display:grid}.attention-item{border-top:1px solid var(--line-soft);grid-template-columns:36px 1fr;gap:12px;padding:16px 18px;display:grid}.attention-item:first-child{border-top:none}.attention-icon{border-radius:9px;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.attention-icon.red{background:var(--red-soft);color:var(--red)}.attention-icon.amber{background:var(--amber-soft);color:var(--amber)}.attention-item strong{font-size:13.5px}.attention-empty,.attention-item p{color:var(--muted);margin-top:3px;font-size:12.5px;line-height:1.45}.attention-empty{padding:20px 18px}.vial-card{background:var(--pine);border-radius:var(--r);color:#fff;box-shadow:var(--sh-lift);border:1px solid #ffffff14;padding:24px}.vial-card p{color:#ffffff94;margin-top:8px;font-size:13px}.vial-bar{background:#ffffff1f;border-radius:99px;height:10px;margin:22px 0 12px;overflow:hidden}.vial-bar span{background:var(--iris);width:74%;height:100%;display:block}.vial-meta{color:#ffffff94;font-family:var(--mono);justify-content:space-between;gap:12px;font-size:12px;display:flex}.followup-screen{padding-top:32px}.followup-workspace{gap:22px;display:grid}.followup-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.followup-dot{background:var(--iris);width:6px;height:6px;box-shadow:0 0 14px rgba(var(--pine-rgb),.4);vertical-align:1px;border-radius:99px;margin-right:8px;display:inline-block}.followup-seq-card{padding:30px 26px 26px;position:relative;overflow-x:auto}.followup-seq{z-index:1;grid-template-columns:repeat(5,minmax(150px,1fr));min-width:820px;display:grid;position:relative}.followup-seq-line{background:var(--line);height:2px;position:absolute;top:56px;left:88px;right:88px}.followup-seq-line span{background:var(--iris);transform-origin:0;width:100%;height:100%;animation:followupLineDraw .9s ease-out both;display:block}.followup-node{color:var(--ink);text-align:center;justify-items:center;gap:4px;padding:0 10px;display:grid}.followup-orb{border:2px solid var(--iris);background:var(--card);width:54px;height:54px;color:var(--iris-deep);box-shadow:0 4px 14px -4px rgba(var(--pine-rgb),.2);border-radius:99px;place-items:center;transition:transform .2s,background .2s,color .2s;display:grid}.followup-node.selected .followup-orb,.followup-node:hover .followup-orb{background:var(--iris);color:#fff;transform:translateY(-2px)scale(1.05)}.followup-orb.muted{opacity:.42;filter:grayscale(.35)}.followup-node-day{color:var(--iris-deep);font-family:var(--mono);letter-spacing:.1em;margin-top:12px;font-size:10.5px;font-weight:700}.followup-node strong{font-size:13px;font-weight:800}.followup-node small{max-width:150px;color:var(--muted);font-size:11.5px;line-height:1.45}.followup-grid{grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);align-items:start}.followup-grid,.followup-side{gap:22px;display:grid}.followup-editor-body{gap:16px;padding:18px;display:grid}.followup-editor .form-row,.followup-editor label.form-row{gap:7px;display:grid}.followup-editor .form-row>label,.followup-editor label.form-row>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.followup-channel-row{flex-wrap:wrap;gap:8px;display:flex}.followup-channel-row button{cursor:pointer}.followup-message-preview{border:1px solid var(--iris-line);background:var(--iris-soft);color:var(--muted);border-radius:14px 14px 14px 4px;padding:13px 15px}.followup-message-preview b{color:var(--iris-deep);letter-spacing:.06em;font-size:11px}.followup-message-preview p{margin-top:5px;font-size:13px;line-height:1.55}.followup-toggle{text-align:left;grid-template-columns:42px 1fr;align-items:center;gap:12px;display:grid}.followup-toggle>span{background:#d8d5cb;border-radius:99px;width:40px;height:23px;transition:background .2s;position:relative}.followup-toggle>span:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:left .2s;position:absolute;top:2.5px;left:2.5px;box-shadow:0 1px 3px #00000040}.followup-toggle.on>span{background:var(--green)}.followup-toggle.on>span:after{left:19.5px}.followup-toggle b{font-size:13px}.followup-toggle small{color:var(--muted);margin-top:3px;font-size:12px;display:block}.followup-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:18px;display:grid}.followup-stat div{font-family:var(--disp);font-size:31px;font-weight:540;line-height:1}.followup-stat span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-top:6px;font-size:11.5px;font-weight:800;display:block}.followup-impact-card{border-radius:var(--r);background:var(--green-soft);color:var(--green);box-shadow:var(--sh);border:1px solid #cbe4d6;padding:18px}.followup-impact-card p{color:#2e6b51;margin-top:6px;font-size:13px;line-height:1.5}.followup-queue-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.followup-list{display:grid}.followup-list-row{border-top:1px solid var(--line-soft);justify-content:space-between;gap:12px;padding:13px 18px;display:flex}.followup-list-row-actions{align-items:flex-start}.followup-list-row:first-child{border-top:0}.followup-list-row strong{font-size:13px;display:block}.followup-list-row span{color:var(--muted);margin-top:3px;font-size:12px;display:block}.followup-list-row small{color:var(--muted);font-family:var(--mono);white-space:nowrap;font-size:11px}.followup-mini-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.followup-mini-actions button{cursor:pointer}.followup-empty{color:var(--muted);padding:18px;font-size:13px}.intake-screen{background:var(--bone)}.intake-workspace{gap:28px;display:grid}.intake-head{justify-content:space-between;align-items:flex-start;gap:22px;display:flex}.intake-head .page-title{font-size:34px}.intake-grid{grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr);align-items:start;gap:22px;display:grid}.intake-card-pad{padding:20px}.intake-packets-card{overflow:hidden}.intake-packet-heading,.intake-packet-row{grid-template-columns:1.25fr 1fr .85fr auto;align-items:center;gap:18px;display:grid}.intake-packet-heading{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:0 20px 8px;font-size:10.5px;font-weight:850}.intake-packet-list{display:grid}.intake-packet-row{border-top:1px solid var(--line-soft);width:100%;color:var(--ink);text-align:left;padding:16px 20px;transition:background .18s,transform .18s}.intake-packet-row.selected,.intake-packet-row:hover{background:var(--sand-soft)}.intake-packet-row b{font-size:13.5px;display:block}.intake-packet-row em,.intake-packet-row small{color:var(--muted);margin-top:3px;font-size:12px;font-style:normal;display:block}.intake-packet-row small.green{color:var(--green);font-weight:800}.intake-progress{background:#e5e1d8;border-radius:99px;width:150px;height:9px;display:block;overflow:hidden}.intake-progress span{border-radius:inherit;background:var(--iris);transform-origin:0;width:100%;height:100%;transition:transform .5s;display:block}.intake-progress.done span{background:var(--green)}.intake-packet-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.intake-packet-actions .btn{padding:7px 11px;font-size:12px}.intake-side{gap:22px;display:grid}.intake-version-list{margin-top:10px;display:grid}.intake-version-row{border-top:1px solid var(--line-soft);color:var(--ink);justify-content:space-between;align-items:center;gap:14px;padding:14px 0;display:flex}.intake-version-row:first-child{border-top:0}.intake-version-row b{font-size:13px;display:block}.intake-note,.intake-version-row small{color:var(--muted);font-size:12px;line-height:1.5}.intake-note{margin-top:12px}.intake-phone{place-items:center;padding:16px 8px 4px;display:grid}.intake-phone-screen{background:#fbfaf6;border:10px solid #201f1d;border-radius:34px;width:min(100%,300px);padding:20px 18px;box-shadow:0 24px 50px #201f1d2e}.intake-phone-screen h2{font-family:var(--disp);margin:10px 0 8px;font-size:24px;line-height:1.08}.intake-phone-screen h2 span{color:var(--muted);font-family:var(--mono);font-size:11px}.intake-phone-screen p,.intake-phone-screen small{color:var(--muted);font-size:11.5px;line-height:1.45}.intake-mobile-choice{border:1px solid var(--line-soft);background:var(--card);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px;font-size:12px;display:flex}.intake-mobile-choice.on{background:var(--green-soft);border-color:#cbe4d6}.intake-mobile-choice b{background:var(--green-soft);color:var(--green);border-radius:99px;padding:4px 8px;font-size:10px}.intake-phone-screen label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-top:16px;font-size:10px;font-weight:850;display:block}.intake-signature-box{border:1px dashed var(--iris);background:var(--iris-soft);min-height:46px;color:var(--ink);font-family:var(--disp);border-radius:14px;place-items:center;margin-top:7px;font-size:21px;font-style:italic;display:grid}.intake-phone-screen .btn{justify-content:center;width:100%;margin-top:16px}.intake-empty{color:var(--muted);padding:22px;font-size:13px}.intake-consent-grid{grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:22px;display:grid}.intake-consent-doc{border:1px solid var(--line-soft);background:#fbfaf6;border-radius:16px;gap:12px;margin-top:16px;padding:18px;display:grid}.intake-consent-doc p{color:var(--ink);font-size:14px;line-height:1.65}.intake-report-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.patient-intake-page{width:100%;max-width:560px}.patient-intake-brand{text-align:center;margin-bottom:24px}.patient-intake-brand h1{font-family:var(--disp);margin-top:8px;font-size:clamp(34px,10vw,52px);line-height:1}.patient-intake-brand p{color:var(--muted);margin-top:9px;font-size:14px;line-height:1.5}.patient-packet-card{border:1px solid var(--line-soft);background:var(--card);box-shadow:var(--sh);text-align:center;border-radius:24px;padding:34px}.patient-checkmark{color:var(--green);margin-bottom:12px;font-size:42px}.patient-packet-title{font-family:var(--disp);font-size:28px}.patient-packet-copy{color:var(--muted);margin-top:9px;font-size:14px;line-height:1.55}.patient-progress-steps{gap:10px;margin-bottom:18px;display:grid}.patient-progress-step{border:1px solid var(--line-soft);background:#ffffffa6;border-radius:14px;grid-template-columns:30px 1fr;align-items:center;gap:10px;padding:10px 12px;display:grid}.patient-progress-step span{width:30px;height:30px;color:var(--muted);font-family:var(--mono);background:#e5e1d8;border-radius:50%;place-items:center;font-weight:850;display:grid}.patient-progress-step.done span{background:var(--green);color:#fff}.patient-progress-step.current{border-color:var(--iris-line);background:var(--iris-soft)}.patient-progress-step.current span{background:var(--iris);color:#fff}.patient-progress-step b{font-size:13px;display:block}.patient-progress-step small{color:var(--muted);font-size:12px}.patient-progress-bar{gap:5px;margin-bottom:20px;display:flex}.patient-progress-bar div{background:var(--line-soft);border-radius:99px;flex:1;height:5px}.patient-progress-bar div.done{background:var(--green)}.patient-progress-bar div.current{background:var(--iris)}.patient-form-card{border:1px solid var(--line-soft);box-shadow:var(--sh);background:#ffffffeb;border-radius:24px;padding:24px}@keyframes followupLineDraw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.followup-seq-line span{animation:none}.followup-orb{transition:none}.animate-spin,.skeleton-block,.skeleton-line,.toast{animation:none}.toast{opacity:1}.landing-marquee div,.landing-orbit-chip{animation:none}[data-reveal]{transition:none}[data-reveal],[data-reveal].is-visible{opacity:1;transform:none}}.hstat-row{border:1px solid var(--line);border-radius:var(--r);background:var(--card);box-shadow:var(--sh);grid-template-columns:repeat(4,1fr);margin-bottom:24px;display:grid;overflow:hidden}.hstat{border-right:1px solid var(--line-soft);padding:16px 20px}.hstat:last-child{border-right:none}.hstat .n{color:var(--ink);font-size:26px;font-weight:500;line-height:1}.hstat .l{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:4px;font-size:11.5px;font-weight:600}.attn-banner{background:var(--amber-soft);border:1px solid var(--amber);border-radius:var(--r-sm);flex-direction:column;gap:8px;margin-bottom:20px;padding:12px 16px;display:flex}.sched-row{border-top:1px solid var(--line-soft);cursor:pointer;grid-template-columns:84px 1fr auto;align-items:center;gap:16px;padding:15px 20px;transition:background .2s;display:grid}.sched-row:hover{background:var(--bone)}.sched-time{color:var(--muted);font-size:12.5px;font-weight:500}.sched-name{color:var(--ink);font-size:14px;font-weight:600}.sched-sub{color:var(--muted);margin-top:2px;font-size:12.5px}.messages-workspace{gap:0;display:grid}.message-tabs{border:1px solid var(--line);background:#eae8df;border-radius:13px;align-items:center;gap:3px;padding:4px;display:inline-flex}.message-tabs a,.message-tabs button{color:var(--muted);background:0 0;border:0;border-radius:9px;padding:8px 16px;font-size:12.5px;font-weight:650;text-decoration:none;transition:background .18s,color .18s,box-shadow .18s}.message-tabs a.on,.message-tabs button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 3px #16241f1f}.msg-grid{grid-template-columns:320px 1fr;gap:22px}.msg-grid,.msg-wide-grid{align-items:start;display:grid}.msg-wide-grid{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:18px}.msg-thread-card{overflow:hidden}.msg-thread-head{justify-content:space-between;align-items:center;gap:12px;padding:20px 22px 12px;display:flex}.chip-dot{opacity:.8;background:currentColor;border-radius:99px;width:6px;height:6px;margin-right:7px;display:inline-block}.msg-thread-list{display:grid}.msg-thread{border:0;border-top:1px solid var(--line-soft);color:inherit;text-align:left;cursor:pointer;background:0 0;gap:12px;padding:13px 16px;transition:background .15s;display:flex}.msg-thread:hover{background:#fbfaf6}.msg-thread.on{background:var(--iris-soft)}.msg-avatar{color:#fff;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:12px;font-weight:700;display:grid}.msg-thread-copy{flex:1;min-width:0}.msg-thread-name{justify-content:space-between;gap:8px;font-size:13px;font-weight:650;display:flex}.msg-thread-name small{font-family:var(--mono);color:var(--muted);font-size:10px;font-weight:500}.msg-thread-preview{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;display:block;overflow:hidden}.msg-conversation-card{flex-direction:column;min-height:480px;padding:22px;display:flex}.msg-conversation-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:16px;padding-bottom:14px;display:flex}.msg-bubble-stack{flex-direction:column;flex:1;gap:12px;padding:18px 0;display:flex;overflow-y:auto}.msg-bubble{border-radius:16px;max-width:78%;padding:12px 15px;font-size:13px;line-height:1.5}.msg-bubble.them{background:#f0efe9;border-bottom-left-radius:5px;align-self:flex-start}.msg-bubble.us{background:var(--iris);color:#fff;border-bottom-right-radius:5px;align-self:flex-end}.msg-bubble-meta{font-family:var(--mono);opacity:.72;margin-top:5px;font-size:10px}.msg-reply-bar{border-top:1px solid var(--line-soft);align-items:center;gap:10px;padding-top:14px;display:flex}.msg-reply-bar .input{flex:1}.msg-list,.msg-segment-grid{gap:10px;padding:16px 18px 18px;display:grid}.msg-call-row,.msg-list-row,.msg-segment{border:1px solid var(--line-soft);background:#fcfbf8;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;display:flex}.msg-segment{justify-content:flex-start}.msg-segment-count{background:var(--iris-soft);width:38px;height:38px;color:var(--iris-deep);font-family:var(--mono);border-radius:12px;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.msg-call-row strong,.msg-list-row strong,.msg-segment strong{font-size:13px;font-weight:750;display:block}.msg-call-row span,.msg-list-row span,.msg-segment span{color:var(--muted);margin-top:3px;font-size:12px;display:block}.msg-trigger-strip{color:var(--muted);justify-content:space-between;gap:10px;padding:0 18px 18px;font-size:12px;font-weight:700;display:flex}.msg-empty{color:var(--muted);padding:16px;font-size:13px}.msg-call-row{justify-content:flex-start;align-items:flex-start}.msg-call-icon{background:var(--iris-soft);width:42px;height:42px;color:var(--iris-deep);font-size:10px;font-family:var(--mono);border-radius:13px;flex:none;place-items:center;font-weight:800;display:grid}.msg-call-row p{color:var(--muted);margin-top:6px;font-size:12.5px}.message-form{border-bottom:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 18px;display:grid}.message-form.compact{border-bottom:none;grid-template-columns:1fr}.message-form-wide{grid-column:1/-1}.message-form button[type=submit]{border-radius:8px;grid-column:1/-1;justify-content:center;justify-self:start;align-items:center;width:auto;min-width:130px;height:38px;margin-top:6px;padding:0 20px;font-weight:600;display:inline-flex}.card-link{border:1px solid var(--line-soft);background:#fcfbf8;border-radius:12px}.cal-shell{background:var(--card);border:1px solid var(--line);box-shadow:var(--sh);border-radius:18px;overflow:hidden}.cal-body{align-items:stretch;display:flex}.cal-main{flex:1;min-width:0}.month-panel{border-right:1px solid var(--line-soft);flex-direction:column;flex-shrink:0;gap:14px;width:232px;padding:14px 12px;display:flex}.month-panel-closed{align-items:center;width:44px;padding:10px 4px}.month-panel-head{justify-content:space-between;align-items:center;gap:4px;display:flex}.month-panel-title{color:var(--ink);font-size:14px;font-weight:650}.month-panel-nav,.month-panel-toggle{padding:4px 6px}.month-grid,.month-grid-row{gap:2px;display:grid}.month-grid-row{grid-template-columns:repeat(7,1fr)}.month-grid-wd{text-align:center;color:var(--muted);padding:2px 0 4px;font-size:11px;font-weight:700}.month-day{aspect-ratio:1;font-variant-numeric:tabular-nums;color:var(--ink);border-radius:999px;place-items:center;font-size:12.5px;transition:background .12s;display:grid}.month-day:hover{background:var(--line-soft)}.month-day:focus-visible,.month-jump:focus-visible{outline:2px solid var(--iris);outline-offset:1px}.month-day.is-other-month{color:var(--muted);opacity:.55}.month-day.is-closed{color:var(--muted);text-decoration:line-through}.month-day.is-today{box-shadow:inset 0 0 0 1.5px var(--iris);font-weight:700}.month-day.is-selected{background:var(--ink);color:var(--card);font-weight:700}.month-panel-jumps{grid-template-columns:1fr 1fr;gap:6px;display:grid}.month-panel-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);grid-column:1/-1;font-size:11px;font-weight:700}.month-jump{border:1px solid var(--line-soft);background:var(--card);text-align:left;border-radius:10px;flex-direction:column;align-items:flex-start;gap:1px;padding:7px 9px;display:flex}.month-jump:hover{border-color:var(--iris)}.month-jump strong{color:var(--ink);font-size:13px}.month-jump span{color:var(--muted);font-size:11px}.month-jump.is-selected{border-color:var(--iris);background:var(--iris-soft)}.month-panel-hide{color:var(--muted);align-self:flex-start;align-items:center;gap:4px;margin-top:auto;padding:4px 8px;font-size:12px;display:flex}@media (max-width:640px){.cal-body{flex-direction:column}.month-panel{border-right:0;border-bottom:1px solid var(--line-soft);width:auto}.month-panel-closed{flex-direction:row;justify-content:flex-start;width:auto;padding:6px 10px}}.cal-header{border-bottom:1px solid var(--line-soft);justify-content:space-between;gap:12px;padding:12px 18px}.cal-header,.cal-header-controls{flex-wrap:wrap;align-items:center;display:flex}.cal-header-controls{gap:8px}.cal-scroll{max-height:max(420px,100dvh - 205px);display:flex;position:relative;overflow:auto}.cal-time-col{z-index:12;border-right:1px solid var(--line-soft);flex-shrink:0;width:54px;left:0}.cal-time-col,.cal-time-corner{background:var(--card);position:sticky}.cal-time-corner{border-bottom:1px solid var(--line-soft);height:58px;top:0}.cal-col{border-left:1px solid var(--line-soft);flex:1;min-width:170px}.cal-col-hdr{border-bottom:1px solid var(--line-soft);background:var(--card);z-index:11;align-items:center;gap:8px;height:58px;padding:0 12px;display:flex;position:sticky;top:0}.cal-av{color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:11px;font-weight:700;display:grid}.cal-lane{height:800px;padding:0 4px;position:relative}.cal-hour-line{background:var(--line-soft);pointer-events:none;height:1px;position:absolute;left:0;right:0}.cal-appt{cursor:pointer;z-index:2;border-radius:8px;padding:5px 8px;font-size:12px;transition:filter .15s,box-shadow .15s;position:absolute;left:4px;right:4px;overflow:hidden}.cal-appt.selected{box-shadow:0 0 0 2px var(--iris),0 3px 10px #0000001f!important}.cal-appt.status-completed{opacity:.6}.cal-appt.status-cancelled{text-decoration:line-through}.ap-iris{background:var(--gold-soft);color:var(--iris-deep)}.ap-pink{color:#9c3052;background:#fde8ee}.ap-amber{color:#8a5a1a;background:#fef3e2}.ap-green{color:#236e48;background:#e3f5ec}.ap-blue{color:#1a4f8a;background:#e0effe}.ap-red{background:var(--red-soft);color:var(--red)}.ap-muted{color:var(--muted);cursor:default;background:#f4f1ea}.ap-neutral{background:var(--card);color:var(--ink);border:1px solid var(--line)}.cal-resize-handle{cursor:ns-resize;border-radius:0 0 6px 6px;height:8px;position:absolute;bottom:0;left:0;right:0}.cal-slot-target{cursor:crosshair;z-index:1;height:20px;position:absolute;left:0;right:0}.cal-slot-target:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.cal-slot-target:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}}.cal-detail{border-left:1px solid var(--line-soft);flex-shrink:0;width:256px;max-height:658px;padding:16px;overflow-y:auto}.cal-now-line{z-index:10;pointer-events:none;height:2px;left:0;right:0}.cal-now-line,.cal-now-line:before{background:var(--red);position:absolute}.cal-now-line:before{content:"";border-radius:50%;width:10px;height:10px;top:-4px;left:-4px}.revenue-grid{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);grid-template-columns:repeat(5,1fr);display:grid;overflow:hidden}.revenue-cell{padding:16px 20px}.inp,.input,.sel{border:1px solid var(--line);width:100%;font-size:13.5px;font-family:var(--ui);color:var(--ink);background:#fcfbf8;border-radius:10px;padding:11px 13px;transition:border .2s,box-shadow .2s}.inp:focus,.input:focus,.sel:focus{border-color:var(--iris);box-shadow:0 0 0 3px var(--iris-soft);outline:none}.stub-screen{height:100%;color:var(--muted);justify-content:center;align-items:center;font-size:14px;display:flex}.checkout-grid{grid-template-columns:1fr 360px;align-items:start;gap:24px;display:grid}@media (max-width:768px){.rail{z-index:100;border-top:1px solid #ffffff1a;border-right:none;flex-direction:row;justify-content:space-around;align-items:center;width:100%;max-width:none;height:64px;padding:0 8px;position:fixed;inset:auto 0 0;overflow-x:auto}.rail-collapse-toggle{display:none}.rail-collapsed{width:100%;max-width:none;padding:0 8px}.navgroup,.rail-brand,.rail-clinic,.rail-foot,.rail-logout-form,.rail-search{display:none}.rail-nav{flex:1;justify-content:flex-start;align-items:center;gap:2px;width:100%;display:flex;overflow-x:auto}.nav-section{display:contents}.navitem{flex-direction:column;justify-content:center;gap:2px;margin-bottom:0}.navitem,.rail-collapsed .navitem{border-radius:8px;width:26px;min-width:26px;height:auto;padding:6px 3px}.rail-collapsed .navitem{margin:0}.nav-badge,.navitem span:not(.nav-badge),.navitem.on:before{display:none}.app-shell{flex-direction:column}.main-area{padding-bottom:72px}.screen{padding:20px 16px}.page-header{flex-direction:column}.page-title{font-size:28px}.catalog-form,.grid-3,.settings-grid{grid-template-columns:1fr}.catalog-form-wide{grid-column:auto}.today-metrics{grid-template-columns:repeat(2,1fr)}.today-main{grid-template-columns:1fr}.today-greeting{flex-direction:column;gap:12px}.message-form,.msg-grid,.msg-wide-grid{grid-template-columns:1fr}.vial-meta{flex-direction:column}.message-tabs{justify-content:flex-start;width:100%;overflow-x:auto}.msg-conversation-card{min-height:420px;padding:18px}.msg-conversation-head,.msg-reply-bar{flex-direction:column;align-items:stretch}.msg-bubble{max-width:92%}.followup-grid,.followup-head,.followup-queue-grid{grid-template-columns:1fr}.followup-head{display:grid}.followup-seq-card{padding:24px 18px 22px}.followup-seq{min-width:760px}.followup-seq-line{top:50px;left:76px;right:76px}.intake-consent-grid,.intake-grid,.intake-head{grid-template-columns:1fr}.intake-head{display:grid}.intake-packet-heading{display:none}.intake-packet-row{grid-template-columns:1fr;gap:12px}.intake-progress{width:100%}.intake-packet-actions{justify-content:flex-start}.intake-report-grid{grid-template-columns:1fr}.patient-intake-page{max-width:100%}.hstat-row{grid-template-columns:repeat(2,1fr)}.hstat:nth-child(2){border-right:none}.hstat:nth-child(odd):not(:last-child){border-right:1px solid var(--line-soft)}.sched-row{grid-template-rows:auto auto;grid-template-columns:72px 1fr;gap:8px 12px}.sched-row>div:last-child{flex-wrap:wrap;grid-column:1/-1;gap:6px}.cal-shell{overflow-x:auto}.cal-scroll{min-width:480px}.cal-header-controls{width:100%}.cal-header-controls .btn{flex-shrink:0}.revenue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.revenue-cell{border-bottom:1px solid var(--line-soft);padding:14px 16px}.checkout-grid{grid-template-columns:1fr}.rail .navitem span{font-size:10px}.landing-proof-strip{grid-template-columns:1fr 1fr}}@media (min-width:768.02px) and (max-width:1024.98px){.rail{max-width:76px;padding-left:10px;padding-right:10px}.rail .rail-brand{justify-content:center;padding-left:0;padding-right:0}.rail .rail-logo{width:44px;height:44px}.rail .navgroup,.rail .navitem span:not(.nav-badge),.rail .rail-search span,.rail .rail-text{display:none}.rail .rail-clinic{justify-content:center;margin-left:2px;margin-right:2px;padding:12px 0}.rail .rail-clinic-dot{width:10px;height:10px}.rail .rail-search{justify-content:center;margin-left:2px;margin-right:2px;padding:11px 0}.rail .navitem{border-radius:12px;justify-content:center;gap:0;width:44px;height:44px;margin:2px auto;padding:0}.rail .nav-badge{color:#0000;width:8px;min-width:8px;height:8px;padding:0;position:absolute;top:6px;right:5px;overflow:hidden}.rail .rail-foot{justify-content:center;padding-left:0;padding-right:0}.rail .rail-avatar{width:36px;height:36px}.catalog-form,.grid-3,.settings-grid{grid-template-columns:1fr}.catalog-form-wide{grid-column:auto}.today-metrics{grid-template-columns:repeat(2,1fr)}.followup-grid,.followup-head,.followup-queue-grid,.message-form,.msg-grid,.msg-wide-grid,.today-main{grid-template-columns:1fr}.followup-head{display:grid}.intake-consent-grid,.intake-grid,.intake-head{grid-template-columns:1fr}.intake-head{display:grid}.revenue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.checkout-grid{grid-template-columns:1fr}}.portal-shell{background:radial-gradient(circle at 12% 0,rgba(var(--sage-rgb),.08),transparent 32rem),linear-gradient(180deg,var(--bone) 0,#faf9f5 100%);height:100dvh;min-height:100dvh;color:var(--ink);overflow-y:auto}.portal-shell[data-vertical=salon]{background:radial-gradient(circle at 10% 0,#c2654f21,transparent 32rem),linear-gradient(180deg,var(--bone) 0,#fffcf7 100%)}.portal-auth-page,.portal-landing{width:min(100%,450px);min-height:100dvh;padding:max(18px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom));margin:0 auto}.portal-hero{background:var(--pine);color:#fff;min-height:auto;box-shadow:var(--sh-lift);border-radius:28px;flex-direction:column;gap:24px;margin-bottom:16px;padding:24px;display:flex;overflow:hidden}.portal-brand-row{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.portal-brand-row.compact{min-width:0}.portal-logo{background:linear-gradient(135deg,var(--iris),var(--iris-deep));color:#fff;width:46px;height:46px;font-family:var(--disp);box-shadow:0 10px 24px -14px rgba(var(--pine-rgb),.5);border-radius:15px;flex:none;place-items:center;font-size:22px;font-weight:650;display:grid}.portal-logo.large{border-radius:18px;width:58px;height:58px;margin-bottom:16px}.portal-brand-name{letter-spacing:.01em;font-weight:850}.portal-brand-name,.portal-brand-sub{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.portal-brand-sub{color:#ffffff94;margin-top:2px;font-size:12px}.portal-auth-card .portal-brand-sub,.portal-topbar .portal-brand-sub{color:var(--muted)}.portal-hero-copy{padding:16vh 0 8vh}.portal-kicker{color:var(--iris-deep);font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:6px;font-size:10px;font-weight:800;display:inline-flex}.portal-hero .portal-kicker{color:#ffffff9e}.portal-auth-card h1,.portal-hero h1,.portal-page-title h1,.portal-welcome h1{font-family:var(--disp);letter-spacing:0;font-weight:540}.portal-hero h1{max-width:12ch;margin-top:10px;font-size:clamp(28px,10vw,44px);line-height:1.1}.portal-hero p{color:#ffffffb3;max-width:520px;margin-top:10px;font-size:14px;line-height:1.45}.portal-actions{gap:10px;display:grid}.portal-primary-btn,.portal-secondary-btn{border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 16px;font-size:14px;font-weight:850;text-decoration:none;transition:transform .15s,background .15s,border-color .15s,opacity .15s;display:inline-flex}.portal-primary-btn{background:var(--iris);color:#fff;box-shadow:0 14px 24px -18px rgba(var(--pine-rgb),.55)}.portal-primary-btn:hover,.portal-secondary-btn:hover{transform:translateY(-1px)}.portal-primary-btn:disabled,.portal-secondary-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.portal-secondary-btn{color:#fff;background:#ffffff12;border:1px solid #ffffff2e}.portal-app .portal-secondary-btn,.portal-auth-card .portal-secondary-btn,.portal-card .portal-secondary-btn{border-color:var(--line);background:var(--card);color:var(--ink)}.portal-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.portal-mini-card{border:1px solid var(--line);min-height:56px;color:var(--ink);box-shadow:var(--sh);background:#ffffffb3;border-radius:12px;align-items:center;gap:8px;padding:10px 12px;font-size:12px;font-weight:800;display:flex}.portal-mini-card svg{color:var(--iris)}.portal-powered{text-align:center;color:var(--muted);padding-bottom:6px;font-size:12px;font-weight:750}.portal-auth-page{flex-direction:column;justify-content:center;gap:16px;display:flex}.portal-back-link{color:var(--muted);font-size:13px;font-weight:750;text-decoration:none}.portal-auth-card,.portal-card{border:1px solid var(--line);box-shadow:var(--sh);background:#ffffffe6;border-radius:20px}.portal-auth-card{padding:22px}.portal-auth-card h1{font-size:34px;line-height:1}.portal-auth-card p,.portal-muted,.portal-page-title p{color:var(--muted);font-size:14px;line-height:1.5}.portal-form,.portal-preferences-form{gap:14px;display:grid}.portal-form{margin-top:22px}.portal-field,.portal-form label{gap:6px;display:grid}.portal-field-label,.portal-field>span,.portal-form label span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:850}.portal-field input:not([type=checkbox]):not([type=radio]),.portal-field select,.portal-field textarea,.portal-form label input:not([type=checkbox]):not([type=radio]){border:1px solid var(--line);width:100%;font-size:13.5px;font-family:var(--ui);background:var(--card);color:var(--ink);border-radius:12px;padding:11px 13px;transition:border-color .15s,box-shadow .15s}.portal-field input:not([type=checkbox]):not([type=radio]):focus,.portal-field select:focus,.portal-field textarea:focus,.portal-form label input:not([type=checkbox]):not([type=radio]):focus{border-color:var(--iris);box-shadow:0 0 0 3px var(--iris-soft);outline:none}.portal-error{border:1px solid var(--red-soft);background:var(--red-soft);color:var(--red);border-radius:12px;font-weight:750}.portal-error,.portal-notice{padding:10px 12px;font-size:13px}.portal-notice{background:#5e74631a;border:1px solid #5e746340;border-radius:12px;line-height:1.5}.portal-switch{color:var(--muted);text-align:center;font-size:13px}.portal-switch a{color:var(--iris-deep);font-weight:850}.portal-app{width:min(100%,450px);min-height:100dvh;padding-bottom:calc(78px + env(safe-area-inset-bottom));margin:0 auto}.portal-topbar{z-index:20;padding:max(14px,env(safe-area-inset-top)) 16px 12px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f2f1ece0;border-bottom:1px solid #e4e1d8b3;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.portal-shell[data-vertical=salon] .portal-topbar{background:#f7f1e9e6}.portal-topbar .portal-logo{border-radius:13px;width:40px;height:40px;font-size:19px}.portal-icon-btn{border:1px solid var(--line);width:42px;height:42px;color:var(--ink);background:#ffffffbd;border-radius:12px;place-items:center;display:grid}.portal-content{gap:16px;padding:18px 16px 28px;display:grid}.portal-bottom-nav{z-index:30;width:min(100%,450px);padding:8px 8px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -14px 32px -24px #16241f4d}.portal-bottom-nav a{min-width:0;color:var(--muted);border-radius:12px;place-items:center;gap:3px;padding:8px 2px;font-size:10px;font-weight:850;text-decoration:none;display:grid}.portal-bottom-nav a.active{background:var(--iris-soft);color:var(--iris-deep)}.portal-welcome{background:var(--pine);color:#fff;box-shadow:var(--sh-lift);border-radius:24px;padding:24px;overflow:hidden}.portal-welcome .portal-kicker{color:#ffffff94}.portal-welcome h1{margin-top:10px;font-size:clamp(38px,12vw,56px);line-height:.96}.portal-welcome p{color:#ffffffad;margin-top:10px;font-size:15px;line-height:1.5}.portal-card{padding:18px}.portal-next-card{gap:16px;display:grid}.portal-card-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.portal-card-head h2,.portal-section-title{font-size:16px;font-weight:900}.portal-card-head p{color:var(--muted);margin-top:3px;font-size:13px}.portal-chip-row{flex-wrap:wrap;gap:6px;display:flex}.portal-chip{color:var(--muted);background:#efeee8;border-radius:99px;align-items:center;padding:5px 9px;font-size:11px;font-weight:850;display:inline-flex}.portal-chip.green{background:var(--green-soft);color:var(--green)}.portal-chip.amber{background:var(--amber-soft);color:var(--amber)}.portal-action-grid,.portal-service-list,.portal-stack{gap:12px;display:grid}.portal-action-card,.portal-service-card{border:1px solid var(--line);box-shadow:var(--sh);color:var(--ink);text-align:left;background:#ffffffe6;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;padding:16px;text-decoration:none;display:flex}.portal-action-card h3,.portal-service-card h3{font-size:15px;font-weight:900}.portal-action-card p,.portal-service-card p{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.45}.portal-action-card svg,.portal-back svg{color:var(--iris)}.portal-page-title{gap:8px;display:grid}.portal-page-title h1{font-size:38px;line-height:1}.portal-booking{gap:14px;display:grid}.portal-service-card{cursor:pointer;width:100%}.portal-service-card strong{color:var(--iris-deep);flex:none}.portal-back{color:var(--muted);align-items:center;gap:6px;margin-bottom:12px;font-size:13px;font-weight:850;display:inline-flex}.portal-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.portal-slot{border:1px solid var(--line);background:var(--card);min-height:42px;color:var(--ink);border-radius:12px;font-weight:850}.portal-slot.selected{border-color:var(--iris);background:var(--iris-soft);color:var(--iris-deep)}.portal-confirm-list{gap:10px;margin:14px 0;display:grid}.portal-confirm-list div{border-bottom:1px solid var(--line-soft);color:var(--muted);justify-content:space-between;gap:12px;padding-bottom:10px;display:flex}.portal-confirm-list strong{color:var(--ink);text-align:right}.portal-confirmation{text-align:center;align-content:center;place-items:center;min-height:280px}.portal-pill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.portal-pill-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-check-pill{border:1px solid var(--line);background:var(--card);min-height:44px;color:var(--ink);border-radius:12px;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:850;display:flex}.portal-check-pill input{accent-color:var(--iris)}.portal-toggle-row{border:1px solid var(--line);background:var(--card);border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;font-size:14px;font-weight:850;display:flex}.portal-toggle-row input{accent-color:var(--iris)}.portal-empty{color:var(--muted);text-align:center;gap:14px;display:grid}.portal-form-row,.portal-visit-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.portal-visit-date{background:var(--iris-soft);min-width:58px;min-height:58px;color:var(--iris-deep);text-align:center;border-radius:16px;place-items:center;font-weight:950;display:grid}@media (min-width:720px){.portal-auth-page,.portal-landing{padding:28px 24px}.portal-hero{min-height:auto;padding:34px}.portal-actions{grid-template-columns:1fr 1fr}.portal-app{padding-bottom:96px}.portal-content{padding:26px 22px 34px}}@media (min-width:480px){.portal-app,.portal-auth-page,.portal-landing{background:var(--card);border-left:1px solid var(--line-soft);border-right:1px solid var(--line-soft);box-shadow:0 12px 48px -12px #16241f14}}.landing-page{scroll-behavior:smooth;background:var(--bone);height:100dvh;color:var(--ink);overflow:hidden auto}.landing-page a{color:inherit;text-decoration:none}.landing-nav{z-index:50;border:1px solid rgba(var(--pine-rgb),.1);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);width:min(1200px,100% - 48px);box-shadow:0 14px 48px -32px rgba(var(--pine-rgb),.36);background:#f7f4eed1;border-radius:18px;justify-content:space-between;gap:20px;margin:18px auto 0;padding:10px 12px;position:sticky;top:0}.landing-brand,.landing-nav{align-items:center;display:flex}.landing-brand{gap:10px;min-width:160px}.landing-logo{background:#c9a24e;border-radius:13px;place-items:center;width:40px;height:40px;padding:9px;display:grid;overflow:hidden;box-shadow:0 8px 20px -10px #c9a24e99}.landing-brand strong{font-family:var(--disp);font-size:20px;font-weight:600;line-height:.95;display:block}.landing-brand small{color:var(--muted);font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;margin-top:2px;font-size:9.5px;display:block}.landing-nav-links{background:rgba(var(--pine-rgb),.045);border-radius:14px;justify-content:center;align-items:center;gap:4px;padding:5px;display:flex}.landing-nav-links a{min-height:36px;color:rgba(var(--ink-rgb),.62);border-radius:10px;align-items:center;padding:0 13px;font-size:13px;font-weight:600;transition:background .18s,color .18s;display:inline-flex}.landing-nav-links a:hover{color:var(--ink);background:#fffc}.landing-nav-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:160px;display:flex}.landing-login{min-height:36px;color:var(--muted);border-radius:10px;padding:0 13px;font-weight:600}.landing-login,.landing-nav-cta{align-items:center;font-size:13px;display:inline-flex}.landing-nav-cta{background:var(--pine);white-space:nowrap;min-height:38px;box-shadow:0 8px 20px -12px rgba(var(--pine-rgb),.7);border-radius:12px;padding:0 16px;font-weight:700;transition:background .2s,transform .2s;color:#fff!important}.landing-nav-cta:hover{background:var(--pine-2);transform:translateY(-1px)}.landing-hero{background:var(--pine);border-radius:0 0 40px 40px;width:100%;padding-bottom:80px;position:relative;overflow:hidden}.hero-bloom{pointer-events:none;border-radius:999px;position:absolute}.hero-bloom-a{background:radial-gradient(circle,#c9a24e38,#0000 68%);width:640px;height:640px;top:-180px;right:-80px}.hero-bloom-b{background:radial-gradient(circle,#5e746361,#0000 70%);width:480px;height:480px;bottom:-100px;left:-60px}.landing-hero-grid{z-index:1;grid-template-columns:1.1fr 1fr;align-items:center;gap:clamp(40px,4vw,72px);width:min(1200px,100% - 48px);margin:0 auto;padding:52px 0 48px;display:grid;position:relative}.landing-hero-copy{z-index:2}.landing-eyebrow{color:var(--iris);font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:22px;font-size:10.5px;font-weight:700;display:inline-flex}.landing-eyebrow:before{content:"";background:var(--iris);border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 14px #c9a24ebf}.landing-hero h1{font-family:var(--disp);color:#f7f4ee;letter-spacing:-.01em;max-width:820px;font-size:clamp(46px,4.2vw,78px);font-weight:500;line-height:.94}.landing-hero h1 em{color:var(--iris);font-style:italic}.landing-hero-copy>p{color:#f7f4eead;max-width:520px;margin-top:22px;font-size:clamp(16px,1.5vw,19px);line-height:1.6}.landing-hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px;display:flex}.landing-cta-gold{background:var(--iris);white-space:nowrap;border-radius:14px;align-items:center;gap:8px;min-height:52px;padding:0 22px;font-size:14px;font-weight:700;transition:background .2s,transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 12px 28px -16px #c9a24e8c;color:var(--pine)!important}.landing-cta-gold:hover{background:var(--iris-deep);transform:translateY(-2px);box-shadow:0 18px 32px -16px #a9854ea6}.landing-cta-ghost{white-space:nowrap;background:#ffffff12;border:1px solid #fff3;border-radius:14px;align-items:center;min-height:52px;padding:0 20px;font-size:14px;font-weight:600;transition:border-color .2s,background .2s,transform .2s;display:inline-flex;color:#f7f4eecc!important}.landing-cta-ghost:hover{background:#ffffff1c;border-color:#ffffff57;transform:translateY(-2px)}.landing-product-stage{--tilt-x:0deg;--tilt-y:0deg;z-index:2;transform:perspective(1200px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transform-style:preserve-3d;transition:transform .18s ease-out;position:relative}.landing-stage-toolbar{background:rgba(var(--pine-rgb),.88);color:#ffffffb3;box-shadow:0 18px 38px -24px rgba(var(--pine-rgb),.7);border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:8px;margin:0 0 10px 18px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.stage-dot{border-radius:99px;width:8px;height:8px}.stage-dot.red{background:var(--red)}.stage-dot.amber{background:var(--amber)}.stage-dot.green{background:var(--green)}.landing-app-shell{min-height:clamp(540px,52vh,700px);box-shadow:0 36px 80px -40px rgba(var(--pine-rgb),.58),inset 0 1px 0 #fffc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffb8;border:1px solid #ffffff29;border-radius:28px;grid-template-columns:190px 1fr;display:grid;overflow:hidden}.landing-rail-preview{background:var(--pine);color:#fff;padding:18px 12px}.rail-mini-brand{font-family:var(--disp);align-items:center;gap:7px;margin-bottom:24px;font-size:18px;font-weight:600;display:flex}.rail-mini-item{color:#ffffff80;border-radius:11px;margin-top:4px;padding:10px 12px;font-size:11.5px;font-weight:700}.rail-mini-item.active{color:#fff;background:#ffffff1c;box-shadow:inset 0 0 0 1px #ffffff14}.landing-dashboard-preview{background:radial-gradient(circle at 86% 8%,#c9a24e21,#0000 30%),#f7f6f1;grid-template-rows:auto 1fr;gap:18px;padding:22px;display:grid}.preview-hero{background:var(--pine);color:#fff;border-radius:22px;justify-content:space-between;gap:16px;min-height:200px;padding:30px;display:flex;overflow:hidden}.preview-eyebrow{color:#ffffff80;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;font-size:10px}.preview-hero h2{font-family:var(--disp);margin-top:10px;font-size:clamp(22px,2vw,34px);font-weight:500;line-height:1}.preview-hero p{color:#ffffffa6;max-width:480px;margin-top:10px;font-size:13px;line-height:1.45}.preview-status{white-space:nowrap;color:#c9a24e;background:#c9a24e38;border-radius:999px;align-self:flex-start;padding:8px 12px;font-size:11.5px;font-weight:700}.preview-grid{grid-template-columns:1.2fr .8fr;gap:12px;display:grid}.preview-card{border:1px solid var(--line);min-height:160px;box-shadow:0 14px 40px -28px rgba(var(--pine-rgb),.42);background:#ffffffdb;border-radius:20px;padding:20px}.preview-card.wide{grid-row:span 2}.preview-card.dark{background:var(--pine);color:#fff;border-color:#ffffff14}.preview-card small,.preview-card span{color:var(--muted);font-size:11.5px;font-weight:700;display:block}.preview-card.dark small,.preview-card.dark span{color:#ffffff80}.preview-card strong{margin-top:9px;font-size:clamp(15px,1.1vw,20px);line-height:1.15;display:block}.preview-card small{margin-top:6px;font-weight:600}.preview-row{justify-content:space-between;align-items:center;gap:12px;margin-top:86px;display:flex}.preview-row em{color:var(--muted);font-size:12px;font-style:normal;font-weight:700}.preview-row button{background:var(--iris);min-height:36px;color:var(--pine);border-radius:11px;padding:0 14px;font-size:12px;font-weight:700}.preview-meter{background:#c9a24e24;border-radius:99px;height:8px;margin-top:30px;overflow:hidden}.preview-meter i{border-radius:inherit;background:linear-gradient(90deg,var(--iris),var(--iris-deep));width:78%;height:100%;animation:landingMeter 3.6s ease-in-out infinite alternate;display:block}.landing-orbit-chip{z-index:3;color:var(--ink);box-shadow:0 16px 38px -20px rgba(var(--pine-rgb),.4);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffd1;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:7px;padding:9px 12px;font-size:12px;font-weight:800;display:inline-flex;position:absolute}.landing-orbit-chip.chip-a{animation:landingFloatA 5.4s ease-in-out infinite;top:80px;right:-16px}.landing-orbit-chip.chip-b{animation:landingFloatB 6.2s ease-in-out infinite;bottom:48px;left:-16px}.landing-proof-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;width:min(1200px,100% - 48px);margin:52px auto 0;display:grid}.proof-stat{border:1px solid var(--line-soft);min-height:96px;box-shadow:var(--sh);background:#fff;border-radius:18px;padding:22px}.proof-stat strong{font-family:var(--disp);color:var(--pine);font-size:38px;font-weight:500;line-height:.92;display:block}.proof-stat span{color:var(--muted);margin-top:8px;font-size:12px;line-height:1.35;display:block}.landing-marquee{border-block:1px solid rgba(var(--pine-rgb),.08);background:var(--pine);color:#fff9;gap:24px;margin-top:48px;padding:20px 0;display:flex;overflow:hidden}.landing-marquee div{flex:none;justify-content:space-around;gap:24px;min-width:100%;animation:landingMarquee 36s linear infinite;display:flex}.landing-marquee span{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:700}.landing-section{width:min(1200px,100% - 48px);margin:0 auto;padding:100px 0;position:relative}.landing-section-head{max-width:860px;margin-bottom:48px}.landing-section-head.compact{margin-bottom:22px}.landing-kicker{color:var(--muted);font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:10px;font-size:10.5px;font-weight:700;display:inline-flex}.landing-kicker span{background:var(--iris);border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 12px #c9a24e99}.landing-section h2{font-family:var(--disp);margin-top:14px;font-size:clamp(30px,3vw,52px);font-weight:500;line-height:.96}.landing-section h2 em{color:var(--iris);font-style:italic}.landing-section-head p{color:rgba(var(--ink-rgb),.62);margin-top:18px;font-size:17px;line-height:1.6}.landing-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.landing-feature-card{border:1px solid var(--line-card);min-height:230px;box-shadow:var(--sh);background:#fff;border-radius:24px;align-content:start;gap:14px;padding:28px;transition:transform .25s,border-color .25s,box-shadow .25s;display:grid;position:relative;overflow:hidden}.landing-feature-card:hover{box-shadow:var(--sh-lift);border-color:#c9a24e4d;transform:translateY(-5px)}.landing-feature-card h3{font-size:19px;font-weight:700}.landing-feature-card p{color:var(--muted);font-size:14px;line-height:1.55}.feature-arrow{bottom:22px;right:22px;color:rgba(var(--ink-rgb),.22)!important;position:absolute!important}.landing-experience-grid{grid-template-columns:minmax(0,.75fr) minmax(360px,1fr);align-items:stretch;gap:18px;display:grid}.landing-story-card,.landing-tabs-panel{border:1px solid var(--line-card);box-shadow:var(--sh);background:#fff;border-radius:28px;padding:28px}.landing-tab-list{gap:8px;display:grid}.landing-tab-list button{border:1px solid var(--line);min-height:56px;color:var(--muted);background:#ffffffb8;border-radius:14px;align-items:center;gap:10px;padding:0 16px;font-size:13.5px;font-weight:700;transition:transform .18s,border-color .18s,color .18s,background .18s;display:flex}.landing-tab-list button.active,.landing-tab-list button:hover{background:var(--iris-soft);color:var(--iris-deep);border-color:#c9a24e59;transform:translate(4px)}.landing-story-card{align-content:center;min-height:400px;display:grid}.story-card-top{color:var(--iris-deep);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:9px;font-size:12px;font-weight:800;display:flex}.landing-story-card h3{max-width:560px;font-family:var(--disp);margin-top:20px;font-size:clamp(24px,2.4vw,42px);font-weight:500;line-height:1}.landing-story-card p{max-width:560px;color:rgba(var(--ink-rgb),.64);margin-top:16px;font-size:17px;line-height:1.58}.story-bullets{flex-wrap:wrap;gap:8px;margin-top:26px;display:flex}.story-bullets span{background:var(--iris-soft);color:var(--iris-deep);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700}.landing-calculator{grid-template-columns:minmax(0,.9fr) minmax(360px,.72fr);align-items:center;gap:48px;padding-top:80px;padding-bottom:80px;display:grid}.landing-calculator h2 em{color:var(--iris);font-style:italic}.landing-calculator>div:first-child p{color:rgba(var(--ink-rgb),.62);margin-top:18px;font-size:17px;line-height:1.6}.calculator-panel{background:var(--pine);color:#fff;box-shadow:var(--sh-lift);border-radius:24px;gap:20px;padding:28px;display:grid}.calculator-panel label{gap:12px;display:grid}.calculator-panel label span{color:#ffffffa6;justify-content:space-between;gap:16px;font-size:13px;font-weight:700;display:flex}.calculator-panel input{width:100%;accent-color:var(--iris)}.calculator-result{background:#ffffff12;border:1px solid #ffffff1f;border-radius:18px;margin-top:6px;padding:22px}.calculator-result small,.calculator-result span{color:#ffffff8c;font-size:11.5px;font-weight:700;display:block}.calculator-result strong{font-family:var(--disp);margin:6px 0;font-size:clamp(34px,3vw,52px);font-weight:500;line-height:.95;display:block}.landing-pricing{padding-bottom:80px}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:20px;display:grid}.pricing-card{border:1px solid var(--line-card);box-shadow:var(--sh);background:#fff;border-radius:24px;padding:32px}.pricing-card-highlight{background:var(--pine);color:#fff;box-shadow:0 28px 72px -32px rgba(var(--pine-rgb),.72);border-color:#0000;transform:scale(1.03)}.pricing-eyebrow{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--iris-deep);font-size:10px;font-weight:700}.pricing-card-highlight .pricing-eyebrow{color:var(--iris)}.pricing-name{font-family:var(--disp);color:var(--pine);margin-top:8px;font-size:26px;font-weight:500}.pricing-card-highlight .pricing-name{color:#f7f4ee}.pricing-amount{align-items:baseline;gap:4px;margin-top:16px;display:flex}.pricing-amount strong{font-family:var(--disp);color:var(--pine);font-size:46px;font-weight:500;line-height:1}.pricing-card-highlight .pricing-amount strong{color:#f7f4ee}.pricing-amount span{color:var(--muted);font-size:14px}.pricing-card-highlight .pricing-amount span{color:#f7f4ee8c}.pricing-desc{color:var(--muted);border-top:1px solid var(--line-soft);margin-top:16px;padding-top:16px;font-size:14px;line-height:1.55}.pricing-card-highlight .pricing-desc{color:#f7f4ee9e;border-color:#ffffff1a}.pricing-features{gap:11px;margin-top:22px;list-style:none;display:grid}.pricing-features li{color:var(--ink);align-items:center;gap:10px;font-size:13.5px;display:flex}.pricing-card-highlight .pricing-features li{color:#f7f4eed9}.pricing-features li svg{color:var(--iris-deep);flex-shrink:0}.pricing-card-highlight .pricing-features li svg{color:var(--iris)}.pricing-cta{border:1px solid var(--line);background:rgba(var(--pine-rgb),.04);border-radius:13px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;margin-top:28px;font-size:14px;font-weight:700;transition:transform .2s,border-color .2s,background .2s;display:inline-flex;color:var(--pine)!important}.pricing-cta:hover{border-color:var(--pine-3);background:rgba(var(--pine-rgb),.08);transform:translateY(-2px)}.pricing-cta-highlight{box-shadow:0 10px 24px -12px #c9a24e80;background:var(--iris)!important;border-color:var(--iris)!important;color:var(--pine)!important}.pricing-cta-highlight:hover{background:var(--iris-deep)!important;border-color:var(--iris-deep)!important}.landing-footer{background:var(--pine);color:#f7f4eea6;margin-top:24px}.landing-footer-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:40px;width:min(1200px,100% - 48px);margin:0 auto;padding:52px 0 36px;display:grid}.footer-brand{align-items:center;gap:12px;display:flex}.footer-brand strong{font-family:var(--disp);color:#f7f4eee6;font-size:20px;font-weight:500;line-height:1;display:block}.footer-brand small{letter-spacing:.15em;text-transform:uppercase;color:#f7f4ee66;font-size:9.5px;font-family:var(--mono);margin-top:3px;display:block}.footer-logo-badge{background:#c9a24e2e;border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;padding:9px;display:grid}.footer-links{align-items:center;gap:4px;display:flex}.footer-links a{color:#f7f4ee85;border-radius:10px;padding:8px 11px;font-size:13px;font-weight:600;transition:background .18s,color .18s}.footer-links a:hover{color:#f7f4eee6;background:#ffffff12}.footer-cta-wrap{justify-content:flex-end;display:flex}.footer-base{border-top:1px solid #ffffff14;width:min(1200px,100% - 48px);margin:0 auto;padding:18px 0 36px}.footer-base span{color:#f7f4ee4d;font-size:11.5px}[data-reveal]{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.8,.2,1);transform:translateY(22px)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}@keyframes landingMeter{0%{width:60%}to{width:88%}}@keyframes landingFloatA{0%,to{transform:translate(0)}50%{transform:translate(-10px,-14px)}}@keyframes landingFloatB{0%,to{transform:translate(0)}50%{transform:translate(12px,16px)}}@keyframes landingMarquee{0%{transform:translate(0)}to{transform:translate(calc(-100% - 24px))}}@media (max-width:900px){.landing-hero-grid{grid-template-columns:1fr;padding:44px 0 36px}.landing-product-stage{display:none}.landing-feature-grid{grid-template-columns:repeat(2,1fr)}.landing-calculator,.landing-experience-grid,.pricing-grid{grid-template-columns:1fr}.pricing-card-highlight{transform:none}.landing-footer-inner{grid-template-columns:1fr;gap:24px}.footer-cta-wrap{justify-content:flex-start}.landing-proof-strip{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.landing-nav-links{display:none}.landing-feature-grid{grid-template-columns:1fr}.landing-proof-strip{grid-template-columns:1fr 1fr}}.toast-stack{z-index:9000;pointer-events:none;flex-direction:column;width:340px;position:fixed;bottom:24px;right:24px}.toast,.toast-stack{gap:10px;display:flex}.toast{background:var(--pine);color:#f7f4eeeb;pointer-events:all;border-radius:14px;align-items:flex-start;padding:13px 14px;font-size:13.5px;font-weight:600;line-height:1.4;animation:toastIn .22s cubic-bezier(.2,.8,.2,1);box-shadow:0 8px 28px -8px #00000061}.toast span{flex:1}.toast-success{background:var(--green)}.toast-error{background:var(--red)}.toast-info{background:var(--pine)}.toast-dismiss{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;padding:0;display:grid}.toast-dismiss:hover{opacity:1}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.confirm-card{background:var(--card);border-radius:20px;gap:12px;width:min(400px,100vw - 40px);margin:auto;padding:28px;display:grid;box-shadow:0 24px 60px -20px #00000052}.confirm-icon-wrap{display:flex}.confirm-icon-destructive{color:var(--red)}.confirm-title{font-family:var(--disp);font-size:20px;font-weight:500}.confirm-message{color:var(--muted);font-size:14px;line-height:1.55}.confirm-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.btn-danger{background:var(--red);color:#fff;cursor:pointer;border:none;border-radius:11px;min-height:42px;padding:0 18px;font-size:13.5px;font-weight:700;transition:opacity .18s}.btn-danger:hover{opacity:.88}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.auth-split{grid-template-columns:480px 1fr;min-height:100vh;display:grid}.auth-brand-panel{background:var(--pine);flex-direction:column;justify-content:flex-end;padding:52px 48px;display:flex;position:relative;overflow:hidden}.auth-bloom{pointer-events:none;border-radius:999px;position:absolute}.auth-bloom-a{background:radial-gradient(circle,#c9a24e33,#0000 68%);width:500px;height:500px;top:-120px;right:-120px}.auth-bloom-b{background:radial-gradient(circle,#5e746359,#0000 70%);width:380px;height:380px;bottom:-80px;left:-60px}.auth-brand-logo{z-index:1;justify-content:flex-start;margin-bottom:14px;display:flex;position:relative}.auth-brand-tagline{z-index:1;color:#f7f4ee8c;max-width:300px;margin-top:12px;font-size:15px;line-height:1.5;position:relative}.auth-form-panel{background:var(--bone);justify-content:center;align-items:center;padding:40px 24px;display:flex}.auth-form-card{width:min(400px,100%)}.auth-form-head{margin-bottom:28px}.auth-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:11.5px;font-weight:700;display:block}.pw-toggle{color:var(--muted);cursor:pointer;background:0 0;border:none;place-items:center;padding:4px;display:grid;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.pw-toggle:hover{color:var(--ink)}.auth-sso-notice{background:var(--iris-soft);color:var(--iris-deep);padding:11px 14px}.auth-error,.auth-sso-notice{border-radius:11px;font-size:13px}.auth-error{background:var(--red-soft);color:var(--red);padding:10px 14px;font-weight:600}@media (max-width:768px){.auth-split{grid-template-columns:1fr}.auth-brand-panel{display:none}}.cmd-backdrop{z-index:8000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2f3d347a;justify-content:center;align-items:flex-start;padding-top:18vh;display:flex;position:fixed;inset:0}.cmd-panel{background:var(--card);border-radius:20px;width:min(600px,100vw - 32px);overflow:hidden;box-shadow:0 28px 72px -24px #0000006b}.cmd-input-row{border-bottom:1px solid var(--line-soft);align-items:center;gap:10px;padding:16px 18px;display:flex}.cmd-search-icon{color:var(--muted);flex-shrink:0}.cmd-input{color:var(--ink);font-size:16px;font-family:var(--ui);background:0 0;border:none;outline:none;flex:1}.cmd-input::placeholder{color:var(--faint)}.cmd-esc{font-size:11px;font-family:var(--mono);color:var(--muted);background:var(--sand);border:1px solid var(--line);cursor:pointer;border-radius:6px;flex-shrink:0;padding:3px 7px}.cmd-results{max-height:360px;padding:6px;list-style:none;overflow-y:auto}.cmd-result{cursor:pointer;border-radius:11px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:flex}.cmd-result.active{background:var(--iris-soft)}.cmd-result-icon{color:var(--muted);flex-shrink:0}.cmd-result-label{flex:1;font-weight:600}.cmd-result-sub{color:var(--muted);font-size:12px}.cmd-result-type{font-size:11px;font-family:var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.cmd-empty,.cmd-hint{text-align:center;color:var(--muted);padding:24px;font-size:13px}.week-view{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:16px;display:grid}.week-day-card{border:1px solid var(--line);background:var(--card);min-height:100px;color:var(--ink);border-radius:16px;padding:16px;text-decoration:none;transition:border-color .18s,box-shadow .18s;display:block;position:relative}.week-day-card:hover{border-color:var(--iris);box-shadow:var(--sh)}.week-day-today{border-color:var(--iris);background:var(--iris-soft)}.week-day-label{color:var(--muted);font-size:12px;font-weight:700}.week-day-count{font-family:var(--disp);margin-top:8px;font-size:32px;font-weight:500;line-height:1}.week-day-sub{color:var(--muted);margin-top:4px;font-size:11px}.week-today-dot{background:var(--iris);border-radius:50%;width:8px;height:8px;position:absolute;top:12px;right:12px}.btn-ghost-active{background:var(--iris-soft);color:var(--iris-deep);border-color:var(--iris)}.mini-cal{font-family:var(--ui)}.mini-cal-nav{justify-content:space-between;align-items:center;padding:8px 0 12px;font-size:14px;font-weight:700;display:flex}.mini-cal-nav button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;place-items:center;padding:4px 8px;display:grid}.mini-cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.mini-cal-dow{text-align:center;color:var(--muted);padding:4px 0;font-size:11px;font-weight:700}.mini-cal-day{aspect-ratio:1;cursor:pointer;color:var(--ink);background:0 0;border:none;border-radius:9px;place-items:center;font-size:13px;font-weight:600;transition:background .14s;display:grid}.mini-cal-day:hover:not(.disabled){background:var(--iris-soft)}.mini-cal-day.today{color:var(--iris-deep);font-weight:800}.mini-cal-day.selected{background:var(--pine);color:#fff}.mini-cal-day.disabled{color:var(--faint);cursor:not-allowed}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:64px 24px;display:flex}.empty-icon{background:var(--iris-soft);width:60px;height:60px;color:var(--iris-deep);border-radius:18px;place-items:center;margin-bottom:4px;display:grid}.empty-title{font-family:var(--disp);font-size:20px;font-weight:500}.empty-desc{max-width:380px;color:var(--muted);font-size:14px;line-height:1.55}.clients-page{padding:28px 32px 48px}.clients-header{align-items:center;gap:12px;margin-bottom:22px;display:flex}.clients-title{font-family:var(--disp);color:var(--ink);margin:0;font-size:26px;font-weight:500}.clients-count{color:var(--muted);background:var(--sand-soft);border:1px solid var(--sand);border-radius:99px;padding:2px 10px;font-size:12px;font-weight:600}.clients-toolbar{align-items:center;gap:10px;margin-bottom:14px;display:flex}.clients-search-wrap{flex:1;max-width:380px;position:relative}.clients-search-icon{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.clients-search{border:1px solid var(--line);background:var(--card);width:100%;color:var(--ink);border-radius:10px;outline:none;padding:8px 12px 8px 34px;font-size:13px}.clients-search:focus{border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-soft)}.clients-table{background:var(--card);border:1px solid var(--line-soft);border-radius:14px;overflow:hidden}.clients-table-head{border-bottom:1px solid var(--line-soft);background:var(--bone);grid-template-columns:minmax(180px,2fr) 130px 150px 110px 100px 90px 80px;gap:0;padding:0 20px;display:grid}.ct-col{letter-spacing:.06em;color:var(--muted);padding:11px 8px;font-size:11px;font-weight:700}.ct-client{padding-left:0}.ct-action,.ct-num,.ct-status{text-align:right}.ct-row{border-bottom:1px solid var(--line-soft);grid-template-columns:minmax(180px,2fr) 130px 150px 110px 100px 90px 80px;align-items:center;gap:0;padding:0 20px;transition:background .12s;display:grid}.ct-row:last-child{border-bottom:none}.ct-row:hover{background:var(--bone)}.ct-row .ct-col{color:var(--ink);font-size:13px}.ct-row .ct-contact,.ct-row .ct-date{color:var(--muted);font-size:12.5px}.ct-name-cell{color:inherit;align-items:center;gap:12px;padding-left:0;text-decoration:none;display:flex}.ct-avatar{background:linear-gradient(140deg,var(--blush),#d29b84);width:34px;height:34px;font-family:var(--disp);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:600;display:grid}.ct-name{color:var(--ink);font-size:13.5px;font-weight:600}.ct-name-cell:hover .ct-name{color:var(--sage)}.ct-row .ct-action,.ct-row .ct-num,.ct-row .ct-status{text-align:right}.clients-pagination{justify-content:center;align-items:center;gap:6px;margin-top:20px;display:flex}.clients-page-btn{width:32px;height:32px;color:var(--ink);background:var(--card);border:1px solid var(--line-soft);border-radius:8px;place-items:center;font-size:13px;font-weight:500;text-decoration:none;transition:background .12s;display:grid}.clients-page-btn:hover{background:var(--bone)}.clients-page-btn.active{background:var(--pine);color:#fff;border-color:var(--pine)}.clients-page-ellipsis{color:var(--muted);padding:0 4px;font-size:13px}.client-profile-page{padding:24px 32px 48px}.profile-breadcrumb{gap:6px;margin-bottom:20px;font-size:13px}.profile-breadcrumb,.profile-breadcrumb-back{color:var(--muted);align-items:center;display:flex}.profile-breadcrumb-back{gap:3px;font-weight:500;text-decoration:none}.profile-breadcrumb-back:hover{color:var(--ink)}.profile-breadcrumb-sep{color:var(--line)}.profile-breadcrumb-current{color:var(--ink);font-weight:500}.profile-header-card{background:var(--card);border:1px solid var(--line-soft);border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:0;padding:24px 28px;display:flex}.profile-header-identity{align-items:center;gap:18px;display:flex}.profile-avatar-lg{background:linear-gradient(140deg,var(--blush),#d29b84);width:72px;height:72px;font-family:var(--disp);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;font-size:22px;font-weight:600;display:grid}.profile-header-info{flex-direction:column;gap:8px;display:flex}.profile-name{font-family:var(--disp);color:var(--ink);margin:0;font-size:24px;font-weight:500}.profile-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.profile-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.profile-tabs{border-bottom:1px solid var(--line-soft);gap:0;margin:20px 0 24px;display:flex}.profile-tab{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 18px;font-size:13.5px;font-weight:500;text-decoration:none;transition:color .15s}.profile-tab:hover{color:var(--ink)}.profile-tab.active{color:var(--sage);border-bottom-color:var(--sage);font-weight:600}.overview-grid{grid-template-columns:280px 1fr;align-items:start;gap:16px;display:grid}.overview-contact-list{padding:8px 0 4px}.overview-contact-row{color:var(--ink);border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:10px 20px;font-size:13px;display:flex}.overview-contact-row:last-child{border-bottom:none}.overview-contact-icon{color:var(--muted);flex-shrink:0}.overview-stats-grid{grid-template-columns:1fr 1fr;gap:0;display:grid}.overview-stat{border-bottom:1px solid var(--line-soft);border-right:1px solid var(--line-soft);flex-direction:column;gap:6px;padding:18px 20px;display:flex}.overview-stat:nth-child(2n){border-right:none}.overview-stat:nth-last-child(-n+2){border-bottom:none}.overview-stat-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-top:4px;font-size:11px;font-weight:700}.overview-stat-value{color:var(--ink);font-size:20px;font-weight:600;font-family:var(--disp);line-height:1}.overview-appt-row{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:12px 20px;font-size:13px;display:flex}.overview-appt-row:last-child{border-bottom:none}.overview-appt-date{color:var(--muted);min-width:160px;font-size:12px}.overview-appt-service{color:var(--ink);flex:1;font-weight:500}@media (max-width:900px){.overview-grid{grid-template-columns:1fr}.profile-header-card{flex-direction:column;align-items:flex-start}.client-profile-page{padding:16px}}.settings-hub{flex:1;padding:28px 32px 56px;overflow-y:auto}.settings-hub-header{margin-bottom:24px}.settings-hub-title{font-family:var(--disp);color:var(--ink);margin:0 0 4px;font-size:26px;font-weight:500}.settings-hub-desc{color:var(--muted);margin:0;font-size:13px}.settings-status-row{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:28px;display:grid}.settings-sections{flex-direction:column;gap:32px;display:flex}.settings-section-head{margin-bottom:14px}.settings-section-title{color:var(--ink);margin:0 0 3px;font-size:15px;font-weight:700}.settings-section-sub{color:var(--muted);margin:0;font-size:12.5px}.settings-divider{border:none;border-top:1px solid var(--line-soft);margin:0}.settings-nav-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.settings-nav-card{background:var(--card);border:1px solid var(--line-soft);color:inherit;border-radius:12px;align-items:center;gap:14px;padding:16px 18px;text-decoration:none;transition:box-shadow .14s,border-color .14s,background .12s;display:flex}.settings-nav-card:hover{border-color:var(--sage-soft);background:var(--bone);box-shadow:0 2px 8px #0000000f}.settings-nav-body{flex:1;min-width:0}.settings-nav-title{color:var(--ink);margin-bottom:2px;font-size:13.5px;font-weight:600}.settings-nav-desc{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.settings-nav-right{flex-shrink:0;align-items:center;gap:6px;display:flex}.settings-nav-arrow{color:var(--muted);flex-shrink:0}.settings-nav-card:hover .settings-nav-arrow{color:var(--sage)}@media (max-width:1024px){.settings-nav-grid{grid-template-columns:repeat(2,1fr)}.settings-status-row{grid-template-columns:1fr}}@media (max-width:640px){.settings-hub{padding:16px}.settings-nav-grid{grid-template-columns:1fr}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.comm-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:2px;margin-bottom:20px;display:flex}.comm-tab{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px;font-size:13px;text-decoration:none}.comm-tab:hover{color:var(--ink)}.comm-tab.is-active{color:var(--ink);border-bottom-color:var(--pine);font-weight:600}.comm-tabs-divider{background:var(--line);width:1px;height:18px;margin:0 10px}.data-card-body{padding:16px 18px 18px}.staff-page{grid-template-columns:176px minmax(0,860px);align-items:start;gap:16px 28px;display:grid}.staff-page-head{grid-column:1/-1}.staff-nav{flex-direction:column;gap:2px;display:flex;position:sticky;top:16px}.staff-nav a{color:var(--muted);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:7px 12px;font-size:13px;text-decoration:none;display:flex}.staff-nav a:hover{background:var(--line-soft);color:var(--ink)}.staff-nav a[aria-current=true]{background:var(--card);color:var(--ink);box-shadow:var(--sh);font-weight:650}.staff-nav a:focus-visible{outline:2px solid var(--iris);outline-offset:1px}.staff-nav-dot{background:var(--amber);border-radius:50%;flex-shrink:0;width:7px;height:7px}.staff-sections>.data-card{scroll-margin-top:16px}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}.inp.inp-time{width:auto;padding:9px 10px}@media (max-width:900px){.staff-page{grid-template-columns:minmax(0,1fr)}.staff-nav{z-index:5;background:var(--bg);scrollbar-width:none;flex-direction:row;padding:8px 0;top:0;overflow-x:auto}.staff-nav::-webkit-scrollbar{display:none}.staff-nav a{white-space:nowrap}.staff-sections>.data-card{scroll-margin-top:64px}}@media (max-width:640px){.form-grid-2{grid-template-columns:minmax(0,1fr)}}.photo-pick:focus-within{outline:2px solid var(--iris);outline-offset:2px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}