:root{--navy:#0b2545;--teal:#006d77;--turq:#14b8a6;--gold:#d4af37;--paper:#f4f6f8;--line:#dce3e7;--text:#2e3a46;--muted:#64717d}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--text);font:15px/1.5 Inter,Segoe UI,Arial,sans-serif}a{color:var(--teal)}.app{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.side{background:var(--navy);color:#fff;padding:24px 18px}.brand{display:flex;align-items:center;gap:11px;margin-bottom:30px}.brand img{width:48px;height:48px}.brand strong{letter-spacing:.08em}.menu{display:grid;gap:5px}.menu a{color:#dce9ef;text-decoration:none;padding:10px 12px;border-radius:8px}.menu a:hover,.menu a.active{background:var(--teal);color:#fff}.main{padding:32px}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.top h1{color:var(--navy);margin:0;font:600 2rem Georgia,serif}.button,button{border:0;border-radius:8px;background:var(--teal);color:#fff;padding:11px 15px;font-weight:800;cursor:pointer;text-decoration:none}.secondary{background:#fff!important;color:var(--navy)!important;border:1px solid var(--line)!important}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stat,.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.stat strong{display:block;color:var(--navy);font-size:26px}.panel{margin-top:20px}.panel h2{color:var(--navy);margin-top:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:5px}.field.full{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid #cbd7dc;border-radius:8px;padding:11px;font:inherit}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-bottom:1px solid var(--line)}th{color:var(--navy)}.badge{display:inline-block;background:#e9f7f3;color:#087265;padding:4px 8px;border-radius:99px;font-size:12px;font-weight:800}.message{padding:12px;border-radius:8px;background:#eef7f7;margin:12px 0}.danger{background:#fff1f0;color:#b42318}@media(max-width:900px){.app{grid-template-columns:1fr}.side{position:static}.menu{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.main{padding:20px 14px}.grid,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.top{align-items:flex-start;gap:10px;flex-direction:column}}
