:root{--bg:#f6f6f4;--card:#fff;--ink:#17171a;--mut:#6b6b73;--line:#e8e8e4;--acc:#ef4a2d;--acc-s:#fdece8;--good:#1f9d55;--mid:#d98a00;--bad:#d93a2b;--r:14px}*{box-sizing:border-box}body,html{margin:0}body{font:14px/1.5 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:var(--acc);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0}.shell{display:flex;min-height:100vh}.side{width:244px;flex:none;background:var(--card);border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh}.brand{display:flex;gap:10px;align-items:center;padding:4px 8px 20px}.brand img{border-radius:8px}.brand b{display:block;font-size:15px}.brand span{font-size:12px;color:var(--mut)}.side nav{display:flex;flex-direction:column;gap:2px;flex:1 1}.nav{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:10px;color:#3d3d44;font-weight:500}.nav:hover{background:#f3f3f0;text-decoration:none}.nav.on{background:var(--acc-s);color:var(--acc)}.signout button{width:100%;text-align:left;background:none;border:0;padding:9px 11px;border-radius:10px;color:var(--mut);cursor:pointer;font:inherit}.signout button:hover{background:#f3f3f0}.main{flex:1 1;min-width:0}.top{display:flex;justify-content:space-between;align-items:center;padding:14px 32px;border-bottom:1px solid var(--line);background:var(--card)}.crumb b{margin-right:8px}.crumb span{color:var(--mut)}.topr{display:flex;gap:14px;align-items:center}.user{color:var(--mut);font-size:13px}.pick{display:flex;gap:6px}.pick button,.pick select{font:inherit;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.pick button{cursor:pointer}.content{padding:28px 32px 56px;max-width:1180px}.phead{margin-bottom:20px}.phead h1{font-size:24px;letter-spacing:-.01em}.phead p{margin:4px 0 0;color:var(--mut)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px;margin-bottom:16px}.card>header{margin-bottom:14px;display:flex;justify-content:space-between;align-items:baseline;gap:10px}.card h2{font-size:15px}.card>header p{margin:0;color:var(--mut);font-size:13px}.grid2,.grid3,.grid4{display:grid;grid-gap:16px;gap:16px;margin-bottom:0}.grid2{grid-template-columns:repeat(2,1fr)}.grid3{grid-template-columns:repeat(3,1fr)}.grid4{grid-template-columns:repeat(4,1fr)}.stat{display:flex;flex-direction:column;gap:2px}.stat b{font-size:28px;letter-spacing:-.02em}.lbl{font-size:12px;text-transform:uppercase;letter-spacing:.04em}.lbl,.muted,.stat small{color:var(--mut)}.small,.stat em{font-size:12px}.stat em{font-style:normal;font-weight:600}.up{color:var(--good)}.down{color:var(--bad)}.center{display:flex;justify-content:center;margin:4px 0 8px;text-align:center}.ring{position:relative}.ring svg{display:block}.ring .trk{stroke:#efefeb}.ring .trk,.ring .val{fill:none;stroke-width:10}.ring .val{stroke-linecap:round}.ring.good .val{stroke:var(--good)}.ring.mid .val{stroke:var(--mid)}.ring.bad .val{stroke:var(--bad)}.ring>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.ring b{font-size:28px;line-height:1}.ring span{font-size:11px;color:var(--mut)}.spark{fill:none;stroke:var(--acc);stroke-width:2}.meter{margin-bottom:14px}.meter>div{display:flex;justify-content:space-between;margin-bottom:5px}.meter i{height:8px;background:#efefeb;overflow:hidden}.meter i,.meter u{display:block;border-radius:99px}.meter u{height:100%;background:var(--bad)}.meter i.good u{background:var(--good)}.meter i.mid u{background:var(--mid)}.badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:12px;font-weight:600;background:#efefeb;color:#4a4a52;white-space:nowrap}.badge.good{background:#e3f5ea;color:var(--good)}.badge.mid{background:#fdf1d9;color:#a96a00}.badge.bad{background:#fde7e4;color:var(--bad)}.list{list-style:none;margin:0;padding:0}.list li{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.list li:last-child{border:0}.list .date{color:var(--mut);width:52px;flex:none}.list li span:nth-child(2){flex:1 1}.recs li{align-items:flex-start}.recs p{margin:2px 0 0;color:var(--mut)}.tbl{width:100%;border-collapse:collapse}.tbl th{text-align:left;color:var(--mut);font-size:12px;font-weight:600;padding:8px 10px}.tbl td,.tbl th{border-bottom:1px solid var(--line)}.tbl td{padding:11px 10px}.tbl tr:last-child td{border:0}.r{text-align:right!important}.bars .row{display:grid;grid-template-columns:150px 1fr 48px;grid-gap:10px;gap:10px;align-items:center;padding:6px 0}.bars .row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bars i{height:8px;background:#efefeb;overflow:hidden}.bars i,.bars u{border-radius:99px}.bars u{display:block;height:100%;background:#c9c9c2}.bars .you u{background:var(--acc)}.bars .you b,.bars .you span{color:var(--acc);font-weight:700}.bars b{text-align:right}.empty{color:var(--mut);padding:14px 0}.note{background:#fff7e6;border:1px solid #f3dfae;color:#7a5a00;padding:12px 16px;border-radius:12px;margin-bottom:16px}.big{font-size:34px;font-weight:700;margin:0}.big small{font-size:14px;font-weight:400;color:var(--mut)}.rec{padding:16px 0;border-bottom:1px solid var(--line)}.rec:last-child{border:0}.rh{display:flex;justify-content:space-between;gap:10px;align-items:center}.rh h3{font-size:15px}.rec p{margin:8px 0}.rec .two{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;background:#faf9f7;border-radius:10px;padding:12px 14px}.rec .two p{margin:2px 0 0}.impact{color:var(--acc);font-weight:600;font-size:13px}.dl{display:grid;grid-template-columns:140px 1fr;grid-gap:10px 16px;gap:10px 16px;margin:0 0 14px}.dl dt{color:var(--mut)}.dl dd{margin:0}.loginwrap{min-height:100vh;display:grid;place-items:center;padding:20px}.logincard{width:100%;max-width:380px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px;display:flex;flex-direction:column;gap:14px}.logincard img{border-radius:10px}.logincard h1{font-size:22px}.logincard p{margin:0;color:var(--mut)}.logincard label{display:flex;flex-direction:column;gap:5px;font-weight:500}.logincard input{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.logincard input:focus{outline:2px solid var(--acc-s);border-color:var(--acc)}.logincard button{background:var(--acc);color:#fff;border:0;border-radius:10px;padding:11px;font:inherit;font-weight:600;cursor:pointer}.logincard button:disabled{opacity:.6}.err{color:var(--bad);font-size:13px}@media(max-width:900px){.shell{flex-direction:column}.side{width:auto;height:auto;position:static;flex-direction:row;align-items:center;overflow-x:auto;padding:10px;gap:8px}.brand{padding:0 8px 0 0}.brand div{display:none}.side nav{flex-direction:row;flex:none}.nav span{white-space:nowrap}.signout{flex:none}.signout button{width:auto}.grid2,.grid3,.grid4{grid-template-columns:1fr 1fr}.content{padding:20px 16px}.top{padding:12px 16px}.user{display:none}}@media(max-width:560px){.grid2,.grid3,.grid4,.rec .two{grid-template-columns:1fr}.bars .row{grid-template-columns:110px 1fr 40px}}