@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Barlow+Condensed:wght@500;600;700&family=Barlow:wght@400;500;600&display=swap";
:root{--navy-deep:#050f1e;--navy-mid:#0b1e3d;--red:#c10;--warm-white:#f5f3ef;--line:#d9d5cc;--line-soft:#ece8e0;--ink-muted:#55585e;--ink-on-dark:#c3cad5;--good:#1f7a3a}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--warm-white);color:var(--navy-deep);font-family:Barlow,system-ui,sans-serif;font-size:16px;line-height:1.45}a{color:var(--red)}a:hover{color:#990d00}input,select,textarea,button{font:inherit;color:inherit}.display{letter-spacing:1px;font-family:Bebas Neue,sans-serif;font-weight:400;line-height:1}.label{letter-spacing:2px;text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-weight:700}.muted{color:var(--ink-muted)}.site-header{background:var(--navy-deep);color:#fff}.site-header .inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1280px;margin:0 auto;padding:18px 32px;display:flex}.brand{flex-wrap:wrap;align-items:baseline;gap:14px;display:flex}.brand .mark{letter-spacing:1px;color:var(--warm-white);font-family:Bebas Neue,sans-serif;font-size:34px}.brand .sub{letter-spacing:3px;color:var(--ink-on-dark);font-family:Barlow Condensed,sans-serif;font-size:14px;font-weight:600}.nav{letter-spacing:2px;flex-wrap:wrap;gap:24px;font-family:Barlow Condensed,sans-serif;font-size:15px;font-weight:600;display:flex}.nav a,.nav button{color:var(--ink-on-dark);cursor:pointer;letter-spacing:2px;background:0 0;border:0;padding:10px 0;text-decoration:none}.nav a[aria-current=page]{color:#fff;border-bottom:2px solid var(--red)}main.page{flex-direction:column;gap:28px;max-width:1280px;margin:0 auto;padding:32px;display:flex}@media (max-width:640px){main.page,.site-header .inner{padding:20px 16px}}.card{border:1px solid var(--line);background:#fff;flex-direction:column;gap:14px;padding:28px;display:flex}.card.dark{background:var(--navy-mid);color:#fff;border:0}.card.deep{background:var(--navy-deep);color:#fff;border:0}.card.accent-top{border-top:4px solid var(--red)}.row{flex-wrap:wrap;gap:20px;display:flex}.grid-auto{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.bar-head{background:var(--navy-deep);color:#fff;letter-spacing:3px;padding:8px 12px;font-family:Barlow Condensed,sans-serif;font-size:16px;font-weight:700}.btn{letter-spacing:2px;cursor:pointer;background:var(--navy-mid);color:#fff;border:0;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-family:Barlow Condensed,sans-serif;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{background:var(--navy-deep);color:#fff}.btn.navy{background:var(--navy-mid)}.btn.light{background:var(--warm-white);color:var(--navy-deep)}.btn.light:hover{color:var(--navy-deep);background:#fff}.btn.ghost{color:inherit;background:0 0;border:1px solid}.btn:disabled{opacity:.6;cursor:default}.field{flex-direction:column;gap:6px;display:flex}.field label,.field .lbl{letter-spacing:2px;color:var(--ink-muted);font-family:Barlow Condensed,sans-serif;font-size:14px;font-weight:600}.field input,.field select,.field textarea{background:#fff;border:1px solid #cfcac0;min-height:48px;padding:10px 12px;font-size:16px}textarea{resize:vertical}.card.dark textarea,.card.dark input{background:var(--navy-deep);color:#fff;border:1px solid var(--ink-on-dark)}.yn{cursor:pointer;background:#fff;width:64px;height:44px;font-family:Barlow Condensed,sans-serif;font-size:18px;font-weight:700}.yn.y{border:2px solid var(--navy-mid);color:var(--navy-mid)}.yn.y[aria-pressed=true]{background:var(--navy-mid);color:#fff}.yn.n{border:2px solid var(--red);color:var(--red)}.yn.n[aria-pressed=true]{background:var(--red);color:#fff}.today-row{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:6px 0;display:flex}.today-row .name{letter-spacing:2px;font-family:Barlow Condensed,sans-serif;font-size:18px;font-weight:600}.scroll-x{overflow-x:auto}table.week{border-collapse:collapse;width:100%;min-width:760px}table.week th.day{letter-spacing:2px;background:var(--navy-mid);color:#fff;padding:8px 4px;font-family:Barlow Condensed,sans-serif;font-size:15px;font-weight:700}table.week th.day.today{background:var(--red)}table.week th.item{text-align:left;letter-spacing:2px;border-top:1px solid var(--line-soft);padding:6px 8px;font-family:Barlow Condensed,sans-serif;font-size:16px;font-weight:600}table.week th.group{text-align:left;letter-spacing:3px;color:var(--ink-muted);padding:16px 8px 6px;font-family:Barlow Condensed,sans-serif;font-size:14px;font-weight:700}table.week td{text-align:center;border-top:1px solid var(--line-soft);padding:4px}.cell{cursor:pointer;background:#fff;border:2px solid #cfcac0;width:48px;height:44px;font-family:Barlow Condensed,sans-serif;font-size:17px;font-weight:700}.cell.Y{background:var(--navy-mid);border-color:var(--navy-mid);color:#fff}.cell.N{border-color:var(--red);color:var(--red)}.cell:disabled{cursor:default;opacity:.45}.chart{border-bottom:1px solid #8b8b8b;align-items:flex-end;gap:8px;height:200px;padding-left:40px;display:flex;position:relative}.chart .grid{border-top:1px dashed #e2ded5;position:absolute;left:0;right:0}.chart .tick{color:var(--ink-muted);font-size:12px;position:absolute;left:0;transform:translateY(-50%)}.chart .col{flex-direction:column;flex:1 1 0;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.chart .col .val{margin-bottom:4px;font-size:13px;font-weight:600}.chart .col .bar{background:var(--navy-mid);border-radius:4px 4px 0 0;width:70%;max-width:40px}.chart .col:hover .bar{background:var(--red)}.chart-x{gap:8px;padding-left:40px;display:flex}.chart-x span{text-align:center;color:var(--ink-muted);flex:1 1 0;font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:600}.hbar{grid-template-columns:150px minmax(0,1fr) 56px;align-items:center;gap:10px;display:grid}.hbar .track{background:var(--line-soft);height:18px}.hbar .fill{background:var(--navy-mid);border-radius:0 4px 4px 0;height:18px}.meter{background:var(--line-soft);height:10px}.meter>div{background:var(--red);height:10px}.card.deep .meter,.card.dark .meter{background:#1e2e4a}.tiers{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tiers li{letter-spacing:1px;border:1px solid #3a4b66;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-family:Barlow Condensed,sans-serif;font-weight:600;display:flex}.tiers li.complete{background:var(--red);border-color:var(--red)}.tiers li.current{border-color:#fff}table.data{border-collapse:collapse;width:100%;font-size:15px}table.data th{background:var(--navy-mid);color:#fff;text-align:left;letter-spacing:2px;padding:10px 12px;font-family:Barlow Condensed,sans-serif;font-size:14px;font-weight:700}table.data td,table.data tbody th{border-bottom:1px solid var(--line-soft);text-align:left;padding:12px}.login{background:var(--navy-deep);color:#fff;flex-wrap:wrap;min-height:100vh;display:flex}.login-photo{background:#000;flex:520px;min-height:100vh;position:relative;overflow:hidden}.login-photo-shade{background:linear-gradient(#050f1e00 35%,#050f1e8c 60%,#050f1ef2 100%);position:absolute;inset:0}.login-photo-copy{flex-direction:column;gap:14px;padding:48px;display:flex;position:absolute;bottom:0;left:0;right:0}.login-rule{background:var(--red);width:64px;height:3px}.login-panel{flex:440px;justify-content:center;align-items:center;padding:56px 40px;display:flex}.login-forms{flex-direction:column;gap:24px;width:100%;max-width:420px;display:flex}.login-block{flex-direction:column;gap:16px;display:flex}.login-alt{background:var(--navy-mid);border:1px solid #23344f;padding:22px}.login-sub{color:var(--ink-on-dark);margin:8px 0 0;font-size:15px;line-height:1.5}.login-field{flex-direction:column;gap:6px;display:flex}.login-field label{letter-spacing:2px;color:var(--ink-on-dark);font-family:Barlow Condensed,sans-serif;font-size:14px;font-weight:600}.login-field input{background:var(--navy-deep);color:#fff;border:1px solid #3a4b66;height:52px;padding:0 14px;font-size:17px}.login-field input:focus{outline:2px solid var(--warm-white);outline-offset:1px}.login-textlink{color:var(--ink-on-dark);cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;text-decoration:underline}.login-textlink:hover{color:#fff}.login-msg{border-left:3px solid var(--red);color:#fff;background:#13233d;margin:0;padding:10px 14px;font-size:15px}.login-or{color:var(--ink-on-dark);letter-spacing:3px;align-items:center;gap:14px;font-family:Barlow Condensed,sans-serif;font-size:13px;font-weight:600;display:flex}.login-or:before,.login-or:after{content:"";background:#23344f;flex:1;height:1px}.login-foot{color:var(--ink-on-dark);margin:0;font-size:15px}.login-foot a{color:var(--warm-white)}.login-foot a:hover{color:#fff}@media (max-width:900px){.login-photo{flex-basis:100%;min-height:62vh}.login-photo-copy{padding:28px 22px}.login-panel{padding:36px 20px 48px}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.notice{border-left:4px solid var(--red);background:#fff;padding:12px 16px}
