@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;600;700;900&family=Bebas+Neue&family=Cinzel:wght@700&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0f172a;--bg-card:#141d35;--bg-card2:#182040;--bg-card3:#1e2a4a;--accent:#e63946;--accent-dim:rgba(230,57,70,.15);--accent-border:rgba(230,57,70,.35);--gold:#eab308;--gold-dim:rgba(234,179,8,.12);--green:#52b788;--green-dim:rgba(82,183,136,.15);--text:#f1efe8;--text-secondary:hsla(47,24%,93%,.65);--text-muted:hsla(47,24%,93%,.35);--border:hsla(0,0%,100%,.06);--border-hover:hsla(0,0%,100%,.14);--shadow:0 8px 40px rgba(0,0,0,.7);--shadow-accent:0 4px 24px rgba(234,179,8,.2);--r:16px;--r-sm:10px;--font:"Noto Serif JP",serif;--font-d:"Bebas Neue",sans-serif;--font-c:"Playfair Display",serif}body,html{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden;-webkit-tap-highlight-color:transparent}body:after{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");pointer-events:none;z-index:9999;opacity:.5}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(8px)}60%{transform:translateX(-5px)}80%{transform:translateX(5px)}}@keyframes correctPop{0%{transform:scale(1)}45%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes floatUp{0%{opacity:0;transform:translateY(0) scale(.5)}20%{opacity:.6}80%{opacity:.3}to{opacity:0;transform:translateY(-200px) scale(1)}}@keyframes revealDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes glowPulse{0%,to{box-shadow:0 0 0 0 rgba(230,57,70,0)}50%{box-shadow:0 0 20px 6px rgba(230,57,70,.25)}}.anim-fade-up{animation:fadeUp .45s cubic-bezier(.22,.68,0,1.2) forwards}.anim-fade-up-1{animation:fadeUp .45s cubic-bezier(.22,.68,0,1.2) .07s both}.anim-fade-up-2{animation:fadeUp .45s cubic-bezier(.22,.68,0,1.2) .14s both}.anim-fade-up-3{animation:fadeUp .45s cubic-bezier(.22,.68,0,1.2) .21s both}.anim-fade-up-4{animation:fadeUp .45s cubic-bezier(.22,.68,0,1.2) .28s both}.anim-scale-in{animation:scaleIn .35s cubic-bezier(.22,.68,0,1.2) forwards}.page{min-height:100dvh;padding:0 0 env(safe-area-inset-bottom,20px)}.container{max-width:480px;margin:0 auto;padding:0 18px}.btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:18px 24px;border:none;border-radius:var(--r);font-family:var(--font);font-size:18px;font-weight:700;cursor:pointer;transition:all .18s ease;position:relative;overflow:hidden;outline:none;-webkit-font-smoothing:antialiased}.btn:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,hsla(0,0%,100%,.06),transparent 60%);pointer-events:none}.btn:active{transform:scale(.96)}.btn-red{background:linear-gradient(135deg,#e63946,#c1121f);color:#fff;box-shadow:var(--shadow-accent)}.btn-red:hover{box-shadow:0 6px 32px rgba(230,57,70,.5);transform:translateY(-1px)}.btn-gold{background:linear-gradient(135deg,#f2b705,#e09b00);color:#1a0800;font-weight:900;box-shadow:0 4px 24px rgba(242,183,5,.3)}.btn-gold:hover{box-shadow:0 6px 32px rgba(242,183,5,.45);transform:translateY(-1px)}.btn-ghost{background:var(--bg-card2);color:var(--text);border:1px solid var(--border)}.btn-ghost:hover{border-color:var(--border-hover);background:var(--bg-card3)}.btn-back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--text-muted);font-family:var(--font);font-size:14px;cursor:pointer;padding:6px 0;transition:color .15s;outline:none;text-decoration:none}.btn-back:hover{color:var(--text)}.card{background:var(--bg-card);border-radius:var(--r);border:1px solid var(--border)}.card-hover{transition:all .18s ease;cursor:pointer;outline:none}.card-hover:hover{border-color:var(--border-hover);background:var(--bg-card2)}.tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.05em}.tag-movie{background:rgba(230,57,70,.15);color:#ff6b78;border:1px solid rgba(230,57,70,.25)}.tag-anime{background:rgba(242,183,5,.12);color:#f4cb50;border:1px solid rgba(242,183,5,.25)}.stars{font-size:13px;letter-spacing:1px}.star-fill{color:var(--gold)}.star-empty{color:var(--text-muted);opacity:.5}input,select,textarea{background:var(--bg-card2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text);font-family:var(--font);font-size:16px;padding:14px 16px;width:100%;outline:none;transition:border-color .2s,box-shadow .2s;resize:none;-webkit-appearance:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--text-muted);font-size:14px;line-height:1.65}input::placeholder,textarea::placeholder{color:var(--text-muted);font-size:14px;line-height:1.65}.choice-btn{width:100%;display:flex;align-items:flex-start;gap:14px;padding:16px 18px;background:var(--bg-card2);border:1.5px solid var(--border);border-radius:var(--r);color:var(--text);font-family:var(--font);font-size:15px;cursor:pointer;text-align:left;transition:all .18s ease;outline:none;line-height:1.6}.choice-btn:hover:not(:disabled){border-color:var(--border-hover);background:var(--bg-card3)}.choice-btn:disabled{cursor:default}.choice-btn.selected{border-color:var(--accent);background:var(--accent-dim)}.choice-btn.correct{border-color:var(--green);background:var(--green-dim);animation:correctPop .4s ease}.choice-btn.wrong{border-color:var(--accent);background:var(--accent-dim);animation:shake .45s ease}.choice-btn.dim{border-color:var(--border);opacity:.4}.choice-label{min-width:30px;height:30px;border-radius:50%;background:var(--bg-card3);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;font-family:var(--font-d);flex-shrink:0;margin-top:2px;color:var(--text-secondary);transition:all .18s}.choice-btn.correct .choice-label{background:var(--green);color:#fff}.choice-btn.selected .choice-label,.choice-btn.wrong .choice-label{background:var(--accent);color:#fff}.spinner{width:38px;height:38px;border:3px solid var(--accent-dim);border-top-color:var(--accent);border-radius:50%;animation:spin .75s linear infinite}.reveal-down{animation:revealDown .5s ease forwards}.glow-card{animation:glowPulse 3s ease infinite}.filter-tab{padding:6px 14px;border-radius:20px;font-family:var(--font);font-size:13px;font-weight:600;cursor:pointer;transition:all .15s;outline:none;border:1px solid var(--border);background:transparent;color:var(--text-muted)}.filter-tab.active{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}.sticky-header{background:rgba(7,7,15,.85);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.quiz-card{width:100%;text-align:left;cursor:pointer;padding:18px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);outline:none;transition:all .18s}.quiz-card:hover{border-color:var(--border-hover);background:var(--bg-card2);transform:translateY(-1px)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.lit-section-label{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:20px;display:flex;align-items:center;gap:12px}.lit-section-label:after{content:"";flex:1;height:1px;background:rgba(242,183,5,.2)}.lit-item{display:flex;align-items:flex-start;gap:16px;padding:18px 0;cursor:pointer;transition:border-color .25s;background:none;border:none;border-bottom:1px solid hsla(0,0%,100%,.06);border-radius:0;width:100%;text-align:left;outline:none}.lit-item:hover{border-bottom-color:rgba(242,183,5,.45)}.lit-item-num{font-family:var(--font-d);font-size:26px;color:rgba(242,183,5,.2);line-height:1;flex-shrink:0;min-width:28px;padding-top:4px;transition:color .25s}.lit-item:hover .lit-item-num{color:rgba(242,183,5,.5)}.lit-item-body{flex:1}.lit-item-theme{font-size:16px;font-weight:700;color:var(--text);line-height:1.45;margin-bottom:4px}.lit-item-meta{font-size:11px;color:hsla(0,0%,100%,.28);letter-spacing:.05em}.lit-item-arrow{font-size:18px;color:rgba(242,183,5,.3);flex-shrink:0;padding-top:2px;transition:transform .2s,color .2s}.lit-item:hover .lit-item-arrow{transform:translateX(4px);color:var(--gold)}.lit-dropcap:first-letter{font-size:54px;font-family:var(--font-c);float:left;line-height:.82;margin:6px 8px 0 0;color:var(--gold)}.lit-cta{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);cursor:pointer;background:none;border:none;padding:10px 0;font-family:var(--font);font-weight:700;outline:none;transition:color .2s;text-decoration:none}.lit-cta:hover{color:var(--text)}.lit-cta-arrow{transition:transform .2s}.lit-cta:hover .lit-cta-arrow{transform:translateX(5px)}.lit-choice{width:100%;text-align:left;font-family:var(--font);font-size:15px;line-height:1.65;padding:15px 0;border:none;border-bottom:1px solid hsla(0,0%,100%,.07);background:none;color:hsla(39,49%,88%,.72);cursor:pointer;display:flex;align-items:flex-start;gap:14px;outline:none;transition:color .2s,border-color .2s;border-radius:0}.lit-choice:hover:not(:disabled){color:var(--gold);border-bottom-color:rgba(242,183,5,.5)}.lit-choice:disabled{cursor:default}.lit-choice.selected{color:var(--gold);border-bottom-color:var(--gold)}.lit-choice.correct{color:var(--green);border-bottom-color:var(--green);animation:correctPop .4s ease}.lit-choice.wrong{color:var(--accent);border-bottom-color:rgba(230,57,70,.4);animation:shake .45s ease}.lit-choice.dim{opacity:.28}.lit-choice-num{font-family:var(--font-d);font-size:17px;color:hsla(0,0%,100%,.18);flex-shrink:0;min-width:22px;padding-top:2px;transition:color .2s}.lit-choice.correct .lit-choice-num,.lit-choice.selected .lit-choice-num,.lit-choice.wrong .lit-choice-num{color:inherit}.lit-progress{height:1px;background:hsla(0,0%,100%,.07);position:relative;margin-bottom:6px}.lit-progress-fill{position:absolute;left:0;top:0;height:100%;background:var(--gold);transition:width .6s cubic-bezier(.22,.68,0,1.2)}.lit-result-block{border-left:2px solid var(--gold);padding:14px 18px;background:rgba(242,183,5,.03);margin:20px 0}.lit-title{font-family:var(--font-c);font-size:clamp(20px,5vw,28px);color:var(--gold);line-height:1.3;letter-spacing:.02em;margin-bottom:24px}.lit-footer{margin-top:48px;padding-top:14px;border-top:1px solid hsla(0,0%,100%,.05);font-size:9px;letter-spacing:.25em;text-transform:uppercase;color:hsla(0,0%,100%,.13);text-align:center}