:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#172333;background:#f3f6fa}*{box-sizing:border-box}body{margin:0}header{background:#101d34;color:white;padding:16px 24px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}header strong{font-size:1.2rem}nav{display:flex;gap:12px;flex:1;flex-wrap:wrap}nav a{color:#dce7ff;text-decoration:none;font-size:.88rem}nav a:hover{text-decoration:underline}main{max-width:1400px;margin:30px auto;padding:0 24px}h1{font-size:1.8rem}.cards{display:flex;flex-wrap:wrap;gap:14px}.card,section,details,.auth{background:white;border:1px solid #dce3ed;border-radius:12px;padding:20px;box-shadow:0 2px 6px #1524380a}.card{min-width:175px;text-decoration:none;color:inherit}.card b{font-size:2rem;display:block}.card span{color:#506076}.columns{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}label{display:flex;flex-direction:column;gap:6px;font-size:.88rem;color:#42516a;font-weight:600}input,textarea{font:inherit;padding:10px;border:1px solid #b8c5d5;border-radius:7px;min-width:0}input[type=checkbox]{width:22px;height:22px}textarea{min-height:90px}button,.button{font:inherit;background:#2257b7;color:white;border:0;border-radius:7px;padding:10px 16px;cursor:pointer;text-decoration:none;display:inline-block}.secondary{background:#e7edf6;color:#1e385b}.danger{background:#ae3040}.auth{max-width:420px;margin:10vh auto}.auth form{display:grid;gap:16px}.entry{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:18px}.entry button{align-self:end}details{margin:20px 0}summary{cursor:pointer;font-weight:700}.toolbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.scroll{overflow:auto;background:white;border-radius:10px;border:1px solid #dce3ed}table{border-collapse:collapse;width:100%;font-size:.87rem}td,th{text-align:left;border-bottom:1px solid #e8edf4;padding:10px;max-width:250px;overflow-wrap:anywhere}th{background:#eaf0f8;position:sticky;top:0}.actions{white-space:nowrap}.actions form{display:inline;margin-left:8px}.actions button{padding:5px 7px}.notice{background:#def4e4;padding:14px;border-radius:8px}.error{color:#a12}@media(max-width:800px){.columns{grid-template-columns:1fr}header{display:block}nav{margin:15px 0}}
