*{box-sizing:border-box}
body{margin:0;background:#F4F5F7;font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;color:#16181D;font-size:14px}
a{color:#0F6E66}a:hover{color:#0B544E}
h1,h2,.brand{font-family:'Manrope','Inter',sans-serif}
h1{margin:0;font-size:28px;font-weight:800}
h2{margin:0;font-size:18px}
.layout{display:flex;flex-wrap:wrap;min-height:100vh}
aside{flex:1 1 230px;max-width:260px;background:#14171C;padding:20px 12px;display:flex;flex-direction:column;gap:18px}
.brand{padding:4px 14px;font-weight:800;font-size:19px;color:#fff}
.nav{display:flex;flex-direction:column;gap:2px}
.nav .grp{padding:14px 14px 6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8C94A1}
.nav a{display:block;padding:9px 14px;border-radius:8px;color:#C9CED6;text-decoration:none}
.nav a:hover{background:#232830;color:#fff}
.nav a.on{background:#2B313A;color:#fff;font-weight:600}
.nav a.soon{color:#7A818D}
.badge{margin-left:6px;background:#B45309;color:#fff;border-radius:10px;padding:1px 8px;font-size:12px}
.who{margin-top:auto;padding:10px 14px;font-size:12px;color:#8C94A1;line-height:1.5}
.who a{color:#C9CED6}
main{flex:999 1 560px;min-width:0;padding:28px 32px 40px;display:flex;flex-direction:column;gap:20px}
header.top{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;justify-content:space-between}
.sub{font-size:14px;color:#5B6270}
.card{background:#fff;border:1px solid #E3E6EB;border-radius:12px;padding:20px}
.card.tight{padding:8px 8px 12px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.row{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}
.chip{border-radius:20px;padding:4px 12px;font-size:13px;font-weight:600;display:inline-block}
.chip.warn{background:#FFF4E5;color:#8A4108;border:1px solid #F3D3A8}
.chip.ok{background:#E8F5EC;color:#155D27;border:1px solid #B7DFC2}
.check{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid #E3E6EB;border-radius:12px;padding:14px 16px}
.check .mk{font-weight:800}
.check .mk.ok{color:#1E7B34}.check .mk.bad{color:#B45309}
.check small{display:block;color:#5B6270;font-size:12px;margin-top:2px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;background:#0F6E66;color:#fff;border-radius:10px;min-height:42px;padding:0 16px;font:600 14px Inter,sans-serif;text-decoration:none;cursor:pointer}
.btn:hover{background:#0B544E;color:#fff}
.btn.out{background:#fff;color:#0F6E66;border:1px solid #0F6E66}
.btn.out:hover{background:#EEF6F5}
.btn.gray{background:#fff;color:#16181D;border:1px solid #C9CED6}
.btn.small{min-height:34px;padding:0 10px;font-size:13px}
.btn:disabled{background:#C9CED6;color:#3D434D;cursor:not-allowed}
.t{width:100%;border-collapse:collapse;font-size:13px}
.t th{text-align:right;font-weight:600;color:#5B6270;padding:9px 10px;border-bottom:1px solid #E3E6EB;white-space:nowrap}
.t td{text-align:right;padding:8px 10px;border-bottom:1px solid #F0F2F5;font-variant-numeric:tabular-nums}
.t th:first-child,.t td:first-child{text-align:left}
.t td.l,.t th.l{text-align:left}
.t tr.sub td{font-weight:700;background:#F8F9FA}
.t tr.res td{font-weight:800;background:#EEF6F5}
.t tr.line td:first-child{padding-left:22px}
.t tr.line.has{cursor:pointer}
.t tr.line.has td:first-child::before{content:"▸ ";color:#5B6270}
.t tr.line.open td:first-child::before{content:"▾ "}
.t tr.det td{background:#FAFBFC;color:#3D434D;font-size:12px}
.t tr.det td:first-child{padding-left:40px}
.t tr.det.dec td{background:#FFF8EC}
.t tr.warn td{background:#FFF8EC;color:#8A4108;font-weight:600}
.scroll{overflow-x:auto}
.issue{background:#fff;border:1px solid #F3D3A8;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px}
.issue .hd{display:flex;justify-content:space-between;gap:10px;font-weight:700}
.issue p{margin:0;font-size:13px;color:#5B6270;line-height:1.45}
label{font-size:12px;color:#5B6270;display:flex;flex-direction:column;gap:4px}
input,select{font:14px Inter,sans-serif;border:1px solid #C9CED6;border-radius:8px;padding:8px 10px;min-height:40px;background:#fff;color:#16181D;width:100%}
.split{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:8px}
.flash{border-radius:10px;padding:12px 14px;font-size:14px}
.flash.ok{background:#E8F5EC;color:#155D27}
.flash.err{background:#FDECEA;color:#8F1D13}
.drop{background:#fff;border:2px dashed #9FCBC6;border-radius:12px;padding:24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.muted{color:#5B6270;font-size:12px}
.login{max-width:380px;margin:12vh auto;background:#fff;border:1px solid #E3E6EB;border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:14px}
@media (max-width:700px){main{padding:20px 16px}aside{max-width:none}}
