:root{--bg:#0a1117;--panel:#111b24;--panel2:#16232e;--line:#2b3b49;--text:#eef6fb;--muted:#8fa4b4;--cyan:#14b8c8;--cyan2:#0e8b99;--light:#edf2f4;--ink:#1d2a33}.app{grid-template-columns:235px minmax(0,1fr)}aside{background:#13202a;padding:18px 12px;gap:4px;position:sticky;top:0;height:100vh;overflow:auto}.brand{padding:8px 10px 18px}.portal-logo{display:block;width:100%;max-width:260px;height:65px;object-fit:contain}.brand span{color:#acbec9;font-size:11px;font-weight:400;text-align:center}.nav{display:block;width:100%;background:transparent;padding:10px;border-radius:7px;margin-bottom:4px}.nav.active{background:#168b98;color:white}.portal-links{display:grid;gap:12px;padding:22px 10px}.portal-links a{color:#a6c1ce;font-size:12px;text-decoration:none}.top{height:auto;background:transparent;border:0;padding:22px 22px 0;gap:15px}.top h1{margin:0 0 6px;font-size:28px}.top .muted{color:#647682}.content{padding:22px;max-width:none}.content h2{font-size:21px}.card{box-shadow:0 6px 18px #1b2c3814;border-color:#d7e0e5;padding:17px;border-radius:10px}.metric{font-size:27px;margin-top:7px}.app .muted{color:#647682}.app aside .muted{color:#acbec9}.metric-grid{gap:14px}.dashboard-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #e0e7eb;margin-bottom:8px}.dashboard-row .small{margin-top:5px;max-width:55ch;overflow-wrap:anywhere}.table-scroll{overflow:auto}.planner-item{border:1px solid #d7e0e5;border-radius:9px;padding:12px;margin:12px 0}.modal{max-height:90vh;overflow:auto;width:min(700px,96vw)}.modal .webbtn[type=submit]{margin-top:14px}.loginbox .brand,.setupbox .brand{padding:0}.loginbox .portal-logo{margin:auto;height:90px}.loginbox{border-radius:20px}button:focus-visible,a:focus-visible{outline:2px solid #14b8c8;outline-offset:2px}@media(max-width:850px){.app{grid-template-columns:1fr}aside{display:flex;position:static;height:auto}.app aside .brand{max-width:235px}aside nav{display:flex;gap:5px;overflow:auto}.nav{width:auto;white-space:nowrap;margin:0}.portal-links,aside>.bottom{display:none}.top{padding:16px;flex-wrap:wrap}.content{padding:12px}.metric-grid{grid-template-columns:1fr 1fr}.toolbar{align-items:end}.top .actions{font-size:12px}}
