@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;700&family=Outfit:wght@400;700&family=Noto+Sans+JP:wght@400;700&display=swap";
:root{--primary:#00f2fe;--secondary:#4facfe;--bg-dark:#0f172a;--bg-card:#1e293bb3;--text-main:#f8fafc;--text-muted:#94a3b8;--accent:#f43f5e;--success:#10b981;--glass:#ffffff0d;--glass-border:#ffffff1a;--shadow:0 8px 32px 0 #0000005e}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);background-image:radial-gradient(at 0 0,#100f15 0,#0000 50%),radial-gradient(at 50% 0,#2f3e6a 0,#0000 50%),radial-gradient(at 100% 0,#722741 0,#0000 50%);background-attachment:fixed;min-height:100vh;font-family:Inter,Noto Sans JP,sans-serif;line-height:1.6}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--shadow);border-radius:24px;margin-bottom:2rem;padding:2.5rem;animation:.6s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}h1{text-align:center;background:linear-gradient(to right,var(--primary),var(--secondary));-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;margin-bottom:1.5rem;font-family:Outfit,sans-serif;font-size:2.5rem;font-weight:700}p{margin-bottom:1rem}.btn{cursor:pointer;text-align:center;border:none;border-radius:12px;width:100%;padding:1rem 2rem;font-size:1.1rem;font-weight:700;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-block}.btn-primary{background:linear-gradient(45deg,var(--secondary),var(--primary));color:#fff;box-shadow:0 4px 15px #4facfe66}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4facfe99}.btn-secondary{background:var(--glass);color:var(--text-main);border:1px solid var(--glass-border)}.btn-secondary:hover{background:#ffffff1a}.option-list{flex-direction:column;gap:1rem;margin-top:2rem;display:flex}.option-btn{border:1px solid var(--glass-border);text-align:left;color:var(--text-main);cursor:pointer;background:#ffffff08;border-radius:16px;align-items:center;padding:1.25rem;font-size:1.1rem;transition:all .2s;display:flex}.option-btn:hover{border-color:var(--primary);background:#ffffff14;transform:translate(5px)}.option-btn span{color:var(--primary);margin-right:1rem;font-weight:700}header{border-bottom:1px solid var(--glass-border);text-align:center;padding:1rem}footer{border-top:1px solid var(--glass-border);text-align:center;color:var(--text-muted);margin-top:auto;padding:2rem 1rem;font-size:.9rem}.footer-links{margin-top:.5rem}.footer-links a{color:var(--text-muted);margin:0 .5rem;text-decoration:none}.footer-links a:hover{color:var(--primary)}.progress-container{background:var(--glass);border-radius:4px;width:100%;height:8px;margin-bottom:2rem;overflow:hidden}.progress-bar{background:linear-gradient(to right,var(--secondary),var(--primary));height:100%;transition:width .4s}.ad-space{background:var(--glass);border:1px dashed var(--glass-border);text-align:center;color:var(--text-muted);border-radius:12px;margin:1.5rem 0;padding:1rem;font-size:.8rem}.rank-badge{color:var(--primary);text-shadow:0 0 15px #00f2fe99;margin-top:1rem;margin-bottom:2rem;font-size:3.5rem;font-weight:800;line-height:1.1;display:block}.score-display{color:var(--text-main);margin:1rem 0 0;font-size:2rem;font-weight:700}.explanation-item{border-left:4px solid var(--primary);background:#ffffff05;border-radius:16px;margin-top:2rem;padding:1.5rem}.explanation-q{margin-bottom:.5rem;font-weight:700}.explanation-a{color:var(--success);font-weight:700}.sns-share{gap:1rem;margin:2rem 0;display:flex}@media (max-width:600px){h1{font-size:2rem}.card{padding:1.5rem}.btn{padding:.8rem 1.5rem}}.ad-link{border:1px solid var(--primary);color:var(--text-main);text-align:center;background:#ffffff0d;border-radius:12px;margin-bottom:.5rem;padding:1rem;font-weight:700;text-decoration:none;transition:all .3s;display:block}.ad-link:hover{background:#00f2fe1a;transform:translateY(-2px);box-shadow:0 4px 12px #00f2fe33}.container{flex-direction:column;justify-content:center;max-width:800px;min-height:80vh;margin:0 auto;padding:2rem 1rem;display:flex}
