:root{--bg: #14100c;--panel: #221a12;--line: #3a2e22;--ink: #f3ece2;--dim: #b09a82;--accent: #8a6a4a;--accent2: #c79b6d;--good: #5fb98a;--bad: #d6736e;--gold: #d9b06a}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:radial-gradient(900px 560px at 50% -8%,#241a12,var(--bg));color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;display:flex;justify-content:center;-webkit-user-select:none;user-select:none}#app{width:100%;max-width:540px;padding:12px 12px 30px}header{text-align:center;margin-bottom:6px}h1{margin:0;font-size:30px;letter-spacing:8px;font-weight:800;color:var(--accent2)}.sub{margin:3px 0 0;color:var(--dim);font-size:13px}.bar{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;align-items:center;margin:12px 0}.seg{display:inline-flex;background:var(--panel);border:1px solid var(--line);border-radius:999px;overflow:hidden}.seg button{background:none;border:none;color:var(--dim);padding:6px 15px;font:600 13px system-ui;cursor:pointer}.seg button.active{background:var(--accent);color:#1a120a}.btn{background:var(--panel);border:1px solid var(--line);color:var(--ink);padding:7px 15px;border-radius:999px;font:700 13px system-ui;cursor:pointer}.btn:hover{border-color:var(--accent2)}.btn.primary{background:var(--accent);color:#1a120a;border-color:var(--accent)}.btn:disabled{opacity:.45;cursor:default}.scoreboard{display:flex;gap:10px;justify-content:center;margin:10px 0 8px}.readout{background:#0e0b07;border:1px solid var(--line);border-radius:8px;padding:6px 14px;font:800 18px ui-monospace,monospace;color:var(--accent2);min-width:96px;text-align:center}.readout span{color:var(--dim);font-size:11px;display:block;font-weight:600;letter-spacing:.5px}.readout b.neg,b.neg{color:var(--bad)}.freedom{position:relative;height:22px;background:#0e0b07;border:1px solid var(--line);border-radius:999px;overflow:hidden;margin:6px auto 4px;max-width:460px}.freedom-fill{height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .25s ease}.freedom-fill.full{background:linear-gradient(90deg,var(--good),#8fe0b3)}.freedom span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:700 12px system-ui;color:var(--ink);text-shadow:0 1px 2px #000}.metas{display:flex;gap:14px;justify-content:center;color:var(--dim);font:600 12px system-ui;margin:4px 0 10px;flex-wrap:wrap}.stage{position:relative}.sech{margin:14px 0 6px;font-size:14px;letter-spacing:1px;color:var(--accent2);text-transform:uppercase}.sech small{color:var(--dim);font-weight:600}.market{display:grid;grid-template-columns:1fr 1fr;gap:8px}@media(max-width:420px){.market{grid-template-columns:1fr}}.card-asset{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 11px;color:var(--ink);cursor:pointer;display:flex;flex-direction:column;gap:8px}.card-asset:hover:not(:disabled){border-color:var(--accent2);transform:translateY(-1px)}.card-asset:disabled{opacity:.5;cursor:default}.ca-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.ca-name{font-weight:700;font-size:14px}.ca-cat{font-size:10px;padding:2px 7px;border-radius:999px;font-weight:700;letter-spacing:.3px}.cat-real-estate{background:#2c3a4d;color:#9fc1e6}.cat-business{background:#3d2c4d;color:#cba6e6}.cat-paper{background:#2c4d3a;color:#9fe6c1}.cat-side-hustle{background:#4d3f2c;color:#e6cf9f}.ca-bot{display:flex;align-items:baseline;gap:10px;font:700 13px ui-monospace,monospace}.ca-cost{color:var(--ink)}.ca-inc{color:var(--good)}.ca-yld{margin-left:auto;color:var(--dim);font-size:11px}.actions{display:flex;justify-content:center;margin:12px 0 4px}#stepbtn{padding:10px 28px;font-size:15px}.assets{display:flex;flex-direction:column;gap:5px}.owned{display:flex;justify-content:space-between;background:#0e0b07;border:1px solid var(--line);border-radius:7px;padding:6px 11px;font-size:13px}.o-name{color:var(--ink)}.o-inc{color:var(--good);font:700 12px ui-monospace,monospace}.empty{color:var(--dim);font-size:13px;text-align:center;padding:8px;margin:0}.overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#080604d1;backdrop-filter:blur(3px);z-index:10}.overlay.hidden{display:none}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px 28px;text-align:center;max-width:340px}.card h2{margin:0 0 6px;font-size:24px;color:var(--gold)}.card p{margin:6px 0;color:var(--dim);font-size:14px;line-height:1.5}.card p b{color:var(--ink)}.card .row{display:flex;gap:8px;justify-content:center;margin-top:16px}.hint{text-align:center;color:var(--dim);font-size:12px;margin-top:18px;line-height:1.6}.hint b{color:var(--accent2)}
