:root{--bg:#f6f7f9;--card:#fff;--ink:#1b1f24;--mut:#59636e;--line:#d8dde3;--acc:#1f5fbf;--acc-ink:#fff;
--ok:#1a7f37;--ok-bg:#e6f4ea;--warn:#8a5a00;--warn-bg:#fff4d6;--bad:#b3261e;--bad-bg:#fde8e6}
*{box-sizing:border-box}
html{font-size:16px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"PT Sans","Segoe UI",Arial,sans-serif;line-height:1.45}
a{color:var(--acc)}
:focus-visible{outline:3px solid #f5a623;outline-offset:2px}
header.top{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.top .in{max-width:1180px;margin:0 auto;padding:10px 16px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.brand{font-weight:700;font-size:1.15rem;margin-right:8px}
nav.main{display:flex;gap:4px;flex-wrap:wrap;flex:1}
nav.main a{padding:8px 12px;border-radius:8px;text-decoration:none;color:var(--ink);font-weight:600}
nav.main a.on{background:#e8f0fc;color:var(--acc)}
.user{color:var(--mut);font-size:.9rem}
main{max-width:1180px;margin:0 auto;padding:20px 16px 80px}
h1{font-size:1.6rem;margin:.2em 0 .6em}h2{font-size:1.2rem;margin:1.2em 0 .5em}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(330px,1fr))}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.sp{justify-content:space-between}
.mut{color:var(--mut)}.small{font-size:.9rem}.big{font-size:1.5rem;font-weight:700}
.btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:10px;border:1px solid var(--acc);background:var(--acc);color:var(--acc-ink);font:inherit;font-weight:700;text-decoration:none;cursor:pointer}
.btn.sec{background:#fff;color:var(--acc)}.btn.dis{background:#e5e8ec;border-color:#e5e8ec;color:#7a828b;cursor:not-allowed}
.btn.sm{min-height:36px;padding:0 12px;font-size:.92rem}
.badge{display:inline-block;padding:2px 10px;border-radius:99px;font-weight:700;font-size:.85rem}
.ok{background:var(--ok-bg);color:var(--ok)}.warn{background:var(--warn-bg);color:var(--warn)}.bad{background:var(--bad-bg);color:var(--bad)}.gray{background:#eceff2;color:#44505c}
.bar{height:10px;border-radius:6px;background:#e5e8ec;overflow:hidden}.bar i{display:block;height:100%;background:var(--ok)}
table{border-collapse:collapse;width:100%;background:#fff}
th,td{border-bottom:1px solid var(--line);padding:9px 10px;text-align:left;vertical-align:top}
th{background:#f0f3f6;font-size:.9rem;color:#33404c}
td.n,th.n{text-align:right;white-space:nowrap}
.tbl{border:1px solid var(--line);border-radius:12px;overflow:auto;background:#fff}
.tabs{display:flex;gap:4px;border-bottom:2px solid var(--line);margin:14px 0;overflow:auto}
.tabs a{padding:10px 16px;text-decoration:none;color:var(--mut);font-weight:700;border-bottom:3px solid transparent;margin-bottom:-2px;white-space:nowrap}
.tabs a.on{color:var(--acc);border-color:var(--acc)}
.alert{border-radius:10px;padding:12px 14px;margin:10px 0;border:1px solid}
.alert.bad{background:var(--bad-bg);border-color:#f0b4ae;color:#7d1a14}.alert.warn{background:var(--warn-bg);border-color:#ecd28b;color:#5e3c00}.alert.ok{background:var(--ok-bg);border-color:#a8d5b5;color:#12532a}
.steps{display:flex;gap:8px;margin:8px 0 18px;flex-wrap:wrap}
.steps span{padding:8px 14px;border-radius:99px;background:#eceff2;font-weight:700;color:#44505c}.steps .on{background:var(--acc);color:#fff}.steps .done{background:var(--ok-bg);color:var(--ok)}
label{font-weight:700;display:block;margin:12px 0 4px}
input[type=text],input[type=password],select{width:100%;min-height:46px;padding:0 12px;border:1px solid #8b96a1;border-radius:10px;font:inherit;background:#fff}
.drop{border:2px dashed #8b96a1;border-radius:12px;padding:22px;text-align:center;background:#fafbfc;color:var(--mut)}
.chk{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;margin:8px 0}
.chk input{width:22px;height:22px;margin-top:3px}
.login{max-width:400px;margin:8vh auto}
.fire{display:flex;gap:12px;flex-wrap:wrap}.fire .card{flex:1 1 220px;border-left:6px solid var(--bad)}
.bottom{display:none}
@media (max-width:720px){
 nav.main{display:none}.user{display:none}
 .bottom{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);z-index:6}
 .bottom a{flex:1;text-align:center;padding:10px 4px;text-decoration:none;color:var(--mut);font-weight:700;font-size:.8rem}.bottom a.on{color:var(--acc)}
 .grid{grid-template-columns:1fr}h1{font-size:1.35rem}
 table.resp thead{display:none}table.resp tr{display:block;border-bottom:1px solid var(--line);padding:8px 0}table.resp td{display:block;border:0;padding:2px 10px}
 table.resp td[data-l]::before{content:attr(data-l)": ";color:var(--mut);font-size:.85rem}
 .desk{display:none}
}

select.st{min-height:40px;max-width:170px;font-weight:700;color:var(--acc)}
