body { margin: 0; background: #f6faf8; color: #14211f; font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; }
* { box-sizing: border-box; }
body { display: grid; grid-template-columns: 260px 1fr; min-height: 100vh; }
aside { padding: 24px; border-right: 1px solid #d9e3df; background: #fff; display: grid; align-content: start; gap: 10px; }
aside strong { color: #126b61; font-size: 22px; margin-bottom: 22px; }
button, input, select, a { font: inherit; min-height: 40px; border-radius: 7px; border: 1px solid #d9e3df; background: #fff; padding: 0 12px; }
button.active, .panel-head button, a { background: #126b61; color: #fff; border-color: #126b61; text-decoration: none; display: inline-flex; align-items: center; }
main { padding: 28px; }
header { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-bottom: 22px; }
h1 { margin: 0 0 6px; font-size: 34px; }
p, small, span, em { color: #61716d; font-style: normal; }
.metrics, .split { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 18px; }
.split { grid-template-columns: 1fr 1.3fr; }
article, .panel { background: #fff; border: 1px solid #d9e3df; border-radius: 8px; padding: 20px; box-shadow: 0 14px 34px rgba(25,40,36,.06); }
article strong { display: block; color: #14211f; font-size: 30px; margin-top: 8px; }
.panel h2 { margin-top: 0; }
.panel-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
label { display: grid; gap: 8px; margin-bottom: 12px; }
.module-list label { grid-template-columns: 20px 1fr auto; align-items: center; border: 1px solid #d9e3df; border-radius: 8px; padding: 12px; }
.module-list small { display: block; margin-top: 4px; }
.table { display: grid; gap: 10px; }
.table div { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr auto; gap: 12px; align-items: center; border: 1px solid #d9e3df; border-radius: 8px; padding: 13px; }
@media (max-width: 900px) { body, .metrics, .split { grid-template-columns: 1fr; } aside { position: static; } .table div { grid-template-columns: 1fr; } }
