:root{color-scheme:light;--ink:#101d39;--muted:#4b5568;--accent:#f6a21b;--paper:#fff8eb;--line:#e7dfd1}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(ellipse at top left,#ffe8bb,transparent 60%),var(--paper);color:var(--ink);font:16px/1.5 system-ui,sans-serif}
header,main,footer{width:min(1100px,calc(100% - 36px));margin-inline:auto}
header{height:75px;display:flex;align-items:center;gap:12px;font-weight:800;border-bottom:1px solid #e2cfaa}
header span{color:#6c490c;font-size:.75rem;letter-spacing:.12em;font-weight:700}
.layout{padding:32px 0 16px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.94fr);gap:30px;align-items:start}
.poster{width:100%;height:auto;display:block;border-radius:20px;box-shadow:0 16px 40px #734c191a}
.card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(20px,3vw,34px);box-shadow:0 16px 40px #734c1910}
.badge{display:inline-block;background:#ffedc6;border-radius:100px;padding:4px 11px;color:#684000;font-size:.8rem;font-weight:800;letter-spacing:.06em}
h1{font-size:clamp(1.65rem,4vw,2.45rem);line-height:1.16;margin:12px 0 14px;letter-spacing:-.025em}
h2{font-size:1.1rem;margin:0 0 10px}
.details{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:0 0 19px;padding:12px 14px;background:#fff7e8;border-radius:12px;font-size:.92rem}
.details div:last-child{grid-column:1/-1}
dt{font-size:.75rem;color:#75521f}dd{margin:0;font-weight:700}
form{display:grid;gap:11px}
label{display:grid;gap:5px;font-size:.93rem;font-weight:750}
input{width:100%;font:inherit;font-size:16px;border:1px solid #b7b6b4;border-radius:10px;padding:10px 12px;color:var(--ink);background:white;min-height:45px}
input:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #1855a6;outline-offset:2px}
button,.button{border:0;border-radius:10px;background:var(--accent);color:#171d2a;min-height:48px;padding:11px 16px;font:inherit;font-weight:850;text-align:center;cursor:pointer}
.note{color:var(--muted);font-size:.81rem;margin:0}.error{color:#a12116;background:#fff0eb;padding:10px 12px;border-radius:8px;margin:0}
footer{color:var(--muted);padding:18px 0 28px;font-size:.88rem;text-align:center}a{color:#164b88}
.admin{max-width:850px;padding-top:30px}.admin form{max-width:390px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{padding:9px 10px;text-align:left;border-bottom:1px solid var(--line)}th{white-space:nowrap}
@media(max-width:740px){header{height:57px}.layout{grid-template-columns:1fr;padding-top:18px;gap:17px}.poster-wrap{grid-row:2}.poster{max-width:520px;margin-inline:auto}.admin{padding-top:18px}}
