/* Black & Gold. Шрифты из бренд-бука GoPrep: GoPrep Display (заголовки, цифры) и Nunito Sans (текст) */
@font-face { font-family:'GoPrep Display'; src:url(/fonts/GoPrepDisplay-Regular.woff2) format('woff2'); font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:400; src:url(/fonts/NunitoSans-400-cyrillic-ext.woff2) format('woff2'); unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:400; src:url(/fonts/NunitoSans-400-cyrillic.woff2) format('woff2'); unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:400; src:url(/fonts/NunitoSans-400-latin-ext.woff2) format('woff2'); unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:400; src:url(/fonts/NunitoSans-400-latin.woff2) format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:600; src:url(/fonts/NunitoSans-600-cyrillic-ext.woff2) format('woff2'); unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:600; src:url(/fonts/NunitoSans-600-cyrillic.woff2) format('woff2'); unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:600; src:url(/fonts/NunitoSans-600-latin-ext.woff2) format('woff2'); unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:600; src:url(/fonts/NunitoSans-600-latin.woff2) format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:700; src:url(/fonts/NunitoSans-700-cyrillic-ext.woff2) format('woff2'); unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:700; src:url(/fonts/NunitoSans-700-cyrillic.woff2) format('woff2'); unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:700; src:url(/fonts/NunitoSans-700-latin-ext.woff2) format('woff2'); unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:700; src:url(/fonts/NunitoSans-700-latin.woff2) format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:800; src:url(/fonts/NunitoSans-800-cyrillic-ext.woff2) format('woff2'); unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:800; src:url(/fonts/NunitoSans-800-cyrillic.woff2) format('woff2'); unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:800; src:url(/fonts/NunitoSans-800-latin-ext.woff2) format('woff2'); unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; font-display:swap; }
@font-face { font-family:'Nunito Sans'; font-weight:800; src:url(/fonts/NunitoSans-800-latin.woff2) format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; font-display:swap; }

:root {
  --bg:#151515; --card:#1e1e1e; --card2:#252525; --line:#2e2e2e; --line2:#3a3a3a;
  --text:#f1efe9; --muted:#8d8b84;
  --gold:#f2cf75; --gold2:#d6ae55; --gold-bg:rgba(242,207,117,.09); --gold-line:rgba(242,207,117,.45);
  --ok:#8fd19e; --ok-bg:rgba(143,209,158,.12); --bad:#ff7a70; --bad-bg:rgba(255,122,112,.12); --warn:#f0b35a; --warn-bg:rgba(240,179,90,.13);
  --display:'GoPrep Display','Nunito Sans',system-ui,sans-serif; --body:'Nunito Sans',system-ui,'Segoe UI','Hiragino Sans','Yu Gothic',sans-serif;
}
* { box-sizing:border-box; }
html { color-scheme:dark; }
body { margin:0; color:var(--text); font:15px/1.55 var(--body); -webkit-font-smoothing:antialiased;
  background:radial-gradient(900px 520px at 82% -8%, rgba(242,207,117,.07), transparent 60%), radial-gradient(700px 500px at -5% 105%, rgba(255,255,255,.035), transparent 60%), var(--bg); min-height:100vh; }
[hidden] { display:none !important; }
a { color:var(--gold); text-decoration:none; } a:hover { text-decoration:underline; }
.ic { width:17px; height:17px; flex:none; vertical-align:-3px; }
h1,h2,h3 { font-family:var(--display); font-weight:400; letter-spacing:.2px; }

/* шапка */
.top { position:sticky; top:0; z-index:20; display:flex; align-items:center; gap:28px; padding:16px 36px; background:rgba(21,21,21,.86); backdrop-filter:blur(12px); border-bottom:1px solid var(--line); }
.logo { display:flex; align-items:center; gap:11px; font-family:var(--display); font-size:20px; white-space:nowrap; }
.logo i { width:13px; height:13px; border-radius:50%; background:radial-gradient(circle at 35% 35%, #fff3c9, var(--gold) 55%, var(--gold2)); box-shadow:0 0 14px rgba(242,207,117,.55); }
#nav { display:flex; gap:4px; margin-left:auto; flex-wrap:wrap; justify-content:flex-end; }
.nb { background:none; border:0; color:var(--text); font:700 11px/1 var(--body); letter-spacing:.14em; text-transform:uppercase; padding:11px 13px; border-radius:99px; cursor:pointer; opacity:.78; position:relative; }
.nb:hover { opacity:1; }
.nb.on { opacity:1; color:var(--gold); background:var(--gold-bg); }
.nb .cnt { margin-left:6px; color:var(--gold); }

/* часы городов */
.strip { display:flex; align-items:stretch; gap:14px; padding:14px 36px 0; flex-wrap:wrap; }
.clocks { display:flex; gap:10px; flex-wrap:wrap; }
.clock { display:flex; flex-direction:column; gap:1px; min-width:158px; padding:9px 16px 10px; background:var(--card); border:1px solid var(--line); border-radius:14px; }
.clock .cn { display:flex; align-items:center; gap:8px; font:700 10px/1.2 var(--body); letter-spacing:.16em; text-transform:uppercase; color:var(--gold); }
.clock .cs { margin-left:auto; font-weight:700; letter-spacing:.08em; color:var(--muted); }
.clock.prime { border-color:var(--gold-line); box-shadow:0 0 22px rgba(242,207,117,.12); }
.clock.prime .cs { color:var(--gold); }
.clock.night .ct { color:var(--muted); }
.clock .ct { font:400 30px/1.1 var(--display); letter-spacing:.04em; font-variant-numeric:tabular-nums; }
.clock .cw { font-size:11px; color:var(--muted); max-width:210px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#next { margin-left:auto; align-self:center; display:flex; align-items:center; gap:10px; padding:10px 18px; border-radius:99px; background:transparent; border:1px solid var(--gold-line); color:var(--text); font:600 13px/1.3 var(--body); cursor:pointer; max-width:100%; text-align:left; }
#next b { color:var(--gold); font-variant-numeric:tabular-nums; }
#next .dot { width:8px; height:8px; border-radius:50%; background:var(--gold); flex:none; box-shadow:0 0 10px var(--gold); }
#next.live .dot { background:var(--warn); animation:pulse 1s infinite; }
#next.none { border-color:var(--line2); color:var(--muted); cursor:default; } #next.none .dot { background:var(--muted); box-shadow:none; }
@keyframes pulse { 50% { opacity:.2; } }

main { padding:26px 36px 90px; max-width:1260px; margin:0 auto; }
.narrow { max-width:800px; }
.page-title { display:flex; align-items:center; gap:18px; margin:0 0 22px; font-size:30px; }
.page-title::before { content:''; width:38px; height:1px; background:var(--text); opacity:.8; }

/* карточки и поля */
.card { background:var(--card); border:1px solid var(--line); border-radius:20px; padding:20px; margin-bottom:16px; transition:border-color .2s; }
.card:hover { border-color:var(--line2); }
.card h3 { margin:0 0 14px; font-size:19px; display:flex; align-items:center; gap:9px; }
.card h3 .sp { margin-left:auto; font:400 12px var(--body); color:var(--muted); }
label.l { display:block; font:700 11px/1.3 var(--body); letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin:20px 0 8px; }
label.l:first-child { margin-top:0; }
label.l .muted { text-transform:none; letter-spacing:0; font-weight:400; }
.hint { font-size:12px; color:var(--muted); margin-top:6px; }
.hint.warn { color:var(--warn); } .hint.bad { color:var(--bad); }
input, textarea, select { width:100%; padding:11px 14px; border:1px solid var(--line2); border-radius:12px; background:var(--bg); color:var(--text); font:inherit; }
input::placeholder, textarea::placeholder { color:#5f5d57; }
input:focus, textarea:focus, select:focus { outline:none; border-color:var(--gold); box-shadow:0 0 0 3px rgba(242,207,117,.14); }
input[type=range] { padding:0; accent-color:var(--gold); }
input[type=checkbox] { width:auto; accent-color:var(--gold); }
textarea { min-height:100px; resize:vertical; }
select { appearance:none; background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%); background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%; background-size:6px 6px; background-repeat:no-repeat; padding-right:34px; }

/* кнопки: заливка золотом для главного действия, контур как на референсе для остальных */
.btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; border:1px solid var(--gold); border-radius:99px; padding:11px 22px; font:700 13px/1 var(--body); cursor:pointer; background:var(--gold); color:#1a1608; transition:transform .06s, background .15s, box-shadow .2s; white-space:nowrap; }
.btn:hover { background:#f7dc93; box-shadow:0 0 22px rgba(242,207,117,.25); }
.btn:active { transform:scale(.98); }
.btn.sec { background:transparent; color:var(--text); border-color:var(--gold-line); }
.btn.sec:hover { background:var(--gold-bg); box-shadow:none; border-color:var(--gold); }
.btn.ghost { background:none; border-color:transparent; color:var(--muted); padding:9px 12px; } .btn.ghost:hover { color:var(--text); background:var(--card2); box-shadow:none; }
.btn.danger { background:transparent; color:var(--bad); border-color:rgba(255,122,112,.4); } .btn.danger:hover { background:var(--bad-bg); box-shadow:none; }
.btn:disabled { opacity:.45; cursor:default; box-shadow:none; }
.btn.sm { padding:8px 15px; font-size:12px; }
.btn .ic { width:15px; height:15px; }
.row { display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.row.g { gap:16px; }
.grow { flex:1 1 200px; min-width:0; }
.push { margin-left:auto; }
.muted { color:var(--muted); font-size:13px; }
.pill { display:inline-flex; align-items:center; gap:6px; font:700 11px/1 var(--body); padding:5px 11px; border-radius:99px; background:var(--card2); color:var(--muted); letter-spacing:.03em; }
.pill.scheduled, .pill.pending { background:var(--gold-bg); color:var(--gold); }
.pill.published { background:var(--ok-bg); color:var(--ok); }
.pill.failed { background:var(--bad-bg); color:var(--bad); }
.pill.publishing { background:var(--warn-bg); color:var(--warn); }
.seg { display:inline-flex; background:var(--card2); border-radius:99px; padding:4px; gap:2px; flex-wrap:wrap; }
.seg button { border:0; background:none; font:700 12px var(--body); color:var(--muted); padding:8px 16px; border-radius:99px; cursor:pointer; }
.seg button.on { background:var(--gold); color:#1a1608; }
.av { width:38px; height:38px; border-radius:50%; flex:none; display:grid; place-items:center; color:#1a1608; font:800 15px var(--body); background-size:cover; background-position:center; }
.av.sm { width:26px; height:26px; font-size:12px; }
.empty { text-align:center; padding:38px 12px; color:var(--muted); }
.empty .btn { margin-top:14px; }

/* показатели */
.kpis { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:12px; margin-bottom:16px; }
.kpi { background:var(--card); border:1px solid var(--line); border-radius:18px; padding:16px 18px; }
.kpi .t { display:flex; align-items:center; gap:8px; font:700 11px/1.3 var(--body); letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
.kpi b { display:block; font:400 34px/1.15 var(--display); margin-top:6px; font-variant-numeric:tabular-nums; }
.cols { display:grid; grid-template-columns:1fr 1fr; gap:16px; }

/* главный экран: как на референсе, линия перед заголовком, контурная кнопка, ролик справа */
.hero { display:grid; grid-template-columns:1.15fr .85fr; gap:30px; align-items:center; padding:38px 38px 34px; margin-bottom:18px; border-radius:26px; border:1px solid var(--line);
  background:radial-gradient(520px 340px at 88% 40%, rgba(242,207,117,.09), transparent 70%), linear-gradient(135deg,#222,#1b1b1b); }
.hero .eyebrow { display:flex; align-items:center; gap:16px; font:700 11px var(--body); letter-spacing:.16em; text-transform:uppercase; color:var(--muted); }
.hero .eyebrow::before { content:''; width:38px; height:1px; background:var(--text); }
.hero .big { font:400 clamp(32px,4.2vw,56px)/1.05 var(--display); letter-spacing:.01em; margin:14px 0 12px; font-variant-numeric:tabular-nums; }
.hero .sub { color:var(--muted); max-width:460px; margin-bottom:20px; }
.hero .vis { justify-self:center; position:relative; }
.hero .vis video { display:block; width:170px; aspect-ratio:9/16; object-fit:cover; border-radius:22px; background:#000; border:1px solid var(--gold-line); box-shadow:0 0 60px rgba(242,207,117,.16), 0 24px 50px rgba(0,0,0,.5); }

/* карточка поста */
.post { display:flex; gap:16px; }
.thumb { width:86px; flex:none; aspect-ratio:9/16; object-fit:cover; border-radius:12px; background:#000; align-self:flex-start; border:1px solid var(--line); }
.thumb.gone { opacity:.25; }
.post .body { flex:1; min-width:0; }
.cap { margin:6px 0; white-space:pre-wrap; color:var(--muted); font-size:13px; }
.tg { display:flex; gap:10px; align-items:center; flex-wrap:wrap; font-size:14px; padding:8px 0; border-top:1px solid var(--line); }
.tg:first-of-type { border-top:0; }
.tg .nm { font-weight:700; }
.st { display:flex; gap:14px; flex-wrap:wrap; font-size:12px; color:var(--muted); width:100%; padding-left:36px; }
.st span { display:inline-flex; gap:5px; align-items:center; } .st .ic { width:13px; height:13px; }
.errtxt { color:var(--bad); font-size:13px; width:100%; padding-left:36px; }
.editbox { margin-top:14px; padding:16px; border:1px dashed var(--line2); border-radius:16px; background:var(--bg); }
.editbox textarea { min-height:64px; }

/* форма публикации */
.drop { display:block; border:1.5px dashed var(--line2); border-radius:18px; padding:30px 16px; text-align:center; cursor:pointer; color:var(--muted); transition:.15s; background:var(--bg); }
.drop:hover, .drop.over { border-color:var(--gold); background:var(--gold-bg); color:var(--gold); }
.drop .ic { width:28px; height:28px; display:block; margin:0 auto 8px; }
.drop input { display:none; }
.vprev { display:flex; gap:16px; align-items:center; padding:14px; border:1px solid var(--line2); border-radius:18px; background:var(--bg); }
.vprev video { width:74px; aspect-ratio:9/16; object-fit:cover; border-radius:10px; background:#000; }
.chips { display:flex; gap:7px; flex-wrap:wrap; margin-top:10px; }
.chip-b { border:1px solid var(--line2); background:transparent; border-radius:99px; padding:6px 14px; font:600 12px var(--body); cursor:pointer; color:var(--text); }
.chip-b:hover { border-color:var(--gold); color:var(--gold); }
.picks { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:10px; }
.pick { position:relative; border:1px solid var(--line2); border-radius:16px; padding:12px; cursor:pointer; background:var(--bg); }
.pick:hover { border-color:var(--gold-line); }
.pick.sel { border-color:var(--gold); background:var(--gold-bg); }
.pick .row { flex-wrap:nowrap; }
.pick .ck { position:absolute; top:10px; right:10px; width:20px; height:20px; border-radius:50%; border:1px solid var(--line2); display:grid; place-items:center; color:#1a1608; }
.pick.sel .ck { background:var(--gold); border-color:var(--gold); }
.pick .ck .ic { width:12px; height:12px; stroke-width:3.5; }
.pick .nm { font-weight:700; font-size:14px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.overs { display:grid; gap:10px; margin-top:12px; }
.over { padding:14px; border:1px solid var(--line); border-radius:16px; background:var(--bg); }
.over textarea { min-height:64px; margin-top:8px; }
.prog { height:5px; background:var(--card2); border-radius:99px; overflow:hidden; margin-top:14px; }
.prog i { display:block; height:100%; width:0; background:linear-gradient(90deg,var(--gold2),var(--gold)); transition:width .2s; }
.whenrow { display:grid; grid-template-columns:minmax(140px,1fr) minmax(200px,1.2fr) auto; gap:6px 12px; align-items:center; padding:12px 0; border-top:1px solid var(--line); }
.whenrow:first-child { border-top:0; }
.whenrow .tzn { font-size:12px; color:var(--muted); grid-column:2 / -1; margin-top:-2px; }
.ai { margin-top:16px; padding:16px; border-radius:18px; background:var(--gold-bg); border:1px solid var(--gold-line); }
.ai input { background:var(--bg); }
.warns { margin-top:16px; padding:12px 16px; border-radius:14px; background:var(--warn-bg); color:var(--warn); font-size:13px; }
.warns ul { margin:4px 0 0; padding-left:18px; }
.cover { margin-top:12px; padding:14px; border:1px solid var(--line); border-radius:16px; }

/* пакет */
.brow { display:grid; grid-template-columns:70px 1fr; gap:14px; padding:14px 0; border-top:1px solid var(--line); }
.brow:first-child { border-top:0; }
.brow video { width:70px; aspect-ratio:9/16; object-fit:cover; border-radius:10px; background:#000; }
.brow .f { display:grid; gap:8px; }
.brow textarea { min-height:60px; }

/* календарь */
.cal-head { display:flex; align-items:center; gap:8px; margin-bottom:14px; }
.cal-head h2 { margin:0; font-size:26px; text-transform:capitalize; flex:1; }
.cal { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; }
.cal .dow { text-align:center; font:700 10px var(--body); letter-spacing:.14em; text-transform:uppercase; color:var(--muted); padding:6px 0; }
.cell { min-height:102px; background:var(--card); border:1px solid var(--line); border-radius:14px; padding:7px; cursor:pointer; overflow:hidden; }
.cell:hover { border-color:var(--gold-line); }
.cell.out { opacity:.35; }
.cell.today { border-color:var(--gold); background:var(--gold-bg); }
.cell.sel { outline:1.5px solid var(--gold); outline-offset:-1px; }
.cell .n { font:700 12px var(--body); color:var(--muted); margin-bottom:4px; display:flex; justify-content:space-between; }
.cell.today .n { color:var(--gold); }
.chip { display:flex; align-items:center; gap:5px; font:700 11px/1.3 var(--body); padding:3px 6px; border-radius:7px; margin-top:3px; white-space:nowrap; overflow:hidden; }
.chip.scheduled, .chip.pending { background:var(--gold-bg); color:var(--gold); }
.chip.published { background:var(--ok-bg); color:var(--ok); }
.chip.failed { background:var(--bad-bg); color:var(--bad); }
.chip.publishing { background:var(--warn-bg); color:var(--warn); }
.d { width:7px; height:7px; border-radius:50%; flex:none; display:inline-block; }
.more { font-size:11px; color:var(--muted); margin-top:3px; }
.legend { display:flex; gap:16px; flex-wrap:wrap; margin:0 0 14px; font-size:12px; color:var(--muted); }
.legend i { display:inline-block; width:10px; height:10px; border-radius:3px; margin-right:6px; vertical-align:-1px; }

/* аналитика */
table { width:100%; border-collapse:collapse; font-size:14px; }
th { text-align:left; font:700 10px var(--body); letter-spacing:.12em; text-transform:uppercase; color:var(--muted); padding:9px 8px; border-bottom:1px solid var(--line2); white-space:nowrap; user-select:none; }
th.s { cursor:pointer; } th.s:hover { color:var(--gold); }
th.num, td.num { text-align:right; font-variant-numeric:tabular-nums; }
td { padding:11px 8px; border-bottom:1px solid var(--line); vertical-align:middle; }
tr:last-child td { border-bottom:0; }
.tw { overflow-x:auto; }
.hb { display:grid; grid-template-columns:minmax(90px,170px) 1fr 70px; gap:12px; align-items:center; padding:6px 0; font-size:13px; }
.hb .tr { height:8px; background:var(--card2); border-radius:99px; overflow:hidden; }
.hb .tr i { display:block; height:100%; border-radius:99px; }
.hb .v { text-align:right; font-variant-numeric:tabular-nums; font-weight:700; }
.hb .nm { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.bars { display:flex; align-items:flex-end; gap:3px; height:112px; padding-top:8px; }
.bar { flex:1; min-width:4px; background:linear-gradient(var(--gold),var(--gold2)); border-radius:4px 4px 0 0; }
.bar.zero { background:var(--line2); height:2px !important; }
.barlbl { display:flex; gap:3px; font-size:10px; color:var(--muted); margin-top:4px; }
.barlbl span { flex:1; min-width:4px; text-align:center; white-space:nowrap; }
.spark { display:block; }
.insight { white-space:pre-wrap; line-height:1.65; font-size:14px; }

/* аккаунты и настройки */
.acards { display:grid; grid-template-columns:repeat(auto-fill,minmax(290px,1fr)); gap:14px; }
.acard { margin:0; }
.acard .nums { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; margin:14px 0; text-align:center; }
.acard .nums b { display:block; font:400 24px var(--display); font-variant-numeric:tabular-nums; } .acard .nums span { font-size:11px; color:var(--muted); }
.profile { margin-top:14px; padding-top:14px; border-top:1px solid var(--line); display:grid; gap:9px; }
.profile .two { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.profile textarea { min-height:70px; font-size:13px; }
.set h3 { margin-bottom:6px; }
.set .sub { color:var(--muted); font-size:13px; margin-bottom:14px; }
.ok-t { color:var(--ok); } .bad-t { color:var(--bad); }
.kv { display:flex; gap:10px; align-items:baseline; padding:7px 0; border-top:1px solid var(--line); font-size:14px; }
.kv:first-of-type { border-top:0; } .kv span:first-child { color:var(--muted); min-width:170px; }
.code { font:400 28px var(--display); letter-spacing:.2em; color:var(--gold); }
.tpl { display:flex; gap:12px; align-items:flex-start; padding:10px 0; border-top:1px solid var(--line); }
.tpl:first-of-type { border-top:0; } .tpl .t { flex:1; min-width:0; white-space:pre-wrap; font-size:13px; color:var(--muted); }
.sw { display:flex; gap:10px; align-items:center; margin:6px 0; font-size:14px; }

#toasts { position:fixed; right:20px; bottom:20px; display:flex; flex-direction:column; gap:8px; z-index:50; }
.toast { background:var(--card2); border:1px solid var(--gold-line); color:var(--text); padding:12px 18px; border-radius:14px; font-size:14px; box-shadow:0 12px 32px rgba(0,0,0,.5); max-width:360px; animation:in .2s; }
.toast.err { border-color:var(--bad); color:var(--bad); } .toast.ok { border-color:rgba(143,209,158,.6); }
@keyframes in { from { transform:translateY(10px); opacity:0; } }

/* вход */
.login-wrap { min-height:100vh; display:grid; place-items:center; padding:20px; }
.login { width:100%; max-width:380px; text-align:center; }
.login .logo { justify-content:center; font-size:28px; margin-bottom:26px; }
.login .card { text-align:left; padding:26px; }

@media (max-width:900px) {
  .cols { grid-template-columns:1fr; }
  .hero { grid-template-columns:1fr; padding:26px 22px; }
  .hero .vis { justify-self:start; order:-1; }
  .hero .vis video { width:120px; }
}
@media (max-width:820px) {
  .top { padding:12px 16px; gap:10px; flex-wrap:wrap; }
  #nav { margin-left:0; flex-wrap:nowrap; overflow-x:auto; width:100%; justify-content:flex-start; padding-bottom:4px; scrollbar-width:none; }
  #nav::-webkit-scrollbar { display:none; }
  .nb { white-space:nowrap; padding:10px 12px; }
  .strip { padding:12px 16px 0; }
  .clocks { width:100%; flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; }
  .clock { min-width:150px; flex:none; }
  #next { margin-left:0; width:100%; }
  main { padding:18px 16px 80px; }
  .page-title { font-size:24px; margin-bottom:16px; }
  .cell { min-height:62px; padding:3px; } .chip { font-size:10px; padding:2px 3px; }
  .post { flex-direction:column; }
  .hb { grid-template-columns:90px 1fr 56px; }
  .whenrow { grid-template-columns:1fr; } .whenrow .tzn { grid-column:1; }
  .profile .two { grid-template-columns:1fr; }
  .kv { flex-direction:column; gap:2px; }
  .card { padding:16px; border-radius:18px; }
  #toasts { left:16px; right:16px; bottom:16px; } .toast { max-width:none; }
}
