@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--muted:#93a4c4;--blue:#3789ff;--border:rgba(151,180,232,.1)}*{box-sizing:border-box}body{margin:0;background:#060d25 radial-gradient(ellipse at 85% 0%,#143875 0,transparent 55%);color:#f8faff;font:14px 'DM Sans',system-ui,sans-serif;min-height:100vh}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{transition:background .18s,border-color .18s,transform .18s}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:inherit;text-decoration:none}a:hover{color:#8dbdff}button:focus-visible,a:focus-visible{outline:2px solid #8dbdff;outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,system-ui,sans-serif}h1{font-size:32px;letter-spacing:-1px;line-height:1.3}h2{font-size:25px;letter-spacing:-.7px}h3{font-size:16px;letter-spacing:-.3px}.shell{display:flex;min-height:100vh}.sidebar{width:249px;flex-shrink:0;background:linear-gradient(160deg,rgba(10,20,49,.97),rgba(5,12,35,.9));border-right:1px solid var(--border);padding:31px 21px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;font-weight:800;font-size:16px;letter-spacing:2px}.brand small{display:block;font-size:7px;letter-spacing:1.5px;color:#9cacca;margin-top:7px}.logo{width:39px;height:43px;display:grid;place-items:center;color:#72b0ff;background:linear-gradient(135deg,#264f8b77,#14326733);border:1px solid #4975ba55;border-radius:12px}.divider{height:1px;background:linear-gradient(90deg,transparent,#7282aa44,transparent);margin:31px 0}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#8199c4;font-weight:700}.sidebar .eyebrow{font-size:9px;margin:0 12px 16px;letter-spacing:1.2px}nav{display:grid;gap:8px}nav a{padding:12px;display:flex;align-items:center;gap:11px;color:#9bacc9;font-weight:500;border-radius:13px}.navicon{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#122347;color:#7890b9}nav a.active{color:white;background:linear-gradient(90deg,#163362,#14274a)}nav a.active .navicon{background:#3186ff;color:white;box-shadow:0 4px 15px #217dff55}.navdot{width:5px;height:5px;border-radius:50%;background:#67a7ff;margin-left:auto}.sidebar-bottom{margin-top:auto;background:radial-gradient(ellipse at 15% 0%,#245c9b66,transparent 85%),#0c1b3a;border:1px solid #739de21c;border-radius:18px;padding:21px 17px}.shield{color:#72b6ff;margin-bottom:16px}.sidebar-bottom strong{font-size:13px}.sidebar-bottom p{color:var(--muted);font-size:11px;line-height:1.8;margin:9px 0 15px}.badge{font-size:10px;color:#9bc5ff;background:#25497866;border-radius:5px;padding:6px 10px}.sidefoot{font-size:8px;letter-spacing:1px;color:#566c92;display:flex;justify-content:space-between;margin-top:25px}main{margin-left:249px;width:calc(100% - 249px);padding:0 34px 20px;max-width:1900px}header{height:84px;display:flex;align-items:center;justify-content:space-between}.crumb{color:#cad7ef;font-size:12px;display:flex;gap:12px;align-items:center}.crumb span{color:#5f759b}.header-right{display:flex;gap:18px;align-items:center}.private{display:flex;align-items:center;gap:6px;color:#9bb1d2;font-size:11px}.avatar{height:32px;width:32px;border:1px solid #3a5f9655;border-radius:11px;display:grid;place-items:center;background:#1a355a;color:#acd1ff}.title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:18px 0 29px}.title-row .eyebrow{margin-bottom:9px}.subtitle{color:var(--muted);font-size:13px;margin-top:9px}.button{border:1px solid #4289eb;border-radius:10px;color:white;background:linear-gradient(140deg,#3490ff,#256be0);padding:12px 17px;display:inline-flex;justify-content:center;gap:8px;align-items:center;font-size:12px;font-weight:600;white-space:nowrap}.button:hover{background:#438df6;transform:translateY(-1px)}.secondary{background:#14284b80;border:1px solid #8da5cb26;color:#c8d7f2}.secondary:hover{background:#203c64}.card{background:linear-gradient(130deg,rgba(17,35,75,.92),rgba(8,19,48,.95));border:1px solid var(--border);border-radius:21px;padding:25px;box-shadow:0 10px 45px #0000000a}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.metric{padding:21px 18px;display:flex;align-items:flex-start;justify-content:space-between;gap:5px}.muted{color:var(--muted);font-size:12px}.metric h2{font-size:24px;margin:9px 0 8px;white-space:nowrap}.metric small{font-size:9px;color:#7f94b8}.metric-icon{display:grid;place-items:center;min-width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#3496ff,#245ede);color:#fff;box-shadow:0 5px 18px #1d6df02b}.overview-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:20px;margin-top:22px}.hero{min-height:325px;position:relative;overflow:hidden;display:flex;align-items:center;background:radial-gradient(ellipse at 80% 100%,#215b9f88,transparent 70%),linear-gradient(125deg,#102651,#0a1735)}.hero-copy{position:relative;z-index:2}.pill{font-size:8px;letter-spacing:1.8px;border:1px solid #84adff33;border-radius:20px;padding:7px 10px;color:#a6c7ff}.hero h2{font-size:28px;line-height:1.45;margin:22px 0 11px;letter-spacing:-.8px}.hero p{font-size:11px;line-height:1.9;color:#9bafd1}.textbutton{color:#c7e2ff;display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:0;margin-top:23px;font-size:11px}.house-art{position:absolute;right:2%;bottom:25px;width:230px;height:240px;opacity:.7;transform:rotate(-8deg)}.house-body{position:absolute;left:42px;top:89px;width:154px;height:135px;background:linear-gradient(120deg,#3473a955,#081b3daa);border:1px solid #79bbf077;transform:skewY(-6deg);box-shadow:inset 0 0 35px #307f9d44,20px 25px 60px #123a8955}.house-roof{position:absolute;left:40px;top:27px;width:152px;height:130px;transform:rotate(45deg) skew(-9deg,-9deg);background:linear-gradient(135deg,#3e8fc933,#12355b44);border-left:2px solid #77b7edaa;border-top:2px solid #77b7edaa}.window{position:absolute;top:27px;left:20px;width:46px;height:45px;background:linear-gradient(135deg,#87c5fa88,#3e85cc11);border:1px solid #85c6ff88;box-shadow:0 0 30px #4c9fff44}.window:after{content:'';position:absolute;height:100%;left:50%;border-left:1px solid #abd7ff77}.door{position:absolute;bottom:0;right:22px;width:40px;height:75px;border:1px solid #74a8dd55;background:#0b1f42bb}.house-ground{position:absolute;bottom:0;left:8px;width:220px;height:35px;border:1px solid #719ce633;border-radius:50%;transform:rotate(5deg);box-shadow:0 0 50px #5d9fff33}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.card-head p{margin-top:9px}.tiny{color:#6c88b4;font-size:8px;letter-spacing:1px}.ring{width:160px;height:160px;border-radius:50%;padding:10px;margin:22px auto 18px;box-shadow:0 0 30px #3679e711}.ring>div{width:100%;height:100%;border-radius:50%;background:#0d1c3c;display:flex;flex-direction:column;align-items:center;justify-content:center}.ring strong{font:800 36px Manrope,sans-serif;letter-spacing:-1px}.ring strong small{font-size:19px;margin-left:2px}.ring span{font-size:9px;color:#8ea6cd;margin-top:6px}.legend{display:grid;gap:12px;font-size:10px;color:#91a4c6}.legend>span{display:flex;align-items:center;gap:8px}.legend b{color:#d9e8ff;margin-left:auto;font-size:11px}.legend i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#264471}.legend i.blue{background:#3c8eff}.bottom-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:20px;margin-top:22px}.tag{font-size:9px;padding:5px 8px;border:1px solid #8298bf33;border-radius:5px;color:#9eb2d2}.bars{margin:27px 0}.bar-row{margin:20px 0}.bar-row>div:first-child{display:flex;justify-content:space-between;font-size:11px;color:#a5b5d2;margin-bottom:10px}.bar-row strong{font-weight:500;color:#d9e5fa}.track{height:6px;border-radius:8px;background:#25395766;overflow:hidden}.track>div{height:100%;border-radius:8px;min-width:0;transition:width .4s}.funding-status{display:flex;gap:11px;align-items:center;border-top:1px solid var(--border);padding-top:20px}.funding-status strong{font-size:11px;font-weight:500}.funding-status p{font-size:10px;color:#7f99c0;margin-top:6px;line-height:1.7}.statusdot{min-width:7px;height:7px;border-radius:50%;background:#34dbbd;box-shadow:0 0 10px #34dbbd55}.warning{background:#f3bc6a}.nextsteps>p{margin:10px 0 22px}.step{display:flex;align-items:center;gap:12px;width:100%;background:transparent;color:#dce6f9;border:0;border-top:1px solid var(--border);text-align:left;padding:18px 0}.stepnumber{color:#6384b7;min-width:33px;height:34px;border:1px solid #668cc033;border-radius:10px;display:grid;place-items:center;font-size:11px}.stepnumber.done{color:#44d7be;background:#2ca08a22;border-color:#31d0b733}.step>span:nth-child(2){flex:1}.step strong{font-size:11px;font-weight:500;display:block}.step small{display:block;font-size:9px;margin-top:6px;color:#7b95bb}.step>svg{color:#718cb8}.calculation-note{font-size:10px;color:#7188af;line-height:1.8;margin:18px 3px}footer{margin:35px 0 0;display:flex;justify-content:space-between;color:#667da5;font-size:10px}.alert,.notice{padding:15px 18px;border:1px solid #f6956b55;border-radius:12px;background:#51302366;margin-bottom:20px;color:#ffd4b4;font-size:13px;display:flex;align-items:center;gap:10px}.alert button{background:transparent;color:inherit;border:0;text-decoration:underline}.notice{border-color:#36d9bb33;background:#175a4d33;color:#85e4cb}.table-card{min-height:360px}.table-wrap{overflow:auto;margin-top:25px}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:10px;color:#839abc;font-weight:500;padding:16px 12px;white-space:nowrap;border-bottom:1px solid var(--border)}td{font-size:12px;padding:20px 12px;border-bottom:1px solid var(--border);white-space:nowrap}td:first-child{min-width:190px}td a{font-weight:600}td small{display:block;color:#8099bf;margin-top:7px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:320px;line-height:1.6}.actions{display:flex;gap:6px}.actions button,.iconbutton{background:#19325c66;border:1px solid #6889be22;color:#a8c2e7;border-radius:8px;padding:8px;display:grid;place-items:center}.actions button:hover{background:#264b7c}.empty{padding:65px 15px;text-align:center;color:#99afd0}.empty-icon{display:grid;place-items:center;width:60px;height:60px;background:#17396677;border-radius:20px;color:#78acff;margin:0 auto 20px}.empty h3{color:#e5efff;font-size:21px}.empty p{margin:12px 0 23px;font-size:13px}.modal-backdrop{position:fixed;inset:0;z-index:20;background:#020817c9;backdrop-filter:blur(9px);padding:30px 16px;display:grid;place-items:center;overflow:auto}.modal{width:min(100%,520px);background:linear-gradient(135deg,#14274d,#0b1732);border:1px solid #7ba3e333;border-radius:23px;padding:30px;box-shadow:0 30px 100px #0008;max-height:calc(100dvh - 60px);overflow:auto}.modal h2{font-size:22px}.modal>p{color:#9fb4d6;line-height:1.8;margin:12px 0}.modal h1{margin:23px 0}.modal label{display:block;font-size:12px;color:#becfeb;margin-top:20px}.modal input,.modal textarea,.login input{display:block;width:100%;margin-top:9px;background:#07142c;border:1px solid #6787ba44;border-radius:9px;color:#edf5ff;padding:12px 13px;outline:none}.modal input:focus,.modal textarea:focus,.login input:focus{border-color:#659fff;box-shadow:0 0 0 3px #4787ff22}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.modal-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:27px}.rate-preview{padding:15px;background:#3379c71a;border-radius:8px;display:flex;justify-content:space-between;font-size:11px;margin-top:20px;color:#a9c8f4}.danger{background:#ae354b;border-color:#d44a61}.detail-notes{white-space:pre-wrap;overflow-wrap:anywhere}.confirm{z-index:30}.form-error{color:#ffb7b7;margin-top:18px;font-size:12px}.notfound{padding:80px;margin:0;width:100%}.logout{background:transparent;border:0;color:#8da6ce;font-size:11px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login{width:min(420px,100%);padding:38px}.login .logo{margin-bottom:25px}.login h1{font-size:27px}.login>p{color:#93a9cd;line-height:1.8;margin:13px 0 27px;font-size:13px}.login label{display:block;margin:20px 0;font-size:12px;color:#bed0ee}.login .button{width:100%;margin-top:10px}.login small{display:block;margin-top:25px;text-align:center;color:#6e86b0;font-size:10px}
@media(min-width:1500px){.metric h2{font-size:29px}.hero{min-height:355px}.hero h2{font-size:33px}.house-art{right:7%;transform:scale(1.15) rotate(-8deg);bottom:40px}.ring{width:180px;height:180px}}@media(max-width:1200px){.sidebar{width:210px;padding:28px 15px}main{margin-left:210px;width:calc(100% - 210px);padding:0 23px 20px}.metrics{grid-template-columns:repeat(2,1fr)}.overview-grid,.bottom-grid{grid-template-columns:1.2fr 1fr}.house-art{right:-45px;opacity:.35}.hero h2{font-size:25px}.metric small{font-size:10px}}@media(max-width:850px){.sidebar{width:78px;padding:25px 12px}.brand>span:nth-child(2),.sidebar .eyebrow,.sidebar-bottom,.sidefoot,.navdot{display:none}.brand{justify-content:center}nav a{font-size:0;padding:10px 5px;justify-content:center;gap:0}.navicon{min-width:32px}.divider{margin:25px 0}main{margin-left:78px;width:calc(100% - 78px);padding:0 20px 20px}.overview-grid,.bottom-grid{grid-template-columns:1fr}.hero{min-height:300px}.house-art{opacity:.6;right:5%}.title-row{align-items:flex-start}.title-row>.button{font-size:0;padding:12px}.title-row>.button svg{width:18px}.title-row .subtitle{font-size:12px;line-height:1.7}.crumb{font-size:10px;gap:6px;flex-wrap:wrap}.header-right{gap:9px}.private{display:none}}@media(max-width:480px){main{padding:0 13px 20px}.sidebar{width:63px;padding:23px 7px}main{margin-left:63px;width:calc(100% - 63px)}header{height:65px}.title-row{margin:15px 0 22px}h1{font-size:25px}.title-row .eyebrow{font-size:8px}.metrics{gap:10px}.metric{padding:15px 11px;display:block;border-radius:15px}.metric-icon{display:none}.metric h2{font-size:21px}.metric .muted{font-size:10px}.metric small{font-size:8px;line-height:1.7;display:block}.card{padding:20px}.metric.card{padding:15px 11px}.hero h2{font-size:24px}.house-art{right:-90px;opacity:.25}.overview-grid,.bottom-grid{gap:14px;margin-top:14px}.card-head{flex-wrap:wrap}.card-head .button{font-size:10px}.modal{padding:22px}.modal-buttons{flex-wrap:wrap}.form-grid{gap:10px}footer{line-height:1.8;gap:15px}.logout{font-size:10px}.tiny{font-size:7px}}
