:root{
    --paper:#F5F7F8; --card:#FFFFFF; --ink:#171A1D; --body:#2E3539;
    --muted:#646F77; --faint:#8D979E; --line:#DDE3E7; --line-soft:#EBEFF2;
    --accent:#2F5468; --accent-soft:#E7EEF2;
    --ok:#1F6F4A; --ok-bg:#E4F1EA; --warn:#8A5B00; --warn-bg:#F8EEDC;
    --crit:#A32018; --crit-bg:#FAE7E5; --idle:#5B646B; --idle-bg:#ECEFF1;
    --sans:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  }
  @media (prefers-color-scheme:dark){
    :root:not([data-theme="light"]){
      --paper:#101316; --card:#171B1F; --ink:#EEF2F4; --body:#CBD3D8;
      --muted:#97A2A9; --faint:#6E787F; --line:#2A3137; --line-soft:#21272C;
      --accent:#8EBBD2; --accent-soft:#1C262D;
      --ok:#6FCB9B; --ok-bg:#15271F; --warn:#E0B055; --warn-bg:#2A2214;
      --crit:#F08C82; --crit-bg:#2B1817; --idle:#9AA4AB; --idle-bg:#1F2429;
    }
  }
  :root[data-theme="dark"]{
    --paper:#101316; --card:#171B1F; --ink:#EEF2F4; --body:#CBD3D8;
    --muted:#97A2A9; --faint:#6E787F; --line:#2A3137; --line-soft:#21272C;
    --accent:#8EBBD2; --accent-soft:#1C262D;
    --ok:#6FCB9B; --ok-bg:#15271F; --warn:#E0B055; --warn-bg:#2A2214;
    --crit:#F08C82; --crit-bg:#2B1817; --idle:#9AA4AB; --idle-bg:#1F2429;
  }
  *{box-sizing:border-box}
  body{background:var(--paper);color:var(--body);font-family:var(--sans);
       font-size:15px;line-height:1.6;margin:0}
  .wrap{max-width:1120px;margin:0 auto;padding-inline:20px;padding-block:0 72px}
  h1,h2,h3{color:var(--ink);text-wrap:balance;margin:0}
  h1{font-size:clamp(26px,4.4vw,38px);font-weight:700;letter-spacing:-.02em;line-height:1.15}
  h2{font-size:clamp(19px,2.6vw,24px);font-weight:600;letter-spacing:-.01em}
  h3{font-size:16px;font-weight:600}
  p{margin:0}
  a{color:var(--accent)}
  .mono{font-family:var(--mono);font-variant-numeric:tabular-nums}

  /* ---- header ---- */
  header.top{border-bottom:1px solid var(--line);background:var(--card)}
  .top-in{max-width:1120px;margin:0 auto;padding:36px 20px 28px;
          display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:flex-end}
  .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.14em;
           text-transform:uppercase;color:var(--faint);margin-bottom:10px}
  .lede{color:var(--muted);max-width:60ch;margin-top:10px}
  .stamp{font-family:var(--mono);font-size:12px;color:var(--muted);text-align:right;
         line-height:1.8;white-space:nowrap}

  /* ---- sticky nav ---- */
  nav.jump{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;
           background:var(--card);border-bottom:1px solid var(--line)}
  .jump-in{max-width:1120px;margin:0 auto;padding:0 20px;display:flex;gap:4px;
           overflow-x:auto;scrollbar-width:thin}
  .jump-in a{flex:0 0 auto;padding:12px 10px;font-size:13px;font-weight:500;
             color:var(--muted);text-decoration:none;border-bottom:2px solid transparent}
  .jump-in a:hover{color:var(--ink)}
  .jump-in a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}

  /* ---- figure band ---- */
  .band{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);
        grid-template-columns:repeat(auto-fit,minmax(132px,1fr));margin-top:28px}
  .fig{background:var(--card);padding:14px 16px}
  .fig b{display:block;font-family:var(--mono);font-size:24px;font-weight:600;
         color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
  .fig span{display:block;font-size:12px;color:var(--muted);margin-top:3px;line-height:1.35}

  section{margin-top:52px;scroll-margin-top:68px}
  .sec-head{border-bottom:2px solid var(--ink);padding-bottom:9px;margin-bottom:20px;
            display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}
  .sec-note{font-size:13px;color:var(--muted)}

  /* ---- platform cards ---- */
  .plat{background:var(--card);border:1px solid var(--line);margin-bottom:16px}
  .plat-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;
             padding:14px 18px;border-bottom:1px solid var(--line-soft)}
  .plat-head h3{flex:1 1 auto;min-width:140px}
  .plat-role{font-size:12.5px;color:var(--muted)}
  .plat-grid{display:grid;gap:1px;background:var(--line-soft);
             grid-template-columns:repeat(auto-fit,minmax(252px,1fr))}
  .cell{background:var(--card);padding:14px 18px}
  .cell h4{margin:0 0 7px;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;
           text-transform:uppercase;color:var(--faint);font-weight:500}
  .cell ul{margin:0;padding-left:17px}
  .cell li{margin-bottom:5px}
  .cell li:last-child{margin-bottom:0}
  .verdict{padding:12px 18px;border-top:1px solid var(--line-soft);
           background:var(--accent-soft);font-size:14px;color:var(--ink)}
  .verdict b{font-weight:600}

  /* ---- chips ---- */
  .chip{display:inline-block;font-family:var(--mono);font-size:10.5px;font-weight:500;
        letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:2px;white-space:nowrap}
  .c-ok{background:var(--ok-bg);color:var(--ok)}
  .c-warn{background:var(--warn-bg);color:var(--warn)}
  .c-crit{background:var(--crit-bg);color:var(--crit)}
  .c-idle{background:var(--idle-bg);color:var(--idle)}

  /* ---- tables ---- */
  .scroller{overflow-x:auto;border:1px solid var(--line);background:var(--card)}
  table{border-collapse:collapse;width:100%;min-width:640px;font-size:13.5px}
  th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line-soft);vertical-align:top}
  th{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;
     color:var(--faint);font-weight:500;background:var(--card);position:sticky;top:0;
     border-bottom:1px solid var(--line)}
  tbody tr:last-child td{border-bottom:none}
  td.say{color:var(--ink)}
  td small{display:block;color:var(--muted);font-size:12px;margin-top:2px}

  .filter{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
  .filter input{flex:1 1 220px;min-width:0;font:inherit;font-size:13.5px;padding:8px 11px;
                border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:2px}
  .filter input:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}
  .filter button{font:inherit;font-size:12.5px;padding:7px 12px;border:1px solid var(--line);
                 background:var(--card);color:var(--muted);border-radius:2px;cursor:pointer}
  .filter button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
  .count{font-family:var(--mono);font-size:12px;color:var(--muted)}

  /* ---- risk list ---- */
  .risk{display:grid;grid-template-columns:auto 1fr;gap:12px 14px;align-items:start;
        background:var(--card);border:1px solid var(--line);padding:14px 16px;margin-bottom:10px}
  .risk h3{font-size:15px;margin-bottom:3px}
  .risk p{font-size:13.5px;color:var(--muted)}
  .risk .owner{font-family:var(--mono);font-size:11.5px;color:var(--faint);margin-top:6px}

  .note{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--accent);
        padding:14px 17px;font-size:14px;margin-top:16px}
  .note b{color:var(--ink)}
  .cols{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(272px,1fr))}
  footer{margin-top:56px;padding-top:20px;border-top:1px solid var(--line);
         font-size:12.5px;color:var(--faint)}
  @media (max-width:560px){
    .stamp{text-align:left}
    th{position:static}
  }

/* ===================== добавено за приложението ===================== */

/* base reset - артифактът го получаваше от платформата, тук е наш */
*{box-sizing:border-box}
html,body{margin:0}
img{max-width:100%}
[hidden]{display:none!important}

/* ---- админ лента ---- */
.adminbar{position:sticky;top:0;z-index:40;background:var(--ink);color:var(--paper);
          font-family:var(--mono);font-size:12.5px}
.adminbar-in{max-width:1120px;margin:0 auto;padding:9px 20px;display:flex;gap:12px;
             align-items:center;flex-wrap:wrap}
.adminbar b{font-weight:600;letter-spacing:.04em}
.adminbar .spacer{flex:1 1 auto}
.adminbar button,.adminbar a.btn{font:inherit;padding:5px 11px;border-radius:2px;cursor:pointer;
       border:1px solid rgba(255,255,255,.3);background:transparent;color:inherit;text-decoration:none}
.adminbar button:hover,.adminbar a.btn:hover{background:rgba(255,255,255,.12)}
.savehint{opacity:.72}
.savehint.ok{color:#8FE0B4}
.savehint.err{color:#FFB4AC}

/* ---- логин ---- */
.loginwrap{max-width:360px;margin:0 auto;padding-block:72px}
.loginwrap form{background:var(--card);border:1px solid var(--line);padding:22px}
.loginwrap label{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;
                 text-transform:uppercase;color:var(--faint);margin-bottom:7px}
.loginwrap input{width:100%;font:inherit;font-size:16px;padding:10px 12px;border:1px solid var(--line);
                 background:var(--paper);color:var(--ink);border-radius:2px;letter-spacing:.3em}
.loginwrap button{width:100%;margin-top:12px;font:inherit;font-size:14px;padding:10px;
                  border:none;background:var(--ink);color:var(--paper);border-radius:2px;cursor:pointer}
.loginerr{color:var(--crit);font-size:13px;margin-top:10px;min-height:19px}

/* ---- редактируеми полета ---- */
[data-edit]{outline:none}
body.editing [data-edit]{border-radius:2px;box-shadow:inset 0 0 0 1px var(--line-soft);
                         padding:1px 3px;margin:-1px -3px;transition:box-shadow .12s}
body.editing [data-edit]:hover{box-shadow:inset 0 0 0 1px var(--accent)}
body.editing [data-edit]:focus{box-shadow:inset 0 0 0 2px var(--accent);background:var(--card)}
[data-edit].saving{box-shadow:inset 0 0 0 2px var(--warn)!important}
[data-edit].saved{box-shadow:inset 0 0 0 2px var(--ok)!important}

/* ---- проекти на началната страница ---- */
.projects{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));margin-top:28px}
.proj{background:var(--card);border:1px solid var(--line);padding:20px;text-decoration:none;
      display:flex;flex-direction:column;gap:9px}
.proj:hover{border-color:var(--accent)}
.proj h2{font-size:19px}
.proj p{color:var(--muted);font-size:14px;flex:1 1 auto}
.proj .meta{font-family:var(--mono);font-size:11.5px;color:var(--faint);
            display:flex;gap:10px;flex-wrap:wrap}

/* ---- код ---- */
pre.code{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--accent);
         padding:13px 15px;overflow-x:auto;font-family:var(--mono);font-size:12.5px;
         line-height:1.62;color:var(--ink);margin:0;white-space:pre}
.codewrap{margin-top:14px}
.codewrap .src{font-family:var(--mono);font-size:11px;color:var(--faint);margin-bottom:5px;
               display:block;word-break:break-all}

/* ---- номериран проблем ---- */
.prob{background:var(--card);border:1px solid var(--line);margin-bottom:12px}
.prob-head{display:flex;gap:11px;align-items:baseline;padding:13px 17px 0}
.prob-n{font-family:var(--mono);font-size:12px;color:var(--faint);flex:0 0 auto;padding-top:2px}
.prob-head h3{flex:1 1 auto}
.prob-body{padding:9px 17px 15px 44px}
.prob-body > div{margin-bottom:9px}
.prob-body > div:last-child{margin-bottom:0}
.prob-body .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
                color:var(--faint);display:block;margin-bottom:2px}
.prob-body .fix{color:var(--ink)}
@media (max-width:560px){ .prob-body{padding-left:17px} }

/* ---- проза ---- */
.prose{max-width:74ch}
.prose p{margin-bottom:16px}
.prose p:last-child{margin-bottom:0}
.quote{border-left:3px solid var(--line);padding-left:14px;color:var(--muted);font-style:normal}
