:root{--bg: #0b0710;--panel: #17101f;--panel-2: #21172c;--ink: #f6eedd;--sub: #b9aa90;--gold: #ffd76a;--gold-dim: rgba(255, 215, 106, .55);--gold-grad: linear-gradient(135deg, #fffbe2 0%, #ffe680 30%, #f7bb3c 62%, #fff2ad 100%);--shine-grad: linear-gradient(110deg, #ffffff 0%, #ffe3f3 18%, #ffffff 36%, #dcd3ff 54%, #ffffff 72%, #fff6d6 88%, #ffffff 100%);--neon: #ff4fa3;--violet: #8f6bff;--mincho: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg);color-scheme:dark}body{margin:0;min-height:100svh;background:radial-gradient(90% 40% at 50% -5%,rgba(143,107,255,.28),transparent 70%),radial-gradient(60% 30% at 100% 30%,rgba(255,79,163,.12),transparent 70%),radial-gradient(60% 30% at 0% 75%,rgba(255,215,106,.08),transparent 70%),var(--bg);background-attachment:fixed;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,sans-serif;font-size:16px;line-height:1.7}main{max-width:430px;margin:0 auto;padding:28px 16px 56px}h1{margin:0 0 14px;font-family:var(--mincho);font-size:32px;font-weight:700;line-height:1.3;letter-spacing:.06em;text-align:center;background:var(--shine-grad);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 10px rgba(255,255,255,.45));animation:shine 5s linear infinite}h1:after{content:"";display:block;width:120px;height:1px;margin:12px auto 0;background:linear-gradient(90deg,transparent,var(--gold),transparent)}h2{font-size:20px;line-height:1.5;margin:0 0 16px}h3{font-size:12px;font-weight:400;letter-spacing:.14em;color:var(--gold);margin:20px 0 6px}p{margin:0 0 12px}ul{margin:0;padding-left:1.2em}li::marker{color:var(--gold)}a{color:var(--gold)}[hidden]{display:none!important}.note{font-size:12px;color:var(--sub)}.badge{display:inline-block;border-radius:999px;padding:0 10px;background:var(--gold);font-size:11px;font-weight:700;line-height:1.9;color:#1a1206;white-space:nowrap}.btn,.choice{display:block;width:100%;min-height:52px;padding:12px 16px;border:1px solid var(--gold-dim);border-radius:10px;background:var(--panel-2);color:var(--ink);font:inherit;text-align:center;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .08s,border-color .15s,box-shadow .15s}.btn:active,.choice:active{transform:scale(.98)}.btn:focus-visible,.choice:focus-visible,.who a:focus-visible,.site-nav a:focus-visible{outline:2px solid var(--neon);outline-offset:2px}.btn-main{border:0;background:var(--gold-grad);color:#1a1206;font-weight:700;font-size:18px;padding:18px 16px;box-shadow:0 0 0 1px #fff3b880 inset,0 6px 24px #ffd76a47}.btn-sub{min-height:44px;font-size:14px;background:transparent;color:var(--sub);border-color:#b9aa9059}.btn:disabled{color:var(--sub);border-color:#b9aa904d;cursor:default}.btn small{display:block;font-size:12px;font-weight:400;opacity:.8}.stack>*+*{margin-top:12px}.stack>h3{margin-top:26px;text-align:center}#top>p:not(.note):not(.notice){text-align:center}#top>.note{text-align:center}.site-nav{display:flex;max-width:430px;margin:0 auto;border-bottom:1px solid var(--gold-dim);background:#0b0710d9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);position:sticky;top:0;z-index:5}.site-nav a{flex:1;padding:12px 4px;text-align:center;font-size:13px;letter-spacing:.08em;color:var(--sub);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}.site-nav a[aria-current]{color:var(--gold);font-weight:700;border-bottom-color:var(--gold);text-shadow:0 0 12px rgba(255,215,106,.6)}.who,.modes{display:grid;grid-template-columns:1fr 1fr;gap:8px}.who a{display:block;padding:12px 8px;border:1px solid rgba(185,170,144,.35);border-radius:10px;color:var(--sub);text-align:center;text-decoration:none}.who a[aria-current]{border-color:var(--neon);background:#ff4fa31f;color:var(--ink);box-shadow:0 0 18px #ff4fa347,0 0 0 1px #ff4fa366 inset}.who strong,.who small{display:block}.who small{font-size:12px}.modes .btn{font-family:var(--mincho);font-weight:700;font-size:19px;letter-spacing:.08em;padding:18px 8px;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.55);border-color:var(--gold)}.modes .btn small{font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,sans-serif;letter-spacing:0;color:var(--sub)}.progress{display:inline-block;margin-bottom:14px;padding:0 12px;border:1px solid var(--gold-dim);border-radius:999px;color:var(--gold);font-size:13px;letter-spacing:.1em}.q-hint{border:1px solid rgba(143,107,255,.45);border-radius:8px;background:#8f6bff1a;padding:6px 10px;font-size:12px;color:var(--sub)}.q-subject{margin:0;font-size:15px;font-weight:700;color:var(--neon)}.q-text{min-height:3em;font-family:var(--mincho);font-size:22px}.choices{display:grid;gap:12px}.choice{text-align:left}.choice:hover{border-color:var(--gold)}.choice:active{background:#ffd76a29;border-color:var(--gold)}.judging{display:grid;place-items:center;min-height:60svh;font-family:var(--mincho);font-size:24px;letter-spacing:.2em;color:#fff;text-shadow:0 0 14px rgba(255,255,255,.8),0 0 28px rgba(255,79,163,.6);animation:glow 1s ease-in-out infinite alternate}@keyframes glow{0%{opacity:.45}to{opacity:1}}.result>*+*{margin-top:16px}.card{position:relative;border:1px solid var(--gold);border-radius:14px;padding:26px 18px 20px;background:radial-gradient(120% 50% at 50% 0%,rgba(255,215,106,.16),transparent 70%),var(--panel);box-shadow:0 0 0 4px var(--bg),0 0 0 5px var(--gold-dim),0 18px 50px #0009}.card-lead{font-size:12px;letter-spacing:.14em;color:var(--sub);margin:0 0 4px;text-align:center}.card-type{margin:0 0 6px;font-family:var(--mincho);font-size:30px;line-height:1.35;letter-spacing:.04em;text-align:center;background:var(--shine-grad);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 10px rgba(255,255,255,.5));animation:shine 5s linear infinite}.card-type:after{display:none}.card:before,.card:after{position:absolute;color:#fff;text-shadow:0 0 8px #fff,0 0 16px rgba(255,79,163,.8);pointer-events:none}.card:before{content:"✦";top:10px;right:14px;font-size:14px;animation:twinkle 2.4s ease-in-out infinite}.card:after{content:"✧";top:26px;left:14px;font-size:11px;animation:twinkle 3.1s ease-in-out infinite reverse}@keyframes shine{to{background-position:-220% center}}@keyframes twinkle{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}.card-hitokoto{font-family:var(--mincho);font-size:18px;font-weight:700}.card-numbers{display:flex;gap:12px;margin:22px 0 0}.card-numbers div{flex:1;border:1px solid var(--gold-dim);border-radius:10px;background:#00000040;padding:8px;text-align:center}.card-numbers dt{font-size:11px;letter-spacing:.1em;color:var(--sub)}.card-numbers dd{margin:0;font-family:var(--mincho);font-size:24px;font-weight:700;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.6)}.card-footer{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;margin-top:18px;padding-top:12px;border-top:1px solid rgba(255,215,106,.2);font-size:11px;color:var(--sub)}.soon{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0;padding:12px 16px;border:1px dashed rgba(185,170,144,.4);border-radius:10px;color:var(--sub)}.bars{display:grid;gap:8px}.bar{display:grid;grid-template-columns:6.5em 1fr 3em;align-items:center;gap:8px;font-size:13px}.bar-track{display:block;height:10px;border-radius:999px;background:#ffffff14;overflow:hidden}.bar-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--violet),var(--neon));box-shadow:0 0 10px #ff4fa399}.bar-value{text-align:right;color:var(--gold)}.aisho{border:1px solid rgba(185,170,144,.3);border-radius:12px;background:var(--panel);padding:14px 16px 16px}.aisho h3{margin-top:0;font-size:15px;font-weight:700;letter-spacing:.04em;color:var(--ink)}.aisho>h3:not(:first-child){margin-top:24px;border-top:1px dashed rgba(185,170,144,.35);padding-top:16px}.aisho>.note a{color:var(--gold)}.aisho>.btn{margin-top:12px}.aisho-form{display:grid;grid-template-columns:1fr 1fr;gap:8px}.aisho-form input{min-width:0;min-height:52px;border:1px solid var(--gold-dim);border-radius:10px;background:#00000059;color:var(--ink);padding:0 12px;font:inherit;font-size:20px;text-align:center;letter-spacing:.2em}.aisho-form input::placeholder{color:#b9aa9073}.aisho-form input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #ffd76a33}.aisho-out{margin-top:12px}.aisho-out:empty{display:none}.aisho-label{font-family:var(--mincho);font-size:22px;font-weight:700;color:#fff;margin:0}.aisho-percent{font-weight:700;color:var(--gold)}.aisho-result+h3,.aisho h3+.aisho-result{margin-top:8px}.pair{border:1px solid var(--gold-dim);border-radius:10px;background:#00000040;padding:10px 12px;margin:8px 0 12px}.pair p{margin:0}.pair .badge{margin-right:8px}.pair small{display:block;font-size:12px;color:var(--sub)}.pair-x{text-align:center;font-weight:700;color:var(--neon)}.pair-lines{list-style:none;padding:0;display:grid;gap:10px;margin-top:8px}.pair-lines .badge{margin-right:8px}.badge+*,p>.badge{margin-right:6px}.notice{border:1px solid rgba(143,107,255,.5);border-radius:8px;background:#8f6bff1f;padding:8px 12px;font-size:13px}.zure-q{border-left:2px solid var(--neon);padding-left:10px;margin-top:10px}.zure-q p{margin:0}.link-input{width:100%;min-height:44px;border:1px solid rgba(185,170,144,.35);border-radius:8px;padding:0 8px;font:inherit;font-size:12px;color:var(--sub);background:#00000059}.banner{margin-top:44px!important;border:1px solid var(--neon);border-radius:12px;background:linear-gradient(160deg,#ff4fa329,#8f6bff1f);padding:16px}.banner-pr{display:inline-block;border-radius:4px;background:var(--ink);color:var(--bg);font-size:12px;font-weight:700;letter-spacing:.1em;padding:0 8px}.banner-line{font-weight:700;margin:10px 0 8px}.banner-required{list-style:none;padding:0;font-size:14px;color:var(--ink)}.banner-links{display:grid;gap:8px;margin-top:12px}.banner .btn{border-color:var(--neon)}.aisho-result>.note{margin-top:12px}.copy-btn{display:block;width:100%;margin-top:6px;min-height:32px;border:0;border-radius:999px;background:var(--gold);color:#1a1206;font:inherit;font-size:12px;font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent}.copy-btn:active{opacity:.75}.entry{position:relative;display:block;padding:16px 44px 16px 16px;border:1px solid var(--gold);border-radius:14px;background:radial-gradient(120% 80% at 0% 0%,rgba(255,215,106,.14),transparent 70%),var(--panel);color:var(--ink);text-decoration:none;box-shadow:0 10px 30px #00000073}.entry+.entry{margin-top:16px}.entry:after{content:"›";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:28px;color:var(--gold)}.entry:active{transform:scale(.99)}.entry-who{display:flex;flex-wrap:wrap;gap:6px}.entry-who .badge{background:var(--neon);color:#1a0612}.entry-name{display:block;margin:8px 0 4px;font-family:var(--mincho);font-size:24px;letter-spacing:.04em;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.5)}.entry-desc{display:block;font-size:13px;color:var(--sub)}.top-note{margin-top:20px;padding:12px 14px;border:1px solid rgba(255,79,163,.5);border-radius:12px;background:#ff4fa314;font-size:13px}.entry-desc>span,.top-note>span{display:block}h1+.stack{margin-top:24px}.dv{margin-top:18px;padding-top:18px;border-top:1px dashed rgba(185,170,144,.35)}.dv-head{margin:0 0 8px}.dv-axis{display:inline-block;padding:1px 14px;border-radius:999px;background:var(--gold);color:#1a1206;font-size:12px;font-weight:700;letter-spacing:.12em}.dv-line{margin:0 0 12px;font-family:var(--mincho);font-size:19px;font-weight:700;line-height:1.5;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.35)}.dv-row{display:grid;grid-template-columns:2.6em 1fr 40% 1fr;align-items:center;gap:6px;font-size:12px;color:var(--sub);margin-bottom:8px}.dv-row:last-child{margin-bottom:0}.dv-who{font-size:12px;font-weight:700;color:var(--ink)}.dv-l{text-align:right}.dv-r{text-align:left}.dv-l.on,.dv-r.on{color:#fff;font-weight:700}.dv-track{position:relative;display:block;height:14px;border-radius:999px;background:#ffffff1a;overflow:hidden}.dv-fill{position:absolute;top:0;bottom:0}.f-hime{background:linear-gradient(90deg,var(--neon),#ff9ccb);box-shadow:0 0 10px #ff4fa3b3}.f-host{background:linear-gradient(90deg,#ffe680,#f7bb3c);box-shadow:0 0 10px #ffd76a99}.dv-mid{position:absolute;left:50%;top:0;bottom:0;width:1px;background:#fff9}.aisho-out>.btn{margin-top:14px}@media(prefers-reduced-motion:reduce){.judging,h1,.card-type,.card:before,.card:after{animation:none}.btn,.choice{transition:none}}.top-lead{text-align:center;color:var(--sub);margin-bottom:20px}
