:root{--dim:#b69d8d;--focus:#ffe0a8}
button,input,select{font:inherit}
button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}
a,button,input,select,summary{touch-action:manipulation}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:5px}
button{color:inherit}.btn{border:0;line-height:1.4;text-align:center;justify-content:center}.btn-line{border:1px solid var(--line2);background:transparent}
.text-link,.small-copy a,.prose a,.check-label a{color:var(--candle2);text-decoration:underline;text-underline-offset:4px}
.small-copy{font-size:14px;line-height:1.7;color:var(--mist);margin-block:20px}.muted{color:var(--mist);font-weight:400}
.site-header{position:relative;z-index:20}.home-page .site-header{position:absolute;inset:0 0 auto}
.header-row{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.header-actions{display:flex;align-items:center;gap:12px}
.logo{white-space:nowrap}.logo svg{color:var(--candle2);width:18px;height:21px}.header-row .navlinks{gap:24px}
.header-actions .navcta{white-space:nowrap}.site-header .navcta:hover{background:#40201b}
.skip-link{position:fixed;top:-100px;left:16px;padding:12px 18px;background:var(--candle2);color:var(--night);z-index:100}.skip-link:focus{top:12px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
main:focus{outline:none}.site-footer{padding-block:45px 36px;border-top:1px solid var(--line);display:flex;gap:16px 40px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.site-footer .logo{gap:10px}.site-footer p{font-size:14px;color:var(--mist)}.site-footer small{flex-basis:100%;font-size:12px;color:var(--mist)}
.footer-links{display:flex;gap:12px 22px;flex-wrap:wrap;font-size:13px;color:var(--mist)}
.text-button{background:none;border:0;padding:0;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:4px}
.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-block:34px 72px;min-height:calc(100svh - 180px)}
.auth-art{position:relative;border-radius:240px 240px 24px 24px;overflow:hidden;max-height:780px;aspect-ratio:3/4;isolation:isolate}
.auth-art>img{display:block;width:100%;height:100%;object-fit:cover}
.auth-art::after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(21,10,10,.9));z-index:1}
.auth-art-copy{position:absolute;inset:auto 34px 30px;z-index:2}.auth-art-copy .eyebrow{font-size:10px;letter-spacing:.16em}
.auth-art-copy p{font:400 36px/1.12 var(--display);margin-top:16px;color:var(--snow)}
.auth-panel{padding:20px 0;max-width:510px}.auth-panel h1{font-size:clamp(42px,4.8vw,68px);line-height:1.05;font-weight:350;margin:24px 0}
.auth-panel .sub{font-size:17px}.auth-panel .kicker{margin-bottom:0}.app-form{display:grid;gap:12px;margin-top:30px}
.app-form label{font-size:14px;font-weight:500}.app-form label input,.app-form label select{display:block;margin-top:8px;width:100%}
input,select{width:100%;background:#241410;border:1px solid #795449;border-radius:12px;min-height:52px;color:var(--snow);padding:12px 15px;font-size:16px}
input::placeholder{color:#b89e90}input:focus,select:focus{border-color:var(--candle)}.full-width{width:100%}.app-form .btn{margin-top:8px}
.auth-footnote{border-top:1px solid var(--line);padding-top:24px;margin-top:32px;font-size:13px;color:var(--mist);display:flex;gap:14px}.auth-footnote>span{color:var(--candle)}
.message-page{min-height:70svh;max-width:800px;padding-block:76px 110px}.message-page h1{font-size:clamp(42px,6vw,76px);line-height:1.07}.message-page .sub{max-width:38em}.message-page .btn{margin-top:28px}.message-symbol{display:block;font-size:44px;color:var(--candle);margin-bottom:24px}
.confirm-form{max-width:520px}.check-label{display:flex;gap:12px;align-items:flex-start!important;line-height:1.6;font-weight:400!important}.check-label input{min-height:0;width:20px!important;height:20px;flex:0 0 20px;margin-top:3px!important;accent-color:#d95635}
.notice{padding:18px 24px;margin:16px auto;background:#30442f;border:1px solid #799073;border-radius:12px;color:#f2ffef}
.workspace-page{padding-block:48px 90px;min-height:70svh}.workspace-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:36px}
.workspace-heading h1{font-size:clamp(40px,5vw,66px);margin:16px 0}.workspace-heading .sub{margin-top:10px}.workspace-heading .kicker{margin-bottom:0}
.panel{background:linear-gradient(135deg,#291713,#201110);border:1px solid var(--line2);border-radius:20px;padding:30px;min-width:0}
.panel h2{font-size:30px;margin-bottom:20px}.panel p{color:var(--mist);margin-block:16px}.panel .btn{margin-top:16px}
.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.account-grid section{padding:30px}.account-grid .eyebrow{margin-top:0;font-size:11px}
.account-email{word-break:break-word;margin:0!important;color:var(--snow)!important}.delete-panel{margin-top:36px;padding:24px;border:1px solid var(--line2);border-radius:16px}.delete-panel .app-form{max-width:700px}.delete-panel p{color:var(--mist);margin-top:20px}.btn-danger{background:#8f2929;color:#fff;width:fit-content}
.admin-tabs{position:static;display:flex;flex-wrap:wrap;gap:0 24px;border-bottom:1px solid var(--line2);margin-bottom:30px;padding:0}.admin-tabs a{padding:14px 0;color:var(--mist);border-bottom:2px solid transparent}.admin-tabs a[aria-current]{color:var(--candle2);border-bottom-color:var(--candle)}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.metrics strong{display:block;font:400 50px var(--display);color:var(--candle2)}.metrics span{font-size:14px;color:var(--mist)}
.activity-list{list-style:none}.activity-list li{padding:13px 0;border-bottom:1px solid var(--line)}.activity-list span{display:block;font-size:12px;color:var(--mist);margin-top:4px}
.invite-panel{margin-bottom:28px}.invite-panel summary{padding:0;font:400 24px var(--display);display:flex;justify-content:space-between}.invite-panel summary::after{display:none}.invite-grid{grid-template-columns:1fr 1.4fr 1fr;align-items:end}.invite-grid .btn{grid-column:1/-1;width:fit-content}
.search-form{display:flex;gap:12px;max-width:650px;margin-top:28px}.user-list{display:grid;gap:12px}.user-card{padding:0}.user-card summary{display:flex;align-items:center;gap:16px;padding:20px;font:inherit;list-style:none}.user-card summary::after{display:none}.user-card summary::-webkit-details-marker{display:none}
.user-avatar{width:42px;height:42px;flex:0 0 42px;background:#663024;color:var(--candle2);border-radius:50%;display:grid;place-items:center;font:24px var(--display)}
.user-identity{display:grid;min-width:0;flex:1}.user-identity>span{font-size:13px;color:var(--mist);overflow-wrap:anywhere}.status-pill{font-size:11px;color:#e0edc9;background:#293725;border:1px solid #56694b;border-radius:20px;padding:5px 11px;white-space:nowrap}.status-pill.disabled{background:#49211c;border-color:#946458;color:#ffe0d5}
.expand-icon{font-size:23px;color:var(--mist)}.user-card[open] .expand-icon{transform:rotate(45deg)}.edit-grid{padding:0 22px 22px;grid-template-columns:2fr 1fr 1fr}.edit-grid .btn{grid-column:1/-1;width:fit-content}
.user-meta{display:flex;gap:12px 24px;flex-wrap:wrap;font-size:12px;color:var(--mist);padding:18px 22px;border-top:1px solid var(--line)}.pagination{position:static;display:flex;align-items:center;justify-content:center;gap:20px;margin-top:28px}
.portrait-arch img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s}.portrait-arch::before{display:none}.nisse:hover .portrait-arch img{transform:scale(1.035)}.nisse-description{margin-top:6px;color:var(--mist);font-size:14px}
.calendar-caption{color:var(--mist);font-size:13px;text-align:center;margin-top:20px}.closing-section{text-align:center;background:radial-gradient(50% 90% at 50% 100%,#561913,transparent)}.closing-section .kicker{justify-content:center}.closing-section h2,.closing-section .sub{margin-inline:auto}.closing-section .btn{margin-top:30px}
.motion-toggle{display:grid;place-items:center;width:52px;height:52px;padding:0;border-radius:50%;background:#21120bd9;border:1px solid #e6c39d66;color:var(--snow);backdrop-filter:blur(6px);box-shadow:0 6px 22px #0004}.motion-toggle:hover{background:#48251deb;border-color:var(--candle)}.motion-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.motion-toggle .play-icon{display:none;fill:currentColor;stroke:none;margin-left:3px}.motion-toggle[aria-pressed="true"] .pause-icon{display:none}.motion-toggle[aria-pressed="true"] .play-icon{display:block}.hero .microline{max-width:520px}
.cookie-dialog{position:fixed;margin:auto;inset:0;max-width:540px;width:calc(100% - 32px);max-height:calc(100svh - 32px);overflow:auto;background:#281612;color:var(--snow);border:1px solid #795449;border-radius:24px;padding:32px;box-shadow:0 30px 140px #000a}
.cookie-dialog::backdrop{background:#090404b8;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.dialog-heading .eyebrow{font-size:10px}.close-button{border:0;background:none;font-size:30px;line-height:1;width:36px;height:36px;color:var(--mist)}
.cookie-dialog h2{font-size:40px;margin:24px 0}.cookie-dialog p{font-size:15px;color:var(--mist);line-height:1.7}.cookie-category{display:flex;align-items:center;gap:18px;justify-content:space-between;margin-top:24px;padding:20px 0;border-block:1px solid var(--line2)}.cookie-category strong{font-size:14px}.cookie-category p{font-size:12px;margin-top:6px}
.prose{max-width:800px;padding-block:60px 100px}.prose h1{font-size:clamp(42px,6vw,70px);line-height:1.1}.prose h2{font-size:28px;margin:40px 0 16px}.prose p,.prose li{color:var(--mist);margin-block:14px}.prose ul{padding-left:22px}.prose table{width:100%;border-collapse:collapse;font-size:14px;margin-block:22px}.prose td,.prose th{text-align:left;padding:14px 10px;border-bottom:1px solid var(--line2);vertical-align:top}.prose td{color:var(--mist)}.table-scroll{overflow-x:auto}.policy-date{font-size:13px;color:var(--mist)}
@media(max-width:1050px){.header-row .navlinks{gap:16px;font-size:13px}.auth-layout{gap:45px}.auth-art-copy p{font-size:30px}.auth-art-copy .eyebrow{display:none}.header-actions{gap:8px}}
@media(max-width:780px){.header-row{min-height:76px}.header-row .navlinks{display:none}.header-row .navcta{font-size:12px;padding:8px 13px}.auth-layout{grid-template-columns:1fr;gap:0;padding-top:18px;padding-bottom:46px}.auth-art{max-height:260px;aspect-ratio:auto;border-radius:120px 120px 16px 16px;width:100%;max-width:430px;margin:auto}.auth-art>img{height:260px;object-position:50% 25%}.auth-art-copy{inset:auto 24px 20px}.auth-art-copy p{font-size:24px}.auth-art::after{inset:20% 0 0}.auth-panel{max-width:540px;margin:auto;padding:32px 0 0}.auth-panel h1{font-size:46px}.auth-panel .sub{font-size:16px}.auth-panel .kicker{font-size:10px}.auth-footnote{margin-top:22px;padding-top:20px}.message-page{padding-block:45px 75px;min-height:65svh}.account-grid{grid-template-columns:1fr}.metrics{gap:12px}.metrics .panel{padding:20px}.metrics strong{font-size:36px}.metrics span{font-size:12px}.invite-grid,.edit-grid{grid-template-columns:1fr}.workspace-page{padding-top:30px}.panel{padding:22px}.user-card{padding:0}.user-card summary{gap:10px;padding:16px}.user-avatar{width:32px;height:32px;flex-basis:32px;font-size:20px}.user-card .status-pill{font-size:10px;padding:4px 7px}.user-card .expand-icon{display:none}.header-actions .btn{padding:12px 18px;font-size:13px}.site-footer{display:block;padding-block:30px}.site-footer p{margin:12px 0}.footer-links{margin:20px 0}.site-footer small{display:block}.cookie-dialog{padding:24px}.cookie-dialog h2{font-size:34px}.hero .scene-caption{right:18px}.hero .hero-copy{padding-top:14px}}
@media(max-width:430px){.auth-panel h1{font-size:39px}.auth-art{max-height:220px}.auth-art>img{height:220px}.auth-layout{padding-top:8px}.header-row .logo{font-size:20px}.metrics{grid-template-columns:1fr}.metrics .panel{display:flex;align-items:center;gap:18px}.user-card summary{flex-wrap:wrap}.user-card .status-pill{margin-left:42px}.cookie-category{align-items:flex-start;flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portrait-arch img{transition:none}.nisse:hover .portrait-arch img{transform:none}}

.close-button{border-radius:50%;box-shadow:none;appearance:none}.close-button:focus:not(:focus-visible){outline:none}

/* Symbol definitions never occupy a line before workspace headings. */
.shop-symbols{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.admin-heading{align-items:flex-start}.admin-heading .header-actions{padding-top:16px}

/* Keep administration spacing consistent without changing customer workspaces. */
.admin-area .workspace-page {
	--admin-gap: 24px;
	--admin-section-gap: 40px;
	--admin-heading-gap: 16px;
}
.admin-area .workspace-page > * { margin-block: 0; }
.admin-area .workspace-page > * + * { margin-top: var(--admin-gap); }
.admin-area .workspace-page > .text-link { display: flex; width: fit-content; }
.admin-area .workspace-page > .admin-heading + .admin-tabs { margin-top: 12px; }
.admin-area .workspace-page > .admin-tabs + * { margin-top: 32px; }
.admin-area .workspace-page > :is(h2, h3),
.admin-area .ai-history-heading h2 {
	font-size: clamp(28px, 3vw, 36px);
	line-height: 1.2;
	max-width: none;
}
.admin-area .workspace-page > :is(h2, h3) { margin-top: var(--admin-section-gap); }
.admin-area .workspace-page > :is(h2, h3) + * { margin-top: var(--admin-heading-gap); }
.admin-area .panel > :first-child { margin-top: 0; }
.admin-area .panel > :last-child { margin-bottom: 0; }
.admin-area .panel > :is(.kicker, .eyebrow) { margin-block: 0 12px; }
.admin-area .panel > :is(h2, h3) { margin-block: 0 var(--admin-heading-gap); line-height: 1.2; }
.admin-area .workspace-feedback:empty { display: none; }
.admin-area .workspace-page > .ai-results { margin-top: var(--admin-section-gap); padding-top: 0; }
.admin-area .ai-history-heading { margin-bottom: var(--admin-heading-gap); }
.admin-area .ai-history-heading :is(.kicker, h2) { margin: 0; }
.admin-area .ai-history-heading .kicker { margin-bottom: 12px; }
.admin-area .ai-results > .small-copy { margin-bottom: var(--admin-heading-gap); }
.admin-area .gnome-legend { padding-block: 8px var(--admin-gap); }
.admin-area .calendar-editor { padding-top: 0; }
.admin-area .calendar-editor-heading { margin-block: 0 var(--admin-gap); }
@media (max-width: 780px) {
	.admin-area .workspace-page { --admin-gap: 20px; --admin-section-gap: 32px; --admin-heading-gap: 14px; }
	.admin-area .workspace-page > .admin-tabs + * { margin-top: 24px; }
	.admin-area .admin-heading .header-actions { padding-top: 0; }
}
