:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0;overflow-x:hidden}button,textarea,input{font:inherit}.app-shell{color:#0f172a;background:radial-gradient(circle at 20% 0,#e0e7ff 0%,#f8fafc 40%,#eef2ff 100%);min-height:100vh;padding:24px;transition:background .45s,color .45s;position:relative}.app-shell .theme-toggle,.app-shell .saved-menu,.app-shell .filter-menu,.app-shell .filter-toggle,.app-shell .chat-bubble,.app-shell .saved-point-card,.app-shell .analysis-card,.app-shell .result-panel,.app-shell .result-header,.app-shell .score-pill,.app-shell .party-badge,.app-shell .saved-toggle,.app-shell .debug-toggle{transition:background-color .4s,border-color .4s,color .4s,box-shadow .4s}.app-shell.dark{color:#e2e8f0;background:radial-gradient(circle at 20% 0,#1e1b4b 0%,#020617 40%,#0f172a 100%)}.top-controls{z-index:20;gap:8px;display:flex;position:absolute;top:20px;right:20px}.badge-stack{z-index:30;flex-direction:column;align-items:center;gap:6px;display:flex;position:fixed;top:22px;left:50%;transform:translate(-50%)}.debug-badge{color:#991b1b;background:#fee2e2f2;border:1px solid #ef444480;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:700;box-shadow:0 8px 20px #0f172a2e}.dev-mode-badge{color:#92400e;white-space:nowrap;background:#fefce8f7;border:1px solid #eab3088c;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:700;box-shadow:0 8px 20px #0f172a2e}.app-shell.dark .debug-badge{color:#fca5a5;background:#7f1d1dd9;border-color:#ef444499}.app-shell.dark .dev-mode-badge{color:#fde68a;background:#4e3300e0;border-color:#eab30899}.incoming-share-banner{z-index:30;color:#3730a3;background:#eef2fff7;border:1px solid #6366f173;border-radius:999px;align-items:center;gap:12px;max-width:min(92vw,760px);padding:8px 18px;font-size:.8rem;font-weight:600;display:inline-flex;position:fixed;top:16px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #0f172a24}.incoming-share-banner>span{white-space:normal;line-height:1.35}.incoming-share-cta{cursor:pointer;color:#fff;white-space:nowrap;background:#f97316;border:none;border-radius:999px;padding:6px 14px;font-size:.78rem;font-weight:700;transition:background .15s}.incoming-share-cta:hover{background:#ea580c}.app-shell.dark .incoming-share-cta{background:#f97316}.app-shell.dark .incoming-share-cta:hover{background:#fb923c}.app-shell.dark .incoming-share-banner{color:#a5b4fc;background:#1e1b4beb;border-color:#6366f180}.toast-stack{z-index:30;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;top:22px;left:50%;transform:translate(-50%)}.bypass-toast{color:#065f46;white-space:nowrap;background:#d1fae5f2;border:1px solid #10b98199;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:700;box-shadow:0 8px 20px #0f172a2e}.app-shell.dark .bypass-toast{color:#86efac;background:#064e3bd9;border-color:#10b981b3}.save-toast{color:#1e3a8a;white-space:nowrap;background:#dbeafef5;border:1px solid #2563eb8c;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:700;box-shadow:0 8px 20px #0f172a29}.app-shell.dark .save-toast{color:#bfdbfe;background:#1e3a8ad6;border-color:#60a5fabf}.saved-hint-cue{color:#92400e;white-space:nowrap;background:#fef3c7f7;border:1px solid #f59e0ba6;border-radius:12px;padding:8px 10px;font-size:.74rem;font-weight:700;box-shadow:0 10px 20px #0f172a29}.app-shell.dark .saved-hint-cue{color:#fcd34d;background:#78350fdb;border-color:#fbbf24bf}.theme-toggle{color:#334155;cursor:pointer;background:#ffffffd9;border:1px solid #cbd5e1;border-radius:999px;place-items:center;width:46px;height:46px;transition:all .2s;display:grid}.theme-toggle:hover{background:#fff;border-color:#94a3b8;box-shadow:0 2px 10px #0f172a1f}.app-shell.dark .theme-toggle{color:#e2e8f0;background:#0f172acc;border-color:#334155}.app-shell.dark .theme-toggle:hover{background:#1e293bf2;border-color:#475569;box-shadow:0 2px 10px #0006}.debug-toggle{color:#4338ca;border-color:#a5b4fc}.app-shell.dark .debug-toggle{color:#a5b4fc;border-color:#4f46e5}.saved-toggle{color:#166534;border-color:#86efac}.saved-toggle.active{background:#bbf7d0cc}.app-shell.dark .saved-toggle{color:#86efac;border-color:#16a34a}.app-shell.dark .saved-toggle.active{background:#16a34a47}.saved-menu-wrap{position:relative}.saved-menu{background:#fffffff5;border:1px solid #94a3b873;border-radius:14px;width:min(88vw,420px);max-height:min(68vh,560px);padding:12px;position:absolute;top:54px;right:0;overflow:auto;box-shadow:0 14px 26px #0f172a38}.app-shell.dark .saved-menu{background:#020617f5;border-color:#475569cc}.saved-menu-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.saved-menu-head h3{text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:0;font-size:.75rem}.app-content{max-width:1060px;margin:0 auto;padding:52px 0 32px}.hero{text-align:center;margin-bottom:28px}.hero-icon-wrap{justify-content:center;margin-bottom:14px;display:flex}.hero-icon{color:#fff;background:linear-gradient(145deg,#f97316,#ea580c);border-radius:999px;place-items:center;width:64px;height:64px;display:grid;box-shadow:0 12px 24px #f973164d}.hero h1{color:inherit;margin:0;font-size:clamp(2rem,6vw,3.25rem);font-weight:800;line-height:1.1}.hero-subtitle{color:#475569;max-width:680px;margin:12px auto 0;font-size:1.05rem}.app-shell.dark .hero-subtitle{color:#94a3b8}.panel,.result-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffb8;border:1px solid #94a3b859;border-radius:20px;box-shadow:0 24px 44px #0f172a1f}.app-shell.dark .panel,.app-shell.dark .result-panel{background:#0f172ab8;border-color:#47556999;box-shadow:0 24px 44px #02061799}.mode-switch{border-bottom:1px solid #94a3b859;border-top-left-radius:20px;border-top-right-radius:20px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.mode-tab{color:#64748b;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:8px;padding:14px 12px;font-size:.95rem;font-weight:700;transition:background .2s,color .2s;display:flex}.mode-tab:hover:not(.active){color:#334155;background:#94a3b81a}.mode-tab.active{color:#f97316;background:#f973161a}.mode-tab:first-child{border-top-left-radius:20px}.mode-tab:last-child{border-top-right-radius:20px}.app-shell.dark .mode-tab{color:#94a3b8}.app-shell.dark .mode-tab:hover:not(.active){color:#e2e8f0;background:#94a3b814}.app-shell.dark .mode-tab.active{color:#fb923c;background:#f9731626}.panel-body{padding:28px}.result-panel{padding:28px 14px}.belief-textarea{color:#0f172a;resize:vertical;background:#ffffffbf;border:1px solid #cbd5e1;border-radius:14px;outline:none;width:100%;min-height:190px;padding:14px;font-size:1rem;line-height:1.5}.belief-input-wrap{position:relative}.belief-hint-overlay{color:#64748b;pointer-events:none;opacity:.86;font-size:.98rem;line-height:1.45;transition:opacity .28s;position:absolute;top:15px;left:15px;right:18px}.belief-hint-overlay.fading{opacity:0}.analyzing-message{transition:opacity .28s}.analyzing-message.fading{opacity:0}.belief-textarea:focus{border-color:#f97316;box-shadow:0 0 0 3px #f9731640}.app-shell.dark .belief-textarea{color:#e2e8f0;background:#020617bf;border-color:#334155}.app-shell.dark .belief-hint-overlay{color:#94a3b8}.quiz-list{flex-direction:column;gap:16px;max-height:60vh;padding-right:4px;display:flex;overflow:auto}.quiz-item{background:#f8fafccc;border:1px solid #94a3b84d;border-radius:14px;padding:16px}.app-shell.dark .quiz-item{background:#0f172acc;border-color:#334155cc}.quiz-question{margin:0 0 10px;font-weight:600}.quiz-options{flex-wrap:wrap;gap:8px;display:flex}.option-chip{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:6px 10px;font-size:.82rem;font-weight:600;transition:all .2s}.option-chip:hover:not(.selected){color:#1e293b;background:#f1f5f9;border-color:#94a3b8}.option-chip.selected{color:#fff;background:#f97316;border-color:#f97316}.app-shell.dark .option-chip{color:#cbd5e1;background:#1e293b;border-color:#475569}.app-shell.dark .option-chip:hover:not(.selected){color:#e2e8f0;background:#273449;border-color:#64748b}.app-shell.dark .option-chip.selected{color:#fff;background:#f97316;border-color:#f97316}.analyze-wrap,.reset-wrap{justify-content:flex-end;align-items:center;gap:12px;margin-top:22px;display:flex}.quiz-progress{color:var(--text-muted,#888);font-size:.8rem}.result-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.analyze-btn,.secondary-btn{cursor:pointer;border:none;border-radius:12px;align-items:center;gap:8px;padding:11px 18px;font-size:.95rem;font-weight:700;display:flex}.analyze-btn{color:#fff;background:linear-gradient(135deg,#f97316,#ea580c)}.analyze-btn:hover:not(:disabled){background:linear-gradient(135deg,#ea580c,#c2410c);box-shadow:0 4px 16px #f973164d}.analyze-btn:disabled{opacity:.45;cursor:not-allowed}.secondary-btn{color:inherit;background:0 0;border:1px solid #94a3b880}.secondary-btn:hover{background:#94a3b81f;border-color:#94a3b8cc}.app-shell.dark .secondary-btn:hover{background:#94a3b81a;border-color:#94a3b880}.error-banner{color:#b91c1c;background:#fee2e2b3;border:1px solid #ef444459;border-radius:12px;gap:10px;margin-top:18px;padding:14px;display:flex}.app-shell.dark .error-banner{color:#fca5a5;background:#7f1d1d4d}.error-icon{flex-shrink:0;margin-top:1px}.six-month-banner{color:#0d47a1;background-color:#e3f2fd;border-left:4px solid #2196f3;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:14px 16px;font-size:14px;font-weight:500;display:flex}.app-shell.dark .six-month-banner{color:#90caf9;background-color:#1565c033;border-left-color:#42a5f5}.six-month-banner button{color:#0d47a1;cursor:pointer;background:0 0;border:none;flex-shrink:0;margin-left:12px;padding:0;font-size:18px}.app-shell.dark .six-month-banner button{color:#90caf9}.six-month-banner button:hover{opacity:.7}.loading-state{text-align:center;color:#64748b;padding:64px 0}.spinner{margin-bottom:12px;animation:.8s linear infinite spin}.result-header{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.result-header h2{align-items:center;gap:8px;margin-top:0;margin-bottom:0;font-size:clamp(1.4rem,3.5vw,2rem);display:flex}.info-trigger{align-items:center;display:inline-flex;position:relative}.info-icon-btn{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:50%;flex-shrink:0;padding:2px 4px;font-size:1rem;line-height:1;transition:color .15s,background .15s}.info-icon-btn:hover{color:#64748b;background:#94a3b826}.app-shell.dark .info-icon-btn{color:#64748b}.app-shell.dark .info-icon-btn:hover{color:#94a3b8;background:#94a3b81a}.info-panel{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;text-align:left;pointer-events:none;opacity:0;background:#f8fafcf7;border:1px solid #94a3b866;border-radius:14px;flex-direction:column;gap:14px;width:min(300px,85vw);padding:16px;font-weight:400;transition:opacity .15s,transform .15s;display:flex;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%)translateY(-4px);box-shadow:0 8px 24px #0000001f}.info-trigger:hover .info-panel{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}@media (width<=480px){.info-panel{left:auto;right:-8px;transform:translateY(-4px)}.info-trigger:hover .info-panel{transform:translateY(0)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.app-shell.dark .info-panel{background:#0a0f23f7;border-color:#94a3b833;box-shadow:0 8px 24px #0006}.info-panel-section{flex-direction:column;gap:6px;display:flex}.info-panel-section+.info-panel-section{border-top:1px solid #94a3b840;padding-top:14px}.info-panel-label{letter-spacing:.08em;color:#64748b;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:600}.info-panel-body{color:#475569;margin:0;font-size:.85rem;line-height:1.6}.app-shell.dark .info-panel-body{color:#94a3b8}.info-panel-muted{font-style:italic}.info-panel-confidence{align-items:center;gap:10px;display:flex}.confidence-pips{gap:5px;display:flex}.confidence-pip{background:#94a3b84d;border:1.5px solid #94a3b880;border-radius:50%;width:10px;height:10px;transition:background .15s;display:inline-block}.confidence-pip.filled{background:#f97316;border-color:#f97316}.confidence-score{color:#f97316;font-size:.8rem;font-weight:600}.score-pills{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.score-pill{background:#ffffffa6;border:1px solid #94a3b873;border-radius:999px;padding:6px 12px;font-size:.88rem;font-weight:700}.app-shell.dark .score-pill{background:#0f172abf}.compass-plot-wrap{justify-content:center;margin:0;display:flex}.compass-plot-card{background:#fffc;border:1px solid #94a3b866;border-radius:14px;width:min(100%,640px);padding:10px;position:relative}.app-shell.dark .compass-plot-card{background:#020617cc}.compass-canvas{aspect-ratio:1;image-rendering:auto;border-radius:10px;width:100%;max-width:620px;height:auto;margin:0 auto;display:block}.person-tooltip{pointer-events:none;background:#fffffff5;border:1px solid #94a3b880;border-radius:10px;max-width:190px;padding:10px 11px;position:absolute;box-shadow:0 12px 20px #0f172a2e}.hover-cue{color:#334155;pointer-events:none;white-space:nowrap;background:#ffffffe6;border:1px solid #94a3b880;border-radius:999px;padding:6px 10px;font-size:.7rem;font-weight:700;transition:opacity .22s,transform .22s;position:absolute;top:12px;left:50%;transform:translate(-50%)}.hover-cue.hidden{opacity:0;transform:translate(-50%)translateY(-4px)}.app-shell.dark .person-tooltip{background:#020617f2;border-color:#475569d9}.app-shell.dark .hover-cue{color:#cbd5e1;background:#020617e6;border-color:#475569d9}.person-tooltip-name{margin-bottom:4px;font-size:.82rem;font-weight:800}.person-tooltip-text{color:#475569;font-size:.74rem;line-height:1.35}.app-shell.dark .person-tooltip-text{color:#94a3b8}.compass-area{justify-content:center;align-items:start;gap:12px;margin:22px 0;display:flex}.overlay-filter{position:relative}.filter-toggle{color:#334155;cursor:pointer;background:#ffffffd1;border:1px solid #94a3b899;border-radius:10px;align-items:center;gap:6px;padding:8px 10px;font-size:.8rem;font-weight:700;display:flex}.filter-toggle:hover{background:#fff;border-color:#94a3b8e6;box-shadow:0 2px 8px #0f172a1a}.app-shell.dark .filter-toggle{color:#cbd5e1;background:#020617c7;border-color:#475569d9}.app-shell.dark .filter-toggle:hover{background:#0f172af2;border-color:#64748bcc;box-shadow:0 2px 8px #0000004d}.filter-menu{z-index:3;background:#fffffff5;border:1px solid #94a3b873;border-radius:12px;min-width:154px;padding:6px;position:absolute;top:42px;right:0;box-shadow:0 12px 20px #0f172a26}.app-shell.dark .filter-menu{background:#020617f2;border-color:#475569cc}.filter-option{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;width:100%;padding:8px;font-size:.82rem;font-weight:600;display:flex}.filter-option:hover:not(.active){color:#1e293b;background:#94a3b81f}.app-shell.dark .filter-option{color:#cbd5e1}.app-shell.dark .filter-option:hover:not(.active){color:#e2e8f0;background:#94a3b81a}.filter-option.active{color:#f97316;background:#f973161a}.app-shell.dark .filter-option.active{color:#fb923c;background:#f9731626}.party-badge{background:#ffffffbf;border:1px solid #94a3b866;border-radius:999px;align-items:center;gap:8px;width:fit-content;margin:6px auto 16px;padding:8px 12px;font-size:.82rem;font-weight:700;display:flex}.party-icon{object-fit:contain;flex-shrink:0;width:28px;height:28px}.filter-party-icon{object-fit:contain;flex-shrink:0;width:15px;height:15px}.overlay-republican .party-badge,.overlay-republican .filter-toggle,.overlay-republican .filter-option.active{border-color:#dc262680}.overlay-republican .party-badge{color:#991b1b;background:#fee2e2e0}.overlay-democratic .party-badge,.overlay-democratic .filter-toggle,.overlay-democratic .filter-option.active{border-color:#2563eb8c}.overlay-democratic .party-badge{color:#1d4ed8;background:#dbeafee0}.app-shell.dark.overlay-republican .party-badge{color:#fca5a5;background:#7f1d1d80}.app-shell.dark.overlay-democratic .party-badge{color:#93c5fd;background:#1e3a8a73}.new-bubble{color:#fff;white-space:nowrap;pointer-events:none;z-index:10;background:#7c3aed;border-radius:10px;padding:5px 10px;font-size:.72rem;font-weight:700;animation:.25s cubic-bezier(.34,1.56,.64,1) both bubble-pop;position:absolute;bottom:calc(100% + 10px);right:0;box-shadow:0 4px 14px #7c3aed66}.new-bubble:after{content:"";border:6px solid #0000;border-top-color:#7c3aed;position:absolute;top:100%;right:14px}.new-badge{color:#fff;letter-spacing:.03em;background:#7c3aed;border-radius:20px;flex-shrink:0;margin-left:auto;padding:2px 7px;font-size:.62rem;font-weight:800}@keyframes bubble-pop{0%{opacity:0;transform:scale(.7)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}.app-shell.dark .new-bubble{background:#8b5cf6;box-shadow:0 4px 14px #8b5cf666}.app-shell.dark .new-bubble:after{border-top-color:#8b5cf6}.app-shell.dark .new-badge{background:#8b5cf6}.overlay-ideologies .party-badge,.overlay-ideologies .filter-toggle,.overlay-ideologies .filter-option.active{border-color:#b48c288c}.overlay-ideologies .party-badge{color:#92400e;background:#fef3c7e0}.app-shell.dark.overlay-ideologies .party-badge{color:#fde68a;background:#78350f73}.overlay-traits .party-badge,.overlay-traits .filter-toggle,.overlay-traits .filter-option.active{border-color:#14b8a68c}.overlay-traits .party-badge{color:#0f766e;background:#ccfbf1e0}.app-shell.dark.overlay-traits .party-badge{color:#99f6e4;background:#134e4a73}.new-bubble-traits{background:#0d9488;box-shadow:0 4px 14px #0d948866}.new-bubble-traits:after{border-top-color:#0d9488}.new-badge-traits{background:#0d9488}.app-shell.dark .new-bubble-traits{background:#14b8a6;box-shadow:0 4px 14px #14b8a666}.app-shell.dark .new-bubble-traits:after{border-top-color:#14b8a6}.app-shell.dark .new-badge-traits{background:#14b8a6}.alignment-trait{opacity:.85;margin-top:4px;font-style:italic}.overlay-filter--panel{width:100%;margin-top:14px}.filter-toggle--big{border-radius:12px;justify-content:center;width:100%;padding:11px 16px;font-size:.88rem}.filter-menu--up{top:auto;bottom:calc(100% + 6px)}@keyframes overlay-ring-pulse{0%{box-shadow:0 0 #7c3aed8c}65%{box-shadow:0 0 0 9px #7c3aed00}to{box-shadow:0 0 #7c3aed00}}.filter-toggle--pulse{animation:2s ease-out infinite overlay-ring-pulse}.overlay-nudge{color:#4c1d95;background:#7c3aed12;border:1px solid #7c3aed38;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:.82rem;display:flex}.app-shell.dark .overlay-nudge{color:#c4b5fd;background:#8b5cf61a;border-color:#8b5cf647}.overlay-nudge-text{flex:1;min-width:0}.overlay-nudge-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.overlay-nudge-btn{color:#fff;cursor:pointer;background:#7c3aed;border:none;border-radius:8px;padding:5px 12px;font-size:.78rem;font-weight:700;transition:background .15s}.overlay-nudge-btn:hover{background:#6d28d9}.overlay-nudge-btn-traits{background:#0d9488}.overlay-nudge-btn-traits:hover{background:#0f766e}.overlay-nudge-dismiss{color:inherit;opacity:.5;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:.85rem;line-height:1}.overlay-nudge-dismiss:hover{opacity:1}.overlay-map-links{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.overlay-map-link{color:#6d28d9;cursor:pointer;background:#7c3aed14;border:1px solid #7c3aed40;border-radius:8px;align-items:center;gap:5px;padding:5px 11px;font-size:.77rem;font-weight:700;transition:background .15s,border-color .15s;display:inline-flex}.overlay-map-link:hover{background:#7c3aed26;border-color:#7c3aed73}.overlay-map-link-traits{color:#0f766e;background:#0d948814;border-color:#0d948840}.overlay-map-link-traits:hover{background:#0d948826;border-color:#0d948873}.app-shell.dark .overlay-map-link{color:#a78bfa;background:#8b5cf61a;border-color:#8b5cf64d}.app-shell.dark .overlay-map-link:hover{background:#8b5cf633}.app-shell.dark .overlay-map-link-traits{color:#5eead4;background:#14b8a61a;border-color:#14b8a64d}.app-shell.dark .overlay-map-link-traits:hover{background:#14b8a633}.analysis-card{background:#f8fafcbf;border:1px solid #94a3b866;border-radius:14px;padding:18px}.analysis-card h3{text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:0 0 8px;font-size:.75rem}.analysis-card p{margin:0;font-style:italic;line-height:1.6}.app-shell.dark .analysis-card{background:#020617b8}.chat-followup{flex-direction:column;gap:10px;margin-top:12px;display:flex}.chat-bubble{border-radius:12px;padding:12px;font-size:.9rem;line-height:1.45}.chat-bubble.assistant{background:#f8fafcc7;border:1px solid #94a3b873}.app-shell.dark .chat-bubble.assistant{background:#020617bd}.chat-bubble.user{background:#dbeafe99;border:1px solid #f9731640;max-width:86%;margin-left:auto}.app-shell.dark .chat-bubble.user{background:#1e3a8a59}.chat-bubble p{margin:0}.chat-options{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.chat-option{color:#334155;cursor:pointer;background:#ffffffd9;border:1px solid #94a3b880;border-radius:10px;padding:7px 10px;font-size:.82rem;font-weight:600}.chat-option:hover:not(:disabled):not(.selected){color:#f97316;background:#fff;border-color:#f9731640}.app-shell.dark .chat-option:hover:not(:disabled):not(.selected){color:#fb923c;background:#0f172ae6;border-color:#f9731673}.chat-option.selected{color:#f97316;background:#f973161a;border-color:#f97316}.chat-option:disabled{opacity:.78;cursor:default}.app-shell.dark .chat-option{color:#cbd5e1;background:#020617d1}.app-shell.dark .chat-option.selected{color:#fb923c}.refinement-card{margin-top:10px}.analysis-summary{font-size:.9rem;color:#64748b!important;margin:0 0 14px!important}.app-shell.dark .analysis-summary{color:#94a3b8!important}.analysis-clusters{flex-direction:column;gap:14px;display:flex}.analysis-cluster{border-left:3px solid #f973168c;padding-left:10px}.analysis-cluster-label{text-transform:uppercase;letter-spacing:.07em;color:#c2410c;margin-bottom:4px;font-size:.72rem;font-weight:800;display:block}.app-shell.dark .analysis-cluster-label{color:#fb923c}.analysis-cluster p{margin:0}.closest-politician{color:#64748b;margin:10px 0 0;font-size:.85rem}.app-shell.dark .closest-politician{color:#94a3b8}.closest-politician strong{color:#1e293b;font-weight:600}.app-shell.dark .closest-politician strong{color:#e2e8f0}.alignment-closest{border-top:1px solid #94a3b840;margin-top:12px;padding-top:10px}.app-shell.dark .alignment-closest{border-top-color:#47556966}.alignment-global-party{border-top:1px solid #94a3b833;margin-top:14px;padding-top:12px}.app-shell.dark .alignment-global-party{border-top-color:#94a3b826}.global-party-block{background:#6366f10f;border:1px solid #6366f126;border-radius:8px;margin:12px 0 0;padding:10px 12px}.app-shell.dark .global-party-block{background:#6366f11a;border-color:#6366f140}.global-party-match{color:#1e293b;margin:0 0 4px;font-size:.85rem;font-weight:500}.app-shell.dark .global-party-match{color:#e2e8f0}.global-party-match strong{font-weight:700}.global-party-country{color:#64748b;font-size:.8rem;font-weight:400}.app-shell.dark .global-party-country{color:#94a3b8}.global-party-reason{color:#475569;margin:4px 0 0;font-size:.8rem;line-height:1.45}.app-shell.dark .global-party-reason{color:#94a3b8}.reference-note{color:#64748b;text-align:center;margin:6px 2px 0;font-size:.8rem;line-height:1.35}.app-shell.dark .reference-note{color:#94a3b8}.saved-points-empty{color:#64748b;margin:0;font-size:.88rem}.saved-points-list{flex-direction:column;gap:10px;display:flex}.saved-point-card{background:#ffffffb8;border:1px solid #94a3b85c;border-radius:12px;padding:12px}.app-shell.dark .saved-point-card{background:#0f172abd;border-color:#475569b3}.saved-point-card.pinned{background:#ffedd5d9;border-color:#fb923cb3;box-shadow:0 0 0 1px #fb923c40,0 2px 10px #fb923c26}.app-shell.dark .saved-point-card.pinned{background:#431e058c;border-color:#fb923c8c;box-shadow:0 0 0 1px #fb923c33,0 2px 10px #fb923c1f}.saved-point-head h4{flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:.96rem;display:flex}.pinned-badge{letter-spacing:.04em;text-transform:uppercase;color:#ea580c;background:#fb923c2e;border:1px solid #fb923c73;border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:.68rem;font-weight:700}.app-shell.dark .pinned-badge{color:#fb923c;background:#fb923c24;border-color:#fb923c59}.saved-point-title-input{color:#0f172a;background:#fffffff0;border:1px solid #94a3b8b3;border-radius:8px;width:100%;padding:6px 8px;font-size:.92rem;font-weight:700}.app-shell.dark .saved-point-title-input{color:#e2e8f0;background:#020617e6;border-color:#475569e6}.saved-point-meta{color:#64748b;margin:6px 0 0;font-size:.8rem}.saved-point-analysis{margin:10px 0;font-size:.88rem;font-style:italic;line-height:1.5}.saved-point-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.saved-point-btn{color:#334155;cursor:pointer;background:#ffffffdb;border:1px solid #94a3b88c;border-radius:9px;justify-content:center;align-items:center;padding:6px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.saved-point-btn:hover:not(:disabled){background:#fff;border-color:#94a3b8e6;box-shadow:0 2px 8px #0f172a1a}.app-shell.dark .saved-point-btn{color:#cbd5e1;background:#020617d6;border-color:#475569d9}.app-shell.dark .saved-point-btn:hover:not(:disabled){background:#0f172af2;border-color:#64748be6;box-shadow:0 2px 8px #0000004d}.saved-point-btn.icon{width:30px;height:30px;padding:0}.saved-point-btn.danger{color:#dc2626}.app-shell.dark .saved-point-btn.danger{color:#fca5a5}@keyframes spin{to{transform:rotate(360deg)}}.user-point-tooltip{background:#fff7edf7;border-color:#f973168c}.app-shell.dark .user-point-tooltip{background:#1c0a00f5;border-color:#f97316b3}.user-point-tooltip .person-tooltip-name{color:#c2410c}.app-shell.dark .user-point-tooltip .person-tooltip-name{color:#fb923c}.axis-breakdown-panel{background:#f8fafcbf;border:1px solid #94a3b866;border-radius:12px;flex-shrink:0;width:260px;padding:14px 16px}.app-shell.dark .axis-breakdown-panel{background:#020617b8;border-color:#47556999}.alignment-header{align-items:center;gap:4px;margin-bottom:12px;display:flex}.alignment-header h3{text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:0;font-size:.75rem}.alignment-info-trigger{align-items:center;display:flex;position:relative}.info-panel-left{left:0;transform:translate(0)translateY(-4px)}.info-trigger:hover .info-panel-left{transform:translate(0)translateY(0)}@media (width<=480px){.info-panel-left{left:0;right:auto;transform:translateY(-4px)}.info-trigger:hover .info-panel-left{transform:translateY(0)}}.party-match-row{align-items:center;gap:8px;margin-bottom:10px;display:flex}.party-match-name{color:#334155;flex-shrink:0;width:86px;font-size:.82rem;font-weight:700}.app-shell.dark .party-match-name{color:#cbd5e1}.party-match-bar-wrap{background:#94a3b840;border-radius:999px;flex:1;height:8px;overflow:hidden}.party-match-bar{border-radius:999px;height:100%;transition:width .4s}.party-match-pct{text-align:right;color:#64748b;width:32px;font-size:.8rem;font-weight:700}.axis-slider-row{align-items:center;gap:10px;margin-top:12px;display:flex}.axis-slider-label{color:#64748b;flex-shrink:0;width:28px;font-size:.75rem;font-weight:700}.axis-slider-label:last-child{text-align:right}.axis-slider-track{background:#94a3b84d;border-radius:999px;flex:1;height:6px;margin:0 2px;position:relative}.axis-slider-thumb{background:#f97316;border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;box-shadow:0 1px 6px #00000040}.error-content{flex:1}.error-content p{margin:0}.error-quiz-hint{font-size:.85rem;margin-top:8px!important}.error-quiz-btn{color:inherit;cursor:pointer;font-weight:700;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}@media (width<=768px){.app-shell{padding:16px}.app-content{padding-top:64px}.panel-body,.result-panel{padding:18px}.compass-area{flex-direction:column;align-items:center}.axis-breakdown-panel{order:2;width:100%}.overlay-filter{justify-content:center;display:flex}.filter-menu{left:50%;right:auto;transform:translate(-50%)}.analyze-wrap,.result-actions,.reset-wrap{justify-content:center}.saved-menu{width:min(94vw,420px);right:-54px}.saved-hint-cue{max-width:220px}.analyze-btn,.secondary-btn{justify-content:center;width:100%}}.pulsing-crosshairs{color:#f97316;vertical-align:middle;justify-content:center;align-items:center;display:inline-flex}.app-shell.dark .pulsing-crosshairs{color:#fb923c}.pulsing-crosshairs svg{transform-origin:50%;animation:3.2s linear infinite pc-snap-rotate;display:block}.pulsing-crosshairs .pc-ring{transform-origin:50%;animation:3.2s linear infinite pc-ring-pulse}.pulsing-crosshairs .pc-line{transform-origin:50%;animation:3.2s linear infinite pc-line-pulse}.pulsing-crosshairs .pc-dot{transform-origin:50%;animation:3.2s linear infinite pc-dot-pulse}@keyframes pc-snap-rotate{0%{animation-timing-function:cubic-bezier(.22,1,.36,1);transform:scale(.88)rotate(0)}7%{animation-timing-function:cubic-bezier(.55,0,1,.45);transform:scale(1.02)rotate(90deg)}25%{animation-timing-function:cubic-bezier(.22,1,.36,1);transform:scale(.88)rotate(90deg)}32%{animation-timing-function:cubic-bezier(.55,0,1,.45);transform:scale(1.02)rotate(180deg)}50%{animation-timing-function:cubic-bezier(.22,1,.36,1);transform:scale(.88)rotate(180deg)}57%{animation-timing-function:cubic-bezier(.55,0,1,.45);transform:scale(1.02)rotate(270deg)}75%{animation-timing-function:cubic-bezier(.22,1,.36,1);transform:scale(.88)rotate(270deg)}82%{animation-timing-function:cubic-bezier(.55,0,1,.45);transform:scale(1.02)rotate(360deg)}97%,to{transform:scale(.88)rotate(360deg)}}@keyframes pc-ring-pulse{0%{opacity:.2;transform:scale(.92)}7%{opacity:.75;transform:scale(1.1)}22%{opacity:.2;transform:scale(.92)}32%{opacity:.75;transform:scale(1.1)}47%{opacity:.2;transform:scale(.92)}57%{opacity:.75;transform:scale(1.1)}72%{opacity:.2;transform:scale(.92)}82%{opacity:.75;transform:scale(1.1)}97%,to{opacity:.2;transform:scale(.92)}}@keyframes pc-line-pulse{0%{opacity:.5}7%{opacity:1}22%{opacity:.5}32%{opacity:1}47%{opacity:.5}57%{opacity:1}72%{opacity:.5}82%{opacity:1}97%,to{opacity:.5}}@keyframes pc-dot-pulse{0%{opacity:.6;transform:scale(.85)}7%{opacity:1;transform:scale(1.3)}22%{opacity:.6;transform:scale(.85)}32%{opacity:1;transform:scale(1.3)}47%{opacity:.6;transform:scale(.85)}57%{opacity:1;transform:scale(1.3)}72%{opacity:.6;transform:scale(.85)}82%{opacity:1;transform:scale(1.3)}97%,to{opacity:.6;transform:scale(.85)}}@media (prefers-reduced-motion:reduce){.pulsing-crosshairs svg,.pulsing-crosshairs .pc-ring,.pulsing-crosshairs .pc-line,.pulsing-crosshairs .pc-dot{animation:none}}.pulsing-crosshairs.inline{margin-right:8px}@keyframes slide-fade-in{0%{opacity:0;transform:translateY(-8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.saved-menu,.filter-menu{transform-origin:100% 0;animation:.22s cubic-bezier(.22,1,.36,1) slide-fade-in}@keyframes item-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.saved-points-list .saved-point-card{animation:.32s ease-out both item-fade-in}.saved-points-list .saved-point-card:first-child{animation-delay:40ms}.saved-points-list .saved-point-card:nth-child(2){animation-delay:80ms}.saved-points-list .saved-point-card:nth-child(3){animation-delay:.12s}.saved-points-list .saved-point-card:nth-child(4){animation-delay:.16s}.saved-points-list .saved-point-card:nth-child(5){animation-delay:.2s}.saved-points-list .saved-point-card:nth-child(n+6){animation-delay:.24s}.filter-menu .filter-option{animation:.26s ease-out both item-fade-in}.filter-menu .filter-option:first-child{animation-delay:40ms}.filter-menu .filter-option:nth-child(2){animation-delay:80ms}.filter-menu .filter-option:nth-child(3){animation-delay:.12s}.result-panel{transform-origin:top;animation:.4s cubic-bezier(.22,1,.36,1) slide-fade-in}.chat-bubble{animation:.3s ease-out both item-fade-in}.theme-toggle:active,.saved-point-btn:active,.filter-toggle:active,.filter-option:active,.analyze-btn:active,.secondary-btn:active,.chat-option:active{transition:transform 80ms;transform:scale(.96)}.theme-toggle,.saved-point-btn,.filter-toggle,.filter-option,.analyze-btn,.secondary-btn,.chat-option{transition:transform .18s,background-color .4s,border-color .4s,color .4s,box-shadow .4s}.theme-toggle svg{transition:transform .4s cubic-bezier(.22,1,.36,1)}.theme-toggle:hover svg{transform:rotate(15deg)}@keyframes toast-slide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.save-toast,.bypass-toast,.saved-hint-cue{animation:.3s cubic-bezier(.22,1,.36,1) toast-slide}@media (prefers-reduced-motion:reduce){.saved-menu,.filter-menu,.saved-point-card,.result-panel,.chat-bubble,.filter-option,.save-toast,.bypass-toast,.saved-hint-cue{animation:none}.theme-toggle:active,.saved-point-btn:active,.filter-toggle:active,.filter-option:active,.analyze-btn:active,.secondary-btn:active,.chat-option:active{transform:none}}.share-trigger-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f97316,#fb923c);border:none;border-radius:999px;align-items:center;gap:7px;padding:8px 16px;font-size:.85rem;font-weight:700;transition:transform .15s,box-shadow .15s;animation:2.4s ease-in-out infinite share-btn-pulse;display:inline-flex;position:relative;box-shadow:0 6px 16px #f9731659}.share-trigger-btn:hover{animation-play-state:paused;transform:translateY(-1px);box-shadow:0 10px 22px #f9731680}.share-trigger-btn:active{transform:scale(.97)}.app-shell.dark .share-trigger-btn{color:#fff;background:linear-gradient(135deg,#f97316,#fb923c);box-shadow:0 6px 16px #f9731666}.app-shell.dark .share-trigger-btn:hover{box-shadow:0 10px 22px #f9731699}.share-trigger-btn.icon-only{color:#f97316;box-shadow:none;background:#f973161f;border-radius:8px;padding:6px;animation:none}.share-trigger-btn.icon-only:hover{box-shadow:none;background:#f9731638}@keyframes share-btn-pulse{0%,to{box-shadow:0 6px 16px #f9731659,0 0 #f9731680}50%{box-shadow:0 6px 16px #f9731666,0 0 0 8px #f9731600}}@media (prefers-reduced-motion:reduce){.share-trigger-btn{animation:none}}.share-modal-backdrop{z-index:1000;background:#0f172a8c;justify-content:center;align-items:center;padding:16px;animation:.18s ease-out share-fade-in;display:flex;position:fixed;inset:0}@keyframes share-fade-in{0%{opacity:0}to{opacity:1}}.share-modal{color:#0f172a;background:#fff;border-radius:16px;width:min(560px,100%);max-height:calc(100vh - 32px);padding:20px;animation:.22s cubic-bezier(.22,1,.36,1) share-slide-up;overflow-y:auto;box-shadow:0 20px 50px #0f172a59}@keyframes share-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.share-modal.dark{color:#f8fafc;background:#0f172a}.share-modal-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.share-modal-head h3{margin:0;font-size:1.05rem}.share-modal-close{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px;display:inline-flex}.share-modal-close:hover{background:#94a3b82e}.share-archetype-banner{background:linear-gradient(135deg,#3b82f61f,#f973161f);border-radius:12px;flex-direction:column;align-items:center;gap:4px;margin-bottom:14px;padding:14px;display:flex}.share-archetype-label{text-transform:uppercase;letter-spacing:.12em;color:#64748b;font-size:.75rem}.share-modal.dark .share-archetype-label{color:#94a3b8}.share-archetype-name{letter-spacing:-.01em;font-size:1.4rem;font-weight:800}.share-tabs{border-bottom:1px solid #94a3b84d;gap:6px;margin-bottom:14px;display:flex}.share-tab{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:.88rem;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.share-tab:hover{opacity:1}.share-tab.active{opacity:1;border-bottom-color:#f97316}.share-tab-body{flex-direction:column;gap:12px;display:flex}.share-status{color:#64748b;text-align:center;margin:0;font-size:.9rem}.share-modal.dark .share-status{color:#94a3b8}.share-error{color:#b91c1c;background:#ef44441f;border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.share-modal.dark .share-error{color:#fca5a5}.share-error p{margin:0;font-size:.9rem}.share-retry-btn{color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:8px;align-self:flex-start;padding:6px 12px;font-size:.85rem}.share-link-row{gap:8px;display:flex}.share-link-input{color:inherit;background:#f8fafcb3;border:1px solid #94a3b880;border-radius:10px;flex:1;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem}.share-modal.dark .share-link-input{background:#0f172ab3;border-color:#475569b3}.share-copy-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#f97316;border:none;border-radius:10px;align-items:center;gap:6px;padding:0 14px;font-size:.9rem;font-weight:600;display:inline-flex}.share-copy-btn:hover{background:#ea580c}.share-help{color:#64748b;margin:0;font-size:.85rem}.share-modal.dark .share-help{color:#94a3b8}.share-preview-wrap{background:#f1f5f9;border:1px solid #94a3b859;border-radius:10px;justify-content:center;width:100%;display:flex;overflow:hidden}.share-preview-canvas{width:100%;height:auto;display:block}.share-download-btn{color:#fff;cursor:pointer;background:#f97316;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.95rem;font-weight:700;display:inline-flex}.share-download-btn:hover{background:#ea580c}.app-shell.share-view-mode{background:#0f172a;min-height:100vh;padding:0}.share-view-shell{color:#0f172a;background:radial-gradient(circle at 20% 0,#f0f4ff 0%,#f8fafc 50%,#eef2ff 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;transition:background .35s,color .35s;display:flex}.share-view-shell.dark{color:#e2e8f0;background:radial-gradient(circle at 20% 0,#1e1b4b 0%,#020617 50%,#0f172a 100%)}.share-view-card{color:#0f172a;background:#ffffffeb;border:1px solid #94a3b84d;border-radius:20px;flex-direction:column;gap:18px;width:min(680px,100%);padding:24px;transition:background .35s,border-color .35s,box-shadow .35s,color .35s;display:flex;box-shadow:0 20px 50px #0f172a1f}.share-view-shell.dark .share-view-card{color:#e2e8f0;background:#0f172ae6;border-color:#47556999;box-shadow:0 20px 50px #00000080}.share-view-topbar{justify-content:space-between;align-items:center;margin-bottom:-6px;display:flex}.share-view-brand{letter-spacing:.16em;text-transform:uppercase;color:#f97316;font-size:.78rem;font-weight:700}.share-view-theme-toggle{color:#334155;cursor:pointer;background:#fffc;border:1px solid #94a3b880;border-radius:999px;place-items:center;width:34px;height:34px;transition:background .2s,border-color .2s;display:grid}.share-view-theme-toggle:hover{background:#fff;border-color:#94a3b8}.share-view-shell.dark .share-view-theme-toggle{color:#94a3b8;background:#1e293bcc;border-color:#475569cc}.share-view-shell.dark .share-view-theme-toggle:hover{background:#1e293b;border-color:#475569}.share-view-header{text-align:center}.share-view-eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#64748b;margin:0 0 6px;font-size:.78rem}.share-view-shell.dark .share-view-eyebrow{color:#64748b}.share-view-header h2{color:inherit;margin:0;font-size:clamp(1.5rem,4vw,2.2rem)}.share-view-analysis{color:#475569;max-width:540px;margin:10px auto 0;font-size:1rem;font-style:italic}.share-view-shell.dark .share-view-analysis{color:#94a3b8}.share-view-canvas-wrap{background:#f8fafc;border:1px solid #94a3b84d;border-radius:12px;width:100%;display:block;overflow:hidden}.share-view-shell.dark .share-view-canvas-wrap{background:#0f172a;border-color:#47556980}.share-view-canvas{width:100%;height:auto;display:block}.share-view-points{border-top:1px solid #94a3b840;padding-top:18px}.share-view-shell.dark .share-view-points{border-top-color:#47556966}.share-view-points-title{color:#334155;text-transform:uppercase;letter-spacing:.08em;margin:0 0 12px;font-size:.95rem;font-weight:700}.share-view-shell.dark .share-view-points-title{color:#94a3b8}.share-view-points-grid{flex-direction:column;gap:10px;display:flex}.share-view-point-card{background:#f1f5f9;border:1px solid #94a3b840;border-radius:10px;padding:12px 14px}.share-view-shell.dark .share-view-point-card{background:#1e293b99;border-color:#47556966}.share-view-point-head{align-items:center;gap:8px;margin-bottom:6px;font-size:.95rem;display:flex}.share-view-point-dot{background:#f97316;border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block;box-shadow:0 0 0 3px #f9731640}.share-view-point-coords{color:#64748b;font-variant-numeric:tabular-nums;margin-left:auto;font-size:.82rem}.share-view-point-analysis{color:#475569;margin:0;font-size:.9rem;line-height:1.45}.share-view-shell.dark .share-view-point-analysis{color:#94a3b8}.share-view-cta{text-align:center;border-top:1px solid #94a3b840;flex-direction:column;gap:10px;margin-top:4px;padding-top:6px;display:flex}.share-view-shell.dark .share-view-cta{border-top-color:#47556966}.share-view-cta p{color:#475569;margin:12px 0 0;font-size:1rem}.share-view-shell.dark .share-view-cta p{color:#94a3b8}.share-cta-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f97316,#fb923c);border:none;border-radius:999px;align-self:center;padding:12px 22px;font-size:.98rem;font-weight:700;transition:transform .15s,box-shadow .15s;box-shadow:0 10px 22px #f9731659}.share-cta-btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px #f9731673}.refine-prompt{margin:18px 0 14px}.refine-btn{color:#fff;cursor:pointer;text-align:left;background:linear-gradient(135deg,#f97316,#fb923c);border:none;border-radius:14px;align-items:center;gap:14px;width:100%;padding:16px 20px;transition:transform .15s,box-shadow .15s;animation:2.6s ease-in-out infinite refine-btn-pulse;display:flex;box-shadow:0 8px 22px #f9731652}.refine-btn:hover{animation-play-state:paused;transform:translateY(-1px);box-shadow:0 12px 28px #f9731680}.refine-btn:active{transform:scale(.98)}.refine-btn-icon{background:#ffffff2e;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.refine-btn-content{flex-direction:column;gap:2px;min-width:0;display:flex}.refine-btn-title{font-size:1rem;font-weight:700;line-height:1.2}.refine-btn-sub{opacity:.92;font-size:.8rem;font-weight:500;line-height:1.3}.refine-btn-secondary{border-radius:10px;width:auto;padding:8px 14px;font-size:.85rem;font-weight:600;animation:none;display:inline-flex;box-shadow:0 4px 12px #f9731640}.refine-btn-subtle{color:#334155;cursor:pointer;background:#ffffffd1;border:1px solid #94a3b899;border-radius:10px;align-items:center;gap:6px;padding:8px 10px;font-size:.8rem;font-weight:700;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.refine-btn-subtle:hover{background:#fff;border-color:#94a3b8e6;box-shadow:0 2px 8px #0f172a1a}.app-shell.dark .refine-btn-subtle{color:#cbd5e1;background:#020617c7;border-color:#475569d9}.app-shell.dark .refine-btn-subtle:hover{background:#0f172af2;border-color:#64748bcc;box-shadow:0 2px 8px #0000004d}.refine-prompt-row{justify-content:flex-start;display:flex}@keyframes refine-btn-pulse{0%,to{box-shadow:0 8px 22px #f9731652,0 0 #f9731673}50%{box-shadow:0 8px 22px #f9731666,0 0 0 10px #f9731600}}.refine-delta-card{background:#f973160f;border:1px solid #f9731659;border-radius:12px;padding:14px 16px}.refine-delta-card h3{color:#ea580c;margin:0 0 6px;font-size:.95rem}.app-shell.dark .refine-delta-card h3{color:#fb923c}.refine-delta-card p{margin:0 0 10px;font-size:.9rem;line-height:1.5}.refine-panel{background:#f8fafc99;border:1px solid #94a3b84d;border-radius:14px;margin:18px 0;padding:16px}.app-shell.dark .refine-panel{background:#0f172a99;border-color:#47556980}.refine-panel-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.refine-panel-header h3{margin:0 0 4px;font-size:1.05rem}.refine-panel-sub{color:#64748b;margin:0;font-size:.82rem}.app-shell.dark .refine-panel-sub{color:#94a3b8}.refine-cancel{cursor:pointer;color:#64748b;background:0 0;border:1px solid #94a3b866;border-radius:8px;align-items:center;gap:4px;padding:6px 10px;font-size:.82rem;display:inline-flex}.refine-cancel:hover{background:#94a3b81a}.app-shell.dark .refine-cancel{color:#cbd5e1;border-color:#47556999}.refine-cluster-tabs{border-bottom:1px solid #94a3b833;flex-wrap:wrap;gap:6px;margin-bottom:16px;padding-bottom:12px;display:flex}.refine-cluster-tab{cursor:pointer;color:inherit;background:0 0;border:1px solid #94a3b84d;border-radius:999px;padding:6px 12px;font-size:.82rem;transition:all .15s}.refine-cluster-tab:hover{background:#94a3b81a}.refine-cluster-tab.active{color:#ea580c;background:#f973161f;border-color:#f9731680}.app-shell.dark .refine-cluster-tab.active{color:#fb923c}.refine-cluster-desc{color:#64748b;margin:0 0 14px;font-size:.85rem;font-style:italic}.app-shell.dark .refine-cluster-desc{color:#94a3b8}.refine-cluster-body{flex-direction:column;gap:18px;display:flex}.refine-question{border-bottom:1px solid #94a3b826;padding-bottom:14px}.refine-question:last-child{border-bottom:none;padding-bottom:0}.refine-panel-footer{border-top:1px solid #94a3b833;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:14px;display:flex}.refine-panel-footer button{flex:auto;min-width:100px}.refine-action-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f97316,#fb923c);border:none;border-radius:10px;flex:auto;min-width:120px;padding:10px 16px;font-size:.9rem;font-weight:700;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 6px 14px #f973164d}.refine-action-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 20px #f9731673}.refine-action-btn:active:not(:disabled){transform:scale(.98)}.refine-action-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.refine-apply-now{cursor:pointer;color:#ea580c;background:0 0;border:1px dashed #f9731680;border-radius:10px;width:100%;margin-top:10px;padding:10px;font-size:.85rem;font-weight:600;transition:background .15s}.refine-apply-now:hover{background:#f973161a}.app-shell.dark .refine-apply-now{color:#fb923c}.landing-shell{justify-content:center;align-items:center;min-height:100vh;display:flex}.landing-theme-toggle{position:fixed;top:16px;right:16px}.landing-page{text-align:center;flex-direction:column;align-items:center;gap:48px;width:100%;max-width:560px;margin:0 auto;padding:48px 24px 40px;display:flex}.landing-hero{flex-direction:column;align-items:center;gap:20px;display:flex}.landing-icon-wrap{margin-bottom:8px}.landing-hero-icon{background:linear-gradient(145deg,#f97316,#ea580c)!important;box-shadow:0 12px 24px #f9731659!important}.landing-app-name{letter-spacing:-.03em;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(3rem,10vw,5rem);font-weight:900;line-height:1}.landing-title{color:inherit;opacity:.75;margin:0;font-size:clamp(1.1rem,3vw,1.4rem);font-weight:600;line-height:1.3}.landing-subtitle{color:#475569;max-width:420px;margin:0;font-size:.98rem;line-height:1.6}.app-shell.dark .landing-subtitle{color:#94a3b8}.app-shell.dark .landing-title{opacity:.6}.landing-feature-pills{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.landing-pill{border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:5px 12px;font-size:.75rem;font-weight:600;display:inline-flex}.landing-pill-compass{color:#2563eb;background:#3b82f61a;border-color:#3b82f640}.landing-pill-debate{color:#dc2626;background:#ef44441a;border-color:#ef44444d}.landing-pill-peer{color:#6366f1;background:#6366f114;border-color:#6366f133}.landing-pill-soon{color:#818cf8;background:#6366f126;border-radius:999px;padding:1px 6px;font-size:.62rem;font-weight:700}.app-shell.dark .landing-pill-compass{color:#93c5fd;background:#3b82f61f;border-color:#3b82f64d}.app-shell.dark .landing-pill-debate{color:#fca5a5;background:#ef44441f;border-color:#ef44444d}.app-shell.dark .landing-pill-peer{color:#a5b4fc;background:#6366f11f;border-color:#6366f140}.landing-ctas{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.landing-cta-primary{color:#fff;cursor:pointer;letter-spacing:.01em;background:linear-gradient(135deg,#f97316,#ea580c);border:none;border-radius:999px;padding:14px 40px;font-size:1rem;font-weight:700;transition:opacity .15s,transform .15s,box-shadow .15s;box-shadow:0 8px 20px #f9731659}.landing-cta-primary:hover{opacity:.92;transform:translateY(-1px);box-shadow:0 12px 28px #f9731673}.landing-cta-primary:active{transform:translateY(0)}.landing-features{text-align:left;background:#fff9;border:1px solid #94a3b84d;border-radius:16px;flex-direction:column;gap:20px;width:100%;padding:24px;display:flex}.app-shell.dark .landing-features{background:#02061780;border-color:#47556980}.landing-feature{align-items:flex-start;gap:14px;display:flex}.landing-feature-icon{color:#f97316;background:#f973161a;border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.app-shell.dark .landing-feature-icon{color:#fb923c;background:#f9731626}.landing-feature strong{margin-bottom:2px;font-size:.92rem;font-weight:700;display:block}.landing-feature p{color:#64748b;margin:0;font-size:.85rem;line-height:1.5}.app-shell.dark .landing-feature p{color:#94a3b8}.landing-features-divider{background:#94a3b840;height:1px;margin:4px 0}.app-shell.dark .landing-features-divider{background:#47556966}.landing-feature-icon-new{color:#ef4444;background:linear-gradient(135deg,#dc262621,#ef44441a)}.app-shell.dark .landing-feature-icon-new{color:#f87171;background:#ef444426}.landing-feature-icon-coming{color:#8b5cf6;background:linear-gradient(135deg,#6366f121,#8b5cf61a)}.app-shell.dark .landing-feature-icon-coming{color:#a78bfa;background:#8b5cf626}.landing-new-badge{letter-spacing:.1em;text-transform:uppercase;color:#dc2626;vertical-align:middle;background:#dc262624;border-radius:999px;margin-left:6px;padding:2px 7px;font-size:.6rem;font-weight:800;display:inline-block}.app-shell.dark .landing-new-badge{color:#f87171;background:#ef44442e}.landing-coming-badge{letter-spacing:.1em;text-transform:uppercase;color:#6366f1;vertical-align:middle;background:#6366f121;border-radius:999px;margin-left:6px;padding:2px 7px;font-size:.6rem;font-weight:800;display:inline-block}.app-shell.dark .landing-coming-badge{color:#a78bfa;background:#8b5cf62e}.landing-disclaimer{color:#94a3b8;margin:0;font-size:.75rem}.comparison-diff-card{background:#ffffffd9;border:1px solid #94a3b859;border-radius:14px;flex-direction:column;gap:8px;margin-bottom:12px;padding:14px 16px;display:flex}.app-shell.dark .comparison-diff-card{background:#0f172ab3;border-color:#47556999}.comparison-diff-head{justify-content:space-between;align-items:baseline;display:flex}.comparison-diff-head h3{margin:0;font-size:.95rem;font-weight:700}.comparison-diff-count{color:#64748b;font-size:.75rem}.comparison-diff-row{flex-wrap:wrap;align-items:center;gap:10px;font-size:.85rem;display:flex}.comparison-diff-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.comparison-diff-dot.primary{background:#f97316;box-shadow:0 0 0 2px #f9731640}.comparison-diff-dot.friend{background:#fff;border:1px solid #94a3b8}.comparison-diff-friend{border-left:2px solid #94a3b84d;flex-direction:column;gap:3px;padding-left:20px;display:flex}.comparison-diff-sentence{color:#64748b;margin:0;font-size:.8rem;line-height:1.4}.comparison-diff-sentence em{color:#f97316;font-style:normal;font-weight:600}.app-shell.dark .comparison-diff-sentence{color:#94a3b8}.app-shell.dark .comparison-diff-sentence em{color:#fb923c}.comparison-load-error{color:#ef4444;background:#ef44441a;border:1px solid #ef44444d;border-radius:12px;align-items:center;gap:10px;margin:16px 0;padding:12px 16px;font-size:.88rem;display:flex}.app-shell.dark .comparison-load-error{color:#f87171;background:#ef44441f;border-color:#ef444440}.error-home-link{color:inherit;cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.compare-cta-card{background:linear-gradient(135deg,#f973161a 0%,#6366f114 100%);border:1.5px solid #f9731659;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 0 16px;padding:16px 20px;display:flex}.app-shell.dark .compare-cta-card{background:linear-gradient(135deg,#f973161f 0%,#6366f11a 100%);border-color:#f9731673}.compare-context-card{background:linear-gradient(135deg,#6366f114 0%,#f973160f 100%);border-color:#6366f159}.app-shell.dark .compare-context-card{border-color:#6366f173}.compare-cta-content{flex:1;align-items:flex-start;gap:14px;display:flex}.compare-cta-dot{background:#f97316;border-radius:50%;flex-shrink:0;width:14px;height:14px;margin-top:4px;box-shadow:0 0 0 4px #f9731638}.compare-cta-heading{margin:0 0 2px;font-size:1rem;font-weight:700}.compare-cta-sub{color:#475569;margin:0;font-size:.83rem;line-height:1.4}.app-shell.dark .compare-cta-sub{color:#94a3b8}.compare-cta-btn{cursor:pointer;color:#fff;white-space:nowrap;background:#f97316;border:none;border-radius:12px;flex-shrink:0;padding:10px 20px;font-size:.9rem;font-weight:700;transition:background .15s,transform .1s}.compare-cta-btn:hover{background:#ea580c;transform:translateY(-1px)}.compare-cta-btn:active{transform:translateY(0)}.compare-legend{flex-wrap:wrap;align-items:center;gap:12px;font-size:.85rem;font-weight:600;display:flex}.legend-dot{vertical-align:middle;border-radius:50%;width:10px;height:10px;margin-right:4px;display:inline-block}.legend-dot.primary{background:#f97316;box-shadow:0 0 0 2px #f9731640}.legend-dot.friend{background:#fff;border:1.5px solid #94a3b8}.app-shell.dark .legend-dot.friend{background:#e2e8f0}.legend-item{white-space:nowrap;align-items:center;display:flex}.legend-you{opacity:.55;margin-left:2px;font-size:.78em}.share-btn-wrap{display:inline-flex;position:relative}.share-nudge-tooltip{white-space:nowrap;color:#fff;pointer-events:none;z-index:200;background:#ea580c;border-radius:8px;padding:6px 10px;font-size:.75rem;animation:.25s nudge-fade-in,.4s 4.1s forwards nudge-fade-out;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.share-nudge-tooltip:after{content:"";border:5px solid #0000;border-top-color:#ea580c;position:absolute;top:100%;left:50%;transform:translate(-50%)}.app-shell.dark .share-nudge-tooltip{background:#f97316}.app-shell.dark .share-nudge-tooltip:after{border-top-color:#f97316}@keyframes nudge-fade-in{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes nudge-fade-out{0%{opacity:1}to{opacity:0}}.debate-prompt{margin-top:18px;margin-bottom:16px}.debate-cta-btn{cursor:pointer;text-align:left;width:100%;color:inherit;background:linear-gradient(135deg,#dc26261f 0%,#ef444412 100%);border:1px solid #dc262659;border-radius:14px;align-items:center;gap:16px;padding:16px 20px;transition:background .2s,border-color .2s,box-shadow .2s;display:flex}.debate-cta-btn:hover{background:linear-gradient(135deg,#dc262633 0%,#ef44441f 100%);border-color:#dc262699;box-shadow:0 4px 20px #dc26261f}.app-shell.dark .debate-cta-btn{background:linear-gradient(135deg,#ef44441a 0%,#b91c1c14 100%);border-color:#ef444447}.app-shell.dark .debate-cta-btn:hover{background:linear-gradient(135deg,#ef44442e 0%,#b91c1c24 100%);border-color:#ef444480;box-shadow:0 4px 24px #ef444426}.debate-cta-icon{color:#dc2626;background:#dc262626;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.app-shell.dark .debate-cta-icon{color:#f87171;background:#ef444426}.debate-cta-content{flex-direction:column;gap:3px;display:flex}.debate-cta-title{color:#dc2626;font-size:.95rem;font-weight:700;line-height:1.2}.app-shell.dark .debate-cta-title{color:#f87171}.debate-cta-sub{color:#64748b;font-size:.78rem;line-height:1.4}.app-shell.dark .debate-cta-sub{color:#475569}.debate-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#020617b8;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}@media (width>=600px){.debate-overlay{align-items:center;padding:24px}}.debate-panel{background:#0f1729;border:1px solid #ef44444d;border-radius:16px 16px 0 0;flex-direction:column;width:100%;max-width:680px;max-height:92vh;display:flex;overflow:hidden;box-shadow:0 -8px 48px #ef44441f,0 0 0 1px #ef44441a}@media (width>=600px){.debate-panel{border-radius:16px;max-height:82vh;box-shadow:0 24px 80px #020617b3,0 0 0 1px #ef444426}}.debate-overlay:not(.dark) .debate-panel{background:#fff;border-color:#ef444433;box-shadow:0 24px 80px #0f172a2e,0 0 0 1px #ef44441a}.debate-overlay:not(.dark) .debate-header{background:#ef44440a;border-bottom-color:#ef44441f}.debate-overlay:not(.dark) .debate-header-title{color:#0f172a}.debate-overlay:not(.dark) .debate-reset-btn{color:#64748b;border-color:#64748b4d}.debate-overlay:not(.dark) .debate-reset-btn:hover{color:#334155;border-color:#94a3b8}.debate-overlay:not(.dark) .debate-close-btn{color:#94a3b8}.debate-overlay:not(.dark) .debate-close-btn:hover{color:#0f172a}.debate-overlay:not(.dark) .debate-persona-card{background:#ef444408}.debate-overlay:not(.dark) .debate-vs-you .debate-vs-name{color:#4338ca}.debate-overlay:not(.dark) .debate-vs-enemy .debate-vs-name{color:#dc2626}.debate-overlay:not(.dark) .debate-vs-coords,.debate-overlay:not(.dark) .debate-disclaimer{color:#64748b}.debate-overlay:not(.dark) .debate-msg-body{color:#1e293b;background:#f1f5f9e6;border-color:#ef444433 #ef444433 #ef444433 #ef444480}.debate-overlay:not(.dark) .debate-msg-user .debate-msg-body{color:#312e81;background:#eef2ffe6;border-color:#6366f14d #6366f1b3 #6366f14d #6366f14d}.debate-overlay:not(.dark) .debate-msg-sender{color:#dc2626}.debate-overlay:not(.dark) .debate-input{color:#0f172a;background:#f8fafc;border-color:#64748b4d}.debate-overlay:not(.dark) .debate-input::placeholder{color:#94a3b8}.debate-overlay:not(.dark) .debate-input:focus{border-color:#ef444466}.debate-overlay:not(.dark) .debate-input-row{background:#f8fafc;border-top-color:#64748b26}.debate-overlay:not(.dark) .debate-error{color:#991b1b;background:#fee2e2e6;border-color:#ef44444d}.debate-overlay:not(.dark) .dsummary-scores-row{background:#f8fafc;border-color:#6366f126}.debate-overlay:not(.dark) .dsummary-scores-name{color:#475569}.debate-overlay:not(.dark) .dsummary-scores-vs{color:#94a3b8}.debate-overlay:not(.dark) .dsummary-score-num{color:#1e293b}.debate-overlay:not(.dark) .dsummary-score-denom{color:#94a3b8}.debate-overlay:not(.dark) .dsummary-score-bar-track{background:#00000012}.debate-overlay:not(.dark) .dsummary-section{background:#f8fafc;border-color:#64748b26}.debate-overlay:not(.dark) .dsummary-verdict{border-color:#6366f133}.debate-overlay:not(.dark) .dsummary-section-label{color:#94a3b8}.debate-overlay:not(.dark) .dsummary-section-text{color:#334155}.debate-overlay:not(.dark) .dsummary-strength-card{background:#f8fafc}.debate-overlay:not(.dark) .dsummary-strength-text{color:#475569}.debate-overlay:not(.dark) .dsummary-loading{color:#94a3b8}.debate-overlay:not(.dark) .debate-summary,.debate-overlay:not(.dark) .debate-messages{background:#fff}.debate-overlay:not(.dark) .debate-para{color:#1e293b}.debate-header{background:#ef44440f;border-bottom:1px solid #ef44442e;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.debate-header-left{align-items:center;gap:8px;display:flex}.debate-swords-icon{color:#ef4444}.debate-header-title{color:#f1f5f9;letter-spacing:.02em;text-transform:uppercase;font-size:.9rem;font-weight:700}.debate-header-actions{align-items:center;gap:6px;display:flex}.debate-end-btn{color:#f87171;cursor:pointer;background:0 0;border:1px solid #ef444459;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:.75rem;transition:background .2s,border-color .2s,color .2s;display:flex}.debate-end-btn:hover:not(:disabled){color:#fca5a5;background:#ef44441a;border-color:#ef444499}.debate-end-btn:disabled{opacity:.35;cursor:default}.debate-reset-btn{color:#94a3b8;cursor:pointer;background:0 0;border:1px solid #94a3b840;border-radius:6px;padding:4px 10px;font-size:.75rem;transition:border-color .2s,color .2s}.debate-reset-btn:hover{color:#cbd5e1;border-color:#94a3b880}.debate-close-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;transition:color .2s;display:flex}.debate-close-btn:hover{color:#f1f5f9}.debate-persona-card{background:#ef44440a;border-bottom:1px solid #ef444424;flex-shrink:0;padding:14px 16px 12px}.debate-vs-row{align-items:center;gap:0;margin-bottom:8px;display:flex}.debate-vs-side{flex-direction:column;flex:1;gap:2px;display:flex}.debate-vs-you{align-items:flex-start}.debate-vs-enemy{align-items:flex-end}.debate-vs-label{text-transform:uppercase;letter-spacing:.08em;color:#475569;font-size:.65rem;font-weight:700}.debate-vs-you .debate-vs-label{color:#6366f1}.debate-vs-enemy .debate-vs-label{color:#ef4444}.debate-vs-name{font-size:.88rem;font-weight:700;line-height:1.2}.debate-vs-you .debate-vs-name{color:#a5b4fc}.debate-vs-enemy .debate-vs-name{color:#fca5a5}.debate-vs-coords{color:#475569;font-variant-numeric:tabular-nums;font-size:.68rem}.debate-vs-divider{color:#ef4444;opacity:.6;flex-direction:column;justify-content:center;align-items:center;padding:0 12px;display:flex}.debate-persona-meta{align-items:center;gap:10px;display:flex}.debate-persona-quadrant{color:#ef4444;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background:#ef444426;border-radius:999px;padding:2px 8px;font-size:.65rem;font-weight:700}.debate-disclaimer{color:#334155;margin:0;font-size:.68rem;font-style:italic}.debate-summary{flex-direction:column;flex:1;gap:16px;padding:20px 18px;display:flex;overflow-y:auto}.dsummary-scores-row{background:#0f172a99;border:1px solid #6366f126;border-radius:12px;align-items:center;gap:12px;padding:14px 16px;display:flex}.dsummary-scores-side{flex-direction:column;flex:1;gap:6px;display:flex}.dsummary-scores-side-right{align-items:flex-end}.dsummary-scores-name{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.75rem;font-weight:700;overflow:hidden}.dsummary-scores-vs{color:#475569;letter-spacing:.08em;font-size:.65rem;font-weight:800}.dsummary-score-bar-wrap{align-items:center;gap:8px;width:100%;display:flex}.dsummary-score-bar-wrap.dsummary-score-bar-adversary{flex-direction:row-reverse}.dsummary-score-bar-track{background:#ffffff0f;border-radius:999px;flex:1;height:6px;overflow:hidden}.dsummary-score-bar-fill{border-radius:999px;height:100%;transition:width .6s}.dsummary-score-bar-fill-user{background:linear-gradient(90deg,#6366f1,#818cf8)}.dsummary-score-bar-fill-adversary{background:linear-gradient(90deg,#ef4444,#f87171);margin-left:auto}.dsummary-score-num{color:#e2e8f0;white-space:nowrap;font-size:.82rem;font-weight:700}.dsummary-score-denom{color:#64748b;font-size:.65rem}.dsummary-section{background:#0f172a80;border:1px solid #94a3b81a;border-radius:10px;padding:12px 14px}.dsummary-verdict{border-color:#6366f133}.dsummary-section-label{text-transform:uppercase;letter-spacing:.1em;color:#64748b;margin-bottom:6px;font-size:.65rem;font-weight:800}.dsummary-section-text{color:#cbd5e1;margin:0;font-size:.875rem;line-height:1.55}.dsummary-strengths-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.dsummary-strength-card{background:#0f172a80;border-radius:10px;padding:12px 14px}.dsummary-strength-user{border:1px solid #6366f140;border-left:3px solid #6366f199}.dsummary-strength-adversary{border:1px solid #ef444433;border-right:3px solid #ef444480}.dsummary-strength-label{text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px;font-size:.62rem;font-weight:800}.dsummary-strength-user .dsummary-strength-label{color:#818cf8}.dsummary-strength-adversary .dsummary-strength-label{color:#f87171}.dsummary-strength-text{color:#94a3b8;margin:0;font-size:.8rem;line-height:1.5}.dsummary-loading{color:#64748b;align-items:center;gap:10px;padding:8px 0;font-size:.8rem;display:flex}.debate-messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.debate-msg{flex-direction:column;max-width:82%;display:flex}.debate-msg-bot{align-self:flex-start}.debate-msg-user{align-self:flex-end}.debate-msg-sender{color:#ef4444;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.68rem;font-weight:700}.debate-msg-body{color:#e2e8f0;background:#0f1932d9;border:1px solid #ef444440;border-left:3px solid #ef444499;border-radius:4px 12px 12px;padding:10px 14px;font-size:.875rem;line-height:1.55}.debate-msg-user .debate-msg-body{color:#dde2ff;background:#373c6e8c;border:1px solid #6366f173;border-right:3px solid #6366f1cc;border-radius:12px 4px 12px 12px;padding:8px 14px}.debate-para{margin:0 0 6px}.debate-para:last-child{margin-bottom:0}.debate-list{margin:4px 0 6px;padding-left:18px}.debate-list:last-child{margin-bottom:0}.debate-list li{margin-bottom:4px;line-height:1.5}.debate-list li:last-child{margin-bottom:0}.debate-typing{background:#1e293bcc;border:1px solid #ef444426;border-radius:4px 12px 12px;align-items:center;gap:5px;width:fit-content;padding:10px 14px;display:flex}.debate-typing span{background:#ef4444;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite debate-bounce}.debate-typing span:nth-child(2){animation-delay:.2s}.debate-typing span:nth-child(3){animation-delay:.4s}.debate-overlay:not(.dark) .debate-typing{background:#f1f5f9e6;border-color:#ef444433}@keyframes debate-bounce{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.debate-error{color:#fca5a5;text-align:center;background:#ef44441a;border:1px solid #ef444433;border-radius:8px;align-self:center;padding:8px 12px;font-size:.8rem}.debate-input-row{background:#0f172a99;border-top:1px solid #ef44441f;flex-shrink:0;gap:8px;padding:12px 16px;display:flex}.debate-input{color:#e2e8f0;resize:none;background:#1e293bb3;border:1px solid #94a3b826;border-radius:10px;flex:1;padding:10px 14px;font-family:inherit;font-size:.875rem;line-height:1.5;transition:border-color .2s}.debate-input:focus{border-color:#ef444466;outline:none}.debate-input::placeholder{color:#475569}.debate-input:disabled{opacity:.5}.debate-send-btn{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;transition:background .2s,opacity .2s;display:flex}.debate-send-btn:hover:not(:disabled){background:#ef4444}.debate-send-btn:disabled{opacity:.35;cursor:not-allowed}.debate-choice-overlay{z-index:220;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#020617b8;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}@media (width>=600px){.debate-choice-overlay{align-items:center;padding:24px}}.debate-choice-sheet{background:#0f1729;border:1px solid #ef44444d;border-radius:16px 16px 0 0;width:100%;max-width:540px;padding:20px;box-shadow:0 -8px 48px #ef44441f,0 0 0 1px #ef44441a}.debate-choice-overlay:not(.dark) .debate-choice-sheet{background:#fff;border-color:#ef44442e;box-shadow:0 24px 60px #0f172a29}.debate-choice-overlay:not(.dark) .debate-choice-title{color:#0f172a}.debate-choice-overlay:not(.dark) .debate-choice-sub{color:#64748b}.debate-choice-overlay:not(.dark) .debate-choice-option{background:#f8fafc;border-color:#94a3b840}.debate-choice-overlay:not(.dark) .debate-choice-option:hover{background:#f1f5f9;border-color:#ef444459}.debate-choice-overlay:not(.dark) .debate-choice-name{color:#0f172a}.debate-choice-overlay:not(.dark) .debate-choice-desc,.debate-choice-overlay:not(.dark) .debate-choice-close-btn{color:#64748b}.debate-choice-overlay:not(.dark) .debate-choice-close-btn:hover{color:#0f172a}@media (width>=600px){.debate-choice-sheet{border-radius:18px;box-shadow:0 24px 80px #020617b3,0 0 0 1px #ef444426}}.debate-choice-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.debate-choice-title{color:#f1f5f9;margin:0;font-size:1.05rem;font-weight:700}.debate-choice-sub{color:#94a3b8;margin:2px 0 0;font-size:.82rem}.debate-choice-option{width:100%;color:inherit;text-align:left;cursor:pointer;background:#1e293b8c;border:1px solid #94a3b82e;border-radius:12px;align-items:center;gap:14px;margin-bottom:10px;padding:14px 16px;transition:background .2s,border-color .2s,transform .1s;display:flex}.debate-choice-option:last-child{margin-bottom:0}.debate-choice-option:hover{background:#1e293bd9;border-color:#ef444473}.debate-choice-option:active{transform:scale(.99)}.debate-choice-icon{color:#f87171;background:#ef444429;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.debate-choice-body{flex-direction:column;flex:1;gap:3px;display:flex}.debate-choice-name{color:#f1f5f9;align-items:center;gap:8px;font-size:.95rem;font-weight:700;display:inline-flex}.debate-choice-desc{color:#94a3b8;font-size:.78rem;line-height:1.4}.debate-overlay:not(.dark) .peer-state-title{color:#0f172a}.debate-overlay:not(.dark) .peer-state-sub{color:#64748b}.debate-overlay:not(.dark) .peer-state-error{color:#dc2626}.debate-overlay:not(.dark) .peer-state-meta{color:#64748b}.debate-overlay:not(.dark) .peer-meta-sep{color:#94a3b8}.debate-overlay:not(.dark) .peer-pulse-ring{background:#6366f11a}.debate-overlay:not(.dark) .peer-primary-btn{background:#4f46e5}.debate-overlay:not(.dark) .peer-secondary-btn{color:#475569;background:#f1f5f9;border-color:#64748b4d}.debate-overlay:not(.dark) .peer-secondary-btn:hover{background:#e2e8f0;border-color:#94a3b8}.debate-overlay:not(.dark) .peer-vs-you .peer-vs-name{color:#4338ca}.debate-overlay:not(.dark) .peer-vs-enemy .peer-vs-name{color:#dc2626}.debate-overlay:not(.dark) .peer-vs-label,.debate-overlay:not(.dark) .peer-vs-coords{color:#64748b}.debate-overlay:not(.dark) .peer-matched-card{background:#f8fafc;border-color:#6366f133}.debate-overlay:not(.dark) .peer-matched-badge{color:#4338ca;background:#6366f11a}.debate-overlay:not(.dark) .peer-apart-badge{color:#92400e;background:#f59e0b1f}.debate-overlay:not(.dark) .peer-apart-respectful{color:#64748b}.debate-overlay:not(.dark) .peer-starter-card{background:#6366f10f;border-color:#6366f12e}.debate-overlay:not(.dark) .peer-starter-label{color:#6366f1}.debate-overlay:not(.dark) .peer-starter-text{color:#334155}.peer-debate-panel{border-color:#6366f159;box-shadow:0 -8px 48px #6366f124,0 0 0 1px #6366f11f}@media (width>=600px){.peer-debate-panel{box-shadow:0 24px 80px #020617b3,0 0 0 1px #6366f12e}}.peer-state-card{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:32px 24px 28px;display:flex}.peer-state-title{color:#f1f5f9;margin:4px 0 0;font-size:1.05rem;font-weight:700}.peer-state-sub{color:#94a3b8;max-width:320px;margin:0;font-size:.85rem;line-height:1.5}.peer-state-error{color:#fca5a5}.peer-state-meta{color:#94a3b8;align-items:center;gap:6px;margin-top:6px;font-size:.78rem;display:inline-flex}.peer-meta-sep{color:#475569}.peer-spinner{border:3px solid #6366f12e;border-top-color:#818cf8;border-radius:50%;width:36px;height:36px;animation:.9s linear infinite peer-spin}@keyframes peer-spin{to{transform:rotate(360deg)}}.peer-pulse-ring{color:#a5b4fc;background:#6366f124;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;display:flex;position:relative}.peer-pulse-ring:before,.peer-pulse-ring:after{content:"";border:2px solid #6366f173;border-radius:50%;animation:2s ease-out infinite peer-pulse;position:absolute;inset:0}.peer-pulse-ring:after{animation-delay:1s}@keyframes peer-pulse{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.8)}}.peer-primary-btn{color:#fff;cursor:pointer;background:#4f46e5;border:none;border-radius:10px;margin-top:14px;padding:11px 22px;font-size:.9rem;font-weight:600;transition:background .2s,transform .1s}.peer-primary-btn:hover{background:#6366f1}.peer-primary-btn:active{transform:scale(.99)}.peer-secondary-btn{color:#cbd5e1;cursor:pointer;background:0 0;border:1px solid #94a3b84d;border-radius:8px;margin-top:14px;padding:8px 18px;font-size:.85rem;transition:border-color .2s,color .2s}.peer-secondary-btn:hover{color:#f1f5f9;border-color:#94a3b899}.peer-matched-card{gap:14px}.peer-matched-badge{color:#a5b4fc;letter-spacing:.08em;text-transform:uppercase;background:#6366f12e;border-radius:999px;padding:4px 12px;font-size:.7rem;font-weight:700}.peer-vs-row{align-items:center;gap:0;width:100%;margin-top:6px;display:flex}.peer-vs-side{flex-direction:column;flex:1;gap:3px;display:flex}.peer-vs-you{text-align:left;align-items:flex-start}.peer-vs-enemy{text-align:right;align-items:flex-end}.peer-vs-label{letter-spacing:.08em;text-transform:uppercase;font-size:.65rem;font-weight:700}.peer-vs-you .peer-vs-label{color:#6366f1}.peer-vs-enemy .peer-vs-label{color:#ef4444}.peer-vs-name{font-size:.9rem;font-weight:700;line-height:1.2}.peer-vs-you .peer-vs-name{color:#a5b4fc}.peer-vs-enemy .peer-vs-name{color:#fca5a5}.peer-vs-coords{color:#475569;font-variant-numeric:tabular-nums;font-size:.7rem}.peer-vs-quadrant{color:#64748b;font-size:.7rem}.peer-vs-divider{color:#94a3b8;flex-direction:column;align-items:center;gap:4px;padding:0 12px;display:flex}.peer-distance-pill{letter-spacing:.04em;color:#a5b4fc;background:#6366f126;border-radius:999px;padding:2px 8px;font-size:.66rem;font-weight:700}.peer-tone-mild{color:#cbd5e1;background:#94a3b82e}.peer-tone-medium{color:#fde68a;background:#eab3082e}.peer-tone-strong{color:#fca5a5;background:#ef44442e}.peer-conflict-banner{color:#a5b4fc;letter-spacing:.03em;background:#6366f11f;border-radius:8px;padding:8px 16px;font-size:.82rem;font-weight:700}.peer-conflict-banner.peer-tone-mild{color:#cbd5e1;background:#94a3b824}.peer-conflict-banner.peer-tone-medium{color:#fde68a;background:#eab30824}.peer-conflict-banner.peer-tone-strong{color:#fca5a5;background:#ef444424}.peer-rules-card{text-align:left;align-items:stretch}.peer-rules-icon{color:#86efac;background:#22c55e29;border-radius:50%;justify-content:center;align-self:center;align-items:center;width:52px;height:52px;margin-bottom:4px;display:flex}.peer-rules-list{flex-direction:column;gap:10px;margin:8px 0 0;padding:0;list-style:none;display:flex}.peer-rules-list li{color:#cbd5e1;padding-left:22px;font-size:.88rem;line-height:1.45;position:relative}.peer-rules-list li:before{content:"";background:#6366f1;border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:4px}.peer-rules-disclaimer{color:#64748b;text-align:center;max-width:320px;margin:4px 0 0;font-size:.72rem;line-height:1.5}.peer-persona-card{background:#6366f10d;border-color:#6366f12e}.peer-starter-card{background:#6366f11a;border:1px solid #6366f140;border-radius:10px;flex-direction:column;gap:4px;margin:0 16px 12px;padding:12px 14px;display:flex}.peer-starter-label{letter-spacing:.08em;text-transform:uppercase;color:#818cf8;font-size:.66rem;font-weight:700}.peer-starter-text{color:#e0e7ff;margin:0;font-size:.92rem;font-style:italic;line-height:1.5}.peer-empty-hint{color:#64748b;align-self:center;padding:14px 0;font-size:.82rem;font-style:italic}.peer-debug-pill{letter-spacing:.1em;color:#fde68a;background:#eab3082e;border-radius:999px;margin-left:6px;padding:2px 7px;font-size:.6rem;font-weight:700}.debate-choice-peer-wrap{position:relative}.debate-choice-coming-soon .debate-choice-option{opacity:.7;pointer-events:none;-webkit-user-select:none;user-select:none;cursor:default}.debate-coming-soon-banner{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);pointer-events:none;background:#0f172a40;border-radius:12px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.debate-coming-soon-text{letter-spacing:.14em;text-transform:uppercase;color:#94a3b8;background:#1e293be6;border:1px solid #94a3b84d;border-radius:999px;padding:5px 14px;font-size:.72rem;font-weight:800}.app-footer{align-items:center;gap:12px;height:32px;margin-top:40px;padding:0 16px;display:flex}.app-footer-copy{color:#94a3b8;letter-spacing:.01em;-webkit-user-select:none;user-select:none;font-size:.72rem}.app-footer.dark .app-footer-copy{color:#64748b}.app-footer-feedback-btn{cursor:pointer;color:#94a3b8;background:0 0;border:none;padding:0;font-size:.72rem;font-weight:400;text-decoration:none}.app-footer-feedback-btn:hover{text-underline-offset:2px;text-decoration:underline}.app-footer.dark .app-footer-feedback-btn,.app-footer.dark .app-footer-feedback-btn:hover{color:#64748b}.feedback-overlay{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172a73;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.feedback-sheet{background:#fff;border-radius:16px;flex-direction:column;gap:14px;width:100%;max-width:420px;padding:24px;display:flex;box-shadow:0 24px 64px #0000002e}.feedback-overlay.dark .feedback-sheet{background:#1e293b}.feedback-header{justify-content:space-between;align-items:center;display:flex}.feedback-title{color:#0f172a;margin:0;font-size:1rem;font-weight:700}.feedback-overlay.dark .feedback-title{color:#f8fafc}.feedback-close-btn{cursor:pointer;color:#94a3b8;background:0 0;border:none;align-items:center;padding:2px;display:flex}.feedback-close-btn:hover{color:#0f172a}.feedback-overlay.dark .feedback-close-btn:hover{color:#f8fafc}.feedback-type-row{gap:8px;display:flex}.feedback-type-btn{cursor:pointer;color:#64748b;background:0 0;border:1.5px solid #e2e8f0;border-radius:8px;flex:1;padding:8px 0;font-size:.85rem;font-weight:500;transition:all .15s}.feedback-overlay.dark .feedback-type-btn{color:#94a3b8;border-color:#334155}.feedback-type-btn.active{color:#f97316;background:#f9731614;border-color:#f97316}.feedback-textarea{color:#0f172a;resize:vertical;box-sizing:border-box;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;width:100%;padding:10px 12px;font-family:inherit;font-size:.88rem;transition:border-color .15s}.feedback-textarea:focus{border-color:#f97316}.feedback-overlay.dark .feedback-textarea{color:#f8fafc;background:#0f172a;border-color:#334155}.feedback-overlay.dark .feedback-textarea:focus{border-color:#f97316}.feedback-email-input{color:#0f172a;box-sizing:border-box;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;width:100%;padding:9px 12px;font-family:inherit;font-size:.85rem;transition:border-color .15s}.feedback-email-input:focus{border-color:#f97316}.feedback-overlay.dark .feedback-email-input{color:#f8fafc;background:#0f172a;border-color:#334155}.feedback-overlay.dark .feedback-email-input:focus{border-color:#f97316}.feedback-error{color:#ef4444;margin:0;font-size:.8rem}.feedback-footer-row{justify-content:flex-end;gap:8px;display:flex}.feedback-cancel-btn{color:#64748b;cursor:pointer;background:0 0;border:1.5px solid #e2e8f0;border-radius:8px;padding:8px 18px;font-family:inherit;font-size:.85rem}.feedback-cancel-btn:hover{background:#f1f5f9}.feedback-overlay.dark .feedback-cancel-btn{color:#94a3b8;border-color:#334155}.feedback-overlay.dark .feedback-cancel-btn:hover{background:#0f172a}.feedback-submit-btn{color:#fff;cursor:pointer;background:#f97316;border:none;border-radius:8px;padding:8px 20px;font-family:inherit;font-size:.85rem;font-weight:600;transition:background .15s}.feedback-submit-btn:hover:not(:disabled){background:#ea580c}.feedback-submit-btn:disabled{opacity:.6;cursor:not-allowed}.feedback-sheet--success{text-align:center;align-items:center;gap:16px;padding:36px 24px}.feedback-success-icon{color:#f97316;background:#f973161f;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;font-weight:700;display:flex}.feedback-success-text{color:#0f172a;margin:0;font-size:.95rem}.feedback-overlay.dark .feedback-success-text{color:#f8fafc}
