@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito Fallback;src:local("Arial");ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.00%;size-adjust:101.39%}.__className_eef148{font-family:Nunito,Nunito Fallback;font-style:normal}.__variable_eef148{--font-nunito:"Nunito","Nunito Fallback"}:root{--font-sans:var(--font-nunito),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--text-xs:14px;--text-sm:16px;--text-base:18px;--text-lg:21px;--text-xl:26px;--text-2xl:32px;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--gray-50:#121110;--gray-100:#1B1917;--gray-200:#252220;--gray-300:#332F2C;--gray-400:#8a7d6d;--gray-500:#C8B89A;--gray-700:#F5EDD8;--gray-900:#F5EDD8;--en-50:#1F1613;--en-100:#2A1C16;--en-200:#4A2E20;--en-500:#B65C3A;--en-600:#B65C3A;--en-700:#9A4E31;--es-50:#121920;--es-100:#162030;--es-200:#1A3050;--es-500:#1D6FA3;--es-600:#185D8A;--es-700:#134B71;--col-yellow:#D4900A;--col-yellow-dim:#B87A08;--cta:#1D6FA3;--cta-gradient:linear-gradient(135deg,#B65C3A,#D4900A,#F4A261);--highlight:#D4900A;--highlight-warm:#F4A261;--nav-active-accent:var(--col-yellow);--nav-bottom-height:84px;--bg:var(--gray-50);--surface:var(--gray-100);--surface-elevated:var(--gray-100);--border:var(--gray-300);--text-primary:var(--gray-900);--text-secondary:var(--gray-500);--text-muted:var(--gray-400);--header-glass:rgba(18,17,16,0.9);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--shadow-xs:0 1px 2px rgba(0,0,0,0.3);--shadow-sm:0 1px 3px rgba(0,0,0,0.4),0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 6px rgba(0,0,0,0.35),0 2px 4px rgba(0,0,0,0.2);--shadow-lg:0 10px 15px rgba(0,0,0,0.4),0 4px 6px rgba(0,0,0,0.25);--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.65,0,0.35,1);--duration-fast:120ms;--duration-normal:200ms;--duration-slow:350ms;--chat-pattern-url:url(/patterns/caribbean.svg?v=3);--chat-pattern-opacity:0.06;--chat-pattern-filter:brightness(1.5) saturate(1.3)}:root[data-theme=light]{--gray-50:#FAF7F2;--gray-100:#FFFFFF;--gray-200:#F0EDE7;--gray-300:#E8E3DB;--gray-400:#9A9288;--gray-500:#5C564D;--gray-700:#1A1714;--gray-900:#1A1714;--en-50:#F8F0EB;--en-100:#F0E0D5;--en-200:#D4956E;--es-50:#EBF2F8;--es-100:#D5E3F0;--es-200:#6EA3D4;--col-yellow:#B65C3A;--col-yellow-dim:#9A4D2E;--highlight:#B65C3A;--surface-elevated:#FFFFFF;--header-glass:rgba(250,247,242,0.8);--shadow-xs:0 1px 2px rgba(0,0,0,0.05);--shadow-sm:0 1px 3px rgba(0,0,0,0.08),0 1px 2px rgba(0,0,0,0.04);--shadow-md:0 4px 6px rgba(0,0,0,0.06),0 2px 4px rgba(0,0,0,0.04);--shadow-lg:0 10px 15px rgba(0,0,0,0.08),0 4px 6px rgba(0,0,0,0.04);--chat-pattern-opacity:0.10;--chat-pattern-filter:brightness(2.0) saturate(1.5)}@media (prefers-color-scheme:light){:root[data-theme=system]{--gray-50:#FAF7F2;--gray-100:#FFFFFF;--gray-200:#F0EDE7;--gray-300:#E8E3DB;--gray-400:#9A9288;--gray-500:#5C564D;--gray-700:#1A1714;--gray-900:#1A1714;--en-50:#F8F0EB;--en-100:#F0E0D5;--en-200:#D4956E;--es-50:#EBF2F8;--es-100:#D5E3F0;--es-200:#6EA3D4;--col-yellow:#B65C3A;--col-yellow-dim:#9A4D2E;--highlight:#B65C3A;--surface-elevated:#FFFFFF;--header-glass:rgba(250,247,242,0.8);--shadow-xs:0 1px 2px rgba(0,0,0,0.05);--shadow-sm:0 1px 3px rgba(0,0,0,0.08),0 1px 2px rgba(0,0,0,0.04);--shadow-md:0 4px 6px rgba(0,0,0,0.06),0 2px 4px rgba(0,0,0,0.04);--shadow-lg:0 10px 15px rgba(0,0,0,0.08),0 4px 6px rgba(0,0,0,0.04);--chat-pattern-opacity:0.10;--chat-pattern-filter:brightness(2.0) saturate(1.5)}}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%;font-family:var(--font-sans);font-size:var(--text-base);background:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased}body{display:flex;flex-direction:column;min-height:100dvh}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:var(--chat-pattern-url);background-size:400px auto;background-repeat:repeat;opacity:var(--chat-pattern-opacity);filter:var(--chat-pattern-filter,none);z-index:0}.app{flex-direction:column;flex:1 1;min-height:0;position:relative}.app,.header{display:flex;width:100%;max-width:480px;margin:0 auto}.header{padding:var(--space-3) var(--space-5);padding-bottom:max(var(--space-3),calc(env(safe-area-inset-bottom) + var(--space-1)));background:var(--header-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border);position:fixed;bottom:0;left:0;right:0;z-index:10}.header,.header-logo{justify-content:center;align-items:center}.header-logo{width:48px;height:48px;display:inline-flex;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.header-logo:active{background:var(--border)}.header-logo-mark{font-size:var(--text-lg);font-weight:var(--font-bold);line-height:1;color:var(--text-secondary)}.header:after{content:"";position:absolute;top:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--en-500),var(--col-yellow),var(--highlight-warm));opacity:.8}.header h1{font-size:var(--text-xl);font-weight:var(--font-bold);letter-spacing:-.01em}.header-right{display:flex;align-items:center;gap:0;width:100%;justify-content:space-evenly}.help-link{padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);background:var(--surface);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-secondary);text-decoration:none;transition:background var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.help-link:active{background:var(--border)}.nav-icon-btn{width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;background:transparent;border-radius:var(--radius-lg);border:none;color:var(--text-muted);text-decoration:none;transition:color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.nav-icon-btn svg{width:28px;height:28px}.nav-icon-btn:active{transform:scale(.9)}.nav-icon-btn-active{color:var(--nav-active-accent)}.nav-logo-mark{font-size:22px;font-weight:var(--font-bold);line-height:1}.refresh-btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:var(--radius-md);background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;font-family:var(--font-sans);transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.refresh-btn:active{background:var(--border)}.side-drawer{position:fixed;right:var(--space-3);top:50%;transform:translateY(-50%);z-index:9;display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.side-drawer-tab{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent;box-shadow:var(--shadow-sm);transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.side-drawer-tab:active{transform:scale(.9)}.side-drawer-tab svg{transition:transform var(--duration-normal) var(--ease-out)}.side-drawer[data-open=true] .side-drawer-tab svg{transform:rotate(45deg)}.side-drawer-panel{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);background:var(--header-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);transform:scale(.8) translateY(-8px);opacity:0;pointer-events:none;transform-origin:top right;transition:transform var(--duration-normal) var(--ease-out),opacity var(--duration-normal) var(--ease-out)}.side-drawer[data-open=true] .side-drawer-panel{transform:scale(1) translateY(0);opacity:1;pointer-events:auto}.side-drawer-backdrop{position:fixed;inset:0;z-index:8}.header-status{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.status-pill{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--surface);font-size:var(--text-xs);color:var(--text-secondary);transition:background var(--duration-normal) var(--ease-out),color var(--duration-normal) var(--ease-out)}.status-dot,.status-pill{border-radius:var(--radius-full)}.status-dot{width:6px;height:6px;background:var(--gray-400);transition:background var(--duration-normal) var(--ease-out)}.status-pill.connected .status-dot{background:#22c55e;animation:status-pulse 2s ease-in-out infinite}.status-pill.disconnected .status-dot{background:#ef4444}.status-pill.reconnecting .status-dot{background:#eab308;animation:status-pulse 1s ease-in-out infinite}.status-pill.recording,.status-pill.recording .status-dot{animation:recording-pulse 1.5s ease-in-out infinite}.status-pill.recording .status-dot{background:var(--en-500)}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes recording-pulse{0%,to{opacity:1}50%{opacity:.6}}.messages{flex:1 1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);-webkit-overflow-scrolling:touch;position:relative;padding-bottom:80px;mask-image:linear-gradient(180deg,transparent 0,black 12px,black calc(100% - 48px),transparent);-webkit-mask-image:linear-gradient(180deg,transparent 0,black 12px,black calc(100% - 48px),transparent)}.messages>*{position:relative;z-index:1}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:var(--space-8)}.empty-card{background:transparent;border-radius:var(--radius-lg);padding:var(--space-8) var(--space-6);box-shadow:none;text-align:center;max-width:280px}.empty-icon{position:relative;width:48px;height:40px;margin:0 auto var(--space-5);animation:none}.empty-bubble{position:absolute;width:28px;height:22px;border-radius:12px 12px 12px 4px}.empty-bubble-en{background:var(--en-200);top:0;left:0}.empty-bubble-es{background:var(--es-200);bottom:0;right:0;border-radius:12px 12px 4px 12px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.empty-text{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--text-primary);margin-bottom:var(--space-1)}.empty-subtext{font-size:var(--text-base);color:var(--text-muted)}.bubble{padding:var(--space-3) var(--space-4);max-width:85%;min-width:120px;animation:bubble-in var(--duration-slow) var(--ease-out) both}@keyframes bubble-in{0%{opacity:0;transform:translateY(8px)}}.bubble .label{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--font-medium);margin-bottom:2px;letter-spacing:.02em}.bubble-time{margin-left:auto;font-weight:var(--font-normal);color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0;opacity:.85}.session-date-header{align-self:center;font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-muted);letter-spacing:.02em;padding:var(--space-2) var(--space-3);margin-bottom:var(--space-1);text-transform:capitalize}.label-dot{width:6px;height:6px;border-radius:var(--radius-full);flex-shrink:0}.bubble p{font-size:var(--text-base);line-height:1.4}.bubble.source.en{background:linear-gradient(135deg,var(--en-50),var(--en-100));align-self:flex-start;border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--radius-sm)}.bubble.source.en .label{color:var(--en-600)}.bubble.source.en .label-dot{background:var(--en-500)}.bubble.source.es{background:linear-gradient(135deg,var(--es-50),var(--es-100));align-self:flex-end;border-radius:var(--radius-lg) var(--radius-lg) var(--radius-sm) var(--radius-lg)}.bubble.source.es .label{color:var(--es-600)}.bubble.source.es .label-dot{background:var(--es-500)}.bubble.cleaning{animation:cleaning-breathe 1.5s ease-in-out infinite}.bubble.cleaning p{transition:opacity var(--duration-normal) var(--ease-out)}@keyframes cleaning-breathe{0%,to{opacity:1}50%{opacity:.55}}.bubble.translation{background:var(--surface-elevated);margin-top:-2px;font-style:normal;animation-delay:.1s}.bubble.translation .label{color:var(--text-muted)}.bubble.translation.es{border-left:2px solid var(--es-500);align-self:flex-start;border-radius:var(--radius-sm) var(--radius-lg) var(--radius-lg) var(--radius-sm)}.bubble.translation.en{border-right:2px solid var(--en-500);align-self:flex-end;border-radius:var(--radius-lg) var(--radius-sm) var(--radius-sm) var(--radius-lg)}.bubble.translation .label-dot{background:var(--text-muted)}.controls{position:absolute;bottom:0;left:0;right:0;display:flex;padding-bottom:max(var(--space-6),calc(env(safe-area-inset-bottom) + var(--space-3)));pointer-events:none}.controls>*{pointer-events:auto}.controls-single{justify-content:center}.mic-stack{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.mic-stack .status-pill{padding:var(--space-4) var(--space-4);font-weight:var(--font-medium)}.recording-timer{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em;min-width:4ch;text-align:center}.recording-timer-hidden{visibility:hidden}.btn-mic.mic-fab{position:fixed;bottom:max(var(--space-6),calc(env(safe-area-inset-bottom) + var(--space-4)));right:var(--space-4);position:absolute;bottom:max(var(--space-8),calc(env(safe-area-inset-bottom) + var(--space-6)));right:var(--space-6);z-index:10}.mic-fab-timer{position:absolute;top:-24px;left:50%;transform:translateX(-50%);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.btn-mic{width:64px;height:64px;border:none;border-radius:var(--radius-full);background:var(--cta-gradient);color:rgba(255,255,255,.95);cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center;transition:transform .3s var(--ease-out),box-shadow .5s var(--ease-in-out);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:0 12px 32px rgba(212,144,10,.4),inset 0 1px 0 rgba(255,230,180,.25)}.btn-mic:active:not(:disabled){transform:scale(.93)}.btn-mic{--mic-level:0}.btn-mic.active{transform:scale(1.08);background:var(--cta-gradient);animation:mic-glow 2s ease-in-out infinite;box-shadow:0 0 24px rgba(212,144,10,.5),0 0 56px rgba(182,92,58,.25),inset 0 1px 0 rgba(255,230,180,.3)}@keyframes mic-glow{0%,to{box-shadow:0 0 24px rgba(212,144,10,.5),0 0 56px rgba(182,92,58,.25),inset 0 1px 0 rgba(255,230,180,.3)}50%{box-shadow:0 0 40px rgba(212,144,10,.7),0 0 80px rgba(244,162,97,.35),inset 0 1px 0 rgba(255,230,180,.4)}}.btn-mic.active.has-level{animation:none;box-shadow:0 0 calc(16px + 32px * var(--mic-level)) rgba(212,144,10,calc(.35 + .45 * var(--mic-level))),0 0 calc(40px + 60px * var(--mic-level)) rgba(244,162,97,calc(.12 + .25 * var(--mic-level))),inset 0 1px 0 rgba(255,230,180,.3);transition:box-shadow 80ms linear}@keyframes breathe{0%,to{box-shadow:0 0 24px rgba(182,92,58,.6),0 0 56px rgba(182,92,58,.25)}50%{box-shadow:0 0 48px rgba(182,92,58,.9),0 0 96px rgba(182,92,58,.4)}}.mic-icon{width:22px;height:22px;transition:transform .3s var(--ease-out),opacity .3s var(--ease-out)}.btn-mic.active .mic-icon{width:20px;height:20px}.btn-mic:disabled{opacity:.4;pointer-events:none;background:var(--gray-300);box-shadow:none}.waveform{display:flex;align-items:center;justify-content:center;gap:3px;height:16px;margin-top:var(--space-1)}.waveform-bar{width:3px;border-radius:2px;background:rgba(255,255,255,.7);animation:wave 1s ease-in-out infinite}.waveform-bar:first-child{height:8px;animation-delay:0s}.waveform-bar:nth-child(2){height:14px;animation-delay:.15s}.waveform-bar:nth-child(3){height:10px;animation-delay:.3s}.waveform-bar:nth-child(4){height:16px;animation-delay:.1s}.waveform-bar:nth-child(5){height:6px;animation-delay:.25s}@keyframes wave{0%,to{transform:scaleY(1)}50%{transform:scaleY(.4)}}.btn-mic.processing{animation:breathe-muted 2s ease-in-out infinite}@keyframes breathe-muted{0%,to{box-shadow:0 0 12px rgba(150,150,150,.2)}50%{box-shadow:0 0 20px rgba(150,150,150,.35)}}.login{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100dvh;gap:var(--space-6);padding:var(--space-8);animation:login-in var(--duration-slow) var(--ease-out) both}.login,.login>*{position:relative}.login>*{z-index:1}@keyframes login-in{0%{opacity:0;transform:translateY(20px)}}.login h1{font-size:36px;font-weight:var(--font-bold);letter-spacing:-.02em;color:var(--text-primary);position:relative;padding-bottom:10px}.login h1:after{content:"";position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:70%;height:3px;background:linear-gradient(90deg,#B65C3A,#D4900A,#F4A261);border-radius:2px}.login-subtitle{font-size:var(--text-base);color:var(--text-muted);font-style:italic;margin-top:calc(-1 * var(--space-4))}.login form{display:flex;flex-direction:column;gap:var(--space-3);width:100%;max-width:240px}.login input{padding:var(--space-4);height:48px;border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-lg);font-family:var(--font-sans);text-align:center;letter-spacing:8px;outline:none;background:var(--surface);color:var(--text-primary);transition:border-color var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.login input:focus{border-color:var(--cta);box-shadow:0 0 0 3px rgba(29,111,163,.1)}.login input.input-error{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.1)}.login button{padding:var(--space-4);height:48px;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-semibold);font-family:var(--font-sans);color:white;background:var(--cta-gradient);cursor:pointer;transition:opacity var(--duration-fast),transform var(--duration-fast)}.login button:active{transform:scale(.97)}.login .error{color:var(--es-500);font-size:var(--text-base);text-align:center;animation:fade-in var(--duration-normal) var(--ease-out)}@keyframes fade-in{0%{opacity:0}}.bubble.playing{transition:box-shadow var(--duration-normal) var(--ease-out)}.bubble.playing.en{box-shadow:0 0 12px rgba(182,92,58,.2)}.bubble.playing.es{box-shadow:0 0 12px rgba(29,111,163,.2)}.word-line{font-size:var(--text-base);line-height:1.4}.word{cursor:pointer;padding:1px 0;border-radius:3px;transition:color var(--duration-fast) var(--ease-out),font-weight var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.word:active{opacity:.7}.word-active{background:var(--gray-300);border-radius:3px;padding:1px 2px;margin:-1px -2px}.bubble-toolbar{gap:var(--space-2);margin-top:var(--space-2)}.bubble-toolbar,.replay-btn{display:flex;align-items:center}.replay-btn{width:36px;height:36px;border:none;border-radius:var(--radius-full);background:var(--gray-200);color:var(--text-secondary);font-size:13px;cursor:pointer;justify-content:center;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.replay-btn:active{transform:scale(.92)}.replay-active{background:var(--gray-300);color:var(--text-primary)}.copy-btn{width:36px;height:36px;border:none;border-radius:var(--radius-full);background:var(--gray-200);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.copy-btn:active{transform:scale(.92)}.copy-btn.copied{background:var(--gray-300);color:var(--text-primary)}.copy-icon{width:16px;height:16px}.speed-badge{padding:6px 14px;border:1px solid var(--gray-300);border-radius:var(--radius-full);background:transparent;color:var(--text-muted);font-size:var(--text-base);font-family:var(--font-sans);font-weight:var(--font-medium);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.speed-active,.speed-badge:active{border-color:var(--text-secondary)}.speed-active{background:var(--gray-200);color:var(--text-primary)}.toolbar-loading{opacity:.65}.replay-btn-ghost{width:36px;height:36px}.replay-btn-ghost,.speed-badge-ghost{border-radius:var(--radius-full);background:var(--gray-300);animation:skeleton-pulse 1.2s ease-in-out infinite}.speed-badge-ghost{width:72px;height:33px;animation-delay:.2s}.speed-badge-idle{border-style:dashed;border-color:var(--gray-400);opacity:.7}.speed-badge-idle:active{opacity:1;border-color:var(--text-secondary)}.speed-badge-loading{pointer-events:none;animation:skeleton-breathe 1.2s ease-in-out infinite}@keyframes skeleton-breathe{0%,to{opacity:.35}50%{opacity:.8}}.toolbar-ready{animation:toolbar-in var(--duration-normal) var(--ease-out)}@keyframes toolbar-in{0%{opacity:0;transform:translateY(2px)}}.dt-toolbar{margin-top:var(--space-2)}.skeleton-lines{display:flex;flex-direction:column;gap:6px;padding:2px 0}.skeleton-line{height:14px;border-radius:4px;background:var(--gray-300);animation:skeleton-pulse 1.2s ease-in-out infinite;width:75%}.skeleton-line-short{width:50%;animation-delay:.2s}.skeleton{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--space-4);padding:var(--space-8)}.skeleton-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--gray-300);animation:skeleton-pulse 1.2s ease-in-out infinite}.skeleton-dot:nth-child(2){animation-delay:.2s}.skeleton-dot:nth-child(3){animation-delay:.4s}.skeleton-dots{display:flex;gap:var(--space-2)}@keyframes skeleton-pulse{0%,to{opacity:.3}50%{opacity:1}}.ayuda{display:flex;flex-direction:column;flex:1 1;min-height:0;width:100%;max-width:480px;margin:0 auto;animation:login-in var(--duration-slow) var(--ease-out) both}.ayuda-tabs-row{display:flex;justify-content:flex-end;margin-bottom:var(--space-4)}.ayuda-tabs{display:flex;gap:2px;background:var(--surface);border-radius:var(--radius-md);padding:2px}.ayuda-tab{padding:var(--space-2) var(--space-3);border:none;border-radius:calc(var(--radius-md) - 2px);font-size:var(--text-xs);font-weight:var(--font-medium);font-family:var(--font-sans);color:var(--text-muted);background:transparent;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.ayuda-tab.active{background:var(--surface-elevated);color:var(--text-primary);box-shadow:var(--shadow-xs)}.ayuda-content{flex:1 1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--space-6) var(--space-5);padding-bottom:max(var(--space-8),calc(env(safe-area-inset-bottom) + var(--space-4)))}.ayuda-title{font-size:var(--text-2xl);font-weight:var(--font-bold);letter-spacing:-.02em;color:var(--text-primary);position:relative;padding-bottom:8px;margin-bottom:var(--space-1);display:inline-block}.ayuda-title:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,#B65C3A,#D4900A,#F4A261);border-radius:2px}.ayuda-subtitle{font-size:var(--text-base);color:var(--text-muted);font-style:italic}.ayuda-section,.ayuda-subtitle{margin-bottom:var(--space-6)}.ayuda-section h2{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.ayuda-section p,.ayuda-steps,.ayuda-tips{font-size:var(--text-base);line-height:1.6;color:var(--text-secondary)}.ayuda-steps,.ayuda-tips{padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}.ayuda-steps li::marker{color:var(--col-yellow-dim);font-weight:var(--font-semibold)}.ayuda-tips li::marker{color:var(--text-secondary)}.ayuda-section strong{color:var(--text-primary);font-weight:var(--font-semibold)}.ayuda-link{display:inline-block;margin-top:var(--space-2);font-size:var(--text-base);font-weight:var(--font-medium);color:var(--en-500);text-decoration:none}.persona-picker{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);animation:login-in var(--duration-slow) var(--ease-out) both}.persona-title{font-size:var(--text-xl);font-weight:var(--font-bold);margin-bottom:var(--space-1)}.persona-subtitle{font-size:var(--text-base);color:var(--text-muted);margin-bottom:var(--space-8)}.persona-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-3);gap:var(--space-3);width:100%;max-width:280px}.persona-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);border:2px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-elevated);cursor:pointer;font-family:var(--font-sans);transition:border-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.persona-btn:active{transform:scale(.96)}.persona-avatar{width:48px;height:48px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);font-weight:var(--font-bold);color:white}.persona-name{font-size:var(--text-base);color:var(--text-primary)}.persona-chip,.persona-name{font-weight:var(--font-medium)}.persona-chip{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);min-height:40px;border-radius:var(--radius-full);background:var(--surface);border:1px solid var(--border);font-size:var(--text-xs);font-family:var(--font-sans);color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent}.persona-chip-dot{width:8px;height:8px;border-radius:var(--radius-full)}.ideas-loading{justify-content:center;height:100dvh}.ideas-loading,.ideas-toolbar{display:flex;align-items:center}.ideas-toolbar{justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);gap:var(--space-2)}.ideas-toolbar,.status-multi{position:relative}.status-multi-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);min-height:40px;border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-medium);font-family:var(--font-sans);color:var(--text-secondary);background:var(--surface);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.status-multi-btn:active{background:var(--border)}.status-multi-label{color:var(--text-primary)}.status-multi-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:var(--radius-full);background:var(--nav-active-accent);color:var(--gray-50)}.filter-section-label,.status-multi-count{font-size:11px;font-weight:var(--font-bold)}.filter-section-label{padding:var(--space-1) var(--space-3) var(--space-1);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.filter-section-divider{height:1px;background:var(--border);margin:var(--space-2) 0}.filter-type-row{display:flex;gap:2px;background:var(--surface);border-radius:var(--radius-md);padding:2px;margin:0 var(--space-2)}.filter-pill{flex:1 1;padding:var(--space-2) var(--space-3);min-height:36px;border:none;border-radius:calc(var(--radius-md) - 2px);font-size:var(--text-xs);font-weight:var(--font-medium);font-family:var(--font-sans);color:var(--text-muted);background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.filter-pill.active{background:var(--surface-elevated);color:var(--text-primary);box-shadow:var(--shadow-xs)}.status-multi-popover{position:absolute;top:calc(100% + 4px);left:0;z-index:30;min-width:180px;padding:var(--space-2);background:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:2px}.status-multi-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:calc(var(--radius-md) - 2px);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.status-multi-option:hover{background:var(--surface)}.status-multi-option input[type=checkbox]{margin:0;cursor:pointer}.status-multi-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-multi-actions{display:flex;gap:var(--space-2);padding-top:var(--space-2);margin-top:2px;border-top:1px solid var(--border)}.status-multi-action{flex:1 1;padding:var(--space-2);border:none;background:transparent;color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-medium);font-family:var(--font-sans);cursor:pointer;border-radius:calc(var(--radius-md) - 2px);-webkit-tap-highlight-color:transparent}.status-multi-action:hover{background:var(--surface);color:var(--text-primary)}.ideas-toolbar-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.lang-toggle{display:flex;align-items:center;gap:4px;padding:var(--space-2) var(--space-3);min-height:40px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);font-size:var(--text-xs);font-weight:var(--font-medium);font-family:var(--font-sans);color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent}.lang-toggle .lang-active{color:var(--text-primary);font-weight:var(--font-bold)}.lang-toggle .lang-divider{color:var(--border)}.new-idea-btn{position:fixed;bottom:max(var(--space-6),calc(env(safe-area-inset-bottom) + var(--space-4)));right:var(--space-4);width:48px;height:48px;border:none;border-radius:var(--radius-full);background:var(--cta-gradient);color:white;font-size:var(--text-xl);font-weight:var(--font-bold);cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);line-height:1;box-shadow:0 12px 32px rgba(212,144,10,.4),inset 0 1px 0 rgba(255,230,180,.25);z-index:10}.new-idea-btn:active{transform:scale(.92)}.idea-form{padding:var(--space-4);border-bottom:1px solid var(--border);animation:bubble-in var(--duration-slow) var(--ease-out) both}.form-toggle{display:flex;gap:2px;background:var(--surface);border-radius:var(--radius-md);padding:2px;margin-bottom:var(--space-3);width:-moz-fit-content;width:fit-content}.form-toggle-btn{padding:var(--space-3) var(--space-4);min-height:44px;border:none;border-radius:calc(var(--radius-md) - 2px);font-size:var(--text-xs);font-weight:var(--font-medium);font-family:var(--font-sans);color:var(--text-muted);background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.form-toggle-btn.active{background:var(--surface-elevated);color:var(--text-primary);box-shadow:var(--shadow-xs)}.idea-textarea{width:100%;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-base);font-family:var(--font-sans);background:var(--surface);color:var(--text-primary);resize:none;outline:none;transition:border-color var(--duration-fast) var(--ease-out)}.idea-textarea:focus{border-color:var(--cta)}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3)}.form-cancel{font-weight:var(--font-medium);color:var(--text-secondary);background:var(--surface)}.form-cancel,.form-submit{padding:var(--space-3) var(--space-5);min-height:48px;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-family:var(--font-sans);cursor:pointer;-webkit-tap-highlight-color:transparent}.form-submit{font-weight:var(--font-semibold);color:white;background:var(--cta-gradient)}.form-submit:disabled{opacity:.4;pointer-events:none}.ideas-list{flex:1 1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--space-4);padding-bottom:max(calc(var(--space-12) + 56px),calc(env(safe-area-inset-bottom) + 56px + var(--space-6)));display:flex;flex-direction:column;gap:var(--space-4)}.ideas-empty{display:flex;align-items:center;justify-content:center;height:200px;color:var(--text-muted);font-size:var(--text-base)}.idea-card{background:var(--surface-elevated);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);animation:bubble-in var(--duration-slow) var(--ease-out) both}.idea-header{justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-2)}.idea-author,.idea-header{display:flex;gap:var(--space-2)}.idea-author{align-items:center;min-width:0}.idea-avatar{width:24px;height:24px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:var(--font-bold);color:white;flex-shrink:0}.idea-author-name{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-primary)}.idea-time{font-size:var(--text-xs);color:var(--text-muted)}.idea-badges{display:flex;gap:var(--space-2);align-items:center;flex-shrink:0}.idea-category-badge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:12px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.04em}.idea-category-badge[data-category=idea]{background:var(--en-100);color:var(--en-500)}.idea-category-badge[data-category=bug]{background:var(--es-100);color:var(--es-500)}.idea-status-badge{padding:var(--space-1) var(--space-3);min-height:28px;border-radius:var(--radius-full);font-size:13px;font-weight:var(--font-semibold);background:transparent;border:1px solid;font-family:var(--font-sans)}.idea-body{padding:var(--space-1) 0;cursor:pointer;-webkit-tap-highlight-color:transparent}.idea-body p{font-size:var(--text-base);line-height:1.5;color:var(--text-primary)}.idea-alt-text{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border);font-style:italic;color:var(--text-secondary)!important;animation:bubble-in var(--duration-normal) var(--ease-out) both}.idea-pipeline-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--space-2)}.pipeline-pill{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;font-size:13px;font-weight:500;border-radius:var(--radius-full);border:1px solid;text-decoration:none;transition:all var(--duration-fast) var(--ease-out);min-height:28px}.pipeline-pill--disabled{color:var(--text-muted);border-color:var(--border);opacity:.4;pointer-events:none}.pipeline-pill--done{cursor:pointer}.pipeline-pill--done:hover{filter:brightness(1.2)}.pipeline-pill--issue.pipeline-pill--done{color:#a78bfa;border-color:rgba(167,139,250,.4)}.pipeline-pill--agent.pipeline-pill--done{color:#3b82f6;border-color:rgba(59,130,246,.4)}.pipeline-pill--pr.pipeline-pill--done{color:#22c55e;border-color:rgba(34,197,94,.4)}@keyframes pill-breathe{0%,to{opacity:.5}50%{opacity:1}}.pipeline-pill--breathing{animation:pill-breathe 2s ease-in-out infinite}.pipeline-pill--issue.pipeline-pill--breathing{color:#a78bfa;border-color:rgba(167,139,250,.3)}.pipeline-pill--agent.pipeline-pill--breathing{color:#3b82f6;border-color:rgba(59,130,246,.3);cursor:pointer}.pipeline-pill--pr.pipeline-pill--breathing{color:#22c55e;border-color:rgba(34,197,94,.3)}.pipeline-pill--preview.pipeline-pill--done{color:#FCD116;border-color:rgba(252,209,22,.4)}.pipeline-pill--preview.pipeline-pill--breathing{color:#FCD116;border-color:rgba(252,209,22,.3)}.idea-edited{font-size:11px;color:var(--text-muted);font-style:italic}.idea-edit{padding:var(--space-2) 0}.idea-footer{justify-content:space-between;margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.idea-footer,.vote-btn{display:flex;align-items:center}.vote-btn{gap:var(--space-2);padding:var(--space-2) var(--space-3);min-height:40px;border:1px solid var(--border);border-radius:var(--radius-full);background:transparent;cursor:pointer;font-family:var(--font-sans);font-size:var(--text-xs);color:var(--text-secondary);-webkit-tap-highlight-color:transparent;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.vote-btn.voted{border-color:var(--en-500);background:var(--en-50)}.vote-icon{font-size:14px}.vote-count{font-weight:var(--font-semibold)}.vote-names{font-size:11px}.edit-btn,.vote-names{color:var(--text-muted)}.edit-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;font-size:13px;font-weight:500;min-height:28px;border:1px solid var(--border);border-radius:var(--radius-full);background:transparent;font-family:var(--font-sans);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:all var(--duration-fast) var(--ease-out)}.idea-actions{display:flex;align-items:center;gap:6px}.edit-btn:hover{filter:brightness(1.2)}.edit-btn:active{background:var(--surface)}.delete-btn{gap:4px;padding:5px 12px;font-size:13px;font-weight:500;border:1px solid rgba(239,68,68,.4);border-radius:var(--radius-full);font-family:var(--font-sans);color:#ef4444}.delete-btn,.pipeline-btn{display:inline-flex;align-items:center;min-height:28px;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:all var(--duration-fast) var(--ease-out)}.pipeline-btn{justify-content:center;padding:5px 10px;min-width:28px;border:1px solid rgba(139,92,246,.4);border-radius:var(--radius-full);color:#8b5cf6}.pipeline-btn:hover{filter:brightness(1.2)}.pipeline-btn:active{background:rgba(139,92,246,.1)}.pipeline-btn:disabled{opacity:.5;cursor:not-allowed}.pipeline-btn--loading{border-color:rgba(139,92,246,.6)}.pipeline-btn--error{border-color:var(--error);color:var(--error);font-weight:700}.pipeline-btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(139,92,246,.3);border-top-color:#8b5cf6;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.local-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;font-size:13px;font-weight:500;font-family:monospace;min-height:28px;border:1px solid rgba(34,197,94,.4);border-radius:var(--radius-full);background:transparent;color:#22c55e;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:all var(--duration-fast) var(--ease-out)}.local-btn:hover{filter:brightness(1.2)}.local-btn:active{background:rgba(34,197,94,.1)}.local-btn--copied{border-color:rgba(34,197,94,.6)}.delete-btn:hover{filter:brightness(1.2)}.delete-btn:active{background:rgba(239,68,68,.1)}.idea-input-wrap{position:relative}.idea-input-wrap .idea-textarea{padding-right:52px}.mic-area{position:absolute;right:var(--space-2);bottom:var(--space-2);gap:6px}.mic-area,.mic-btn{display:flex;align-items:center}.mic-btn{width:40px;height:40px;border:none;border-radius:var(--radius-full);background:var(--surface);color:var(--text-muted);cursor:pointer;justify-content:center;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.mic-btn.active{background:var(--cta);color:white}.idea-input-wrap.cleaning .idea-textarea{opacity:.6;transition:opacity .2s ease}.cleanup-spinner{width:16px;height:16px;border:2px solid var(--gray-300);border-top-color:var(--cta);border-radius:50%;animation:cleanup-spin .6s linear infinite}@keyframes cleanup-spin{to{transform:rotate(1turn)}}.mode-toggle{display:flex;gap:2px;background:var(--surface);border:1px solid var(--gray-200);border-radius:var(--radius-full);padding:4px;margin:var(--space-2) var(--space-4) 0;width:-moz-fit-content;width:fit-content;align-self:center;margin-left:auto;margin-right:auto}.mode-btn{padding:var(--space-2) var(--space-5);min-height:36px;min-width:56px;border:none;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);font-family:var(--font-sans);color:var(--text-muted);background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.mode-btn:disabled{opacity:.5;pointer-events:none}.mode-btn.mode-active{background:var(--gray-300);color:var(--text-primary);font-weight:var(--font-semibold)}.mode-row{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin:var(--space-2) var(--space-4) 0}.mode-row .mode-toggle{margin:0}.autoplay-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out)}.autoplay-toggle:active{background:var(--surface-elevated)}.reset-conv-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out)}.reset-conv-btn:active{background:var(--surface-elevated)}.reset-conv-btn:disabled{opacity:.4;cursor:default}.autoplay-toggle.autoplay-off{color:var(--text-muted);opacity:.6}.walkie-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1.5px solid var(--gray-200);border-radius:var(--radius-md);background:var(--surface);color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.walkie-toggle:active{background:var(--surface-elevated)}.walkie-toggle:disabled{opacity:.4;cursor:default}.walkie-toggle.walkie-active{background:var(--en-500);color:#fff;border-color:var(--en-500)}.status-pill.walkie-listening .status-dot{background:#34d399}.status-pill.walkie-translating .status-dot{background:var(--col-yellow)}.status-pill.walkie-playing .status-dot{background:var(--es-500)}.walkie-nudge{position:fixed;bottom:140px;left:50%;transform:translateX(-50%);background:var(--surface-elevated);color:var(--text-primary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);z-index:50;animation:nudge-fade 3s ease-out forwards}@keyframes nudge-fade{0%,70%{opacity:1}to{opacity:0}}.cambio-onboarding-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:100;display:flex;align-items:flex-end;justify-content:center}.cambio-onboarding-sheet{background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-6);max-width:400px;width:100%;text-align:center}.cambio-onboarding-sheet h3{font-size:var(--text-lg);font-weight:var(--font-bold);margin:0 0 var(--space-3);color:var(--text-primary)}.cambio-onboarding-sheet p{font-size:var(--text-base);color:var(--text-secondary);margin:var(--space-1) 0}.cambio-onboarding-sheet hr{border:none;border-top:1px solid var(--gray-200);margin:var(--space-3) 0}.cambio-onboarding-btn{margin-top:var(--space-4);padding:var(--space-3) var(--space-6);background:var(--en-500);color:#fff;border:none;border-radius:var(--radius-md);font-weight:var(--font-semibold)}.cambio-onboarding-btn,.mesa-lang-filter{font-size:var(--text-base);cursor:pointer;-webkit-tap-highlight-color:transparent}.mesa-lang-filter{height:36px;padding:0 var(--space-2);border:1px solid var(--gray-200);border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23888'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:24px}.mesa-lang-filter:focus{outline:2px solid var(--accent);outline-offset:-1px}.dt-entry{animation:bubble-in var(--duration-slow) var(--ease-out) both}.dt-bubble{padding:var(--space-3) var(--space-4);background:var(--surface-elevated);border-radius:var(--radius-lg);max-width:100%}.dt-bubble.dt-interim{opacity:.7}.dt-label{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--font-medium);margin-bottom:2px}.dt-speaker-dot{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0}.dt-speaker-name{font-weight:var(--font-semibold);letter-spacing:.02em}.dt-bubble p{font-size:var(--text-base);line-height:1.4}.dt-text-interim{font-style:italic;color:var(--text-secondary)}.dt-translation{margin-top:2px;margin-left:var(--space-4);padding:var(--space-2) var(--space-3);border-left:2px solid var(--gray-300);animation:bubble-in var(--duration-normal) var(--ease-out) both}.dt-translation p{font-size:var(--text-base);line-height:1.4;color:var(--text-secondary)}.dt-translation-label{font-size:var(--text-xs);margin-right:var(--space-1)}.dt-translating{opacity:.5}.dt-translating .skeleton-line{height:12px}.familia-title{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-5)}.familia-section{background:var(--surface-elevated);border-radius:var(--radius-lg);border:1px solid var(--border);margin-bottom:16px;overflow:hidden}.familia-section-header{display:flex;align-items:center;gap:12px;width:100%;padding:16px;background:none;border:none;cursor:pointer;text-align:left;color:inherit;font-family:inherit;-webkit-tap-highlight-color:transparent;min-height:56px}.familia-section-header:hover{background:rgba(255,255,255,.03)}[data-theme=light] .familia-section-header:hover{background:rgba(0,0,0,.02)}.familia-section-text{flex:1 1;min-width:0}.familia-section-name{font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0;line-height:1.3}.familia-section-sub{font-size:var(--text-xs);color:var(--text-secondary);margin:2px 0 0;line-height:1.4}.familia-people-names{font-weight:var(--font-medium)}.familia-chevron{flex-shrink:0;color:var(--text-muted);transition:transform .2s var(--ease-out)}.familia-chevron.expanded{transform:rotate(180deg)}.familia-section-body{padding:0 16px 16px}.familia-enroll-btn{display:block;width:100%;margin-top:16px;padding:12px 20px;border-radius:var(--radius-md);border:1px dashed var(--border);background:transparent;color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-medium);font-family:inherit;cursor:not-allowed;opacity:.6;text-align:center}.enroll-container{padding:16px 20px;max-width:600px;margin:0 auto;overflow-y:auto;flex:1 1}.enroll-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.enroll-page-title{font-size:22px;font-weight:700;margin:0}.enroll-title{font-size:18px;font-weight:600;margin-bottom:4px}.enroll-subtitle{font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:20px}.enroll-grid{display:flex;flex-direction:column;gap:16px}.enroll-card{background:var(--surface-elevated);border-radius:var(--radius-lg);padding:16px;border-top:3px solid}.enroll-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.enroll-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;color:#fff}.enroll-name{font-weight:600;font-size:var(--text-base);flex:1 1}.enroll-complete{font-size:var(--text-xs);color:#22c55e;font-weight:500}.enroll-lang-section{padding:12px 0;border-top:1px solid var(--border)}.enroll-lang-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.enroll-lang-flag{font-size:16px}.enroll-lang-label{font-size:var(--text-base);font-weight:500}.enroll-check{color:#22c55e;font-size:16px;font-weight:700;margin-left:auto}.enroll-prompt{font-size:var(--text-base);color:var(--text-secondary);font-style:italic;line-height:1.5;margin-bottom:10px}.enroll-controls{display:flex;align-items:center;gap:10px}.enroll-btn{padding:8px 20px;border-radius:20px;border:1px solid var(--border);font-size:var(--text-xs);font-weight:600;cursor:pointer;background:var(--surface);color:var(--text-primary);transition:background .15s}.enroll-btn:hover:not(:disabled){background:var(--surface-elevated)}.enroll-btn:disabled{opacity:.4;cursor:default}.enroll-btn-recording{background:#ef4444;border-color:#ef4444;color:#fff;display:flex;align-items:center;gap:8px}.enroll-btn-uploading{background:var(--surface);color:var(--text-secondary)}.enroll-btn-redo{background:var(--surface);font-weight:500}.enroll-pulse{width:10px;height:10px;border-radius:50%;background:#fff;animation:enrollPulse 1s ease-in-out infinite}@keyframes enrollPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.enroll-play{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center}.enroll-play:hover{background:var(--surface-elevated)}.enroll-play-active{background:var(--gray-300)}.theme-toggle-btn{cursor:pointer;font-family:var(--font-sans);padding:0}.theme-toggle-btn svg{transition:opacity var(--duration-normal) var(--ease-out)}.status-pill-floating{position:fixed;bottom:max(var(--space-6),calc(env(safe-area-inset-bottom) + var(--space-3)));left:var(--space-6);z-index:20;box-shadow:var(--shadow-sm);border:1px solid var(--gray-200)}html{transition:background-color var(--duration-normal) var(--ease-out),color var(--duration-normal) var(--ease-out)}.enroll-glossary,.enroll-script-editor{background:var(--surface-elevated);border-radius:var(--radius-lg);padding:16px;margin-bottom:20px;border:1px solid var(--border)}.familia-section .enroll-glossary,.familia-section .enroll-script-editor{background:none;border:none;border-radius:0;padding:0;margin:0}.enroll-glossary{margin-top:24px;margin-bottom:0}.enroll-section-title{font-size:var(--text-lg);font-weight:600;margin-bottom:8px}.enroll-section-help{font-size:var(--text-base);color:var(--text-secondary);line-height:1.5;margin-bottom:6px}.enroll-section-help-es{font-style:italic;opacity:.85}.enroll-section-hint{font-size:var(--text-base);color:var(--text-muted);margin:8px 0 12px}.enroll-section-hint code{background:var(--surface);padding:1px 6px;border-radius:var(--radius-sm);font-size:12px}.enroll-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.enroll-section-header .enroll-section-title{margin:0}.enroll-input,.enroll-textarea{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-xs);padding:8px 10px;font-family:inherit;width:100%;box-sizing:border-box}.enroll-textarea{line-height:1.5;resize:vertical;min-height:120px}.enroll-textarea::placeholder{color:var(--text-muted);opacity:.7;font-style:italic}.enroll-input:focus,.enroll-textarea:focus{outline:none;border-color:var(--text-muted)}.enroll-example-toggle{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:6px 10px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}.enroll-example-toggle:hover{background:var(--surface);color:var(--text-primary)}.enroll-example-chevron{transition:transform .18s ease}.enroll-example-toggle.expanded .enroll-example-chevron{transform:rotate(90deg)}.enroll-example{margin:10px 0 0;padding:12px 14px;background:var(--surface);border-left:3px solid var(--cta);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-xs);line-height:1.6;font-style:italic;white-space:pre-wrap}.enroll-textarea-wrap{position:relative;margin-top:12px}.enroll-textarea-wrap .enroll-textarea{padding-right:16px;padding-bottom:64px}.enroll-textarea-wrap.cleaning .enroll-textarea{opacity:.6;transition:opacity .2s ease}.enroll-script-mic{position:absolute;right:18px;bottom:18px;width:44px;height:44px}.enroll-script-mic .mic-icon{width:20px;height:20px}.enroll-script-spinner{position:absolute;right:72px;bottom:30px;width:16px;height:16px;border-width:2px}.enroll-script-actions{display:flex;align-items:center;gap:12px;margin-top:12px}.enroll-btn-primary{background:var(--cta);border-color:var(--cta);color:#fff}.enroll-btn-primary:hover:not(:disabled){filter:brightness(1.1)}.enroll-script-error{font-size:var(--text-xs);color:#ef4444}.enroll-suggestions{margin-top:14px}.enroll-suggestions-label{font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:6px;display:flex;align-items:center;gap:8px}.enroll-suggest-spinner{width:12px;height:12px;border-width:2px}.enroll-chip-row{display:flex;flex-wrap:wrap;gap:6px}.enroll-chip{background:var(--surface);border:1px dashed var(--border);color:var(--text-primary);border-radius:var(--radius-full);padding:4px 10px;font-size:12px;cursor:pointer;transition:background .15s}.enroll-chip:hover:not(:disabled){background:var(--surface-elevated)}.enroll-chip:disabled{opacity:.5;cursor:default}.enroll-glossary-empty{font-size:var(--text-xs);color:var(--text-muted);padding:12px 0;text-align:center}.enroll-glossary-list{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.enroll-glossary-row{display:grid;grid-template-columns:1fr 1fr 1fr 28px;grid-gap:6px;gap:6px;align-items:center}.enroll-glossary-row.enroll-glossary-add{grid-template-columns:1fr 1fr 1fr auto;margin-top:6px;padding-top:12px;border-top:1px solid var(--border)}.enroll-glossary-row.enroll-glossary-head{font-size:12px;color:var(--text-muted);padding:0 4px}.enroll-glossary-delete{background:transparent;border:none;color:var(--text-muted);font-size:18px;line-height:1;cursor:pointer;padding:4px;border-radius:var(--radius-sm)}.enroll-glossary-delete:hover{color:#ef4444;background:rgba(239,68,68,.08)}.app,.ayuda{padding-top:env(safe-area-inset-top)}.messages{padding-bottom:calc(80px + var(--nav-bottom-height))}.btn-mic.mic-fab,.new-idea-btn{bottom:calc(var(--nav-bottom-height) + max(var(--space-4), env(safe-area-inset-bottom)))}.status-pill-floating{bottom:calc(var(--nav-bottom-height) + max(var(--space-3), env(safe-area-inset-bottom)))}.ayuda-content{padding-bottom:calc(var(--nav-bottom-height) + max(var(--space-4), env(safe-area-inset-bottom)))}.ideas-list{padding-bottom:calc(var(--nav-bottom-height) + 56px + max(var(--space-6), env(safe-area-inset-bottom)))}.enroll-container{padding-bottom:calc(var(--nav-bottom-height) + max(var(--space-6), env(safe-area-inset-bottom)))}.history-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out)}.history-toggle-btn:active{background:var(--surface-elevated)}.history-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:200;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn var(--duration-normal) var(--ease-out)}.history-drawer{background:var(--surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:70dvh;width:100%;max-width:480px;display:flex;flex-direction:column;animation:slideUp var(--duration-slow) var(--ease-out)}.history-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-5) var(--space-3);border-bottom:1px solid var(--border);flex-shrink:0}.history-header h2{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.history-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-full);background:var(--gray-200);color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent}.history-close:active{background:var(--border)}.history-loading{padding:var(--space-6);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.history-list{overflow-y:auto;padding:var(--space-3);padding-bottom:max(var(--space-5),env(safe-area-inset-bottom));flex:1 1;min-height:0}.history-item{display:flex;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-out)}.history-item+.history-item{margin-top:var(--space-1)}.history-item-active,.history-item:active{background:var(--gray-200)}.history-item-active{border:1px solid var(--border)}.history-item-content{flex:1 1;min-width:0;padding:var(--space-3);border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.history-item-meta{display:flex;align-items:center;gap:var(--space-2);margin-bottom:2px}.history-mode-badge{display:inline-block;padding:1px 6px;border-radius:var(--radius-sm);background:var(--gray-300);color:var(--text-secondary);font-size:12px;font-weight:var(--font-semibold);letter-spacing:.02em}.history-date,.history-turn-count{font-size:12px;color:var(--text-muted)}.history-turn-count{margin-left:auto}.history-turn-count:after{content:" turnos"}.history-item-label{font-size:var(--text-sm);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.history-delete-btn{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-md);background:none;color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.history-delete-btn:active{color:#ef4444;background:var(--gray-200)}.history-empty{text-align:center;padding:var(--space-8) var(--space-4);color:var(--text-muted);font-size:var(--text-sm);line-height:1.6}.history-empty span{font-size:13px;opacity:.7}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}