/* Админка aiditorium.ai — бумага и тушь, три точки, заголовки Nunito; светлая и тёмная темы по устройству */
@font-face{font-family:"Nunito";font-style:normal;font-display:swap;font-weight:200 1000;src:url(/fonts/nunito-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-face{font-family:"Nunito";font-style:normal;font-display:swap;font-weight:200 1000;src:url(/fonts/nunito-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Nunito";font-style:normal;font-display:swap;font-weight:200 1000;src:url(/fonts/nunito-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-face{font-family:"Nunito";font-style:normal;font-display:swap;font-weight:200 1000;src:url(/fonts/nunito-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}

:root{color-scheme:light;
  --bg:#FBFAF7;--side:#F4F1EA;--surface:#fff;--cream:#F2EEE6;--fill:rgb(20 19 15/.05);--fill-2:rgb(20 19 15/.09);--sep:rgb(20 19 15/.1);--sep-2:rgb(20 19 15/.18);
  --label:#14130F;--label-2:#6B665D;--label-3:#A39E94;--primary:#14130F;--on-primary:#FBFAF7;
  --red:#FF3B30;--green:#22C55E;--blue:#0A84FF;--red-t:#C8221A;--green-t:#15803D;--blue-t:#0A6CD6;--amber-t:#A15C00;--amber-bg:rgb(245 158 11/.14);
  --green-bg:rgb(34 197 94/.14);--red-bg:rgb(255 59 48/.1);--blue-bg:rgb(10 132 255/.1);
  --shadow:0 0 0 1px rgb(20 19 15/.07),0 1px 2px rgb(20 19 15/.04);--shadow-lg:0 0 0 1px rgb(20 19 15/.06),0 24px 48px -16px rgb(20 19 15/.28);
  --r:14px;--r-sm:10px;--tab-h:62px;
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif;
  --font-d:"Nunito",ui-rounded,"SF Pro Rounded",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;
  --bg:#121110;--side:#161513;--surface:#1C1B18;--cream:#25231F;--fill:rgb(255 255 255/.06);--fill-2:rgb(255 255 255/.1);--sep:rgb(255 255 255/.1);--sep-2:rgb(255 255 255/.18);
  --label:#F3F1EC;--label-2:#A8A399;--label-3:#6F6A61;--primary:#F3F1EC;--on-primary:#14130F;
  --red-t:#FF6B61;--green-t:#4ADE80;--blue-t:#5AA9FF;--amber-t:#FBBF24;--amber-bg:rgb(245 158 11/.16);
  --green-bg:rgb(34 197 94/.16);--red-bg:rgb(255 59 48/.16);--blue-bg:rgb(10 132 255/.18);
  --shadow:0 0 0 1px rgb(255 255 255/.08),0 1px 2px rgb(0 0 0/.3);--shadow-lg:0 0 0 1px rgb(255 255 255/.1),0 24px 48px -12px rgb(0 0 0/.7)}}

*{box-sizing:border-box;margin:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--label);font:15px/1.45 var(--font);-webkit-font-smoothing:antialiased;min-height:100dvh}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}
input,textarea,select{font:inherit;color:inherit}
svg{display:block;flex:none}
img{display:block;max-width:100%}
h1,h2,h3{font-family:var(--font-d);letter-spacing:-.01em}
::selection{background:rgb(10 132 255/.2)}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:6px}
[hidden]{display:none!important}
.muted{color:var(--label-2)}
.small{font-size:13px}
.grow{flex:1}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:600;font-size:13px}
.stack{display:flex;flex-direction:column;gap:14px}
.spin{animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── загрузка приложения ── */
.boot{min-height:100dvh;display:grid;place-items:center;color:var(--label)}
.boot .logo-svg{height:30px;width:auto;opacity:.9;animation:pulse 1.4s ease-in-out infinite}
@keyframes pulse{50%{opacity:.35}}
.logo{display:inline-flex;color:var(--label)}
.logo-svg{height:24px;width:auto}

/* ── вход ── */
.login{min-height:100dvh;display:grid;place-items:center;padding:24px 16px;position:relative;overflow:hidden}
.login::before{content:"";position:absolute;inset:-20%;background:repeating-radial-gradient(circle at 50% 42%,transparent 0 46px,var(--fill) 46px 48px,transparent 48px 96px);pointer-events:none;mask-image:radial-gradient(closest-side,#000 30%,transparent)}
.login-card{position:relative;width:100%;max-width:380px;background:var(--surface);border-radius:22px;box-shadow:var(--shadow-lg);padding:34px 28px 28px;display:flex;flex-direction:column;gap:16px}
.login-logo{display:flex;justify-content:center;padding:4px 0 14px}
.login-logo .logo-svg{height:32px}
.login-dots{position:absolute;bottom:28px;display:flex;gap:8px}
.login-dots i{width:7px;height:7px;border-radius:50%;background:var(--blue)}
.login-dots i:nth-child(2){background:var(--green)}.login-dots i:nth-child(3){background:var(--red)}

/* ── оболочка ── */
.layout{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100dvh}
.side{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:6px;padding:22px 12px 14px;background:var(--side);border-right:1px solid var(--sep)}
.side-logo{display:flex;padding:4px 12px 22px}
.side-logo .logo-svg{height:24px}
.side-nav{display:flex;flex-direction:column;gap:2px}
.side-link{display:flex;align-items:center;gap:12px;height:42px;padding:0 12px;border-radius:11px;color:var(--label-2);font-weight:550;transition:background .15s,color .15s}
.side-link:hover{background:var(--fill);color:var(--label)}
.side-link.on{background:var(--surface);color:var(--label);box-shadow:var(--shadow);font-weight:650}
.side-link.on .ic{color:var(--label)}
.side-foot{margin-top:auto;display:flex;flex-direction:column;gap:8px}
.side-build{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:12.5px;color:var(--label-2);border-radius:10px}
.side-build .ic{color:var(--green-t)}
.side-build.err{color:var(--red-t);background:var(--red-bg)}
.side-build.err .ic{color:var(--red-t)}
.side-user{position:relative}
.user-btn{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:12px;text-align:left}
.user-btn:hover{background:var(--fill)}
.user-name{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.25}
.user-name b{font-weight:650;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-name small{color:var(--label-2);font-size:12px}
.user-menu{position:absolute;bottom:calc(100% + 6px);left:0;right:0;background:var(--surface);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px;z-index:30}
.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border-radius:8px;font-weight:550}
.menu-item:hover{background:var(--fill)}
.avatar{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;font:800 13px/1 var(--font-d);background:var(--cream);color:var(--label);box-shadow:inset 0 0 0 1px var(--sep)}
.avatar.xs{width:22px;height:22px;font-size:10px}
.avatar.lg{width:46px;height:46px;font-size:16px}
.main-wrap{min-width:0}
.main{max-width:1160px;margin:0 auto;padding:30px 36px 40px;outline:none}
.tabbar{display:none}
.fab{display:none}

.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px;min-height:44px}
.page-head h1{font-size:30px;font-weight:850;line-height:1.1}
.page-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}

/* ── кнопки ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:11px;font-weight:620;font-size:14.5px;background:var(--surface);color:var(--label);box-shadow:var(--shadow);white-space:nowrap;transition:transform .1s,background .15s,opacity .15s;position:relative;user-select:none}
.btn:hover{background:var(--cream)}
.btn:active{transform:scale(.98)}
.btn.primary{background:var(--primary);color:var(--on-primary);box-shadow:none}
.btn.primary:hover{opacity:.9;background:var(--primary)}
.btn.primary.quiet{opacity:.45}
.btn.danger{background:var(--red);color:#fff;box-shadow:none}
.btn.danger:hover{background:#E8352B}
.btn.ghost{background:transparent;box-shadow:none;color:var(--label)}
.btn.ghost:hover{background:var(--fill)}
.btn.sm{height:34px;padding:0 12px;font-size:13.5px;border-radius:9px;gap:6px}
.btn.lg{height:48px;font-size:16px;border-radius:13px}
.btn.block{width:100%}
.btn:disabled{opacity:.45;cursor:default;transform:none}
.btn.busy{color:transparent!important}
.btn.busy::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;border:2px solid currentColor;border-color:var(--label) transparent var(--label) var(--label);animation:spin .8s linear infinite}
.btn.primary.busy::after{border-color:var(--on-primary) transparent var(--on-primary) var(--on-primary)}
.btn.busy .ic{opacity:0}
.icon-btn{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:10px;color:var(--label-2);transition:background .15s,color .15s;flex:none}
.icon-btn:hover{background:var(--fill);color:var(--label)}
.icon-btn.sm{width:34px;height:34px;border-radius:9px}
.icon-btn.xs{width:30px;height:30px;border-radius:8px}
.icon-btn:disabled{opacity:.3;cursor:default;background:none}
.danger-hover:hover{color:var(--red-t);background:var(--red-bg)}
.icon-btn.busy{pointer-events:none}
.icon-btn.busy .ic{animation:spin 1s linear infinite}

/* ── поля ── */
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field-label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:620;color:var(--label-2)}
.field-hint{font-size:12px;color:var(--label-3)}
.field-err,.form-err{font-size:13px;color:var(--red-t);font-weight:550}
.req{color:var(--red-t)}
.counter{margin-left:auto;font-size:12px;font-weight:500;color:var(--label-3);font-variant-numeric:tabular-nums}
.counter.over{color:var(--red-t)}
.input{width:100%;min-height:42px;padding:9px 12px;border-radius:10px;border:1px solid var(--sep-2);background:var(--surface);font-size:15px;line-height:1.4;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none}
.input::placeholder{color:var(--label-3)}
.input:hover{border-color:var(--label-3)}
.input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-bg)}
.input.invalid{border-color:var(--red);box-shadow:0 0 0 3px var(--red-bg)}
textarea.input{resize:vertical;min-height:64px;display:block}
.input-xl{font:750 22px/1.25 var(--font-d);padding:10px 14px;min-height:52px;letter-spacing:-.01em}
.input[type=date]{min-width:0;padding-right:8px}
.input[type=date]::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}
select.input{padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer}
.select-sm{width:auto;min-height:40px;height:40px;font-size:14px}
.input.num{font-variant-numeric:tabular-nums}
.input-wrap{position:relative;display:flex;align-items:center}
.input-wrap .input{padding-right:44px}
.input-btn{position:absolute;right:4px;width:36px;height:36px;display:grid;place-items:center;border-radius:8px;color:var(--label-2)}
.input-btn:hover{background:var(--fill);color:var(--label)}
.prefixed .input{padding-left:66px;font-family:var(--mono);font-size:13.5px}
.input-prefix{position:absolute;left:12px;font-family:var(--mono);font-size:13.5px;color:var(--label-3);pointer-events:none}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.search{position:relative;display:flex;align-items:center;flex:1;min-width:160px}
.search .ic{position:absolute;left:12px;color:var(--label-3);pointer-events:none}
.search .input{padding-left:38px}

/* сегменты */
.seg{display:inline-flex;padding:3px;border-radius:12px;background:var(--fill);gap:2px}
.seg-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 14px;border-radius:9px;font-weight:600;font-size:14px;color:var(--label-2);transition:background .15s,color .15s;flex:1;white-space:nowrap}
.seg-btn:hover{color:var(--label)}
.seg-btn.on{background:var(--surface);color:var(--label);box-shadow:var(--shadow)}
.side-card .seg{display:flex}

/* чипы */
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips-scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-bottom:14px;padding:2px}
.chips-scroll::-webkit-scrollbar{display:none}
.chip{display:inline-flex;align-items:center;gap:4px;height:34px;padding:0 13px;border-radius:999px;font-size:14px;font-weight:580;background:var(--surface);box-shadow:inset 0 0 0 1px var(--sep-2);color:var(--label);transition:background .15s,box-shadow .15s;white-space:nowrap}
.chip:hover{background:var(--fill)}
.chip .chip-check{display:none}
.chip.on{background:var(--primary);color:var(--on-primary);box-shadow:none}
.chip.on .chip-check{display:inline-flex;margin-left:-3px}
.chip-sm{height:32px;font-size:13.5px}

/* переключатель */
.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;user-select:none;min-height:36px}
.switch input{position:absolute;opacity:0;width:1px;height:1px}
.switch-track{width:44px;height:26px;border-radius:13px;background:var(--fill-2);position:relative;transition:background .2s;flex:none}
.switch-thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgb(0 0 0/.25);transition:transform .2s}
.switch input:checked+.switch-track{background:var(--green)}
.switch input:checked+.switch-track .switch-thumb{transform:translateX(18px)}
.switch input:focus-visible+.switch-track{outline:2px solid var(--blue);outline-offset:2px}
.switch-label{font-weight:600;font-size:14.5px}

/* значки статуса */
.badge{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:650;white-space:nowrap}
.badge i{width:6px;height:6px;border-radius:50%;background:currentColor}
.badge.pub{background:var(--green-bg);color:var(--green-t)}
.badge.draft{background:var(--fill);color:var(--label-2)}
.badge.me{background:var(--blue-bg);color:var(--blue-t);margin-left:8px;height:20px}
.star-on{color:#F5A524;fill:#F5A524}

/* карточки */
.card{background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow);padding:20px;display:flex;flex-direction:column;gap:16px;min-width:0}
.card-title{display:flex;align-items:center;gap:8px;font-size:17px;font-weight:800}
.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.sub{font:800 14px/1 var(--font-d);color:var(--label-2);margin-top:4px}
.sub .count{color:var(--label-3)}

/* пустое состояние и скелетоны */
.empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:56px 16px;color:var(--label-2);text-align:center}
.empty .ic{color:var(--label-3)}
.skel-wrap{display:flex;flex-direction:column;gap:10px}
.skel{border-radius:12px;background:linear-gradient(90deg,var(--fill) 0%,var(--fill-2) 40%,var(--fill) 80%);background-size:300% 100%;animation:shimmer 1.3s ease-in-out infinite}
.skel-row{height:56px}.skel-card{height:92px}.skel-block{height:180px}.skel-head{height:44px;width:60%;margin-bottom:18px}.skel-video{height:420px}
@keyframes shimmer{0%{background-position:100% 0}100%{background-position:-50% 0}}

/* ── мероприятия: список ── */
.toolbar{display:flex;gap:10px;margin-bottom:12px;align-items:center}
.case-list{display:flex;flex-direction:column;gap:8px}
.case-list.compact{margin-top:18px}
.case-row{display:flex;align-items:center;gap:16px;padding:10px 14px 10px 10px;background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow);transition:transform .12s,box-shadow .15s}
.case-row:hover{box-shadow:0 0 0 1px var(--sep-2),0 8px 20px -12px rgb(20 19 15/.3)}
.case-row:active{transform:scale(.995)}
.thumb{position:relative;display:grid;place-items:center;overflow:hidden;background:var(--cream);color:var(--label-3);flex:none}
.thumb img{width:100%;height:100%;object-fit:cover}
.case-thumb{width:112px;aspect-ratio:16/10;border-radius:10px}
.case-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.case-date{font-size:12.5px;font-weight:650;color:var(--label-2);font-variant-numeric:tabular-nums}
.case-title{display:flex;align-items:center;gap:6px;font:780 16.5px/1.25 var(--font-d);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.case-title .ic{display:inline-block;vertical-align:-2px;margin-right:4px}
.case-place{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--label-2);white-space:nowrap;overflow:hidden;min-width:0}
.case-place span{overflow:hidden;text-overflow:ellipsis;min-width:0}
.case-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.case-fmt{font-size:12px;color:var(--label-3);font-weight:600}
.muted.case-chev,.case-chev{color:var(--label-3)}

/* ── календарь ── */
.cal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.cal-title{font-size:24px;font-weight:850}
.cal-title .muted{font-weight:600;color:var(--label-3)}
.cal-nav{display:flex;align-items:center;gap:4px}
.cal{background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden;user-select:none}
.cal-wd{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--sep)}
.cal-wd span{padding:10px 10px 8px;font-size:12px;font-weight:700;color:var(--label-2);text-transform:uppercase;letter-spacing:.04em}
.cal-wd span.we{color:var(--label-3)}
.cal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:32px repeat(3,24px) minmax(10px,1fr);min-height:124px;border-bottom:1px solid var(--sep);position:relative}
.cal-week:last-child{border-bottom:0}
.cal-day{grid-row:1/-1;position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:6px 8px;border-right:1px solid var(--sep);text-align:left;transition:background .12s;min-width:0}
.cal-day:nth-child(7){border-right:0}
.cal-day:hover{background:var(--fill)}
.cal-day.we{background:color-mix(in srgb,var(--cream) 35%,transparent)}
.cal-day.we:hover{background:var(--fill)}
.cal-day.out .cal-num{color:var(--label-3)}
.cal-num{font:750 13.5px/22px var(--font-d);min-width:24px;height:22px;text-align:center;border-radius:11px;font-variant-numeric:tabular-nums}
.cal-day.today .cal-num{background:var(--red);color:#fff}
.cal-more{position:absolute;bottom:4px;left:8px;font-size:11.5px;font-weight:700;color:var(--label-2)}
.cal-pill{position:relative;z-index:1;display:flex;align-items:center;gap:4px;margin:1px 4px;padding:0 8px;height:21px;border-radius:6px;font-size:12px;font-weight:650;line-height:21px;white-space:nowrap;overflow:hidden;min-width:0;transition:filter .12s}
.cal-pill span{overflow:hidden;text-overflow:ellipsis}
.cal-pill:hover{filter:brightness(.95)}
.cal-pill.pub{background:var(--green-bg);color:var(--green-t);box-shadow:inset 3px 0 0 var(--green)}
.cal-pill.draft{background:var(--fill);color:var(--label-2);box-shadow:inset 0 0 0 1px var(--sep-2)}
.cal-pill.cut-l{margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:none}
.cal-pill.cut-r{margin-right:0;border-top-right-radius:0;border-bottom-right-radius:0}
.cal-pill .ic{flex:none}

/* ── редактор ── */
.ed-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;min-height:44px}
.back{display:inline-flex;align-items:center;gap:2px;height:38px;padding:0 10px 0 4px;border-radius:10px;color:var(--label-2);font-weight:600;flex:none}
.back:hover{background:var(--fill);color:var(--label)}
.ed-head-main{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
.ed-title{font-size:22px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.ed-head-actions{display:flex;align-items:center;gap:6px}
.ed-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}
.ed-main,.ed-side{display:flex;flex-direction:column;gap:20px;min-width:0}
.side-card{gap:14px}
.md-wrap{border:1px solid var(--sep-2);border-radius:10px;background:var(--surface);transition:border-color .15s,box-shadow .15s;overflow:hidden}
.md-wrap:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-bg)}
.md-bar{display:flex;gap:2px;padding:4px;border-bottom:1px solid var(--sep);background:var(--fill)}
.md-wrap .input{border:0;box-shadow:none;border-radius:0;min-height:180px}
.stats{gap:10px}

/* загрузка */
.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:26px 16px;border-radius:12px;border:1.5px dashed var(--sep-2);background:var(--fill);color:var(--label);cursor:pointer;text-align:center;transition:background .15s,border-color .15s}
.drop:hover,.drop.over{border-color:var(--blue);background:var(--blue-bg)}
.drop .ic{color:var(--label-2)}
.drop .muted{font-size:12.5px}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.tile{position:relative;border-radius:11px;overflow:hidden;background:var(--cream);aspect-ratio:4/3;box-shadow:inset 0 0 0 1px var(--sep)}
.tile.is-cover{box-shadow:0 0 0 2.5px var(--primary)}
.tile-img{position:absolute;inset:0;width:100%;height:100%}
.thumb-ph{color:var(--label-3)}
.tile-grip{position:absolute;top:6px;left:6px;width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:rgb(20 19 15/.55);color:#fff;cursor:grab;touch-action:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.tile-grip:active{cursor:grabbing}
.tile-btn{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:rgb(20 19 15/.55);color:#fff;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .15s}
.tile-btn:hover{background:rgb(20 19 15/.8)}
.tile-btn.has{color:#7DD3FC}
.tile-cover{position:absolute;top:6px;right:6px}
.tile.is-cover .tile-cover{background:#fff;color:#F5A524}
.tile.is-cover .tile-cover .ic{fill:#F5A524}
.tile-cancel{position:absolute;top:6px;right:6px}
.tile-bar{position:absolute;right:6px;bottom:6px;display:flex;gap:4px}
.tile-tag{position:absolute;left:6px;bottom:6px;height:22px;padding:0 8px;border-radius:6px;background:#fff;color:#14130F;font-size:11.5px;font-weight:750;line-height:22px}
.tile-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgb(20 19 15/.55);color:#fff;backdrop-filter:blur(6px)}
.tile-play .ic{fill:#fff;margin-left:2px}
.tile-dur{position:absolute;left:6px;bottom:6px;height:22px;padding:0 7px;border-radius:6px;background:rgb(20 19 15/.65);color:#fff;font:600 11.5px/22px var(--mono)}
.tile-over{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px;background:rgb(20 19 15/.55);color:#fff;font-size:12.5px;font-weight:650;text-align:center}
.tile-over.err{background:rgb(200 34 26/.75)}
.tile.drag-src{opacity:.25}
.tile-ghost{box-shadow:0 18px 40px -10px rgb(0 0 0/.45),0 0 0 2px var(--blue)!important;border-radius:11px;transition:none}
.tiles-video .tile{aspect-ratio:16/9}
.pbar{display:block;width:100%;max-width:160px;height:5px;border-radius:3px;background:rgb(255 255 255/.3);overflow:hidden}
.pbar-fill{display:block;height:100%;width:0;background:#fff;border-radius:3px;transition:width .2s}
.pbar.indet .pbar-fill{width:40%!important;animation:indet 1.1s ease-in-out infinite}
@keyframes indet{0%{transform:translateX(-100%)}100%{transform:translateX(250%)}}

/* переводы */
.lang-pills{display:flex;flex-wrap:wrap;gap:6px}
.lang-pill{position:relative;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 11px;border-radius:9px;font:700 13px/1 var(--mono);background:var(--fill);color:var(--label);transition:background .15s}
.lang-pill:hover{background:var(--fill-2)}
.lang-pill.on{background:var(--primary);color:var(--on-primary)}
.lang-pill .st{width:7px;height:7px;border-radius:50%;background:var(--label-3)}
.lang-pill.ok .st{background:var(--green)}
.lang-pill.stale .st{background:#F59E0B}
.lang-pill.none .st{background:transparent;box-shadow:inset 0 0 0 1.5px var(--label-3)}
.lang-pills-lg .lang-pill{height:36px;padding:0 13px}
.pill-count{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#F59E0B;color:#fff;font:700 11px/18px var(--font);text-align:center}
.tr-panel:empty{display:none}
.tr-panel{display:flex;flex-direction:column;gap:14px;padding-top:14px;border-top:1px solid var(--sep)}
.tr-head{display:flex;align-items:center;gap:10px}
.tr-head b{font:800 16px/1 var(--font-d)}
.tr-state{font-size:12px;font-weight:650;padding:3px 8px;border-radius:999px}
.tr-state.ok{background:var(--green-bg);color:var(--green-t)}
.tr-state.stale{background:var(--amber-bg);color:var(--amber-t)}
.tr-state.none{background:var(--fill);color:var(--label-2)}
.tr-row{display:flex;flex-direction:column;gap:6px}
.tr-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:620;color:var(--label-2)}
.tr-thumb{width:28px;height:28px;border-radius:6px}
.tr-mark{font-size:11.5px;font-weight:700;color:var(--amber-t);background:var(--amber-bg);padding:2px 7px;border-radius:999px}
.tr-ref{font-size:13.5px;line-height:1.45;color:var(--label-2);background:var(--fill);border-radius:9px;padding:8px 11px;white-space:pre-wrap;max-height:120px;overflow:auto;overflow-wrap:anywhere}

/* языки мероприятия */
.chipinput-wrap{position:relative}
.chipinput{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:44px;padding:5px 6px;border:1px solid var(--sep-2);border-radius:10px;background:var(--surface);cursor:text}
.chipinput:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-bg)}
.chipinput-inp{flex:1;min-width:110px;border:0;outline:0;background:none;height:32px;padding:0 6px;font-size:15px}
.lchip{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 4px 0 9px;border-radius:8px;background:var(--fill-2);font-size:13px}
.lchip b{font:700 12.5px/1 var(--mono)}
.lchip span{color:var(--label-2)}
.lchip button{width:24px;height:24px;display:grid;place-items:center;border-radius:6px;color:var(--label-2)}
.lchip button:hover{background:var(--fill-2);color:var(--label)}
.suggest{position:absolute;left:0;right:0;top:calc(100% + 4px);list-style:none;padding:5px;background:var(--surface);border-radius:12px;box-shadow:var(--shadow-lg);z-index:20;max-height:260px;overflow:auto}
.suggest li{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;cursor:pointer;font-size:14px}
.suggest li b{font:700 12.5px/1 var(--mono);width:26px}
.suggest li span{color:var(--label-2)}
.suggest li.on,.suggest li:hover{background:var(--fill)}

/* полоса сохранения */
.savebar{position:sticky;bottom:16px;z-index:15;margin-top:22px;display:flex;justify-content:flex-end;pointer-events:none}
.savebar-in{pointer-events:auto;display:flex;align-items:center;gap:14px;padding:8px 8px 8px 16px;border-radius:15px;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);box-shadow:var(--shadow-lg)}
.save-state{display:flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--label-2);white-space:nowrap}
.save-state:empty{display:none}
.save-state .ic{color:var(--green-t)}
.dot-dirty{width:8px;height:8px;border-radius:50%;background:#F59E0B;box-shadow:0 0 0 3px rgb(245 158 11/.2)}

/* ── видео лендинга ── */
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.vframe{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000}
.vplayer{width:100%;height:100%;object-fit:cover;display:block;background:#000}
.vrow{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.vprog{display:flex;flex-direction:column;gap:6px;flex:1;min-width:160px;font-weight:600}
.vprog .pbar{max-width:none;background:var(--fill-2)}
.vprog .pbar-fill{background:var(--blue)}
.vsub{display:flex;flex-direction:column;gap:10px;padding-top:14px;border-top:1px solid var(--sep)}
.vsub-head{display:flex;align-items:center;gap:10px;min-height:34px}
.poster-row{display:flex;align-items:center;gap:14px}
.poster-thumb{width:128px;aspect-ratio:16/9;border-radius:9px;overflow:hidden;background:var(--cream);flex:none;box-shadow:inset 0 0 0 1px var(--sep)}
.poster-img{width:100%;height:100%;object-fit:cover}
.poster-actions{display:flex;flex-wrap:wrap;gap:6px}
.range{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:none;cursor:pointer;--p:0%}
.range::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(90deg,var(--primary) var(--p),var(--fill-2) var(--p))}
.range::-moz-range-track{height:6px;border-radius:3px;background:var(--fill-2)}
.range::-moz-range-progress{height:6px;border-radius:3px;background:var(--primary)}
.range::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-8px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgb(0 0 0/.35),0 0 0 1px rgb(0 0 0/.06)}
.range::-moz-range-thumb{width:22px;height:22px;border:0;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgb(0 0 0/.35)}
.range:focus-visible{outline:none}
.range:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--blue)}
.frame-ctl{display:flex;align-items:center;gap:6px}
.frame-ctl .mono{min-width:52px;text-align:right}

/* ── тексты ── */
.subtabs{display:flex;gap:4px;margin-bottom:14px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--sep)}
.subtabs::-webkit-scrollbar{display:none}
.subtab{position:relative;padding:10px 14px 12px;font-weight:650;color:var(--label-2);white-space:nowrap}
.subtab:hover{color:var(--label)}
.subtab.on{color:var(--label)}
.subtab.on::after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2.5px;border-radius:2px;background:var(--primary)}
.lang-bar{position:sticky;top:0;z-index:12;margin:0 -8px 16px;padding:10px 8px;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.texts-body{display:flex;flex-direction:column;gap:18px}
.tsection{gap:0;padding:6px 20px 8px}
.tsection>.card-head{padding:14px 0 10px}
.trow{display:flex;flex-direction:column;gap:8px;padding:14px 0;border-top:1px solid var(--sep)}
.trow-head{display:flex;align-items:center;gap:8px;min-height:30px}
.trow-actions{display:flex;gap:2px}
.trow-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}
.trow-cols .tr-ref{max-height:none}
.lang-tag{font:700 10.5px/1 var(--mono);padding:3px 5px;border-radius:5px;background:var(--fill-2);color:var(--label-2)}
.items{display:flex;flex-direction:column;gap:8px}
.item{display:flex;align-items:flex-start;gap:8px}
.item-n{width:22px;flex:none;padding-top:11px;font:700 12px/1 var(--mono);color:var(--label-3);text-align:right}
.item .input{flex:1}
.item-ctl{display:flex;gap:0;padding-top:6px}
.pair-in{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}
.pair-in .input{flex:none}
textarea.item-ta{min-height:42px;resize:none;overflow:hidden}
@media(max-width:719px){textarea.item-ta{min-height:46px}}
.item-q{font-weight:650}
.add-item{align-self:flex-start;margin-left:24px}
.ref-list{margin:0;padding-left:18px}
.ref-pairs{display:flex;flex-direction:column;gap:8px}
.ref-pairs div{display:flex;flex-direction:column;gap:2px}
.ref-pairs b{color:var(--label);font-weight:650}

/* ── история ── */
.hist{display:flex;flex-direction:column;gap:6px}
.hist-day{font:800 13px/1 var(--font-d);color:var(--label-2);margin:18px 4px 6px;text-transform:none}
.hist-day:first-child{margin-top:0}
.hist-row{display:flex;align-items:center;gap:14px;padding:12px 12px 12px 14px;background:var(--surface);border-radius:12px;box-shadow:var(--shadow)}
.hist-ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--fill);color:var(--label-2);flex:none}
.hist-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.hist-title{font-weight:600;overflow-wrap:anywhere}
.hist-meta{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--label-2)}

/* ── пользователи ── */
.me-card{margin-bottom:16px}
.me-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ulist{gap:0;padding:6px 20px}
.urow{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--sep)}
.urow:first-child{border-top:0}
.cred{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:10px;background:var(--fill)}
.cred code{font:700 15px/1.3 var(--mono);overflow-wrap:anywhere;text-align:right}
.cred code.pw{font-size:16px;letter-spacing:.02em}
.warn{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:var(--amber-t)}

/* ── уведомления ── */
.toasts{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:2000;display:flex;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);pointer-events:none}
.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;padding:10px 8px 10px 14px;border-radius:13px;background:#1F1E1B;color:#F3F1EC;font-size:14px;font-weight:550;box-shadow:0 14px 34px -10px rgb(0 0 0/.5);opacity:0;transform:translateY(10px) scale(.98);transition:opacity .2s,transform .2s;max-width:100%}
.toast.in{opacity:1;transform:none}
.toast .ic{flex:none}
.toast.ok .ic{color:var(--green)}
.toast.err{background:#3A1512;color:#FFE4E1}
.toast.err .ic{color:#FF6B61}
.toast.info .ic{color:#7DB9FF}
.toast-x{width:28px;height:28px;display:grid;place-items:center;border-radius:7px;opacity:.6;flex:none}
.toast-x:hover{opacity:1;background:rgb(255 255 255/.1)}
@media(prefers-color-scheme:dark){.toast{background:#F3F1EC;color:#14130F}.toast.err{background:#FFE4E1;color:#5A0F0A}.toast.err .ic{color:#C8221A}.toast.ok .ic{color:#15803D}.toast.info .ic{color:#0A6CD6}.toast-x:hover{background:rgb(0 0 0/.08)}}

/* ── диалоги ── */
.modal{border:0;padding:0;margin:auto;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 48px);border-radius:20px;background:var(--surface);color:var(--label);box-shadow:var(--shadow-lg);overflow:auto}
.modal.wide{width:min(760px,calc(100vw - 32px))}
.modal::backdrop{background:rgb(20 19 15/.4);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.modal[open]{animation:pop .18s ease-out}
@keyframes pop{from{opacity:0;transform:scale(.97) translateY(6px)}}
.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 14px 4px 22px}
.modal-head h2{font-size:19px;font-weight:850}
.modal-body{padding:12px 22px 18px}
.modal-text{color:var(--label-2);overflow-wrap:anywhere}
.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:0 18px 18px}
.modal.as-sheet .modal-body{padding:8px}
.sheet{display:flex;flex-direction:column}
.sheet-user{display:flex;align-items:center;gap:12px;padding:12px 12px 14px;border-bottom:1px solid var(--sep);margin-bottom:6px}
.sheet-user div{display:flex;flex-direction:column}
.sheet-user small{color:var(--label-2)}
.sheet-item{display:flex;align-items:center;gap:14px;height:52px;padding:0 12px;border-radius:12px;font-weight:600;font-size:16px;text-align:left}
.sheet-item span{flex:1}
.sheet-item:hover{background:var(--fill)}

.show-xs{display:none}

/* ═════ планшет ═════ */
@media(max-width:1080px){
  .ed-grid{grid-template-columns:minmax(0,1fr) 300px}
  .video-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
  .layout{grid-template-columns:76px minmax(0,1fr)}
  .side{padding:18px 10px;align-items:center}
  .side-logo{padding:4px 0 18px;width:40px;overflow:hidden}
  .side-logo .logo-svg{height:24px;width:auto;max-width:none}
  .side-link{width:52px;justify-content:center;padding:0}
  .side-link span,.user-name,.side-user .ic,.side-build span{display:none}
  .user-btn{justify-content:center;padding:6px}
  .user-menu{left:0;right:auto;width:200px}
  .ed-grid{grid-template-columns:1fr}
  .main{padding:24px 24px 40px}
}

/* ═════ телефон ═════ */
@media(max-width:719px){
  body{font-size:16px}
  .layout{grid-template-columns:1fr}
  .side{display:none}
  .main{padding:14px 16px calc(var(--tab-h) + env(safe-area-inset-bottom) + 24px)}
  .hide-m{display:none!important}
  .page-head{margin-bottom:14px}
  .page-head h1{font-size:26px}
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;height:calc(var(--tab-h) + env(safe-area-inset-bottom));padding:0 4px env(safe-area-inset-bottom);background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5);border-top:1px solid var(--sep)}
  .tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;font-weight:650;color:var(--label-3);min-width:0}
  .tab span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .tab.on{color:var(--label)}
  .fab{display:grid;place-items:center;position:fixed;right:16px;bottom:calc(var(--tab-h) + env(safe-area-inset-bottom) + 16px);width:58px;height:58px;border-radius:18px;background:var(--primary);color:var(--on-primary);box-shadow:0 12px 28px -8px rgb(20 19 15/.5);z-index:35}
  .fab:active{transform:scale(.96)}
  .btn{height:44px}
  .btn.sm{height:38px}
  .icon-btn{width:44px;height:44px}
  .icon-btn.sm{width:38px;height:38px}
  .input{font-size:16px;min-height:46px}
  .input-xl{font-size:20px}
  .seg-btn{height:38px}
  .chip{height:38px;font-size:15px}
  .card{padding:16px;border-radius:16px}
  .toolbar{flex-wrap:nowrap}
  .select-sm{height:46px;min-height:46px;max-width:44%}
  .case-row{gap:12px;padding:8px 10px 8px 8px;align-items:flex-start}
  .case-thumb{width:88px}
  .case-title{font-size:15.5px}
  .case-side{display:none}
  .case-main .badge{align-self:flex-start}
  .case-chev{align-self:center}
  .cal-title{font-size:21px}
  .cal-wd span{padding:8px 0;text-align:center;font-size:11px}
  .cal-week{grid-template-rows:28px repeat(2,18px) minmax(8px,1fr);min-height:76px}
  .cal-day{padding:4px 2px;align-items:center}
  .cal-num{font-size:13px}
  .cal-pill{height:16px;line-height:16px;font-size:10px;padding:0 4px;margin:1px 2px;border-radius:4px}
  .cal-pill .ic{display:none}
  .cal-more{left:0;right:0;text-align:center;font-size:10.5px;bottom:2px}
  .ed-head{gap:6px;margin:-4px 0 12px}
  .ed-title{font-size:18px}
  .ed-head-main .badge{display:none}
  .ed-grid,.ed-main,.ed-side{gap:14px}
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .tiles-video{grid-template-columns:1fr}
  .tile-grip,.tile-btn{width:36px;height:36px}
  .savebar{bottom:calc(var(--tab-h) + env(safe-area-inset-bottom) + 10px);margin-top:16px}
  .savebar-in{width:100%;justify-content:space-between}
  .savebar .btn{flex:none;min-width:150px}
  .row2{gap:10px}
  .trow-cols{grid-template-columns:1fr;gap:8px}
  .tsection{padding:4px 16px 6px}
  .lang-bar{margin:0 -16px 12px;padding:8px 16px;overflow-x:auto;scrollbar-width:none}
  .lang-bar::-webkit-scrollbar{display:none}
  .lang-bar .lang-pills{flex-wrap:nowrap}
  .hide-xs{display:none}
  .show-xs{display:inline}
  .hist-row{padding:10px 10px 10px 12px;gap:10px}
  .hist-ic{display:none}
  .toasts{bottom:calc(var(--tab-h) + env(safe-area-inset-bottom) + 16px)}
  .modal{width:calc(100vw - 24px)}
  .modal.as-sheet{margin:auto 0 0;width:100vw;max-width:100vw;border-radius:22px 22px 0 0;padding-bottom:env(safe-area-inset-bottom)}
  .modal.as-sheet[open]{animation:sheet .25s cubic-bezier(.2,.8,.2,1)}
  .modal-foot .btn{flex:1}
  .poster-thumb{width:104px}
  .login-card{padding:28px 20px 22px}
}
@keyframes sheet{from{transform:translateY(100%)}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.case-meta-m{display:none}
@media(max-width:719px){.case-meta-m{display:flex;margin-top:3px}}
@media(max-width:360px){.tab{font-size:10px;letter-spacing:-.02em}}
/* ── UX-доработки ── */
html:has(dialog[open]){overflow:hidden}
.modal:focus{outline:none}
.modal-head+.modal-foot{padding-top:16px}
textarea.input-xl{min-height:52px;resize:none;overflow:hidden}
.input.num::-webkit-inner-spin-button,.input.num::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.input.num{-moz-appearance:textfield}
.tile{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
@media(max-width:900px){
  .ed-main,.ed-side{display:contents}
  .ed-c-main{order:1}.ed-c-when{order:2}.ed-c-about{order:3}.ed-c-media{order:4}.ed-c-tr{order:5}.ed-c-pub{order:6}
}
@media(max-width:719px){
  .tab{color:var(--label-2)}
  .main:has(>.fab){padding-bottom:calc(var(--tab-h) + env(safe-area-inset-bottom) + 96px)}
  .kb .tabbar,.kb .fab{display:none}
  .kb .savebar{bottom:calc(10px + env(safe-area-inset-bottom))}
  .kb .toasts{bottom:calc(16px + env(safe-area-inset-bottom))}
  /* полоса сохранения внизу — уведомления над ней, чтобы не закрывать кнопку «Сохранить» */
  body:has(.savebar:not([hidden])) .toasts{bottom:calc(var(--tab-h) + env(safe-area-inset-bottom) + 84px)}
  .kb body:has(.savebar:not([hidden])) .toasts{bottom:calc(84px + env(safe-area-inset-bottom))}
}
/* узкая плитка: ярлык «Обложка» налезает на кнопки — обложку и так видно по звезде и рамке */
.tile{container-type:inline-size}
@container (max-width:160px){.tile-tag{display:none}}
@media(max-width:360px){.tabbar{padding-left:0;padding-right:0}.tab{font-size:9.5px;letter-spacing:-.03em}}
.input,.chipinput-inp{scroll-margin-block:96px 150px}
