:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:#fff8ed;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;background:linear-gradient(135deg,#da1f331f 0 25%,#0000 25% 50%,#f5c5181a 50% 75%,#0000 75%) 0 0/54px 54px,radial-gradient(circle at 50% -20%,#3f0611 0,#0000 46%),linear-gradient(#140006 0%,#080102 48%,#120006 100%);font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}body{min-width:320px;min-height:100vh;margin:0;position:relative}button,input,select,textarea{font:inherit}.app-shell{justify-content:center;padding:0 16px 48px;display:flex}.app-stack{gap:24px;width:min(100%,600px);display:grid}.hero{text-align:center;padding:32px 0 4px}.hero-kicker{color:#f5c518;letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:800}.app-title{color:#fff;text-shadow:0 3px #8b0618,0 0 28px #da1f33b3,0 0 54px #f5c51857;flex-wrap:wrap;justify-content:center;column-gap:.26em;margin:0;font-size:58px;font-weight:900;line-height:.95;display:flex}.title-word{display:inline-flex}.title-letter{animation:2.4s infinite letter-chase}.wheel-stage{background:radial-gradient(circle at 50% 46%,#f5c5182e,#0000 38%),linear-gradient(#ffffff17,#0000 40%),#1a070d;border:1px solid #f5c51859;border-radius:8px;padding:clamp(14px,4vw,24px);box-shadow:0 18px 60px #00000073,inset 0 0 0 1px #ffffff0f}.wheel-svg{filter:drop-shadow(0 22px 26px #0000006b)drop-shadow(0 0 28px #f5c5182e);border-radius:999px}.wheel-shadow{fill:#050102}.wheel-rim{fill:#170209;stroke:#f5c518;stroke-width:8px}.wheel-slice{stroke:#ffffff2e;stroke-width:2px}.wheel-bulb{fill:#fff4b8;stroke:#f5c518;stroke-width:2px;filter:drop-shadow(0 0 5px #f5c518d9)}.wheel-text{fill:#fff;paint-order:stroke;stroke:#28000aa6;stroke-linejoin:round;stroke-width:3px;font-weight:900}.wheel-hub-outer{fill:#f5c518;stroke:#fff4b8;stroke-width:5px;filter:drop-shadow(0 0 10px #f5c51899)}.wheel-hub-inner{fill:#da1f33;stroke:#6d0210;stroke-width:3px}.wheel-pointer{fill:#fff4b8;stroke:#f5c518;stroke-width:3px;filter:drop-shadow(0 0 8px #f5c518bf)}.pointer-bulb{fill:#da1f33}.primary-button{color:#210005;cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(#ffe36a 0%,#f5c518 100%);border:1px solid #f5c518;border-radius:6px;width:100%;min-height:52px;font-weight:900;box-shadow:0 10px 30px #f5c5183d}.primary-button:hover:not(:disabled){background:linear-gradient(#fff08a 0%,#ffd333 100%);border-color:#fff08a;transform:translateY(-1px)}.primary-button:disabled{color:#8c737a;cursor:not-allowed;box-shadow:none;background:#231218;border-color:#392129}.actions-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.secondary-button{color:#f5c518;cursor:pointer;background:#00000038;border:1px solid #f5c51875;border-radius:6px;min-height:40px;padding:0 16px;font-weight:800}.secondary-button:hover{background:#f5c5181f;border-color:#f5c518}.share-status{color:#fff4b8;font-size:14px;font-weight:700}.text-button{color:#f5c518;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:900;text-decoration:underline}.text-button:hover{color:#fff4b8}.panel{background:#120308e0;border:1px solid #ffffff24;border-radius:8px;padding:24px;box-shadow:0 16px 44px #00000052}.panel h2{color:#f5c518;text-transform:uppercase;margin:0 0 20px;font-size:20px;font-weight:900}.panel p{margin:0 0 16px;line-height:1.55}.panel p:last-child{margin-bottom:0}.form-stack{gap:22px;display:grid}.field{gap:8px;display:grid}.options-row{grid-template-columns:.85fr 1.15fr;gap:18px;display:grid}.field-label{color:#fff8ed;font-weight:700}.control{box-sizing:border-box;color:#fff8ed;background:#0000004d;border:1px solid #ffffff2e;border-radius:6px;width:100%;padding:11px 12px}.control:focus{border-color:#f5c518;outline:none;box-shadow:0 0 0 3px #f5c5182e}.control::placeholder{color:#a99298}.textarea{resize:vertical;min-height:260px}.result-card{background:linear-gradient(135deg,#da1f3357,#0000 42%),#16050a;border:1px solid #f5c51847;border-radius:8px;box-shadow:0 14px 48px #00000057}.text-result{text-align:center;padding:22px}.result-label{color:#f5c518;letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:900}.text-result h2,.movie-copy h2{color:#fff;margin:0;font-size:38px;line-height:1.05}.movie-result{grid-template-columns:128px minmax(0,1fr);gap:18px;height:218px;padding:18px;display:grid;position:relative}.movie-result-expanded{height:auto}.movie-result .text-button{position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.movie-result-expanded .text-button{grid-column:1/-1;justify-self:center;position:static;transform:none}.poster-frame{aspect-ratio:2/3;background:#080102;border:1px solid #ffffff2e;border-radius:6px;overflow:hidden;box-shadow:0 12px 28px #00000073}.poster-frame img{object-fit:cover;width:100%;height:100%;display:block}.poster-placeholder{color:#a99298;text-transform:uppercase;place-items:center;height:100%;font-size:12px;display:grid}.movie-copy{flex-direction:column;min-width:0;padding-bottom:28px;display:flex;overflow:hidden}.movie-result-expanded .movie-copy{padding-bottom:0}.score{color:#f5c518;margin:10px 0;font-weight:800}.overview{color:#f0dce2;flex:1;margin:0;line-height:1.5;overflow:hidden}.overview-collapsed{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.spin{transform-origin:50%;position:absolute;inset:0}.idle{animation:30s linear infinite rotation}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(359deg)}}@keyframes letter-chase{0%,12%{color:#fff4b8;text-shadow:0 0 8px #fff,0 0 16px #f5c518,0 0 32px #da1f33;transform:translateY(-2px)scale(1.04)}26%,to{color:#fff;text-shadow:inherit;transform:none}}@media (width<=520px){.app-title{font-size:40px}.text-result h2,.movie-copy h2{font-size:28px}.movie-result{grid-template-columns:96px minmax(0,1fr);gap:14px;height:194px;padding:14px}.movie-result-expanded{height:auto}.panel{padding:18px}.options-row{grid-template-columns:1fr}}
