:root{--navy:#0B1F33;--navy2:#153754;--blue:#0F4C81;--bg:#F3F6F9;--card:#fff;--text:#17324D;--muted:#687B8D;--line:#D9E3EA;--green:#1F8A5B;--yellow:#B7781C;--orange:#C66A17;--red:#C23B3B;--purple:#6A4FB3;--softBlue:#EAF4FB;--softGreen:#E9F7F0;--softYellow:#FFF4D6;--softRed:#FCEBEC;--shadow:0 4px 16px rgba(11,31,51,.06)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}.hidden{display:none!important}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#071827,#123a59)}.login-card{width:min(460px,100%);background:#fff;border-radius:18px;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.25)}.logo{font-weight:900;color:var(--blue);font-size:17px;letter-spacing:.02em}.login h1{margin:6px 0 0;font-size:30px}.login p{color:var(--muted);line-height:1.45}.field{margin:11px 0}.field.full{grid-column:1/-1}.field label{display:block;font-size:12px;font-weight:800;margin-bottom:6px;color:#476377}.field input,.field select,.field textarea{width:100%;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text)}.field textarea{min-height:88px;resize:vertical}.wide{width:100%}.demo{margin-top:14px;background:var(--softBlue);border:1px solid #C8DDEA;border-radius:10px;padding:12px;font-size:12px;line-height:1.55}.app{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--navy);color:#fff;padding:18px 14px;overflow:auto}.brand{font-size:23px;font-weight:900;padding:4px 10px}.brand small{display:block;font-size:10px;font-weight:500;color:#AEC2D3;margin-top:4px}.userbox{margin:16px 8px;padding:11px;background:rgba(255,255,255,.07);border-radius:12px;font-size:12px}.userbox b,.userbox span,.userbox small{display:block}.userbox span,.userbox small{color:#BBD0DF;margin-top:3px}.nav{display:grid;gap:4px;margin-top:8px}.nav-group{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#7690A5;padding:13px 12px 4px}.nav button{border:0;background:transparent;color:#D7E5F0;text-align:left;padding:10px 12px;border-radius:10px;cursor:pointer}.nav button:hover,.nav button.active{background:var(--navy2);color:#fff}.count{float:right;background:rgba(255,255,255,.15);border-radius:99px;padding:1px 6px}.content{padding:24px 28px 50px;min-width:0}.page{display:none}.page.active{display:block}.topbar{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:18px}.title h1{margin:0;font-size:28px}.title p{margin:5px 0 0;color:var(--muted);font-size:14px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.topbar>.actions{margin-top:0}.btn{border:0;border-radius:9px;background:var(--blue);color:#fff;padding:9px 12px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-block}.btn.secondary{background:#EDF3F7;color:var(--text)}.btn.danger{background:var(--red)}.btn.small{padding:6px 9px;font-size:12px}.btn:disabled{opacity:.5;cursor:not-allowed}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px;box-shadow:var(--shadow);margin-bottom:14px}.card h3{margin:0 0 10px}.kpi .label{font-size:12px;color:var(--muted);margin-bottom:6px}.kpi .value{font-size:24px;font-weight:900}.kpi .sub{font-size:12px;color:var(--muted);margin-top:4px}.good{color:var(--green)}.warn{color:var(--yellow)}.bad{color:var(--red)}.purple{color:var(--purple)}.section{margin-top:18px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:9px}.section-head h2{margin:0;font-size:18px}.section-head span{font-size:12px;color:var(--muted)}table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}th,td{padding:11px 10px;border-bottom:1px solid var(--line);font-size:13px;text-align:left;vertical-align:top}th{background:#EFF5F9;color:#38556C;font-size:11px;text-transform:uppercase;letter-spacing:.02em}tr:last-child td{border-bottom:0}tbody tr.clickable{cursor:pointer}tbody tr.clickable:hover{background:#F8FBFD}.badge{display:inline-block;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:900;white-space:nowrap}.b-green{background:var(--softGreen);color:var(--green)}.b-yellow{background:var(--softYellow);color:var(--yellow)}.b-orange{background:#FFF0E1;color:var(--orange)}.b-red{background:var(--softRed);color:var(--red)}.b-blue{background:var(--softBlue);color:var(--blue)}.b-purple{background:#F0ECFF;color:var(--purple)}.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.tabs button{border:1px solid var(--line);background:#fff;color:var(--text);padding:8px 10px;border-radius:9px;cursor:pointer}.tabs button.active{background:var(--blue);color:#fff;border-color:var(--blue)}.panel{display:none}.panel.active{display:block}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.notice{padding:12px 13px;border-radius:10px;background:var(--softYellow);border:1px solid #F0D78B;font-size:13px;line-height:1.45}.notice.info{background:var(--softBlue);border-color:#C8DDEA}.notice.error{background:var(--softRed);border-color:#E6B8BC}.steps{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.step{padding:7px 9px;border-radius:9px;background:#EDF3F7;font-size:12px;font-weight:800;color:#5B7183}.step.active{background:var(--blue);color:white}.toast{position:fixed;right:18px;bottom:18px;background:var(--navy);color:#fff;padding:12px 15px;border-radius:10px;box-shadow:var(--shadow);z-index:100;font-size:13px}.notification{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.notification:last-child{border:0}.notification.unread b:before{content:'• ';color:var(--blue);font-size:18px}.muted{color:var(--muted);font-size:12px}.status-row{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.status-row:last-child{border:0}.drawer{position:fixed;right:0;top:0;height:100vh;width:min(540px,100%);background:#fff;z-index:90;box-shadow:-10px 0 35px rgba(11,31,51,.18);padding:22px;overflow:auto}.drawer-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}.modal{position:fixed;inset:0;background:rgba(5,18,30,.55);z-index:120;display:grid;place-items:center;padding:18px}.modal-card{position:relative;background:#fff;border-radius:16px;padding:20px;max-width:760px;width:100%;max-height:90vh;overflow:auto;box-shadow:0 20px 70px rgba(0,0,0,.3)}.modal-close{position:absolute;right:10px;top:8px;border:0;background:transparent;font-size:28px;cursor:pointer;color:var(--muted)}.preview{margin-top:8px;border:1px dashed var(--line);padding:10px;border-radius:10px}.preview img{max-width:260px;max-height:180px;border-radius:8px}.report-card p{color:var(--muted);min-height:42px}.photo-thumb{width:64px;height:48px;object-fit:cover;border-radius:7px;border:1px solid var(--line)}.inline-form{display:flex;gap:8px;flex-wrap:wrap;align-items:end}.inline-form .field{min-width:150px;flex:1}.system-ok{color:var(--green);font-weight:800}.system-bad{color:var(--red);font-weight:800}
@media(max-width:1050px){.app{grid-template-columns:220px 1fr}.grid4{grid-template-columns:1fr 1fr}}@media(max-width:760px){.app{display:block}.sidebar{position:static;height:auto}.content{padding:16px 12px 50px}.grid4,.grid3,.grid2,.formgrid{grid-template-columns:1fr}.title h1{font-size:23px}table{display:block;overflow:auto;white-space:nowrap}.drawer{width:100%}.topbar{flex-direction:column}.topbar>.actions{width:100%}}
