@import "https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700;800&display=swap";:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0}:root{--ink:#1e293b;--brand-gradient:linear-gradient(135deg, #fbc2eb 0%, #a1c4fd 100%);--brand-gradient-text:linear-gradient(120deg, #c2569e 0%, #4f83c8 100%);--brand-pink:#fbc2eb;--brand-blue:#a1c4fd;--brand-accent:#6f9fe7;--brand-accent-strong:#4f83c8;--brand-accent-soft:#a1c4fd2e;--brand-gradient-shadow:#fbc2eb66;--brand:#4f83c8;--brand-soft:#4f83c8;--font-base:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, "M PLUS Rounded 1c", sans-serif;--font-brand:"M PLUS Rounded 1c", "Kosugi Maru", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-base);color:var(--ink);background-color:#f8fafc;background-image:radial-gradient(circle at 100% 0,#a1c4fd14 0%,#0000 45%),radial-gradient(circle at 100% 100%,#fad0c40f 0%,#0000 45%),radial-gradient(circle at 0 100%,#a8edea14 0%,#0000 45%),none;background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;min-height:100vh}.grad-text{background:var(--brand-gradient-text);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.container{max-width:480px;min-height:100vh;margin:0 auto;padding:20px}.logo-header{text-align:center;padding:24px 0 16px}.logo-img{mix-blend-mode:multiply;height:80px}.card{background:#fff;border-radius:16px;margin-bottom:16px;padding:24px;box-shadow:0 2px 12px #0000000f}.field{margin-bottom:18px}.label{color:#1e293b;margin-bottom:10px;font-family:"M PLUS Rounded 1c",Kosugi Maru,sans-serif;font-size:16px;font-weight:700;display:block}.hint{color:#94a3b8;margin-bottom:6px;font-size:12px;line-height:1.5}.inp{color:#1e293b;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;outline:none;width:100%;padding:14px 16px;font-family:inherit;font-size:16px;transition:border .2s}.inp:focus{border-color:var(--brand-blue)}.inp::placeholder{color:#c0c8d4}.inp.err{border-color:#dc2626}.btn-primary{cursor:pointer;background:var(--brand-gradient);width:100%;color:var(--ink);box-shadow:0 6px 20px var(--brand-gradient-shadow);border:none;border-radius:12px;padding:14px;font-family:inherit;font-size:16px;font-weight:700;transition:opacity .2s,box-shadow .2s}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:#64748b;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;width:100%;padding:12px;font-family:inherit;font-size:14px;font-weight:600;transition:all .2s}.btn-secondary:hover{border-color:var(--brand-blue);color:var(--brand-accent-strong)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.otp-group{justify-content:center;gap:8px;display:flex}.otp-box{text-align:center;min-width:0;max-width:56px;height:56px;color:var(--ink);background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;outline:none;flex:1 1 0;font-family:inherit;font-size:24px;font-weight:700;transition:border .2s}.otp-box:focus{border-color:var(--brand-blue)}.otp-box.err{border-color:#dc2626}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{color:#475569;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;padding:10px 16px;font-size:14px;font-weight:500;transition:all .2s}.chip:hover{border-color:var(--brand-blue)}.chip:active{transform:scale(.97)}.chip.on{background:var(--brand-gradient);color:var(--ink);border-color:#0000;font-weight:700}.mbti-opt{cursor:pointer;text-align:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;flex:1;padding:16px 12px;font-family:inherit;transition:all .2s}.mbti-opt:hover{border-color:var(--brand-blue)}.mbti-opt:active{transform:scale(.97)}.status-badge{border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex}.status-badge.waiting{color:#92400e;background:#fef3c7}.status-badge.active{color:#065f46;background:#d1fae5}.status-badge.done{color:#3730a3;background:#e0e7ff}.timer{color:#1e293b;text-align:center;font-variant-numeric:tabular-nums;font-size:48px;font-weight:800}.profile-card{background:#fff;border-radius:16px;margin-bottom:16px;overflow:hidden;box-shadow:0 2px 12px #0000000f}.profile-card img{aspect-ratio:3/4;object-fit:cover;width:100%}.profile-card .info{padding:16px}.rank-btn{color:#64748b;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:16px;font-weight:700;transition:all .2s;display:flex}.rank-btn.selected{background:var(--brand-gradient);color:var(--ink);border-color:#0000}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-up{animation:.25s ease-out sheetUp}@media (prefers-reduced-motion:reduce){.sheet-up{animation:none}}.footer{text-align:center;color:#cbd5e1;margin-top:24px;padding-bottom:20px;font-size:11px}.error-msg{color:#dc2626;margin-top:4px;font-size:12px}@media (width<=520px){.container{padding:12px}.card{padding:18px}}
