@font-face{font-family:SDFST Jakarta;src:url(/assets/PlusJakartaSans-BBNPXI38.ttf)format("truetype");font-weight:200 800;font-display:swap}@font-face{font-family:SDFST Serif;src:url(/assets/InstrumentSerif-Italic-BIypviHG.ttf)format("truetype");font-style:italic;font-display:swap}@font-face{font-family:SDFST Marcellus;src:url(/assets/Marcellus-CmR1DtAz.ttf)format("truetype");font-display:swap}.sdfst{--bg:#1e2230;--bg2:#171a25;--ink:#f3f4f8;--ink2:#b8bdcc;--ink3:#7c8397;--accent:#ff9d5c;--line:#ffffff1a;--glass:#2226369e;--glass2:#ffffff0f;--live:#4ade80;--building:#fbbf24;--not:#8b93a7;--r:18px;--top-h:64px;box-sizing:border-box;background:radial-gradient(ellipse at 50% 45%, #262b3c 0%, var(--bg) 55%, var(--bg2) 100%);width:100%;height:100%;min-height:560px;color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-family:SDFST Jakarta,system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.45;position:relative;overflow:hidden}.sdfst *,.sdfst :before,.sdfst :after{box-sizing:border-box}.sdfst button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;margin:0}.sdfst input{font:inherit;color:inherit;margin:0}.sdfst a{color:var(--accent)}.sdfst .serif{color:var(--accent);font-family:SDFST Serif,Georgia,serif;font-style:italic;font-weight:400}.sdfst .glass{background:var(--glass);-webkit-backdrop-filter:blur(22px)saturate(140%);border:1px solid var(--line);box-shadow:0 10px 40px #00000059,inset 0 1px #ffffff0f}.sdfst .st-top{z-index:20;align-items:center;gap:14px;display:flex;position:absolute;top:14px;left:16px;right:16px}.sdfst .st-brand{white-space:nowrap;letter-spacing:-.01em;align-items:baseline;gap:8px;font-size:20px;font-weight:700;display:flex}.sdfst .st-brand .serif{font-size:24px}.sdfst .st-brand small{color:var(--ink3);font-size:13px;font-weight:500}.sdfst .st-search{flex:260px;max-width:420px;position:relative}.sdfst .st-search input{border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(18px);border-radius:22px;outline:none;width:100%;height:44px;padding:0 16px 0 42px;font-size:16px}.sdfst .st-search input:focus{border-color:#ff9d5c99}.sdfst .st-search svg{opacity:.6;position:absolute;top:12px;left:14px}.sdfst .st-results{border-radius:16px;max-height:60vh;padding:6px;display:none;position:absolute;top:50px;left:0;right:0;overflow:auto}.sdfst .st-results.open{display:block}.sdfst .st-results button{text-align:left;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.sdfst .st-results button:hover,.sdfst .st-results button.active{background:var(--glass2)}.sdfst .st-results .sub{color:var(--ink3);font-size:13px}.sdfst .st-tabs{border-radius:24px;gap:2px;margin-left:auto;padding:4px;display:flex}.sdfst .st-tabs button{letter-spacing:.12em;height:36px;color:var(--ink2);border-radius:18px;padding:0 16px;font-size:13px;font-weight:700}.sdfst .st-tabs button.on{color:var(--ink);background:#ffffff24}.sdfst .st-btn{white-space:nowrap;border-radius:22px;height:44px;padding:0 18px;font-size:14px;font-weight:700}.sdfst .st-btn.primary{background:var(--accent);color:#221509}.sdfst .dot{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.sdfst .dot.live{background:var(--live);box-shadow:0 0 8px var(--live)}.sdfst .dot.building{border:2px solid var(--building);background:0 0}.sdfst .dot.not_started{border:2px dashed var(--not);background:0 0}.sdfst .st-filters{z-index:15;left:16px;top:calc(var(--top-h) + 14px);flex-wrap:wrap;gap:8px;max-width:calc(100% - 32px);display:flex;position:absolute}.sdfst .chip{height:34px;color:var(--ink2);background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);border-radius:17px;align-items:center;gap:7px;padding:0 13px;font-size:14px;font-weight:600;display:inline-flex}.sdfst .chip.on{color:var(--ink);background:#ffffff24;border-color:#ffffff73}.sdfst .chip .n{color:var(--ink3);font-weight:500}.sdfst .st-view{display:none;position:absolute;inset:0}.sdfst .st-view.on{display:block}.sdfst .st-map canvas{touch-action:none;cursor:grab;width:100%;height:100%;position:absolute;inset:0}.sdfst .st-map canvas.drag{cursor:grabbing}.sdfst .st-legend{z-index:10;color:var(--ink2);border-radius:16px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-size:14px;display:flex;position:absolute;bottom:16px;left:16px}.sdfst .st-legend span{align-items:center;gap:7px;display:inline-flex}.sdfst .st-mapctl{z-index:10;flex-direction:column;gap:8px;display:flex;position:absolute;bottom:16px;right:16px}.sdfst .st-mapctl button{border-radius:14px;place-items:center;width:44px;height:44px;font-size:20px;font-weight:600;display:grid}.sdfst .st-tip{z-index:12;pointer-events:none;border-radius:12px;max-width:280px;padding:8px 12px;font-size:14px;display:none;position:absolute}.sdfst .st-tip b{font-size:15px;display:block}.sdfst .st-legend .chip{-webkit-backdrop-filter:none;background:0 0;border-color:#0000}.sdfst .st-legend .chip.on{background:#ffffff24;border-color:#fff6}.sdfst .st-count{z-index:10;color:var(--ink2);white-space:nowrap;border-radius:16px;margin-right:60px;padding:8px 16px;font-size:14px;position:absolute;bottom:16px;right:16px}.sdfst .st-count b{color:var(--ink)}.sdfst .st-panel{z-index:30;background:#1c202edb;border-radius:24px;flex-direction:column;width:min(460px,100% - 24px);transition:transform .35s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;top:12px;bottom:12px;right:12px;overflow:hidden;transform:translate(110%)}.sdfst .st-panel.open{transform:none}.sdfst .st-panel .hd{border-bottom:1px solid var(--line);padding:20px 22px 14px;position:relative}.sdfst .st-panel .bd{flex:1;padding:16px 22px 28px;overflow:auto}.sdfst .st-panel .x{background:var(--glass2);border-radius:50%;width:38px;height:38px;font-size:20px;position:absolute;top:14px;right:14px}.sdfst .st-panel h2{letter-spacing:-.015em;margin:8px 40px 6px 0;font-size:26px;font-weight:700;line-height:1.15}.sdfst .st-panel h3{letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);margin:22px 0 8px;font-size:12px;font-weight:700}.sdfst .st-panel p{color:var(--ink2);margin:0 0 8px}.sdfst .st-panel .lead{color:var(--ink);font-size:17px}.sdfst .kicker{letter-spacing:.22em;text-transform:uppercase;font-family:SDFST Marcellus,serif;font-size:12px}.sdfst .badges{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.sdfst .badge{background:var(--glass2);border:1px solid var(--line);border-radius:14px;align-items:center;gap:6px;height:28px;padding:0 11px;font-size:13px;font-weight:700;display:inline-flex}.sdfst .badge.live{color:var(--live)}.sdfst .badge.building{color:var(--building)}.sdfst .badge.not_started{color:var(--ink2)}.sdfst .tools{flex-wrap:wrap;gap:6px;display:flex}.sdfst .tools span{background:var(--glass2);color:var(--ink);border-radius:10px;padding:4px 10px;font-size:14px}.sdfst .kv{grid-template-columns:110px 1fr;gap:6px 12px;font-size:15px;display:grid}.sdfst .kv dt{color:var(--ink3)}.sdfst .kv dd{color:var(--ink);margin:0}.sdfst .ladder{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.sdfst .ladder div{background:var(--glass2);color:var(--ink2);border:1px solid #0000;border-radius:12px;padding:10px;font-size:13px}.sdfst .ladder div.t{border-color:var(--accent);color:var(--ink)}.sdfst .ladder small{letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:3px;font-size:11px;display:block}.sdfst ol.proc{color:var(--ink2);margin:0;padding-left:20px}.sdfst ol.proc li{margin-bottom:6px}.sdfst .approval{color:var(--ink);background:#ff9d5c1a;border:1px solid #ff9d5c59;border-radius:14px;padding:12px 14px;font-size:15px}.sdfst .gap{background:var(--glass2);color:var(--ink);border-radius:12px;margin-bottom:6px;padding:10px 12px;text-decoration:none;display:block}.sdfst .gap small{color:var(--ink3);font-size:12px;display:block}.sdfst .gap.done{opacity:.55}.sdfst .linkish{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.sdfst .source{color:var(--ink);background:var(--glass2);border-radius:12px;padding:10px 12px;font-family:ui-monospace,Menlo,monospace;font-size:13px}.sdfst .mark{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.sdfst .mark button{background:var(--glass2);border:1px solid var(--line);border-radius:12px;height:36px;padding:0 12px;font-size:13px;font-weight:600}.sdfst .mark button.on{border-color:var(--accent);color:var(--accent)}.sdfst .muted{color:var(--ink3);font-size:13px}.sdfst .st-scroll{padding:calc(var(--top-h) + 64px) 20px 40px;position:absolute;inset:0;overflow:auto}.sdfst .st-dash{grid-template-columns:repeat(12,1fr);gap:14px;max-width:1240px;margin:0 auto;display:grid}.sdfst .card{border-radius:var(--r);padding:18px 20px}.sdfst .card h4{letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);margin:0 0 10px;font-size:12px;font-weight:700}.sdfst .big{letter-spacing:-.02em;font-size:40px;font-weight:700;line-height:1.05}.sdfst .span3{grid-column:span 3}.sdfst .span4{grid-column:span 4}.sdfst .span6{grid-column:span 6}.sdfst .span8{grid-column:span 8}.sdfst .span12{grid-column:span 12}.sdfst .money{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;display:grid}.sdfst .money div{background:var(--glass2);border-radius:14px;padding:14px}.sdfst .money b{letter-spacing:-.01em;font-size:24px;display:block}.sdfst .money span{color:var(--ink2);font-size:14px}.sdfst .bar{background:#ffffff0f;border-radius:6px;height:12px;display:flex;overflow:hidden}.sdfst .bar i{height:100%;display:block}.sdfst .deptrow{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:170px 1fr 90px;align-items:center;gap:12px;padding:8px 0;display:grid}.sdfst .deptrow:last-child{border:0}.sdfst .next{border-bottom:1px solid var(--line);cursor:pointer;border-radius:10px;grid-template-columns:32px 1fr auto;align-items:center;gap:12px;padding:10px 6px;display:grid}.sdfst .next:hover{background:var(--glass2)}.sdfst .next .rk{color:var(--accent);text-align:center;font-family:SDFST Serif,serif;font-size:24px;font-style:italic}.sdfst .next .nm{font-weight:600}.sdfst .next .sub{color:var(--ink3);font-size:13px}.sdfst .wave{color:var(--accent);white-space:nowrap;background:#ff9d5c26;border-radius:10px;padding:3px 9px;font-size:12px;font-weight:700}.sdfst .st-chart{grid-template-columns:150px repeat(4,minmax(200px,1fr));gap:10px;max-width:1400px;margin:0 auto;display:grid}.sdfst .st-chart .colh{letter-spacing:.12em;text-transform:uppercase;color:var(--ink2);padding:8px 12px;font-size:13px;font-weight:700}.sdfst .st-chart .colh .serif{letter-spacing:0;text-transform:none;margin-right:6px;font-size:22px}.sdfst .st-chart .rowh{letter-spacing:.12em;text-transform:uppercase;color:var(--ink);border-radius:16px;align-items:center;padding:14px 12px;font-family:SDFST Marcellus,serif;font-size:13px;display:flex}.sdfst .st-chart .cell{border-radius:16px;flex-wrap:wrap;align-content:flex-start;gap:5px;min-height:120px;padding:10px;display:flex}.sdfst .pill{text-align:left;background:#ffffff0d;border:1px solid;border-radius:11px;align-items:center;gap:6px;padding:4px 9px 4px 7px;font-size:12.5px;line-height:1.25;display:inline-flex}.sdfst .pill.dim{opacity:.18}@media (width<=760px){.sdfst{--top-h:112px;font-size:15px}.sdfst .st-top{flex-wrap:wrap;gap:8px;top:10px;left:10px;right:10px}.sdfst .st-brand{font-size:17px}.sdfst .st-brand .serif{font-size:20px}.sdfst .st-brand small{display:none}.sdfst .st-search{flex:100%;order:3;max-width:none}.sdfst .st-tabs{margin-left:auto}.sdfst .st-tabs button{letter-spacing:.08em;height:32px;padding:0 10px;font-size:11px}.sdfst .st-top .st-btn{display:none}.sdfst .st-filters{left:10px;top:calc(var(--top-h) + 6px);scrollbar-width:none;flex-wrap:nowrap;max-width:calc(100% - 20px);padding-bottom:4px;overflow-x:auto}.sdfst .chip{flex:none}.sdfst .st-legend{flex-wrap:nowrap;gap:2px;padding:4px;bottom:10px;left:10px;right:64px;overflow-x:auto}.sdfst .st-legend .hint{display:none}.sdfst .st-legend .chip{padding:0 9px;font-size:13px}.sdfst .st-count{display:none}.sdfst .st-mapctl{bottom:10px;right:10px}.sdfst .st-panel{border-radius:24px 24px 0 0;width:100%;height:82%;inset:auto 0 0;transform:translateY(105%)}.sdfst .st-panel h2{font-size:22px}.sdfst .st-scroll{padding:calc(var(--top-h) + 56px) 10px 30px}.sdfst .st-dash>*{grid-column:span 12!important}.sdfst .deptrow{grid-template-columns:110px 1fr 60px;font-size:14px}.sdfst .st-chart{grid-template-columns:1fr}.sdfst .st-chart .colh.blank{display:none}.sdfst .st-chart .cell:before{content:attr(data-label);letter-spacing:.12em;text-transform:uppercase;width:100%;color:var(--ink3);margin-bottom:4px;font-size:11px;display:block}.sdfst .st-chart .colh{display:none}}.sdfst .appic{background:#fff;border-radius:22.5%;flex:none;display:inline-block;box-shadow:0 1px 3px #00000059}.sdfst .apps-list{flex-wrap:wrap;gap:8px;display:flex}.sdfst .apps-list.top{margin:4px 0 6px}.sdfst .app{background:var(--glass2);color:var(--ink);border-radius:12px;align-items:center;gap:8px;padding:4px 12px 4px 4px;font-size:14px;font-weight:600;display:inline-flex}.sdfst .app .appic+.appic{margin-left:-4px}.sdfst .tipicons{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.sdfst .tippct{color:var(--ink);margin-top:6px;font-weight:700}.sdfst .st-results .rs{flex:1}.sdfst .st-results .ri{gap:3px;display:flex}.sdfst .st-auto{z-index:14;left:16px;top:calc(var(--top-h) + 62px);border-radius:20px;width:300px;padding:14px 16px;position:absolute}.sdfst .au-row{align-items:center;gap:12px;display:flex}.sdfst .au-big{letter-spacing:-.04em;color:var(--ink);font-size:50px;font-weight:800;line-height:1}.sdfst .au-big span{color:var(--accent);margin-left:2px;font-family:SDFST Serif,serif;font-size:40px;font-style:italic;font-weight:400}.sdfst .au-t{color:var(--ink2);font-size:16px}.sdfst .au-t b{color:var(--ink)}.sdfst .au-c{color:var(--ink2);flex-wrap:wrap;gap:10px;margin-top:4px;font-size:13px;display:flex}.sdfst .au-c span{align-items:center;gap:5px;display:inline-flex}.sdfst .au-c .dot{width:8px;height:8px}.sdfst .au-i{border:1px solid var(--line);width:26px;height:26px;color:var(--accent);background:var(--glass2);border-radius:50%;align-self:flex-start;margin-left:auto;font-family:SDFST Serif,serif;font-size:16px;font-style:italic}.sdfst .au-bar,.sdfst .hero-bar{background:#ffffff14;border-radius:4px;height:8px;margin-top:12px;display:flex;overflow:hidden}.sdfst .au-bar i,.sdfst .hero-bar i{background:var(--live);height:100%;display:block}.sdfst .au-bar i.b,.sdfst .hero-bar i.b{background:#fbbf2499}.sdfst .au-info{border-top:1px solid var(--line);color:var(--ink2);margin-top:12px;padding-top:10px;font-size:13px}.sdfst .au-info p{margin:0 0 6px}.sdfst .au-info b{color:var(--ink)}.sdfst .st-howread{z-index:16;right:16px;top:calc(var(--top-h) + 62px);width:320px;color:var(--ink2);border-radius:20px;padding:14px 16px;font-size:14px;position:absolute}.sdfst .st-howread[hidden]{display:none}.sdfst .hr-h{color:var(--ink);justify-content:space-between;align-items:center;font-size:16px;display:flex}.sdfst .hr-h button{background:var(--glass2);border-radius:50%;width:28px;height:28px;font-size:18px}.sdfst .st-howread ul{margin:8px 0 10px;padding-left:18px}.sdfst .st-howread li{margin-bottom:6px}.sdfst .st-howread li b{color:var(--ink)}.sdfst .hr-ok{background:var(--accent);color:#221509;border-radius:17px;height:34px;padding:0 16px;font-size:14px;font-weight:700}.sdfst .howto{background:#ff9d5c14;border:1px solid #ff9d5c59;border-radius:16px;margin:18px 0 4px;padding:14px 16px}.sdfst .howto.live{background:#4ade8012;border-color:#4ade8059}.sdfst .how-h{color:var(--ink);justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;font-size:18px;display:flex}.sdfst .howto ol{color:var(--ink);margin:6px 0 0;padding-left:22px;font-size:15px}.sdfst .howto li{margin-bottom:7px;line-height:1.4}.sdfst .blk,.sdfst .need{margin:6px 0 8px}.sdfst .blk span,.sdfst .need span{letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);margin-bottom:4px;font-size:11px;font-weight:700;display:block}.sdfst .blk p{font-size:14px;color:#fcd9a8!important;margin:0 0 4px!important}.sdfst .need p{font-size:14px;margin:0!important}.sdfst .eff{letter-spacing:.04em;border-radius:12px;align-items:center;height:24px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.sdfst .eff.Easy{color:#86efac;background:#4ade8029}.sdfst .eff.Medium{color:#fcd34d;background:#fbbf2429}.sdfst .eff.Big{color:#fca5a5;background:#f8717129}.sdfst .sub .eff{height:18px;padding:0 7px;font-size:11px}.sdfst .hero{align-items:center;gap:26px;display:flex}.sdfst .hero-pct{letter-spacing:-.05em;font-size:96px;font-weight:800;line-height:.9}.sdfst .hero-pct span{color:var(--accent);margin-left:4px;font-family:SDFST Serif,serif;font-size:80px;font-style:italic;font-weight:400}.sdfst .hero-r{flex:1}.sdfst .hero-t{color:var(--ink2);font-size:26px}.sdfst .hero-t b{color:var(--ink)}.sdfst .hero-c{color:var(--ink2);flex-wrap:wrap;gap:18px;margin-top:10px;font-size:15px;display:flex}.sdfst .hero-c span{align-items:center;gap:6px;display:inline-flex}.sdfst .hero-c b{color:var(--ink)}.sdfst .hero p{margin:10px 0 0}.sdfst .dp{flex-direction:column;align-items:flex-end;line-height:1.1;display:flex}.sdfst .dp b{font-size:18px}.sdfst .dp small{color:var(--ink3);font-size:11px}.sdfst .deptrow{grid-template-columns:170px 1fr 80px}.sdfst .apps{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;display:grid}.sdfst .appcard{background:var(--glass2);text-align:left;border-radius:14px;align-items:center;gap:10px;padding:8px 10px;display:flex}.sdfst .appcard:hover{background:#ffffff1a}.sdfst .appcard b{font-size:14px;display:block}.sdfst .appcard small{color:var(--ink3);font-size:12px}.sdfst .appcard .appic+.appic{margin-left:-14px}.sdfst .effs{gap:10px;display:flex}.sdfst .effs div{background:var(--glass2);border-radius:14px;flex-direction:column;flex:1;align-items:flex-start;gap:6px;padding:12px;display:flex}.sdfst .effs b{font-size:30px}.sdfst .gapgrid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:6px;display:grid}@media (width<=760px){.sdfst .st-auto{width:auto;left:10px;right:10px;top:calc(var(--top-h) + 50px);padding:10px 12px}.sdfst .au-big{font-size:38px}.sdfst .au-big span{font-size:30px}.sdfst .au-bar{margin-top:8px}.sdfst .st-howread{width:auto;inset:auto 10px 64px}.sdfst .hero{flex-direction:column;align-items:flex-start;gap:8px}.sdfst .hero-pct{font-size:70px}.sdfst .hero-t{font-size:20px}.sdfst .deptrow{grid-template-columns:110px 1fr 64px}}@media (width>=761px){.sdfst .st-filters{flex-wrap:nowrap;gap:6px}.sdfst .st-filters .chip{white-space:nowrap;gap:6px;height:32px;padding:0 10px;font-size:13.5px}.sdfst .st-auto{width:330px}}.sdfst .au-t{white-space:nowrap}
