@font-face{font-family:Manrope;src:url('/assets/manrope.woff2') format('woff2');font-weight:400 800;font-display:swap}
@font-face{font-family:Space;src:url('/assets/space-grotesk.woff2') format('woff2');font-weight:400 700;font-display:swap}
:root{--ink:#282019;--paper:#f6f2ea;--white:#fffdfa;--line:#d7cabb;--muted:#625850;--terra:#8a3e2b;--deep:#6f2f20;--dark:#251e19;--font:Manrope,Arial,sans-serif;--heading:Space,Manrope,Arial,sans-serif;color:var(--ink);background:var(--paper);font:16px var(--font);color-scheme:light}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0}
a{color:inherit}
p,h1,h2,h3{margin:0;overflow-wrap:anywhere}
h1,h2,h3{font-family:var(--heading);letter-spacing:-.045em;line-height:1.04}
h1{font-size:clamp(2.2rem,5vw,3.5rem)}
h2{font-size:clamp(1.45rem,3vw,2rem)}
h3{font-size:1.14rem}
button,input,select,textarea{font:inherit;color:inherit}
button,.secondary{display:inline-flex;justify-content:center;align-items:center;gap:6px;border:1px solid var(--line);background:var(--white);color:var(--ink);min-height:44px;padding:8px 12px;font-size:.87rem;font-weight:800;text-align:center;text-decoration:none;cursor:pointer}
button:hover,.secondary:hover{background:#ede3d6}
button:disabled{opacity:.6;cursor:default}
.primary{background:var(--terra);border-color:var(--terra);color:#fff}
.primary:hover:not(:disabled){background:var(--deep)}
.danger{border-color:#b67f72;color:#882a1d}
.danger:hover{background:#f7e9e4}
.wide{width:100%}
:focus-visible{outline:3px solid #a34b36;outline-offset:3px}
.admin-header :focus-visible{outline-color:#ffbb93}
.skip{position:absolute;z-index:4;top:0;left:0;background:#fff;color:#231b15;padding:10px;transform:translateY(-100%)}
.skip:focus{transform:none}
.login-page{min-height:100svh;display:grid;place-items:center;padding:18px;background:#eaddca}
.login-card{width:min(100%,462px);background:var(--white);padding:clamp(22px,5vw,42px);border:1px solid #bcaa96;border-top:5px solid var(--terra)}
.admin-logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;width:fit-content;line-height:1.1}
.admin-logo img{display:block;width:42px;height:42px}
.admin-logo strong,.admin-logo small{display:block}
.admin-logo strong{font:700 1.12rem var(--heading);letter-spacing:.055em}
.admin-logo small{font-size:.61rem;font-weight:800;letter-spacing:.11em;margin-top:2px}
.login-heading{margin:28px 0 23px}
.login-heading h1{margin:6px 0 11px}
.login-heading>p:last-child,.login-help{color:var(--muted);line-height:1.55;font-size:.92rem}
.login-help{font-size:.83rem}
.login-card form{display:grid;gap:14px}
label,.field{display:grid;gap:6px;font-size:.89rem;font-weight:750;min-width:0}
label small,.help{display:block;color:var(--muted);line-height:1.5;font-size:.79rem;font-weight:600}
input:not([type=checkbox]),textarea,select{width:100%;min-width:0;min-height:44px;border:1px solid #bbaa96;background:#fff;padding:8px 10px;border-radius:0;font-size:1rem}
input[type=file]{font-size:.84rem}
input[type=checkbox]{width:19px;height:19px;accent-color:var(--terra)}
textarea{min-height:92px;resize:vertical}
.password-wrap{display:flex}
.password-wrap button{border-left:0}
.status{font-size:.83rem;font-weight:700;line-height:1.4;min-width:0;overflow-wrap:anywhere;color:#3b6049}
.status:empty{display:none}
.status.error{color:#952f20}
.subtle-link{display:inline-flex;align-items:center;min-height:44px;font-size:.88rem;font-weight:750;text-underline-offset:4px;margin-top:9px}
.notice,.empty,.loading{padding:15px;background:#f0e5d5;border:1px solid #d7c6b2;color:#5d4a3c;font-size:.91rem;line-height:1.55}
.admin-header{background:var(--dark);color:#faf4ea;min-height:72px;padding:11px max(17px,calc((100vw - 1500px)/2 + 25px));display:flex;justify-content:space-between;align-items:center;gap:13px}
.admin-header .admin-logo small{color:#f0b591}
.admin-header-actions{display:flex;gap:8px;align-items:center}
.admin-header-actions button,.admin-header-actions a{background:none;color:inherit;border-color:#8c6e59}
.admin-header-actions button:hover,.admin-header-actions a:hover{background:#533628}
.admin-layout{display:grid;grid-template-columns:235px minmax(0,1fr);width:min(100%,1500px);margin:auto;min-height:calc(100vh - 72px)}
.admin-nav{padding:23px 12px 100px 17px;border-right:1px solid var(--line);background:#eee5d8}
.admin-nav button{display:flex;justify-content:flex-start;text-align:left;background:none;border-color:transparent;width:100%;gap:10px}
.admin-nav button[aria-current=page]{color:#732d1b;background:#fdf7ee;border-color:#d7beaa}
.admin-nav button:hover{background:#fdf7ee}
.nav-mobile{display:none}
.nav-index{font:700 .7rem var(--heading);color:var(--terra);width:21px;flex:none}
.workspace{padding:clamp(19px,4vw,55px) clamp(17px,4.4vw,70px) 140px;min-width:0}
.workspace-content{width:min(100%,1070px);margin-inline:auto}
.page-heading{margin-bottom:23px}
.page-heading h1{margin:5px 0 8px}
.eyebrow{font:700 .72rem var(--heading);letter-spacing:.12em;color:var(--terra);text-transform:uppercase}
.page-heading>p:last-child{color:var(--muted);line-height:1.5;font-size:.94rem}
.panel{padding:clamp(14px,2.3vw,27px);background:var(--white);border:1px solid var(--line);margin:0 0 16px;min-width:0}
.panel h2{margin-bottom:13px}
.panel>p:not(.status){margin:0 0 14px;color:var(--muted);line-height:1.55;font-size:.9rem}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.field-grid>.full{grid-column:1/-1}
.field-inline{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.field-inline label,.field-inline .chooser{flex:1 1 180px}
.field-inline .upload-input{flex:0 0 auto}
.field-inline button{white-space:normal}
.section-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.section-editor summary{cursor:pointer;font-weight:800;padding:10px 0;min-height:44px;overflow-wrap:anywhere}
.section-editor .field-grid{padding-top:12px}
.quick-grid,.media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,213px),1fr));gap:13px}
.quick-grid button{min-height:104px;display:grid;align-content:center;justify-content:start;text-align:left;background:#fffdfa;gap:6px;padding:16px}
.quick-grid button:hover{background:#f1e6d7}
.quick-grid strong{font:700 1.31rem var(--heading);letter-spacing:-.035em}
.quick-grid small{color:var(--muted);font-size:.81rem;line-height:1.42;font-weight:650}
.action-row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:13px}
.action-row h2{margin-bottom:0}
.record-list{display:grid;gap:8px}
.record{border:1px solid var(--line);background:var(--white);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;min-width:0}
.record strong,.media-card strong{display:block;overflow-wrap:anywhere}
.record small,.media-card small{display:block;color:var(--muted);font-size:.79rem;line-height:1.45;overflow-wrap:anywhere}
.record-tools,.editor-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px;flex:none}
.record-tools button{padding:7px 10px}
.thumb{width:100%;aspect-ratio:1.65;background:#eadcca;display:grid;place-items:center;overflow:hidden;color:#594334;font-size:.8rem;font-weight:800}
.thumb img{width:100%;height:100%;object-fit:cover}
.media-card{min-width:0;padding:9px;border:1px solid var(--line);background:var(--white)}
.media-card strong{margin-top:9px}
.media-card .record-tools{margin-top:8px;gap:4px}
.media-card .record-tools button{padding:6px;font-size:.75rem}
.media-card .record-tools .danger{border-color:transparent;background:transparent}
.library-upload{display:flex;flex-wrap:wrap;gap:8px;align-items:end}
.library-upload label{flex:1 1 220px}
.publish-bar{position:fixed;z-index:2;left:0;right:0;bottom:0;background:#fcf7ed;border-top:1px solid #c8b5a0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px max(17px,calc((100vw - 1400px)/2)) max(10px,env(safe-area-inset-bottom))}
.publish-bar strong{font-size:.87rem}
.publish-bar button{flex:none}
.publish-bar p{margin-top:4px}
.editor{padding:clamp(17px,3vw,30px);width:min(680px,calc(100% - 20px));max-height:calc(100% - 22px);border:1px solid var(--line);background:var(--white);color:var(--ink);overflow:auto;overscroll-behavior:contain}
.editor::backdrop{background:#251b14bd}
.editor form{display:grid;gap:14px}
.editor h2{margin-bottom:4px}
.editor-actions{justify-content:flex-end;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:10px}
.editor .help{margin-top:4px}
.editor .photo-list{display:grid;gap:7px}
.photo-row{display:flex;align-items:center;justify-content:space-between;gap:7px;background:#f2e9dd;padding:2px 7px;font-size:.8rem}
.photo-row button{min-width:44px}
.confirm{width:min(420px,calc(100% - 20px))}
.confirm p{line-height:1.55}
@media(max-width:830px){.admin-layout{display:block}.admin-nav{padding:10px 17px;border:0;border-bottom:1px solid var(--line)}.nav-desktop{display:none}.nav-mobile{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:10px;align-items:center}.nav-mobile select{font-size:.9rem;font-weight:750}.workspace{padding-top:21px}}
@media(max-width:570px){.field-grid{grid-template-columns:1fr}.admin-header{min-height:62px}.admin-header .admin-logo strong{font-size:.95rem}.admin-logo img{width:36px;height:36px}.admin-header-actions button,.admin-header-actions a{padding:6px 8px;font-size:.78rem}.record{align-items:start;flex-wrap:wrap}.record-tools{max-width:100%}.publish-bar button{font-size:.78rem;padding-inline:8px}.publish-bar strong{font-size:.77rem}.publish-bar p{font-size:.72rem}.quick-grid{grid-template-columns:1fr 1fr}.quick-grid button{min-height:92px;padding:10px}.quick-grid strong{font-size:1.08rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.editor-extra{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.editor-extra summary{cursor:pointer;font-size:.9rem;font-weight:800;display:list-item;padding:13px 0;min-height:44px}
.editor-extra .field-grid{padding:6px 0 14px}
.editor:not(.confirm) .editor-actions{position:sticky;bottom:-1px;background:var(--white);padding-bottom:4px}
.login-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.language-link{display:inline-flex;flex:none;min-height:44px;min-width:44px;align-items:center;justify-content:center;border:1px solid currentColor;font:700 .8rem var(--heading);text-decoration:none}
.admin-header-actions .language-link{color:#f0b591}
.admin-header .admin-logo{min-width:0}
.admin-header .admin-logo img{flex:none}
.admin-header .admin-logo span{min-width:0}
@media(max-width:410px){.admin-header{padding-inline:12px;gap:8px}.admin-header-actions{gap:4px}.admin-header-actions .language-link{min-width:42px}}
.setup-card{width:min(100%,510px)}
.setup-card [data-password-step]{display:grid;gap:14px}
