:root{--bg:#f5f7fa;--card:#fff;--fg:#1c2430;--muted:#66758a;--line:#dde3ea;--pri:#2457c5;--pri-fg:#fff;--ok:#1b8a4b;--warn:#b7791f;--bad:#c0392b;--soft:#eef3fc}@media (prefers-color-scheme:dark){:root{--bg:#0f1318;--card:#171c23;--fg:#e5e9ef;--muted:#93a0b2;--line:#2a323d;--pri:#5b8cf0;--pri-fg:#0b1220;--ok:#4cc27f;--warn:#e0a94a;--bad:#ef6a5b;--soft:#1b2533}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);margin:0;font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--pri);text-decoration:none}a:hover{text-decoration:underline}.shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}@media (width<=860px){.shell{grid-template-columns:1fr}.side{flex-wrap:wrap;align-items:center;flex-direction:row!important;height:auto!important;position:static!important}}.side{background:var(--card);border-right:1px solid var(--line);flex-direction:column;gap:4px;height:100vh;padding:14px;display:flex;position:sticky;top:0}.side h1{margin:0 0 2px;font-size:16px}.side .org{color:var(--muted);margin-bottom:12px;font-size:12px}.side a{color:var(--fg);border-radius:6px;padding:7px 10px}.side a.active{background:var(--soft);color:var(--pri);font-weight:600}.side a:hover{background:var(--soft);text-decoration:none}.side .who{color:var(--muted);margin-top:auto;font-size:12px}.main{width:100%;max-width:1400px;padding:20px 24px}h2{margin:0 0 14px;font-size:22px}h3{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 10px;font-size:13px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;margin-bottom:14px;padding:14px}.grid2{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:16px;display:grid}@media (width<=1100px){.grid2{grid-template-columns:1fr}}button,select,input,textarea{font:inherit;color:var(--fg)}input,select,textarea{background:var(--card);border:1px solid var(--line);border-radius:6px;width:100%;padding:6px 8px}textarea{resize:vertical}button{background:var(--pri);color:var(--pri-fg);cursor:pointer;border:0;border-radius:6px;padding:7px 14px;font-weight:600}button.sec{color:var(--fg);border:1px solid var(--line);background:0 0}button.ok{background:var(--ok);color:#fff}button.bad{background:var(--bad);color:#fff}button:disabled{opacity:.45;cursor:not-allowed}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sp{flex:1}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:7px 8px;font-size:14px}th{color:var(--muted);text-transform:uppercase;font-size:12px}tr.click{cursor:pointer}tr.click:hover{background:var(--soft)}.badge{background:var(--soft);border:1px solid var(--line);white-space:nowrap;border-radius:12px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.b-DRAFT,.b-NEW,.b-NO_TEMPLATE{color:var(--warn)}.b-PENDING_APPROVAL{color:var(--pri)}.b-APPROVED,.b-SENT,.b-PROCESSED{color:var(--ok)}.b-REJECTED,.b-FAILED{color:var(--bad)}.b-NOT_A_REQUEST{color:var(--muted)}.pill{white-space:nowrap;border-radius:10px;padding:1px 8px;font-size:11px}.pill.hi{color:var(--ok);background:#1b8a4b26}.pill.mid{color:var(--warn);background:#b7791f2e}.pill.lo{color:var(--bad);background:#c0392b26}.note{color:var(--muted);font-size:12px}.err{color:var(--bad)}.okt{color:var(--ok)}.warnt{color:var(--warn)}.email{white-space:pre-wrap;background:var(--soft);border-radius:8px;max-height:300px;padding:12px;font-size:14px;overflow:auto}textarea.draft{min-height:460px;font-family:Georgia,Times New Roman,serif;font-size:14.5px;line-height:1.55}input.miss{border-color:var(--bad);background:#c0392b14}.checks{margin:0;padding:0;list-style:none}.checks li{margin:3px 0}.timeline div{border-bottom:1px dashed var(--line);padding:4px 0;font-size:13px}.toast{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--pri);z-index:50;border-radius:8px;max-width:420px;padding:10px 14px;position:fixed;bottom:16px;right:16px;box-shadow:0 4px 18px #0000002e}.toast.error{border-left-color:var(--bad)}.auth{max-width:420px;margin:8vh auto;padding:0 16px}.field{margin-bottom:10px}.field label{color:var(--muted);margin-bottom:3px;font-size:12px;display:block}.letter{color:#000;white-space:pre-wrap;border:1px solid var(--line);background:#fff;max-width:800px;margin:20px auto;padding:48px 56px;font:14px/1.6 Georgia,Times New Roman,serif}@media print{.noprint{display:none!important}.letter{border:0;max-width:none;margin:0;padding:0}body{background:#fff}}
