/* Pulpit 2.0, styl C (T2.1, T2.14): tokeny wg 04 §2, tekst w kolorach stanu przez *-ink (AA), bez czcionek z sieci */
:root{--bg:#0e1319;--surf:#151c25;--surf2:#1b2430;--line:#243040;--ink:#e4ecf3;--mute:#8497aa;--accent:#5cc8e6;--accent-ink:#5cc8e6;--on-accent:#06222b;--on-crit:#0e1319;--ok:#4ec38a;--warn:#f0b04a;--crit:#ef6b6b;--info:#8497aa;--ok-ink:#4ec38a;--warn-ink:#f0b04a;--crit-ink:#ef6b6b;--ok-bg:#173427;--warn-bg:#3a2e12;--crit-bg:#3b1f22;--accent-bg:#12303a;--info-bg:#1c2733;--shadow:0 6px 24px rgba(0,0,0,.35);--f-body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--f-mono:"IBM Plex Mono",ui-monospace,Consolas,Menlo,monospace;--gap:10px;color-scheme:dark}
/* Jasny */
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){--bg:#eef1f4;--surf:#ffffff;--surf2:#f4f6f8;--line:#dde3ea;--ink:#121a22;--mute:#5d6b79;--accent:#1f78a8;--accent-ink:#17618a;--on-accent:#ffffff;--on-crit:#ffffff;--ok:#1f9d62;--warn:#b57300;--crit:#c63b3b;--info:#5d6b79;--ok-ink:#156e45;--warn-ink:#8a5700;--crit-ink:#a82e2e;--ok-bg:#dcf1e6;--warn-bg:#fbebc8;--crit-bg:#f6dede;--accent-bg:#dcedf7;--info-bg:#e4e9ee;--shadow:0 6px 24px rgba(18,26,34,.12);color-scheme:light}}
:root[data-theme="light"]{--bg:#eef1f4;--surf:#ffffff;--surf2:#f4f6f8;--line:#dde3ea;--ink:#121a22;--mute:#5d6b79;--accent:#1f78a8;--accent-ink:#17618a;--on-accent:#ffffff;--on-crit:#ffffff;--ok:#1f9d62;--warn:#b57300;--crit:#c63b3b;--info:#5d6b79;--ok-ink:#156e45;--warn-ink:#8a5700;--crit-ink:#a82e2e;--ok-bg:#dcf1e6;--warn-bg:#fbebc8;--crit-bg:#f6dede;--accent-bg:#dcedf7;--info-bg:#e4e9ee;--shadow:0 6px 24px rgba(18,26,34,.12);color-scheme:light}

/* Podstawa i typografia */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.p2{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 var(--f-body);padding-bottom:env(safe-area-inset-bottom)}
:where(.p2) a{color:var(--accent-ink)}
.p2 :focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.p2-wrap{max-width:1180px;margin:0 auto;padding:12px 16px 24px}
.p2 h1{font:600 18px/1.25 var(--f-body);margin:0}
.p2-num{display:block;font:600 26px/1.1 var(--f-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.p2-num small{font:400 13.5px/1.2 var(--f-body);color:var(--mute);margin-left:4px}
.p2-mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.p2-sub{font-size:12px;color:var(--mute);margin:6px 0 0}
.p2-lbl{display:block;font-size:12px;color:var(--mute)}
.p2-lines{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13.5px}
.p2-line{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.p2-date{font:500 12px/1.4 var(--f-mono);color:var(--mute);min-width:42px;font-variant-numeric:tabular-nums}
.p2-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.p2-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;padding:0;margin:-1px}

/* Nagłówek ekranu i siatka */
.p2-head{display:flex;align-items:center;gap:10px;padding:4px 0 12px}
.p2-head-t{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.p2-head-t b{font-size:15px}
.p2-head-t span{font-size:12px;color:var(--mute)}
.p2-head .p2-btn{margin-left:auto}
/* Słowo poziomu obok pierścienia */
.p2-lvl{font:500 12px/1.3 var(--f-mono);letter-spacing:.02em;color:var(--mute)}
.p2-lvl[data-level="important"]{color:var(--accent-ink)}
.p2-lvl[data-level="very"]{color:var(--warn-ink)}
.p2-lvl[data-level="super"]{color:var(--crit-ink);font-weight:600}
.p2-grid{display:grid;grid-template-columns:1fr;gap:var(--gap)}
.p2-col{display:flex;flex-direction:column;gap:var(--gap);min-width:0}
@media (min-width:720px){.p2-wrap{padding:16px 20px 32px}.p2-grid{grid-template-columns:1fr 1fr;--gap:16px}}
@media (min-width:1100px){.p2-grid{grid-template-columns:1fr 1fr 1fr}.p2-ring.p2-ring--head{width:64px;height:64px}}

/* Karta */
.p2-card{background:var(--surf);border:1px solid var(--line);border-radius:12px;padding:12px;position:relative;min-width:0}
.p2-card--warn{border-left:4px solid var(--warn);padding-left:10px}
.p2-card--crit{border-left:4px solid var(--crit);padding-left:10px}
.p2-card-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 8px;font:500 10.5px/1.3 var(--f-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--mute)}
.p2-card-h .p2-badge{text-transform:none;letter-spacing:.02em}
.p2-card-b{min-width:0}
.p2-card-f{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;font:400 12px/1.3 var(--f-mono);color:var(--mute)}
.p2-read{font-variant-numeric:tabular-nums}
.p2-read--none{color:var(--warn-ink)}
/* „więcej” */
.p2-more{display:inline-flex;align-items:center;min-height:44px;margin:-14px -10px;padding:0 10px;color:var(--accent-ink);text-decoration:underline;text-underline-offset:2px}

/* Przyciski i odnośniki */
.p2-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;min-width:44px;padding:8px 14px;border-radius:10px;border:1px solid var(--line);background:var(--surf2);color:var(--ink);font:500 13.5px/1.2 var(--f-body);cursor:pointer;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s}
.p2-btn:hover{border-color:var(--accent)}
.p2-btn--pri{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.p2-btn--pri:focus-visible{outline-color:var(--ink)}
.p2-btn--ghost{background:transparent;border-color:var(--accent);color:var(--accent-ink)}
.p2-btn--ghost:hover{background:var(--accent-bg)}
.p2-btn:disabled{opacity:.55;cursor:default}
.p2-btn--icon{padding:0;width:44px;border-radius:50%;color:var(--accent)}
.p2-link{display:inline-flex;align-items:center;min-height:44px;padding:0 6px;color:var(--accent-ink);text-decoration:underline;text-underline-offset:2px;font-size:13.5px}

/* Plakietki */
.p2-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:999px;font:500 12px/1.4 var(--f-mono);letter-spacing:.02em;background:var(--info-bg);color:var(--ink);border:1px solid transparent;vertical-align:middle;white-space:nowrap}
.p2-badge--ok{background:var(--ok-bg);color:var(--ok-ink)}
.p2-badge--warn{background:var(--warn-bg);color:var(--warn-ink)}
.p2-badge--crit{background:var(--crit-bg);color:var(--crit-ink)}
.p2-badge--pri{font-weight:600;min-width:26px;justify-content:center}
.p2-badge--promise{background:transparent;border-color:var(--accent);color:var(--accent-ink)}

/* Pierścień */
.p2-ring{width:34px;height:34px;flex:none;display:block;color:var(--accent)}
.p2-ring--lg{width:64px;height:64px}
.p2-ring[data-level="very"]{color:var(--warn)}
.p2-ring[data-level="super"]{color:var(--crit)}
.p2-ring[data-level="none"]{color:var(--mute)}
.p2-ring-mark{fill:var(--ink)}
.p2-ring-arc{transform-box:fill-box;transform-origin:center}
.p2-ring[data-busy="1"] .p2-ring-arc{animation:p2-spin 26s linear infinite}
.p2-ring[data-level="super"] .p2-ring-core{animation:p2-pulse 1.6s ease-in-out infinite}
@keyframes p2-spin{to{transform:rotate(360deg)}}
@keyframes p2-pulse{50%{opacity:.3}}

/* Pozycja „Wymaga Ciebie” */
.p2-reqs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.p2-req{border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--surf2);display:flex;flex-direction:column;gap:8px}
.p2-req[data-state="sent"]{border-color:var(--accent)}
.p2-req[data-state="done"]{border-color:var(--ok)}
.p2-req-t{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:13.5px;line-height:1.35}
.p2-code{font:600 12px/1.4 var(--f-mono);color:var(--accent-ink);letter-spacing:.02em}
.p2-req-eff{margin:0;font-size:13.5px;color:var(--mute)}
.p2-req-acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.p2-acts{display:flex;gap:6px;flex-wrap:wrap;margin:0}
.p2-opt{flex-direction:column;gap:0;line-height:1.1;padding:4px 10px}
.p2-opt b{font:600 15px/1.2 var(--f-mono)}
.p2-opt span{font-size:12px;color:var(--mute)}
.p2-btn--pri.p2-opt span{color:inherit}
.p2-note{font:400 12px/1.4 var(--f-mono);color:var(--mute)}
.p2-note--sent{color:var(--accent-ink)}

/* Sparkline i stan „za mało danych” */
.p2-spark{margin:0;display:flex;flex-direction:column;gap:4px}
.p2-spark svg{width:100%;height:auto;display:block;color:var(--accent)}
.p2-spark-cap{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--mute)}
.p2-spark--none{min-height:44px;display:flex;align-items:center;justify-content:center;border:1px dashed var(--line);border-radius:8px;font:400 12px/1.3 var(--f-mono);color:var(--mute)}
.p2-chg{font:500 12px/1.4 var(--f-mono)}
.p2-chg--up{color:var(--ok-ink)}
.p2-chg--down{color:var(--crit-ink)}

/* Pasek zdrowia */
.p2-health{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 12px;font-size:13.5px}
.p2-h{display:inline-flex;align-items:center;gap:6px}
.p2-h i{width:9px;height:9px;border-radius:50%;background:var(--ok);flex:none}
.p2-h--warn i{background:var(--warn)}
.p2-h--crit i{background:var(--crit);box-shadow:0 0 0 2px var(--crit-bg)}
.p2-h--none i{background:transparent;border:1px solid var(--mute)}
.p2-h-s{font:400 12px/1.4 var(--f-mono);color:var(--mute)}
.p2-h--warn .p2-h-s{color:var(--warn-ink)}
.p2-h--crit .p2-h-s{color:var(--crit-ink);font-weight:600}

/* Radar agentów */
.p2-radar{display:flex;gap:12px;align-items:center}
.p2-radar svg{width:112px;height:112px;flex:none;color:var(--line)}
.p2-radar ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13.5px;min-width:0}
.p2-radar li{display:flex;gap:7px;align-items:baseline}
.p2-rp{width:8px;height:8px;border-radius:50%;flex:none;background:var(--accent)}
.p2-rp--work{background:var(--ok)}
.p2-rp--off{background:transparent;border:1px solid var(--mute)}
.p2-rd{fill:var(--accent)}
.p2-rd--work{fill:var(--ok)}
.p2-rd--off{fill:none;stroke:var(--mute)}
.p2-rsweep{fill:var(--accent);fill-opacity:.16}

/* Pasek czatu na dole */
.p2-chat{position:sticky;bottom:8px;display:flex;align-items:center;gap:8px;padding:6px 6px 6px 14px;margin-top:16px;background:var(--surf);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow)}
.p2-chat:focus-within{box-shadow:var(--shadow),0 0 0 2px var(--accent)}
.p2-chat-in{flex:1;min-width:0;min-height:44px;border:0;background:transparent;color:var(--ink);font:400 15px/1.3 var(--f-body);outline:none}
.p2-chat-in::placeholder{color:var(--mute)}
.p2-chat-st{display:none;font:400 12px/1.3 var(--f-mono);color:var(--mute);max-width:40%}
.p2-chat[data-state="sending"] .p2-chat-st,.p2-chat[data-state="offline"] .p2-chat-st{display:block}
.p2-chat[data-state="offline"]{border-color:var(--warn)}
.p2-chat[data-state="offline"] .p2-chat-st{color:var(--warn-ink)}

/* Stany wspólne */
.p2-empty{display:flex;gap:8px;align-items:center;padding:10px;border:1px dashed var(--line);border-radius:8px;font-size:13.5px;color:var(--mute)}
.p2-error{display:flex;flex-direction:column;gap:4px;padding:10px;border:1px solid var(--crit);border-radius:8px;background:var(--crit-bg);font-size:13.5px;color:var(--ink)}
.p2-error b{color:var(--crit-ink)}
.p2-error .p2-sub{margin:0;color:var(--ink)}
.p2-stop{position:sticky;top:0;z-index:5;background:var(--crit);color:var(--on-crit);font:600 13.5px/1.3 var(--f-body);padding:10px 14px;border-radius:0 0 10px 10px;margin:0 0 10px}
.p2-sample{background:var(--warn-bg);color:var(--warn-ink);border-radius:8px;padding:8px 12px;font:500 12px/1.4 var(--f-mono);margin:0 0 10px}
.p2-copy{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.p2-copy-txt{flex:1 1 220px;min-width:0;font:400 13.5px/1.45 var(--f-mono);padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surf2);user-select:all;-webkit-user-select:all}
.p2-copy-st{flex-basis:100%;font:400 12px/1.4 var(--f-mono);color:var(--ok-ink)}
.p2-copy-st:empty{display:none}

/* Katalog stanów na stronie podglądu */
.p2-cat{margin-top:28px;border-top:1px solid var(--line);padding-top:16px;display:flex;flex-direction:column;gap:var(--gap)}
.p2-cat>h2{font:600 18px/1.25 var(--f-body);margin:0 0 4px}
.p2-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.p2-row figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:4px;font:400 12px/1.3 var(--f-mono);color:var(--mute)}

/* Ruch */
@media (prefers-reduced-motion:reduce){.p2 *,.p2 *::before,.p2 *::after,.p2-ring,.p2-ring *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Ekran „Dziś” */
.p2-nav{display:flex;flex-wrap:wrap;gap:0 8px;margin:-8px 0 8px -6px}
.p2-fresh{font:400 12px/1.3 var(--f-mono);color:var(--mute);font-variant-numeric:tabular-nums}
.p2-chat[data-state="sent"] .p2-chat-st{display:block;color:var(--ok-ink)}
.p2-money+.p2-money{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.p2-money .p2-read{margin-top:4px}
.p2-tc{margin:0;font-size:13.5px}
.p2-head .p2-fresh{margin-top:2px}

/* Powłoka */
.p2-app{--nav-h:56px;min-height:100vh}
.p2-skip{position:absolute;left:-999px;top:8px;z-index:20;padding:8px 12px;border:1px solid var(--accent);background:var(--surf);color:var(--ink)}
.p2-skip:focus{left:8px}
.p2-brand{display:none;font:600 13.5px/1.2 var(--f-mono);letter-spacing:.14em;color:var(--ink);text-decoration:none}
.p2-menu{position:fixed;left:0;right:0;bottom:0;z-index:10;background:var(--surf);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}
.p2-menu ul{list-style:none;margin:0;padding:0;display:flex}
.p2-menu li{flex:1 1 0;min-width:0}
.p2-mi-sec,.p2-mi.p2-mi-out{display:none}
.p2-mi{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:6px 2px;border-radius:10px;color:var(--mute);text-decoration:none;font:500 12px/1.2 var(--f-body);white-space:nowrap}
.p2-mi:hover{color:var(--ink)}
.p2-mi .p2-ico{width:22px;height:22px;flex:none}
.p2-mi-f{display:none}
.p2-mi[aria-current="page"],.p2-mi--on{color:var(--accent-ink)}
.p2-mi[aria-current="page"]::before{content:"";position:absolute;top:0;left:22%;right:22%;height:2px;border-radius:0 0 2px 2px;background:var(--accent)}
.p2-mi-n{position:absolute;top:4px;left:calc(50% + 6px);min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--crit);color:var(--on-crit);font:600 12px/18px var(--f-mono);text-align:center}
.p2-wrap{padding-bottom:calc(var(--nav-h) + 24px + env(safe-area-inset-bottom))}
.p2-chat{bottom:calc(var(--nav-h) + 8px + env(safe-area-inset-bottom))}
.p2-head--bare{justify-content:space-between}
.p2-head--bare .p2-brand{display:inline-block;font-size:18px}
.p2-head-t .p2-day{font:600 18px/1.25 var(--f-body)}
.p2-flash{margin:0 0 10px;padding:10px 12px;border-radius:10px;background:var(--ok-bg);color:var(--ok-ink);font-size:13.5px}
.p2-foot{margin-top:16px;font:400 12px/1.4 var(--f-mono);color:var(--mute);text-align:center}
.p2-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 10px}
.p2-links{list-style:none;margin:0;padding:0}
.p2-rowlink{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:4px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.p2-links li:last-child .p2-rowlink{border-bottom:0}
.p2-rowlink small{font-size:12px;color:var(--mute);text-align:right}
.p2-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
@media (min-width:900px){
.p2-app{--nav-h:0px;display:grid;grid-template-columns:212px minmax(0,1fr);align-items:start}
.p2-app--bare{display:block}
.p2-menu{position:sticky;top:0;bottom:auto;height:100vh;overflow:auto;display:flex;flex-direction:column;gap:6px;padding:14px 10px;border-top:0;border-right:1px solid var(--line)}
.p2-brand{display:block;padding:8px 12px 14px}
.p2-menu ul{flex-direction:column;gap:2px}
.p2-menu li{flex:none}
.p2-mi-sec{display:block}
.p2-mi-more{display:none}
.p2-mi{flex-direction:row;justify-content:flex-start;gap:10px;min-height:44px;padding:0 12px;font-size:13.5px;color:var(--ink)}
.p2-mi .p2-ico{width:20px;height:20px;color:var(--mute)}
.p2-mi-s{display:none}
.p2-mi-f{display:inline}
.p2-mi[aria-current="page"]{background:var(--accent-bg);color:var(--accent-ink)}
.p2-mi[aria-current="page"] .p2-ico{color:inherit}
.p2-mi-grp{padding:12px 12px 2px;font:600 10.5px/1.2 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.p2-mi-end{padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:6px}
.p2-mi[aria-current="page"]::before{display:none}
.p2-mi-n{position:static;margin-left:auto}
.p2-mi.p2-mi-out{display:flex;margin-top:auto;color:var(--mute)}
.p2-wrap{width:100%;padding-bottom:32px}
}

/* Warstwa zgodności */
.p2-legacy h1{margin:0 0 12px}
.p2-legacy h2:not(.p2-card-h){font:600 15px/1.3 var(--f-body);margin:18px 0 8px}
.p2-legacy h3{font:500 13.5px/1.3 var(--f-body);margin:0 0 6px}
.p2-legacy section{margin-bottom:16px}
.p2-legacy p:not(.p2-sub){margin:0 0 8px}
.p2-legacy label{display:block;font:400 12px/1.4 var(--f-mono);color:var(--mute);margin:8px 0 3px}
.p2-legacy input,.p2-legacy select,.p2-legacy textarea{width:100%;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:400 15px/1.3 var(--f-body)}
.p2-legacy input.sm{width:auto;flex:1;padding:7px 10px}
.p2-legacy input[type=checkbox]{width:24px;height:24px;min-height:0;padding:0;margin:0;flex:none;accent-color:var(--accent)}
.p2-legacy table{width:100%;border-collapse:collapse;font-size:13.5px}@media (max-width:640px){.p2-legacy table{display:block;overflow-x:auto;white-space:nowrap}}
.p2-legacy td,.p2-legacy th{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.p2-legacy th{font:500 10.5px/1.3 var(--f-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--mute)}
.p2-legacy code{padding:0 5px;border:1px solid var(--line);border-radius:6px;background:var(--surf2);font:400 12px/1.4 var(--f-mono);word-break:break-all}
.p2-legacy details summary{display:flex;align-items:center;min-height:44px;cursor:pointer;color:var(--accent-ink)}
.cnt{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:var(--info-bg);color:var(--ink);font:500 12px/22px var(--f-mono);vertical-align:middle}
.card{display:block;min-width:0;margin-bottom:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surf);color:inherit}
.card.narrow{max-width:420px;margin:24px auto}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.p2-legacy form .grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:560px){.grid2{grid-template-columns:1fr}}
.biz{border-left:4px solid var(--c)}
.bh{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.bs{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px;font:400 12px/1.4 var(--f-mono);color:var(--mute)}
.bs .warn{color:var(--warn-ink)}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex:none;margin-right:6px}
.tag{padding:0 5px;border:1px solid;border-radius:6px;font:500 12px/1.4 var(--f-mono)}
.bar{height:6px;border-radius:999px;background:var(--line);overflow:hidden}
.bar i{display:block;height:100%;border-radius:999px}
.th.ab{border-color:var(--warn)}
.next{margin-top:6px;font-size:13.5px;color:var(--ink)}
.next.big{padding:10px 12px;border-radius:10px;background:var(--surf2);font-size:15px}
.badge{display:inline-flex;align-items:center;margin-left:6px;padding:2px 8px;border-radius:999px;background:var(--info-bg);color:var(--ink);font:500 12px/1.4 var(--f-mono);vertical-align:middle}
.badge.red{background:var(--crit-bg);color:var(--crit-ink)}
.badge.orange{background:var(--warn-bg);color:var(--warn-ink)}
.badge.green{background:var(--ok-bg);color:var(--ok-ink)}
.badge.blue{background:var(--accent-bg);color:var(--accent-ink)}
ul.list,ul.alerts,ul.subs,ul.log{list-style:none;margin:0;padding:0}
ul.list li,ul.alerts li{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;margin-bottom:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surf)}
ul.alerts li.red{border-left:4px solid var(--crit)}
ul.alerts li.orange{border-left:4px solid var(--warn)}
ul.alerts li.grey{color:var(--mute)}
li.req .txt{flex:1 1 220px;min-width:0}
li.req .acts{flex:1 1 100%;display:flex;flex-direction:column;gap:6px}
ul.subs li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 4px;border-bottom:1px solid var(--line)}
ul.subs li.done span{color:var(--mute);text-decoration:line-through}
.p2-legacy ul.subs label{display:flex;gap:10px;align-items:flex-start;flex:1 1 240px;margin:0;cursor:pointer;font:400 15px/1.4 var(--f-body);color:var(--ink)}
ul.log li{padding:6px 0;border-bottom:1px dashed var(--line);font-size:13.5px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:8px 14px;border:1px solid var(--accent);border-radius:10px;background:var(--accent);color:var(--on-accent);font:500 13.5px/1.2 var(--f-body);cursor:pointer;text-decoration:none}
.btn.sm{padding:6px 12px}
.btn.ghost{background:var(--surf2);border-color:var(--line);color:var(--ink)}
.btn.ghost:hover,.chip:hover{border-color:var(--accent)}
.btn.danger{background:var(--crit);border-color:var(--crit);color:var(--on-crit)}
.btn.pri{box-shadow:0 0 0 2px var(--ink) inset}
.btn:disabled,.chip:disabled{opacity:.55;cursor:default}
form.inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
form.inline input{flex:1;min-width:160px}
.flash{margin-bottom:12px;padding:10px 12px;border-radius:10px;background:var(--ok-bg);color:var(--ok-ink);font-size:13.5px}
.flash.stop{background:var(--crit-bg);color:var(--crit-ink);font-weight:600}
pre.brief,.brief pre{margin:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surf2);white-space:pre-wrap;word-break:break-word;font:400 13.5px/1.5 var(--f-mono)}
.actions{display:flex;gap:8px;flex-wrap:wrap}
.mut{color:var(--mute)}
.small{font-size:12px}
.chat{display:flex;flex-direction:column;gap:8px;margin:12px 0;padding:4px;max-height:60vh;overflow:auto}
.msg{max-width:92%;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surf)}
.msg.user{align-self:flex-end;background:var(--accent-bg)}
.msg .who{margin-bottom:4px;font:400 12px/1.4 var(--f-mono);color:var(--mute)}
.msg .body{white-space:pre-wrap;word-break:break-word}
.sendbox{position:sticky;bottom:calc(var(--nav-h) + env(safe-area-inset-bottom));display:flex;gap:8px;align-items:flex-end;padding:8px 0;background:var(--bg)}
.sendbox textarea{flex:1}
form.cmd{margin-top:2px}
form.cmd input.sm{min-width:150px}
.chip{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surf2);color:var(--ink);font:500 13.5px/1.2 var(--f-body);cursor:pointer;text-decoration:none}
.chip.on{border-color:var(--accent);background:var(--accent-bg);color:var(--accent-ink)}
.b3{color:var(--accent-ink);font-weight:700}
li.req.sent{border-color:var(--accent)}
.sentnote{font:400 12px/1.4 var(--f-mono);color:var(--accent-ink)}
li.req.answered{opacity:.6}
.inreply{margin-top:6px;padding:6px 10px;border-left:3px solid var(--accent);border-radius:6px;background:var(--surf2);font-size:13.5px;white-space:pre-wrap;word-break:break-word}
.inreply a{margin-left:6px}
.inreply .badge{margin-right:2px}
.inreply form.inline{display:inline-flex;margin:6px 6px 0 0}
li.req.ack{border-color:var(--ok)}
/* T2.17 ściana decyzji jako kolejka: strefy, postęp, stan końca, „Na pewno?” */
.wall-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0}
.wall-tabs{margin:8px 0}
.wall-prog{margin:10px 0}
.wall-bar{height:10px;border-radius:999px;background:var(--surf2);border:1px solid var(--line);overflow:hidden}
.wall-bar i{display:block;height:100%;background:var(--ok);border-radius:999px;transition:width .3s}
.wall-pt{margin:6px 0 0;font:500 13.5px/1.3 var(--f-mono);color:var(--ink)}
.wall-z{margin-top:20px}
.wall-z h2,.wall-done>summary,.wall-later>summary,.wall-prio>summary{font:600 15px/1.3 var(--f-body)}
.wall-done,.wall-later,.wall-prio{margin-top:16px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surf)}
.wall-done>summary,.wall-later>summary,.wall-prio>summary{cursor:pointer;min-height:32px;display:flex;align-items:center;gap:8px}
.wall-ok{display:flex;flex-direction:column;gap:6px;align-items:flex-start;padding:16px;border:1px solid var(--ok);border-radius:12px;background:var(--ok-bg);color:var(--ok-ink)}
.wall-ok b{font:600 18px/1.2 var(--f-body)}
.wall-recheck{margin:0 0 6px;padding:8px 10px;border-left:4px solid var(--warn);border-radius:6px;background:var(--warn-bg);color:var(--warn-ink);font-size:13.5px}
.wall-live{min-height:20px;margin:4px 0;font:500 13.5px/1.4 var(--f-mono);color:var(--ok-ink)}
.wall-live--bad{color:var(--crit-ink)}
.wall-pfs{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}
.wall-pf{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--mute)}
li.req.wk{border-color:var(--accent)}
li.req.dn{opacity:.85}
