:root{font-family:"Segoe UI",Arial,sans-serif;color:#f4f7fd;background:#080d15;--bg:#080d15;--surface:#151f31;--surface2:#1c2940;--line:#2b3a53;--blue:#219cf0;--muted:#8da3c4;--good:#48d597;--bad:#ff707c}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg)}button,input,select{font:inherit}.hidden{display:none!important}.login-screen{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#17243a,#080d15 55%)}.login-card{width:430px;background:#162136;border:1px solid #31425e;border-radius:18px;padding:38px;box-shadow:0 24px 80px #0008;display:flex;flex-direction:column;gap:10px}.brand-mark{width:54px;height:54px;border-radius:14px;background:var(--blue);display:grid;place-items:center;font-size:21px;font-weight:900}.login-card h1{margin:10px 0 0;font-size:30px}.login-card p,.panel p,.modal p{color:var(--muted);margin:0 0 16px}.login-card label,.form-grid label{font-size:13px;color:#a9b9d2;font-weight:600;display:flex;flex-direction:column;gap:7px}input,select{background:#202c42;color:#fff;border:1px solid #354965;border-radius:9px;padding:12px 13px;outline:none}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #219cf022}button{border:0;border-radius:9px;padding:11px 16px;color:#fff;font-weight:700;cursor:pointer;background:#263750}.primary{background:var(--blue)}.secondary{background:#223049;border:1px solid #34455f}.full{width:100%;margin-top:12px}.error-text,.bad{color:var(--bad)!important}.good{color:var(--good)!important}.app{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#101827;border-right:1px solid #26354c;padding:22px 14px;display:flex;flex-direction:column}.logo{display:flex;gap:12px;align-items:center;padding:0 8px 25px}.logo>b{background:var(--blue);border-radius:12px;padding:12px;font-size:18px}.logo span{display:flex;flex-direction:column}.logo small{color:var(--muted);font-size:12px}.sidebar nav{display:flex;flex-direction:column;gap:6px}.nav-item{background:transparent;color:#9db0cc;text-align:left;font-weight:600}.nav-item.active,.nav-item:hover{background:#203a5d;color:#fff}.nav-item span{margin-left:10px}.sidebar-footer{margin-top:auto;border-top:1px solid var(--line);padding:18px 8px 0;display:flex;flex-direction:column;gap:10px}.sidebar-footer span{font-size:13px}.sidebar-footer button{background:#202c42}.content{grid-column:2;padding:28px 34px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.topbar h1{font-size:30px;margin:0}.topbar p{margin:5px 0;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:9px}.online-dot{color:var(--good);font-size:13px;margin-right:8px}.cards{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:15px}.cards article,.panel{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:20px}.cards article span{color:#a9b8ce}.cards article strong{font-size:29px;display:block;margin:10px 0 4px}.cards article small{color:var(--muted)}.panel{margin-top:18px}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.panel-heading h2{margin:0 0 5px}.link-button{background:transparent;color:#6fc5ff}.toolbar{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-bottom:14px}.table-panel{padding:0;overflow:auto}table{width:100%;border-collapse:collapse;min-width:950px}th{background:#1e4168;color:#fff;padding:13px;text-align:left;font-size:13px}td{padding:14px 13px;border-bottom:1px solid var(--line);vertical-align:middle}td small{display:block;color:var(--muted);margin-top:5px;font-size:12px}.badge{display:inline-block;padding:5px 9px;border-radius:99px;background:#263d5b;color:#b5dfff;font-size:12px}.badge.active{background:#163f37;color:#67e2ae}.badge.overdue,.badge.cancelled{background:#48242c;color:#ff9aa3}.badge.suspended{background:#493b1c;color:#ffd27b}.row-action{padding:8px 11px;background:#25486e}.attention-list{display:flex;flex-direction:column}.attention-list>button{display:flex;justify-content:space-between;text-align:left;align-items:center;background:#1b2940;border-bottom:1px solid var(--line);border-radius:0}.attention-list>button:first-child{border-radius:9px 9px 0 0}.attention-list>button:last-child{border-radius:0 0 9px 9px;border-bottom:0}.attention-list span,.attention-list small{display:block}.attention-list small{color:var(--muted);margin-top:4px}.attention-list strong{color:#6fc5ff}.empty-state{padding:28px;color:var(--muted);text-align:center}.external{color:#6fc5ff;text-decoration:none}.audit-list>div{display:flex;gap:12px;border-bottom:1px solid var(--line);padding:11px}.audit-list p,.audit-list small{display:block;margin:0}.audit-list small{color:var(--muted);margin-top:4px}.audit-icon{width:28px;height:28px;border-radius:50%;background:#174332;color:var(--good);display:grid;place-items:center}.modal{position:fixed;inset:0;background:#03070dcc;z-index:10;display:grid;place-items:center;padding:20px}.modal-card{width:min(620px,100%);max-height:92vh;overflow:auto;background:#172238;border:1px solid #344760;border-radius:16px;padding:24px;box-shadow:0 30px 100px #000}.modal-card.wide{width:min(850px,100%)}.modal-header{display:flex;justify-content:space-between}.modal-header h2{margin:0}.close{font-size:25px;background:transparent;padding:0 8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.input-action{display:grid;grid-template-columns:1fr auto}.input-action input{border-radius:9px 0 0 9px}.input-action button{border-radius:0 9px 9px 0}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:22px}.modal-actions span{margin-right:auto;color:var(--bad)}.management-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.warning-button{background:#6a511c}.danger-button{background:#762c38}.security-note{font-size:13px;margin-top:18px!important}.toast{position:fixed;right:25px;bottom:25px;background:#1d7255;border:1px solid #42d398;padding:14px 20px;border-radius:10px;box-shadow:0 10px 40px #000;z-index:20}.toast-error{background:#742d38;border-color:#ff7883}@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.topbar{align-items:flex-start}.top-actions{flex-wrap:wrap;justify-content:flex-end}}@media(max-width:760px){.app{grid-template-columns:78px 1fr}.sidebar{width:78px}.logo span,.nav-item span,.sidebar-footer span{display:none}.content{grid-column:2;padding:20px 14px}.cards{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.online-dot{display:none}}
