:root{--navy:#102038;--blue:#1e4a7d;--accent:#2f72be;--line:#e3e9ef;--bg:#f5f7fa;--muted:#66778a;--white:#fff;--danger:#b45333}*{box-sizing:border-box}html{font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:15px;color:var(--navy);background:var(--bg)}body{margin:0}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}.top{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px}.brand{display:flex;gap:13px;align-items:center}.mark{background:var(--navy);color:white;border-radius:11px;font-weight:800;letter-spacing:.05em;padding:13px 12px}.brand strong{letter-spacing:.14em;font-size:15px}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.account{display:flex;gap:22px;align-items:center;font-weight:600}.quiet{background:transparent;border:0;color:var(--blue);cursor:pointer;font-size:14px}.layout{display:flex;min-height:calc(100vh - 120px)}.sidebar{width:240px;flex-shrink:0;border-right:1px solid var(--line);background:#fff;padding:27px 13px;display:flex;flex-direction:column;gap:4px}.sidebar>a{display:block;padding:13px 20px;color:#485b70;border-radius:10px;font-weight:550}.sidebar>a.active,.sidebar>a:hover{background:#eaf2fa;color:var(--blue);text-decoration:none}.navnote{margin-top:auto;font-size:11px;line-height:1.7;color:#8996a4;padding:16px}.main{padding:42px clamp(24px,4vw,66px);width:100%;max-width:1700px;margin:0 auto}.main.centered{display:flex;align-items:center;justify-content:center}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.17em;color:var(--accent);margin-bottom:14px}h1{font-weight:650;font-size:32px;letter-spacing:-.035em;margin:0 0 14px}h2{font-size:18px;margin:0}.sub{font-size:15px;letter-spacing:0;font-weight:500}.muted{color:var(--muted)}.lede{color:var(--muted);line-height:1.6;margin:0 0 28px}.stats{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:18px;margin:28px 0}.stat{padding:25px 26px;border-radius:12px;background:#fff;border:1px solid var(--line)}.stat span{display:block;color:var(--muted);font-size:13px}.stat strong{display:block;font-size:37px;margin-top:14px}.twocol{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line)}.sectionhead a{font-weight:600;font-size:13px}.itemlist{padding:0}.taskitem,.appointment{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:17px 0;border-bottom:1px solid #edf0f4}.taskitem:last-child,.appointment:last-child{border:0}.taskitem strong,.appointment strong{font-size:14px;display:block;margin:7px 0 5px}.taskitem small,.appointment small,td small{display:block;color:var(--muted);margin-top:6px;font-size:12px}.badge{padding:4px 8px;border-radius:20px;background:#eef3f8;color:#52708a;font-size:11px;font-weight:700;display:inline-block}.badge.high{background:#ffeae7;color:#a23d2b}.badge.low{background:#eff5ed;color:#5b7d51}.datepill{background:#e9f2fb;color:var(--blue);padding:12px 10px;min-width:62px;text-align:center;border-radius:9px;font-weight:800}.tiny{border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--blue);padding:8px 12px;cursor:pointer;font-weight:600}.tiny:hover{background:#edf5ff}.empty{color:var(--muted);padding:28px 0}.subnote,.hint{font-size:12px;color:var(--muted);margin-top:20px}.margin{margin-top:24px}.titlebar{display:flex;justify-content:space-between;align-items:center;gap:18px}.btn,button.primary{display:inline-block;padding:12px 18px;border:0;border-radius:8px;font-size:14px;font-weight:650;cursor:pointer}.primary{background:var(--blue);color:white!important}.primary:hover{background:#16395f;text-decoration:none}.tablewrap{overflow:auto;padding:12px 22px}table{width:100%;border-collapse:collapse;text-align:left}th{font-weight:650;color:#778699;font-size:12px;padding:16px 12px;border-bottom:1px solid var(--line)}td{padding:18px 12px;border-bottom:1px solid #edf0f4;font-size:13px;vertical-align:middle}td form{display:flex;gap:8px;align-items:center}td select{padding:7px;border:1px solid var(--line);border-radius:6px;max-width:130px}.tabs{display:flex;gap:8px;margin:6px 0 18px}.tabs a{display:inline-block;border:1px solid var(--line);border-radius:7px;padding:10px 18px;background:white}.tabs a.selected{background:#eaf2fa;border-color:#a9c5e1}.narrow{max-width:670px;margin-top:20px}.form{display:flex;flex-direction:column;gap:18px}.form label{display:block;font-size:13px;font-weight:650;color:#3d4f61}.form input,.form textarea,.form select{display:block;margin-top:8px;width:100%;padding:13px 14px;border:1px solid #cfd8e2;border-radius:8px;font:inherit;color:var(--navy);background:white}.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid #b4d5f5;border-color:#639ad2}.twocolfields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.formactions{display:flex;align-items:center;gap:20px;margin-top:10px}.notice{max-width:860px;padding:12px 16px;margin-bottom:24px;border-radius:7px;background:#e8f5ea;color:#235c33}.notice.error{background:#fff0ec;color:#a14431}.loginbox{background:white;border:1px solid var(--line);border-radius:16px;max-width:500px;width:100%;padding:44px;box-shadow:0 14px 50px #10203812}.loginbox h1{font-size:29px}.loginbox p{line-height:1.6}.loginbox form{margin-top:28px}.loginbox button{width:100%}footer{background:var(--navy);color:#ccd5de;font-size:11px;padding:13px 36px;text-align:right}@media(max-width:980px){.twocol{grid-template-columns:1fr}.sidebar{width:190px}.main{padding:26px}.top{padding:0 19px}}@media(max-width:650px){.layout{display:block}.sidebar{width:100%;display:flex;flex-direction:row;overflow:auto;padding:8px;gap:0}.sidebar>a{white-space:nowrap;padding:10px}.navnote{display:none}.stats{grid-template-columns:repeat(3,1fr);gap:7px}.stat{padding:14px}.stat strong{font-size:26px}.account span{display:none}.brand small{display:none}.main{padding:22px 15px}.titlebar{align-items:flex-start;flex-direction:column}.twocolfields{grid-template-columns:1fr}.card{padding:18px}.loginbox{padding:25px}.top{height:70px}}
