*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;margin:0;font-family:"Baloo 2",system-ui,-apple-system,sans-serif}.kidora-logo{width:auto;height:48px;display:block}.route-switch{z-index:1000;color:#ffce3f;background:#2c1b4d;border-radius:999px;padding:8px 16px;font-size:.8rem;font-weight:700;text-decoration:none;position:fixed;top:14px;right:50%;transform:translate(50%);box-shadow:0 4px 14px #0000004d}@media (width<=640px){.route-switch{top:78px}}.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{color:#fff;font-size:1.5rem;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}.icon-nav button:disabled{opacity:.35;cursor:not-allowed}.icon-nav button:disabled:hover{background:#ffffff24;transform:none}.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}.nav-buttons.center{justify-content:center}.nav-buttons.center .btn-primary{margin-left:0}.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{padding:18px 20px 4px}.content{padding:20px}.grid.two{grid-template-columns:1fr}.panel.paper{padding:24px 20px 20px}.btn{padding:12px 24px}}.admission-page{background:radial-gradient(at 50% -10%,#3a2166 0%,#1c1140 45%,#100a2b 100%);flex-direction:column;align-items:center;min-height:100vh;padding:0 20px 60px;display:flex;position:relative;overflow:hidden}.admission-page .topbar{align-self:stretch}.admission-sheet{z-index:1;color:#2c2c2c;background:#fffdf7;border:2px solid #eee0c0;border-radius:28px;width:100%;max-width:1100px;padding:44px 48px 56px;position:relative;box-shadow:0 20px 50px #0000001f}.af-badge{color:#2c1b4d;background:#fff;border:3px solid #2c1b4d;border-radius:999px;margin:0 0 20px;padding:8px 30px;font-size:1.5rem;display:inline-block;transform:rotate(-3deg)}.af-field{flex-direction:column;gap:4px;min-width:0;margin-bottom:11px;display:flex}.af-field span{color:#6b3fa0;font-size:.82rem;font-weight:700}.af-field input,.af-field textarea{font:inherit;color:#2c2c2c;resize:vertical;background:0 0;border:none;border-bottom:2px dashed #c3b18e;padding:6px 2px;font-size:1rem}.af-field input:focus,.af-field textarea:focus{border-bottom-color:#6b3fa0;outline:none}.af-top-grid{grid-template-columns:1fr 1fr 1fr;align-items:start;gap:20px;margin-bottom:28px;display:grid}.af-parent{min-width:0}.af-parent .af-badge{transform:rotate(-3deg)}.af-parent-mother .af-badge{transform:rotate(3deg)}.af-house{min-width:0;min-height:320px;margin-top:90px;position:relative}.af-house-figures{z-index:0;gap:6px;height:280px;display:flex;position:absolute;top:-108px;left:50%;transform:translate(-50%)}.af-house-figures img{object-fit:contain;object-position:top;filter:drop-shadow(0 4px 6px #2c1b4d33);width:auto;height:100%}.af-house-roof{z-index:1;width:100%;height:68px;position:absolute;top:0;left:0}.af-house-roof polygon{fill:#ffce3f;stroke:#2c1b4d;stroke-width:3px;stroke-linejoin:round}.af-house-content{z-index:2;background:#ffce3f;border:3px solid #2c1b4d;border-top:none;border-radius:0 0 10px 10px;margin-top:66px;padding:18px 22px 14px;position:relative}.af-house-content h3{color:#2c1b4d;text-align:center;margin:0 0 14px;font-size:1.15rem}.af-house-content .af-field span{color:#2c1b4d}.af-house-content .af-field input{border-bottom-color:#8a6d00}.af-icon{display:inline-block}.af-icon svg{width:100%;height:100%;display:block}.af-flower-icon svg [stroke]{stroke:#6b3fa0}.af-wish-band{text-align:center;border-top:2px dashed #e0d3b0;border-bottom:2px dashed #e0d3b0;margin-bottom:40px;padding:22px 0 26px}.af-wish-band h3{color:#6b3fa0;margin:0 0 4px;font-size:1.4rem}.af-wish-hint{color:#8a7a5c;margin:0 0 16px;font-size:.85rem}.af-wish-grid{text-align:left;grid-template-columns:1fr 1fr;gap:24px;max-width:560px;margin:0 auto;display:grid}.af-child-section{position:relative}.af-stars{gap:4px;display:flex;position:absolute;top:0;right:0}.af-star-icon{width:26px;height:26px}.af-star-icon svg [stroke]{stroke:#ffce3f}.af-child-grid{grid-template-columns:220px 1fr;gap:32px;margin-top:16px;display:grid}.af-child-side{flex-direction:column;align-items:center;gap:14px;display:flex}.af-photo{text-align:center;background:#f3ecff;border:3px dashed #6b3fa0;border-radius:50%;justify-content:center;align-items:center;width:170px;height:170px;padding:16px;display:flex;overflow:hidden}.af-avatar-icon{object-fit:contain;width:100%;height:100%}.af-photo-placeholder{color:#6b3fa0;font-size:.85rem;font-weight:600}.af-gender-hint{color:#8a7a5c;margin:0;font-size:.78rem}.af-gender-options{gap:10px;display:flex}.af-flower{font:inherit;color:#2c1b4d;cursor:pointer;background:#fff;border:2px solid #e0d3b0;border-radius:999px;align-items:center;gap:6px;padding:8px 16px;font-weight:700;display:inline-flex}.af-flower.active{background:#ffce3f;border-color:#ffce3f}.af-flower-icon{width:18px;height:18px}.af-two{grid-template-columns:1fr 1fr;gap:20px;display:grid}.af-label{color:#6b3fa0;margin:6px 0 10px;font-size:.92rem;font-weight:700}.af-pill-group{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.af-pill{color:#6b3fa0;font:inherit;cursor:pointer;background:#fff;border:2px solid #6b3fa0;border-radius:999px;padding:8px 18px;font-weight:700}.af-pill.active{color:#fff;background:#6b3fa0}.af-submit-row{text-align:center;margin-top:32px}.af-submit{font:inherit;color:#2c1b4d;cursor:pointer;background:linear-gradient(90deg,#ffce3f,#ff9f4a);border:none;border-radius:999px;padding:14px 42px;font-size:1.05rem;font-weight:700}.af-submit:disabled{opacity:.6;cursor:not-allowed}.af-notice{color:#b23b3b;margin-top:12px;font-weight:600}.af-credit{text-align:center;color:#b3a586;margin:28px 0 0;font-size:.72rem}.af-credit a{color:#8a7a5c}.af-thankyou{text-align:center;max-width:640px;padding:80px 40px}.af-thankyou h1{color:#6b3fa0;margin:0 0 12px;font-size:2.2rem}@media (width<=860px){.admission-sheet{padding:32px 20px 40px}.af-top-grid,.af-child-grid,.af-two,.af-wish-grid{grid-template-columns:1fr}}@media (width<=640px){.admission-sheet{margin-top:60px}}
