/* KoshiNet Forge v4.0: a distinct, technical KOSHI.DEV identity. */
:root,
html[data-theme="dark"]{
  --bg:#050507;--surface:#08090c;--surface-2:#0c0e12;--surface-3:#101319;
  --ink:#f5f5f4;--muted:#898a90;--line:#26272c;--line-soft:#16171b;--strong:#f5f5f4;
  --orange:#13d5f4;--orange-2:#09a8c2;--cyan:#13d5f4;--blue:#13d5f4;--blue-dark:#08889e;
  --radius:0;--max:1380px;--font-sans:Inter,ui-sans-serif,system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,monospace;color-scheme:dark;
}
html[data-theme="light"]{
  --bg:#f4f4f1;--surface:#fff;--surface-2:#ededeb;--surface-3:#e4e4e1;
  --ink:#0b0c0e;--muted:#62646a;--line:#cfd0ce;--line-soft:#e2e2df;--strong:#0b0c0e;
  --orange:#007d98;--orange-2:#005f74;--cyan:#007d98;--blue:#007d98;--blue-dark:#005266;color-scheme:light;
}
body.forge-body{background:var(--bg);color:var(--ink);font-family:var(--font-sans)}
body.forge-body::before{display:none}.container{width:min(var(--max),calc(100% - 80px))}

/* Forge shell stays intentionally unlike the player-facing portal. */
.dev-header{height:82px;padding:0 max(30px,calc((100vw - var(--max))/2));gap:64px;background:color-mix(in srgb,var(--bg) 96%,transparent);border-bottom:1px solid var(--line-soft);backdrop-filter:blur(16px)}
.dev-brand{gap:10px}.dev-logo{width:8px;height:8px;border:0;border-radius:0;background:var(--cyan);box-shadow:0 0 12px color-mix(in srgb,var(--cyan) 62%,transparent)}
.dev-brand b{font:800 13px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.06em;color:var(--ink)}.dev-brand small{display:none}
.dev-nav{position:absolute;left:50%;gap:34px;margin:0;transform:translateX(-50%)}.dev-nav a{padding:31px 0 28px;color:var(--muted);font:700 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.17em}.dev-nav a:hover,.dev-nav a.active{color:var(--ink)}.dev-nav a.active::after{height:1px;background:var(--cyan)}
.dev-header-actions{gap:8px;margin-left:auto}.theme-button,.button,.account-button{border-radius:0;box-shadow:none!important;font:800 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.11em}
.theme-button{width:38px;height:38px;background:transparent;border-color:var(--line);color:var(--muted)}.button{min-height:42px;padding:12px 18px}.button.primary{background:var(--cyan);border:1px solid var(--cyan);color:#020609}.button.primary:hover{background:color-mix(in srgb,var(--cyan) 86%,white)}.button.outline,.button.secondary{background:transparent;border:1px solid var(--line);color:var(--ink)}.button.outline:hover,.button.secondary:hover{border-color:var(--cyan)}
.account-button{background:transparent;border:1px solid var(--line);color:var(--ink)}.account-avatar{border-radius:0;background:var(--cyan);color:#020609}.dev-footer{border-top:1px solid var(--line-soft);background:var(--bg);font-family:ui-monospace,SFMono-Regular,Consolas,monospace}

.forge40-home{overflow:hidden;background:var(--bg)}.forge40-hero{min-height:calc(100vh - 82px);display:flex;align-items:center;border-bottom:1px solid var(--line-soft)}.forge40-hero-inner{display:block;padding:96px 0 88px}.forge40-copy{width:min(100%,980px);margin:0 auto}
.forge40-kicker{display:flex;align-items:center;gap:12px;margin-bottom:44px;color:var(--muted);font:700 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.2em;text-transform:uppercase}.forge40-kicker i{width:32px;height:1px;background:var(--cyan)}.forge40-kicker span,.forge40-kicker b{font:inherit}.forge40-kicker b::before{content:"·";margin-right:12px}
.forge40-copy h1{margin:0;color:var(--ink);font:500 clamp(82px,12vw,170px)/.82 var(--font-sans);letter-spacing:-.085em;text-transform:uppercase}.forge40-copy>p{max-width:880px;margin:48px 0 0;color:var(--muted);font-size:clamp(18px,2vw,25px);line-height:1.45;letter-spacing:-.025em}.forge40-copy>p strong{color:var(--ink);font-weight:700}
.forge40-specs{display:grid;grid-template-columns:repeat(4,1fr);margin:66px 0 0;padding:27px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.forge40-specs>div{display:grid;gap:9px;padding-right:24px}.forge40-specs dt{color:var(--muted);font:700 8px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.18em}.forge40-specs dd{margin:0;color:var(--cyan);font:700 12px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}.forge40-specs dd.ok{color:var(--green)}
.forge40-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:52px}.forge40-actions .button{min-height:56px;padding:16px 28px}

.forge40-start{padding:116px 0}.forge40-section-intro{display:grid;grid-template-columns:200px minmax(0,1fr);gap:50px;align-items:start;margin-bottom:52px}.forge40-section-intro>span,.forge40-sandbox-copy>span,.forge40-final-cta>div:first-child>span{padding-top:9px;color:var(--cyan);font:700 9px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.18em}
.forge40-section-intro h2,.forge40-sandbox-copy h2{max-width:900px;margin:0;color:var(--ink);font:500 clamp(44px,6vw,78px)/.98 var(--font-sans);letter-spacing:-.065em;text-transform:uppercase}.forge40-section-intro>p{grid-column:2;max-width:650px;margin:0;color:var(--muted);line-height:1.65}
.forge40-start-layout{border-top:1px solid var(--line)}.forge40-start-layout>a{display:grid;grid-template-columns:210px minmax(0,1fr) 150px;gap:40px;align-items:center;min-height:180px;padding:28px 0;border-bottom:1px solid var(--line);color:var(--ink);transition:padding .22s,background .22s}.forge40-start-layout>a:hover{padding-left:18px;background:linear-gradient(90deg,color-mix(in srgb,var(--cyan) 5%,transparent),transparent 70%)}
.forge40-card-head{display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--muted)}.forge40-card-head>span{font:700 8px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em;text-transform:uppercase}.forge40-card-head i{color:var(--cyan);font-style:normal}.forge40-start-layout h3{margin:0 0 10px;font-size:clamp(24px,3vw,38px);line-height:1;letter-spacing:-.04em}.forge40-start-layout p{max-width:660px;margin:0;color:var(--muted);font-size:12px;line-height:1.6}.forge40-start-layout>a>b{justify-self:end;color:var(--cyan);font:700 8px ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;letter-spacing:.1em}

.forge40-route-section{padding:116px 0;background:var(--surface);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.forge40-section-intro.horizontal{grid-template-columns:200px minmax(0,1fr) minmax(260px,.45fr);gap:50px;align-items:end}.forge40-section-intro.horizontal>div{display:contents}.forge40-section-intro.horizontal>p{grid-column:3;padding-bottom:4px}
.forge40-route{border-top:1px solid var(--line)}.forge40-route article{display:grid;grid-template-columns:150px minmax(260px,.8fr) minmax(320px,1fr) auto;gap:28px;align-items:center;min-height:136px;padding:20px 0;border-bottom:1px solid var(--line)}.forge40-route-phase{color:var(--cyan);font:700 8px ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;letter-spacing:.15em}.forge40-route-copy h3{margin:0 0 8px;font-size:22px;letter-spacing:-.035em}.forge40-route-copy p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}
.forge40-route-result{display:grid;grid-template-columns:.7fr 1.3fr;gap:8px}.forge40-route-result small,.forge40-route-result b{min-height:64px;padding:13px;border:1px solid var(--line-soft);font-size:10px;line-height:1.45}.forge40-route-result small{color:var(--muted)}.forge40-route article>a{color:var(--cyan);font:700 8px ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;white-space:nowrap}

.forge40-sandbox-section{padding:128px 0}.forge40-sandbox-grid{display:grid;grid-template-columns:minmax(500px,.95fr) minmax(0,1fr);gap:90px;align-items:center}.forge40-build-panel{border:1px solid var(--line);background:var(--surface)}.forge40-build-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line);font:700 8px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em}.forge40-build-head b{color:var(--yellow)}.forge40-build-head b.online{color:var(--green)}
.forge40-build-command{display:grid;gap:10px;margin:22px;padding:22px;border:1px solid var(--line-soft);background:#020405}.forge40-build-command small{color:#696d75;font:700 8px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em}.forge40-build-command code{color:#4ce6ff;font:700 13px ui-monospace,SFMono-Regular,Consolas,monospace}.forge40-build-steps{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:11px;align-items:center;padding:4px 22px 24px}.forge40-build-steps>div{display:grid;gap:4px}.forge40-build-steps b{font-size:11px}.forge40-build-steps span{color:var(--muted);font-size:8px;line-height:1.4}.forge40-build-steps i{color:var(--cyan);font-style:normal}
.forge40-service-table{display:grid;grid-template-columns:1fr 1fr;margin:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.forge40-service-table>div{display:flex;justify-content:space-between;gap:12px;padding:14px 18px}.forge40-service-table>div:first-child{border-right:1px solid var(--line)}.forge40-service-table dt,.forge40-service-table dd{font:700 7px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.09em}.forge40-service-table dt{color:var(--muted)}.forge40-service-table dd{margin:0}.forge40-service-table dd.ok{color:var(--green)}.forge40-build-panel>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;color:var(--muted);font:700 8px ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase}.forge40-build-panel>a b{color:var(--cyan)}
.forge40-sandbox-copy>p{max-width:680px;margin:25px 0 0;color:var(--muted);line-height:1.7}.forge40-sandbox-copy ul{display:grid;gap:0;margin:32px 0 0;padding:0;border-top:1px solid var(--line);list-style:none}.forge40-sandbox-copy li{padding:15px 0;border-bottom:1px solid var(--line);color:var(--ink);font:700 9px ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;letter-spacing:.09em}.forge40-sandbox-copy li::before{content:"+";margin-right:12px;color:var(--cyan)}

.forge40-final-cta{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-top:20px;margin-bottom:92px;padding:70px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.forge40-final-cta h2{max-width:850px;margin:12px 0 0;font:500 clamp(38px,5vw,68px)/.98 var(--font-sans);letter-spacing:-.065em;text-transform:uppercase}.forge40-final-cta>div:last-child{display:flex;gap:10px;flex:none}
html[data-theme="light"] .forge40-build-command{background:#111417}

/* Typography and motion: concise, readable, and never blocks content. */
.dev-brand b,.dev-nav a,.theme-button,.button,.account-button,.forge40-kicker,.forge40-specs dt,.forge40-specs dd,.forge40-section-intro>span,.forge40-sandbox-copy>span,.forge40-final-cta>div:first-child>span,.forge40-card-head>span,.forge40-start-layout>a>b,.forge40-route-phase,.forge40-route article>a,.forge40-build-head,.forge40-build-command small,.forge40-build-command code,.forge40-service-table dt,.forge40-service-table dd,.forge40-build-panel>a,.forge40-sandbox-copy li{font-family:var(--font-mono)}
.forge-motion{opacity:0;transform:translate3d(0,18px,0);filter:none;transition:opacity .5s cubic-bezier(.2,.72,.2,1),transform .5s cubic-bezier(.2,.72,.2,1);transition-delay:var(--forge-motion-delay,0ms)}
.forge-motion.is-visible{opacity:1;transform:none;filter:none}
.forge40-copy.forge-motion{opacity:1;transform:none;transition:none}
.forge40-copy>*{animation:forge40-enter .58s cubic-bezier(.2,.72,.2,1) both}
.forge40-copy h1{animation-delay:.06s}.forge40-copy>p{animation-delay:.12s}.forge40-specs{animation-delay:.18s}.forge40-actions{animation-delay:.24s}
@keyframes forge40-enter{from{opacity:0;transform:translate3d(0,16px,0)}to{opacity:1;transform:none}}
.dev-nav a::after{transform:scaleX(0);transform-origin:left;transition:transform .22s ease}.dev-nav a:hover::after,.dev-nav a.active::after{transform:scaleX(1)}
.button span,.forge40-start-layout>a>b,.forge40-build-panel>a b{display:inline-block;transition:transform .2s ease}.button:hover span,.forge40-start-layout>a:hover>b,.forge40-build-panel>a:hover b{transform:translateX(4px)}
.forge40-start-layout>a .forge40-card-head i{transition:transform .22s ease,color .22s}.forge40-start-layout>a:hover .forge40-card-head i{transform:translate(3px,-3px);color:var(--ink)}
.forge40-route article{position:relative}.forge40-route article::before{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:1px;background:var(--cyan);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}.forge40-route article:hover::before{transform:scaleX(1)}
.forge40-specs dd.ok::before,.forge40-service-table dd.ok::before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;background:currentColor;box-shadow:0 0 10px color-mix(in srgb,currentColor 60%,transparent)}

@media(max-width:1100px){.dev-nav{position:absolute;left:15px;right:15px;top:68px;transform:none;margin:0;padding:6px;border-radius:0;background:var(--surface);gap:0}.dev-nav a{padding:15px 12px;border-bottom:1px solid var(--line-soft)}.dev-nav a:last-child{border-bottom:0}.forge40-copy{margin:0}.forge40-section-intro,.forge40-section-intro.horizontal{grid-template-columns:150px 1fr}.forge40-section-intro.horizontal>p{grid-column:2}.forge40-start-layout>a{grid-template-columns:170px 1fr}.forge40-start-layout>a>b{grid-column:2;justify-self:start}.forge40-route article{grid-template-columns:110px 1fr 1fr}.forge40-route article>a{grid-column:2/4}.forge40-sandbox-grid{grid-template-columns:1fr}.forge40-build-panel{width:min(760px,100%)}.forge40-final-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.container{width:min(var(--max),calc(100% - 34px))}.dev-header{height:68px;padding:0 17px;gap:12px}.dev-header-actions{margin-left:auto}.dev-header-actions .button{display:none}.forge40-hero{min-height:0}.forge40-hero-inner{padding:78px 0}.forge40-kicker{margin-bottom:30px}.forge40-kicker b{display:none}.forge40-copy h1{font-size:clamp(62px,21vw,100px)}.forge40-copy>p{margin-top:34px;font-size:17px}.forge40-specs{grid-template-columns:1fr 1fr;gap:24px 12px;margin-top:44px}.forge40-actions{display:grid;margin-top:40px}.forge40-actions .button{width:100%}.forge40-start,.forge40-route-section{padding:82px 0}.forge40-section-intro,.forge40-section-intro.horizontal{display:block}.forge40-section-intro>span,.forge40-section-intro.horizontal>div>span{display:block;margin-bottom:20px}.forge40-section-intro>p,.forge40-section-intro.horizontal>p{margin-top:20px}.forge40-section-intro h2,.forge40-sandbox-copy h2{font-size:44px}.forge40-start-layout>a{grid-template-columns:1fr;gap:20px;min-height:0;padding:28px 0}.forge40-start-layout>a>b{grid-column:auto;justify-self:start}.forge40-start-layout>a:hover{padding-left:0}.forge40-route article{grid-template-columns:1fr;gap:12px;padding:26px 0}.forge40-route article>a{grid-column:auto}.forge40-route-result{grid-template-columns:1fr}.forge40-sandbox-section{padding:88px 0}.forge40-sandbox-grid{gap:56px}.forge40-build-steps{grid-template-columns:1fr}.forge40-build-steps i{transform:rotate(90deg);justify-self:start}.forge40-service-table{grid-template-columns:1fr}.forge40-service-table>div:first-child{border-right:0;border-bottom:1px solid var(--line)}.forge40-final-cta{padding:52px 0}.forge40-final-cta>div:last-child{display:grid;width:100%}.forge40-final-cta .button{width:100%}}
@media(prefers-reduced-motion:reduce){.forge-motion,.forge-motion.is-visible{opacity:1;transform:none;transition:none}.forge40-copy>*{animation:none}.dev-nav a::after,.button span,.forge40-start-layout>a>b,.forge40-build-panel>a b,.forge40-start-layout>a .forge40-card-head i,.forge40-route article::before{transition:none}}
