/* Стол Зины. Дизайн-система Сигнала: тёплые нейтрали stone + оранжевый акцент, тени и радиусы
   токенами, активное – оранжевый текст или один залитый CTA, состояние формой (полоска «горит»,
   чипы полосы и уровня). Тёмной темы у Сигнала нет – страница светлая всегда. */
:root{
  color-scheme: light;
  --bg:#fafaf9; --card:#ffffff; --sunk:#f5f5f4;
  --ink:#1c1917; --ink-2:#44403c; --muted:#78716c; --faint:#a8a29e;
  --line:#e7e5e4; --hair:#efebe6;
  --accent:#ea580c; --accent-hi:#f97316; --accent-lo:#c2410c; --accent-ring:#fdba74;
  --bad:#dc2626;
  --r-sm:6px; --r-md:8px; --r-lg:10px; --r-card:12px;
  --shadow-card:0 1px 2px rgba(0,0,0,.03), 0 2px 8px rgba(0,0,0,.04);
  --shadow-dock:0 -2px 16px rgba(28,25,23,.06);
  --m-fast:120ms; --m-base:180ms;
  --ease-out:cubic-bezier(.165,.84,.44,1);
  --sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --pad:16px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:var(--bg); color:var(--ink-2);
  font:400 15px/1.5 var(--sans);
  -webkit-font-smoothing:antialiased;
  padding-bottom:calc(84px + env(safe-area-inset-bottom));
}
button,input,textarea{font:inherit;color:inherit}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--accent-lo)}
:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-ring)}

/* ---------------------------------------------------------------- шапка */
.top{
  position:sticky; top:0; z-index:20;
  background:var(--bg); border-bottom:1px solid var(--line);
  padding:calc(12px + env(safe-area-inset-top)) var(--pad) 0;
}
.wrap,.top,.main,.dock{margin-inline:auto}
.top,.main{max-width:760px}
.top__row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.brand{font-size:17px;font-weight:600;color:var(--ink);letter-spacing:-.01em}
.stamp{font-size:12px;color:var(--faint);font-variant-numeric:tabular-nums;white-space:nowrap}
.counts{margin:2px 0 10px;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.counts b{color:var(--ink);font-weight:600}

.tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.tabs::-webkit-scrollbar{display:none}
.tab{
  flex:0 0 auto; border:0; background:none; cursor:pointer;
  padding:9px 6px 11px; margin-bottom:-1px;
  font-size:12.5px; font-weight:500; color:var(--muted); white-space:nowrap;
  border-bottom:2px solid transparent;
  transition:color var(--m-fast) var(--ease-out), border-color var(--m-fast) var(--ease-out);
}
.tab:hover{color:var(--ink-2)}
.tab[aria-selected="true"]{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}
.tab .n{font-size:11.5px;color:var(--faint);margin-left:4px;font-variant-numeric:tabular-nums}
.tab[aria-selected="true"] .n{color:var(--accent)}

/* ---------------------------------------------------------------- полотно */
.main{padding:14px var(--pad) 8px;display:flex;flex-direction:column;gap:10px}
.pane{display:flex;flex-direction:column;gap:10px}
.pane[hidden]{display:none}
.sec{
  margin:8px 2px 0; font-size:11px; font-weight:500; color:var(--muted);
  text-transform:uppercase; letter-spacing:.06em;
}
.sec:first-child{margin-top:0}
.empty{
  padding:26px 16px; text-align:center; color:var(--muted); font-size:14px;
  background:var(--card); border:1px solid var(--line); border-radius:var(--r-card);
}
.warn{
  padding:11px 13px; font-size:13px; color:var(--muted);
  background:var(--sunk); border:1px solid var(--line); border-radius:var(--r-md);
}
.banner{
  padding:10px 13px; font-size:13px; color:var(--ink-2);
  background:#fff; border:1px solid var(--accent-ring); border-radius:var(--r-md);
}

/* ---------------------------------------------------------------- карточка работы */
.card{
  position:relative; background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-card); box-shadow:var(--shadow-card);
  padding:14px 16px 13px; overflow:hidden;
}
.card--hot::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:var(--accent);
}
.card--hot{padding-left:19px}
.card--busy{opacity:.55;pointer-events:none}
.card__meta{
  display:flex; justify-content:space-between; gap:10px; align-items:baseline;
  font-size:12px; color:var(--faint); font-variant-numeric:tabular-nums; margin-bottom:4px;
}
.card__meta .id{color:var(--muted);font-weight:500}
.card__title{
  margin:0 0 8px; font-size:16px; line-height:1.3; font-weight:600; color:var(--ink);
  letter-spacing:-.01em;
}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.chip{
  font-size:11px; font-weight:500; letter-spacing:.04em; text-transform:uppercase;
  color:var(--muted); background:var(--card); border:1px solid var(--line);
  border-radius:999px; padding:4px 9px; white-space:nowrap;
}
.chip--lane{color:var(--ink);border-color:var(--hair);background:var(--sunk);font-weight:600}
.chip--soft{text-transform:none;letter-spacing:0;font-size:11.5px}
.chip--hot{color:var(--accent);border-color:var(--accent-ring)}
.chip--bad{color:var(--bad);border-color:#fecaca}

.text{
  font-size:14.5px; line-height:1.55; color:var(--ink-2); white-space:pre-wrap; word-wrap:break-word;
}
.text--clamped{
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.text b{color:var(--ink);font-weight:600}
.more{
  border:0;background:none;padding:6px 0 0;cursor:pointer;color:var(--accent);
  font-size:13px;font-weight:500;
}
.more:hover{color:var(--accent-lo)}

.pic{margin:10px 0 0;padding:0}
.pic img{
  display:block; width:100%; max-height:190px; object-fit:cover;
  border:1px solid var(--line); border-radius:var(--r-md); background:var(--sunk);
}
.pic figcaption{margin-top:5px;font-size:12px;color:var(--faint)}

.facts{margin-top:11px;padding-top:10px;border-top:1px solid var(--hair);display:flex;flex-direction:column;gap:5px}
.fact{font-size:12.5px;line-height:1.45;color:var(--muted);font-variant-numeric:tabular-nums}
.fact b{color:var(--ink-2);font-weight:500}
.fact--bad{color:var(--bad)}
.fact--prop{color:var(--ink-2);font-size:13.5px}
.fact--prop b{color:var(--accent);font-weight:600}
.facts details{margin-top:2px}
.facts summary{font-size:12.5px;color:var(--accent);cursor:pointer;list-style:none;padding:3px 0}
.facts summary::-webkit-details-marker{display:none}
.facts details p{margin:5px 0 0;font-size:12.5px;line-height:1.5;color:var(--muted)}
.issues{margin:6px 0 0;padding-left:16px}
.issues li{font-size:12.5px;line-height:1.45;color:var(--muted);margin-bottom:3px}

/* ---------------------------------------------------------------- кнопки */
.acts{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:12px}
.btn{
  min-height:38px; padding:8px 12px; cursor:pointer;
  font-size:13.5px; font-weight:500; color:var(--ink);
  background:var(--card); border:1px solid var(--line); border-radius:var(--r-lg);
  transition:transform var(--m-fast) var(--ease-out), background-color var(--m-fast) var(--ease-out),
             border-color var(--m-fast) var(--ease-out), color var(--m-fast) var(--ease-out);
}
.btn:hover{border-color:#d6d3d1;background:var(--sunk)}
.btn:active{transform:scale(.97)}
.btn--accent{background:var(--accent-hi);border-color:var(--accent-hi);color:#fff;font-weight:600}
.btn--accent:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.btn--quiet{color:var(--muted)}
.btn--wide{flex:0 1 auto;min-height:44px;white-space:nowrap}
.btn[disabled]{opacity:.5;cursor:default}
.acts--quiet{margin-top:6px;gap:4px}
.acts--quiet .btn{min-height:32px;padding:5px 9px;font-size:12.5px;border-color:transparent;background:none;color:var(--muted)}
.acts--quiet .btn:hover{color:var(--ink);background:var(--sunk);border-color:var(--line)}
.acts .topic{margin-left:auto;font-size:12.5px;color:var(--muted);padding:6px 2px}
.acts .topic:hover{color:var(--ink)}

.ask{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ask[hidden]{display:none}
.ask input,.ask textarea{
  flex:1 1 150px; min-height:38px; padding:8px 11px;
  border:1px solid var(--line); border-radius:var(--r-lg); background:var(--card);
  font-size:14px;
}
.ask textarea{min-height:66px;resize:vertical;flex-basis:100%}
.ask input:focus,.ask textarea:focus{outline:none;border-color:var(--accent-ring);box-shadow:0 0 0 2px #ffedd5}
.ask__slots{display:flex;flex-wrap:wrap;gap:5px;flex-basis:100%}
.ask__slot{
  border:1px solid var(--line);background:var(--card);border-radius:999px;
  padding:5px 10px;font-size:12.5px;color:var(--muted);cursor:pointer;
}
.ask__slot:hover{color:var(--ink)}
.ask__slot[aria-pressed="true"]{color:var(--accent);border-color:var(--accent-ring);font-weight:500}

.note{
  margin-top:10px; padding:10px 12px; border-radius:var(--r-md);
  background:var(--sunk); border:1px solid var(--line);
  font-size:13px; line-height:1.5; color:var(--ink-2); white-space:pre-wrap;
}
.note--bad{border-color:#fecaca;color:var(--bad)}
.note[hidden]{display:none}

/* ---------------------------------------------------------------- строки (лента, календарь, источники) */
.list{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);
      box-shadow:var(--shadow-card);padding:2px 16px}
.row{display:flex;gap:12px;align-items:baseline;padding:11px 0;border-top:1px solid var(--hair)}
.row:first-child{border-top:0}
.row__t{flex:0 0 auto;min-width:46px;font-size:12.5px;color:var(--faint);font-variant-numeric:tabular-nums}
.row__m{flex:1 1 auto;min-width:0}
.row__m .h{font-size:14px;line-height:1.4;color:var(--ink);display:block}
.row__m .s{font-size:12.5px;color:var(--muted);display:block;margin-top:2px;font-variant-numeric:tabular-nums}
.row__v{flex:0 0 auto;max-width:74px;font-size:13px;color:var(--muted);
        font-variant-numeric:tabular-nums;text-align:right;line-height:1.25}
.row__v b{color:var(--ink);font-weight:600;display:block}
.row__v .u{display:block;font-size:11px;color:var(--faint)}
.row--act{align-items:center;flex-wrap:wrap}
.row--act .btn{min-height:34px;padding:6px 10px;font-size:12.5px}
.row__acts{display:flex;gap:6px;flex:1 0 100%;margin-top:8px}
@media (min-width:560px){.row__acts{flex:0 0 auto;margin-top:0}}
.muted{color:var(--muted)}
.dim{color:var(--faint)}

/* ---------------------------------------------------------------- правила */
.rule{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);
      box-shadow:var(--shadow-card);padding:14px 16px}
.rule__h{margin:0 0 6px;font-size:15px;line-height:1.4;font-weight:600;color:var(--ink)}
.rule__src{font-size:12.5px;line-height:1.5;color:var(--muted);margin:0 0 4px}
.rule__src b{color:var(--ink-2);font-weight:500}
.rule details{margin-top:6px}
.rule summary{font-size:12.5px;color:var(--accent);cursor:pointer;list-style:none}
.rule summary::-webkit-details-marker{display:none}
.rule details p{margin:6px 0 0;font-size:12.5px;line-height:1.5;color:var(--muted);
                background:var(--sunk);border-radius:var(--r-sm);padding:9px 11px}

/* ---------------------------------------------------------------- нижняя полоса */
.dock{
  position:fixed; left:0; right:0; bottom:0; z-index:25;
  display:flex; gap:12px; align-items:center;
  max-width:760px; padding:10px var(--pad) calc(10px + env(safe-area-inset-bottom));
  background:var(--card); border-top:1px solid var(--line); box-shadow:var(--shadow-dock);
}
.dock[hidden]{display:none}
.dock__note{font-size:11.5px;line-height:1.35;color:var(--faint);flex:1 1 auto}

@media (min-width:760px){
  :root{--pad:20px}
  .main{padding-top:18px;gap:12px}
  .dock{border-radius:var(--r-card) var(--r-card) 0 0;border:1px solid var(--line);border-bottom:0}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
  .btn:active{transform:none}
}
