*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;margin:0;font-family:"Baloo 2",system-ui,-apple-system,sans-serif}.app{color:#fff;background:radial-gradient(at 50% -10%,#3a2166 0%,#1c1140 45%,#100a2b 100%);flex-direction:column;min-height:100vh;display:flex;position:relative;overflow:hidden}.panel h1,.panel h2{font-family:Titan One,sans-serif;font-weight:400}.stars{z-index:0;pointer-events:none;opacity:.8;background-image:radial-gradient(1.5px 1.5px at 20px 30px,#ffffffe6,#0000 50%),radial-gradient(1.5px 1.5px at 90px 10px,#ffffffb3,#0000 50%),radial-gradient(1px 1px at 150px 80px,#fff9,#0000 50%),radial-gradient(1px 1px at 60px 120px,#ffffff80,#0000 50%),radial-gradient(2px 2px at 180px 150px,#fffc,#0000 50%),radial-gradient(1px 1px at 120px 190px,#fff9,#0000 50%);background-repeat:repeat;background-size:220px 220px;position:absolute;inset:0}.planet{z-index:0;pointer-events:none;border-radius:50%;position:absolute}.planet-ring{background:radial-gradient(circle at 35% 30%,#b98be0,#7b4fb0 55%,#4c2b7a 100%);width:260px;height:260px;bottom:-70px;right:-60px;box-shadow:0 0 60px #9664dc66}.planet-ring:after{content:"";border:14px solid #78dcdc8c;border-radius:50%;position:absolute;inset:-22% -50%;transform:rotate(-18deg)}.planet-orange{background:radial-gradient(circle at 40% 35%,#ffb066,#e6672e 60%,#a33f16 100%);width:180px;height:180px;bottom:-90px;left:-70px}.planet-teal{background:radial-gradient(circle at 35% 30%,#9be8e0,#3fa39a 70%);width:70px;height:70px;top:-34px;right:40%}.planet-moon{background:radial-gradient(circle at 40% 35%,#cfd3ef,#8a8fc4 65%,#5a5e93 100%);width:130px;height:130px;top:-60px;left:-50px;box-shadow:inset -10px -10px 30px #00000059}.asteroids{z-index:0;pointer-events:none;background-image:radial-gradient(3px 3px at 10px 10px,#c8bee6e6,#0000 60%),radial-gradient(2px 2px at 30px 25px,#c8bee6b3,#0000 60%),radial-gradient(4px 4px at 50px 40px,#c8bee6cc,#0000 60%),radial-gradient(2px 2px at 20px 55px,#c8bee699,#0000 60%);width:70px;height:70px;position:absolute}.asteroids-a{top:22%;right:6%}.asteroids-b{bottom:30%;left:8%}.topbar{z-index:2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:24px 40px 8px;display:flex;position:relative}.brand{font-size:1.3rem;font-weight:800;line-height:1.05}.icon-nav{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.icon-nav button{color:#d8caf0;cursor:pointer;background:#ffffff24;border:none;border-radius:50%;place-items:center;width:60px;height:60px;transition:background .15s,color .15s,transform .1s;display:grid}.icon-emoji{font-size:1.7rem;line-height:1}.icon-nav button:hover{background:#ffffff38;transform:translateY(-2px)}.icon-nav button.active{color:#2c1b4d;background:#ffce3f}.kk-logo{align-items:center;gap:8px;display:flex}.kk-mark{font-size:1.8rem}.kk-word{color:#ffce3f;flex-direction:column;font-size:1.05rem;font-weight:700;line-height:1.1;display:flex}.kk-word small{color:#ffffffbf;letter-spacing:.08em;font-size:.55rem;font-weight:600}.content{z-index:2;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:24px 40px;display:flex;position:relative}.stage{width:100%;max-width:760px}.panel{width:100%}.panel h2{text-align:center;margin:0 0 4px;font-size:1.8rem}.scenario-panel h2{font-size:2.4rem}.scenario-panel .subtitle{font-size:1.05rem}.scenario-panel .option-row{padding:20px 26px;font-size:1.15rem}.scenario-panel .option-row input[type=checkbox]{width:26px;height:26px}.panel.paper{color:#2c1b4d;background:#fbf7ff;border-radius:26px;padding:32px 36px 26px;box-shadow:0 20px 60px #00000059}.panel.paper h2{color:#6b3fa0}.panel.paper .subtitle{color:#6b3fa0cc}.panel.paper .field span{color:#6b3fa0}.panel.paper .field input,.panel.paper .field textarea{background:0 0;border:none;border-bottom:2px dashed #c6b3e6;border-radius:0;padding:8px 4px}.panel.paper .field input:focus,.panel.paper .field textarea:focus{border-bottom-color:#6b3fa0;outline:none}.panel.paper .pill{color:#6b3fa0;background:#efe6fb;border-color:#c6b3e6}.panel.paper .pill.active{color:#fff;background:#6b3fa0;border-color:#6b3fa0}.panel.paper .option-row{background:0 0;border-bottom:1px dashed #d8c8ef;border-radius:0;padding:10px 4px}.panel.paper .option-row.checked{background:#fff3c4;border-bottom-color:#0000;border-radius:10px}.subcard.mother{background:#e7f0ff}.subcard.father{background:#fff8de}.panel.paper .subcard h3{color:#6b3fa0;margin-top:0}.blob-callout{border-radius:28px;padding:20px 24px 8px}.blob-callout.blue{background:#e7f0ff}.note-bubble{color:#6b3fa0;background:#ffce3f;border-radius:999px;margin:0 0 4px;padding:8px 16px;font-size:.8rem;font-weight:700;display:inline-block}.subtitle{text-align:center;color:#ffffffbf;margin:0 0 24px;font-weight:600}.options{flex-direction:column;gap:12px;display:flex}.option-row{color:#2c1b4d;cursor:pointer;background:#e9def8;border-radius:14px;align-items:center;gap:14px;padding:14px 22px;font-weight:600;transition:background .15s,transform .1s;display:flex}.option-row:hover{transform:translateY(-1px)}.option-row.checked{background:#ffce3f}.option-row.disabled{opacity:.5;cursor:not-allowed}.option-row input[type=checkbox]{accent-color:#6b3fa0;flex-shrink:0;width:20px;height:20px}.stage-wide{max-width:1100px}.panel.result-panel{-webkit-backdrop-filter:blur(8px);background:#3a205c99;border:1px solid #ffffff24;border-radius:28px;padding:48px 56px;position:relative;overflow:hidden}.result-close{color:#4b2e83;cursor:pointer;background:#ffffffeb;border:none;border-radius:50%;place-items:center;width:36px;height:36px;font-size:1rem;line-height:1;display:grid;position:absolute;top:16px;right:16px}.result-body{align-items:center;gap:40px;display:flex}.result-character{filter:drop-shadow(0 10px 24px #00000059);flex-shrink:0;font-size:7rem;line-height:1}.result-copy{flex:1;min-width:0}.result-kicker{color:#e9def8;margin:0 0 4px;font-size:1.05rem}.result-kicker strong{color:#ffce3f}.result-headline{color:#fff;margin:0 0 18px;font-size:clamp(1.8rem,3.4vw,2.5rem)}.result-rule{border:none;border-top:1px solid #ffffff40;margin:0 0 16px}.result-sprinkle{color:#e9def8;margin:0 0 16px;font-size:1.05rem}.result-sprinkle strong{color:#fff}.result-line{color:#e9def8d9;margin:0 0 12px;font-size:.98rem;line-height:1.6}.result-activity strong{color:#ffce3f}.result-actions{flex-wrap:wrap;gap:16px;margin-top:24px;display:flex}.result-empty{text-align:center}@media (width<=720px){.panel.result-panel{padding:60px 24px 32px}.result-body{text-align:center;flex-direction:column;gap:16px}.result-character{font-size:5rem}.result-actions{justify-content:center}}.field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.field span{color:#ffffffd9;text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:700}.field input,.field textarea{font:inherit;color:#2c1b4d;resize:vertical;background:#e9def8;border:none;border-radius:12px;padding:12px 16px;font-weight:600}.field input:focus,.field textarea:focus{outline:3px solid #ffce3f}.grid.two{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.subcard{background:#ffffff0f;border-radius:16px;padding:18px 20px 2px}.subcard h3{margin-top:0}.pill-group{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.pill{color:#fff;font:inherit;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff59;border-radius:999px;padding:10px 20px;font-weight:600}.pill.active{color:#2c1b4d;background:#ffce3f;border-color:#ffce3f}.hint{color:#6b3fa099;margin:-12px 0 20px;font-size:.8rem;font-weight:600}.welcome{text-align:center}.welcome h1{margin-bottom:8px;font-size:clamp(1.8rem,4vw,2.8rem)}.accent{color:#ffce3f}.lede{margin:0 0 16px;font-size:1.2rem;font-weight:700}.tag{color:#fffc;font-weight:600}.panel.paper .tag{color:#6b3fa0cc}.notice{color:#8a5a00;background:#fff3c4;border-radius:10px;margin-top:16px;padding:10px 18px;font-size:.9rem;font-weight:600}.error{box-sizing:border-box;text-align:center;color:#ffd7d7;background:#ff3c3c33;border-radius:10px;margin-top:16px;padding:10px 18px;font-weight:600}.nav-buttons{justify-content:space-between;margin-top:20px;display:flex}.btn{font:inherit;cursor:pointer;color:#fff;text-align:center;background:#6b6b78;border:none;border-radius:999px;padding:12px 34px;font-weight:700;text-decoration:none;display:inline-block}.btn:disabled{opacity:.35;cursor:not-allowed}.btn-primary{color:#2c1b4d;background:linear-gradient(90deg,#ffce3f,#ff9f4a);margin-left:auto}.btn-ghost{color:#4b2e83;background:#efe6fb}@media (width<=640px){.topbar{text-align:center;justify-content:center;padding:18px 20px 4px}.content{padding:20px}.grid.two{grid-template-columns:1fr}.panel.paper{padding:24px 20px 20px}.btn{padding:12px 24px}}
