:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#213541;background:#f3f5f5;font-size:14px}*{box-sizing:border-box}body{margin:0;display:flex}aside{background:#102d32;color:#c3d6d6;width:244px;position:fixed;inset:0 auto 0 0;padding:34px 22px;display:flex;flex-direction:column}.brand{display:flex;gap:13px;align-items:center;font-size:20px;line-height:1.12;color:white}.brand>b{font-size:21px;border:1px solid #628a87;border-radius:10px;padding:14px 10px;color:#b9edce}.brand strong{font-weight:600}.tag{font-size:10px;letter-spacing:1.8px;margin:36px 0 18px;color:#769996}nav{display:grid;gap:8px}button{font:inherit;cursor:pointer;border:1px solid #d3dedd;background:white;color:#23494c;padding:11px 16px;border-radius:7px}button:disabled{opacity:.5;cursor:wait}nav button{background:transparent;border:0;text-align:left;color:#b5cccc;padding:13px 9px;font-size:13px}nav button.active{background:#24464a;color:#dcf9e7}footer{margin-top:auto;font-size:10px;letter-spacing:1px;color:#8aabaa}footer small{display:block;letter-spacing:0;font-size:11px;margin-top:9px}footer button{margin-top:20px;background:none;color:#abc4c3;border-color:#3e5b5d;font-size:12px}main{margin-left:244px;width:calc(100% - 244px);padding:0 40px 50px}header{height:82px;border-bottom:1px solid #dde4e4;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1.3px;color:#6b7d85}.pill{background:#e4eeea;color:#3b6856;padding:8px 12px;border-radius:30px;letter-spacing:0}h1{font-size:32px;letter-spacing:-1px;font-weight:600;margin:8px 0 12px}h2{font-size:19px;font-weight:600}p{line-height:1.65;color:#687d83}.eyebrow{font-size:10px;letter-spacing:2px;color:#3b827b;font-weight:700;margin-top:34px}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}.primary{background:#176d61;color:white;border-color:#176d61}.stats{display:flex;gap:16px;margin-bottom:28px}.stat{background:white;border:1px solid #dce5e3;padding:22px;border-radius:10px;flex:1}.stat span{font-size:11px;color:#718588}.stat b{display:block;font-size:30px;font-weight:600;margin-top:8px}.panel{background:white;border:1px solid #dce5e3;border-radius:10px;padding:23px;margin:18px 0}.toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.toolbar label{flex:1}label{display:block;font-size:12px;color:#536d72;margin:10px 0}input,select,textarea{font:inherit;border:1px solid #cedcda;border-radius:6px;padding:11px;background:white;color:#243d43;width:100%;margin-top:6px}input[type=checkbox]{width:auto;margin-right:7px}textarea{min-height:250px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:#798d91;background:#f7f9f9;padding:14px 12px}td{padding:15px 12px;border-bottom:1px solid #e7edeb;font-size:12px;vertical-align:top}td strong{font-size:13px}td select{min-width:190px}a{color:#176d61}small{color:#70858a}.badge{display:inline-block;border-radius:5px;background:#e7f2ed;color:#41795a;font-size:10px;padding:4px 7px}.warn{background:#fff4df;color:#926824}#message{position:sticky;top:8px;z-index:5}#message:not(:empty){padding:14px;background:#e0ede8;border:1px solid #bcd6ca;margin-top:12px;border-radius:6px}dialog{border:1px solid #cbdad6;border-radius:14px;max-width:1000px;width:90%;max-height:88vh;padding:30px;color:#213541}dialog::backdrop{background:#102d32ad}#auth{max-width:430px}#authform button{margin-top:20px;width:100%}.close{float:right}.empty{text-align:center;padding:55px 15px}.empty b{font-size:18px}.keybox{display:flex;gap:16px;flex-wrap:wrap}.keybox label{background:#f2f6f4;padding:7px 10px}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.muted{color:#718588}.preview{max-width:300px;word-break:break-word}.pager{display:flex;align-items:center;justify-content:space-between;padding:20px 0}@media(max-width:900px){aside{position:static;width:100%;padding:18px}body{display:block}aside footer,.tag{display:none}nav{display:flex;flex-wrap:wrap;margin-top:15px}main{margin:0;width:100%;padding:0 18px}.stats{flex-wrap:wrap}.stat{min-width:120px}.split{grid-template-columns:1fr}.heading{display:block}header{height:60px}}
