:root{--paper:#f5f1e8;--ink:#282720;--line:#d4d0c5;--orange:#ff6d3b;--lime:#d9f78a;--muted:#77766c}*{box-sizing:border-box}body{margin:0;background:var(--paper);font-family:Arial,Helvetica,sans-serif;color:var(--ink)}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #8c491e;outline-offset:4px}header{padding:23px 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.brand{text-decoration:none;color:var(--ink);font-size:27px;font-weight:900;letter-spacing:-1.5px}.brand span{color:var(--orange)}.header-tag,.eyebrow,.cell-header,.footnote,.receipt,.result-top,.closing,.allocation,footer{font-family:monospace}.header-tag{font-size:10px;letter-spacing:.5px}main{max-width:1300px;margin:auto;padding:38px 5vw}.intro{position:relative;margin-bottom:30px}.eyebrow{font-size:10px;color:var(--muted);letter-spacing:.6px;margin:0 0 17px}h1{font-size:clamp(44px,5.5vw,76px);line-height:.98;letter-spacing:-3.5px;margin:0 0 22px;font-weight:900}h1 span{position:relative}h1 span:after{content:"";position:absolute;bottom:1px;left:0;right:0;height:10px;background:var(--orange);z-index:-1}.lede{position:absolute;right:0;bottom:10px;font-size:16px;line-height:1.55;color:var(--muted);margin:0}.game{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);border:1px solid var(--ink);background:white}.inputs{border-right:1px solid var(--ink)}.cell-header{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;border-bottom:1px solid var(--line);font-size:10px;color:var(--muted);min-height:46px}.triangle{color:var(--orange);font-size:14px}.input-body{padding:30px}.input-body>label{font-size:20px;font-weight:800}.money{display:flex;align-items:center;border-bottom:2px solid var(--ink);margin-top:24px;padding-bottom:12px;font-size:50px;font-weight:800;letter-spacing:-2px}.money span{color:var(--orange);margin-right:8px}.money input{font-weight:800;font-size:50px;letter-spacing:-2px;min-width:0;width:100%;border:0;background:transparent;color:var(--ink);outline-offset:1px}.money input::placeholder{color:#c8c6be}#budget-help{font-size:11px;line-height:1.5;color:var(--muted);margin:12px 0 24px}.spin-button{width:100%;border:1px solid var(--ink);background:var(--orange);padding:17px;font-size:16px;font-weight:800;display:flex;justify-content:space-between;min-height:58px;box-shadow:4px 4px 0 var(--ink)}.spin-button:hover{background:#ff8054}.spin-button:disabled{opacity:.65;cursor:wait}#error{font-size:12px;color:#ab2f1b;margin:12px 0 0;min-height:15px}.footnote{font-size:10px;color:var(--muted);margin:3px 0 25px}.receipt{border:1px dashed var(--line);padding:18px;transform:rotate(-2deg);background:#faf9f4;font-size:11px;line-height:1.8}.receipt>div{font-size:10px;border-bottom:1px solid var(--line);padding-bottom:8px;font-weight:bold}.receipt p{margin:10px 0}.receipt>span{font-size:8px;color:var(--muted)}.strike{text-decoration:line-through}.wheel-section{min-width:0}.wheel-stage{position:relative;width:min(100%,500px);margin:18px auto 0;padding:16px 22px 0}.wheel-stage canvas{display:block;width:100%;height:auto;border-radius:50%;border:5px solid var(--ink);box-shadow:5px 6px 0 #2827201a}.pointer{position:absolute;top:3px;left:calc(50% - 16px);border-left:16px solid transparent;border-right:16px solid transparent;border-top:33px solid var(--ink);z-index:2;filter:drop-shadow(0 2px 0 #fff)}.hub{position:absolute;top:calc(50% + 8px);left:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;border:3px solid var(--ink);background:var(--paper);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:900;box-shadow:3px 3px 0 #28272020}.hub span{color:var(--orange)}.wheel-status{font-family:monospace;font-size:11px;line-height:1.5;text-align:center;min-height:38px;padding:0 16px;margin:14px 0 12px}.result{margin-top:24px;border:1px solid var(--ink);background:var(--lime)}[hidden]{display:none!important}.result-top{padding:14px 20px;border-bottom:1px solid #28272030;display:flex;justify-content:space-between;gap:10px;font-size:10px}.result-stamp{font-weight:bold}.result-main{padding:26px;display:flex;align-items:center;justify-content:space-between;gap:26px}.allocation{font-size:12px;margin:0 0 13px}h2{font-size:44px;letter-spacing:-2px;line-height:1.05;margin:0 0 16px}h2 span{color:#56652e}.punchline{font-size:14px;line-height:1.6;max-width:460px;margin:0}.result-actions{min-width:230px;display:flex;flex-direction:column;gap:10px}.result-actions button{background:#fff;border:1px solid var(--ink);padding:15px;font-size:12px;text-align:left;font-weight:700;min-height:46px}.result-actions span{font:10px monospace;min-height:20px}.closing{display:flex;align-items:center;border:1px solid var(--line);margin-top:22px;font-size:10px;color:var(--muted)}.cell-label{padding:16px;border-right:1px solid var(--line);white-space:nowrap}.closing p{padding:12px 16px;margin:0;line-height:1.6}footer{display:flex;justify-content:space-between;gap:20px;font-size:9px;color:var(--muted);border-top:1px solid var(--line);padding:22px 5vw}@media(max-width:760px){header{padding:20px}.header-tag{display:none}main{padding:30px 18px}.eyebrow{font-size:9px;line-height:1.7;max-width:300px}h1{font-size:52px;letter-spacing:-2.5px}.lede{position:static;font-size:14px;margin-top:20px}.game{display:flex;flex-direction:column}.inputs{border-right:0;border-bottom:1px solid var(--ink)}.input-body{padding:22px}.input-body>label{font-size:18px}.money{margin-top:15px}.money,.money input{font-size:43px}.receipt{display:none}.footnote{margin-bottom:0}.wheel-stage{margin-top:16px;padding:16px 14px 0;max-width:420px}.wheel-stage canvas{border-width:4px}.hub{width:62px;height:62px;font-size:28px}.cell-header{padding:13px 14px;font-size:9px}.cell-header>span:last-child{font-size:8px}.wheel-status{font-size:10px;margin-bottom:15px}.result-top{flex-direction:column;padding:14px;font-size:9px}.result-main{padding:22px;flex-direction:column;align-items:stretch;gap:22px}h2{font-size:39px}.punchline{font-size:13px}.allocation{font-size:11px}.closing{align-items:stretch}.cell-label{padding:14px 9px}.closing p{padding:11px;font-size:9px}footer{flex-direction:column;padding:20px 18px;gap:10px;font-size:8px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.cfo-card{margin-top:24px;border:1px solid var(--line);background:#faf9f4;padding:16px}.cfo-heading{font:700 11px monospace;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:11px}.cfo-heading span{color:var(--orange)}.cfo-intro{font-size:12px;line-height:1.5;color:var(--muted);margin:12px 0}.cfo-card textarea{display:block;width:100%;height:260px;resize:vertical;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;background:transparent;color:var(--ink);font:12px/1.65 Arial,Helvetica,sans-serif;border-radius:0}.cfo-card button{margin-top:13px;width:100%;padding:13px;background:var(--ink);color:white;border:1px solid var(--ink);font-size:12px;font-weight:bold;text-align:left;min-height:44px}.cfo-card button:hover{background:#45443a}#cfo-status{display:block;font:10px/1.5 monospace;min-height:18px;margin-top:8px}.study-link{display:inline-block;font-size:10px;color:var(--muted);text-underline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.cfo-card{margin-top:22px}.cfo-card textarea{height:240px}}

#cfo-card{padding:24px;max-width:760px;margin:24px auto 0}#cfo-card textarea{height:350px;font-size:13px}@media(max-width:760px){#cfo-card{padding:20px}#cfo-card textarea{height:360px}}

.cfo-prompt{position:fixed;z-index:10;bottom:max(20px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(460px,calc(100% - 36px));display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--lime);border:1px solid var(--ink);padding:14px 18px;box-shadow:4px 4px 0 var(--ink)}.cfo-prompt>div{min-width:0}.cfo-prompt span{display:block;font:9px monospace;margin-bottom:6px}.cfo-prompt button{border:0;background:none;color:var(--ink);padding:0;min-height:32px;font-size:17px;font-weight:800;text-align:left}.cfo-prompt #dismiss-cfo{min-width:32px;text-align:center;font-size:25px;font-weight:400}#cfo-card{scroll-margin-top:20px}@media(max-width:760px){.cfo-prompt{padding:12px 14px;bottom:max(16px,env(safe-area-inset-bottom))}.cfo-prompt button{font-size:15px}}

.budget-wrap{position:relative;flex:1;min-width:0;overflow:hidden}.money .budget-wrap input{display:block;position:relative;z-index:1;color:transparent;caret-color:var(--ink);padding:2px;line-height:normal}.money .budget-wrap input::selection{background:#ff6d3b44;color:var(--ink)}#budget-display{position:absolute;left:2px;top:2px;white-space:pre;pointer-events:none;font-size:50px;font-weight:800;letter-spacing:-2px;line-height:normal;color:var(--ink)}.money #budget-display .orange-comma{color:var(--orange);margin:0}@media(max-width:760px){#budget-display{font-size:43px}}
