:root{color:#1a1a2e;background:#f7f8fc;font-family:Hiragino Sans,Noto Sans JP,sans-serif;line-height:1.6}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top,#fff4fb 0%,transparent 45%),linear-gradient(180deg,#f7f8fc,#eef1fb)}a{color:#6b4eff}button,input,textarea{font:inherit}.container{width:min(720px,100% - 32px);margin:0 auto}.card{background:#fff;border:1px solid #e6e9f5;border-radius:16px;padding:20px;box-shadow:0 8px 24px #2327500f}.stack{display:flex;flex-direction:column;gap:16px}.muted{color:#667085;font-size:.95rem}.label{display:block;font-weight:700;margin-bottom:8px}.field,.textarea{width:100%;border:1px solid #d5dae8;border-radius:12px;padding:12px 14px;background:#fff}.textarea{min-height:88px;resize:vertical}.btn{border:none;border-radius:999px;padding:12px 20px;font-weight:700;cursor:pointer}.btn-primary{background:linear-gradient(135deg,#7b5cff,#ff5bb7);color:#fff}.btn-secondary{background:#eef1fb;color:#1a1a2e}.btn:disabled{opacity:.5;cursor:not-allowed}.error{color:#d92d20;background:#fef3f2;border:1px solid #fecdca;border-radius:12px;padding:12px 14px}.success{color:#027a48;background:#ecfdf3;border:1px solid #abefc6;border-radius:12px;padding:12px 14px}.option-list{display:flex;flex-direction:column;gap:10px}.option-item{display:flex;gap:10px;align-items:center}.option-item input[type=text]{flex:1}.ranking-table{width:100%;border-collapse:collapse}.ranking-table th,.ranking-table td{padding:10px 8px;border-bottom:1px solid #edf0f7;text-align:left}.ranking-table th:last-child,.ranking-table td:last-child{text-align:right}.result-item{border:1px solid #edf0f7;border-radius:12px;padding:14px}.result-item.correct{border-color:#abefc6;background:#f6fef9}.result-item.incorrect{border-color:#fecdca;background:snow}.url-box{display:flex;gap:8px;align-items:center}.url-box input{flex:1}.header{padding:16px 0}.header-inner{display:flex;justify-content:space-between;align-items:center}.logo{font-weight:800;font-size:1.2rem;text-decoration:none;color:inherit}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:#eef1fb;text-decoration:none;color:inherit;font-size:.9rem}.question-block{border-top:1px solid #edf0f7;padding-top:16px}.question-block:first-child{border-top:none;padding-top:0}.step-title{font-size:1.25rem;margin:0}.hero{padding:12px 0 24px}.hero h1{margin:0 0 8px;font-size:clamp(1.6rem,4vw,2.2rem)}
