:root{--ink:#19322f;--ink-soft:#4e625e;--paper:#fbf8f1;--canvas:#f2ede3;--white:#fffefd;--timber:#9a5d3f;--timber-dark:#72412e;--warm:#d98955;--sand:#e6d7bb;--sage:#6f8878;--sage-pale:#e5ece5;--ocean:#286c73;--ocean-pale:#dcecee;--alert:#a84737;--alert-pale:#f7e5df;--line:#ded7ca;--shadow:0 14px 36px #44352614;--shadow-raised:0 18px 42px #44352624;--shadow-active:0 0 0 4px #286c7324, 0 14px 30px #286c7326;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.2, .9, .25, 1.18);--radius-lg:26px;--radius-md:18px;--radius-sm:12px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Aptos,Segoe UI,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.55}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}button,a,label,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #286c7359}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.025em;line-height:1.14}h1{margin-bottom:.8rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4.5vw,3.65rem);font-weight:500}h2{margin-bottom:.45rem;font-size:clamp(1.25rem,2vw,1.65rem)}h3{margin-bottom:.35rem;font-size:1.1rem}p{color:var(--ink-soft)}small{color:var(--ink-soft);font-size:.82rem;line-height:1.4}.app-frame{min-height:100vh}.sidebar{z-index:40;color:#fff;background:#173a37;flex-direction:column;width:260px;padding:30px 18px 24px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand{align-items:center;gap:13px;padding:0 12px 28px;display:flex}.brand>span:last-child{flex-direction:column;line-height:1.1;display:flex}.brand strong{font-family:Georgia,serif;font-size:1.45rem;font-weight:500}.brand small{color:#ffffffad;letter-spacing:.12em;text-transform:uppercase;margin-top:5px;font-size:.78rem}.brand__mark{background:#e6d7bb;border-radius:50%;flex:none;justify-content:center;align-items:center;gap:3px;width:44px;height:44px;display:inline-flex}.brand__mark>span{border-left:2px solid var(--timber-dark);border-radius:50%;width:4px;height:20px;display:block;transform:rotate(12deg)}.brand__mark>span:nth-child(2){height:27px;transform:rotate(-7deg)}.brand__mark>span:nth-child(3){height:17px;transform:rotate(8deg)}.side-nav{flex-direction:column;gap:6px;display:flex}.side-nav button{color:#ffffffb8;text-align:left;cursor:pointer;width:100%;min-height:50px;transition:transform .22s var(--ease-out), background .22s ease, color .22s ease, box-shadow .22s ease;background:0 0;border:0;border-radius:13px;align-items:center;gap:14px;padding:12px 15px;display:flex;position:relative;overflow:hidden}.side-nav button:before{content:"";background:var(--warm);width:4px;transition:transform .22s var(--ease-spring);border-radius:4px;position:absolute;inset:9px auto 9px 5px;transform:scaleY(0)}.side-nav button svg{transition:transform .22s var(--ease-spring)}.side-nav button.is-active{color:#173a37;background:#f4e8d4;font-weight:700;transform:translate(4px);box-shadow:0 8px 24px #0000001f}.side-nav button.is-active:before{transform:scaleY(1)}.side-nav button.is-active svg{transform:scale(1.12)}.privacy-note{color:#fffc;align-items:center;gap:12px;margin-top:auto;padding:18px 13px 0;display:flex}.privacy-note>span:last-child{flex-direction:column;display:flex}.privacy-note strong{font-size:.87rem}.privacy-note small{color:#ffffff94}.privacy-leaf{background:#ffffff14;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;display:grid;position:relative}.sidebar-close{display:none}.app-main{min-width:0;min-height:100vh;margin-left:260px}.topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:30;background:#fbf8f1db;border-bottom:1px solid #75654c24;justify-content:space-between;align-items:center;gap:24px;height:82px;padding:0 clamp(24px,4vw,58px);display:flex;position:sticky;top:0}.topbar__context{flex-direction:column;display:flex}.topbar__context span{color:var(--timber);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:800}.topbar__context strong{font-size:.96rem}.topbar__actions{align-items:center;gap:10px;display:flex}.icon-button{border:1px solid var(--line);background:var(--white);cursor:pointer;width:44px;height:44px;transition:transform .2s var(--ease-spring), border-color .2s ease, box-shadow .2s ease, background .2s ease;border-radius:50%;place-items:center;display:inline-grid}.notice-button{position:relative}.notice-button>span{background:var(--alert);color:#fff;border:2px solid var(--paper);border-radius:9px;place-items:center;min-width:18px;height:18px;font-size:10px;font-weight:800;display:grid;position:absolute;top:-3px;right:-2px}.user-button{cursor:pointer;min-height:48px;transition:transform .2s var(--ease-spring), background .2s ease, box-shadow .2s ease;background:0 0;border:0;border-radius:25px;align-items:center;gap:10px;padding:4px 8px 4px 5px;display:flex}.user-button>span:first-child,.avatar{background:var(--sand);width:38px;height:38px;color:var(--timber-dark);border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:800;display:inline-grid}.user-button__name{text-align:left;flex-direction:column;min-width:90px;line-height:1.25;display:flex}.user-button__name small{font-size:.72rem}.popover-wrap{position:relative}.popover{border:1px solid var(--line);background:var(--white);z-index:70;transform-origin:100% 0;width:min(360px,100vw - 24px);animation:popover-in .2s var(--ease-out);border-radius:18px;padding:12px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 20px 50px #222a262e}.popover__title{justify-content:space-between;align-items:center;padding:7px 7px 10px;display:flex}.popover__title button{cursor:pointer;background:0 0;border:0}.notice-popover p{border-top:1px solid var(--line);color:var(--ink);flex-direction:column;margin:0;padding:11px;display:flex}.notice-popover small{margin-top:4px}.user-popover>strong,.user-popover>small{padding:4px 7px;display:block}.user-popover>small{margin-bottom:8px}.user-popover>button{text-align:left;cursor:pointer;width:100%;min-height:54px;transition:transform .18s var(--ease-out), background .18s ease, box-shadow .18s ease;background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;padding:7px;display:flex}.user-popover>button.is-active{background:var(--sage-pale);box-shadow:inset 3px 0 0 var(--sage)}.user-popover>button>span:first-child{background:var(--sand);border-radius:50%;place-items:center;width:34px;height:34px;font-size:.72rem;font-weight:800;display:grid}.user-popover>button>span:last-child{flex-direction:column;display:flex}.mobile-menu,.bottom-nav,.mobile-scrim{display:none}.page-content{width:100%;min-width:0;max-width:1480px;margin:0 auto;padding:clamp(30px,4vw,58px)}.page-stack{flex-direction:column;gap:34px;display:flex}.narrow-page{max-width:720px;margin:3vh auto}.eyebrow{color:var(--timber);text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;font-size:.72rem;font-weight:850;display:block}.welcome-row,.page-heading{justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.welcome-row>div,.page-heading>div{max-width:780px}.welcome-row p,.page-heading p{max-width:670px;margin-bottom:0;font-size:1.05rem}.page-heading:not(.with-action){display:block}.card{background:var(--white);border-radius:var(--radius-lg);min-width:0;max-width:100%;box-shadow:var(--shadow);border:1px solid #79654826;padding:clamp(22px,3vw,32px)}.card>*,.card-heading>*,.form-stack>*,.split-fields>*{min-width:0;max-width:100%}.card-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.card-heading h2{margin-bottom:0}.button{cursor:pointer;min-height:48px;transition:transform .22s var(--ease-spring), box-shadow .22s ease, background .22s ease, border-color .22s ease, color .22s ease;white-space:nowrap;isolation:isolate;border:1px solid #0000;border-radius:24px;justify-content:center;align-items:center;gap:9px;padding:11px 20px;font-weight:780;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.button:before{content:"";z-index:-1;transition:transform .48s var(--ease-out);background:linear-gradient(105deg,#0000 28%,#ffffff3d 48%,#0000 68%);position:absolute;inset:0;transform:translate(-125%)}.button svg{transition:transform .22s var(--ease-spring)}.button:active:not(:disabled){box-shadow:none;transform:translateY(1px)scale(.98)}.button:disabled{opacity:.48;cursor:not-allowed;filter:saturate(.5)}.button--primary{background:linear-gradient(145deg, #845039, var(--timber-dark));color:#fff;box-shadow:0 9px 20px #72412e3d,inset 0 1px #ffffff2e}.button--secondary{color:var(--ink);border-color:var(--line);background:linear-gradient(#fff,#fbf8f1);box-shadow:0 4px 12px #4435260f}.button--quiet{color:var(--ink-soft);background:0 0}.button--danger{background:linear-gradient(145deg, #bd5746, var(--alert));color:#fff;box-shadow:0 8px 18px #a8473733}.text-link,.danger-link,.review-welcome,.reset-demo{min-height:44px;color:var(--ocean);cursor:pointer;transition:color .18s ease, transform .18s var(--ease-out);background:0 0;border:0;align-items:center;gap:7px;padding:6px 0;font-weight:750;display:inline-flex;position:relative}.text-link:after,.danger-link:after,.review-welcome:after,.reset-demo:after{content:"";transform-origin:0;height:2px;transition:transform .2s var(--ease-out);background:currentColor;border-radius:2px;position:absolute;bottom:5px;left:0;right:0;transform:scaleX(0)}.danger-link{color:var(--alert)}.danger-link:disabled{opacity:.4;cursor:not-allowed}.status-pill{text-transform:capitalize;white-space:nowrap;border-radius:999px;align-items:center;padding:5px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.status-pill--good{background:var(--sage-pale);color:#315745}.status-pill--warm{color:#8a4d25;background:#f7eadb}.status-pill--alert{background:var(--alert-pale);color:var(--alert)}.status-pill--neutral{color:#5c635f;background:#efede8}.status-pill--ocean{background:var(--ocean-pale);color:var(--ocean)}.paused-banner,.admin-boundary{background:#faeadf;border:1px solid #e9c8b2;border-radius:17px;align-items:center;gap:14px;padding:16px 20px;display:flex}.paused-banner>div,.admin-boundary>span{flex-direction:column;flex:1;display:flex}.paused-banner span,.admin-boundary{color:var(--ink-soft)}.home-grid{grid-template-columns:1.3fr .9fr;gap:22px;display:grid}.next-booking-card{flex-direction:column;min-height:330px;display:flex}.booking-time{flex-direction:column;margin:auto 0 25px;display:flex}.booking-time>strong{font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,4.3rem);font-weight:500;line-height:1}.booking-time span{color:var(--ink-soft);margin-top:9px}.booking-facts{border-top:1px solid var(--line);flex-wrap:wrap;gap:20px;padding:17px 0;display:flex}.booking-facts span,.weather-facts span{color:var(--ink-soft);align-items:center;gap:7px;display:inline-flex}.weather-card{background:linear-gradient(145deg,#dbeaec 0%,#f8f8f3 65%);min-height:330px}.weather-card .card-heading>svg{color:var(--ocean)}.weather-now{flex-direction:column;margin:26px 0 20px;display:flex}.weather-now strong{font-family:Georgia,serif;font-size:4rem;font-weight:500;line-height:1}.weather-facts{flex-wrap:wrap;gap:15px;display:flex}.source-note{margin-top:19px;display:block}.preparation-card{background:#f6eee1;grid-column:1/-1;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;display:grid}.preparation-card__icon,.leaf-orb{color:#3e6b54;background:#dce8df;border-radius:50%;flex:none;place-items:center;width:58px;height:58px;display:inline-grid}.preparation-card h2{max-width:760px}.preparation-card p{margin-bottom:0}.owner-today-card,.recent-card{grid-column:1/-1}.owner-stats{grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0;display:grid}.owner-stats>div{background:var(--paper);border-radius:14px;flex-direction:column;padding:17px;display:flex}.owner-stats strong{font-family:Georgia,serif;font-size:2rem;font-weight:500}.issue-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:12px;padding:17px 0;display:flex}.issue-line>span{color:var(--ink-soft);flex-direction:column;display:flex}.issue-line strong{color:var(--ink)}.card-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.empty-inline{align-items:center;gap:15px;margin:auto 0;display:flex}.empty-inline p{margin:0}.first-use-home{flex-direction:column;gap:28px;max-width:980px;margin:2vh auto;display:flex}.first-use-hero{grid-template-columns:minmax(0,1.15fr) minmax(230px,.65fr);align-items:center;gap:clamp(24px,5vw,58px);display:grid}.first-use-intro{max-width:760px;padding:clamp(12px,3vw,34px) 0 8px}.first-use-intro h1{max-width:900px;font-size:clamp(2.7rem,6vw,5.1rem)}.first-use-intro p{max-width:680px;font-size:1.1rem}.first-use-photo{min-height:330px;box-shadow:var(--shadow);background:var(--sand);border-radius:28px;margin:0;position:relative;overflow:hidden}.first-use-photo img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.first-use-photo figcaption{color:#fff;background:#182d28d1;border-radius:999px;padding:7px 10px;font-size:.72rem;position:absolute;bottom:12px;left:12px}.first-step-card{background:linear-gradient(135deg,#f6eee1,#fffdf8);border-color:#915c3738;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(18px,3vw,32px);padding:clamp(24px,4vw,40px);display:grid}.first-step-number{background:var(--timber-dark);color:#fff;border-radius:50%;place-items:center;width:58px;height:58px;font-family:Georgia,serif;font-size:1.65rem;display:grid}.first-step-copy h2{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.35rem)}.first-step-copy p{max-width:620px;margin-bottom:0}.later-steps{padding-top:8px}.later-steps>div:first-child{margin-bottom:14px}.later-steps h2{margin-bottom:0}.later-step-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.later-step-card{border:1px solid var(--line);min-height:104px;color:var(--ink);text-align:left;cursor:pointer;background:#ffffff8c;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:18px 20px;display:grid}.later-step-card:hover{background:var(--white);border-color:#79654852}.later-step-card>svg:first-child{color:var(--timber)}.later-step-card>span{flex-direction:column;gap:4px;display:flex}.later-step-card small{color:var(--ink-soft)}.mini-phase-bar{border-radius:9px;width:min(420px,100%);height:9px;margin-top:13px;display:flex;overflow:hidden}.mini-phase-bar i.is-warm,.mini-phase-bar i.is-cool{background:#e9a15f}.mini-phase-bar i.is-sauna{background:#b64e43}.booking-time>small{margin-top:7px}.availability-manage-stack{gap:20px;display:grid}.availability-editor{gap:24px;display:grid}.availability-editor-help{background:linear-gradient(135deg, #eff8f8, var(--ocean-pale));color:var(--ocean);border:1px solid #b9d5d8;border-radius:16px;align-items:flex-start;gap:12px;padding:15px 17px;display:flex}.availability-editor-help>svg{flex:none;margin-top:2px}.availability-editor-help>span{flex-direction:column;gap:2px;display:flex}.availability-editor-help small{color:var(--ink-soft)}.availability-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.availability-editor--compact .availability-days{grid-template-columns:1fr}.availability-day-card{background:var(--white);border:1px solid #7965482e;border-radius:20px;min-width:0;padding:16px;transition:border-color .22s,background .22s,box-shadow .22s;box-shadow:0 8px 22px #4435260e}.availability-day-card.is-enabled{border-color:#286c7340}.availability-day-card.is-closed{background:#f4f1eb;border-style:dashed}.availability-day-card__header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;display:grid}.availability-day-letter{background:var(--sand);width:42px;height:42px;color:var(--timber-dark);transition:transform .22s var(--ease-spring), background .22s ease, color .22s ease;border-radius:13px;place-items:center;font-family:Georgia,serif;font-size:1.2rem;font-weight:700;display:grid}.is-enabled .availability-day-letter{background:var(--ocean-pale);color:var(--ocean)}.availability-day-name{flex-direction:column;min-width:0;display:flex}.availability-day-name strong{font-size:1.05rem}.availability-day-name small{animation:availability-state-in .22s var(--ease-out)}.availability-day-switch{border:1px solid var(--line);cursor:pointer;min-height:46px;transition:border-color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s var(--ease-spring);background:#fff;border-radius:24px;align-items:center;gap:9px;padding:6px 7px 6px 11px;display:flex}.availability-day-switch>span:first-child{text-align:right;max-width:86px;font-size:.72rem;font-weight:800;line-height:1.2}.availability-day-switch input{opacity:0;pointer-events:none;position:absolute}.availability-switch-track{background:#b9bbb6;border-radius:20px;width:48px;height:28px;padding:3px;transition:background .2s,box-shadow .2s;box-shadow:inset 0 1px 3px #20312e29}.availability-switch-track>span{width:22px;height:22px;transition:transform .22s var(--ease-spring);background:#fff;border-radius:50%;display:block;box-shadow:0 2px 6px #0003}.availability-day-switch input:checked+.availability-switch-track{background:var(--ocean);box-shadow:0 0 0 4px #286c731a,inset 0 1px 2px #00000014}.availability-day-switch input:checked+.availability-switch-track>span{transform:translate(20px)}.availability-day-switch:focus-within{outline-offset:3px;outline:3px solid #286c7359}.availability-time-controls{animation:availability-controls-in .28s var(--ease-out);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;margin-top:15px;display:grid}.availability-time-control{cursor:pointer;min-width:0;min-height:92px;transition:transform .2s var(--ease-spring), border-color .2s ease, box-shadow .2s ease, background .2s ease;background:linear-gradient(145deg,#fff,#f1f7f7);border:1px solid #c9d9d9;border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid;position:relative;overflow:hidden;box-shadow:0 5px 14px #286c7312}.availability-time-control:before{content:"";background:var(--ocean);width:5px;transition:transform .2s var(--ease-spring);position:absolute;inset:0 auto 0 0;transform:scaleY(.35)}.availability-time-control>input{z-index:3;opacity:0;cursor:pointer;border:0;width:100%;height:100%;position:absolute;inset:0}.availability-time-icon{background:var(--ocean-pale);width:42px;height:42px;color:var(--ocean);transition:transform .22s var(--ease-spring), background .2s ease, color .2s ease;border-radius:13px;place-items:center;display:grid}.availability-time-copy{flex-direction:column;min-width:0;line-height:1.25;display:flex}.availability-time-copy>small{color:var(--ocean);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:850}.availability-time-value{white-space:nowrap;animation:time-value-in .24s var(--ease-spring);margin:2px 0;font-family:Georgia,serif;font-size:1.25rem;font-weight:600}.availability-time-copy>span{color:var(--ink-soft);font-size:.68rem}.availability-time-edit{color:var(--timber);transition:transform .2s var(--ease-spring), color .2s ease}.availability-time-control:focus-within{border-color:var(--ocean);box-shadow:var(--shadow-active);background:#fff;outline:none;transform:translateY(-2px)}.availability-time-control:focus-within:before{transform:scaleY(1)}.availability-range-join{background:var(--sand);width:28px;height:28px;color:var(--timber-dark);border-radius:50%;place-items:center;font-size:.7rem;font-weight:850;display:grid}.availability-open-day{width:100%;min-height:72px;color:var(--ocean);cursor:pointer;transition:transform .2s var(--ease-spring), border-color .2s ease, background .2s ease, box-shadow .2s ease;background:#ffffffa3;border:1px dashed #286c7373;border-radius:15px;justify-content:center;align-items:center;gap:10px;margin-top:15px;padding:12px;display:flex}.availability-open-day>span{text-align:left;flex-direction:column;display:flex}.availability-open-day small{color:var(--ink-soft)}.transition-settings{background:var(--ocean-pale);border-radius:18px;padding:20px}.transition-settings>div:first-child{align-items:center;gap:10px;display:flex}.transition-settings>div:first-child>span{flex-direction:column;display:flex}.transition-fields{grid-template-columns:1fr 1fr;gap:16px;margin-top:18px;display:grid}.timing-stepper{background:#ffffffd1;border:1px solid #79654829;border-radius:18px;padding:16px;box-shadow:0 7px 18px #286c730f}.timing-stepper__heading{align-items:center;gap:9px;min-height:34px;display:flex}.timing-stepper__heading>span{border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.timing-stepper--warm .timing-stepper__heading>span{color:#a45d2e;background:#f9e3c8}.timing-stepper--cool .timing-stepper__heading>span{background:var(--ocean-pale);color:var(--ocean)}.timing-stepper__controls{grid-template-columns:64px minmax(92px,1fr) 64px;align-items:stretch;gap:10px;margin-top:14px;display:grid}.timing-stepper__controls button{cursor:pointer;min-width:64px;min-height:64px;transition:transform .18s var(--ease-spring), background .18s ease, border-color .18s ease, box-shadow .18s ease;border:1px solid #0000;border-radius:17px;place-items:center;display:grid}.timing-stepper--warm .timing-stepper__controls button{color:#854721;background:#f9e3c8;border-color:#ebc79e}.timing-stepper--cool .timing-stepper__controls button{background:var(--ocean-pale);color:var(--ocean);border-color:#bfd9dc}.timing-stepper__controls button:active:not(:disabled){transform:scale(.92)}.timing-stepper__controls button:disabled{opacity:.35;cursor:not-allowed;filter:grayscale(.35)}.timing-stepper__value{min-height:64px;color:var(--ink);background:#fff;border:2px solid #19322f1c;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex;box-shadow:inset 0 1px 3px #4435260f}.timing-stepper__value strong{animation:timing-value-pop .24s var(--ease-spring);font-family:Georgia,serif;font-size:2.2rem;font-weight:600}.timing-stepper__value small{margin-top:3px;font-size:.72rem}.timing-stepper__hint{text-align:center;margin-top:9px;display:block}.manual-timing-note{align-items:flex-start;gap:8px;margin:16px 0 0;font-size:.84rem;display:flex}.manual-timing-note svg{flex:none;margin-top:2px}.rolling-day{gap:16px;margin-top:20px;display:grid}.rolling-day-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.rolling-day-heading h2{margin:0}.timeline-zoom{align-items:center;gap:8px;display:flex}.timeline-zoom button,.timeline-controls>button{border:1px solid var(--line);min-height:42px;color:var(--ink);cursor:pointer;background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:5px;padding:7px 10px;display:inline-flex}.timeline-zoom button:disabled{opacity:.35}.timeline-zoom span{text-align:center;min-width:78px;font-size:.78rem;font-weight:800}.timeline-scroll{border:1px solid var(--line);background:linear-gradient(#fff,#f8f5ef);border-radius:18px;padding:0 12px 10px;overflow-x:auto}.timeline-track{height:142px;position:relative}.timeline-track:before{content:"";border-top:1px solid var(--line);position:absolute;top:31px;left:0;right:0}.timeline-tick{height:28px;color:var(--ink-soft);position:absolute;top:18px}.timeline-tick i{border-left:1px solid #bcb7ad;height:14px;display:block}.timeline-tick small{white-space:nowrap;font-size:.66rem;position:absolute;top:17px;left:0;transform:translate(-50%)}.timeline-tick.is-first small{transform:none}.timeline-tick.is-last small{transform:translate(-100%)}.timeline-block{border-radius:6px;align-items:center;min-width:2px;height:20px;padding:0 5px;display:flex;position:absolute;top:54px;overflow:hidden}.timeline-block small{white-space:nowrap;text-overflow:ellipsis;font-size:.62rem;overflow:hidden}.timeline-block--held{color:#4f4e4a;background:repeating-linear-gradient(135deg,#c9c4ba 0 5px,#e6e2da 5px 10px)}.timeline-block--booked{color:#fff;background:#6f7e79}.timeline-block--past{color:#fff;background:repeating-linear-gradient(135deg,#4f5755 0 6px,#747d79 6px 12px);border-right:3px solid #263c38}.timeline-plan{border:2px solid #542b1f33;border-radius:10px;min-width:3px;height:38px;display:flex;position:absolute;top:84px;overflow:hidden;box-shadow:0 5px 12px #4c2c211f}.timeline-phase{flex:none;height:100%}.timeline-phase small{display:none}.timeline-phase--warm{background:#e99b54}.timeline-phase--sauna{background:#b64e43}.timeline-phase--cool{background:#f0b56f}.timeline-controls{grid-template-columns:auto minmax(150px,220px) auto;justify-content:center;align-items:end;gap:10px;display:grid}.timeline-controls label{gap:4px;display:grid}.timeline-controls label span{color:var(--ink-soft);font-size:.72rem;font-weight:800}.timeline-controls input{border:1px solid var(--line);min-height:48px;color:var(--ink);font:inherit;background:#fff;border-radius:12px;padding:8px 12px;font-weight:800}.timeline-minute-slider{width:100%;accent-color:var(--timber)}.timeline-summary{background:var(--paper);border-radius:13px;flex-wrap:wrap;align-items:center;gap:12px 18px;padding:13px 15px;display:flex}.timeline-summary>span{align-items:center;gap:6px;font-size:.8rem;display:inline-flex}.timeline-summary i{border-radius:4px;width:12px;height:12px}.legend-warm,.legend-cool{background:#e99b54}.legend-sauna{background:#b64e43}.legend-past{background:repeating-linear-gradient(135deg,#4f5755 0 4px,#8d9692 4px 8px)}.rolling-day-note{color:var(--ink-soft);margin:0;font-size:.86rem}.rolling-day-empty{text-align:center;border:1px dashed var(--line);min-height:180px;color:var(--ink-soft);border-radius:18px;flex-direction:column;justify-content:center;align-items:center;display:flex}.rolling-day-empty--compact{min-height:110px;padding:18px}.confirm-phases{border-radius:10px;width:min(470px,100%);margin:13px 0 20px;display:flex;overflow:hidden}.confirm-phases span{color:#fff;text-align:center;flex:1;padding:8px 10px;font-size:.72rem;font-weight:800}.confirm-phases .is-warm,.confirm-phases .is-cool{background:#df914c}.confirm-phases .is-sauna{background:#a9483f}.controls-layout{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:20px;display:grid}.controls-photo-card{padding:0;overflow:hidden}.controls-photo-card img{object-fit:cover;width:100%;height:420px;display:block}.controls-photo-card>div{padding:24px}.control-plan-card{flex-direction:column;display:flex}.control-facts{gap:12px;margin:18px 0 24px;display:grid}.control-facts>span{background:var(--paper);border-radius:13px;grid-template-columns:auto 1fr;align-items:start;gap:10px;padding:14px;display:grid}.control-facts>span>span{flex-direction:column;gap:3px;display:flex}.control-plan-card>.button{align-self:flex-start;margin-top:auto}.booking-layout{max-width:1020px;margin:0 auto}.booking-heading{justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:28px;display:flex}.booking-heading p{margin-bottom:0}.step-dots{align-items:center;gap:7px;margin-top:12px;display:flex}.step-dots span{background:var(--line);border-radius:5px;width:30px;height:5px}.step-dots span.is-active{background:var(--timber)}.step-dots small{white-space:nowrap;margin-left:5px}.booking-form-card{padding:clamp(22px,4vw,40px)}.booking-step{min-height:430px}.duration-choice{flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:24px;display:flex}.duration-choice>span{margin-right:5px;font-weight:750}.duration-choice button,.choice-chips button,.purpose-grid button{border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:22px;min-height:44px;padding:9px 16px}.duration-choice button.is-selected,.choice-chips button.is-selected,.purpose-grid button.is-selected{background:var(--ink);border-color:var(--ink);color:#fff}.visit-window-note{background:var(--sage-pale);border-radius:11px;margin:-12px 0 20px;padding:11px 13px;font-size:.9rem}.date-strip{grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:26px;display:grid}.date-strip button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:88px;display:flex}.date-strip button strong{font-size:1.35rem}.date-strip button span,.date-strip button small{text-transform:uppercase;font-size:.72rem}.date-strip button.is-selected{background:var(--timber-dark);color:#fff;border-color:var(--timber-dark)}.date-strip button.is-selected small{color:#ffffffb3}.slot-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.slot-grid button{border:1px solid var(--line);background:var(--white);text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:12px;min-height:70px;padding:13px 15px;display:flex}.slot-grid button>span{flex-direction:column;flex:1;display:flex}.slot-grid small{color:var(--ocean);font-weight:700}.slot-grid em{color:var(--ink-soft);font-size:.75rem;font-style:normal}.slot-grid button:disabled{opacity:.65;cursor:not-allowed;background:#efede8}.slot-grid button:disabled small{color:var(--ink-soft)}.slot-grid button.is-selected{border:2px solid var(--ocean);background:var(--ocean-pale)}.buffer-note{margin:18px 0 0;font-size:.88rem}.booking-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:22px;padding-top:23px;display:flex}.format-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.format-grid>button{border:1px solid var(--line);background:var(--paper);text-align:left;cursor:pointer;border-radius:17px;flex-direction:column;align-items:flex-start;min-height:142px;padding:21px;display:flex}.format-grid>button>svg{color:var(--timber);margin-bottom:18px}.format-grid>button span{flex-direction:column;display:flex}.format-grid>button.is-selected{border:2px solid var(--ocean);background:var(--ocean-pale)}.format-grid>button:disabled{opacity:.45;cursor:not-allowed}.member-picker{gap:9px;margin-top:22px;display:grid}.member-picker>span{font-weight:750}.member-picker label{border:1px solid var(--line);cursor:pointer;border-radius:14px;align-items:center;gap:11px;padding:10px 13px;display:flex}.member-picker label.is-selected{border-color:var(--ocean);background:var(--ocean-pale)}.member-picker label>span:last-child{flex-direction:column;display:flex}.member-picker input{width:18px;height:18px}.open-session-note,.invite-boundary{background:var(--ocean-pale);border-radius:14px;align-items:center;gap:12px;margin-bottom:18px;padding:15px;display:flex}.open-session-note>span{flex-direction:column;display:flex}.capacity-line{background:var(--paper);border-radius:14px;align-items:center;gap:12px;margin-top:22px;padding:16px;display:flex}.capacity-line>span:nth-child(2){flex-direction:column;flex:1;display:flex}.capacity-dots{gap:6px;display:flex}.capacity-dots i{border:2px solid var(--sage);border-radius:50%;width:18px;height:18px}.capacity-dots i.is-filled{background:var(--sage)}.toggle-row{cursor:pointer;grid-template-columns:1fr auto auto;align-items:center;gap:12px;min-height:64px;padding:12px 0;display:grid}.toggle-row>span:first-child{flex-direction:column;display:flex}.toggle-row input{opacity:0;position:absolute}.toggle-track{background:#c9c6bd;border-radius:20px;width:48px;height:28px;padding:3px;transition:all .18s}.toggle-track span{background:#fff;border-radius:50%;width:22px;height:22px;transition:all .18s;display:block;box-shadow:0 2px 5px #0003}.toggle-row input:checked+.toggle-track{background:var(--ocean)}.toggle-row input:checked+.toggle-track span{transform:translate(20px)}.choice-field{border:0;margin:0;padding:0}.choice-field legend,.field>span{margin-bottom:9px;font-weight:750}.choice-field legend em,.field em{color:var(--ink-soft);font-style:normal;font-weight:400}.choice-chips{flex-wrap:wrap;gap:9px;display:flex}.choice-field>small{margin-top:9px;display:block}.form-stack{flex-direction:column;gap:21px;min-width:0;max-width:100%;display:flex}.field{flex-direction:column;width:100%;min-width:0;max-width:100%;display:flex}.field input,.field textarea,.field select{width:100%;min-width:0;max-width:100%;min-inline-size:0;max-inline-size:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #cfc8bb;border-radius:12px;padding:11px 13px;display:block}.field input[type=date],.field input[type=time]{text-align:center;inline-size:100%;overflow:hidden}@supports (-webkit-touch-callout:none){.field input[type=date],.field input[type=time]{padding-inline:0}.field input[type=date]::-webkit-date-and-time-value{text-align:center;width:100%;min-width:0;margin:0}.field input[type=time]::-webkit-date-and-time-value{text-align:center;width:100%;min-width:0;margin:0}.field input[type=date]::-webkit-datetime-edit{min-width:0;padding:0}.field input[type=time]::-webkit-datetime-edit{min-width:0;padding:0}}.field textarea{resize:vertical}.field small{margin-top:6px}.range-field{grid-template-columns:1fr 70px;align-items:center;gap:15px;display:grid}.range-field input{accent-color:var(--timber);border:0;padding:0}.range-field strong{text-align:right;font-family:Georgia,serif;font-size:1.6rem}.planning-profile{border:1px solid var(--line);background:var(--paper);border-radius:16px;padding:17px}.planning-profile>div:first-child{align-items:flex-start;gap:10px;margin-bottom:15px;display:flex}.planning-profile>div:first-child>span{flex-direction:column;display:flex}.planning-profile>p{margin:14px 0 0;font-size:.9rem}.shared-plan-check{border:1px solid var(--line);background:var(--paper);border-radius:16px;flex-direction:column;gap:15px;padding:18px;display:flex}.shared-plan-check--matched{background:var(--sage-pale);border-color:#bfd0c2}.shared-plan-check--adjust{background:#f8ead9;border-color:#e4c6a2}.shared-plan-check__heading{align-items:flex-start;gap:10px;display:flex}.shared-plan-check__heading>span{flex-direction:column;display:flex}.shared-participant-checks{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.shared-participant-checks>span{background:#ffffff9e;border-radius:11px;grid-template-columns:auto 1fr;align-items:center;column-gap:7px;padding:10px;display:grid}.shared-participant-checks small{grid-column:2}.pattern-dot{background:var(--sand);border-radius:50%;width:10px;height:10px}.pattern-dot--matched{background:var(--sage)}.pattern-dot--adjust{background:var(--warm)}.purpose-grid{flex-wrap:wrap;gap:9px;display:flex}.confirm-step{grid-template-columns:100px 1fr;gap:30px;display:grid}.confirm-date,.session-date{background:var(--timber-dark);color:#fff;border-radius:17px;flex-direction:column;justify-content:center;align-self:start;align-items:center;min-height:125px;display:flex}.confirm-date strong,.session-date strong{font-family:Georgia,serif;font-size:2.2rem;font-weight:500}.confirm-date span,.confirm-date small,.session-date span,.session-date small{color:#ffffffbd;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.confirm-time{font-family:Georgia,serif;font-size:2rem;font-weight:500}.confirm-main dl{margin-top:24px}.confirm-main dl>div{border-top:1px solid var(--line);grid-template-columns:130px 1fr;padding:12px 0;display:grid}.confirm-main dt{color:var(--ink-soft)}.confirm-main dd{margin:0;font-weight:700}.confirm-reminder{background:var(--sage-pale);border-radius:14px;grid-column:1/-1;gap:12px;padding:17px;display:flex}.confirm-reminder span{flex-direction:column;display:flex}.form-errors{background:var(--alert-pale);border:1px solid #e5bdb4;border-radius:12px;margin-top:18px;padding:14px 17px}.form-errors p{color:var(--alert);margin:0;font-weight:650}.booking-success{text-align:center;flex-direction:column;align-items:center;padding:clamp(30px,6vw,60px);display:flex}.success-mark{background:var(--sage-pale);color:#3d6c52;border-radius:50%;place-items:center;width:68px;height:68px;margin-bottom:20px;display:grid}.booking-success h1{font-size:clamp(2rem,5vw,3rem)}.success-time{color:var(--timber-dark);font-family:Georgia,serif;font-size:1.55rem}.booking-success .gentle-panel{text-align:left;width:100%;margin:14px 0 23px}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:14px;display:flex}.section-heading h2,.section-heading p{margin-bottom:0}.session-list{gap:12px;display:grid}.upcoming-session{grid-template-columns:82px 1fr auto;align-items:center;gap:22px;padding:20px 24px;display:grid}.session-date{min-height:94px}.session-date strong{font-size:1.75rem}.session-summary>div{align-items:center;gap:10px;display:flex}.session-summary h3{margin:0;font-size:1.25rem}.session-summary p,.session-summary>span{color:var(--ink-soft);align-items:center;gap:7px;margin:5px 0 0;display:flex}.session-actions{flex-direction:column;gap:4px;display:flex}.session-start-control{flex-direction:column;gap:6px;width:210px;max-width:100%;display:flex}.session-start-control .button{width:100%}.session-start-control small{text-align:center;color:var(--ink-soft);overflow-wrap:anywhere}.session-start-control small.is-open{color:var(--ocean);font-weight:700}.session-window-warning{background:var(--sand);color:var(--ink-soft);border-radius:12px;margin:16px 0 0;padding:11px 13px}.session-actions>button:last-child{cursor:pointer;min-height:42px;color:var(--ink-soft);background:0 0;border:0;justify-content:center;align-items:center;gap:6px;display:flex}.history-grid{grid-template-columns:repeat(2,1fr);gap:15px;display:grid}.history-card>div:first-child{align-items:center;gap:10px;display:flex}.history-card>div:first-child>span:last-child{flex-direction:column;display:flex}.history-icon{background:var(--sage-pale);border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.comfort-line{justify-content:space-between;align-items:center;margin:16px 0;display:flex}.comfort-line i{background:#ddd8ce;border-radius:50%;width:11px;height:11px;margin-left:4px;display:inline-block}.comfort-line i.is-filled{background:var(--sage)}.history-card blockquote{border-left:3px solid var(--sand);color:var(--ink-soft);margin:14px 0;padding-left:14px}.empty-card{text-align:center;flex-direction:column;align-items:center;padding:40px;display:flex}.empty-card .leaf-orb{margin-bottom:13px}.muted-copy{padding:20px 0}.dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#112522a6;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.dialog{background:var(--paper);border-radius:25px;width:min(570px,100%);max-height:calc(100vh - 40px);padding:clamp(22px,4vw,34px);overflow-y:auto;box-shadow:0 30px 80px #00000047}.dialog--wide{width:min(980px,100%)}.dialog__header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.dialog__header h2{margin:0}.dialog-intro{font-size:1.02rem}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.welcome-mark{background:var(--alert-pale);width:54px;height:54px;color:var(--timber);border-radius:50%;place-items:center;margin-bottom:16px;display:grid}.gentle-panel{background:var(--sage-pale);border-radius:14px;flex-direction:column;gap:9px;padding:16px;display:flex}.check-line{color:var(--ink-soft);align-items:flex-start;gap:9px;display:flex}.check-line>span:first-child{color:#315745;background:#c9ddce;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.welcome-rules{border:1px solid var(--line);background:#fff;border-radius:12px}.welcome-rules summary{cursor:pointer;align-items:center;min-height:48px;padding:11px 14px;font-weight:750;display:flex}.welcome-rules ol{color:var(--ink-soft);margin:0;padding:0 30px 15px 42px}.welcome-rules li{margin-bottom:6px}.consent-check{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.consent-check input{width:21px;height:21px;accent-color:var(--ocean);margin-top:2px}.consent-check span{flex-direction:column;display:flex}.owner-rule-builder{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;gap:18px;padding:20px;display:flex}.owner-rule-builder__heading{align-items:flex-start;gap:12px;display:flex}.owner-rule-builder__heading h3{margin-bottom:5px}.owner-rule-builder__heading p{margin-bottom:0}.rule-idea-icon{background:var(--ocean-pale);width:38px;height:38px;color:var(--ocean);border-radius:50%;flex:none;place-items:center;display:grid}.rule-suggestions{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.rule-suggestions>strong{grid-column:1/-1;align-items:center;gap:6px;font-size:.9rem;display:flex}.rule-suggestions button{border:1px solid var(--line);background:var(--paper);text-align:left;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 12px;display:flex}.rule-suggestions button:hover{border-color:var(--ocean);background:var(--ocean-pale)}.rule-suggestions button small{color:var(--ocean);white-space:nowrap;align-items:center;gap:3px;font-weight:800;display:flex}.rule-suggestions button.is-added{background:var(--sage-pale);cursor:default;border-color:#bfd0c2}.rule-suggestions button.is-added small{color:#315745}.rule-empty-note{background:var(--ocean-pale);color:var(--ink-soft);border-radius:13px;padding:15px}.check-layout{grid-template-columns:1.45fr .75fr;gap:25px;display:grid}.feeling-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.feeling-grid button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:12px;min-height:48px;padding:10px 12px}.feeling-grid button.is-selected{background:var(--ocean-pale);border:2px solid var(--ocean)}.flag-list{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.flag-list label{border:1px solid var(--line);cursor:pointer;border-radius:10px;align-items:center;gap:7px;min-height:44px;padding:9px;display:flex}.flag-list label.is-selected{background:var(--sage-pale);border-color:var(--sage)}.flag-list input{width:17px;height:17px}.guidance-panel{border-radius:17px;flex-direction:column;align-self:start;gap:10px;padding:22px;display:flex}.guidance-panel>span{flex-direction:column;gap:6px;display:flex}.guidance-panel--go{background:var(--sage-pale);color:#315745}.guidance-panel--pause{color:#7f4a28;background:#f8ead9}.guidance-panel--stop{background:var(--alert-pale);color:var(--alert)}.session-mode{text-align:center;flex-direction:column;align-items:stretch;display:flex}.session-steam{justify-content:center;align-items:center;gap:7px;height:64px;display:flex}.session-steam i{border-left:3px solid var(--warm);border-radius:50%;width:7px;height:44px;transform:rotate(8deg)}.session-steam i:nth-child(2){height:58px;transform:rotate(-7deg)}.elapsed-time{font-family:Georgia,serif;font-size:clamp(4rem,12vw,6rem);font-weight:500;line-height:1}.session-people{color:var(--ink-soft);justify-content:center;align-items:center;gap:8px;margin-bottom:16px;display:flex}.midway-note{background:var(--ocean-pale);text-align:left;border-radius:13px;gap:10px;margin-bottom:18px;padding:14px;display:flex}.session-mode .button{width:100%;margin-top:8px}.unwell-button{min-height:50px;color:var(--alert);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;margin-top:8px;font-weight:800;display:flex}.emergency-panel{text-align:center;background:var(--alert-pale);color:var(--alert);border-radius:17px;padding:20px}.emergency-panel h3{color:var(--alert)}.emergency-panel ol{text-align:left;max-width:330px;margin:12px auto 0}.emergency-details{gap:9px;margin:18px 0;display:grid}.emergency-details span{border:1px solid var(--line);border-radius:11px;flex-direction:column;padding:12px;display:flex}.emergency-call{border-radius:12px;width:100%}.fine-print{text-align:center;margin:10px 0;font-size:.85rem}.reflection-grid{grid-template-columns:1fr 1fr;gap:28px;display:grid}.rating-row{justify-content:space-between;align-items:center;gap:15px;display:flex}.rating-buttons{gap:5px;display:flex}.rating-buttons button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;width:37px;height:37px}.rating-buttons button.is-selected{background:var(--ocean);color:#fff;border-color:var(--ocean)}.flag-list.compact{grid-template-columns:repeat(2,1fr)}.privacy-explainer,.privacy-boundary,.guide-note{background:var(--sage-pale);border-radius:13px;gap:11px;padding:15px;display:flex}.privacy-explainer span{flex-direction:column;display:flex}.guide-intro-card{background:linear-gradient(110deg,#f3e6d3,#fcfaf6);align-items:center;gap:20px;display:flex}.guide-intro-icon{width:64px;height:64px;color:var(--timber-dark);background:#fff9;border-radius:50%;flex:none;place-items:center;display:grid}.guide-intro-card p{margin-bottom:0}.guide-quick-card{background:linear-gradient(125deg,#fffefd,#f6ede0)}.guide-quick-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.guide-quick-steps article{background:#ffffffb8;border:1px solid #9a5d3f2e;border-radius:14px;align-items:flex-start;gap:10px;min-width:0;padding:13px;display:flex}.guide-quick-steps article>span{background:var(--timber-dark);color:#fff;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-weight:850;display:grid}.guide-quick-steps article>div{flex-direction:column;gap:4px;min-width:0;display:flex}.guide-safety-note{background:var(--alert-pale);color:var(--alert);border:1px solid #e0b7aa;border-radius:15px;align-items:flex-start;gap:12px;padding:17px 19px;display:flex}.guide-safety-note span{color:var(--ink-soft);flex-direction:column;display:flex}.guide-layout{grid-template-columns:minmax(0,1.5fr) minmax(280px,.6fr);align-items:start;gap:24px;display:grid}.accordion-list{gap:10px;display:grid}.accordion-list details{background:var(--white);border:1px solid var(--line);border-radius:16px;overflow:hidden}.accordion-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:15px;min-height:78px;padding:15px 20px;list-style:none;display:flex}.accordion-list summary::-webkit-details-marker{display:none}.accordion-list summary>span{flex-direction:column;display:flex}.accordion-list summary svg{transition:transform .2s}.accordion-list details[open] summary svg{transform:rotate(180deg)}.accordion-list details>div{padding:2px 20px 18px}.accordion-list details>div p{margin-bottom:9px}.guide-instructions{counter-reset:guide-step;gap:9px;display:grid}.guide-instructions p{grid-template-columns:28px 1fr;align-items:start;gap:9px;display:grid;margin:0!important}.guide-instructions p>span{background:var(--ocean-pale);width:25px;height:25px;color:var(--ocean);border-radius:50%;place-items:center;font-size:.76rem;font-weight:850;display:grid}.guide-aside{gap:15px;display:grid;position:sticky;top:110px}.guide-aside .card>svg{color:var(--timber);margin-bottom:13px}.guide-aside a{min-height:42px;color:var(--ocean);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;font-weight:700;text-decoration:none;display:flex}.guide-aside .card>small{margin-top:12px;display:block}.after-use-card p{align-items:center;gap:8px;margin:8px 0;display:flex}.after-use-card p svg{color:var(--sage)}.controller-reminder{background:#fffaf1;border-color:#dcbf9f}.guide-note p,.privacy-boundary p{margin:0}.profile-layout{grid-template-columns:minmax(0,1.5fr) minmax(290px,.65fr);align-items:start;gap:22px;display:grid}.profile-main,.profile-aside{gap:18px;display:grid}.profile-aside{position:sticky;top:110px}.profile-card{background:linear-gradient(120deg,#f7ecdc,#fffefd);align-items:center;gap:18px;display:flex}.profile-avatar{background:var(--timber-dark);color:#fff;border-radius:50%;flex:none;place-items:center;width:72px;height:72px;font-family:Georgia,serif;font-size:1.6rem;display:grid}.profile-avatar.small{width:48px;height:48px;font-family:inherit;font-size:.85rem}.profile-identity{flex:1}.profile-identity>div{align-items:center;gap:10px;display:flex}.profile-identity h2{margin:0}.profile-identity p{align-items:center;gap:7px;margin:5px 0 0;display:flex}.inline-form{grid-template-columns:1fr auto;align-items:end;gap:12px;margin-top:18px;display:grid}.planning-profile-summary{background:var(--ocean-pale);color:var(--ink-soft);border-radius:12px;flex-direction:column;gap:3px;margin:15px 0;padding:13px;display:flex}.planning-profile-summary button{min-height:42px;color:var(--ocean);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:7px 0 0;font-weight:800}.usual-plan-card{background:linear-gradient(150deg,#fffefd,#fbf4e8);border-color:#d8c3a6}.plan-duration-chips button{border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:86px;min-height:64px;display:flex}.plan-duration-chips button strong{font-family:Georgia,serif;font-size:1.35rem;font-weight:600;line-height:1}.plan-duration-chips button small{color:inherit}.temperature-stepper{grid-template-columns:58px minmax(120px,1fr) 58px;align-items:stretch;gap:10px;max-width:330px;display:grid}.temperature-stepper button{border:1px solid var(--line);background:var(--white);min-height:58px;color:var(--ocean);cursor:pointer;transition:transform .2s var(--ease-spring), border-color .2s ease, box-shadow .2s ease;border-radius:16px;place-items:center;display:grid}.temperature-stepper button:disabled{opacity:.4;cursor:not-allowed}.temperature-stepper output{background:var(--ink);color:#fff;border-radius:16px;justify-content:center;align-items:baseline;gap:4px;min-height:58px;padding:10px;font-family:Georgia,serif;font-size:2rem;line-height:1;display:flex}.temperature-stepper output small{color:#ffffffc2;font-family:inherit;font-size:1rem}.temperature-range{width:100%;min-height:46px;accent-color:var(--timber);margin-top:8px}.plan-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.plan-option-grid.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.plan-option-grid button{border:1px solid var(--line);background:var(--white);min-height:82px;color:var(--ink);text-align:left;cursor:pointer;transition:transform .2s var(--ease-spring), border-color .2s ease, background .2s ease, box-shadow .2s ease;border-radius:16px;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;padding:14px 16px;display:flex}.plan-option-grid button small{color:var(--ink-soft);font-weight:450;line-height:1.35}.plan-option-grid button.is-selected{border-color:var(--ocean);background:var(--ocean-pale);transform:translateY(-2px);box-shadow:0 0 0 3px #286c731f}.plan-option-grid button.is-selected:after{content:"Selected";color:var(--ocean);text-transform:uppercase;letter-spacing:.06em;margin-top:3px;font-size:.72rem;font-weight:850}.diary-insights-card{background:linear-gradient(145deg,#fffefd,#f2f8f4);border-color:#bed5ca}.insight-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0;display:grid}.insight-stats>span{background:#ffffffc7;border:1px solid #30665124;border-radius:14px;flex-direction:column;min-width:0;padding:14px;display:flex}.insight-stats strong{font-family:Georgia,serif;font-size:1.55rem;font-weight:500}.insight-stats small{color:var(--ink-soft)}.insight-list{gap:8px;margin-bottom:15px;display:grid}.insight-list p{background:var(--white);color:var(--ink-soft);border-radius:12px;align-items:flex-start;gap:9px;margin:0;padding:11px 13px;display:flex}.insight-list svg{color:var(--sage);flex:none;margin-top:2px}.insight-empty,.insight-privacy{align-items:flex-start;gap:10px;display:flex}.insight-empty{background:var(--white);border-radius:14px;margin:15px 0;padding:15px}.insight-empty>span{flex-direction:column;display:flex}.insight-empty svg,.insight-privacy svg{color:var(--sage);flex:none}.insight-privacy{color:var(--ink-soft);margin:12px 0 16px;font-size:.86rem}.diary-insights-card>.button{width:100%}.plan-at-glance>strong{color:var(--timber-dark);margin:8px 0 4px;font-family:Georgia,serif;font-size:1.7rem;font-weight:500;display:block}.plan-at-glance>p{margin:0 0 8px}.private-note-card{background:linear-gradient(145deg,#fffefd,#f4f8f4);border-color:#cbd8ce}.shared-profile-card{border-color:#bfd6d8}.shared-profile-fields{background:var(--ocean-pale);border-radius:14px;gap:12px;margin:4px 0 17px;padding:15px;display:grid}.house-rule-list{color:var(--ink-soft);padding-left:24px}.house-rule-list li{margin-bottom:9px;padding-left:4px}.profile-aside .card>svg{color:var(--timber);margin-bottom:13px}.data-count{border-top:1px solid var(--line);align-items:baseline;gap:8px;padding-top:12px;display:flex}.data-count strong{font-family:Georgia,serif;font-size:2rem;font-weight:500}.profile-aside .button{width:100%}.profile-aside .danger-link{justify-content:center;width:100%;margin-top:5px}.review-welcome,.reset-demo{color:var(--ink-soft);justify-content:center}.circle-boundary,.circle-result{background:var(--ocean-pale);color:var(--ink-soft);border:1px solid #bfd6d8;border-radius:15px;align-items:center;gap:12px;padding:16px 18px;display:flex}.circle-boundary span{flex-direction:column;display:flex}.connection-card{background:linear-gradient(125deg,#fffefd,#f4ede1)}.connection-card>.button{margin-top:5px}.invite-link-box{gap:10px;display:grid}.connection-demo-note{max-width:780px;margin-top:14px;display:block}.incoming-invite-card{background:var(--sage-pale);border-color:#b9d5c3;justify-content:space-between;align-items:center;gap:20px;display:flex}.incoming-invite-card>div{align-items:flex-start;gap:13px;display:flex}.incoming-invite-card h2,.incoming-invite-card p{margin-bottom:3px}.circle-layout{grid-template-columns:minmax(300px,.82fr) minmax(0,1.35fr);align-items:start;gap:20px;display:grid}.circle-directory{gap:10px;display:grid}.circle-directory .section-heading{margin-bottom:2px}.circle-room-list{background:#eee7dc;border-radius:15px;gap:7px;margin-bottom:10px;padding:14px;display:grid}.circle-room-list>button{text-align:left;cursor:pointer;background:#ffffffb8;border:1px solid #0000;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:10px;min-height:54px;padding:9px 11px;display:grid}.circle-room-list>button>span{flex-direction:column;min-width:0;display:flex}.circle-room-list>button>span strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.circle-room-list>button.is-selected{border-color:var(--ocean);background:var(--white);box-shadow:0 0 0 3px #286c731a}.circle-member-card{border:1px solid var(--line);background:var(--white);text-align:left;cursor:pointer;width:100%;min-height:92px;transition:transform .2s var(--ease-spring), border-color .2s ease, box-shadow .2s ease;border-radius:17px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid;box-shadow:0 7px 20px #4435260d}.circle-member-card.is-selected{border-color:var(--ocean);box-shadow:var(--shadow-active);background:#f4fbfb;transform:translateY(-2px)}.circle-member-card:disabled{opacity:.48;cursor:not-allowed}.circle-member-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.circle-member-copy>span:first-child{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.circle-member-copy p{margin:3px 0 0;font-size:.88rem}.circle-select-mark{color:var(--ocean)}.circle-empty{text-align:center;flex-direction:column;align-items:center;display:flex}.circle-chat-card{flex-direction:column;min-height:540px;padding:0;display:flex;overflow:hidden}.chat-heading{border-bottom:1px solid var(--line);background:#faf5ec;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:80px;padding:15px 18px;display:grid}.chat-heading>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.chat-heading>span:nth-child(2) strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chat-avatars{display:flex}.chat-avatars .profile-avatar+.profile-avatar{margin-left:-13px;box-shadow:0 0 0 3px #faf5ec}.chat-thread{background:#f8f5ef;flex-direction:column;flex:1;gap:10px;min-height:300px;max-height:460px;padding:20px;display:flex;overflow-y:auto}.chat-bubble{background:var(--white);border-radius:4px 16px 16px;align-self:flex-start;max-width:min(82%,520px);padding:11px 14px;box-shadow:0 4px 13px #44352614}.chat-bubble.is-mine{background:var(--ocean-pale);border-radius:16px 4px 16px 16px;align-self:flex-end}.chat-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0}.chat-bubble small{text-align:right;display:block}.chat-empty,.chat-placeholder{text-align:center;max-width:420px;color:var(--ink-soft);margin:auto;padding:30px}.chat-empty svg,.chat-placeholder svg{color:var(--timber)}.chat-placeholder small{margin-top:14px;display:block}.chat-composer{border-top:1px solid var(--line);background:var(--white);grid-template-columns:1fr auto;align-items:end;gap:12px;padding:15px 18px;display:grid}.chat-composer textarea{resize:none}.manage-heading__actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.admin-boundary{background:var(--ocean-pale);border-color:#b9d5d8}.manage-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;width:100%;min-width:0;display:grid}.manage-tabs button{text-align:center;min-width:0;min-height:48px;color:var(--ink-soft);cursor:pointer;white-space:normal;background:0 0;border:0;border-bottom:3px solid #0000;padding:10px 8px;font-weight:750;line-height:1.2}.manage-tabs button.is-active{color:var(--ink);border-bottom-color:var(--timber)}.metric-grid{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.metric-grid .card{flex-direction:column;padding:20px;display:flex}.metric-icon{background:var(--sage-pale);color:#466a55;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.metric-icon svg{width:19px}.metric-grid strong{margin-top:14px;font-family:Georgia,serif;font-size:2.2rem;font-weight:500}.metric-grid span:last-child{color:var(--ink-soft);font-size:.85rem}.manage-two-column,.rules-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;margin-top:18px;display:grid}.approval-list{gap:8px;margin-top:18px;display:grid}.approval-list>div{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 0;display:grid}.approval-list>div>span:nth-child(2){flex-direction:column;display:flex}.privacy-list{border-top:1px solid var(--line);flex-direction:column;gap:9px;padding-top:14px;display:flex}.privacy-list span{align-items:center;gap:8px;display:flex}.section-heading.with-action{align-items:center}.access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.access-card{padding:22px}.access-card.is-muted{opacity:.72}.access-card__top{grid-template-columns:auto 1fr auto;align-items:center;gap:11px;display:grid}.access-card__top>span:nth-child(2){flex-direction:column;display:flex}.access-role{align-items:center;gap:9px;margin:18px 0 7px;display:flex}.access-role>span{flex-direction:column;display:flex}.admin-tag{background:var(--ocean-pale);color:var(--ocean);border-radius:8px;align-items:center;gap:7px;padding:7px 10px;font-size:.78rem;font-weight:750;display:inline-flex}.access-toggles{border-top:1px solid var(--line);margin-top:12px}.access-toggles .toggle-row{border-bottom:1px solid var(--line)}.owner-private-note{background:#f6f1e7;border-radius:10px;gap:8px;margin:14px 0 0;padding:11px;display:flex}.owner-private-note>span{flex-direction:column;display:flex}.access-actions{justify-content:flex-end;gap:18px;margin-top:13px;display:flex}.access-actions button{cursor:pointer;min-height:40px;color:var(--ink-soft);background:0 0;border:0;align-items:center;gap:7px;display:flex}.split-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.blackout-list{margin-top:15px;display:grid}.blackout-list>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:63px;display:flex}.blackout-list span{flex-direction:column;display:flex}.blackout-list button{width:42px;height:42px;color:var(--alert);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.planning-calendar-card{min-width:0;overflow:hidden}.planning-calendar-heading>div{min-width:0}.planning-calendar-heading p{overflow-wrap:anywhere;margin-top:7px}.calendar-mode-switch{background:var(--sage-pale);border-radius:15px;grid-template-columns:1fr 1fr;gap:4px;width:fit-content;max-width:100%;margin:22px 0;padding:5px;display:grid}.calendar-mode-switch button{min-width:132px;min-height:48px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:10px 17px;font-weight:750;transition:background .2s,color .2s,box-shadow .2s;display:flex}.calendar-mode-switch button.is-active{color:var(--forest);background:#fff;box-shadow:0 5px 14px #323a2c1a}.calendar-header{grid-template-columns:50px 1fr 50px;align-items:center;gap:8px;min-height:58px;display:grid}.calendar-header strong{text-align:center;overflow-wrap:anywhere;font-size:1.25rem}.calendar-header button{border:1px solid var(--line);width:50px;height:50px;color:var(--forest);cursor:pointer;transition:transform .2s var(--ease-spring), border-color .2s ease, box-shadow .2s ease;background:#fff;border-radius:14px;place-items:center;display:grid}.calendar-header button:hover{border-color:var(--timber);transform:translateY(-2px);box-shadow:0 7px 17px #3f2d1e1a}.month-calendar{border:1px solid var(--line);background:#fff;border-radius:20px;padding:clamp(12px,2vw,22px);overflow:hidden}.month-weekdays,.month-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(3px,.7vw,8px);display:grid}.month-weekdays{margin:12px 0 7px}.month-weekdays span{text-align:center;min-width:0;color:var(--muted);font-size:.76rem;font-weight:750;overflow:hidden}.calendar-day{color:#173c1c;cursor:pointer;min-width:0;min-height:66px;transition:transform .18s var(--ease-spring), border-color .18s ease, background .18s ease, box-shadow .18s ease;background:#dff1dc;border:2px solid #3d7a43;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:7px 3px;display:flex}.calendar-day strong{font-size:1.08rem;font-weight:850}.calendar-day small{max-width:100%;color:inherit;text-overflow:ellipsis;font-size:.72rem;font-weight:750;line-height:1;overflow:hidden}.calendar-day:hover{border-color:var(--timber);transform:translateY(-2px)}.calendar-day.is-owner,.calendar-day.is-maintenance{color:#49130f;background:#f4aa9c;border-color:#9d3026}.calendar-day.is-booked{color:#3b2a00;background:#ffd166;border-color:#986200}.calendar-day.is-yours{color:#fff;background:#0b6470;border-color:#073f47}.calendar-day.is-closed{color:#35413d;background:repeating-linear-gradient(135deg,#e0e2df 0 8px,#f5f5f2 8px 16px);border:2px dashed #68736e}.calendar-day:disabled{opacity:1;cursor:default}.calendar-day:disabled:hover{transform:none}.calendar-day.is-selected{border:4px solid #12244f;box-shadow:inset 0 0 0 2px #fff,0 0 0 3px #f7b32b}.year-calendar{min-width:0}.year-months{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.year-month{border:1px solid var(--line);min-width:0;color:var(--ink);text-align:left;cursor:pointer;transition:transform .2s var(--ease-spring), border-color .2s ease, box-shadow .2s ease;background:#fff;border-radius:17px;padding:14px}.year-month:hover{border-color:var(--timber);transform:translateY(-3px);box-shadow:0 10px 24px #402d1f1a}.year-month>strong{overflow-wrap:anywhere;margin-bottom:9px;font-size:1rem;display:block}.year-weekdays,.year-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.year-weekdays i,.year-days i{border-radius:6px;place-items:center;min-width:0;height:23px;font-size:.64rem;font-style:normal;display:grid;overflow:hidden}.year-weekdays i{color:var(--muted);font-weight:750}.year-days i.is-open{color:#173c1c;background:#dff1dc;box-shadow:inset 0 0 0 1px #3d7a43}.year-days i.is-owner,.year-days i.is-maintenance{color:#49130f;background:#f4aa9c;font-weight:850;box-shadow:inset 0 0 0 1px #9d3026}.year-days i.is-booked{color:#3b2a00;background:#ffd166;font-weight:850;box-shadow:inset 0 0 0 1px #986200}.year-days i.is-yours{color:#fff;background:#0b6470;font-weight:850;box-shadow:inset 0 0 0 1px #073f47}.year-days i.is-closed{color:#35413d;background:repeating-linear-gradient(135deg,#e0e2df 0 4px,#f5f5f2 4px 8px);box-shadow:inset 0 0 0 1px #68736e}.calendar-legend{flex-wrap:wrap;gap:12px 20px;margin-top:18px;display:flex}.calendar-legend span{color:var(--ink);align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.calendar-legend i{background:#f4aa9c;border:2px solid #9d3026;border-radius:7px;flex:0 0 23px;width:23px;height:23px}.calendar-legend i.is-open{background:#dff1dc;border-color:#3d7a43}.calendar-legend i.is-yours{background:#0b6470;border-color:#073f47}.calendar-legend i.is-booked{background:#ffd166;border-color:#986200}.calendar-legend i.is-closed{background:repeating-linear-gradient(135deg,#e0e2df 0 5px,#f5f5f2 5px 10px);border:2px dashed #68736e}.shared-calendar-card{max-width:980px}.booking-date-calendar{background:var(--ocean-pale);border-radius:19px;min-width:0;padding:clamp(13px,2vw,20px)}.booking-date-calendar__heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.booking-date-calendar__heading>div:first-child{flex-direction:column;min-width:0;display:flex}.booking-date-calendar__heading strong,.booking-date-calendar__heading small{overflow-wrap:anywhere}.booking-date-calendar__heading .calendar-mode-switch{margin:0}.booking-date-calendar .month-calendar{margin-top:14px}.calendar-period-form{background:var(--ocean-pale);border-radius:19px;width:100%;min-width:0;max-width:100%;margin-top:24px;padding:clamp(17px,3vw,26px)}.calendar-range-summary{flex-direction:column;min-width:0;display:flex}.calendar-range-summary strong{overflow-wrap:anywhere;margin:5px 0 3px;font-size:1.2rem}.calendar-range-summary small{color:var(--muted);overflow-wrap:anywhere}.calendar-period-types{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0;display:grid}.calendar-period-types button{min-width:0;min-height:76px;color:var(--forest);text-align:left;cursor:pointer;background:#fffc;border:2px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:12px;display:flex}.calendar-period-types button.is-active{border-color:var(--timber);background:#fff;box-shadow:0 7px 17px #3f2d1e17}.calendar-period-types button span{flex-direction:column;min-width:0;display:flex}.calendar-period-types button strong,.calendar-period-types button small{overflow-wrap:anywhere}.calendar-period-types button small{color:var(--muted);margin-top:2px}.calendar-period-fields{grid-template-columns:minmax(145px,.8fr) minmax(145px,.8fr) minmax(180px,1.2fr) auto;align-items:end;gap:11px;width:100%;min-width:0;max-width:100%;display:grid}.calendar-period-fields>*{min-width:0}.calendar-period-fields .button{white-space:normal;text-align:center;min-height:50px}.planned-periods{border-top:1px solid var(--line);margin-top:25px;padding-top:22px}.planned-periods h3{overflow-wrap:anywhere}.planned-period-row{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:72px;padding:10px 0;display:grid}.planned-period-row>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.planned-period-row strong,.planned-period-row small{overflow-wrap:anywhere}.planned-period-row small{color:var(--muted)}.planned-period-kind{background:var(--alert-pale);width:43px;height:43px;color:var(--timber);border-radius:13px;place-items:center;display:grid}.planned-period-kind.is-maintenance{color:#7d2f27;background:#f4ddd5}.planned-period-row>button{width:48px;height:48px;color:var(--alert);cursor:pointer;background:0 0;border:0;border-radius:13px;place-items:center;display:grid}.calendar-empty{background:var(--canvas);overflow-wrap:anywhere;border-radius:13px;margin:8px 0 0;padding:18px}.short-hold-card{max-width:720px}.field-error{color:var(--alert);overflow-wrap:anywhere;margin:-4px 0 0;font-weight:700}.personal-diary-section{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:22px;display:grid}.diary-composer,.diary-entry-list{min-width:0}.diary-composer p,.diary-composer textarea,.diary-entry-card p{overflow-wrap:anywhere}.diary-composer .button{min-height:50px}.diary-entry-list{gap:12px;display:grid}.diary-entry-list .section-heading{margin-bottom:2px}.diary-entry-card{min-width:0}.diary-entry-card>div{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;min-width:0;display:grid}.diary-entry-card>div>span{flex-direction:column;min-width:0;display:flex}.diary-entry-card strong,.diary-entry-card small{overflow-wrap:anywhere}.diary-entry-card small{color:var(--muted);margin-top:3px}.diary-entry-card>div>button{width:48px;height:48px;color:var(--alert);cursor:pointer;background:0 0;border:0;border-radius:13px;place-items:center;display:grid}.diary-entry-card>p{border-top:1px solid var(--line);white-space:pre-wrap;margin:15px 0 0;padding-top:14px;line-height:1.65}.empty-card.compact{min-height:210px}.repeat-booking-card{background:var(--ocean-pale);border-radius:18px;grid-column:1/-1;min-width:0;margin-top:6px;padding:clamp(16px,3vw,24px)}.repeat-booking-card .toggle-row{background:#ffffffb8}.repeat-frequency-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.repeat-frequency-options button{min-width:0;min-height:54px;color:var(--ink);font:inherit;cursor:pointer;white-space:normal;overflow-wrap:anywhere;background:#fff;border:2px solid #0000;border-radius:13px;padding:10px;font-weight:750}.repeat-frequency-options button.is-selected{border-color:var(--timber);color:var(--timber);box-shadow:0 6px 15px #44301f17}.repeat-count-control{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:15px;margin-top:18px;display:grid}.repeat-count-control>span{flex-direction:column;min-width:0;display:flex}.repeat-count-control small{color:var(--muted);overflow-wrap:anywhere}.repeat-count-control>div{grid-template-columns:54px minmax(80px,auto) 54px;align-items:center;gap:7px;display:grid}.repeat-count-control button{border:1px solid var(--line);width:54px;height:54px;color:var(--forest);cursor:pointer;background:#fff;border-radius:15px;place-items:center;display:grid}.repeat-count-control output{flex-direction:column;align-items:center;min-width:80px;font-size:1.45rem;font-weight:850;display:flex}.repeat-count-control output small{font-size:.72rem;font-weight:650}.repeat-date-preview{border-top:1px solid #2c5d602e;min-width:0;margin-top:18px;padding-top:17px}.repeat-date-preview>strong{align-items:center;gap:7px;display:flex}.repeat-date-preview>div,.repeat-success-dates{flex-wrap:wrap;gap:7px;margin:10px 0;display:flex}.repeat-date-preview>div span,.repeat-success-dates span{background:#fff;border-radius:999px;padding:7px 10px;font-size:.84rem;font-weight:750}.repeat-date-preview>small{color:var(--muted);overflow-wrap:anywhere;display:block}.calendar-export-card{min-width:0;max-width:980px}.calendar-export-card .button{white-space:normal;text-align:center;width:fit-content;max-width:100%;min-height:52px}.calendar-export-empty{color:var(--muted);overflow-wrap:anywhere;margin-top:10px}.calendar-import-help{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.calendar-import-help summary{min-height:50px;color:var(--forest);cursor:pointer;overflow-wrap:anywhere;align-items:center;font-weight:800;display:flex}.calendar-import-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:12px;display:grid}.calendar-import-grid section{background:var(--canvas);border-radius:15px;min-width:0;padding:18px}.calendar-import-grid h3{margin-bottom:10px}.calendar-import-grid ol{margin:0;padding-left:22px}.calendar-import-grid li,.calendar-import-grid p,.calendar-import-grid a{overflow-wrap:anywhere}.calendar-import-grid a{color:var(--timber);align-items:center;gap:5px;margin-top:12px;font-weight:750;display:inline-flex}.calendar-import-note{background:var(--sage-pale);overflow-wrap:anywhere;border-radius:12px;margin:14px 0 0;padding:12px 14px}.google-phone-calendar{background:var(--ocean-pale);border-radius:17px;min-width:0;margin:0 0 18px;padding:clamp(15px,3vw,21px)}.google-phone-calendar>div:first-child{align-items:flex-start;gap:10px;display:flex}.google-phone-calendar>div:first-child span{flex-direction:column;min-width:0;display:flex}.google-phone-calendar strong,.google-phone-calendar small{overflow-wrap:anywhere}.google-booking-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0 10px;display:grid}.google-booking-links .button{border-radius:15px;justify-content:flex-start;width:100%;min-width:0}.google-booking-links .button span{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.maintenance-list{gap:13px;display:grid}.maintenance-list .card>div:first-child{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.maintenance-list .card>div:first-child>span:nth-child(2){flex-direction:column;display:flex}.maintenance-list .card.is-muted{opacity:.6}.app-loading{background:var(--canvas);flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100vh;display:flex}.demo-entry-shell{background:radial-gradient(circle at 12% 10%, #e6d7bbb8, transparent 28%), radial-gradient(circle at 90% 90%, #dceceec7, transparent 30%), var(--canvas);flex-direction:column;align-items:center;min-height:100vh;padding:clamp(20px,5vw,58px) 20px 38px;display:flex}.demo-entry-card{background:var(--paper);border:1px solid #7965482e;border-radius:30px;width:min(880px,100%);padding:clamp(25px,5vw,52px);box-shadow:0 25px 70px #44352624}.demo-entry-card h1{max-width:700px;margin-top:9px;font-size:clamp(2.15rem,5vw,3.7rem)}.demo-entry-card>p{max-width:660px;font-size:1.04rem}.demo-entry-options{gap:14px;margin-top:30px;display:grid}.demo-entry-options button{border:1px solid var(--line);width:100%;min-height:112px;color:var(--ink);text-align:left;cursor:pointer;transition:transform .2s var(--ease-spring), border-color .2s ease, box-shadow .2s ease, background .2s ease;background:#fff;border-radius:19px;grid-template-columns:auto 1fr auto;align-items:center;gap:17px;padding:18px 20px;display:grid}.demo-entry-options button:hover{border-color:var(--timber);background:#fffdfa;transform:translateY(-3px);box-shadow:0 13px 30px #4833211f}.demo-entry-options button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.demo-entry-options button>span:nth-child(2){flex-direction:column;display:flex}.demo-entry-options button strong{font-size:1.18rem}.demo-entry-options button small{color:var(--timber);margin:2px 0 5px;font-weight:750}.demo-entry-options button em{color:var(--muted);font-style:normal}.demo-entry-options button>span:last-child{color:var(--timber);white-space:nowrap;font-weight:750}.demo-entry-icon{background:var(--sage-pale);width:54px;height:54px;color:var(--forest);border-radius:16px;place-items:center;display:grid}.demo-entry-note{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:8px;margin:25px 0 0;padding-top:20px;display:flex;font-size:.94rem!important}.onboarding-shell{background:radial-gradient(circle at 12% 10%, #e6d7bbb8, transparent 28%), radial-gradient(circle at 90% 90%, #dceceec7, transparent 30%), var(--canvas);flex-direction:column;align-items:center;min-height:100vh;padding:clamp(20px,5vw,58px) 20px 30px;display:flex}.onboarding-brand{align-items:center;gap:12px;width:min(760px,100%);margin-bottom:22px;display:flex}.onboarding-brand>span:last-child{flex-direction:column;line-height:1.05;display:flex}.onboarding-brand>span:last-child strong{font-family:Georgia,serif;font-size:1.35rem;font-weight:500}.onboarding-brand>span:last-child small{text-transform:uppercase;letter-spacing:.12em;margin-top:4px}.onboarding-card{background:var(--paper);border:1px solid #7965482e;border-radius:30px;flex-direction:column;width:min(760px,100%);min-height:min(690px,100vh - 150px);padding:clamp(24px,5vw,52px);display:flex;box-shadow:0 25px 70px #44352624}.onboarding-progress{grid-template-columns:1fr auto;align-items:center;gap:14px;height:22px;margin-bottom:clamp(26px,4vw,44px);display:grid}.onboarding-progress:before{content:"";background:var(--line);border-radius:5px;grid-area:1/1;height:5px}.onboarding-progress>span{background:var(--timber);z-index:1;border-radius:5px;grid-area:1/1;height:5px;transition:width .25s}.onboarding-progress small{white-space:nowrap}.onboarding-step{flex-direction:column;flex:1;gap:24px;min-height:100%;display:flex}.onboarding-step h1{font-size:clamp(2.15rem,6vw,3.65rem)}.onboarding-step>div>p{max-width:600px;font-size:1.05rem}.onboarding-hero-icon{background:var(--alert-pale);width:64px;height:64px;color:var(--timber);border-radius:50%;place-items:center;display:grid}.onboarding-hero-icon--sage{background:var(--sage-pale);color:#315745}.onboarding-name-field{margin:20px 0 auto}.onboarding-name-field input{min-height:58px;font-size:1.15rem}.onboarding-promise-grid{background:var(--sage-pale);border-radius:18px;gap:12px;padding:22px;display:grid}.onboarding-reassurance{background:var(--ocean-pale);border-radius:12px;align-items:center;gap:9px;padding:13px 15px;display:flex}.onboarding-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:18px;display:flex}.onboarding-centred{text-align:center;justify-content:center;align-items:center}.onboarding-centred>div{max-width:600px}.onboarding-centred .onboarding-final-note{text-align:left;width:min(520px,100%)}.onboarding-final-note{background:var(--sage-pale);border-radius:16px;gap:10px;padding:18px;display:grid}.onboarding-rule-list{border:1px solid var(--line);background:#fff;border-radius:18px;margin:0;padding:20px 24px 20px 46px}.onboarding-rule-list li{margin:8px 0;padding-left:4px}.onboarding-footer{align-items:center;gap:7px;margin:18px 0 0;font-size:.84rem;display:flex}.page-content>*,.onboarding-step{animation:view-enter .34s var(--ease-out)}.dialog-backdrop{animation:.2s ease-out backdrop-in}.dialog{transform-origin:bottom;animation:dialog-in .25s var(--ease-out)}.status-pill{transition:transform .2s var(--ease-spring), box-shadow .2s ease}.success-mark{animation:success-settle .5s var(--ease-spring)}:where(.date-strip button,.format-grid>button,.duration-choice button,.choice-chips button,.purpose-grid button,.feeling-grid button,.rating-buttons button,.plan-option-grid button,.temperature-stepper button,.rule-suggestions button,.timeline-zoom button,.timeline-controls>button){transition:transform .2s var(--ease-spring), border-color .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease;position:relative}:where(.date-strip button,.format-grid>button,.duration-choice button,.choice-chips button,.purpose-grid button,.feeling-grid button,.rating-buttons button,.plan-option-grid button,.temperature-stepper button,.rule-suggestions button,.timeline-zoom button,.timeline-controls>button):active:not(:disabled){transform:translateY(1px)scale(.97)}:where(.date-strip button,.format-grid>button,.duration-choice button,.choice-chips button,.purpose-grid button,.feeling-grid button,.rating-buttons button).is-selected{box-shadow:var(--shadow-active);font-weight:800;transform:translateY(-2px)}.date-strip button.is-selected{background:linear-gradient(150deg, #87503a, var(--timber-dark));border-color:var(--timber-dark)}.format-grid>button.is-selected,.feeling-grid button.is-selected{border-width:1px;border-color:var(--ocean);background:linear-gradient(145deg, #edf6f6, var(--ocean-pale))}.format-grid>button.is-selected>svg{color:var(--ocean);transform:scale(1.12)}.duration-choice button.is-selected,.choice-chips button.is-selected,.purpose-grid button.is-selected{background:linear-gradient(145deg, #244642, var(--ink));border-color:var(--ink)}.rating-buttons button.is-selected{background:linear-gradient(145deg, #347e85, var(--ocean));border-color:var(--ocean)}.later-step-card,.member-picker label,.flag-list label,.accordion-list details,.guide-aside a,.access-card{transition:transform .22s var(--ease-out), border-color .22s ease, background .22s ease, box-shadow .22s ease}.later-step-card>svg:last-child,.text-link svg,.guide-aside a svg{transition:transform .2s var(--ease-spring)}.member-picker label.is-selected,.flag-list label.is-selected{transform:translateY(-1px);box-shadow:0 0 0 3px #286c731c,0 10px 24px #286c731a}.field input,.field textarea,.field select,.timeline-controls input{transition:border-color .2s ease, box-shadow .2s ease, background .2s ease, transform .2s var(--ease-out)}.field input:focus,.field textarea:focus,.field select:focus,.timeline-controls input:focus{border-color:var(--ocean);background:#fff;box-shadow:0 0 0 4px #286c731f,0 8px 20px #286c7314}.toggle-row{transition:background .2s ease, transform .2s var(--ease-out);border-radius:13px}.toggle-track{box-shadow:inset 0 1px 3px #20312e24}.toggle-row input:checked+.toggle-track{box-shadow:0 0 0 4px #286c731c,inset 0 1px 2px #00000014}.toggle-row input:focus-visible+.toggle-track{outline-offset:3px;outline:3px solid #286c7359}.manage-tabs{background:#ffffff6b;border:1px solid #79654821;border-radius:16px;gap:6px;padding:5px}.manage-tabs button{min-height:44px;transition:transform .18s var(--ease-spring), background .18s ease, color .18s ease, box-shadow .18s ease;border-bottom:0;border-radius:11px}.manage-tabs button.is-active{color:var(--ink);background:var(--white);box-shadow:0 6px 16px #4435261a, inset 0 -3px 0 var(--timber);border-bottom-color:#0000;transform:translateY(-1px)}.timeline-plan{transition:left .28s var(--ease-out), width .28s var(--ease-out), box-shadow .2s ease}.timeline-phase{transition:width .28s var(--ease-out);position:relative}.timeline-phase:after{content:"";animation:phase-sheen .75s .12s var(--ease-out);background:linear-gradient(105deg,#0000 25%,#ffffff38 50%,#0000 75%);position:absolute;inset:0;transform:translate(-110%)}.mini-phase-bar i{transform-origin:0;animation:phase-grow .38s var(--ease-out)}.timeline-scroll:focus-visible{border-color:var(--ocean);outline:none;box-shadow:0 0 0 4px #286c731f}.timeline-minute-slider,.range-field input[type=range],.temperature-range{appearance:none}.timeline-minute-slider{cursor:pointer;background:0 0;height:28px}.timeline-minute-slider::-webkit-slider-runnable-track{background:linear-gradient(90deg, #e8b070, var(--timber), #b14c42);border-radius:7px;height:7px;box-shadow:inset 0 1px 3px #37231c2e}.range-field input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, #e8b070, var(--timber), #b14c42);border-radius:7px;height:7px;box-shadow:inset 0 1px 3px #37231c2e}.temperature-range::-webkit-slider-runnable-track{background:linear-gradient(90deg, #e8b070, var(--timber), #b14c42);border-radius:7px;height:7px;box-shadow:inset 0 1px 3px #37231c2e}.timeline-minute-slider::-webkit-slider-thumb{background:var(--timber-dark);-webkit-appearance:none;width:26px;height:26px;transition:transform .18s var(--ease-spring), box-shadow .18s ease;border:3px solid #fff;border-radius:50%;margin-top:-9px;box-shadow:0 4px 12px #4435264d}.range-field input[type=range]::-webkit-slider-thumb{background:var(--timber-dark);-webkit-appearance:none;width:26px;height:26px;transition:transform .18s var(--ease-spring), box-shadow .18s ease;border:3px solid #fff;border-radius:50%;margin-top:-9px;box-shadow:0 4px 12px #4435264d}.temperature-range::-webkit-slider-thumb{background:var(--timber-dark);-webkit-appearance:none;width:26px;height:26px;transition:transform .18s var(--ease-spring), box-shadow .18s ease;border:3px solid #fff;border-radius:50%;margin-top:-9px;box-shadow:0 4px 12px #4435264d}.timeline-minute-slider::-moz-range-track{background:linear-gradient(90deg, #e8b070, var(--timber), #b14c42);border:0;border-radius:7px;height:7px}.range-field input[type=range]::-moz-range-track{background:linear-gradient(90deg, #e8b070, var(--timber), #b14c42);border:0;border-radius:7px;height:7px}.temperature-range::-moz-range-track{background:linear-gradient(90deg, #e8b070, var(--timber), #b14c42);border:0;border-radius:7px;height:7px}.timeline-minute-slider::-moz-range-thumb{background:var(--timber-dark);border:3px solid #fff;border-radius:50%;width:21px;height:21px;box-shadow:0 4px 12px #4435264d}.range-field input[type=range]::-moz-range-thumb{background:var(--timber-dark);border:3px solid #fff;border-radius:50%;width:21px;height:21px;box-shadow:0 4px 12px #4435264d}.temperature-range::-moz-range-thumb{background:var(--timber-dark);border:3px solid #fff;border-radius:50%;width:21px;height:21px;box-shadow:0 4px 12px #4435264d}.timeline-summary{transition:background .22s,box-shadow .22s}.bottom-nav button{isolation:isolate;transition:color .2s ease, transform .2s var(--ease-spring);position:relative}.bottom-nav button:before{content:"";background:var(--sand);opacity:0;width:42px;height:30px;transition:transform .22s var(--ease-spring), opacity .18s ease;z-index:-1;border-radius:18px;position:absolute;top:7px;left:50%;transform:translate(-50%)scale(.55)}.bottom-nav button.is-active:before{opacity:.72;transform:translate(-50%)scale(1)}.bottom-nav button.is-active svg{transform:translateY(-2px)scale(1.08)}.bottom-nav button svg{transition:transform .22s var(--ease-spring)}@media (hover:hover) and (pointer:fine){.side-nav button:hover{color:#fff;background:#ffffff1a;transform:translate(4px)}.side-nav button.is-active:hover{background:#fff0db}.icon-button:hover{background:var(--ocean-pale);border-color:#286c736b;transform:translateY(-2px)rotate(-3deg);box-shadow:0 9px 22px #286c7326}.user-button:hover{background:#173a3712;transform:translateY(-1px);box-shadow:0 8px 20px #173a3714}.user-popover>button:hover{background:var(--sage-pale);transform:translate(3px)}.button:hover:not(:disabled){transform:translateY(-3px)scale(1.01)}.button:hover:not(:disabled):before{transform:translate(125%)}.button:hover:not(:disabled) :is(.lucide-arrow-right,.lucide-chevron-right){transform:translate(3px)}.button--primary:hover:not(:disabled){background:linear-gradient(145deg,#965b40,#613624);box-shadow:0 14px 28px #72412e4d,inset 0 1px #ffffff38}.button--secondary:hover:not(:disabled){color:var(--ocean);border-color:#286c7366;box-shadow:0 12px 26px #286c731c}.button--quiet:hover:not(:disabled){background:var(--ocean-pale);color:var(--ocean)}.button--danger:hover:not(:disabled){box-shadow:0 13px 26px #a8473745}.text-link:hover,.danger-link:hover:not(:disabled),.review-welcome:hover,.reset-demo:hover{transform:translateY(-1px)}.text-link:hover:after,.danger-link:hover:not(:disabled):after,.review-welcome:hover:after,.reset-demo:hover:after{transform:scaleX(1)}:where(.date-strip button,.format-grid>button,.duration-choice button,.choice-chips button,.purpose-grid button,.feeling-grid button,.rating-buttons button,.plan-option-grid button,.temperature-stepper button,.rule-suggestions button,.timeline-zoom button,.timeline-controls>button):hover:not(:disabled){border-color:#286c737a;transform:translateY(-3px);box-shadow:0 11px 25px #286c731f}:where(.date-strip button,.format-grid>button,.duration-choice button,.choice-chips button,.purpose-grid button,.feeling-grid button,.rating-buttons button,.plan-option-grid button):hover:not(:disabled).is-selected{transform:translateY(-4px)scale(1.015);box-shadow:0 0 0 4px #286c7329,0 16px 32px #286c732e}.later-step-card:hover{background:var(--white);box-shadow:var(--shadow-raised);border-color:#286c7359;transform:translateY(-4px)}.later-step-card:hover>svg:last-child,.text-link:hover svg,.guide-aside a:hover svg{transform:translate(4px)}.member-picker label:hover,.flag-list label:hover{background:#fbffff;border-color:#286c736b;transform:translateY(-2px);box-shadow:0 8px 20px #286c7314}.toggle-row:hover{background:#dcecee73}.availability-day-switch:hover{background:#f7ffff;border-color:#286c7380;transform:translateY(-2px);box-shadow:0 7px 18px #286c731a}.availability-time-control:hover{border-color:var(--ocean);background:#fff;transform:translateY(-3px);box-shadow:0 12px 26px #286c7326}.availability-time-control:hover:before{transform:scaleY(1)}.availability-time-control:hover .availability-time-icon{background:var(--ocean);color:#fff;transform:rotate(-5deg)scale(1.08)}.availability-time-control:hover .availability-time-edit{color:var(--ocean);transform:translate(3px)rotate(-5deg)}.availability-open-day:hover{border-color:var(--ocean);background:#fff;transform:translateY(-3px);box-shadow:0 10px 24px #286c731f}.timing-stepper__controls button:hover:not(:disabled){transform:translateY(-3px)scale(1.04);box-shadow:0 10px 22px #44352629}.timing-stepper--warm .timing-stepper__controls button:hover:not(:disabled){background:#f6d6ae;border-color:#d99a5d}.timing-stepper--cool .timing-stepper__controls button:hover:not(:disabled){border-color:var(--ocean);background:#cde5e7}.timing-stepper__controls button:hover:active:not(:disabled){box-shadow:none;transform:translateY(1px)scale(.92)}.accordion-list details:hover{border-color:#286c7359;transform:translateY(-2px);box-shadow:0 10px 25px #286c7314}.guide-aside a:hover{color:var(--timber-dark);transform:translate(3px)}.manage-tabs button:hover:not(.is-active){color:var(--ocean);background:#ffffffb3;transform:translateY(-1px)}.timeline-plan:hover{box-shadow:0 0 0 4px #b64e431f,0 10px 22px #4c2c2133}.timeline-minute-slider:hover::-webkit-slider-thumb{transform:scale(1.16);box-shadow:0 5px 16px #44352661}.range-field input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.16);box-shadow:0 5px 16px #44352661}.status-pill:hover{transform:translateY(-1px);box-shadow:0 5px 12px #4435261a}}@keyframes view-enter{0%{transform:translateY(10px)}to{transform:translateY(0)}}@keyframes popover-in{0%{transform:translateY(-5px)scale(.97)}to{transform:translateY(0)scale(1)}}@keyframes backdrop-in{0%{background:#11252200}}@keyframes dialog-in{0%{transform:translateY(18px)scale(.975)}to{transform:translateY(0)scale(1)}}@keyframes success-settle{0%{transform:scale(.72)rotate(-8deg)}65%{transform:scale(1.08)rotate(2deg)}to{transform:scale(1)rotate(0)}}@keyframes phase-sheen{to{transform:translate(110%)}}@keyframes phase-grow{0%{transform:scaleX(.72)}to{transform:scaleX(1)}}@keyframes availability-controls-in{0%{transform:translateY(7px)}to{transform:translateY(0)}}@keyframes availability-state-in{0%{transform:translate(-4px)}to{transform:translate(0)}}@keyframes time-value-in{0%{transform:scale(.88)}70%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes timing-value-pop{0%{transform:scale(.76)}70%{transform:scale(1.09)}to{transform:scale(1)}}@media (max-width:1120px){.calendar-period-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-quick-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-grid{grid-template-columns:repeat(3,1fr)}.home-grid,.availability-days{grid-template-columns:1fr}.manage-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.preparation-card,.owner-today-card,.recent-card{grid-column:auto}.weather-card,.next-booking-card{min-height:300px}.profile-layout,.guide-layout,.circle-layout{grid-template-columns:1fr}.profile-aside,.guide-aside{grid-template-columns:repeat(2,1fr);position:static}.plan-at-glance,.guide-note,.privacy-boundary,.review-welcome,.reset-demo{grid-column:1/-1}}@media (max-width:820px){.personal-diary-section{grid-template-columns:1fr}.repeat-frequency-options{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-import-grid{grid-template-columns:1fr}.google-booking-links,.year-months,.guide-quick-steps{grid-template-columns:repeat(2,minmax(0,1fr))}body{background:var(--paper)}.sidebar{z-index:80;width:min(320px,86vw);transition:transform .22s;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.sidebar-close{color:#fff;background:#ffffff14;border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:18px;right:13px}.mobile-scrim{z-index:75;background:#11252273;border:0;display:block;position:fixed;inset:0}.app-main{margin-left:0;padding-bottom:82px}.topbar{height:70px;padding:0 16px}.mobile-menu{background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.topbar__context{flex:1}.topbar__context strong{font-size:.86rem}.topbar__context span{font-size:.68rem}.user-button__name,.user-button>svg{display:none}.user-button{padding:4px}.bottom-nav{z-index:60;min-height:72px;padding:6px max(4px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(4px, env(safe-area-inset-left));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffefdf5;grid-template-columns:repeat(6,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{min-width:0;color:var(--ink-soft);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.7rem;display:flex}.bottom-nav button.is-active{color:var(--timber-dark);font-weight:800}.page-content{padding:28px 18px}.page-stack{gap:27px}.welcome-row,.page-heading.with-action,.booking-heading,.manage-heading{flex-direction:column;align-items:stretch;gap:18px}.welcome-row .button,.page-heading.with-action>.button{width:100%}.home-grid{gap:15px}.first-use-home{gap:22px;margin:0 auto}.first-use-hero{grid-template-columns:1fr}.first-use-photo{min-height:290px}.first-step-card{grid-template-columns:auto 1fr}.first-step-card .button{grid-column:1/-1;width:100%}.card{border-radius:20px;box-shadow:0 8px 24px #4435260f}.preparation-card{grid-template-columns:auto 1fr}.preparation-card .text-link{grid-column:1/-1}.owner-stats{grid-template-columns:1fr 1fr}.date-strip{margin-inline:0;padding:0 8px 6px;display:flex;overflow-x:auto}.date-strip button{min-width:72px}.format-grid{grid-template-columns:1fr}.format-grid>button{grid-template-columns:auto 1fr;align-items:center;gap:15px;min-height:105px;display:grid}.format-grid>button>svg{margin:0}.booking-step{min-height:auto}.upcoming-session{grid-template-columns:70px 1fr;gap:14px}.session-actions{flex-direction:row;grid-column:1/-1}.session-start-control{flex:1;width:auto}.session-actions .button{width:100%}.history-grid,.access-grid,.manage-two-column,.rules-settings-grid{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}.profile-aside,.guide-aside{grid-template-columns:1fr}.plan-option-grid.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.rule-suggestions,.availability-days,.shared-participant-checks,.controls-layout{grid-template-columns:1fr}.controls-photo-card{grid-template-columns:minmax(220px,.8fr) 1fr;display:grid}.controls-photo-card img{height:330px}.check-layout,.reflection-grid{grid-template-columns:1fr}.guidance-panel{position:sticky;bottom:0}.access-actions{justify-content:flex-start}}@media (max-width:560px){.demo-entry-shell{background:var(--paper);padding:18px 0 0}.demo-entry-shell .onboarding-brand{padding:0 18px}.demo-entry-card{border:0;border-top:1px solid var(--line);min-height:calc(100vh - 75px);box-shadow:none;border-radius:24px 24px 0 0;padding:25px 18px 34px}.demo-entry-card h1{font-size:2.25rem}.demo-entry-options button{grid-template-columns:auto 1fr;min-height:128px;padding:17px}.demo-entry-options button>span:last-child{grid-column:2}.calendar-mode-switch{width:100%}.calendar-mode-switch button{min-width:0}.booking-date-calendar{margin-inline:0;padding:14px 8px}.booking-date-calendar__heading{grid-template-columns:1fr}.booking-date-calendar__heading .calendar-mode-switch{width:100%}.month-calendar{border-radius:15px;margin-inline:0;padding:10px 6px 12px}.month-weekdays span{font-size:.65rem}.calendar-day{border-radius:9px;min-height:52px}.calendar-day strong{font-size:.98rem}.calendar-day small{font-size:.62rem}.year-months{grid-template-columns:1fr}.year-month{min-height:260px;padding:16px}.year-weekdays i,.year-days i{height:29px;font-size:.72rem}.calendar-period-form{margin-inline:0;padding:17px 12px}.calendar-period-types{grid-template-columns:1fr}.calendar-period-types button{min-height:68px}.calendar-period-fields{grid-template-columns:1fr}.calendar-period-fields input,.calendar-period-fields .button{width:100%;min-width:0;max-width:100%;min-height:54px}.calendar-period-fields input[type=date]{inline-size:100%;min-inline-size:0;max-inline-size:100%}.google-booking-links{grid-template-columns:1fr}.planned-period-row{align-items:start}.repeat-count-control{grid-template-columns:1fr}.repeat-count-control>div{grid-template-columns:58px 1fr 58px;width:100%}.repeat-count-control button{width:58px;height:58px}.repeat-frequency-options{grid-template-columns:1fr 1fr}.guide-quick-steps{grid-template-columns:1fr}h1{font-size:2.2rem}.topbar__context strong{white-space:nowrap;text-overflow:ellipsis;max-width:150px;overflow:hidden}.bottom-nav button span{font-size:.7rem}.bottom-nav button svg{width:19px}.user-popover{right:-4px}.notice-popover{right:-54px}.slot-grid{grid-template-columns:1fr}.booking-form-card{padding:18px}.booking-heading{margin-bottom:20px}.step-dots span{width:22px}.confirm-step{grid-template-columns:70px 1fr;gap:17px}.confirm-date{min-height:98px}.confirm-main dl>div{grid-template-columns:1fr;gap:2px}.confirm-time{font-size:1.55rem}.owner-stats{grid-template-columns:1fr}.first-use-intro h1{font-size:2.65rem}.first-step-card{grid-template-columns:1fr}.first-step-number{width:48px;height:48px}.first-step-card .button{grid-column:auto}.later-step-grid{grid-template-columns:1fr}.manage-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-editor-help,.availability-day-card{padding:14px}.availability-day-card__header{grid-template-columns:auto minmax(0,1fr)}.availability-day-switch{grid-column:1/-1;justify-content:space-between;width:100%;margin-top:3px}.availability-day-switch>span:first-child{text-align:left;max-width:none;font-size:.78rem}.availability-time-controls{grid-template-columns:1fr}.availability-range-join{justify-self:center;margin-block:-3px}.availability-time-control{min-height:86px}.transition-fields{grid-template-columns:1fr}.rolling-day-heading{flex-direction:column;align-items:stretch}.timeline-zoom{justify-content:flex-end}.timeline-controls{grid-template-columns:1fr 1.3fr 1fr}.timeline-controls>button{padding-inline:6px;font-size:.75rem}.timeline-summary{gap:9px 12px}.timeline-summary>strong{width:100%}.controls-photo-card{display:block}.controls-photo-card img{height:300px}.card-actions,.dialog-actions,.manage-heading__actions{flex-direction:column}.card-actions .button,.dialog-actions .button,.manage-heading__actions .button{width:100%}.form-stack .button{white-space:normal;text-align:center;overflow-wrap:anywhere;width:100%;max-width:100%}.dialog-backdrop{align-items:end;padding:0}.dialog{width:100%;max-height:94vh;padding:22px 18px max(24px, env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.onboarding-shell{background:var(--paper);padding:18px 0 0}.onboarding-brand{margin-bottom:15px;padding:0 18px}.onboarding-card{border:0;border-top:1px solid var(--line);min-height:calc(100vh - 82px);box-shadow:none;border-radius:24px 24px 0 0;padding:24px 18px 34px}.onboarding-step{gap:20px}.onboarding-step h1{font-size:2.25rem}.onboarding-actions{padding:14px 0 max(14px, env(safe-area-inset-bottom));background:#fbf8f1f5;margin-inline:0;position:sticky;bottom:0}.onboarding-actions .button{flex:1}.availability-editor--compact{padding-bottom:84px}.onboarding-footer{display:none}.owner-rule-builder{padding:16px}.feeling-grid,.flag-list,.flag-list.compact{grid-template-columns:1fr}.rating-row{flex-direction:column;align-items:flex-start}.rating-buttons{justify-content:space-between;width:100%}.rating-buttons button{width:42px;height:42px}.profile-card{align-items:flex-start}.profile-identity>div{flex-direction:column;align-items:flex-start}.inline-form,.split-fields,.plan-option-grid,.plan-option-grid.three-columns{grid-template-columns:1fr}.plan-option-grid button{min-height:74px}.insight-stats{grid-template-columns:1fr}.inline-form .button{width:100%}.incoming-invite-card,.chat-composer{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.incoming-invite-card .button,.chat-composer .button{width:100%}.circle-member-card{min-height:100px}.metric-grid{grid-template-columns:1fr 1fr}.metric-grid .card{padding:17px}.metric-grid strong{font-size:1.8rem}.access-card__top{grid-template-columns:auto 1fr}.access-card__top .status-pill{grid-column:2;justify-self:start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
