/* «Шлих» — карточный каталог фильмотеки. Дубовые ящики, кремовые карточки, машинописный шрифт. */
:root{--oak:#4a3424;--oak2:#6b4a30;--oakl:#8a6440;--brass:#b8933f;--brass2:#e2c77e;--paper:#fbf7ea;--paper2:#f3ecd6;
--line:#d8ccad;--ink:#2a241d;--ink2:#5d5446;--red:#a8332a;--blue:#8fa9c2;--bg:#e6e0cf;--screen:#1b1712}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.55 "Old Standard TT",Georgia,serif}
a{color:#7b2a20}a:hover{color:var(--red)}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1160px;margin:0 auto;padding:0 18px}
.mono,code,.card,.shifr{font-family:"Anonymous Pro",ui-monospace,monospace}
h1,h2,h3{font-weight:700;line-height:1.2;margin:1.2em 0 .5em}
h1{font-size:2.05rem}h2{font-size:1.45rem}h3{font-size:1.12rem}
p{margin:.5em 0 .9em}
/* шапка */
.top{background:linear-gradient(#3a281b,#4a3424 60%,#3a281b);border-bottom:4px solid #241811;color:#efe3c7}
.top .wrap{display:flex;align-items:center;gap:22px;padding-top:14px;padding-bottom:12px;flex-wrap:wrap}
.plate{display:inline-block;text-decoration:none;color:#2a1d10;background:linear-gradient(#ead18a,#c9a453 55%,#a9852f);
border:1px solid #6e531c;border-radius:4px;padding:6px 16px 4px;box-shadow:inset 0 1px 0 #fff3c4,0 2px 0 #1c120b;
font:700 1.65rem/1 "Old Standard TT",serif;letter-spacing:.18em;position:relative}
.plate:before,.plate:after{content:"";position:absolute;top:50%;width:5px;height:5px;margin-top:-2px;border-radius:50%;background:#5b4417}
.plate:before{left:5px}.plate:after{right:5px}
.tag{font-style:italic;color:#d9c9a2;font-size:.98rem}
nav.tabs{background:#2c1f15}
nav.tabs .wrap{display:flex;gap:4px;overflow-x:auto;padding-top:8px;scrollbar-width:none}
nav.tabs a{flex:0 0 auto;display:block;padding:7px 14px 6px;background:var(--paper2);color:var(--ink);text-decoration:none;
border-radius:7px 7px 0 0;font:700 .86rem/1.2 "Anonymous Pro",monospace;letter-spacing:.04em;text-transform:uppercase;border:1px solid #c9bd9b;border-bottom:0}
nav.tabs a.on{background:var(--paper);box-shadow:0 -3px 0 var(--red) inset}
nav.tabs a:hover{background:#fff}
main{padding:8px 0 40px}
.crumbs{font:.86rem "Anonymous Pro",monospace;color:var(--ink2);margin:16px 0 0}
.crumbs a{color:var(--ink2)}
.lead{font-size:1.12rem;max-width:44em}
.note{color:var(--ink2);font-size:.95rem}
/* ящики каталога */
.drawers{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin:14px 0 26px}
.drawer{display:block;text-decoration:none;color:var(--ink);background:linear-gradient(160deg,var(--oakl),var(--oak2) 45%,var(--oak));
border:1px solid #2e1f14;border-radius:5px;padding:16px 16px 40px;position:relative;box-shadow:inset 0 0 0 4px rgba(0,0,0,.12),0 3px 0 #2e1f14}
.drawer .holder{display:block;background:linear-gradient(#e3c579,#b48c3a);border:1px solid #6a4f19;border-radius:3px;padding:4px}
.drawer .label{display:block;background:var(--paper);border:1px solid #cbbd98;padding:6px 10px;min-height:66px}
.drawer .lt{font:700 1.5rem/1 "Old Standard TT",serif;color:var(--red);float:left;margin-right:9px}
.drawer .ln{font-weight:700;display:block;line-height:1.15}
.drawer .ls{font:.8rem "Anonymous Pro",monospace;color:var(--ink2)}
.drawer .ring{position:absolute;left:50%;bottom:9px;width:38px;height:20px;margin-left:-19px;border:3px solid #c7a24c;border-top:0;border-radius:0 0 20px 20px}
.drawer .ring:before{content:"";position:absolute;top:-6px;left:-8px;right:-8px;height:6px;background:#a8842f;border-radius:2px}
.drawer .cnt{position:absolute;right:12px;bottom:9px;font:.8rem "Anonymous Pro",monospace;color:#f0e2bd}
.drawer:hover .label{background:#fff}
/* карточки */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin:12px 0 26px}
.card{display:block;position:relative;text-decoration:none;color:var(--ink);background:var(--paper);border:1px solid var(--line);
padding:12px 14px 30px;font-size:.9rem;line-height:1.45;min-height:170px;
background-image:linear-gradient(transparent 34px,var(--red) 34px,var(--red) 35px,transparent 35px),
repeating-linear-gradient(transparent 0,transparent 21px,rgba(143,169,194,.35) 21px,rgba(143,169,194,.35) 22px);
background-position:0 0,0 36px;box-shadow:1px 2px 0 rgba(60,40,20,.18)}
.card:after{content:"";position:absolute;left:50%;bottom:8px;width:13px;height:13px;margin-left:-6px;border-radius:50%;background:var(--bg);box-shadow:inset 1px 1px 2px rgba(0,0,0,.35)}
.card .sh{font-weight:700;color:var(--red)}.card .yr{float:right;color:var(--ink2)}
.card .t{display:block;font-weight:700;margin-top:12px;font-size:1rem}
.card .o{display:block;color:var(--ink2);font-style:italic}
.card .m{display:block;margin-top:4px}
.card .th{float:right;width:96px;margin:30px 0 4px 10px;border:1px solid var(--line);filter:sepia(.35)}
.card:hover{background-color:#fff;transform:translateY(-1px)}
.badge{display:inline-block;border:1px solid currentColor;padding:0 5px;border-radius:2px;font-size:.78rem;line-height:1.5;margin-right:4px}
.badge.long{color:#7b2a20}.badge.mute{color:#56677a}
/* просмотровый стол */
.desk{background:var(--screen);color:#e9dfc8;margin:12px 0 0;padding:22px 0 26px;border-top:3px solid #0e0b08;border-bottom:3px solid #0e0b08}
.desk .wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}
.kino{position:relative}
.kino .ekran{position:relative;background:#000;aspect-ratio:4/3;max-height:72vh;margin:0 auto;border:8px solid #2b241c;border-radius:4px;box-shadow:0 0 0 1px #000}
.kino video{position:absolute;inset:0;width:100%;height:100%;background:#000}
.kino-start{position:absolute;inset:0;border:0;padding:0;margin:0;cursor:pointer;background:#000 center/cover no-repeat;display:flex;align-items:center;justify-content:center}
.kino-start span{background:rgba(20,15,10,.78);color:#f3e6c6;border:1px solid #c9a453;padding:10px 18px;font:700 1rem "Anonymous Pro",monospace;letter-spacing:.06em}
.kino-start:hover span{background:#a8332a}
.kino-pult{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px;font:.86rem "Anonymous Pro",monospace;color:#c9bb9a}
.kino-kach button,.kino-dalee{font:700 .82rem "Anonymous Pro",monospace;background:#2b241c;color:#efe3c7;border:1px solid #5d4c33;padding:4px 10px;cursor:pointer}
.kino-kach button.on{background:#c9a453;color:#1b1712;border-color:#c9a453}
.kino-dalee{background:#a8332a;border-color:#a8332a}
.kino-kach{display:flex;gap:4px;flex-wrap:wrap}
.desk .card{min-height:0}
.desk .card dl{margin:12px 0 0;display:grid;grid-template-columns:auto 1fr;gap:1px 10px}
.desk .card dt{color:var(--ink2)}.desk .card dd{margin:0}
/* таблицы */
table.list{width:100%;border-collapse:collapse;background:var(--paper);font-size:.93rem;margin:10px 0 24px}
table.list th,table.list td{border-bottom:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}
table.list th{font:700 .8rem "Anonymous Pro",monospace;text-transform:uppercase;background:var(--paper2)}
table.list td.n{font-family:"Anonymous Pro",monospace;white-space:nowrap}
.tblw{overflow-x:auto}
.cols{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px}
aside .box{background:var(--paper);border:1px solid var(--line);padding:12px 16px;margin:14px 0}
aside .box h3{margin-top:.2em}
ul.parts{list-style:none;padding:0;margin:8px 0}
ul.parts li{padding:5px 0 5px 26px;border-bottom:1px dotted var(--line);position:relative;font-family:"Anonymous Pro",monospace;font-size:.92rem}
ul.parts li:before{content:"§";position:absolute;left:6px;color:var(--red)}
.letters{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0 20px}
.letters a{display:inline-block;min-width:32px;text-align:center;padding:4px 0;background:var(--paper);border:1px solid var(--line);text-decoration:none;font:700 1rem "Anonymous Pro",monospace;color:var(--ink)}
.years{border-left:3px solid var(--oak2);margin:14px 0 20px 8px;padding-left:18px}
.years h3{position:relative;margin-top:1.4em}
.years h3:before{content:"";position:absolute;left:-26px;top:.25em;width:13px;height:13px;background:var(--brass);border:2px solid var(--oak);border-radius:50%}
dl.gl dt{font-weight:700;margin-top:14px;font-size:1.08rem}
dl.gl dd{margin:2px 0 0 0}
dl.gl dd .see{font:.86rem "Anonymous Pro",monospace;color:var(--ink2)}
/* форма-требование */
form.req{background:var(--paper);border:1px solid var(--line);padding:18px 22px;max-width:640px;font-family:"Anonymous Pro",monospace;
background-image:repeating-linear-gradient(transparent 0,transparent 27px,rgba(143,169,194,.3) 27px,rgba(143,169,194,.3) 28px)}
form.req label{display:block;margin:12px 0 4px;font-weight:700}
form.req input[type=text],form.req input[type=email],form.req select,form.req textarea{width:100%;font:1rem "Anonymous Pro",monospace;padding:7px 8px;border:1px solid #b9ab86;background:#fffdf5}
form.req textarea{min-height:140px}
form.req .chk{display:flex;gap:8px;align-items:flex-start;font-weight:400;font-size:.9rem}
form.req button{margin-top:16px;font:700 1rem "Anonymous Pro",monospace;background:var(--red);color:#fff;border:0;padding:9px 20px;cursor:pointer}
.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
footer{background:#2c1f15;color:#cdbf9f;font-size:.92rem;padding:22px 0 30px;margin-top:20px}
footer a{color:#ecd9a8}
footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}
footer h4{margin:0 0 6px;font:700 .82rem "Anonymous Pro",monospace;text-transform:uppercase;letter-spacing:.06em;color:#e9d39a}
footer ul{list-style:none;padding:0;margin:0}footer li{margin:3px 0}
.pager{display:flex;justify-content:space-between;gap:10px;margin:22px 0;font-family:"Anonymous Pro",monospace;font-size:.92rem}
@media (max-width:900px){.desk .wrap,.cols{grid-template-columns:1fr}footer .wrap{grid-template-columns:1fr}}
@media (max-width:560px){body{font-size:16px}h1{font-size:1.6rem}.cards{grid-template-columns:1fr}.top .wrap{gap:10px}.plate{font-size:1.35rem}}
