:root{color-scheme:dark;--bg:#153b32;--panel:#102c26;--ink:#fff9e9;--muted:#d6ddcc;--gold:#f1cc78;--line:#607366;--paper:#f8f2e4;--paper-ink:#16382e;--paper-muted:#53675b;--red:#d8583e;--display:Helvetica,Arial,sans-serif;--body:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:20px/1.55 var(--body);background-image:url("/assets/paper-grain-v59.svg"),radial-gradient(ellipse at 85% 10%,#c1cf9d17,transparent 45%);transition:background-color .3s;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
}body[data-mode=writer]{--bg:#302628;--panel:#251d20;--paper:#f6ecdf;--paper-ink:#39292f;--paper-muted:#6a565c;--gold:#f0c394;--line:#81686a}body[data-mode=pool]{--bg:#103c40;--panel:#092c30;--paper:#edf1df;--paper-ink:#12383a;--paper-muted:#526766;--gold:#f0d07d;--line:#59817c}body[data-mode=custom]{--bg:#273449;--panel:#1b2638;--paper:#edf0e8;--paper-ink:#223248;--paper-muted:#59697a;--gold:#f1cc78;--line:#738195}a{color:inherit}button,input,textarea{font-family:var(--display)}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}button,a,input,textarea{touch-action:manipulation}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.wheel :focus-visible,.custom-panel :focus-visible{outline-color:#956400}.skip{position:absolute;top:8px;left:-999px;z-index:5;background:var(--paper);color:var(--paper-ink);padding:12px}.skip:focus{left:8px}header{min-height:110px;background:#050505;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px max(24px,calc((100vw - 1180px)/2));border-bottom:1px solid #766747}.brand{display:block;text-decoration:none}.brand img{display:block;width:235px;height:auto}.brand>span{display:block;color:#fff9e9;font:700 11px/1.4 var(--display);letter-spacing:.25em;margin-top:7px}.count{display:inline-grid;place-items:center;min-width:27px;height:27px;border-radius:50%;background:#f1cc78;color:#16382e;margin-left:8px}main{max-width:1280px;padding:54px 48px 24px;margin:auto}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:50px}.hero-copy{padding:20px 0}.eyebrow{font:700 12px/1.5 var(--display);letter-spacing:.19em;color:var(--gold);margin:0 0 14px}h1,h2,h3{font-family:var(--display);text-wrap:balance}h1{font-size:clamp(42px,5.2vw,70px);line-height:1.04;letter-spacing:-.055em;margin:0 0 24px}h1 span,.custom h2 span{color:var(--gold)}.lede{font-size:25px;line-height:1.4;margin:0 0 18px}.hero-note{font-size:20px;line-height:1.6;color:var(--muted)}.text-link{font:700 16px/1.5 var(--display);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:6px;display:inline-flex;gap:25px;margin-top:10px}.text-link span{color:var(--gold);font-size:24px}.hero-instrument{position:relative;border:1px solid var(--line);border-radius:160px 160px 10px 10px;padding:32px 28px 24px;background:linear-gradient(130deg,#fff9e908,transparent);max-width:440px;width:100%;justify-self:end}.instrument-top{display:flex;justify-content:space-between;font:700 10px/1.5 var(--display);letter-spacing:.17em;color:var(--muted);padding:30px 18px 8px}.idea-dial svg{display:block;width:100%;overflow:visible}.dial-rim,.dial-track,.dial-spoke{fill:none;stroke:var(--gold);stroke-width:1}.dial-track{stroke:var(--line);stroke-dasharray:1 8;stroke-width:2}.dial-spoke{opacity:.6}.dial-dot{fill:var(--gold)}.dial-center{fill:var(--panel);stroke:var(--line)}.dial-six{fill:var(--gold);font:600 64px var(--body);text-anchor:middle}.dial-caption{fill:var(--ink);font:700 10px var(--display);letter-spacing:2px;text-anchor:middle}.dial-direction{font-size:8px;letter-spacing:1px;fill:var(--muted)}.dial-label{fill:var(--ink);font:700 11px var(--display);text-anchor:middle;dominant-baseline:middle}.dial-rotor{transform-origin:200px 200px}.idea-dial.is-spinning .dial-rotor{animation:dial-spin .7s cubic-bezier(.15,.8,.25,1)}.instrument-caption{text-align:center;font-size:19px;line-height:1.3;margin:4px 0 0;color:var(--muted)}.instrument-caption em{color:var(--gold)}.mode-bar{margin:44px 0 26px}.modes{display:flex;flex-wrap:wrap;gap:10px}.mode{border:1px solid var(--line);border-radius:4px;background:var(--panel);color:var(--ink);font:700 16px/1.4 var(--display);padding:14px 22px;min-height:50px}.mode.active{background:var(--gold);color:var(--paper-ink);border-color:var(--gold)}.mode:hover{border-color:var(--gold)}.workspace{position:relative;background:var(--panel);padding:32px;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:8px;box-shadow:0 22px 52px #0003;scroll-margin-top:22px}.workspace-head{display:flex;justify-content:space-between;align-items:center;gap:30px}.workspace h2,.custom h2{font-size:clamp(30px,3vw,44px);line-height:1.1;letter-spacing:-.035em;margin:0 0 14px}.workspace-head p:not(.eyebrow){max-width:620px;font-size:20px;color:var(--muted);margin:0}.primary,.ghost{min-height:48px;padding:13px 20px;border:1px solid var(--line);border-radius:4px;font:700 15px/1.4 var(--display);background:transparent;color:var(--ink);transition:background .15s,transform .15s}.primary{background:var(--gold);color:#192d27;border-color:var(--gold)}.primary:hover{background:#ffe3a1;transform:translateY(-1px)}.ghost:hover{border-color:var(--gold);background:#fff9e909}.primary>span{font-size:22px;vertical-align:middle;margin-right:6px}.workspace-head .primary{flex:none}.wheel-guide{font:15px/1.5 var(--display);color:var(--muted);margin:22px 0 14px}.wheels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;counter-reset:wheels;margin:0 0 24px}.wheel{position:relative;min-width:0;min-height:216px;background:var(--paper);color:var(--paper-ink);padding:20px;border-radius:6px;display:flex;flex-direction:column;border:2px solid transparent;box-shadow:0 7px 0 #0002;overflow:hidden}.wheel::after{content:'';position:absolute;width:90px;height:90px;border:1px solid #a88b5340;border-radius:50%;right:-18px;top:-35px;pointer-events:none}.wheel.locked{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold),0 7px 0 #0002}.wheel-label{font:700 13px/1.4 var(--display);letter-spacing:.07em;color:var(--paper-muted)}.wheel-value{font:700 clamp(23px,2.3vw,29px)/1.18 var(--display);letter-spacing:-.025em;margin:22px 0 20px;overflow-wrap:anywhere;flex:1}.wheel-actions{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #7e8a742f;padding-top:10px}.mini{min-height:44px;border:1px solid #89928177;border-radius:3px;background:transparent;color:var(--paper-ink);font:700 13px/1.3 var(--display);padding:10px}.mini:hover{background:#ddc99844}.mini.on{background:var(--paper-ink);color:var(--paper);border-color:var(--paper-ink)}.wheel.is-spinning .wheel-value{animation:value-in .32s ease}.controls{display:flex;flex-wrap:wrap;gap:12px}.wide{flex:1;text-align:left;display:flex;justify-content:space-between;align-items:center}.status{font:15px/1.5 var(--display);color:var(--gold);margin:12px 0 0;min-height:23px}.development{margin-top:20px;padding:28px;background:linear-gradient(120deg,#fff9e909,transparent);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:0 6px 6px 0;scroll-margin-top:24px}.development h3{font-size:30px;line-height:1.2;letter-spacing:-.025em;margin:0 0 16px}.development>p:not(.eyebrow){font-size:21px;line-height:1.65;margin:0;max-width:75ch}.moves{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.moves span{font:15px/1.5 var(--display);color:var(--muted);border-top:1px solid var(--line);padding-top:10px;margin-right:12px}.custom{padding:64px 0 40px}.custom-intro{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.custom-intro p:not(.eyebrow){margin:0 0 20px;font-size:21px;color:var(--muted)}.custom-intro .storage-note{font:14px/1.5 var(--display);margin:12px 0 0}.custom-panel{margin-top:30px;background:var(--paper);color:var(--paper-ink);padding:32px;border-radius:6px;color-scheme:light}.custom-panel h3{font-size:28px;margin:0 0 12px}.custom-panel p{font-size:18px;line-height:1.5}.custom-panel label{display:block;font:700 16px/1.5 var(--display);margin:14px 0}.custom-panel input,.custom-panel textarea{display:block;width:100%;font:18px/1.5 var(--display);margin-top:7px;padding:12px;background:#fffdf7;color:#17382e;border:1px solid #758471;border-radius:3px}.custom-panel input::placeholder,.custom-panel textarea::placeholder{color:#596754;opacity:1}.custom-panel textarea{resize:vertical;min-height:96px}.machine-name{max-width:680px}#cfields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}fieldset{border:1px solid #8a967b;border-radius:4px;padding:12px 20px;min-width:0}legend{font:700 14px/1.5 var(--display);letter-spacing:.07em;padding:0 8px}.builder-error{color:#892b19;font-family:var(--display)}footer{border-top:1px solid var(--line);padding:24px max(24px,calc((100vw - 1180px)/2));display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font:14px/1.6 var(--display);color:var(--muted)}dialog{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:8px;width:min(880px,calc(100% - 32px));max-height:85vh;padding:28px}dialog::backdrop{background:#000a}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.dialog-head h2{font-size:32px;margin:0}.dialog-note{font-size:17px;color:var(--muted)}.saved-idea{border-top:1px solid var(--line);padding:22px 0}.saved-idea h3{font-size:20px;margin:0 0 10px}.saved-idea p{font-size:19px;line-height:1.6;margin:0 0 12px;overflow-wrap:anywhere}.saved-idea small{color:var(--muted);font:14px var(--display)}.saved-idea button{margin:12px 12px 0 0}.hidden{display:none!important}.noscript{padding:30px}@keyframes dial-spin{from{transform:rotate(-60deg)}to{transform:rotate(0)}}@keyframes value-in{from{opacity:.3;transform:translateY(10px)}to{opacity:1;transform:none}}@media(max-width:1050px){main{padding:40px 28px 24px}.hero{gap:24px}.workspace{padding:26px}.wheels{gap:14px}.wheel{padding:16px}.workspace-head{align-items:start}.workspace-head .primary{max-width:210px}.hero-instrument{padding:28px 20px 20px}.instrument-top{padding-top:18px}}@media(max-width:760px){header{min-height:94px;padding:16px 22px}.brand img{width:190px}.brand>span{font-size:10px}header .ghost{font-size:13px;padding:10px}.hero{grid-template-columns:1fr}.hero-instrument{max-width:350px;justify-self:center}.hero-copy{padding:0}.hero h1{font-size:52px}.mode-bar{margin-top:34px}.modes{display:grid;grid-template-columns:1fr 1fr}.mode{padding:13px 10px}.workspace-head{flex-direction:column;gap:20px}.workspace-head .primary{max-width:none;width:100%}.wheels{grid-template-columns:1fr 1fr}.workspace{padding:22px}.custom-intro{grid-template-columns:1fr;gap:12px}.custom-panel{padding:24px}#cfields{grid-template-columns:1fr}.controls .wide{flex-basis:100%}.controls>.ghost{flex:1}.development{padding:22px}.lede{font-size:23px}.dialog-head{align-items:start}}@media(max-width:500px){main{padding:30px 18px 18px}.wheels{grid-template-columns:1fr}.wheel{min-height:205px;padding:20px}.wheel-value{font-size:28px}.workspace{padding:20px 16px}.hero h1{font-size:43px}.hero-instrument{max-width:310px}.brand img{width:158px}.brand>span{letter-spacing:.19em}header{gap:12px;padding:14px 18px}.custom{padding-top:45px}.development>p:not(.eyebrow){font-size:20px}.custom-panel{padding:20px}.dialog-head .eyebrow{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.mode{min-width:0;max-width:100%;overflow-wrap:anywhere}.workspace h2,.saved-idea h3{overflow-wrap:anywhere}@media(max-width:500px){.brand img{width:140px}header .ghost{font-size:12px;padding:8px 10px}.count{min-width:24px;height:24px;margin-left:6px}}

/* Continuous paper grain fills its field without tiling. */
