.preview-login{margin:0;min-height:100vh;min-height:100dvh;box-sizing:border-box;display:grid;place-items:center;padding:max(28px,env(safe-area-inset-top)) max(28px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(28px,env(safe-area-inset-left));background:#10261f;color:#f4ecdd;font:16px/1.55 system-ui,sans-serif;isolation:isolate}
.preview-backdrop{position:fixed;inset:-7px;z-index:-2;pointer-events:none;background:url('/preview-construction-v39.webp') center/cover no-repeat;filter:blur(2px)}
.preview-login::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#08130c42 0%,#0c211d66 48%,#081b16ab 100%),linear-gradient(0deg,#081812bf,transparent 60%)}
.preview-layout{width:min(1216px,100%);display:grid;grid-template-columns:minmax(0,1fr) 414px;align-items:center;gap:70px}
.preview-story{padding-top:120px;text-shadow:0 2px 24px #0008}
.preview-badge{display:inline-flex;align-items:center;gap:10px;color:#f1d8a9;font-size:10px;letter-spacing:.18em;border:1px solid #e1c08b66;border-radius:30px;padding:9px 14px;background:#11281d8c}
.preview-badge>span{width:5px;height:5px;border-radius:50%;background:#d5b47b}
.preview-story h2{font:400 clamp(34px,4.2vw,58px)/1.12 Georgia,serif;letter-spacing:-.025em;margin:26px 0 20px}
.preview-story>p:not(.preview-badge){font-size:14px;line-height:1.8;color:#e8e3d7;margin:0}
.preview-story-note{display:flex;gap:12px;align-items:center;margin-top:42px;color:#e0c798;font-size:12px;letter-spacing:.04em}.preview-story-note>span{font-size:19px}
.preview-card{width:100%;box-sizing:border-box;padding:32px 32px 26px;border:1px solid #bca37366;border-radius:20px;background:#112b23f5;box-shadow:0 24px 90px #0004}
.preview-emblem{width:64px;height:64px;object-fit:contain}.preview-eyebrow{color:#cfb47e;font-size:10px;letter-spacing:.15em;margin:18px 0 12px}
.preview-card h1{font:400 clamp(29px,3.2vw,35px)/1.15 Georgia,serif;letter-spacing:-.02em;margin:0 0 18px}.preview-intro{color:#c8cec3;font-size:12px;line-height:1.8;margin-bottom:23px}
.preview-card label{display:grid;gap:7px;font-size:12px;margin:16px 0}.preview-card input{box-sizing:border-box;width:100%;min-height:46px;padding:11px 13px;border:1px solid #bba47b55;border-radius:8px;color:#f7f0e1;background:#0c2019;font:inherit;font-size:16px}.preview-card input::placeholder{color:#81958b;font-size:12px}.preview-card input:focus{outline:2px solid #c9ae78;outline-offset:2px}
.preview-card button{width:100%;min-height:48px;margin-top:8px;padding:12px 16px;border:1px solid #e5c88b55;border-radius:8px;background:#c5a974;color:#14251c;font:600 14px system-ui;cursor:pointer;transition:background .15s}.preview-card button:hover{background:#d3b983}.preview-card button span{float:right}.preview-card button:focus-visible,.preview-footer a:focus-visible{outline:2px solid #ecd29e;outline-offset:3px}.preview-card button:disabled{opacity:.6;cursor:wait}
.preview-footer{border-top:1px solid #bca37333;margin-top:12px;padding-top:18px;display:grid;gap:11px;font-size:11px;color:#a8b8a9}.preview-footer>span{display:flex;align-items:center;gap:8px}.preview-footer svg{width:15px;height:15px;flex:none}.preview-footer a{color:#dec798;text-decoration:none}.preview-footer a:hover{text-decoration:underline}.preview-footer a span{margin-left:5px}#preview-login-message{font-size:12px;min-height:1.4em;color:#f1c29d;margin-bottom:0}
.preview-logout{position:fixed;right:16px;bottom:70px;z-index:80;padding:10px 15px;border:1px solid #bca37388;border-radius:10px;background:#173126;color:#f4ecdd;cursor:pointer}
.access-controls .check{display:flex;align-items:center;gap:10px}.access-controls input[type=checkbox]{width:auto}.access-controls input{max-width:420px}
.access-password-dialog{box-sizing:border-box;width:min(440px,calc(100% - 32px));padding:28px;border:1px solid #bca37388;border-radius:16px;background:#173126;color:#f4ecdd;font:14px/1.6 system-ui;box-shadow:0 12px 60px #0008}.access-password-dialog::backdrop{background:#0009}.access-password-dialog h2{font:28px Georgia,serif;margin:0 0 14px}.access-password-dialog input{box-sizing:border-box;width:100%;padding:12px;margin:14px 0;background:#10261e;color:#f4ecdd;border:1px solid #bca37388;border-radius:8px;font:16px monospace}.access-password-dialog button{padding:10px 16px;min-height:44px;border:1px solid #bca37388;border-radius:8px;background:#c5a974;color:#19291f;cursor:pointer;margin:8px 8px 0 0}
@media(max-width:950px){.preview-layout{gap:36px;grid-template-columns:minmax(0,1fr) 380px}.preview-story h2{font-size:40px}.preview-wide-break{display:none}}
@media(max-width:720px){.preview-login{padding:24px 18px}.preview-layout{max-width:414px;grid-template-columns:1fr;gap:22px}.preview-story{padding:0}.preview-story h2,.preview-story>p:not(.preview-badge),.preview-story-note{display:none}.preview-badge{margin:0;font-size:9px}.preview-backdrop{background-position:34% center}.preview-login::before{background:linear-gradient(180deg,#0a1e1770,#0a1e17c9)}.preview-card{padding:28px 26px 24px}.preview-card h1{font-size:33px}.preview-logout{bottom:132px;right:12px}}
@media(max-width:360px){.preview-card{padding:24px 20px}.preview-card h1{font-size:29px}.preview-intro br{display:none}}
@media(prefers-reduced-motion:reduce){.preview-card button{transition:none}}
