:root{--bg:#071015;--panel:#101c22;--panel2:#17272f;--line:#29424d;--text:#e7f0f3;--muted:#89a1ab;--accent:#d2a647;--blue:#5ba6c9;--danger:#c95d5d}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 0,#17313b,#050b0e 55%);color:var(--text);font:14px Inter,Segoe UI,sans-serif;min-height:100vh}button,input,select,textarea{font:inherit}.login{width:min(430px,92vw);margin:12vh auto;background:#0d171ce8;border:1px solid var(--line);border-radius:8px;padding:34px;box-shadow:0 30px 80px #0009}.seal{width:76px;height:76px;border:2px solid var(--accent);border-radius:50%;display:grid;place-items:center;margin:auto;color:var(--accent);font-weight:800;letter-spacing:2px}.login h1{text-align:center;letter-spacing:3px}.field{display:grid;gap:6px;margin:14px 0}.field span,small{color:var(--muted)}input,select,textarea{width:100%;background:#081116;color:var(--text);border:1px solid var(--line);border-radius:4px;padding:11px}button{border:1px solid var(--line);background:var(--panel2);color:var(--text);padding:10px 14px;border-radius:4px;cursor:pointer}button:hover{border-color:var(--accent)}button.primary{background:var(--accent);color:#17130a;border-color:var(--accent);font-weight:700}button.danger{color:#ffb1b1;border-color:#754040}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.side{background:#081116ee;border-right:1px solid var(--line);padding:20px;display:flex;flex-direction:column}.brand{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}.brand b{font-size:20px;letter-spacing:2px}.brand span{display:block;color:var(--accent);margin-top:5px}.nav{display:grid;gap:7px}.nav button{text-align:left;background:transparent}.nav button.active{background:var(--panel2);border-color:var(--accent)}.identity{margin-top:auto;border-top:1px solid var(--line);padding-top:16px}.main{padding:28px;overflow:auto}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.top h1{margin:0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.card,.panel{background:#0e191fdd;border:1px solid var(--line);border-radius:6px;padding:18px}.card strong{font-size:28px;color:var(--accent);display:block}.toolbar{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}.toolbar input{max-width:420px}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;border-bottom:1px solid #20343d;padding:12px}.table tr[data-id]{cursor:pointer}.table tr[data-id]:hover{background:#16262d}.tag{display:inline-block;padding:3px 8px;border-radius:20px;background:#1a303a;color:#9ed7ef;font-size:12px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.detail{background:#081116;border:1px solid var(--line);padding:12px}.detail b{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;margin-bottom:5px}.profile{width:min(100%,420px);border:1px solid var(--line);margin:14px 0}.modal-bg{position:fixed;inset:0;background:#000b;display:grid;place-items:center;padding:20px;z-index:10}.modal{background:#101c22;border:1px solid var(--line);width:min(780px,96vw);max-height:92vh;overflow:auto;padding:22px;border-radius:7px}.modal-head{display:flex;justify-content:space-between}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wide{grid-column:1/-1}.match{padding:10px;border-left:3px solid var(--accent);background:#081116;margin:8px 0}.notice{color:#ffd27a}.error{color:#ff9a9a}@media(max-width:760px){.shell{grid-template-columns:1fr}.side{position:relative}.form-grid{grid-template-columns:1fr}.main{padding:16px}}@media print{.side,.top,.toolbar,button{display:none!important}.shell{display:block}.main{padding:0}.panel{border:0}.print-letter{display:block!important}}
.login-logo{display:block;width:118px;height:118px;object-fit:contain;margin:0 auto 12px;filter:drop-shadow(0 10px 18px #0008)}.brand-title{display:flex;align-items:center;gap:10px}.brand-title img{width:38px;height:38px;object-fit:contain}
.boot{width:min(430px,92vw);margin:12vh auto;text-align:center;background:#0d171ce8;border:1px solid var(--line);border-radius:8px;padding:34px;box-shadow:0 30px 80px #0009}.boot img{width:110px;height:110px;object-fit:contain}.boot h1{letter-spacing:3px}.boot p{color:var(--muted);line-height:1.5}
