:root{--font-display:"Syne", -apple-system, sans-serif;--font-serif:"Syne", -apple-system, sans-serif;--font-sans:"Plus Jakarta Sans", "Outfit", sans-serif;--bg-deep:#0b0912;--bg-surface:#120e1c;--bg-card:#181224eb;--bg-glass:#1c162cbf;--accent-gold:#fa0;--accent-flame:#ff5722;--accent-pink:#ff2a85;--accent-violet:#9333ea;--accent-lime:#c6ff00;--accent-cyan:#00f0ff;--border-bold:#ffffff29;--border-subtle:#ffffff14;--border-neon:#ff572273;--text-primary:#fff;--text-secondary:#d6cee0;--text-muted:#8e839e;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-pill:9999px;--shadow-neo:0 8px 30px #0009, 0 0 40px #ff57222e}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{background-color:var(--bg-deep);width:100%;height:100%;color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#ff572229 0%,#ff2a851a 40%,#0000 70%);width:600px;height:600px;position:fixed;top:-120px;left:50%;transform:translate(-50%)}body:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#9333ea1f 0%,#0000 65%);width:500px;height:500px;position:fixed;bottom:-150px;right:-80px}#root{z-index:1;justify-content:center;align-items:stretch;min-height:100%;display:flex;position:relative}@keyframes floatUpFade{0%{opacity:1;transform:translateY(0)scale(.6)rotate(0)}50%{transform:translateY(-50px)scale(1.2)rotate(15deg)}to{opacity:0;transform:translateY(-110px)scale(1.4)rotate(-15deg)}}.floating-reaction-emoji{pointer-events:none;z-index:100;font-size:2rem;animation:1.1s cubic-bezier(.16,1,.3,1) forwards floatUpFade;position:absolute}@keyframes mascotWiggle{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-3px)rotate(-3deg)}75%{transform:translateY(-1px)rotate(3deg)}}.mascot-wiggle{animation:3.5s ease-in-out infinite mascotWiggle}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:4px}.app-viewport{background:var(--bg-deep);border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);flex-direction:column;width:100%;max-width:440px;height:100dvh;display:flex;position:relative;overflow:hidden;box-shadow:0 0 80px #000000e6}@media (width<=500px){.app-viewport{box-shadow:none;border-left:none;border-right:none}}.zen-header{z-index:30;background:0 0;justify-content:space-between;align-items:center;height:56px;padding:0 16px;display:flex}.brand-minimal{cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:0;display:flex}.flame-mini-glow{width:28px;height:28px;color:var(--accent-gold);background:radial-gradient(circle,#f59e0b40 0%,#0000 70%);border-radius:50%;justify-content:center;align-items:center;animation:3s ease-in-out infinite pulseSubtle;display:flex}.brand-mini-text{font-family:var(--font-display);letter-spacing:-.02em;background:linear-gradient(135deg,#fffbeb 30%,#ff5722 70%,#ff2a85 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.25rem;font-weight:900}.deck-pill-btn{-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);color:var(--text-primary);cursor:pointer;background:#ffffff0f;align-items:center;gap:6px;max-width:200px;padding:6px 14px;font-size:.8rem;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.deck-pill-btn:hover{border-color:var(--border-medium);background:#ffffff1f;transform:translateY(-1px)}.deck-pill-btn:active{transform:scale(.97)}.deck-pill-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.header-right-actions{align-items:center;gap:6px;display:flex}.mini-action-btn{border-radius:var(--radius-pill);border:1px solid var(--border-subtle);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;background:#ffffff0d;justify-content:center;align-items:center;transition:all .2s;display:flex}.mini-action-btn:hover{color:var(--text-primary);background:#ffffff1a}.mini-action-btn.active{border-color:var(--accent-gold);color:var(--accent-gold);background:#f59e0b2e}.mascot-bar{-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-pill);cursor:pointer;z-index:10;background:#ffffff0d;border:1px solid #ffffff1f;align-items:center;gap:10px;margin:0 16px 8px;padding:6px 14px 6px 6px;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 18px #00000059}.mascot-bar:hover{background:#ffffff14;border-color:#ff572273;transform:translateY(-1px)}.mascot-bar:active{transform:scale(.98)}.mascot-avatar-wrapper{border-radius:50%;flex-shrink:0;width:34px;height:34px;position:relative}.mascot-avatar-img{object-fit:cover;border:2px solid var(--accent-flame);border-radius:50%;width:100%;height:100%;display:block;box-shadow:0 0 10px #ff572280}.mascot-online-dot{background:var(--accent-lime);border:2px solid var(--bg-deep);width:9px;height:9px;box-shadow:0 0 6px var(--accent-lime);border-radius:50%;position:absolute;bottom:-1px;right:-1px}.mascot-speech-bubble{flex-direction:column;flex:1;min-width:0;display:flex}.mascot-name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--accent-gold);font-size:.65rem;font-weight:800;line-height:1.1}.mascot-bubble-text{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;font-weight:600;line-height:1.25;overflow:hidden}.mascot-tap-indicator{font-family:var(--font-display);color:var(--accent-pink);border-radius:var(--radius-pill);letter-spacing:.04em;background:#ff2a8526;border:1px solid #ff2a854d;flex-shrink:0;padding:3px 8px;font-size:.65rem;font-weight:800}.card-arena{perspective:1200px;-webkit-user-select:none;user-select:none;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:8px 18px 18px;display:flex;position:relative}.arena-top-counter{justify-content:space-between;align-items:center;width:100%;margin-bottom:10px;padding:0 4px;display:flex}.counter-text{color:var(--text-muted);letter-spacing:.03em;font-size:.75rem;font-weight:600}.depth-indicator{color:var(--accent-amber);border-radius:var(--radius-pill);background:#f59e0b1a;border:1px solid #f59e0b40;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:600;transition:all .3s;display:flex}.flip-card-wrapper{width:100%;height:100%;max-height:520px;transform-style:preserve-3d;cursor:pointer;transition:transform .55s cubic-bezier(.2,.8,.2,1);position:relative}.flip-card-wrapper.is-flipped{transform:rotateY(180deg)}@keyframes slideInFromRight{0%{opacity:0;transform:translate(60px)scale(.92)rotate(3deg)}to{opacity:1;transform:translate(0)scale(1)rotate(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-60px)scale(.92)rotate(-3deg)}to{opacity:1;transform:translate(0)scale(1)rotate(0)}}.card-anim-next{animation:.38s cubic-bezier(.16,1,.3,1) forwards slideInFromRight}.card-anim-prev{animation:.38s cubic-bezier(.16,1,.3,1) forwards slideInFromLeft}.card-face{backface-visibility:hidden;border-radius:var(--radius-xl);border:1px solid var(--border-medium);flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:26px 22px;display:flex;position:absolute;inset:0;overflow:hidden;box-shadow:0 16px 45px #000000a6,0 0 35px #f59e0b1f}.card-front{background:radial-gradient(circle at 50% 0,#231c34f2 0%,#120e1afa 100%)}.card-front:hover{border-color:#f59e0b66}.card-header-badge{justify-content:space-between;align-items:center;display:flex}.tag-context{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:#0c0a12;background:var(--accent-lime);border-radius:6px;padding:4px 10px;font-size:.72rem;font-weight:900;transition:transform .2s;display:inline-block;transform:rotate(-1.5deg);box-shadow:2px 2px #000c}.card-prompt-center{text-align:center;flex:1;justify-content:center;align-items:center;padding:16px 4px;display:flex}.card-prompt-typography{font-family:var(--font-display);color:#fff;letter-spacing:-.02em;text-shadow:0 4px 24px #000000b3;font-size:1.48rem;font-weight:800;line-height:1.38}@media (height<=680px){.card-prompt-typography{font-size:1.28rem}}.tap-to-flip-hint{color:var(--accent-amber);opacity:.85;justify-content:center;align-items:center;gap:6px;padding-top:10px;font-size:.75rem;transition:opacity .2s;display:flex}.tap-to-flip-hint:hover{opacity:1}.card-back{background:radial-gradient(circle at 50% 100%,#1e182efa 0%,#0e0a14fc 100%);border-color:#f59e0b59;justify-content:flex-start;gap:16px;overflow-y:auto;transform:rotateY(180deg)}.back-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.back-title{text-transform:uppercase;letter-spacing:.06em;color:var(--accent-gold);align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:flex}.back-section{flex-direction:column;gap:6px;display:flex}.back-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.72rem;font-weight:700}.back-section-text{color:var(--text-secondary);font-size:.84rem;line-height:1.45}.back-followup-pill{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:#ffffff0a;margin-top:4px;padding:8px 12px;font-size:.82rem;line-height:1.4}.back-pivot-box{border-radius:var(--radius-md);color:var(--accent-amber);background:#f59e0b14;border:1px dashed #f59e0b4d;padding:10px 12px;font-size:.8rem;line-height:1.4}.emoji-reaction-bar{z-index:10;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:14px;margin-bottom:2px;display:flex}.emoji-reaction-chip{border-radius:var(--radius-pill);color:var(--text-primary);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff24;align-items:center;gap:5px;padding:6px 12px;font-size:.74rem;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 2px 8px #00000059}.emoji-reaction-chip:hover{border-color:var(--accent-flame);background:#ffffff29;transform:translateY(-2px)scale(1.08)}.emoji-reaction-chip:active{transform:scale(.92)}.reaction-emoji{font-size:1rem;line-height:1}.reaction-label{font-family:var(--font-display);letter-spacing:.04em;color:#fff;font-size:.7rem;font-weight:800}.set-complete-box{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-xl);text-align:center;border:1px solid #ffaa0073;flex-direction:column;align-items:center;gap:14px;width:100%;padding:26px 20px;animation:.3s fadeIn;display:flex;box-shadow:0 16px 45px #000000b3,0 0 40px #ffaa0040}.complete-mascot-frame{border-radius:var(--radius-lg);border:3px solid var(--accent-gold);width:160px;height:160px;margin-bottom:2px;position:relative;overflow:hidden;box-shadow:0 8px 30px #ffaa0073}.complete-mascot-img{object-fit:cover;width:100%;height:100%;display:block}.complete-sticker-badge{background:var(--accent-pink);color:#fff;font-family:var(--font-display);letter-spacing:.08em;border-radius:var(--radius-pill);white-space:nowrap;padding:4px 12px;font-size:.72rem;font-weight:900;position:absolute;bottom:8px;left:50%;transform:translate(-50%)rotate(-2deg);box-shadow:2px 2px #000000e6}.complete-title{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.01em;font-size:1.45rem;font-weight:900}.complete-desc{color:var(--text-secondary);font-size:.85rem;line-height:1.5}.complete-btn-bold{font-family:var(--font-display);letter-spacing:.02em;font-size:.95rem;font-weight:800;box-shadow:0 4px 20px #ff2a8573;background:linear-gradient(135deg, var(--accent-flame), var(--accent-pink))!important;color:#fff!important}.floating-dock{z-index:20;justify-content:space-between;align-items:center;gap:12px;padding:10px 20px 24px;display:flex}.dock-icon-btn{border-radius:var(--radius-pill);border:1px solid var(--border-subtle);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;background:#ffffff0f;justify-content:center;align-items:center;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.dock-icon-btn:hover{color:var(--text-primary);background:#ffffff1f;transform:translateY(-1px)}.dock-icon-btn:active{transform:scale(.92)}.dock-icon-btn.active{border-color:var(--accent-gold);color:var(--accent-gold);background:#f59e0b33}.dock-primary-btn{border-radius:var(--radius-pill);color:#0c0a12;cursor:pointer;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border:none;flex:1;justify-content:center;align-items:center;gap:8px;height:48px;font-size:.95rem;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 18px #f59e0b59}.dock-primary-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px #f59e0b80}.dock-primary-btn:active{transform:scale(.98)}.modal-overlay{-webkit-backdrop-filter:blur(10px);z-index:100;background:#000000c7;justify-content:center;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-sheet{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);border:1px solid var(--border-medium);background:#120e1a;border-bottom:none;flex-direction:column;gap:16px;width:100%;max-width:460px;max-height:85vh;padding:18px 20px 32px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;display:flex;overflow-y:auto;box-shadow:0 -12px 48px #000000d9}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-handle{background:#ffffff40;border-radius:2px;align-self:center;width:36px;height:4px}.sheet-header{justify-content:space-between;align-items:center;display:flex}.sheet-heading{font-family:var(--font-serif);color:var(--text-primary);font-size:1.25rem;font-weight:700}.sheet-close-btn{border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.drawer-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-top:4px;font-size:.72rem;font-weight:700}.set-pills-container{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.set-pill-item{border-radius:var(--radius-md);border:1px solid var(--border-subtle);cursor:pointer;background:#ffffff08;justify-content:space-between;align-items:center;padding:10px 14px;transition:all .2s;display:flex}.set-pill-item:hover{border-color:var(--border-medium);background:#ffffff12}.set-pill-item.active{border-color:var(--accent-gold);background:#f59e0b24}.set-pill-name{color:var(--text-primary);font-size:.85rem;font-weight:700}.set-pill-sub{color:var(--text-muted);font-size:.72rem}.deck-list{flex-direction:column;gap:8px;display:flex}.deck-item-drawer{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);cursor:pointer;background:#ffffff08;justify-content:space-between;align-items:center;padding:12px 14px;transition:all .2s;display:flex}.deck-item-drawer:hover{border-color:var(--border-medium);background:#ffffff12}.deck-item-drawer.active{border-color:var(--accent-gold);background:#f59e0b1f}.deck-item-left{align-items:center;gap:12px;display:flex}.deck-icon-badge{border-radius:var(--radius-md);color:#fff;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.deck-item-meta{flex-direction:column;display:flex}.deck-item-name{color:var(--text-primary);font-size:.9rem;font-weight:700}.deck-item-sub{color:var(--text-muted);font-size:.72rem}.subview-container{flex-direction:column;flex:1;gap:16px;padding:12px 18px 24px;display:flex;overflow-y:auto}.subview-header{justify-content:space-between;align-items:center;display:flex}.subview-back-btn{color:var(--accent-gold);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;font-size:.82rem;font-weight:600;display:flex}.guess-box{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-medium);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);flex-direction:column;gap:16px;padding:22px 18px;display:flex}.guess-prompt{font-family:var(--font-display);color:var(--text-primary);text-align:center;font-size:1.3rem;font-weight:800;line-height:1.35}.guess-options-grid{flex-direction:column;gap:8px;display:flex}.guess-option-btn{border-radius:var(--radius-md);border:1px solid var(--border-subtle);color:var(--text-secondary);text-align:left;cursor:pointer;background:#ffffff08;justify-content:space-between;align-items:center;padding:12px 14px;font-size:.85rem;line-height:1.35;transition:all .2s;display:flex}.guess-option-btn:hover{color:var(--text-primary);background:#ffffff12}.guess-option-btn.selected{border-color:var(--accent-gold);color:var(--text-primary);background:#f59e0b26;font-weight:500}.guess-option-btn.match{border-color:var(--accent-emerald);color:#a7f3d0;background:#10b9812e}.guess-option-btn.miss{border-color:var(--accent-red);color:#fecdd3;background:#f43f5e26}.reveal-box{border:1px solid var(--border-medium);border-radius:var(--radius-lg);background:#0e0a14f2;flex-direction:column;gap:8px;padding:16px;display:flex}.reflection-text{color:var(--text-secondary);font-size:.82rem;line-height:1.45}.fav-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;gap:8px;padding:16px;display:flex}.fav-prompt{font-family:var(--font-serif);color:var(--text-primary);font-size:1rem;line-height:1.4}
