:root{--bg-canvas: #0b0c0e;--bg-surface: #14161a;--bg-glass: rgba(20, 22, 26, .72);--bg-glass-hover: rgba(30, 33, 40, .86);--text-primary: #f2efe9;--text-secondary: #9b978f;--text-muted: #63605a;--accent-red: #e13b2b;--accent-red-soft: rgba(225, 59, 43, .16);--accent-amber: #d99b43;--accent-amber-soft: rgba(217, 155, 67, .14);--border-subtle: rgba(242, 239, 233, .08);--border-highlight: rgba(242, 239, 233, .18);--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Display", "PingFang SC", "Helvetica Neue", sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, monospace;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 24px;--radius-pill: 999px;--eo: cubic-bezier(.22, 1, .36, 1);--spring: cubic-bezier(.34, 1.45, .64, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-canvas);color:var(--text-primary);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}button{font-family:inherit;color:inherit;border:none;background:none;cursor:pointer;outline:none}.ambient-bloom{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.bloom-orb{position:absolute;border-radius:42% 58% 63% 37%/41% 44% 56% 59%;filter:blur(90px);opacity:.32;will-change:transform}.bloom-orb--red{width:520px;height:520px;top:-140px;right:-100px;background:radial-gradient(circle,rgba(225,59,43,.45),transparent 70%);animation:bloom-drift-1 18s ease-in-out infinite alternate}.bloom-orb--amber{width:460px;height:460px;bottom:-160px;left:-120px;background:radial-gradient(circle,rgba(217,155,67,.32),transparent 70%);animation:bloom-drift-2 22s ease-in-out infinite alternate}.bloom-orb--steel{width:400px;height:400px;top:40%;left:35%;background:radial-gradient(circle,rgba(95,108,128,.24),transparent 70%);animation:bloom-drift-3 25s ease-in-out infinite alternate}@keyframes bloom-drift-1{0%{transform:translate(0) scale(1) rotate(0)}to{transform:translate(-60px,50px) scale(1.12) rotate(18deg)}}@keyframes bloom-drift-2{0%{transform:translate(0) scale(1) rotate(0)}to{transform:translate(70px,-40px) scale(1.08) rotate(-14deg)}}@keyframes bloom-drift-3{0%{transform:translate(0) scale(.95)}to{transform:translate(-40px,-60px) scale(1.15)}}.top-nav-wrap{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;justify-content:center;padding:16px 20px 0;pointer-events:none}.top-nav{pointer-events:auto;width:100%;max-width:920px;height:56px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-radius:var(--radius-pill);border:1px solid transparent;background:transparent;transition:background-color .5s var(--eo),backdrop-filter .5s var(--eo),height .6s var(--eo),padding .6s var(--eo),max-width .75s var(--eo),border-color .5s var(--eo)}.top-nav.scrolled{max-width:680px;height:48px;padding:0 18px;background:#121418bd;backdrop-filter:blur(12px) saturate(1.5);-webkit-backdrop-filter:blur(12px) saturate(1.5);border-color:var(--border-highlight);box-shadow:0 12px 32px #00000073}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 28px;border-radius:var(--radius-pill);background:var(--accent-red);color:#fff;font-size:16px;font-weight:600;letter-spacing:-.01em;box-shadow:0 8px 24px #e13b2b47;transition:transform .25s var(--eo),box-shadow .25s var(--eo),background-color .2s ease}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 28px #e13b2b66;background:#eb4738}.btn-primary:active{transform:scale(.98);transition-duration:.1s}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 22px;border-radius:var(--radius-pill);background:#f2efe90f;border:1px solid var(--border-highlight);color:var(--text-primary);font-size:15px;font-weight:500;transition:transform .25s var(--eo),background-color .2s ease,border-color .2s ease}.btn-secondary:hover{transform:translateY(-1px);background:#f2efe91c}.btn-secondary:active{transform:scale(.98);transition-duration:.1s}.option-list{display:flex;flex-direction:column;gap:12px}.option-card{width:100%;text-align:left;padding:18px 20px;border-radius:var(--radius-md);background:var(--bg-glass);border:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:space-between;gap:16px;transition:transform .3s var(--spring),background-color .25s var(--eo),border-color .25s var(--eo),opacity .25s var(--eo)}.option-card:hover{transform:translateY(-2px) scale(1.01);background:var(--bg-glass-hover);border-color:var(--border-highlight)}.option-list:hover .option-card:not(:hover){opacity:.72}.option-card:active{transform:scale(.98);transition-duration:.1s}.option-card.selected{border-color:var(--accent-red);background:#e13b2b1f}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.animate-rise{animation:rise-in .45s var(--eo) both}.app-shell{position:relative;min-height:100vh;padding-top:96px;padding-bottom:72px;z-index:1}.main-container{width:100%;max-width:720px;margin:0 auto;padding:0 20px}.nav-brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;letter-spacing:-.02em}.nav-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-red);box-shadow:0 0 12px var(--accent-red)}.btn-ghost{font-size:14px;font-weight:500;color:var(--text-secondary);padding:6px 12px;border-radius:var(--radius-pill);transition:color .2s ease,background-color .2s ease}.btn-ghost:hover{color:var(--text-primary);background:#f2efe90f}.invite-banner{margin-bottom:20px;padding:12px 16px;border-radius:var(--radius-md);background:var(--accent-amber-soft);border:1px solid rgba(217,155,67,.28);color:var(--accent-amber);font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:space-between}.hero-stage{padding-top:28px}.hero-eyebrow{display:inline-block;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:var(--accent-amber);margin-bottom:14px}.hero-title{font-size:clamp(32px,6vw,48px);font-weight:700;line-height:1.12;letter-spacing:-.03em;margin-bottom:28px}.birthday-panel{padding:28px;border-radius:var(--radius-lg);background:var(--bg-glass);border:1px solid var(--border-highlight);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;flex-direction:column;gap:24px}.date-selectors{display:grid;grid-template-columns:1fr 1fr;gap:14px}.select-box{display:flex;flex-direction:column;gap:8px}.field-label{font-size:12px;font-weight:500;color:var(--text-secondary);letter-spacing:.04em}.date-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:52px;padding:0 16px;border-radius:var(--radius-md);background:#0b0c0eb3;border:1px solid var(--border-highlight);color:var(--text-primary);font-size:18px;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:border-color .2s ease}.date-select:focus{outline:none;border-color:var(--accent-red)}.panel-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.reveal-card{margin-top:24px;padding:32px;border-radius:var(--radius-lg);background:var(--bg-glass);border:1px solid var(--border-highlight);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.reveal-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.mono-badge{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--accent-amber);letter-spacing:.06em}.reveal-bloodline{font-size:clamp(26px,4.5vw,36px);font-weight:700;letter-spacing:-.02em;margin-bottom:12px}.reveal-hint{font-size:16px;color:var(--text-secondary);margin-bottom:28px}.quiz-stage{margin-top:16px}.quiz-progress-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.quiz-track{width:100%;height:3px;border-radius:99px;background:#f2efe914;overflow:hidden;margin-bottom:32px}.quiz-fill{height:100%;background:var(--accent-red);transition:width .45s var(--eo)}.quiz-prompt{font-size:clamp(22px,4vw,28px);font-weight:700;line-height:1.32;letter-spacing:-.02em;margin-bottom:24px}.option-index{font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.result-stage{display:flex;flex-direction:column;gap:20px}.license-card{position:relative;overflow:hidden;padding:28px;border-radius:var(--radius-lg);background:linear-gradient(155deg,#1c1f26e6,#0e0f12f0);border:1px solid var(--border-highlight);box-shadow:0 24px 60px #0000008c;transition:transform .18s ease-out;will-change:transform}.license-card__glow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%),rgba(242,239,233,.08),transparent 60%)}.license-card__head{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--border-subtle);margin-bottom:22px}.meta-date{font-size:13px;color:var(--text-secondary)}.license-card__soul{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:12px;margin-bottom:20px}.soul-name{font-size:clamp(24px,4.5vw,34px);font-weight:700;letter-spacing:-.02em;margin:4px 0 6px}.brand-code{font-family:var(--font-mono);font-size:12px;color:var(--accent-red);letter-spacing:.08em}.car-svg{width:100%;height:auto;display:block}.license-card__real{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:var(--radius-md);background:#f2efe90a;border:1px solid var(--border-subtle);margin-bottom:22px}.real-name{font-size:18px;font-weight:600;margin-top:2px}.car-svg-sm{width:128px;height:auto;display:block}.license-card__verdict{margin-bottom:20px}.verdict-quote{font-size:18px;font-weight:700;color:var(--accent-amber);margin-bottom:8px}.verdict-monologue{font-size:15px;color:var(--text-secondary);line-height:1.6}.license-card__tags{display:flex;flex-wrap:wrap;gap:8px}.tag-chip{font-size:12px;padding:6px 12px;border-radius:var(--radius-pill);background:#f2efe90f;border:1px solid var(--border-subtle);color:var(--text-primary)}.result-actions{display:flex;flex-wrap:wrap;gap:10px}.copy-toast{font-size:13px;color:var(--accent-amber);margin-top:4px}.duo-stage{padding:28px;border-radius:var(--radius-lg);background:var(--bg-glass);border:1px solid var(--border-highlight);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.duo-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.duo-title{font-size:clamp(24px,4vw,32px);font-weight:700;letter-spacing:-.02em;margin-bottom:10px}.duo-comment{font-size:15px;color:var(--text-secondary);margin-bottom:24px;line-height:1.6}.duo-bays{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}.bay-card{padding:16px;border-radius:var(--radius-md);background:#0b0c0e8c;border:1px solid var(--border-subtle)}.bay-card--partner{border-color:#d99b4347}.bay-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.bay-svg{width:100%;height:auto;margin-bottom:10px}.bay-car-name{font-size:16px;font-weight:700}.bay-real-name{font-size:13px;color:var(--text-secondary);margin-top:4px}.duo-switcher{display:flex;flex-direction:column;gap:10px;padding-top:16px;border-top:1px solid var(--border-subtle)}.switcher-pills{display:flex;flex-wrap:wrap;gap:8px}.pill-btn{font-family:var(--font-mono);font-size:12px;padding:6px 12px;border-radius:var(--radius-pill);background:#f2efe90d;border:1px solid var(--border-subtle);color:var(--text-secondary);transition:all .2s var(--eo)}.pill-btn:hover{color:var(--text-primary);border-color:var(--border-highlight)}.pill-btn.active{background:var(--accent-red);border-color:var(--accent-red);color:#fff}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#000000a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;justify-content:flex-end}.drawer-panel{width:100%;max-width:440px;height:100%;background:#111317;border-left:1px solid var(--border-highlight);padding:24px;display:flex;flex-direction:column;gap:18px;overflow-y:auto}.drawer-header{display:flex;align-items:center;justify-content:space-between}.drawer-title{font-size:20px;font-weight:700}.sliding-tabs{position:relative;display:grid;grid-template-columns:repeat(4,1fr);padding:4px;border-radius:var(--radius-pill);background:#f2efe90f;border:1px solid var(--border-subtle)}.sliding-pill{position:absolute;top:4px;left:4px;bottom:4px;border-radius:var(--radius-pill);background:var(--text-primary);transition:transform .35s var(--spring)}.sliding-tab{position:relative;z-index:1;height:34px;font-size:13px;font-weight:600;color:var(--text-secondary);transition:color .25s ease}.sliding-tab.active{color:var(--bg-canvas)}.drawer-list{display:flex;flex-direction:column;gap:10px}.drawer-item{width:100%;padding:14px 16px;border-radius:var(--radius-md);background:#f2efe90a;border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;transition:transform .25s var(--eo),border-color .2s ease}.drawer-item:hover{transform:translateY(-2px);border-color:var(--border-highlight)}.drawer-item__meta{display:flex;flex-direction:column;gap:4px}.drawer-item__soul{font-size:15px;font-weight:700}.drawer-item__real{font-size:12px;color:var(--text-secondary)}.drawer-item__svg{width:104px;height:auto;flex-shrink:0}@media(max-width:600px){.license-card__soul,.duo-bays{grid-template-columns:1fr}.panel-actions{flex-direction:column;align-items:stretch}}
