:root{color:#172126;background:#f4f6f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{border:0}input,select{width:100%;min-height:40px;border:1px solid #cbd8d4;border-radius:8px;padding:8px 10px;color:#172126;background:#fff}.app-shell{width:min(1480px,100%);margin:0 auto;padding:22px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.setup-topbar{justify-content:flex-start}.topbar h1,.panel h2,.status-banner h2,.stage-heading h3{margin:0;letter-spacing:0}.topbar h1{font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.04}.eyebrow{margin:0 0 4px;color:#617179;font-size:.75rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.topbar-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}.primary-button,.ghost-button,.choice-button,.small-button,.icon-button{min-height:40px;border:1px solid transparent;border-radius:8px;cursor:pointer;font-weight:850;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease,background .15s ease}.primary-button{padding:0 16px;color:#fff;background:#176b55}.ghost-button,.small-button,.icon-button{color:#223036;background:#fff;border-color:#cad5d2}.small-button,.small-primary{min-height:34px;padding:0 10px;font-size:.82rem}.primary-button:disabled,.ghost-button:disabled,.choice-button:disabled,.small-button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.55}.primary-button:not(:disabled):hover,.ghost-button:not(:disabled):hover,.choice-button:not(:disabled):hover,.small-button:not(:disabled):hover,.icon-button:not(:disabled):hover{box-shadow:0 8px 18px #1e363e1f;transform:translateY(-1px)}.audio-control{display:flex;gap:8px;align-items:center;min-height:42px;padding:6px;border:1px solid #d7dfdc;border-radius:8px;background:#fff}.audio-control label{display:grid;gap:3px;width:120px}.audio-control span{overflow:hidden;color:#68797f;font-size:.68rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.audio-control input{min-height:auto;padding:0;border:0;background:transparent;accent-color:#176b55}.career-bar{display:grid;grid-template-columns:1.1fr repeat(6,minmax(92px,1fr)) minmax(180px,1.2fr);gap:1px;overflow:hidden;border:1px solid #d7dfdc;border-radius:8px;background:#d7dfdc}.stat,.launch-progress{min-height:76px;padding:10px 12px;background:#fff}.stat span,.metric span,.policy-row small,.lead-card small,.policy-card small,.source-card small,.requirement span,.requirement small,.points-meter span{display:block;color:#68797f;font-size:.76rem;font-weight:800}.stat strong,.launch-progress strong{display:block;margin-top:8px;font-size:1.02rem;line-height:1.12;word-break:break-word}.stat.good strong{color:#176b55}.stat.warn strong{color:#b94c1b}.launch-progress span{display:block;color:#68797f;font-size:.76rem;font-weight:800}.progress-track{height:10px;overflow:hidden;margin-top:8px;border-radius:999px;background:#e5ebe8}.progress-fill{height:100%;min-width:3px;border-radius:inherit;background:linear-gradient(90deg,#176b55,#3f7fc2)}.game-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,380px);gap:16px;align-items:start;margin-top:16px}.desk-stack,.side-stack{display:grid;gap:16px;min-width:0}.bottom-grid{display:grid;grid-column:1 / -1;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr) minmax(280px,.9fr);gap:16px;align-items:start}.panel,.status-banner,.setup-panel{min-width:0;border:1px solid #d7dfdc;border-radius:8px;background:#fff}.panel{padding:16px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-heading h2{font-size:1.05rem;line-height:1.2}.cost-pill,.origin-pill{flex:0 0 auto;padding:6px 10px;border:1px solid #cbd8d4;border-radius:999px;color:#25464d;background:#eef4f2;font-size:.78rem;font-weight:850;white-space:nowrap}.origin-pill.company{border-color:#c5d4e6;color:#2c5d90;background:#eef5ff}.origin-pill.personal{border-color:#c5dccb;color:#176b55;background:#eff8f2}.status-banner{margin-top:16px;padding:16px;border-left:6px solid #3f7fc2}.status-banner.won{border-left-color:#176b55}.status-banner.cashout,.status-banner.expired{border-left-color:#b94c1b}.status-banner p{margin:6px 0 0;color:#46565d;line-height:1.5}.event-banner{border-left-color:#8a5a17}.choice-list,.source-list,.card-list,.planned-list,.policy-list,.log-list,.requirement-list{display:grid;gap:10px}.choice-list{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.choice-button{min-height:44px;padding:10px 12px;color:#172126;text-align:left;background:#f7faf9;border-color:#b8c8c4}.stage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.stage-column,.policy-action-list{min-width:0}.stage-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #edf1ef}.stage-heading h3{font-size:.95rem}.stage-heading span{color:#68797f;font-size:.78rem;font-weight:900}.lead-card,.policy-card,.source-card{display:grid;gap:10px;min-width:0;padding:12px;border:1px solid #d7dfdc;border-radius:8px;background:#f9fbfa}.lead-card.company{border-left:4px solid #3f7fc2}.lead-card.personal{border-left:4px solid #176b55}.card-title-row,.card-footer,.policy-card,.source-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.lead-card strong,.policy-card strong,.source-card strong,.policy-row strong{display:block;margin-bottom:3px}.signal-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.signal-row span{min-width:0;padding:6px;border:1px solid #d7dfdc;border-radius:6px;background:#fff}.signal-row strong{margin:2px 0 0;font-size:.92rem}.card-footer>strong{color:#176b55}.button-pair{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.policy-card{grid-template-columns:minmax(0,1fr) auto auto}.policy-meta{text-align:right}.policy-meta span{color:#176b55;font-weight:900}.source-card{align-items:start}.source-card p,.career-copy p,.result-copy{margin:0;color:#33444b;font-size:.88rem;line-height:1.45}.source-card em{display:block;margin-top:6px;color:#8a5a17;font-size:.78rem;font-style:normal;font-weight:850}.source-card.locked{background:#f1f3f3}.points-meter{display:grid;gap:6px;margin-bottom:12px}.planned-list article{display:grid;grid-template-columns:32px 1fr;gap:8px;align-items:start;padding:8px 0;border-bottom:1px solid #edf1ef}.planned-list span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;color:#fff;background:#176b55;font-size:.78rem;font-weight:900}.planned-list p{margin:3px 0 0;color:#33444b;line-height:1.35}.tray-summary,.result-grid,.setup-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.tray-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.metric{min-height:70px;padding:10px;border:1px solid #d7dfdc;border-radius:8px;background:#f9fbfa}.metric strong{display:block;margin-top:7px;font-size:1rem;word-break:break-word}.career-copy{display:grid;gap:12px}.requirement-list{gap:8px}.requirement{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #edf1ef}.requirement:last-child{border-bottom:0}.requirement strong{color:#b94c1b;font-size:.88rem}.requirement.met strong{color:#176b55}.policy-row,.log-entry{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;padding:10px 0;border-bottom:1px solid #edf1ef}.policy-row:last-child,.log-entry:last-child{border-bottom:0}.policy-row span{flex:0 0 auto;color:#176b55;font-size:.82rem;font-weight:900}.log-list{max-height:380px;overflow:auto;padding-right:4px}.log-entry{justify-content:flex-start}.log-entry span{flex:0 0 38px;color:#68797f;font-size:.78rem;font-weight:900}.log-entry p{margin:0;color:#33444b;line-height:1.45}.log-entry.event p{color:#2c5d90}.log-entry.milestone p{color:#176b55;font-weight:850}.empty-copy{margin:0;color:#68797f;line-height:1.45}.setup-panel{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(320px,1.1fr);gap:24px;align-items:start;padding:22px}.setup-copy h2{max-width:680px;margin:0;font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.12}.setup-copy p:last-child{max-width:620px;margin:12px 0 0;color:#46565d;line-height:1.5}.setup-form{display:grid;gap:14px}.field{display:grid;gap:7px}.field span{color:#68797f;font-size:.78rem;font-weight:850}@media(max-width:1180px){.career-bar{grid-template-columns:repeat(4,minmax(0,1fr))}.game-grid,.bottom-grid{grid-template-columns:1fr}.bottom-grid{grid-column:auto}}@media(max-width:880px){.stage-grid,.account-grid,.choice-list,.setup-panel{grid-template-columns:1fr}}@media(max-width:680px){.app-shell{padding:16px}.topbar{align-items:stretch;flex-direction:column}.topbar-actions,.audio-control{width:100%}.topbar-actions>button,.audio-control label{flex:1 1 0}.career-bar,.tray-summary,.result-grid,.setup-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.card-title-row,.card-footer,.policy-card,.source-card,.requirement{grid-template-columns:1fr}.button-pair,.policy-meta{justify-content:flex-start;text-align:left}}@media(max-width:460px){.career-bar,.tray-summary,.tray-actions,.result-grid,.setup-summary{grid-template-columns:1fr}}
