/* Palette reference: uncoated service-ticket paper, petrol printing ink,
   oxidized copper and a brass page clip. All surfaces consume semantic tokens. */
:root,[data-theme=light]{
 --canvas:43 27% 95%;--surface:45 40% 98%;--surface-muted:42 18% 91%;--surface-strong:195 29% 17%;
 --ink:195 29% 17%;--ink-soft:193 15% 31%;--ink-muted:193 9% 41%;--line:42 12% 79%;
 --brand:17 52% 34%;--brand-solid:17 52% 34%;--brand-soft:25 41% 91%;--on-brand:45 40% 98%;
 --accent:42 49% 69%;--success:153 28% 31%;--warning:35 61% 32%;--danger:5 49% 39%;--on-danger:45 40% 98%;
 --paper:hsl(var(--canvas));--panel:hsl(var(--surface));--ticket:hsl(var(--accent));--muted:hsl(var(--ink-muted));--snap:cubic-bezier(.18,.82,.25,1);
}
:root.dark,[data-theme=dark]{
 --canvas:194 25% 12%;--surface:194 22% 16%;--surface-muted:193 18% 20%;--surface-strong:43 27% 91%;
 --ink:43 27% 91%;--ink-soft:42 15% 78%;--ink-muted:185 10% 65%;--line:191 13% 30%;
 --brand:23 53% 71%;--brand-solid:23 53% 71%;--brand-soft:20 18% 23%;--on-brand:194 25% 12%;
 --accent:42 40% 65%;--success:153 29% 66%;--warning:39 53% 67%;--danger:6 58% 72%;--on-danger:194 25% 12%;
}
html{font-family:Archivo,Arial,sans-serif;background:hsl(var(--canvas));color:hsl(var(--ink));scroll-behavior:smooth}
body{background:hsl(var(--canvas))!important;color:hsl(var(--ink))!important;font-family:Archivo,Arial,sans-serif!important;font-size:14px;line-height:1.65}
*{box-sizing:border-box}::selection{background:hsl(var(--brand-soft));color:hsl(var(--ink))}
a,button,input,select,textarea{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid hsl(var(--brand))}
button,a,input,select,textarea{touch-action:manipulation}lumen-icon{display:inline-flex;flex:none;width:18px;height:18px;vertical-align:middle}lumen-icon svg{width:100%;height:100%;stroke-width:1.65}
/* Native controls share Lumen's styling while retaining all server form behavior. */
.ui-button,.btn,.auth-submit,.plan-cta,.field-button,.quiet-add{font:600 14px/1.4 Archivo,sans-serif;letter-spacing:0;text-transform:none;min-height:44px;border-radius:7px;padding:11px 17px;box-shadow:none;transition:background .16s var(--snap),transform .16s var(--snap),border-color .16s var(--snap)}
.ui-button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed}
.btn-primary,.auth-submit,.plan-cta,.field-button{color:hsl(var(--on-brand))!important;background:hsl(var(--brand-solid))!important;border:1px solid transparent}
.btn-secondary{background:hsl(var(--surface));color:hsl(var(--ink));border:1px solid hsl(var(--line))}
.btn-icon{background:transparent!important;border:1px solid hsl(var(--line));color:hsl(var(--ink))!important;width:44px;height:44px;min-height:44px;min-width:44px;border-radius:8px!important;padding:0!important}
.btn:hover,.auth-submit:hover,.quiet-add:hover{transform:translateY(-1px)}.btn:active,.auth-submit:active{transform:translateY(0)}
.input,.ui-input,input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):not([type=submit]),select,textarea{background:hsl(var(--surface));color:hsl(var(--ink));border:1px solid hsl(var(--line));border-radius:6px;font:400 16px/1.5 Archivo,sans-serif;min-height:46px;box-shadow:none;padding:11px 13px;max-width:100%}
.input:focus{border-color:hsl(var(--brand));outline:2px solid hsl(var(--brand-soft));outline-offset:2px}
input::placeholder,textarea::placeholder{color:hsl(var(--ink-muted))}.label,.section-title{font:600 12px/1.5 Archivo,sans-serif!important;letter-spacing:.02em!important;text-transform:none!important;color:hsl(var(--ink-muted))}
input[type=checkbox],input[type=radio]{accent-color:hsl(var(--brand));width:18px;height:18px;flex-shrink:0}
.card{border:1px solid hsl(var(--line));border-radius:9px;background:hsl(var(--surface));box-shadow:none}
[class*="text-ink-tertiary"],[class*="text-ink-cream-sub"]{color:hsl(var(--ink-muted))!important}
[class*="text-workbelt-copper"],[class*="text-workbelt-300"]{color:hsl(var(--brand))!important}
[class*="dark:text-ink-cream"],[class*="text-ink dark:"]{color:hsl(var(--ink))!important}
.calm-app>header{background:hsl(var(--canvas));border-bottom:1px solid hsl(var(--line));backdrop-filter:none}
.calm-app>header>div{padding-top:22px;padding-bottom:22px;max-width:1240px}
.calm-app>header h1{font:600 24px/1.2 Archivo,sans-serif;letter-spacing:-.75px}
.calm-app>header .section-title{font-size:12px!important;font-weight:400!important;margin-top:5px}
.calm-app>main{max-width:1240px;padding-top:34px}
.app-sidebar{background:hsl(var(--surface));border-color:hsl(var(--line));padding:32px 19px 22px}
.app-sidebar>lumen-sidebar{display:flex;flex-direction:column;height:100%;padding:0;background:none;border:0;box-shadow:none;min-width:0}
.sidebar-brand{font:700 34px/1 'Barlow Condensed',sans-serif;letter-spacing:-.7px;margin:0 12px 42px}.sidebar-brand>span{font-size:18px}
.app-sidebar nav{gap:7px}.app-sidebar nav a{font-weight:400;font-size:14px;min-height:45px;padding:11px 13px;border-radius:6px}
.app-sidebar nav a[aria-current]{background:hsl(var(--brand-soft));color:hsl(var(--brand));font-weight:600}.app-sidebar nav a[aria-current]:before{display:none}
.sidebar-foot{border-top:1px solid hsl(var(--line));padding-top:23px}.sidebar-foot a{display:flex;align-items:center;gap:10px;font-size:13px}.sidebar-foot>span{font-family:'IBM Plex Mono',monospace;font-size:11px;line-height:1.6}
.day-intro{margin-bottom:32px}.day-greeting{font-size:12px;margin-bottom:9px}.day-intro h2{font:600 32px/1.22 Archivo,sans-serif;letter-spacing:-1.1px}
.day-schedule-link{display:flex;align-items:center;gap:10px;font-size:13px}.day-notice{border:1px solid hsl(var(--line));background:hsl(var(--surface));padding:13px 16px;margin-bottom:14px;border-radius:3px 9px 3px 3px}
.day-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:38px;align-items:start}
.day-list-heading{margin:5px 0 18px}.day-list-heading h2{font-size:14px}.day-list-heading>span{font:12px 'IBM Plex Mono',monospace}
.day-job{padding:22px 0 16px}.day-job-main{grid-template-columns:66px minmax(0,1fr) auto 14px;gap:14px;padding:0 3px}
.day-job-actions{padding-left:83px;padding-top:6px;gap:20px}.day-job-actions button{background:transparent;border:0;color:hsl(var(--brand));font-size:12px;padding:0;min-height:40px}
.day-job-time{color:hsl(var(--ink-soft))}.day-job-info p{margin-top:6px;font-size:12px}.calm-app #job-list h3{font-size:16px;font-weight:600}
.day-job-meta{gap:7px}.day-status:before{display:none}.day-status{font-size:11px;border:0;padding:2px 7px;background:hsl(var(--surface-muted));color:hsl(var(--ink-soft));border-radius:4px}
.day-status[data-status=in_progress]{background:hsl(var(--brand-soft));color:hsl(var(--brand))}.day-price{font-family:'IBM Plex Mono',monospace;font-size:12px}
.day-tools{border-left:1px solid hsl(var(--line));padding:1px 0 0 24px}.day-tools>p{font:12px 'IBM Plex Mono',monospace;color:hsl(var(--ink-muted));margin:0 0 17px}
.day-tools a{display:flex;justify-content:space-between;align-items:start;gap:12px;padding:17px 0;border-top:1px solid hsl(var(--line));font-size:13px}
.day-tools a span{display:block;color:hsl(var(--ink-muted));font-size:12px;line-height:1.6;margin-top:6px}.day-tools a strong{font-weight:600}.day-tools a:hover strong{color:hsl(var(--brand))}
.day-tools-foot{padding-top:29px;font-size:12px;color:hsl(var(--ink-muted));max-width:170px}.day-tools-foot:before{content:'';display:block;background:hsl(var(--accent));height:3px;width:30px;transform:rotate(-3deg);margin-bottom:15px}
.calm-app #client-list{display:grid;gap:0;border-top:1px solid hsl(var(--line))}.calm-app .client-card{border:0;border-bottom:1px solid hsl(var(--line));border-radius:0;padding:20px 3px;background:transparent}.calm-app .client-card>div:first-child{width:38px;height:38px;font:600 16px Archivo;background:hsl(var(--surface-muted));border-radius:9px}.calm-app .client-card:hover{background:hsl(var(--surface))}
.calm-app #schedule-groups .schedule-row{padding:22px 4px;border-bottom:1px solid hsl(var(--line))}.calm-app #schedule-groups .schedule-row a{min-height:52px;display:block}
.calm-app .booking-sheet{background:hsl(var(--surface));border:1px solid hsl(var(--line));border-radius:3px 10px 3px 3px;padding:25px;box-shadow:none}.calm-app .booking-sheet h2{font:600 20px Archivo;letter-spacing:-.4px}
.calm-app .booking-sheet label{font-size:13px}.calm-app .booking-fields{gap:19px}.calm-app .card h2{font-size:20px}.calm-app .card .section-title{font-size:12px!important}
.calm-app>nav.app-dock{background:hsl(var(--surface));padding-top:6px}.app-dock>a[aria-current]{color:hsl(var(--brand))!important}.app-dock>a[aria-current]:after{content:'';height:2px;width:18px;background:hsl(var(--brand));position:absolute;bottom:5px}.app-dock>a{position:relative}
.dock-menu{box-shadow:0 8px 26px hsl(var(--ink)/.1);border-radius:10px 10px 3px 10px;background:hsl(var(--surface))}.calm-app .dock-menu a:hover{color:hsl(var(--brand))}
.policy-footer{background:none!important;color:hsl(var(--ink-muted));border-color:hsl(var(--line));font-size:12px!important}.policy-footer a:hover{color:hsl(var(--brand))}
/* Marketing is an editorial spread, not an app screen padded into a hero. */
.field-header{position:sticky;top:0;z-index:40;background:hsl(var(--canvas));min-height:80px;margin:0;padding:0 5%;border-bottom:1px solid hsl(var(--line))}
.wordmark{font:700 34px/1 'Barlow Condensed',sans-serif;letter-spacing:-.6px}.field-header nav a,.field-header>div>a{font-size:13px}
.field-hero{grid-template-columns:1.15fr 1fr;gap:7%;padding:78px 0 70px 6%}.hero-copy h1{font-size:clamp(64px,7.1vw,106px);line-height:.97;font-weight:600;letter-spacing:-2px;margin:26px 0 27px}.hero-copy em{color:hsl(var(--brand))}
.hero-copy .intro{font-size:16px;line-height:1.8;max-width:390px}.hero-copy>p:not(.eyebrow){max-width:420px;font-size:14px}.field-site .eyebrow{font-size:12px;line-height:1.7;letter-spacing:.035em}
.field-button{gap:32px;padding:14px 21px;min-height:48px}.field-button:hover{box-shadow:none;transform:translateY(-2px)}
.sheet-stage{padding-top:42px}.day-sheet{transform:rotate(1.5deg);background:hsl(var(--surface));color:hsl(var(--ink));border:1px solid hsl(var(--line));border-top:8px solid hsl(var(--brand));box-shadow:9px 10px 0 hsl(var(--surface-muted));padding:24px 52px 20px 27px;width:calc(100% + 30px)}
.sheet-top,.ticket,.sheet-total,.current{border-color:hsl(var(--line))}.sheet-top{padding-bottom:21px}.sheet-date h2{font-size:32px}.ticket{padding:22px 0;grid-template-columns:52px minmax(0,1fr) auto}.ticket p{font-size:12px}.ticket strong{font-size:14px}.paid{font-size:11px;color:hsl(var(--success));border-color:hsl(var(--success));border-radius:2px;transform:rotate(-3deg)}.ticket-tags span{border-color:hsl(var(--line));font-size:12px}.sheet-total strong{font:600 32px Archivo}.sheet-caption,.sheet-aside{font-size:12px!important}.current .eyebrow{color:hsl(var(--brand))}
.field-strip{background:hsl(var(--surface-muted));color:hsl(var(--ink-muted));font-size:12px;letter-spacing:.07em;padding:21px 6%;border-block:1px solid hsl(var(--line))}
.section-wrap{padding:85px 6%}.field-site h2{font-size:clamp(40px,4.4vw,64px);font-weight:600}.field-site h3{font-size:30px;font-weight:600}.routine{gap:10%;grid-template-columns:.85fr 1.15fr}.routine li{padding:26px 0}.routine li p{font-size:14px;line-height:1.8}
.feature-section{background:hsl(var(--surface));color:hsl(var(--ink));border-block:1px solid hsl(var(--line))}.field-features{margin-left:16%;gap:9%}.field-features p{font-size:14px;line-height:1.8}.field-features article:nth-child(2){margin-top:57px}
.pricing{padding-top:88px;padding-bottom:95px}.price-ticket{background:hsl(var(--surface));color:hsl(var(--ink));border:1px solid hsl(var(--line));border-top:5px solid hsl(var(--brand));border-radius:2px 9px 2px 2px;box-shadow:none}
.auth-header{padding:25px 5%;border-color:hsl(var(--line))}.auth-layout{gap:8%;padding:45px 6% 70px;align-items:start}.auth-story h2{font-size:clamp(48px,5.8vw,78px);line-height:1.02}.auth-story em{color:hsl(var(--brand))}.auth-story{padding-top:35px}.auth-panel{background:hsl(var(--surface));color:hsl(var(--ink));border:1px solid hsl(var(--line));border-top:4px solid hsl(var(--brand));border-radius:3px 13px 3px 3px;box-shadow:none}.auth-panel-inner{padding:32px}.auth-panel h1{font:600 32px/1.2 Archivo;letter-spacing:-1px}.auth-record{border-color:hsl(var(--line));background:none}.auth-record div{border-color:hsl(var(--line))}.auth-kicker{font-size:12px;color:hsl(var(--ink-muted))}.auth-description{font-size:14px;line-height:1.8}.auth-submit{width:100%;margin-top:15px}.auth-footer{font-size:12px}.auth-home{font-size:13px}
.plan-ticket,.booking-public .booking-sheet{background:hsl(var(--surface));color:hsl(var(--ink));border:1px solid hsl(var(--line));border-top:4px solid hsl(var(--brand));box-shadow:none;border-radius:3px 12px 3px 3px}.plan-price{color:hsl(var(--brand))}.plan-layout{gap:8%}.plan-intro h1{font-size:clamp(44px,5vw,72px)}.plan-options label{border-color:hsl(var(--line))}.booking-public{max-width:900px;margin:auto}.booking-public h1{font-size:clamp(32px,4vw,52px)}.booking-slots input:checked+span{background:hsl(var(--brand));color:hsl(var(--on-brand));box-shadow:none}.booking-slots span{background:hsl(var(--canvas));color:hsl(var(--ink));border-color:hsl(var(--line));border-radius:5px}
#feedback-shell{display:contents;padding:0;background:none;border:0}#form-feedback{border-top-width:3px;border-radius:3px 12px 3px 3px;background:hsl(var(--surface));color:hsl(var(--ink));box-shadow:0 16px 65px hsl(var(--canvas)/.2)}#form-feedback h2{font-size:24px}.feedback-actions button{font-size:14px}.privacy-banner{background:hsl(var(--surface));border:1px solid hsl(var(--line));border-top:3px solid hsl(var(--brand));box-shadow:0 5px 30px hsl(var(--ink)/.1);border-radius:3px 12px 3px 3px;max-width:510px;padding:23px}.privacy-banner h2{font:600 20px Archivo}.privacy-banner p{font-size:13px}.privacy-banner button{background:hsl(var(--ink));color:hsl(var(--canvas));border-radius:5px}.privacy-banner [data-consent=analytics]{background:hsl(var(--surface));color:hsl(var(--ink));border:1px solid hsl(var(--line))}
@media(min-width:1000px){.calm-app{padding-left:224px}.app-sidebar{width:224px}.calm-app>main{padding-inline:38px}.calm-app>header>div{padding-inline:38px}.calm-app .policy-footer{padding-inline:38px}.calm-app>div.fixed.bottom-0{left:224px}}
@media(max-width:1190px){.day-layout{grid-template-columns:1fr}.day-tools{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;border-left:0;padding:24px 0 0}.day-tools>p{grid-column:1/-1}.day-tools-foot{display:none}.field-header nav{gap:19px}.field-hero{gap:4%}.day-sheet{padding-right:28px}}
@media(max-width:740px){.field-header{min-height:72px;padding-inline:20px}.field-header nav{display:none}.field-header>div{gap:15px}.field-header .ui-button{padding:8px;min-width:40px}.field-hero{grid-template-columns:1fr;padding:38px 20px 52px;gap:28px}.hero-copy h1{font-size:68px;margin:20px 0}.hero-copy .intro{max-width:370px}.sheet-stage{padding:10px 0 0 9px}.day-sheet{width:calc(100% + 15px);padding:21px 24px 18px 20px}.sheet-aside{margin-top:22px!important}.field-strip{padding-inline:20px;gap:12px;font-size:10px}.field-strip span[aria-hidden]{display:none}.section-wrap{padding:58px 22px}.routine{grid-template-columns:1fr;gap:25px}.routine>div>p:last-child{max-width:100%}.field-features{margin:32px 0 0;display:block}.field-features article{margin-top:25px!important;display:block!important}.field-features h3{margin-top:13px}.pricing{grid-template-columns:1fr;gap:30px}.auth-header{padding:20px}.auth-layout{display:block;padding:15px 20px 40px}.auth-story{display:none}.auth-panel{max-width:480px;margin:auto}.auth-panel-inner{padding:26px 22px}.auth-home{display:none}.plan-layout{display:block;padding:30px 20px}.plan-ticket{margin-top:30px}.plan-header{padding:20px}.booking-public{padding:25px 18px 50px}}
@media(max-width:540px){.calm-app>main{padding:25px 18px 30px}.calm-app>header>div{padding:18px}.calm-app>header h1{font-size:24px}.calm-app .btn-icon{width:40px;min-width:40px;height:44px}.day-intro h2{font-size:28px}.day-intro{gap:12px;margin-bottom:24px}.day-layout{gap:20px}.day-job-main{grid-template-columns:57px minmax(0,1fr) 14px;gap:11px}.day-job-meta{grid-column:2;grid-row:2}.day-job-actions{padding-left:68px}.day-job-info p{line-height:1.7}.day-job{padding:20px 0 13px}.day-notice{padding:11px 12px;font-size:12px}.day-tools{gap:0 20px}.day-tools a{font-size:12px}.day-tools a span{font-size:12px}.quiet-add{font-size:12px;padding:10px 12px}.day-greeting{font-size:12px}.ticket{grid-template-columns:43px minmax(0,1fr) auto;gap:10px}.ticket-price{font-size:12px}.calm-app .booking-sheet{padding:20px 16px}.ui-button,.btn{white-space:normal}.policy-footer{gap:16px!important}.auth-header .wordmark{font-size:30px}.price-ticket{padding:25px 22px}.field-footer{gap:24px}.field-footer nav{gap:15px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Form spacing belongs to the field group, so nested panels do not double it. */
.auth-panel{padding:0}.auth-footer{padding:0 26px 24px;margin:12px 0 0}.auth-form{gap:18px}.auth-form .remember-choice{margin-top:8px}.auth-form .remember-help{margin-top:-10px}.auth-submit{margin-top:8px}.auth-description{margin-bottom:24px}
.booking-public>.wordmark{margin-bottom:38px}.booking-public .booking-fields{gap:20px}.booking-public .booking-fields>label,.booking-public .booking-fields>p,.booking-public .booking-fields>h2,.booking-public .booking-fields>h3{margin:0}.booking-public .booking-fields>.booking-sheet{margin:4px 0;padding:18px;border-top:1px solid hsl(var(--line));border-radius:4px;background:hsl(var(--canvas))}.booking-public .booking-fields>.booking-sheet p{margin:10px 0}.booking-public .booking-fields>.booking-sheet label{font-size:14px}.booking-public .booking-sheet{padding:24px 22px;margin:24px 0}.booking-public .booking-fields>fieldset{margin:6px 0}.booking-public .booking-fields>fieldset legend{margin-bottom:10px}
