:root{--navy:#061d38;--blue:#1557d6;--line:#dbe3ef;--text:#13223a;--muted:#667085}
*{box-sizing:border-box}body{margin:0;font-family:"Segoe UI",Arial,sans-serif;background:linear-gradient(180deg,#fff 0,#f6f8fc 42%,#eef3f9 100%);color:var(--text)}
.app-shell{display:flex;min-height:100vh}.sidebar{width:250px;background:linear-gradient(180deg,#04152a,#08294d);color:white;padding:22px 0;position:fixed;top:0;bottom:0;left:0;box-shadow:8px 0 24px rgba(4,21,42,.18)}
.brand-mini{font-weight:800;letter-spacing:.5px;padding:0 22px 24px;font-size:17px}.side-nav{display:flex;flex-direction:column;gap:6px}.side-nav a{color:#eef6ff;text-decoration:none;padding:14px 22px;font-weight:650;border-left:4px solid transparent}.side-nav a:hover{background:rgba(255,255,255,.08);border-left-color:#6aa3ff}
.content{margin-left:250px;width:calc(100% - 250px);padding:20px 28px 0}.hero{text-align:center;padding:2px 0 14px}.logo{width:260px;max-width:70%;height:auto;display:block;margin:0 auto -8px;border-radius:50%}
.title-line{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:4px}.title-line span{width:120px;height:3px;background:#0b2b55;position:relative}.title-line span:after{content:"";width:8px;height:8px;background:#0b2b55;border-radius:50%;position:absolute;top:-2.5px;right:-3px}.title-line span:first-child:after{left:-3px;right:auto}
h1{margin:0;color:#0c2f62;font-size:52px;letter-spacing:2px;line-height:1}.hero p{margin:6px 0 0;font-size:22px;font-weight:700;color:#1d355d}
.panel,.tabs-panel{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 22px rgba(29,53,93,.08);margin:16px 0;overflow:hidden}.panel{padding:18px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.panel-head.slim{margin:8px 0 12px}h2,h3{color:#0a2b5b;margin:0}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.stat-card{background:white;border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:0 8px 22px rgba(29,53,93,.07)}.stat-card span{display:block;color:var(--muted);font-weight:650;margin-bottom:6px}.stat-card strong{font-size:27px;color:#0a2b5b}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #cbd5e1;background:#fff;color:#12213a;border-radius:8px;padding:10px 14px;font-weight:750;text-decoration:none;cursor:pointer;font-family:inherit}.btn.primary{background:linear-gradient(180deg,#1965ec,#0f51c7);border-color:#0f51c7;color:white;box-shadow:0 5px 13px rgba(21,87,214,.25)}.btn.danger{color:white;background:#c0392b;border-color:#c0392b;padding:7px 10px}.link{color:#1557d6;font-weight:750;text-decoration:none}
.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.form-grid label,.line-form label{font-weight:750;color:#26364f;font-size:14px}.full{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid #cfd8e6;border-radius:8px;padding:11px 12px;margin-top:8px;font:inherit;background:#fff}textarea{min-height:80px;resize:vertical}.actions{display:flex;align-items:center;gap:10px}
.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}th,td{padding:12px 13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{background:#f2f6fb;color:#162844;font-size:14px}tr:last-child td{border-bottom:0}tr.warning td{background:#fff8e6}tr.danger td{background:#ffeceb}.total-row td{background:#eef5ff;color:#092b60;font-weight:800}.empty{text-align:center;color:var(--muted);padding:38px!important}
.flash{background:#e8f2ff;border:1px solid #b7d4ff;border-left:6px solid #1557d6;padding:10px 14px;border-radius:10px;margin:10px 0 16px;font-weight:650}.flash p{margin:4px 0}.tabs{display:flex;gap:0;border-bottom:1px solid var(--line);background:#fafcff}.tabs a{padding:15px 22px;color:#172846;text-decoration:none;font-weight:800;border-right:1px solid var(--line)}.tabs a.active{color:#1557d6;border-bottom:3px solid #1557d6;background:white}.tab-box{padding:18px}.muted-panel{background:#f8fbff;color:#344054}
.line-form{display:grid;grid-template-columns:1fr 1fr 1.2fr .8fr .8fr 1fr 1fr 1fr auto;gap:12px;align-items:end;margin-bottom:16px;background:#f7faff;border:1px solid var(--line);padding:14px;border-radius:10px}.badge{background:#eef5ff;color:#0a2b5b;border:1px solid #cfe0ff;border-radius:999px;padding:7px 12px;font-weight:800}.row-actions{display:flex;align-items:center;gap:10px}.row-actions form{margin:0}footer{text-align:center;color:#344054;font-weight:650;padding:20px 0 26px}
@media(max-width:1300px){.line-form{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1100px){.sidebar{position:relative;width:100%;min-height:auto;padding:14px 0}.app-shell{display:block}.content{margin-left:0;width:100%;padding:16px}.side-nav{flex-direction:row;overflow-x:auto;padding:0 10px}.side-nav a{white-space:nowrap;border-left:0;border-bottom:3px solid transparent}h1{font-size:38px}.hero p{font-size:18px}.cards{grid-template-columns:1fr}.form-grid,.line-form{grid-template-columns:1fr}.title-line span{display:none}}
