@font-face{font-family:Manrope;src:url('/fonts/manrope.ttf')}*{box-sizing:border-box}body{margin:0;background:#f6f8fc;color:#18233a;font-family:Manrope,Arial,sans-serif;font-size:14px}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}input,select,textarea{width:100%;border:1px solid #dbe0eb;border-radius:10px;padding:13px;color:#18233a;background:white;min-height:46px}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:3px solid #dce7ff;border-color:#2b59ff}:focus-visible{outline:3px solid #668cff;outline-offset:3px}label{display:grid;gap:9px;font-size:12px;font-weight:750}label>span{font-weight:400;color:#6b778e}h1,h2,h3,h4,p{margin:0}p{line-height:1.7}h2{font-size:18px;letter-spacing:-.5px}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #e3e7ef;background:white}.brand{font-size:25px;font-weight:850;letter-spacing:-1.3px}.brand span{font-size:14px;letter-spacing:0;color:#8790a3;font-weight:500}.topbar nav{display:flex;align-items:center;gap:25px;font-size:12px;font-weight:700}.test-pill{background:#f0f3fa;padding:7px 11px;border-radius:7px;font-size:10px;letter-spacing:1px;color:#56627a}.builder-shell{max-width:1510px;margin:auto;padding:46px 5% 20px}.intro{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:36px}.eyebrow{font-size:10px;font-weight:850;letter-spacing:2px;color:#677389}.intro h1{font-size:44px;letter-spacing:-2.2px;line-height:1.1;margin:14px 0}.intro h1 span{color:#2b59ff}.intro p{max-width:560px;color:#6b778e;font-size:13px}.workspace-picker{min-width:250px;max-width:300px}.workspace-picker label{margin-bottom:10px}#worker-health{font-size:11px;line-height:1.6;margin-top:12px;color:#69768c}#worker-health small{display:block;padding-left:15px;font-size:10px}.health{display:inline-block;width:7px;height:7px;background:#d39125;border-radius:50%;margin-right:7px}.health.online{background:#2b59ff;box-shadow:0 0 0 3px #e0e8ff}.build-layout{display:grid;grid-template-columns:350px minmax(0,1fr);gap:20px;align-items:start}.input-card,.output-card{border:1px solid #e0e5ef;border-radius:17px;background:#fff;padding:24px;box-shadow:0 6px 25px #15295303}.section-heading{display:flex;gap:12px;align-items:center;padding-bottom:22px;border-bottom:1px solid #edf0f6;margin-bottom:22px}.section-heading p{font-size:11px;color:#798297;margin-top:5px}.number{font-size:12px;font-weight:800;color:#2b59ff;background:#edf2ff;border-radius:9px;display:grid;place-items:center;width:35px;height:35px;flex-shrink:0}#build-form{display:grid;gap:20px}#build-form input,#build-form textarea{font-size:12px}.upload-box{border:1px dashed #b6c8f2;border-radius:11px;padding:16px;background:#f8faff;text-align:center;cursor:pointer;gap:6px}.upload-box strong{font-size:12px;font-weight:650;color:#2b59ff;margin:6px 0}.upload-box small{font-size:10px;color:#72809a}.upload-box input{font-size:10px;padding:8px;margin-top:4px;background:white;min-height:auto}.input-note{font-size:10px;color:#788297;line-height:1.7}.primary{border:0;border-radius:10px;background:#2b59ff;color:white;padding:14px 18px;display:flex;justify-content:space-between;align-items:center;font-weight:750;font-size:12px;gap:15px;min-height:45px}.primary:hover{background:#1746ec}.primary span{font-size:19px}#builder-notice{font-size:12px;color:#3059a6;overflow-wrap:anywhere}#builder-notice:empty{display:none}#builder-notice.error{color:#bd2a4b}.source-thumbs:empty{display:none}.source-thumbs{display:flex;gap:8px;flex-wrap:wrap}.source-thumbs figure{margin:0;width:65px}.source-thumbs img{width:65px;height:90px;object-fit:cover;border-radius:8px;border:1px solid #e4e8ef}.source-thumbs figcaption{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.source-thumbs button{width:100%;font-size:11px}.empty-preview{min-height:490px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:25px;background:radial-gradient(ellipse at center,#f2f5ff,white 68%)}.empty-preview h3{font-size:22px;letter-spacing:-.7px;margin:27px 0 12px}.empty-preview p{font-size:12px;color:#74819a;max-width:340px}.empty-orbit{width:140px;height:140px;border:1px solid #e6eafa;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 24px #f7f9ff,0 0 0 25px #ecf0fb}.empty-orbit span{width:75px;height:75px;display:grid;place-items:center;background:#2b59ff;color:#d0ff44;border-radius:22px;font-size:44px;transform:rotate(-9deg);box-shadow:0 15px 30px #2b59ff25}.empty-chips{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;margin-top:25px}.empty-chips span{font-size:10px;border:1px solid #e5eaf4;padding:7px 10px;border-radius:20px;color:#687690;background:white}.job-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.job-heading small{font-size:10px;color:#7e899c}.status-pill{font-size:10px;background:#edf2ff;color:#2b59ff;padding:7px 9px;border-radius:6px;font-weight:700;white-space:nowrap}.status-pill.failed,.status-pill.cancelled{background:#fff0f3;color:#b62a4a}.status-pill.ready{background:#e9f4fe;color:#2456a4}.stage-list{list-style:none;display:flex;padding:0;margin:25px 0;gap:4px}.stage-list li{flex:1;font-size:9px;color:#8a94a7;position:relative;line-height:1.5}.stage-list li>span{display:grid;place-items:center;position:relative;background:#f0f2f7;border:1px solid #e4e8ef;border-radius:50%;width:25px;height:25px;margin-bottom:8px;z-index:1}.stage-list li:before{content:'';position:absolute;top:12px;left:25px;width:calc(100% - 20px);height:1px;background:#e4e8ef}.stage-list li:last-child:before{display:none}.stage-list .current{color:#2b59ff;font-weight:750}.stage-list .current>span{background:#2b59ff;color:white;border-color:#2b59ff;box-shadow:0 0 0 4px #edf2ff}.stage-list .complete{color:#405f9b}.stage-list .complete>span{background:#e6edff;border-color:#e6edff;color:#2b59ff}.working-note{background:#f7f9ff;color:#6a7b97;font-size:12px;padding:18px;border-radius:10px;margin:15px 0}.subtle{border:1px solid #dbe2ed;border-radius:8px;background:white;color:#4f6385;padding:9px 12px;font-size:12px}.error-box{background:#fff4f5;border:1px solid #f1dce1;border-radius:10px;padding:18px;font-size:12px;color:#9a2d49}.error-box p{margin:8px 0 12px;overflow-wrap:anywhere}.result-heading{border-top:1px solid #edf0f6;padding-top:22px}.result-heading h3{font-size:21px;margin-bottom:8px}.result-heading p{font-size:12px;color:#6b778e}.result-heading>small{display:block;font-size:10px;color:#8692a7;margin-top:7px}.preview-tabs{display:flex;justify-content:space-between;font-size:10px;color:#6f7c93;margin:25px 0 13px}.preview-tabs span:last-child{color:#2b59ff}.twin-preview{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);align-items:start;gap:14px}.preview-label{font-size:8px;color:#75829a;letter-spacing:1px;font-weight:750;margin-bottom:8px}.game-preview{--game-bg:#111d57;--game-surface:#213784;--game-primary:#ffd445;--game-accent:#ff579d;--game-text:#fffaf1;--game-button:#151e44;--game-radius:12px;background:var(--game-bg);color:var(--game-text);padding:14px;border-radius:14px;overflow:hidden;min-width:0}.phone-preview{border:5px solid #18233a;border-radius:25px;padding:11px}.game-top{display:flex;justify-content:space-between;gap:8px;font-size:8px;font-weight:800;line-height:1.5}.game-top span{overflow-wrap:anywhere}.game-top span:last-child{white-space:nowrap;color:var(--game-primary)}.game-hero{padding:23px 0 18px}.game-kicker{font-size:7px;letter-spacing:1px;font-weight:750;opacity:.75}.game-hero h3{font-size:20px;line-height:1.1;letter-spacing:-.5px;margin:8px 0}.game-hero p{font-size:9px;opacity:.8}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.phone-preview .product-grid{grid-template-columns:1fr}.game-product{position:relative;background:var(--game-surface);border-radius:var(--game-radius);padding:9px;display:flex;flex-direction:column;gap:6px;overflow:hidden;text-align:center}.game-product h4{font-size:10px;overflow-wrap:anywhere}.game-product>strong{font-size:9px}.game-product small{font-size:8px;color:var(--game-primary)}.coin-art{width:100%;height:80px}.coin-art svg{height:100%;max-width:100%}.product-badge{position:relative;font-size:7px;border-radius:4px;background:var(--game-accent);color:var(--game-button);padding:4px;align-self:center}.price{display:block;background:var(--game-primary);color:var(--game-button);font-weight:850;border-radius:6px;font-size:9px;padding:7px;margin-top:auto}.preview-foot{display:block;font-size:7px;text-align:center;opacity:.7;margin:15px 0 2px}.apply-box{margin-top:22px;padding:17px;border:1px solid #dce5ff;background:#f7f9ff;border-radius:12px;display:flex;gap:15px;align-items:center;justify-content:space-between}.apply-box strong{font-size:12px}.apply-box p{font-size:10px;color:#73809a;margin-top:5px}.apply-box .primary{white-space:nowrap;font-size:11px;padding:12px;flex-shrink:0}.event-details{margin-top:24px;font-size:10px;color:#78869c;border-top:1px solid #edf0f6;padding-top:15px;overflow-wrap:anywhere}.event-details summary{cursor:pointer}.event-details ol{list-style:none;padding:0;margin:15px 0}.event-details li{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:7px 0;border-bottom:1px solid #eff2f7}.history-section{margin-top:35px}.history-section h2{margin:8px 0 18px}.history-item{width:100%;display:flex;align-items:center;gap:20px;text-align:left;border:1px solid #e1e6ef;border-radius:10px;background:white;padding:15px 18px;margin-bottom:8px;color:#18233a}.history-item>span:first-child{flex:1}.history-item strong{font-size:12px}.history-item small{display:block;color:#8090a7;font-size:10px;margin-top:5px}.history-item.selected{border-color:#adc1ff}.history-empty{font-size:12px;color:#7a869b;padding:20px;background:white;border:1px dashed #d7dfed;border-radius:12px}.builder-footer{color:#8793a6;font-size:10px;text-align:center;line-height:1.8;padding:30px}.login-wrap{max-width:600px;margin:8vh auto;padding:25px}.login-card{padding:40px;margin-top:30px;background:white;border:1px solid #e1e6ef;border-radius:20px}.login-card h1{font-size:36px;letter-spacing:-1.5px;margin:15px 0}.login-card>p{color:#748198;font-size:13px}.login-card form{display:grid;gap:20px;margin:30px 0 20px}.login-card>small{color:#8793a6;font-size:10px}@media(min-width:1500px){.build-layout{grid-template-columns:380px minmax(0,1fr)}.game-hero h3{font-size:26px}.coin-art{height:95px}}@media(max-width:1050px){.builder-shell{padding:30px 3%}.build-layout{grid-template-columns:300px minmax(0,1fr)}.input-card,.output-card{padding:18px}.twin-preview{grid-template-columns:1fr}.twin-preview>div:first-child{display:none}.apply-box{flex-direction:column;align-items:stretch}.intro h1{font-size:38px}}@media(max-width:700px){.topbar{height:65px;padding:0 18px}.topbar nav{gap:12px}.test-pill{display:none}.brand{font-size:23px}.builder-shell{padding:28px 16px}.intro{display:block;margin-bottom:24px}.intro h1{font-size:37px;letter-spacing:-1.8px}.intro p{font-size:12px}.workspace-picker{max-width:none;margin-top:25px}.build-layout{grid-template-columns:1fr;gap:18px}.input-card,.output-card{padding:20px}.empty-preview{min-height:370px}.job-heading{align-items:start}.job-heading small{max-width:110px;text-align:right}.twin-preview{grid-template-columns:1fr}.game-hero h3{font-size:27px}.game-top{font-size:10px}.game-preview{padding:17px}.coin-art{height:100px}.game-product h4{font-size:13px}.game-product>strong{font-size:11px}.price{font-size:12px}.preview-foot{font-size:9px}.history-item{gap:8px;padding:13px}.history-item .status-pill{font-size:8px}.stage-list li{font-size:8px}.event-details li{grid-template-columns:1fr;gap:3px}.login-wrap{margin:3vh auto;padding:18px}.login-card{padding:25px}.login-card h1{font-size:31px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.game-preview{background:var(--game-gradient,var(--game-bg));font-family:var(--game-font,Manrope),sans-serif}.design-notes{font-size:11px;color:#6b778e;margin-top:10px}.design-notes summary{cursor:pointer;color:#2b59ff}.design-notes p{margin-top:10px}

/* Appside brand: the homepage's gaming typography, dark hero and crisp white canvas. */
:root{--brand-ink:#111014;--brand-night:#0e1030;--brand-pink:#ff2d87;--brand-lime:#c8ff1f}
body{background:#fff;color:var(--brand-ink);font-family:'Instrument Sans',Arial,sans-serif;font-size:15px}
.topbar{height:82px;background:var(--brand-night);color:#fff;border-bottom:1px solid #ffffff24;padding-inline:5%}
.brand{font-family:'Lilita One','Bricolage Grotesque',sans-serif;font-size:32px;font-weight:400;letter-spacing:-.5px}
.brand span{font-family:'IBM Plex Mono',monospace;font-size:12px;color:#c9cdeb}
.topbar nav{font-size:13px}.test-pill{background:transparent;border:1px solid #ffffff55;color:#e4e5f5;border-radius:4px}
.builder-shell{max-width:1510px;padding-top:0}
.intro{position:relative;isolation:isolate;padding-block:52px 56px;margin-bottom:40px;color:#fff;min-height:330px}
.intro:before{content:'';position:absolute;z-index:-1;inset:0 calc((100% - 100vw)/2);background:radial-gradient(ellipse at 85% 10%,#ff2d8720,transparent 48%),radial-gradient(ellipse at 65% 120%,#774cff22,transparent 55%),var(--brand-night)}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:1.7px;color:#575362}
.intro .eyebrow{color:#e3e0f2;border-block:1px dashed #ffffff44;display:inline-block;padding-block:9px}
.intro h1,.login-card h1{font-family:'Lilita One','Bricolage Grotesque',sans-serif;font-size:clamp(42px,4.6vw,68px);line-height:1;letter-spacing:-.5px;font-weight:400;margin-block:20px}
.intro h1 span{color:var(--brand-lime)}.intro p{color:#c9cdeb;font-size:15px;max-width:590px;line-height:1.55}
.workspace-picker{background:#ffffff09;border:1px solid #ffffff38;border-radius:12px;padding:22px;min-width:285px;max-width:310px}
.workspace-picker label{font-size:12px}#worker-health{color:#e1e0ef}#worker-health small{color:#bdbdd2}.health.online{background:var(--brand-lime);box-shadow:0 0 0 3px #c8ff1f16}
h2,.empty-preview h3,.result-heading h3,.history-section h2{font-family:'Lilita One','Bricolage Grotesque',sans-serif;font-weight:400;letter-spacing:0}h2{font-size:25px}
.build-layout{grid-template-columns:350px minmax(0,1fr);gap:28px}.input-card,.output-card{border:2px solid var(--brand-ink);border-radius:14px;box-shadow:5px 5px 0 var(--brand-ink);padding:26px;background:#fff}
.section-heading{border-bottom:1px solid #dedbe2;padding-bottom:22px}.section-heading p{color:#5d5767;font-size:12px}.number{border:1px solid var(--brand-ink);border-radius:7px;background:var(--brand-lime);color:var(--brand-ink);font-family:'IBM Plex Mono',monospace;box-shadow:2px 2px 0 var(--brand-ink)}
label{font-size:13px;color:inherit}input,select,textarea{border:1px solid #c8c4d0;border-radius:8px;background:#fff;color:var(--brand-ink)}#build-form input,#build-form textarea{font-size:13px}input:focus,textarea:focus,select:focus{outline:3px solid #ff2d8725;border-color:var(--brand-pink)}:focus-visible{outline-color:var(--brand-pink)}
.upload-box{background:#fff7fa;border:1px dashed #bd3370;border-radius:9px;padding:19px}.upload-box strong{color:#a71352}.upload-box small,.input-note{color:#635c6b}.input-note{font-size:11px}.upload-box input{border-color:#decbd3}
.primary{background:var(--brand-lime);color:var(--brand-ink);border:2px solid var(--brand-ink);box-shadow:4px 4px 0 var(--brand-pink);border-radius:9px;font-size:14px;min-height:50px;font-weight:700}.primary:hover{background:#b6ec0b}.primary:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--brand-pink)}
#builder-notice{color:#4b3557}.subtle{border:1px solid var(--brand-ink);color:var(--brand-ink);border-radius:7px}.status-pill{background:#f4f0f5;color:#33233c;border:1px solid #d6cbdc;border-radius:4px;font-family:'IBM Plex Mono',monospace;font-weight:500}.status-pill.ready,.status-pill.applied{background:#edf8ce;color:#273700;border-color:#b4ce73}
.stage-list li{color:#686170}.stage-list li:before{background:#dcd7df}.stage-list li>span{background:#fff;border-color:#bfb8c7}.stage-list .current{color:#a71352}.stage-list .current>span{background:var(--brand-pink);color:#fff;border-color:var(--brand-ink);box-shadow:0 0 0 4px #fff0f6}.stage-list .complete{color:#33233c}.stage-list .complete>span{background:var(--brand-lime);border-color:var(--brand-ink);color:var(--brand-ink)}
.working-note{background:#faf5f8;color:#564361;border:1px solid #e6dce6}.empty-preview{background:#fff;min-height:490px}.empty-orbit{border-color:#d4cbdc;box-shadow:0 0 0 24px #faf5fb,0 0 0 25px #e8ddec}.empty-orbit span{background:var(--brand-night);color:var(--brand-lime);border:2px solid var(--brand-ink);box-shadow:6px 6px 0 var(--brand-pink)}.empty-preview h3{font-size:30px}.empty-preview p{font-size:14px;color:#625a6b}.empty-chips span{color:#514958;border-color:#ccc5d1}
.result-heading h3{font-size:30px}.result-heading p{color:#5d5666;font-size:13px}.design-notes summary{color:#a71352}.preview-tabs{font-family:'IBM Plex Mono',monospace;color:#5e5368}.preview-tabs span:last-child{color:#a71352}.preview-label{color:#62566c}.apply-box{background:#fff;border:1px solid var(--brand-ink);border-radius:9px;border-left:5px solid var(--brand-pink)}.apply-box strong{font-size:15px}.apply-box p{font-size:12px;color:#625a6b}.apply-box .primary{font-size:12px}.event-details{color:#62596c}.history-section{margin-top:44px}.history-section h2{font-size:30px}.history-item{border:1px solid #c8c0ce;border-radius:8px}.history-item.selected{border:2px solid var(--brand-ink);box-shadow:3px 3px 0 var(--brand-ink)}.history-item strong{font-size:14px}.history-item small{color:#6a6174}.builder-footer{color:#6c6374;border-top:1px solid #e7e2eb;margin-top:35px}.login-card{border:2px solid var(--brand-ink);box-shadow:6px 6px 0 var(--brand-ink)}
@media(max-width:1050px){.build-layout{grid-template-columns:300px minmax(0,1fr);gap:22px}.input-card,.output-card{padding:20px}.intro h1{font-size:48px}.workspace-picker{min-width:245px}.intro{gap:24px}.intro p{font-size:14px}}
@media(max-width:700px){.topbar{height:70px;padding-inline:20px}.brand{font-size:29px}.builder-shell{padding-top:0}.intro{padding-block:32px 35px;margin-bottom:28px}.intro h1{font-size:44px}.intro p{font-size:14px}.workspace-picker{max-width:none;margin-top:25px;padding:17px}.build-layout{grid-template-columns:1fr;gap:26px}.input-card,.output-card{padding:19px;box-shadow:4px 4px 0 var(--brand-ink)}.section-heading h2{font-size:24px}.history-item strong{font-size:12px}.history-item .status-pill{font-size:8px}.empty-preview{min-height:380px}.apply-box{padding:14px}.login-card h1{font-size:38px}}
/* Keep the full-bleed hero inside the viewport, including scrollbar width. */
body{overflow-x:clip}
