@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap";:root{--bg:#0e1420;--surface:#181f2e;--surface-raised:#1f2740;--border:#273044;--text-primary:#f0ebe5;--text-secondary:#8e95a6;--text-muted:#606878;--accent:#b99abf;--accent-soft:#b99abf22;--accent-glow:#b99abf18;--success:#81b29a;--wrong:#c4635a;--font-display:"DM Serif Display", serif;--font-body:"DM Sans", sans-serif;--text-caps:11px;--text-secondary-size:13px;--text-body:15px;--text-button:16px;--text-title:28px;--text-statement:40px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:20px;--space-2xl:24px;--space-3xl:28px;--space-4xl:32px;--space-5xl:48px;--screen-padding:28px;--radius:10px;--radius-pill:100px;--ease-enter:ease-out;--ease-exit:ease-in;--ease-move:ease-in-out;--duration-fast:.15s;--duration-reveal:.2s;--duration-slide:.3s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:var(--bg);width:100%;height:100%;color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overflow-x:hidden}a{color:var(--accent);text-decoration:none}button{font-family:var(--font-body);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none}input,textarea{font-family:var(--font-body);-webkit-appearance:none}.tab-bar{justify-content:center;gap:var(--space-xs);padding:var(--space-sm) var(--screen-padding) calc(var(--space-sm) + var(--tg-safe-area-inset-bottom,env(safe-area-inset-bottom)));background:var(--surface);border-top:1px solid var(--border);z-index:100;display:flex;position:fixed;bottom:0;left:0;right:0}.tab-item{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-pill);color:var(--text-muted);font-family:var(--font-body);font-size:var(--text-secondary-size);cursor:pointer;transition:all var(--duration-fast) var(--ease-enter);background:0 0;border:none;font-weight:500;display:flex}.tab-item.active{background:var(--accent-soft);color:var(--accent)}.tab-icon{font-size:18px;line-height:1}.tab-label{font-family:var(--font-body);letter-spacing:.5px}.layout{flex-direction:column;min-height:100dvh;display:flex}.layout-content{padding:var(--screen-padding);padding-top:calc(var(--screen-padding) + var(--tg-content-safe-area-inset-top,0px) + var(--tg-safe-area-inset-top,env(safe-area-inset-top)));flex:1;width:100%;max-width:375px;margin:0 auto}.hub-layout .layout-content{padding-bottom:calc(72px + var(--tg-safe-area-inset-bottom,env(safe-area-inset-bottom)))}.page-title{font-family:var(--font-display);font-size:var(--text-title);color:var(--text-primary);margin:0 0 var(--space-2xl);font-weight:400}.page-loading{height:60dvh;color:var(--text-muted);font-family:var(--font-body);font-size:var(--text-body);justify-content:center;align-items:center;display:flex}.contacts-list{gap:var(--space-sm);flex-direction:column;display:flex}.contact-card{align-items:center;gap:var(--space-lg);padding:var(--space-lg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:background var(--duration-fast) var(--ease-enter);text-align:left;width:100%;font-family:var(--font-body);display:flex}.contact-card:active{background:var(--surface-raised)}.contact-avatar{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);font-family:var(--font-display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}.contact-info{flex-direction:column;flex:1;gap:2px;display:flex}.contact-name{color:var(--text-primary);font-size:var(--text-body);font-weight:500}.contact-status{color:var(--accent);font-size:var(--text-secondary-size)}.contact-arrow{color:var(--text-muted);font-size:24px}.back-link{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-body);cursor:pointer;margin-bottom:var(--space-lg);background:0 0;border:none;padding:0;display:block}.contact-header{text-align:center;margin-bottom:var(--space-4xl);flex-direction:column;align-items:center;display:flex}.contact-avatar-lg{background:var(--accent-soft);width:72px;height:72px;color:var(--accent);font-family:var(--font-display);margin-bottom:var(--space-lg);border-radius:50%;justify-content:center;align-items:center;font-size:32px;display:flex}.contact-stats{gap:var(--space-lg);display:flex}.stat{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-secondary-size)}.game-cards{gap:var(--space-md);flex-direction:column;display:flex}.game-card{padding:var(--space-xl);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.game-card-soon{opacity:.5;justify-content:space-between;align-items:center;display:flex}.game-card-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.game-card-title{font-family:var(--font-display);color:var(--text-primary);margin:0;font-size:18px;font-weight:400}.game-card-badge{font-family:var(--font-body);font-size:var(--text-caps);letter-spacing:1.2px;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:var(--radius-pill);padding:2px 10px;font-weight:600}.badge-soon{color:var(--text-muted);border:1px solid var(--border);background:0 0}.game-card-desc{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-secondary-size);margin:0 0 var(--space-lg);line-height:1.4}.game-card-actions{gap:var(--space-sm);display:flex}.btn{padding:var(--space-md) var(--space-xl);border-radius:var(--radius);font-family:var(--font-body);font-size:var(--text-button);cursor:pointer;transition:opacity var(--duration-fast) var(--ease-enter);border:none;flex:1;font-weight:500}.btn:active{opacity:.8}.btn-primary{background:var(--accent);color:var(--bg)}.btn-secondary{background:var(--surface-raised);color:var(--text-primary);border:1px solid var(--border)}.history-link{text-align:center;width:100%;margin-top:var(--space-2xl);color:var(--accent);font-family:var(--font-body);font-size:var(--text-body);cursor:pointer;background:0 0;border:none;display:block}.library-empty{text-align:center;margin-top:var(--space-5xl);align-items:center;gap:var(--space-2xl);flex-direction:column;display:flex}.statements-list{gap:var(--space-sm);flex-direction:column;display:flex}.statement-card{padding:var(--space-lg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:left;cursor:pointer;width:100%;font-family:var(--font-body);transition:background var(--duration-fast) var(--ease-enter);flex-direction:column;display:flex}.statement-card:active{background:var(--surface-raised)}.statement-body{font-family:var(--font-display);color:var(--text-primary);margin-bottom:var(--space-md);font-size:18px;font-style:italic;line-height:1.4}.statement-meta{align-items:center;gap:var(--space-sm);display:flex}.tf-badge{font-family:var(--font-body);font-size:var(--text-caps);letter-spacing:1.5px;text-transform:uppercase;border-radius:var(--radius-pill);padding:2px 8px;font-weight:600}.tf-true{color:var(--success);background:#81b29a18}.tf-false{color:var(--wrong);background:#c4635a18}.statement-has-comment{color:var(--text-muted);font-family:var(--font-body);font-size:var(--text-caps)}.fab{bottom:calc(72px + var(--space-lg) + var(--tg-safe-area-inset-bottom,env(safe-area-inset-bottom)));right:var(--screen-padding);background:var(--accent);width:56px;height:56px;color:var(--bg);cursor:pointer;z-index:50;transition:transform var(--duration-fast) var(--ease-enter);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:28px;font-weight:300;display:flex;position:fixed;box-shadow:0 4px 16px #b99abf40}.fab:active{transform:scale(.92)}.statement-preview{font-family:var(--font-display);font-style:italic;font-size:var(--text-statement);color:var(--text-primary);margin-bottom:var(--space-2xl);min-height:60px;line-height:1.1;position:relative}.statement-preview:after{content:"";background:radial-gradient(ellipse, var(--accent-glow), transparent 70%);z-index:-1;pointer-events:none;width:200px;height:200px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.new-statement-form{gap:var(--space-lg);flex-direction:column;display:flex}.form-group{margin-bottom:0}.form-label{font-family:var(--font-body);font-size:var(--text-caps);letter-spacing:1.2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-sm);font-weight:600;display:block}.form-textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-body);padding:var(--space-lg);resize:none;transition:border-color var(--duration-fast) var(--ease-enter);box-sizing:border-box;outline:none}.form-textarea:focus{border-color:var(--accent)}.form-textarea-sm{font-size:var(--text-secondary-size)}.tf-toggle{gap:var(--space-sm);display:flex}.tf-toggle-btn{padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-button);cursor:pointer;transition:all var(--duration-fast) var(--ease-enter);flex:1;font-weight:500}.tf-toggle-btn.active{color:var(--bg)}.tf-true-bg{background:var(--success);border-color:var(--success)}.tf-false-bg{background:var(--wrong);border-color:var(--wrong)}.new-statement-footer{padding:var(--space-lg) 0;padding-bottom:calc(var(--space-lg) + var(--tg-safe-area-inset-bottom,env(safe-area-inset-bottom)));background:linear-gradient(transparent, var(--bg) 30%);gap:var(--space-lg);flex-direction:column;margin-top:auto;display:flex;position:sticky;bottom:0}.delete-link{color:var(--text-muted);font-family:var(--font-body);font-size:var(--text-secondary-size);cursor:pointer;padding:var(--space-sm);text-align:center;background:0 0;border:none}.delete-confirm{text-align:center}.delete-confirm-text{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-body);margin:0 0 var(--space-md)}.delete-confirm-actions{gap:var(--space-sm);display:flex}.btn-delete{padding:var(--space-md);background:var(--wrong);color:var(--bg);border-radius:var(--radius);font-family:var(--font-body);font-size:var(--text-button);cursor:pointer;border:none;flex:1;font-weight:500}.delete-confirm-actions .btn-secondary{flex:1}.send-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.send-header .page-title{margin:0}.send-counter{font-family:var(--font-body);font-size:var(--text-button);color:var(--text-muted);background:var(--surface);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-pill);font-weight:600}.counter-ready{color:var(--success);background:#81b29a18}.send-hint{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-secondary-size);margin:0 0 var(--space-2xl)}.send-not-enough{text-align:center;margin-top:var(--space-5xl);align-items:center;gap:var(--space-lg);flex-direction:column;display:flex}.send-list{gap:var(--space-xs);margin-bottom:var(--space-4xl);flex-direction:column;display:flex}.send-item{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;text-align:left;width:100%;font-family:var(--font-body);transition:all var(--duration-fast) var(--ease-enter);display:flex}.send-item.selected{border-color:var(--accent);background:var(--accent-soft)}.send-check{color:var(--text-muted);text-align:center;flex-shrink:0;width:24px;font-size:18px}.send-item.selected .send-check{color:var(--accent)}.send-item-body{color:var(--text-primary);font-size:var(--text-secondary-size);flex:1;line-height:1.3}.send-footer{bottom:var(--space-lg);position:sticky}.waiting{flex-direction:column;min-height:80dvh;display:flex}.waiting-content{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.waiting-indicator{margin-bottom:var(--space-4xl)}.waiting-ring{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:64px;height:64px;animation:1.2s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.waiting-title{font-family:var(--font-display);font-size:var(--text-title);color:var(--text-primary);margin:0 0 var(--space-md);font-weight:400}.waiting-desc{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-body);margin:0 0 var(--space-2xl)}.waiting-progress{background:var(--border);border-radius:2px;width:100%;max-width:240px;height:4px;overflow:hidden}.waiting-progress-bar{background:var(--accent);height:100%;transition:width .3s var(--ease-move);border-radius:2px}.play{flex-direction:column;min-height:85dvh;display:flex}.play-progress{margin-bottom:var(--space-4xl);justify-content:center;gap:6px;display:flex}.progress-dot{background:var(--border);width:8px;height:8px;transition:all var(--duration-fast) var(--ease-enter);border-radius:50%}.progress-dot.done{background:var(--accent)}.progress-dot.current{background:var(--accent);border-radius:4px;width:24px}.play-card{flex:1;justify-content:center;align-items:center;min-height:200px;display:flex;position:relative}.card-statement{font-family:var(--font-display);font-style:italic;font-size:var(--text-statement);color:var(--text-primary);text-align:center;z-index:1;line-height:1.1;position:relative}.card-glow{background:radial-gradient(ellipse, var(--accent-glow), transparent 70%);pointer-events:none;width:300px;height:300px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.play-answer{gap:var(--space-lg);padding-top:var(--space-2xl);flex-direction:column;display:flex}.answer-label{font-family:var(--font-body);font-size:var(--text-caps);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);text-align:center;margin:0;font-weight:600}.answer-buttons{gap:var(--space-sm);display:flex}.answer-btn{padding:var(--space-lg);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-button);cursor:pointer;transition:all var(--duration-fast) var(--ease-enter);flex:1;font-weight:500}.answer-btn.selected.answer-true{background:var(--success);border-color:var(--success);color:var(--bg)}.answer-btn.selected.answer-false{background:var(--wrong);border-color:var(--wrong);color:var(--bg)}.answer-btn.answer-wish.selected{background:var(--accent);border-color:var(--accent);color:var(--bg)}.reveal{gap:var(--space-2xl);padding-top:var(--space-2xl);flex-direction:column;align-items:center;display:flex}.reveal-truth{font-family:var(--font-body);font-size:var(--text-title);letter-spacing:3px;text-align:center;font-weight:700}.reveal-true{color:var(--success)}.reveal-false{color:var(--wrong)}.reveal-row{width:100%;padding:var(--space-md) 0;border-bottom:1px solid var(--border);justify-content:space-between;display:flex}.reveal-label{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-body)}.reveal-correct{color:var(--success);font-family:var(--font-body);font-size:var(--text-body);font-weight:600}.reveal-wrong{color:var(--wrong);font-family:var(--font-body);font-size:var(--text-body);font-weight:600}.reveal-aligned{color:var(--success);font-family:var(--font-body);font-size:var(--text-body);font-weight:600}.reveal-gap{color:var(--accent);font-family:var(--font-body);font-size:var(--text-body);font-weight:600}.reveal-comment{font-family:var(--font-display);color:var(--text-secondary);text-align:center;font-size:20px;font-style:italic;line-height:1.4}.reveal-next-step{color:var(--accent);font-family:var(--font-body);font-size:var(--text-body);cursor:pointer;padding:var(--space-md);background:0 0;border:none}.fade-in{animation:fadeIn var(--duration-reveal) var(--ease-enter)}.slide-up{animation:slideUp var(--duration-slide) var(--ease-enter)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.results-stats{gap:var(--space-lg);margin-bottom:var(--space-4xl);display:flex}.results-stat{padding:var(--space-lg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;flex:1;align-items:center;display:flex}.results-stat-value{font-family:var(--font-display);font-size:var(--text-title);color:var(--text-primary)}.results-stat-label{font-family:var(--font-body);font-size:var(--text-caps);letter-spacing:1.2px;text-transform:uppercase;color:var(--text-muted);margin-top:var(--space-xs);font-weight:600}.results-list{gap:var(--space-md);flex-direction:column;display:flex}.result-card{padding:var(--space-lg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.result-body{font-family:var(--font-display);color:var(--text-primary);margin-bottom:var(--space-md);font-size:18px;font-style:italic;line-height:1.3}.result-grid{gap:var(--space-sm);display:flex}.result-cell{flex-direction:column;flex:1;align-items:center;gap:2px;display:flex}.result-cell-label{font-family:var(--font-body);letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600}.result-cell span:last-child{font-family:var(--font-body);font-size:var(--text-secondary-size);font-weight:600}.result-comment{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border);font-family:var(--font-display);color:var(--text-secondary);font-size:14px;font-style:italic}.history-list{gap:var(--space-sm);flex-direction:column;display:flex}.history-card{padding:var(--space-lg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;text-align:left;width:100%;font-family:var(--font-body);transition:background var(--duration-fast) var(--ease-enter);justify-content:space-between;align-items:center;display:flex}.history-card:active{background:var(--surface-raised)}.history-info{flex-direction:column;gap:2px;display:flex}.history-direction{color:var(--text-primary);font-size:var(--text-body);font-weight:500}.history-date{color:var(--text-muted);font-size:var(--text-secondary-size)}.history-accuracy{font-family:var(--font-display);color:var(--accent);font-size:20px}.onboarding{flex-direction:column;justify-content:center;min-height:80dvh;display:flex}.onboarding-content{text-align:center;flex-direction:column;flex:1;justify-content:center;display:flex}.onboarding-invite{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-body);margin:0 0 var(--space-2xl)}.inviter-name{color:var(--accent);font-weight:500}.onboarding-tagline{font-family:var(--font-display);font-style:italic;font-size:var(--text-statement);color:var(--text-primary);margin:0 0 var(--space-lg);line-height:1.1}.onboarding-desc{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-body);margin:0;line-height:1.5}.btn-lg{padding:var(--space-lg) var(--space-2xl);font-size:var(--text-button);width:100%;margin-top:var(--space-4xl)}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:70dvh;display:flex}.empty-desc{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-body);margin:0 0 var(--space-4xl);line-height:1.5}.empty-actions{gap:var(--space-md);flex-direction:column;width:100%;display:flex}.invite-result{gap:var(--space-sm);flex-direction:column;display:flex}.invite-code{font-family:var(--font-body);font-size:var(--text-secondary-size);color:var(--text-secondary);background:var(--surface);padding:var(--space-md);border-radius:var(--radius);border:1px solid var(--border);word-break:break-all}.profile-section{margin-bottom:var(--space-4xl)}.section-title{font-family:var(--font-display);color:var(--text-primary);margin:0 0 var(--space-sm);font-size:18px;font-weight:400}.section-desc{color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-secondary-size);margin:0 0 var(--space-lg);line-height:1.4}.profile-tagline{font-family:var(--font-display);color:var(--accent);margin:0;font-size:20px;font-style:italic}
