*{box-sizing:border-box}:root{--bg:#f4f6f8;--card:#fff;--text:#1d1d1f;--muted:#60646c;--border:#dfe3e8;--accent:#111;--soft:#f7f8fa}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}.site-header{background:white;border-bottom:1px solid var(--border);padding:18px 24px 0}.brand-row{display:flex;align-items:center;gap:18px;max-width:1180px;margin:auto}.logo{width:128px}.brand-copy h1{margin:0;font-size:2.1rem}.brand-copy p{margin:6px 0 0;color:var(--muted)}.main-nav{max-width:1180px;margin:18px auto 0;display:flex;gap:8px;overflow-x:auto}.main-nav a{color:var(--text);text-decoration:none;padding:12px 14px;border-radius:10px 10px 0 0;font-weight:bold;white-space:nowrap}.main-nav a.active,.main-nav a:hover{background:var(--bg)}main{max-width:1180px;margin:24px auto;padding:0 16px 40px}.page{display:none}.active-page{display:block}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px;box-shadow:0 1px 3px rgba(0,0,0,.05);margin-bottom:18px}.hero{min-height:260px;display:flex;align-items:center;background:linear-gradient(135deg,#fff 0%,#eef1f5 100%)}.hero h2{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:0 0 16px}.hero p{max-width:720px;font-size:1.1rem}.hero-actions,.button-row{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:bold;color:var(--muted);font-size:.78rem;margin-top:0}h2{margin-top:0}p,li{line-height:1.48}.grid{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));gap:14px}.optimizer-controls{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px}label{display:flex;flex-direction:column;font-weight:bold;font-size:.9rem;gap:6px}select,input{padding:10px;border:1px solid #bbc1c9;border-radius:8px;font-size:1rem;background:white}button{margin-top:0;padding:12px 18px;border:0;border-radius:9px;background:var(--accent);color:white;font-size:1rem;cursor:pointer;font-weight:bold}button.secondary{background:white;color:var(--accent);border:1px solid var(--accent)}.small-button{margin:0;padding:7px 10px;font-size:.85rem}.summary{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.totals-summary .card{border-top:4px solid #111}.metric{margin-bottom:18px}.metric span{display:block;color:var(--muted);font-size:.85rem}.metric strong{display:block;margin-top:8px;font-size:1.5rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:1600px}.optimizer-table{min-width:1000px}.night-table{min-width:1000px}th,td{border-bottom:1px solid #ebedf0;padding:10px;text-align:left;white-space:nowrap;vertical-align:top}th{background:var(--soft);color:#333;position:sticky;top:0;z-index:1}.fixed-table-wrap{max-height:520px;border:1px solid var(--border);border-radius:10px}.status-message{background:#f7f8fa;border:1px solid var(--border);padding:10px;border-radius:8px;color:var(--muted)}.year-panel{margin-top:18px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--soft)}.year-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.year-options{display:flex;gap:16px;flex-wrap:wrap}.check-label{display:flex;flex-direction:row;align-items:center;font-weight:bold;gap:6px}.check-label input{width:auto}.situation-card{border-left:5px solid #111}.table-title-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.muted-pill{background:var(--soft);border:1px solid var(--border);padding:5px 9px;border-radius:999px;color:var(--muted);font-weight:bold}.table-note{color:var(--muted);font-size:.9rem}.night-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.night-card{border:1px solid var(--border);background:var(--soft);border-radius:12px;padding:14px}.night-card strong{display:block;font-size:1.1rem;margin-bottom:6px}.lean{font-weight:bold}.small-muted{color:var(--muted);font-size:.85rem}footer{text-align:center;color:var(--muted);padding:28px 16px 40px}@media(max-width:900px){.grid,.summary,.optimizer-controls,.night-summary{grid-template-columns:1fr 1fr}}@media(max-width:650px){.brand-row{align-items:flex-start;flex-direction:column}.grid,.summary,.optimizer-controls,.night-summary{grid-template-columns:1fr}}
.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.night-table td:nth-child(7),.night-table th:nth-child(7){white-space:normal;min-width:320px}.night-table td:nth-child(6),.night-table th:nth-child(6){white-space:nowrap}@media(max-width:900px){.status-grid{grid-template-columns:1fr}}
