@import"https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&display=swap";.vi-root{--vi-surface-bg: #ffffff;height:100%;display:flex;flex-direction:column;padding:0;font-family:inherit;overflow:hidden;background:var(--vi-surface-bg)}.vi-top-bar{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1.2rem;flex-shrink:0;border-bottom:1px solid rgba(var(--accent-rgb),.08);background:var(--vi-surface-bg)}.vi-status-row{display:flex;align-items:center;gap:.45rem}.vi-sparkle{color:var(--accent-primary)}.vi-sparkle.spinning{animation:spin 2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.vi-status-text{font-size:.72rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.12em}.vi-audio-btn{display:inline-flex;align-items:center;gap:.3rem;border:1px solid #cbd5e1;background:#fff;color:#64748b;border-radius:999px;padding:.32rem .72rem;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:all .2s ease}.vi-audio-btn:hover:not(:disabled){border-color:rgba(var(--accent-rgb),.4);color:var(--accent-primary)}.vi-audio-btn:disabled{opacity:.4;cursor:default}.vi-stage{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem 1.5rem 1rem;gap:1.5rem;background:var(--vi-surface-bg);overflow:hidden}.vi-greeting{display:flex;flex-direction:column;align-items:center;gap:1rem;animation:greetReveal .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes greetReveal{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.vi-greeting-title{font-family:var(--font-display);font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:800;letter-spacing:-.5px;color:var(--text-primary);text-align:center;margin:0;background:linear-gradient(120deg,var(--accent-primary) 0%,var(--accent-secondary) 55%,var(--premium-gold) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.vi-chip-row{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.vi-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(118px,1fr));gap:.56rem;width:min(620px,86vw);margin-top:.68rem}.vi-quick-card{border:1px solid rgba(148,163,184,.26);background:#fffffff0;border-radius:14px;height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.28rem;font-size:.7rem;font-weight:700;color:#475569;cursor:pointer;transition:all .2s ease}.vi-quick-card:hover{border-color:rgba(var(--accent-rgb),.35);color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 8px 16px rgba(var(--accent-rgb),.12)}.vi-chip{display:inline-flex;align-items:center;gap:.35rem;background:#ffffffe6;border:1px solid rgba(var(--accent-rgb),.2);color:#475569;padding:.45rem .9rem;border-radius:999px;font-size:.8rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #0000000a;transition:all .22s ease}.vi-chip:hover{background:#fff;border-color:rgba(var(--accent-rgb),.4);color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 6px 16px rgba(var(--accent-rgb),.12)}.vi-orb-section{display:flex;flex-direction:column;align-items:center;gap:.9rem;flex-shrink:0}.vi-orb-wrap{position:relative;width:188px;height:188px;display:flex;align-items:center;justify-content:center}.vi-orb{position:relative;z-index:2;width:156px;height:156px;border-radius:50%;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#fff;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease;outline:none;-webkit-tap-highlight-color:transparent}.vi-orb:focus-visible{outline:3px solid rgba(var(--accent-rgb),.5);outline-offset:4px}.vi-orb.orb-idle,.vi-orb.orb-connecting{background:radial-gradient(circle at 38% 34%,rgba(14,159,154,.95),var(--accent-primary) 65%,#094040);box-shadow:0 0 #0f766e73,0 16px 40px #0f766e59,0 0 0 2px #ffffff2e inset;animation:orbPulse 3.2s ease-in-out infinite}.vi-orb.orb-connecting{opacity:.65;animation:orbPulse 1.8s ease-in-out infinite}@keyframes orbPulse{0%,to{transform:scale(1);box-shadow:0 0 #0f766e6b,0 16px 40px #0f766e59}50%{transform:scale(1.04);box-shadow:0 0 0 18px #0f766e00,0 18px 48px #0f766e73}}.vi-orb.orb-recording{background:radial-gradient(circle at 38% 34%,#f87171,#ef4444 65%,#991b1b);box-shadow:0 0 #ef444480,0 16px 40px #ef444466;animation:orbRecordPulse 1.2s ease-in-out infinite}@keyframes orbRecordPulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.vi-ripple{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid rgba(239,68,68,.6);animation:orbRipple 2s ease-out infinite;pointer-events:none}.vi-ripple-1{animation-delay:0s}.vi-ripple-2{animation-delay:.55s}.vi-ripple-3{animation-delay:1.1s}@keyframes orbRipple{0%{transform:scale(1);opacity:.7}to{transform:scale(1.7);opacity:0}}.vi-orb.orb-processing{background:radial-gradient(circle at 38% 34%,rgba(14,159,154,.7),var(--accent-primary) 65%,#094040);opacity:.85;cursor:default;animation:none}.vi-spin-arc{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:50%;border:3px solid transparent;border-top-color:var(--accent-primary);border-right-color:rgba(var(--accent-rgb),.35);animation:orbSpin .9s linear infinite;pointer-events:none;z-index:3}@keyframes orbSpin{to{transform:rotate(360deg)}}.vi-orb.orb-playing{background:radial-gradient(circle at 38% 34%,#34d399e6,#059669 65%,#064e3b);box-shadow:0 0 #10b98180,0 16px 40px #10b98159;animation:orbPlayPulse 1.6s ease-in-out infinite}@keyframes orbPlayPulse{0%,to{transform:scale(1);box-shadow:0 0 #10b98166,0 16px 40px #10b9814d}50%{transform:scale(1.03);box-shadow:0 0 0 12px #10b98100,0 18px 48px #10b98173}}.vi-wave-dots{position:absolute;bottom:-24px;left:50%;transform:translate(-50%);display:flex;align-items:flex-end;gap:3px;z-index:4}.vi-wave-dots span{width:4px;border-radius:2px;background:#059669;animation:waveBar 1.2s ease-in-out infinite}.vi-wave-dots span:nth-child(1){height:12px;animation-delay:0s}.vi-wave-dots span:nth-child(2){height:20px;animation-delay:.15s}.vi-wave-dots span:nth-child(3){height:26px;animation-delay:.3s}.vi-wave-dots span:nth-child(4){height:20px;animation-delay:.45s}.vi-wave-dots span:nth-child(5){height:12px;animation-delay:.6s}@keyframes waveBar{0%,to{transform:scaleY(.5);opacity:.6}50%{transform:scaleY(1);opacity:1}}.vi-orb:not(:disabled):hover{transform:scale(1.07)}.vi-orb-label{font-size:.7rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#64748b;-webkit-user-select:none;user-select:none;margin-top:.3rem}.vi-subtle-note{margin-top:-.1rem;font-size:.68rem;letter-spacing:.04em;color:#64748be6}.vi-thinking{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem}.vi-thinking span{width:8px;height:8px;border-radius:50%;background:var(--accent-primary);opacity:.4;animation:thinkDot 1.4s ease-in-out infinite}.vi-thinking span:nth-child(2){animation-delay:.2s}.vi-thinking span:nth-child(3){animation-delay:.4s}@keyframes thinkDot{0%,80%,to{transform:scale(.7);opacity:.4}40%{transform:scale(1.2);opacity:1}}.vi-transcript-strip{flex-shrink:0;max-height:190px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:.45rem;padding:.65rem 1.4rem .5rem;background:#f8fafcb3;border-top:1px solid rgba(var(--accent-rgb),.08);scrollbar-width:thin;scrollbar-color:var(--glass-border) transparent}.vi-transcript-strip::-webkit-scrollbar{width:3px}.vi-transcript-strip::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:3px}.vi-thinking--strip{padding:.2rem 0;justify-content:flex-start}.vi-thinking--strip span{width:6px;height:6px}.vi-strip-error{font-size:.78rem;color:#b91c1c;background:#fee2e2b3;border:1px solid rgba(239,68,68,.2);padding:.35rem .7rem;border-radius:8px;line-height:1.4}.vi-strip-row{display:flex;align-items:baseline;gap:.55rem;line-height:1.5;font-size:.86rem}.vi-strip-label{display:inline-flex;align-items:center;gap:3px;flex-shrink:0;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.15rem .5rem;border-radius:999px;white-space:nowrap}.vi-strip-row--user .vi-strip-label{background:rgba(var(--accent-rgb),.1);color:var(--accent-primary)}.vi-strip-row--ai .vi-strip-label{background:#0f172a0f;color:#475569}.vi-strip-text{color:#475569;font-size:.88rem;font-weight:400;word-break:break-word;white-space:pre-wrap;line-height:1.5}.vi-strip-row--user .vi-strip-text{color:var(--accent-primary);font-weight:500}.vi-confirm-row{display:flex;gap:.6rem;margin-top:.6rem;flex-wrap:wrap;width:100%}.vi-confirm-btn,.vi-cancel-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;border-radius:10px;border:none;font-size:.84rem;font-weight:700;cursor:pointer;transition:all .2s ease;flex:1;justify-content:center}.vi-confirm-btn{background:var(--accent-primary);color:#fff}.vi-confirm-btn:hover{background:var(--accent-secondary);transform:translateY(-1px)}.vi-cancel-btn{background:#dc262614;color:#b91c1c;border:1px solid rgba(220,38,38,.22)}.vi-cancel-btn:hover{background:#dc262624;transform:translateY(-1px)}.vi-input-bar{display:flex;align-items:center;gap:.5rem;background:var(--vi-surface-bg);border:1px solid #cbd5e1;border-radius:999px;padding:.38rem .38rem .38rem 1.4rem;margin:.8rem 1.2rem .9rem;box-shadow:0 4px 20px #0000000d,0 0 0 1px rgba(var(--accent-rgb),.04);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;flex-shrink:0}.vi-input-bar:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:inherit;background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.08),transparent);opacity:0;animation:inputShimmer 5s ease-in-out infinite;pointer-events:none}@keyframes inputShimmer{0%,to{transform:translate(-60%);opacity:0}50%{transform:translate(60%);opacity:.6}}.vi-input-bar:focus-within{border-color:rgba(var(--accent-rgb),.4);box-shadow:0 6px 24px rgba(var(--accent-rgb),.12),0 0 0 4px rgba(var(--accent-rgb),.06);transform:translateY(-1px)}.vi-text-input{flex:1;background:transparent;border:none;color:#0f172a;font-size:1rem;outline:none;padding:.7rem 0;font-family:inherit;font-weight:500;letter-spacing:-.01em;position:relative;z-index:1}.vi-text-input::placeholder{color:#94a3b8;font-weight:400}.vi-send-btn{width:44px;height:44px;border-radius:50%;border:1px solid rgba(var(--accent-rgb),.4);background:linear-gradient(135deg,#0f766e,#14b8a6);color:#f8fafc;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);flex-shrink:0;box-shadow:0 8px 18px #0f766e61,0 0 0 1px #ffffff61 inset;position:relative;z-index:1}.vi-send-btn:hover:not(:disabled){filter:brightness(1.2) saturate(1.1);transform:scale(1.08) rotate(-5deg)}.vi-send-btn:disabled{background:#e2e8f0;color:#64748b;border-color:#94a3b8;box-shadow:0 2px 8px #0f172a1f;transform:scale(.92);cursor:default}@keyframes fade-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.fade-in{animation:fade-in .4s cubic-bezier(.16,1,.3,1) forwards}@media (prefers-reduced-motion: reduce){.vi-orb,.vi-ripple,.vi-spin-arc,.vi-wave-dots span,.vi-thinking span,.vi-greeting,.vi-quick-card,.fade-in{animation:none!important}.vi-orb.orb-idle,.vi-orb.orb-connecting,.vi-orb.orb-recording,.vi-orb.orb-playing{box-shadow:0 8px 24px rgba(var(--accent-rgb),.3)}}@media (max-width: 1024px){.vi-quick-actions{grid-template-columns:1fr;width:min(360px,90vw)}}@media (max-height: 820px){.vi-stage{padding:1rem 1.25rem .8rem;gap:1rem}.vi-orb-wrap{width:168px;height:168px}.vi-orb{width:138px;height:138px}.vi-orb-label{font-size:.66rem}.vi-quick-actions{grid-template-columns:repeat(3,minmax(108px,1fr));width:min(560px,84vw);gap:.5rem;margin-top:.5rem}.vi-quick-card{height:58px;font-size:.66rem;gap:.22rem}.vi-transcript-strip{max-height:150px}}.app--dark .vi-root{--vi-surface-bg: #0b1220}.app--dark .vi-top-bar{background:#050a1373;border-bottom-color:#47556942}.app--dark .vi-status-text{color:#94a3b8}.app--dark .vi-audio-btn{border-color:#47556980;background:#0f172ad1;color:#cbd5e1}.app--dark .vi-audio-btn:hover:not(:disabled){border-color:#2dd4bf70;color:#5eead4}.app--dark .vi-greeting-title{background:linear-gradient(120deg,#2dd4bf,#5eead4 60%,#f5d38d);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.app--dark .vi-subtle-note{color:#94a3b8c7}.app--dark .vi-quick-card{background:#0a121fc7;border-color:#47556970;color:#cbd5e1}.app--dark .vi-quick-card:hover{color:#5eead4;border-color:#2dd4bf66;box-shadow:0 10px 18px #00000061}.app--dark .vi-orb-label{color:#94a3b8}.app--dark .vi-transcript-strip{background:#0308118c;border-top-color:#4755693d}.app--dark .vi-strip-row--ai .vi-strip-label{background:#1e293bb8;color:#cbd5e1}.app--dark .vi-strip-text{color:#cbd5e1}.app--dark .vi-input-bar{background:#0f172af0;border-color:#64748ba3;box-shadow:0 10px 20px #00000059}.app--dark .vi-input-bar:focus-within{border-color:#2dd4bf6b;box-shadow:0 8px 22px #14b8a638}.app--dark .vi-text-input{color:#e2e8f0}.app--dark .vi-text-input::placeholder{color:#64748b}.app--dark .vi-send-btn{background:linear-gradient(135deg,#22d3ee,#2dd4bf);border-color:#5eead499;color:#042f2e;box-shadow:0 6px 16px #2dd4bf57}.app--dark .vi-send-btn:hover:not(:disabled){filter:brightness(1.08) saturate(1.08)}.app--dark .vi-send-btn:disabled{background:#1e293beb;color:#94a3b8;border-color:#64748bb3;box-shadow:0 2px 10px #00000052}.session-status{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;color:var(--text-primary);line-height:1;max-width:min(100%,320px);min-height:36px;background:#fffcf6bf;border:1px solid rgba(var(--accent-rgb),.1);box-shadow:0 8px 18px #0f172a0d,var(--inner-shadow);padding:.34rem .65rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.session-status.active{border-color:#22c55e52}.session-status.inactive{border-color:#94a3b83d;color:var(--text-secondary)}.session-status.error{border-color:#ef444459;color:#991b1b}.session-id{font-family:var(--font-ui),ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.66rem;color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase}.session-status p{margin:0;display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:700;color:inherit;min-width:0}.session-status button{background:#fff;color:#0f172a;border:1px solid rgba(148,163,184,.32);padding:.32rem .58rem;border-radius:9px;font-size:.72rem;font-weight:700;cursor:pointer;transition:var(--transition-smooth)}.session-status button:hover{transform:translateY(-1px);box-shadow:0 6px 12px #0f172a1f}.session-status.loading p{color:var(--text-secondary)}.session-status .spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(var(--accent-rgb),.2);border-top-color:var(--accent-primary);animation:sessionSpin .8s linear infinite}@keyframes sessionSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.session-status{width:100%;max-width:100%;justify-content:center;border-radius:14px}}.app--dark .session-status{background:#080e19e6;border-color:#47556973;color:#e0dbd0;box-shadow:0 8px 18px #00000047,inset 0 1px 1px #94a3b814}.app--dark .session-status.active{border-color:#c9973b6b}.app--dark .session-status.inactive{border-color:#47556961;color:#94a3b8}.app--dark .session-status p{color:#e0dbd0}.app--dark .session-id{color:#94a3b8}.app--dark .session-status.error{border-color:#f8717173;color:#fecaca}.app--dark .session-status button{background:#0f172ae6;color:#e0dbd0;border-color:#47556980}.oauth-connect{max-width:100%;width:100%;box-sizing:border-box;margin:0 auto;padding:24px;background:var(--glass-bg);backdrop-filter:blur(var(--blur-amount));-webkit-backdrop-filter:blur(var(--blur-amount));border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);color:var(--text-primary);animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.oauth-connect.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:80px;color:var(--text-secondary);font-family:var(--font-display);font-size:.95rem}.oauth-connect.loading:before{content:"";width:34px;height:34px;border-radius:50%;border:3px solid rgba(var(--accent-rgb),.18);border-top-color:var(--accent-primary);animation:oauthSpin .8s linear infinite}@keyframes oauthSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.oauth-connect h2{margin:0 0 32px;color:var(--text-primary);font-size:28px;font-family:var(--font-display);font-weight:700;letter-spacing:-.5px;text-align:center}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#fca5a5;padding:16px;border-radius:var(--radius-md);margin-bottom:24px;font-size:14px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:shake .4s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.connections-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;width:100%;align-items:stretch}.connection-item{min-width:0;height:100%;overflow:hidden;background:var(--bg-surface);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:20px;display:flex;flex-direction:column;gap:20px;justify-content:space-between;transition:var(--transition-smooth)}.connection-item:hover{background:var(--bg-surface-elevated);border-color:var(--glass-glow);transform:translateY(-4px);box-shadow:0 10px 30px #0003}.connection-header{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:16px}.provider-icon{width:56px;height:56px;min-width:56px;min-height:56px;flex:0 0 56px;flex-shrink:0;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid rgba(148,163,184,.26);box-shadow:0 10px 20px #0f172a1f;position:relative;overflow:hidden}.provider-icon:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(160deg,#ffffff3d,#fff0 55%);pointer-events:none}.gmail-icon,.outlook-icon{background:#fff}.provider-logo{width:30px;height:30px;position:relative;z-index:1;flex-shrink:0}.provider-logo-microsoft{border-radius:4px}.provider-info{min-width:0}.provider-info h3{margin:0 0 4px;font-size:16px;color:var(--text-primary);font-family:var(--font-display);word-break:break-word}.connection-status{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500}.connection-status.connected{color:var(--success)}.connection-status.disconnected{color:var(--text-muted)}.status-indicator{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor}.email{color:var(--text-secondary);font-size:13px;margin-top:4px;display:block;word-break:break-all}.connection-actions{display:flex;gap:12px;min-width:0;margin-top:auto}.btn{flex:1;padding:11px 14px;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:600;font-family:var(--font-ui);cursor:pointer;transition:var(--transition-bounce);display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:0 4px 15px var(--accent-glow)}.btn-primary:hover{transform:scale(1.02);filter:brightness(1.1);box-shadow:0 6px 20px var(--accent-glow)}.btn-secondary{background:var(--bg-surface-elevated);color:var(--text-primary);border:1px solid var(--glass-border)}.btn-secondary:hover{background:#ffffff26;border-color:var(--text-secondary)}.help-text{margin-top:32px;padding:20px;background:#ffffff08;border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;line-height:1.6;border:1px dashed var(--glass-border)}@media (max-width: 900px){.oauth-connect{padding:18px}.connections-list{grid-template-columns:1fr}}.auth-form-container{--auth-bg: #fffdf8;--auth-border: rgba(180, 155, 110, .28);--auth-text: #12172e;--auth-subtext: #4a5068;--auth-input-bg: #faf8f3;--auth-primary: #1e2d6b;--auth-primary-strong: #131e52;width:100%;display:flex;justify-content:center;align-items:flex-start;padding:0 1rem}.auth-form-card{width:min(560px,100%);display:flex;flex-direction:column;gap:1.2rem;padding:2.2rem 2rem;border-radius:28px;border:1px solid var(--auth-border);background:radial-gradient(ellipse at 95% 5%,rgba(201,151,59,.08) 0%,transparent 42%),radial-gradient(ellipse at 5% 95%,rgba(30,45,107,.06) 0%,transparent 42%),var(--auth-bg);box-shadow:0 28px 56px #12172e1a,0 2px 8px #12172e0f,0 0 0 1px #c9973b14;animation:cardFadeIn .5s cubic-bezier(.16,1,.3,1)}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.oauth-buttons{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.oauth-button{font-family:var(--font-ui);width:100%;min-height:88px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;border-radius:16px;border:1px solid rgba(180,155,110,.28);background:#fffdf8;color:var(--auth-text);font-size:.83rem;font-weight:600;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease}.oauth-button:hover:not(:disabled){transform:translateY(-2px);background:#fff;border-color:#1e2d6b47;box-shadow:0 12px 28px #12172e1f}.oauth-button:disabled{opacity:.55;cursor:not-allowed}.divider{width:100%;display:flex;align-items:center;gap:.75rem;color:#9096b0;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.divider:before,.divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(180,155,110,.35),transparent)}.error-message{width:100%;display:flex;align-items:center;gap:.6rem;padding:.8rem .95rem;border-radius:12px;border:1px solid rgba(192,57,43,.22);background:#c0392b0f;color:#a0291d;font-size:.88rem}.auth-form{width:100%;display:flex;flex-direction:column;gap:1rem}.form-group{width:100%;display:flex;flex-direction:column;gap:.45rem}.form-group label{color:var(--auth-subtext);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.form-group input{width:100%;box-sizing:border-box;padding:.9rem 1rem;border-radius:12px;border:1px solid rgba(180,155,110,.32);background:var(--auth-input-bg);color:var(--auth-text);font-family:var(--font-ui);font-size:.95rem;transition:border-color .22s ease,box-shadow .22s ease,background .22s ease}.form-group input::placeholder{color:#9096b0}.form-group input:focus{outline:none;border-color:#1e2d6b73;background:#fff;box-shadow:0 0 0 3px #1e2d6b1a}.password-input-wrapper{position:relative;width:100%}.password-input-wrapper input{padding-right:3rem}.password-toggle{position:absolute;top:50%;right:.6rem;transform:translateY(-50%);border:none;background:transparent;color:#9096b0;padding:.35rem;border-radius:8px;cursor:pointer;transition:background-color .2s ease,color .2s ease}.password-toggle:hover{color:var(--auth-text);background:#1e2d6b12}.form-hint{font-size:.75rem;color:#9096b0}.submit-button{width:100%;margin-top:.2rem;padding:.96rem 1rem;border:none;border-radius:14px;background:linear-gradient(135deg,#1e2d6b,#2d45a8);color:#fff;font-family:var(--font-ui);font-size:.95rem;font-weight:700;letter-spacing:.02em;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;box-shadow:0 10px 28px #1e2d6b47,0 2px 6px #1e2d6b29;position:relative;overflow:hidden}.submit-button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 60%);pointer-events:none}.submit-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 36px #1e2d6b52,0 4px 10px #1e2d6b2e;filter:brightness(1.06)}.submit-button:active:not(:disabled){transform:translateY(0);filter:brightness(.98)}.submit-button:disabled{background:#c8c8d4;color:#f0f0f5;box-shadow:none;cursor:not-allowed}.switch-view{margin:.25rem 0 0;text-align:center;font-size:.9rem;color:var(--auth-subtext)}.link-button{border:none;background:none;color:var(--auth-primary);font-weight:700;cursor:pointer;padding:0;font-family:inherit;font-size:inherit}.link-button:hover{color:var(--auth-primary-strong);text-decoration:underline;text-underline-offset:2px}.verification-message{border:1px solid rgba(30,45,107,.2);background:#1e2d6b0d;border-radius:14px;padding:1rem}.verification-message h3{margin:0 0 .25rem;color:var(--auth-primary);font-size:1rem}.verification-message p{margin:0;color:#2d45a8;font-size:.88rem}@media (max-width: 700px){.oauth-buttons{grid-template-columns:1fr}}@media (max-width: 520px){.auth-form-container{padding:0}.auth-form-card{padding:1.4rem 1.2rem;border-radius:20px}}.user-profile-card{width:100%;background:linear-gradient(145deg,#fffffffa,#faf7f0eb);border:1px solid rgba(var(--accent-rgb),.18);border-radius:20px;padding:1.25rem;box-shadow:var(--card-shadow),var(--inner-shadow)}.profile-header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.05rem;align-items:center;padding:.95rem;border:1px solid var(--glass-border);border-radius:16px;background:#fffc}.profile-avatar{width:76px;height:76px;border-radius:20px;background:linear-gradient(130deg,var(--accent-primary),var(--accent-secondary));color:#fff;font-size:1.8rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.7);box-shadow:0 10px 20px rgba(var(--accent-rgb),.25);overflow:hidden}.avatar-img{width:100%;height:100%;object-fit:cover;display:block}.profile-info{min-width:0;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name action" "email action";align-items:center;column-gap:.9rem;row-gap:.28rem}.profile-info>h3{grid-area:name;margin:0;font-size:1.1rem;font-weight:800;color:var(--text-primary);line-height:1.2;letter-spacing:-.01em}.profile-info>p{grid-area:email;margin:0;color:var(--text-secondary);font-size:.86rem;word-break:break-word;max-width:100%}.edit-profile-btn{grid-area:action;align-self:center;border:none;border-radius:999px;background:linear-gradient(120deg,var(--accent-primary),var(--accent-secondary));color:#fff;font-size:.76rem;font-weight:700;letter-spacing:.02em;padding:.52rem .95rem;cursor:pointer;transition:var(--transition-smooth);white-space:nowrap}.edit-profile-btn:hover{transform:translateY(-1px);box-shadow:0 8px 16px rgba(var(--accent-rgb),.22)}.edit-name-form{display:flex;flex-direction:column;gap:.7rem;width:100%;max-width:100%;grid-column:1 / -1}.edit-name-form input{width:100%;max-width:100%;box-sizing:border-box;padding:.62rem .72rem;border:1px solid var(--glass-border);border-radius:10px;background:#fff;color:var(--text-primary);font-size:.9rem;outline:none;transition:var(--transition-smooth)}.edit-name-form input:focus{border-color:rgba(var(--accent-rgb),.44);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.12)}.edit-actions{display:flex;gap:.5rem}.user-profile-card .save-btn,.user-profile-card .cancel-btn{flex:1;border-radius:10px;padding:.46rem .75rem;font-size:.8rem;font-weight:700;cursor:pointer;transition:var(--transition-smooth)}.user-profile-card .save-btn{border:none;background:var(--accent-primary);color:#fff}.user-profile-card .save-btn:hover:not(:disabled){background:var(--accent-secondary)}.user-profile-card .save-btn:disabled{opacity:.6;cursor:not-allowed}.user-profile-card .cancel-btn{border:1px solid var(--glass-border);background:#fff;color:var(--text-secondary)}.user-profile-card .cancel-btn:hover{border-color:#dc26264d;color:#b91c1c}.user-profile-card .profile-message{margin-top:.95rem;border-radius:10px;padding:.62rem .72rem;font-size:.82rem;font-weight:600}.user-profile-card .profile-message.success{background:#16a34a1a;color:#15803d;border:1px solid rgba(22,163,74,.28)}.user-profile-card .profile-message.error{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.26)}@media (max-width: 640px){.profile-header{grid-template-columns:1fr;justify-items:center;text-align:center}.profile-info{grid-template-columns:1fr;grid-template-areas:"name" "email" "action";justify-items:center;row-gap:.45rem}.profile-info>p{text-align:center}.edit-profile-btn{width:100%;justify-content:center}.edit-actions{justify-content:center;width:100%}}.profile-danger-zone{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(var(--accent-rgb),.1);display:flex;flex-direction:column}.delete-account-trigger{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:#ef4444;font-size:.8rem;font-weight:600;cursor:pointer;padding:.5rem;border-radius:8px;width:fit-content;transition:all .2s ease;opacity:.8}.delete-account-trigger:hover{background:#ef444414;opacity:1}.delete-confirmation{background:#ef44440a;border:1px solid rgba(239,68,68,.15);border-radius:12px;padding:1rem}.confirmation-warning{display:flex;align-items:flex-start;gap:.75rem;color:#b91c1c;font-size:.85rem;line-height:1.4;margin-bottom:1rem}.confirmation-warning svg{flex-shrink:0;margin-top:2px}.confirmation-actions{display:flex;gap:.75rem}.confirm-delete-btn{background:#ef4444;color:#fff;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.82rem;font-weight:700;cursor:pointer;flex:1;transition:background .2s ease}.confirm-delete-btn:hover:not(:disabled){background:#dc2626}.cancel-delete-btn{background:#fff;color:#6b7280;border:1px solid #e5e7eb;border-radius:8px;padding:.5rem 1rem;font-size:.82rem;font-weight:600;cursor:pointer;flex:1;transition:all .2s ease}.cancel-delete-btn:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;color:#374151}.confirm-delete-btn:disabled,.cancel-delete-btn:disabled{opacity:.6;cursor:not-allowed}.invoice-profile-card{width:100%;max-width:100%;box-sizing:border-box;background:linear-gradient(140deg,#fffffff0,#f8f5eee0);-webkit-backdrop-filter:blur(var(--blur-amount));backdrop-filter:blur(var(--blur-amount));border-radius:var(--radius-lg);padding:2rem;border:1px solid var(--glass-border);box-shadow:var(--card-shadow),var(--inner-shadow)}.profile-header-section h3{margin:0 0 .5rem;font-family:var(--font-display);font-size:1.5rem;color:var(--text-primary);font-weight:700}.profile-loading{display:flex;align-items:center;justify-content:center;gap:.65rem;text-align:center;padding:2rem;color:var(--text-secondary);font-weight:600;font-size:.9rem}.profile-loading:before{content:"";width:18px;height:18px;border-radius:50%;border:2px solid rgba(var(--accent-rgb),.2);border-top-color:var(--accent-primary);animation:invoiceSpin .75s linear infinite}@keyframes invoiceSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.invoice-profile-form{display:flex;flex-direction:column;gap:2rem}.form-section{display:flex;flex-direction:column;gap:1rem}.form-section h4{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary);font-weight:600;border-bottom:1px solid var(--glass-border);padding-bottom:.5rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:500;color:var(--text-primary)}.form-group input{width:100%;box-sizing:border-box;padding:.75rem;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--bg-surface-elevated);color:var(--text-primary);font-size:.95rem;transition:var(--transition-smooth)}.form-group input:focus{outline:none;border-color:rgba(var(--accent-rgb),.45);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.12)}.form-group small{font-size:.8rem;color:var(--text-muted);margin-top:-.25rem}.form-actions{display:flex;gap:1rem;margin-top:1rem}.save-btn,.cancel-btn,.edit-btn,.delete-btn,.create-btn{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;cursor:pointer;transition:var(--transition-smooth)}.save-btn,.edit-btn,.create-btn{background:linear-gradient(125deg,var(--accent-primary),var(--accent-secondary));color:#fff}.save-btn:hover,.edit-btn:hover,.create-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--accent-rgb),.3)}.cancel-btn{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--glass-border)}.cancel-btn:hover{background:var(--bg-surface-elevated);border-color:rgba(var(--accent-rgb),.35)}.delete-btn{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.3)}.delete-btn:hover{background:#ef44442e;border-color:#dc2626}.profile-view{display:flex;flex-direction:column;gap:1.5rem}.profile-info-section{background:var(--bg-surface);padding:1.5rem;border-radius:var(--radius-md);border:1px solid var(--glass-border);box-shadow:var(--inner-shadow)}.profile-info-section h4{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary);font-weight:600;border-bottom:1px solid var(--glass-border);padding-bottom:.5rem}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{font-size:.85rem;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:1rem;color:var(--text-primary);font-weight:500}.profile-actions{display:flex;gap:1rem;margin-top:1rem}.empty-profile{text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.empty-profile p{margin:.5rem 0}.empty-hint{font-size:.9rem;color:var(--text-muted);margin-bottom:1.5rem!important}@media (max-width: 600px){.form-grid,.info-grid{grid-template-columns:1fr}.form-actions,.profile-actions{flex-direction:column}}.proposal-profile-card{width:100%;max-width:100%;box-sizing:border-box;background:linear-gradient(140deg,#fffffff0,#f8f5eee0);-webkit-backdrop-filter:blur(var(--blur-amount));backdrop-filter:blur(var(--blur-amount));border-radius:var(--radius-lg);padding:2rem;border:1px solid var(--glass-border);box-shadow:var(--card-shadow),var(--inner-shadow)}.profile-header-section{margin-bottom:2rem}.profile-header-section h3{margin:0 0 .5rem;font-size:1.5rem;color:var(--text-primary);font-weight:700}.profile-description{color:var(--text-secondary);font-size:.9rem;margin:0;line-height:1.5}.profile-message{padding:1rem;border-radius:var(--radius-md);margin-bottom:1.5rem;font-size:.9rem}.profile-message.success{background:#16a34a1a;border:1px solid rgba(22,163,74,.28);color:#15803d}.profile-message.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#dc2626}.profile-loading{color:var(--text-secondary);font-size:.9rem;padding:1rem 0}.proposal-section{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--glass-border)}.proposal-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.proposal-section-title{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin:0 0 .35rem}.proposal-section-desc{font-size:.875rem;color:var(--text-secondary);margin:0 0 1.25rem;line-height:1.5}.logo-upload-area{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.logo-preview-box{position:relative;width:100px;height:80px;border:2px solid var(--glass-border);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fafafa;flex-shrink:0}.logo-preview-img{max-width:100%;max-height:100%;object-fit:contain}.logo-preview-label{position:absolute;bottom:0;left:0;right:0;background:#00000080;color:#fff;font-size:.65rem;text-align:center;padding:2px 0}.logo-preview-label.saved{background:#16a34ab3}.logo-placeholder{width:100px;height:80px;border:2px dashed var(--glass-border);border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-secondary);font-size:.75rem;gap:4px;flex-shrink:0}.logo-placeholder-icon{font-size:1.4rem}.logo-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.template-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:1rem}.template-status-badge{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background:#16a34a14;border:1px solid rgba(22,163,74,.25);border-radius:var(--radius-md);margin-bottom:1rem}.badge-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px}.badge-text{display:flex;flex-direction:column;gap:2px}.badge-text strong{font-size:.875rem;color:var(--text-primary)}.badge-subtitle{font-size:.8rem;color:#15803d}.template-parsing-note{font-size:.85rem;color:var(--text-secondary);margin:.75rem 0 0;font-style:italic}.sections-details{margin-bottom:1rem}.sections-details summary{cursor:pointer;font-size:.875rem;color:var(--text-secondary);-webkit-user-select:none;user-select:none;padding:.4rem 0}.sections-details summary:hover{color:var(--text-primary)}.sections-list{margin:.75rem 0 0;padding-left:1.25rem;display:flex;flex-direction:column;gap:.75rem}.section-item{font-size:.875rem}.section-item strong{color:var(--text-primary);margin-right:.5rem}.section-format-badge{display:inline-block;background:#1e2d6b1a;color:var(--accent-primary);border-radius:4px;padding:1px 6px;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.section-desc{margin:3px 0 0;color:var(--text-secondary);font-size:.8rem;line-height:1.4}.btn-primary-small{padding:.45rem 1rem;border-radius:var(--radius-md);background:var(--accent-primary, #4f46e5);color:#fff;border:none;font-size:.875rem;font-weight:500;cursor:pointer;transition:opacity .15s,transform .1s}.btn-primary-small:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-primary-small:disabled{opacity:.6;cursor:not-allowed}.btn-secondary-small{padding:.45rem 1rem;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);border:1px solid var(--glass-border);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.btn-secondary-small:hover{background:#0000000a;border-color:var(--text-secondary)}.contact-db-card{width:100%;max-width:100%;box-sizing:border-box;background:linear-gradient(140deg,#fffffff0,#f8f5eee0);-webkit-backdrop-filter:blur(var(--blur-amount));backdrop-filter:blur(var(--blur-amount));border-radius:var(--radius-lg);padding:2rem;border:1px solid var(--glass-border);box-shadow:var(--card-shadow),var(--inner-shadow)}.contact-db-header{margin-bottom:1.5rem}.contact-db-header h3{margin:0 0 .4rem;font-size:1.25rem;color:var(--text-primary);font-weight:700}.contact-db-description{color:var(--text-secondary);font-size:.875rem;margin:0;line-height:1.5}.contact-db-message{padding:.75rem 1rem;border-radius:var(--radius-md);margin-bottom:1.25rem;font-size:.875rem}.contact-db-message.success{background:#16a34a1a;border:1px solid rgba(22,163,74,.28);color:#15803d}.contact-db-message.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#dc2626}.contact-db-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem}.contact-db-actions label{display:inline-block}.file-input-hidden{display:none}.btn-download{padding:.45rem 1rem;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);border:1px solid var(--glass-border);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap}.btn-download:hover:not(:disabled){background:#0000000a;border-color:var(--text-secondary)}.btn-upload{padding:.45rem 1rem;border-radius:var(--radius-md);background:var(--accent-primary, #4f46e5);color:#fff;border:none;font-size:.875rem;font-weight:500;cursor:pointer;transition:opacity .15s,transform .1s;white-space:nowrap}.btn-upload:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-upload:disabled{opacity:.6;cursor:not-allowed}.contact-count-badge{display:inline-flex;align-items:center;gap:.4rem;background:#1e2d6b1a;border:1px solid rgba(30,45,107,.18);color:var(--accent-primary);border-radius:20px;padding:.25rem .75rem;font-size:.8rem;font-weight:500}.contact-db-loading{color:var(--text-secondary);font-size:.875rem;padding:1rem 0}.contact-db-empty{text-align:center;padding:2rem 1rem;color:var(--text-secondary);font-size:.875rem;border:1px dashed var(--glass-border);border-radius:var(--radius-md)}.contact-db-empty p{margin:.35rem 0}.contact-db-empty .hint{font-size:.8rem;opacity:.75}.contact-table-wrapper{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--glass-border)}.contact-table{width:100%;border-collapse:collapse;font-size:.85rem}.contact-table thead{background:#0000000a}.contact-table th{padding:.6rem .85rem;text-align:left;font-weight:600;color:var(--text-primary);font-size:.8rem;text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--glass-border);white-space:nowrap}.contact-table td{padding:.6rem .85rem;color:var(--text-primary);border-bottom:1px solid rgba(0,0,0,.04);vertical-align:middle}.contact-table tbody tr:last-child td{border-bottom:none}.contact-table tbody tr:hover{background:#00000005}.btn-delete-row{padding:.25rem .6rem;border-radius:var(--radius-sm, 6px);background:transparent;color:#dc2626;border:1px solid rgba(239,68,68,.3);font-size:.78rem;cursor:pointer;transition:background .15s;white-space:nowrap}.btn-delete-row:hover{background:#ef444414}.calendar-view{padding:.2rem;width:100%;margin:0;color:var(--text-primary);display:flex;flex-direction:column;gap:1rem}.loading-container,.error-container{min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;background:#fffcf6cc;border:1px dashed rgba(var(--accent-rgb),.28);border-radius:14px}.empty-container{min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;text-align:center;background:#fff;border:1px dashed rgba(var(--accent-rgb),.22);border-radius:14px;padding:1.5rem}.loading-container p,.error-container p,.empty-container p{margin:0;font-size:.9rem;color:var(--text-secondary);max-width:40ch}.empty-container h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-primary)}.btn-connect-calendar{border:1px solid rgba(var(--accent-rgb),.28);background:#fff;color:var(--accent-primary);border-radius:10px;padding:.6rem .95rem;font-size:.84rem;font-weight:700;cursor:pointer;transition:var(--transition-smooth)}.btn-connect-calendar:hover{border-color:rgba(var(--accent-rgb),.42);background:rgba(var(--accent-rgb),.04)}.empty-icon{width:52px;height:52px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:rgba(var(--accent-rgb),.1);color:var(--accent-primary)}.loader{width:34px;height:34px;border-radius:50%;border:3px solid rgba(var(--accent-rgb),.16);border-top-color:var(--accent-primary);animation:calendarSpin .8s linear infinite}@keyframes calendarSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.calendar-header-glass{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.75rem .9rem;background:#fffdf8;border:1px solid rgba(148,163,184,.24);border-radius:14px}.title-section{display:flex;align-items:center;gap:.7rem}.calendar-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:rgba(var(--accent-rgb),.12);color:var(--accent-primary)}.calendar-title-block h2{margin:0;font-size:1.1rem;font-weight:700}.calendar-title-block p{margin:.1rem 0 0;font-size:.78rem;color:var(--text-secondary)}.calendar-controls-glass{display:flex;gap:6px;background:#f0ece4;padding:4px;border-radius:10px;border:1px solid rgba(148,163,184,.26)}.ctrl-btn{background:transparent;border:1px solid transparent;color:var(--text-primary);padding:6px 10px;border-radius:8px;cursor:pointer;transition:var(--transition-smooth);display:inline-flex;align-items:center;justify-content:center}.ctrl-btn:hover{background:#fffdf8;border-color:rgba(var(--accent-rgb),.34);color:var(--accent-primary)}.today-btn{background:var(--accent-primary);color:#fff;border-color:rgba(var(--accent-rgb),.38);font-weight:700}.today-btn:hover{background:var(--accent-secondary);color:#fff}.calendar-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:1rem}.calendar-grid-panel,.agenda-panel{background:#fffdf8;border:1px solid rgba(148,163,184,.2);border-radius:14px}.calendar-grid-panel{padding:.7rem}.week-header-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:.4rem}.weekday-cell{text-align:center;font-size:.74rem;font-weight:700;text-transform:uppercase;color:#64748b;letter-spacing:.06em;padding:.45rem 0}.days-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.day-cell{border:1px solid #e5e7eb;border-radius:8px;background:#fffdf8;padding:.35rem .38rem;text-align:left;display:flex;flex-direction:column;gap:.25rem;cursor:pointer;transition:var(--transition-smooth)}.day-cell:hover{border-color:#c8c2b4;box-shadow:none}.day-cell.outside-month{background:#f0ece4}.day-cell.is-selected{border-color:#8c9fd4;box-shadow:0 0 0 1px #bfdbfe}.day-cell.is-today .day-number{background:var(--accent-primary);color:#fff}.day-number{width:24px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:var(--text-primary)}.day-events-preview{display:flex;flex-direction:column;gap:3px;min-width:0}.event-chip,.more-chip{font-size:.67rem;line-height:1.2;border-radius:5px;padding:2px 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-chip{background:#e8e5f7;color:#1e2d6b}.more-chip{background:#f0ece4;color:#475569}.agenda-panel{padding:.8rem;display:flex;flex-direction:column;gap:.7rem}.agenda-header{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;border-bottom:1px solid #e5e7eb;padding-bottom:.55rem}.agenda-header h3{margin:0;font-size:.95rem}.agenda-header span{font-size:.76rem;color:var(--text-secondary)}.agenda-empty{font-size:.85rem;color:var(--text-secondary);padding:.6rem 0}.agenda-events{display:flex;flex-direction:column;gap:.55rem;max-height:460px;overflow-y:auto}.agenda-event{background:#fffdf8;border:1px solid #e5e7eb;border-radius:10px;padding:.6rem}.agenda-event.cancelled{opacity:.65}.agenda-time{margin:0;font-size:.74rem;color:var(--text-secondary);font-weight:700}.agenda-event h4{margin:.22rem 0;font-size:.9rem}.agenda-meta{margin:0;font-size:.78rem;color:var(--text-secondary)}@media (max-width: 1080px){.calendar-layout{grid-template-columns:1fr}.agenda-events{max-height:240px}}@media (max-width: 768px){.calendar-header-glass{flex-direction:column;align-items:flex-start}.day-cell{min-height:84px;padding:.28rem}.event-chip,.more-chip{font-size:.62rem}}.event-create-form{background:linear-gradient(140deg,#fffffff5,#f8f5eee6);padding:30px;border-radius:16px;border:1px solid var(--glass-border);box-shadow:var(--card-shadow),var(--inner-shadow);max-width:600px;margin:0 auto}.event-create-form h2{margin:0 0 24px;font-family:var(--font-display);color:var(--text-primary);font-size:1.5rem}.error-message{background:#fef2f2;color:#b91c1c;padding:12px 16px;border-radius:10px;margin-bottom:20px;font-size:14px;border:1px solid #fecaca}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--text-secondary);font-weight:600;font-size:14px}.form-group input[type=text],.form-group input[type=email],.form-group input[type=datetime-local],.form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--glass-border);border-radius:10px;font-size:14px;font-family:inherit;color:var(--text-primary);background:#ffffffe6;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.12)}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-group input[type=checkbox]{margin-right:8px}.attendee-input{display:flex;gap:10px}.attendee-input input{flex:1}.attendees-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.attendee-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(var(--accent-rgb),.12);color:var(--accent-primary);padding:6px 12px;border-radius:16px;font-size:14px}.attendee-tag .remove-btn{background:none;border:none;color:var(--accent-primary);cursor:pointer;font-size:18px;line-height:1;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.attendee-tag .remove-btn:hover{background:rgba(var(--accent-rgb),.18)}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:30px;padding-top:20px;border-top:1px solid var(--glass-border)}.btn{padding:10px 24px;border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(125deg,var(--accent-primary),var(--accent-secondary));color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px rgba(var(--accent-rgb),.24)}.btn-secondary{background:#f5f1eae6;color:var(--text-secondary);border:1px solid var(--glass-border)}.btn-secondary:hover:not(:disabled){background:#fff;color:var(--text-primary)}@media (max-width: 768px){.event-create-form{padding:20px}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.btn{width:100%}}.provider-selector{display:flex;align-items:flex-end;justify-content:space-between;gap:.9rem;padding:.75rem .9rem;background:#fffcf6e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;border:1px solid var(--glass-border);margin-bottom:.8rem}.provider-selector-heading{display:flex;flex-direction:column;gap:2px}.provider-selector-heading label{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary)}.provider-selector-heading span{font-size:.76rem;color:var(--text-muted)}.provider-buttons{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.provider-buttons.segmented{gap:.3rem;padding:3px;border:1px solid rgba(148,163,184,.28);border-radius:12px;background:#faf8f3e6}.provider-btn{padding:7px 12px;background:transparent;border:1px solid transparent;border-radius:10px;color:var(--text-secondary);font-weight:600;font-size:.82rem;cursor:pointer;transition:var(--transition-smooth);display:flex;align-items:center;gap:7px;white-space:nowrap}.provider-btn:hover{background:#fff;color:var(--text-primary);border-color:#94a3b852}.provider-btn.active{background:#fff;color:var(--text-primary);border-color:rgba(var(--accent-rgb),.48);box-shadow:0 2px 8px #0f172a14}.provider-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:8px;background:#fff;border:1px solid rgba(148,163,184,.22);box-shadow:0 4px 10px #0f172a14}.provider-btn .provider-icon{width:28px;height:28px}.provider-icon.badge-icon{width:32px;height:32px}.provider-mark{display:inline-flex;align-items:center;justify-content:center}.google-calendar-mark{width:18px;height:18px}.microsoft-mark{display:grid;grid-template-columns:repeat(2,6px);grid-template-rows:repeat(2,6px);gap:2px}.ms-tile{width:6px;height:6px;border-radius:1px}.tile-red{background:#f25022}.tile-green{background:#7fba00}.tile-blue{background:#00a4ef}.tile-yellow{background:#ffb900}.provider-selector.loading,.provider-selector.no-connections{align-items:center;padding:.75rem .9rem}.provider-selector.single-provider{align-items:center}.provider-badge{display:inline-flex;align-items:center;gap:6px;padding:0;font-size:.83rem;font-weight:600;color:var(--text-primary)}.provider-selector.no-connections p{margin:0;display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-secondary)}.provider-connect-btn{border:1px solid rgba(var(--accent-rgb),.28);background:#fff;color:var(--accent-primary);border-radius:10px;padding:.5rem .8rem;font-size:.8rem;font-weight:700;cursor:pointer;transition:var(--transition-smooth)}.provider-connect-btn:hover{border-color:rgba(var(--accent-rgb),.42);background:rgba(var(--accent-rgb),.04)}@media (max-width: 768px){.provider-selector{flex-direction:column;align-items:flex-start}.provider-buttons{width:100%;justify-content:flex-start}}.reminder-manager{display:flex;flex-direction:column;gap:1rem;padding:1rem}.manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.manager-header h3{display:flex;align-items:center;gap:.5rem;margin:0;color:var(--text-primary)}.reminder-list{display:flex;flex-direction:column;gap:.75rem;max-height:400px;overflow-y:auto}.reminder-card{background:var(--bg-surface);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:1rem;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease;box-shadow:var(--inner-shadow)}.reminder-card:hover{background:var(--bg-surface-elevated);border-color:rgba(var(--accent-rgb),.3)}.reminder-card.notified{opacity:.7;border-left:3px solid var(--text-secondary)}.reminder-card.pending{border-left:3px solid var(--accent-primary)}.reminder-info{display:flex;flex-direction:column;gap:.25rem}.reminder-msg{margin:0;font-weight:500;color:var(--text-primary)}.reminder-meta{display:flex;gap:1rem;font-size:.75rem;color:var(--text-secondary);align-items:center}.recurring-badge{display:flex;align-items:center;gap:4px;background:rgba(var(--accent-rgb),.14);color:var(--accent-primary);padding:2px 6px;border-radius:10px}.delete-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.delete-btn:hover{color:#ef4444;background:#ef44441a}.icon-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px}.icon-btn:hover{color:var(--text-primary);background:#94a3b81f}.no-data{text-align:center;color:var(--text-secondary);padding:2rem;background:#ffffff8c;border-radius:var(--radius-md);border:1px dashed var(--glass-border)}.loading-spinner{display:inline-flex;align-items:center;gap:.6rem;width:fit-content;padding:.55rem .8rem;border-radius:999px;background:#ffffffd1;border:1px solid rgba(var(--accent-rgb),.24);color:var(--accent-primary);font-size:.84rem;font-weight:700}.loading-spinner:before{content:"";width:16px;height:16px;border-radius:50%;border:2px solid rgba(var(--accent-rgb),.2);border-top-color:var(--accent-primary);animation:remindersSpin .75s linear infinite}@keyframes remindersSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pdf-panel{--pdf-panel-width: clamp(460px, 36vw, 560px);--pdf-surface-bg: #ffffff;display:flex;flex-direction:column;height:100%;background:var(--pdf-surface-bg);border-left:1px solid rgba(var(--accent-rgb),.18);transition:width .35s cubic-bezier(.4,0,.2,1);overflow:hidden;flex-shrink:0;position:relative}.pdf-panel--expanded{width:var(--pdf-panel-width);max-width:44vw}.pdf-panel--collapsed{width:40px;cursor:pointer;align-items:center;justify-content:flex-start;padding-top:.75rem;gap:.5rem;border-left-width:2px}.pdf-panel--collapsed:hover{background:var(--pdf-surface-bg)}.panel-invoice{border-left-color:#c9973b59}.panel-quotation{border-left-color:rgba(var(--accent-rgb),.3)}.panel-proposal{border-left-color:#7c3aed4d}.pdf-panel-tab-label{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);white-space:nowrap;padding:.5rem 0;flex:1;display:flex;align-items:center}.pdf-panel-header{display:flex;align-items:center;gap:.5rem;padding:.65rem .75rem;border-bottom:1px solid rgba(148,163,184,.18);background:var(--pdf-surface-bg);flex-shrink:0}.pdf-panel-title{flex:1;display:flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-panel-btns{display:flex;align-items:center;gap:.3rem;flex-shrink:0}.pdf-icon-btn,.pdf-collapse-toggle{width:30px;height:30px;border-radius:8px;border:1px solid rgba(148,163,184,.25);background:#fff;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0}.pdf-icon-btn:hover,.pdf-collapse-toggle:hover{border-color:rgba(var(--accent-rgb),.35);color:var(--accent-primary);background:rgba(var(--accent-rgb),.04)}.pdf-dl-btn:hover{color:var(--accent-primary);border-color:#1e2d6b59}.pdf-mail-btn.active{background:rgba(var(--accent-rgb),.08);color:var(--accent-primary);border-color:rgba(var(--accent-rgb),.35)}.pdf-close-btn:hover{color:#dc2626;border-color:#dc262659}.pdf-auto-email-note{padding:.45rem .75rem;font-size:.75rem;color:#047857;background:#c9973b12;border-bottom:1px solid rgba(201,151,59,.14);flex-shrink:0}.pdf-email-row{display:flex;gap:.5rem;padding:.6rem .75rem;background:var(--pdf-surface-bg);border-bottom:1px solid rgba(148,163,184,.18);flex-shrink:0}.pdf-email-input{flex:1;padding:.5rem .75rem;border:1px solid #c8c2b4;border-radius:8px;font-size:.85rem;outline:none;transition:border-color .2s;font-family:inherit}.pdf-email-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.1)}.pdf-email-send-btn{padding:.5rem 1rem;background:var(--accent-primary);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:700;cursor:pointer;transition:background .2s ease;white-space:nowrap}.pdf-email-send-btn:hover:not(:disabled){background:var(--accent-secondary)}.pdf-email-send-btn:disabled{opacity:.5;cursor:default}.pdf-email-status{padding:.4rem .75rem;font-size:.78rem;font-weight:600;color:#374151;background:#f9fafbf2;border-bottom:1px solid rgba(148,163,184,.18);flex-shrink:0}.pdf-viewer-area{flex:1;overflow:hidden;position:relative;background:var(--pdf-surface-bg)}.pdf-iframe{width:100%;height:100%;border:none;display:block}.pdf-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--text-secondary);font-size:.85rem;font-weight:600}.pdf-spinner{width:36px;height:36px;border:3px solid rgba(var(--accent-rgb),.15);border-top-color:var(--accent-primary);border-radius:50%;animation:pdfSpin .8s linear infinite}@keyframes pdfSpin{to{transform:rotate(360deg)}}.pdf-error{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center;color:#64748b;font-size:.85rem}.pdf-error p{margin:0}@media (max-width: 768px){.pdf-panel--expanded{position:fixed;bottom:60px;left:0;right:0;width:100%!important;height:60vh;border-left:none;border-top:2px solid rgba(var(--accent-rgb),.2);z-index:500;box-shadow:0 -8px 32px #0000001f}.pdf-panel--collapsed{position:fixed;bottom:60px;left:0;right:0;width:100%!important;height:40px;writing-mode:horizontal-tb;flex-direction:row;padding:0 1rem;border-top:2px solid rgba(var(--accent-rgb),.2);z-index:500}.pdf-panel-tab-label{writing-mode:horizontal-tb;transform:none;font-size:.78rem}}@media (max-width: 1280px){.pdf-panel{--pdf-panel-width: clamp(420px, 34vw, 500px)}}.app--dark .pdf-panel{--pdf-surface-bg: #0b1220;background:#070c16f5;border-left-color:#c9973b33}.app--dark .pdf-panel-header{background:#0f172ac2;border-bottom-color:#4755694d}.app--dark .pdf-panel-title{color:#e0dbd0}.app--dark .pdf-icon-btn,.app--dark .pdf-collapse-toggle{background:#0f172adb;border-color:#47556970;color:#c8c2b4}.app--dark .pdf-icon-btn:hover,.app--dark .pdf-collapse-toggle:hover{border-color:#c9973b6b;color:#8c9fd4;background:#c9973b1f}.app--dark .pdf-email-row{background:#0f172ab3;border-bottom-color:#4755694d}.app--dark .pdf-email-input{background:#020617b8;border-color:#47556973;color:#e0dbd0}.app--dark .pdf-email-input::placeholder{color:#64748b}.app--dark .pdf-email-status{background:#020617c2;color:#c8c2b4;border-bottom-color:#47556947}.app--dark .pdf-viewer-area{background:#0b1220}.app--dark .pdf-error{color:#94a3b8}.onboarding-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;background:#12172e80;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:obFadeIn .3s ease}@keyframes obFadeIn{0%{opacity:0}to{opacity:1}}.onboarding-modal{position:relative;width:100%;max-width:480px;max-height:min(88vh,760px);background:#fffffffa;border:1px solid rgba(var(--accent-rgb),.18);border-radius:24px;padding:2.4rem 2rem 2rem;overflow-y:auto;box-shadow:0 24px 64px #12172e29,0 0 0 1px #fff9 inset;animation:obSlideUp .35s cubic-bezier(.16,1,.3,1)}.onboarding-modal::-webkit-scrollbar{width:6px}.onboarding-modal::-webkit-scrollbar-thumb{background:#94a3b873;border-radius:8px}@keyframes obSlideUp{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.onboarding-dismiss{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:50%;border:1px solid rgba(148,163,184,.3);background:#f5f1e9;color:#94a3b8;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.onboarding-dismiss:hover{background:#fee2e2;border-color:#dc26264d;color:#dc2626}.onboarding-dots{display:flex;justify-content:center;gap:.45rem;margin-bottom:1.8rem}.onboarding-dot{width:8px;height:8px;border-radius:50%;background:#e0dbd0;transition:all .3s ease}.onboarding-dot.active{background:var(--accent-primary);transform:scale(1.3)}.onboarding-dot.done{background:var(--accent-secondary)}.onboarding-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.9rem;min-height:260px}.onboarding-icon-wrap{width:68px;height:68px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:.25rem;flex-shrink:0}.onboarding-icon-teal{background:rgba(var(--accent-rgb),.12);color:var(--accent-primary)}.onboarding-icon-blue{background:#3b82f61f;color:#2563eb}.onboarding-icon-gold{background:#b68a4524;color:var(--premium-gold)}.onboarding-icon-purple{background:#7c3aed1f;color:#7c3aed}.onboarding-icon-green{background:#10b98124;color:#059669}.onboarding-title{font-family:var(--font-display);font-size:1.3rem;font-weight:800;color:var(--text-primary);margin:0;letter-spacing:-.3px}.onboarding-body{font-size:.92rem;color:var(--text-secondary);line-height:1.65;margin:0;max-width:380px}.onboarding-skip-hint{font-size:.8rem;color:#94a3b8;margin:0}.onboarding-oauth-wrap{width:100%;max-width:360px;background:#f5f1e9;border:1px solid rgba(148,163,184,.22);border-radius:14px;padding:.5rem}.onboarding-upload-area{display:flex;gap:.75rem;align-items:center;justify-content:center;flex-wrap:wrap}.onboarding-template-btn{padding:.55rem 1.1rem;border:1px solid rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.06);color:var(--accent-primary);border-radius:10px;font-size:.84rem;font-weight:600;cursor:pointer;transition:all .2s ease}.onboarding-template-btn:hover{background:rgba(var(--accent-rgb),.12)}.onboarding-upload-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;background:var(--accent-primary);color:#fff;border-radius:10px;font-size:.84rem;font-weight:700;cursor:pointer;transition:background .2s ease}.onboarding-upload-btn:hover{background:var(--accent-secondary)}.onboarding-upload-btn.uploading{opacity:.7;cursor:wait}.onboarding-msg{font-size:.82rem;font-weight:600;margin:0}.onboarding-msg.success{color:#059669}.onboarding-msg.error{color:#dc2626}.onboarding-nav{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:1.2rem;border-top:1px solid rgba(148,163,184,.18)}.onboarding-back-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.6rem 1rem;border:1px solid rgba(148,163,184,.3);background:#f5f1e9;color:var(--text-secondary);border-radius:10px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.onboarding-back-btn:hover{background:#f0ece4;color:var(--text-primary)}.onboarding-next-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.65rem 1.5rem;background:linear-gradient(120deg,var(--accent-primary),var(--accent-secondary));color:#fff;border:none;border-radius:10px;font-size:.88rem;font-weight:700;cursor:pointer;box-shadow:0 6px 16px rgba(var(--accent-rgb),.28);transition:all .2s ease}.onboarding-next-btn:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 8px 20px rgba(var(--accent-rgb),.35)}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fade-in .3s ease forwards}.insights-rail-shell{--insights-surface-bg: #ffffff;height:100%;display:flex;flex-direction:column;gap:.85rem;padding:.9rem;background:var(--insights-surface-bg);border-right:1px solid rgba(var(--accent-rgb),.24);box-shadow:inset -1px 0 rgba(var(--accent-rgb),.12);overflow-y:auto}.insights-top-row{display:flex;align-items:center;justify-content:space-between}.insights-collapse-btn{width:28px;height:28px;border:1px solid rgba(148,163,184,.28);border-radius:8px;background:#ffffffd9;color:#475569;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.insights-collapse-btn:hover{border-color:rgba(var(--accent-rgb),.38);color:var(--accent-primary)}.insights-rail-shell--collapsed{align-items:center;justify-content:flex-start;gap:.65rem;padding:.8rem .45rem;overflow:hidden}.insights-collapsed-label{writing-mode:vertical-rl;transform:rotate(180deg);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:700}.insights-card{position:relative;overflow:hidden;background:var(--insights-surface-bg);border:1px solid rgba(148,163,184,.22);border-radius:18px;padding:.95rem;box-shadow:0 12px 28px #12172e12,inset 0 1px #ffffffc7;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.insights-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;pointer-events:none}.insights-card:hover{transform:translateY(-2px);border-color:rgba(var(--accent-rgb),.2);box-shadow:0 16px 32px #12172e1a,0 0 0 1px rgba(var(--accent-rgb),.04)}.insights-label{font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;margin-bottom:.4rem}.insights-title{font-size:.86rem;font-weight:700;color:var(--text-primary);line-height:1.35;letter-spacing:-.02em}.insights-subtitle{margin-top:.25rem;font-size:.76rem;color:#64748b}.insights-pill-row{margin-top:.55rem}.insights-list{padding-bottom:.72rem;background:var(--insights-surface-bg)}.insights-list .insights-label{margin-bottom:.55rem}.insights-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.28rem .58rem;border-radius:999px;background:linear-gradient(135deg,rgba(var(--accent-rgb),.14),rgba(var(--gold-rgb),.14));border:1px solid rgba(var(--accent-rgb),.1);color:var(--accent-primary);font-size:.68rem;font-weight:700}.insights-link-btn{margin-top:.55rem;border:none;background:transparent;color:var(--accent-primary);font-size:.75rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:.25rem;padding:0;transition:gap .18s ease,color .18s ease}.insights-link-btn:hover{gap:.4rem;color:var(--accent-secondary)}.insights-items{display:flex;flex-direction:column;gap:.62rem;max-height:290px;overflow-y:auto;padding:.25rem .18rem .2rem;border-radius:14px;background:#ffffff85;border:1px solid rgba(var(--accent-rgb),.08);box-shadow:inset 0 1px #ffffffb8}.insights-item{display:flex;gap:.65rem;padding:.7rem;border-radius:14px;background:#ffffffc7;border:1px solid rgba(148,163,184,.14);box-shadow:0 8px 16px #12172e0d;transition:background .18s ease,transform .18s ease,border-color .18s ease,box-shadow .18s ease}.insights-item:hover{background:#fffffff0;border-color:rgba(var(--accent-rgb),.16);box-shadow:0 12px 20px #12172e14;transform:translateY(-1px)}.insights-item-icon{width:28px;height:28px;flex-shrink:0;border-radius:10px;background:linear-gradient(135deg,rgba(var(--accent-rgb),.12),rgba(var(--gold-rgb),.12));border:1px solid rgba(var(--accent-rgb),.08);color:var(--accent-primary);display:inline-flex;align-items:center;justify-content:center;box-shadow:inset 0 1px #ffffffb8}.insights-item-body{min-width:0;flex:1}.insights-item-title{font-size:.8rem;font-weight:700;color:var(--text-primary);line-height:1.35}.insights-item-subtitle{font-size:.73rem;color:#64748b;line-height:1.4;margin-top:.12rem;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.insights-item-link{margin-top:.34rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--accent-primary)}.insights-rail-shell.compact{border-right:none;background:transparent;padding:.6rem .9rem .4rem;flex-direction:row;overflow-x:auto;overflow-y:hidden}.insights-rail-shell.compact .insights-card{min-width:240px}.app--dark .insights-rail-shell{--insights-surface-bg: #0b1220;background:linear-gradient(180deg,#080d18fa,#060a13f5);border-right-color:#c9973b38;box-shadow:inset -1px 0 #c9973b14}.app--dark .insights-card{background:linear-gradient(180deg,#0a0d1cdb,#0e1324d1);border-color:#47556961;box-shadow:0 16px 28px #00000047,inset 0 1px #ffffff0d}.app--dark .insights-card:hover{border-color:#c9973b3d;box-shadow:0 18px 32px #0000005c,0 0 0 1px #c9973b0f}.app--dark .insights-label{color:#64748b}.app--dark .insights-title{color:#e0dbd0}.app--dark .insights-subtitle,.app--dark .insights-item-subtitle{color:#94a3b8}.app--dark .insights-item-title{color:#e0dbd0}.app--dark .insights-item-icon{background:linear-gradient(135deg,#1e293beb,#c9973b1f);border-color:#c9973b24;color:#d6c7a1}.app--dark .insights-list{background:radial-gradient(circle at top right,rgba(201,151,59,.1) 0%,transparent 30%),linear-gradient(180deg,#0b0f1cf0,#0e1323e6)}.app--dark .insights-items{background:#080c186b;border-color:#4755693d;box-shadow:inset 0 1px #ffffff0a}.app--dark .insights-item{background:#0f172abd;border-color:#47556938;box-shadow:0 10px 18px #0003}.app--dark .insights-item:hover{background:#111b30f5;border-color:#c9973b2e;box-shadow:0 14px 22px #00000047}.app--dark .insights-collapse-btn{background:#0a0d1ce6;border-color:#47556970;color:#94a3b8}.app--dark .insights-collapse-btn:hover{border-color:#c9973b70;color:#8c9fd4}.app--dark .insights-collapsed-label{color:#94a3b8}.app{--app-surface-bg: #ffffff;--left-rail-width: clamp(230px, 20vw, 290px);--left-rail-collapsed-width: 52px;--pdf-panel-width: clamp(460px, 36vw, 560px);--dock-left-inset: var(--left-rail-width);--dock-right-inset: 0px;height:100vh;width:100%;display:flex;flex-direction:column;overflow:hidden;position:relative;color:var(--text-primary);background:var(--app-surface-bg);background-attachment:fixed}.app:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;opacity:0;background:transparent}.top-bar,.main-stage,.bottom-dock{position:relative;z-index:1}.app--insights-collapsed{--dock-left-inset: var(--left-rail-collapsed-width)}.app--doc-open{--dock-right-inset: var(--pdf-panel-width)}.app--loading,.app--auth{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;background:var(--app-surface-bg)}.loading-card{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--text-secondary);font-size:.9rem}.auth-header{text-align:center;margin-bottom:2rem}.auth-kicker{display:inline-block;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-primary);font-weight:700;margin-bottom:.3rem}.auth-header h1{font-size:clamp(1.8rem,3vw,2.4rem);margin:.2rem 0 0;font-weight:800;letter-spacing:-.8px;background:linear-gradient(120deg,var(--accent-primary) 0%,var(--accent-secondary) 50%,var(--premium-gold) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.auth-header p{margin:.3rem 0 0;font-size:.9rem;color:var(--text-secondary)}.auth-main{width:100%;max-width:460px}.auth-footer{margin-top:2rem;font-size:.72rem;color:var(--text-muted);letter-spacing:2px;text-transform:uppercase}.top-bar{min-height:68px;flex-shrink:0;display:flex;align-items:stretch;padding:.8rem 1.35rem .95rem;z-index:100;position:relative;overflow:visible}.top-bar-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.25rem}.top-bar-shell{position:relative;width:100%;display:flex;flex-direction:column;gap:.8rem;padding:.95rem 1.05rem 1.05rem;border-radius:28px;background:var(--app-surface-bg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(var(--accent-rgb),.1);box-shadow:0 20px 40px #12172e14,inset 0 1px #ffffffd1;overflow:hidden}.top-bar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;pointer-events:none}.top-bar-services{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:.9rem;padding-top:.2rem;border-top:1px solid rgba(var(--accent-rgb),.08)}.top-bar-services-label{display:inline-flex;align-items:center;align-self:stretch;padding:0 .9rem;border-radius:18px;background:#ffffff94;border:1px solid rgba(var(--accent-rgb),.08);color:var(--text-secondary);font-size:.68rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}.top-bar-brand{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;min-width:0}.brand-kicker{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-ui);font-size:.62rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-primary);padding:.22rem .52rem;border:1px solid rgba(var(--accent-rgb),.14);border-radius:999px;line-height:1;background:#ffffffb8;box-shadow:inset 0 1px #ffffffb3}.brand-name{font-family:var(--font-display);font-size:1.02rem;font-weight:800;letter-spacing:-.03em;line-height:1.05;max-width:24ch;background:linear-gradient(120deg,var(--accent-primary) 0%,var(--accent-secondary) 48%,var(--premium-gold) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 10px 24px rgba(var(--accent-rgb),.14)}.top-bar-session{position:relative;z-index:1;display:flex;justify-content:center;min-width:0}.top-bar-session--services{justify-self:end;align-items:center}.top-bar-account{position:relative;z-index:1;display:flex;align-items:center;justify-self:end;gap:.6rem;min-width:0;padding:.3rem .4rem .3rem .7rem;border-radius:999px;background:#ffffff94;border:1px solid rgba(var(--accent-rgb),.08);box-shadow:inset 0 1px #ffffffb8}.top-theme-caption{font-size:.68rem;font-weight:700;letter-spacing:.12em;color:#6b7280;text-transform:uppercase}.top-user-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.26rem .6rem .26rem .3rem;border-radius:999px;background:#f0ece4d6;border:1px solid rgba(148,163,184,.2);color:var(--text-primary);font-size:.75rem;font-weight:700;max-width:190px}.top-user-avatar{width:24px;height:24px;min-width:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(130deg,var(--accent-primary),var(--premium-gold));color:#fff;font-size:.7rem;font-weight:800;overflow:hidden}.top-user-avatar-img{width:100%;height:100%;object-fit:cover;display:block}.top-user-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-logout-btn{width:32px;height:32px;border-radius:10px;border:1px solid rgba(220,38,38,.22);background:#dc26260f;color:#b91c1c;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.top-theme-switch{width:56px;height:32px;padding:2px;border-radius:999px;border:1px solid rgba(30,45,107,.35);background:#faf8f3fa;color:var(--text-secondary);display:inline-flex;align-items:center;position:relative;cursor:pointer;transition:all .25s ease;overflow:hidden;clip-path:inset(0 round 999px);box-shadow:0 0 0 1px #1e2d6b0d,0 6px 14px #0f172a14}.top-theme-switch:hover{border-color:rgba(var(--accent-rgb),.32);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.08)}.top-theme-switch-track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:rgba(var(--accent-rgb),.08);pointer-events:none}.top-theme-switch-thumb{position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:#fff;border:1px solid rgba(148,163,184,.35);display:inline-flex;align-items:center;justify-content:center;color:#1e2d6b;transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease}.top-theme-switch.is-dark .top-theme-switch-thumb{transform:translate(24px);background:#0f172a;color:#c8c2b4;border-color:#47556999}.top-logout-btn:hover{background:#dc262624}.main-stage{flex:1;min-height:0;display:flex;flex-direction:row;overflow:hidden}.insights-rail{width:var(--left-rail-width);min-width:220px;flex-shrink:0;min-height:0;transition:width .28s ease,min-width .28s ease}.insights-rail--collapsed{width:var(--left-rail-collapsed-width);min-width:var(--left-rail-collapsed-width)}.assistant-center-pane{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--app-surface-bg)}.insights-rail-mobile{display:none;flex-shrink:0}.voice-pane{flex:1;min-width:0;overflow:hidden;display:flex;flex-direction:column;transition:flex .35s cubic-bezier(.4,0,.2,1);background:var(--app-surface-bg)}.voice-pane--narrow{min-width:340px}.bottom-dock{height:72px;width:calc(100% - var(--dock-left-inset) - var(--dock-right-inset));margin-left:var(--dock-left-inset);margin-right:var(--dock-right-inset);margin-bottom:10px;border-radius:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:.55rem;padding:0 1.15rem;background:var(--app-surface-bg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(var(--accent-rgb),.1);z-index:100;box-shadow:0 18px 34px #0f172a1a,inset 0 1px #fffc;position:relative;overflow:hidden}.bottom-dock--header{width:100%;margin:0;height:auto;min-height:0;justify-content:flex-start;gap:.55rem;padding:.4vw;border:none;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.bottom-dock:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;pointer-events:none}.bottom-dock--header:before{display:none}.bottom-dock--header .dock-item{width:74px;height:56px;border-radius:18px;background:linear-gradient(180deg,#fffcf6b3,#f8f4ecdb);border-color:rgba(var(--accent-rgb),.1);box-shadow:0 8px 16px #0f172a0f,inset 0 1px #ffffffd1}.bottom-dock--header .dock-item:hover{background:linear-gradient(180deg,#fffcf6e6,#f8f4ecfa);box-shadow:0 12px 20px #1e2d6b1a,inset 0 1px #ffffffeb}.bottom-dock--header .dock-item--active{background:linear-gradient(145deg,rgba(var(--accent-rgb),.14),rgba(var(--gold-rgb),.12));border-color:rgba(var(--accent-rgb),.22);box-shadow:0 14px 24px rgba(var(--accent-rgb),.16),inset 0 1px #ffffff85}.bottom-dock--header .dock-item--assistant{width:74px;height:56px;border-radius:18px;box-shadow:0 16px 28px rgba(var(--accent-rgb),.28),0 0 0 5px #fff8ecc7}.bottom-dock--header .dock-label{font-size:.58rem}.dock-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.28rem;width:74px;height:56px;border-radius:18px;border:1px solid transparent;background:#ffffff57;color:var(--text-secondary);cursor:pointer;transition:all .24s cubic-bezier(.34,1.56,.64,1);padding:0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.dock-item:hover{background:#ffffffc2;color:var(--accent-primary);border-color:rgba(var(--accent-rgb),.14);transform:translateY(-2px);box-shadow:0 10px 18px #1e2d6b14}.dock-item--active{background:linear-gradient(145deg,rgba(var(--accent-rgb),.14),rgba(var(--gold-rgb),.1));color:var(--accent-primary);border-color:rgba(var(--accent-rgb),.2);box-shadow:0 12px 20px rgba(var(--accent-rgb),.14),inset 0 1px #ffffff85}.dock-item--assistant{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;border-color:rgba(var(--accent-rgb),.28);box-shadow:0 14px 28px rgba(var(--accent-rgb),.34),0 0 0 6px #fff8ecb8;transform:translateY(-8px)}.dock-item--assistant:hover{color:#fff;transform:translateY(-10px) scale(1.05);box-shadow:0 18px 30px rgba(var(--accent-rgb),.4),0 0 0 6px #fff8ecd1}.dock-item--assistant.dock-item--active{background:linear-gradient(135deg,#22357e,#3655c8 62%,#c9973b)}.dock-item--assistant .dock-label{display:none}.dock-icon{display:flex;align-items:center;justify-content:center;line-height:1}.dock-vea-badge{font-family:var(--font-display);font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.dock-vea-badge.is-processing{position:relative}.dock-vea-badge.is-processing:after{content:"";position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px;border-radius:999px;border:1.5px solid rgba(201,151,59,.55);animation:dockPulse 1.2s ease-out infinite}@keyframes dockPulse{0%{transform:scale(.92);opacity:.78}to{transform:scale(1.26);opacity:0}}.dock-label{font-size:.66rem;font-weight:700;letter-spacing:.03em;text-transform:none}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a33;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:400;opacity:0;transition:opacity .3s ease;pointer-events:none}.drawer-backdrop.open{opacity:1;pointer-events:all}.drawer{position:fixed;top:50%;left:50%;width:50vw;max-height:min(78vh,820px);background:#fff;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(var(--accent-rgb),.15);border-radius:26px;z-index:500;display:flex;flex-direction:column;overflow:hidden;transform:translate(-50%,calc(-50% + 28px)) scale(.96);opacity:0;transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .28s ease;box-shadow:0 30px 60px #0f172a2e,0 10px 24px rgba(var(--accent-rgb),.1)}.drawer--open{transform:translate(-50%,-50%) scale(1);opacity:1}.drawer--calendar{width:min(760px,94vw)}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.1rem;border-bottom:1px solid rgba(var(--accent-rgb),.12);flex-shrink:0;background:#faf8f3e6}.drawer-title{font-family:var(--font-display);display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;color:var(--text-primary)}.drawer-close-btn{width:32px;height:32px;border-radius:8px;border:1px solid rgba(148,163,184,.28);background:#fff;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0}.drawer-close-btn:hover{color:#dc2626;border-color:#dc262647;background:#dc26260d}.drawer-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:1rem 1.1rem}.drawer-body::-webkit-scrollbar{width:5px}.drawer-body::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:8px}.drawer-section{display:flex;flex-direction:column;gap:.75rem}.drawer-toolbar{display:flex;gap:.75rem;align-items:flex-start;justify-content:space-between;margin-bottom:.5rem;flex-wrap:wrap}.drawer-new-event-btn{padding:.5rem .9rem;border-radius:10px;border:1px solid rgba(var(--accent-rgb),.35);background:var(--accent-primary);color:#fff;font-size:.82rem;font-weight:700;cursor:pointer;transition:background .2s;white-space:nowrap}.drawer-new-event-btn:hover{background:var(--accent-secondary)}.drawer-body .glass-panel,.drawer-body [class*=-card],.drawer-body [class*=-container]{width:100%;max-width:100%;box-sizing:border-box}.spinner{width:40px;height:40px;border:3px solid rgba(var(--accent-rgb),.15);border-top-color:var(--accent-primary);border-radius:50%;animation:spinnerRotate .8s linear infinite}@keyframes spinnerRotate{to{transform:rotate(360deg)}}@media (max-width: 768px){.top-bar{padding:.75rem .85rem .8rem}.top-bar-shell{gap:.7rem;padding:.85rem;border-radius:24px}.top-bar-main{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand account";align-items:start;gap:.75rem}.top-bar-brand{grid-area:brand}.top-bar-account{grid-area:account;padding:.2rem;gap:.4rem;background:transparent;border:none}.top-bar-services{grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:center}.top-bar-services-label{justify-self:start;padding:.45rem .7rem}.top-bar-session--services{justify-self:end}.brand-name{font-size:.9rem}.top-theme-caption,.top-user-name{display:none}.top-user-pill{max-width:none;padding-right:.28rem}.bottom-dock{gap:.18rem;height:auto;border-radius:0;padding:0;justify-content:flex-start;flex-wrap:wrap}.bottom-dock--header{width:100%;margin:0}.bottom-dock--header .dock-item,.bottom-dock--header .dock-item--assistant{width:56px;height:50px}.bottom-dock--header .dock-label{font-size:.52rem}.dock-item{width:56px;height:50px}.dock-label{font-size:.55rem}.dock-item--assistant{width:54px;height:54px;transform:translateY(-5px);box-shadow:0 12px 22px rgba(var(--accent-rgb),.28),0 0 0 4px #fff8ecb8}.top-bar{min-height:auto}.drawer{top:52%;left:50%;width:100vw;max-height:72vh;width:min(94vw,560px);border:1px solid rgba(var(--accent-rgb),.15);border-radius:22px}.app,.app--insights-collapsed,.app--doc-open{--dock-left-inset: 0px;--dock-right-inset: 0px}}@media (max-width: 1280px){.app{--left-rail-width: clamp(210px, 18vw, 250px);--left-rail-collapsed-width: 48px;--pdf-panel-width: clamp(420px, 34vw, 500px)}.insights-rail{width:var(--left-rail-width);min-width:200px}.insights-rail--collapsed{width:var(--left-rail-collapsed-width);min-width:var(--left-rail-collapsed-width)}}@media (max-width: 1024px){.app,.app--insights-collapsed,.app--doc-open{--dock-left-inset: 0px;--dock-right-inset: 0px}.main-stage{flex-direction:column}.insights-rail{display:none}.insights-rail-mobile{display:block;border-bottom:1px solid rgba(var(--accent-rgb),.1);background:var(--app-surface-bg)}.voice-pane--narrow{min-width:0}}.app--dark{--app-surface-bg: #0b1220;--bg-main: #080b18;--bg-subtle: #0b0f20;--bg-surface: rgba(15, 23, 42, .9);--bg-surface-elevated: #111827;--glass-bg: rgba(15, 23, 42, .86);--text-primary: #e8e5dc;--text-secondary: #9a96a8;--text-muted: #5e5a6e;background:radial-gradient(circle at 50% 20%,rgba(30,45,107,.18) 0%,transparent 40%),radial-gradient(circle at 0% 100%,rgba(15,23,42,.65) 0%,transparent 45%),linear-gradient(180deg,#080b18,#0b0f20,#070a17)}.app--dark:before{display:none}.app--dark .top-bar{background:transparent;border-bottom-color:transparent;box-shadow:none}.app--dark .top-bar-shell{background:linear-gradient(180deg,#080c16f5,#0a0f1ce6);border-color:#c9973b24;box-shadow:0 14px 32px #0000004d,inset 0 1px #ffffff0a}.app--dark .brand-name{background:linear-gradient(120deg,#f7f0e0,#c9b87a,#8ea6ff 68%,#f4d48a);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 12px 30px rgba(0,0,0,.42)}.app--dark .brand-kicker{background:#0f172ab8;border-color:#c9973b38;color:#d9c28d}.app--dark .top-user-pill{background:#0f172ae6;border-color:#47556970;color:#e0dbd0}.app--dark .top-theme-caption{color:#94a3b8}.app--dark .top-bar-account{background:#0f172a6b;border-color:#47556947;box-shadow:inset 0 1px #ffffff0d}.app--dark .top-bar-services{border-top-color:#c9973b24}.app--dark .top-bar-services-label{background:#0f172a99;border-color:#47556947;color:#94a3b8}.app--dark .top-theme-switch{background:#050a13f5;border-color:#c9973b6b;box-shadow:0 0 0 1px #c9973b29,0 6px 14px #00000059}.app--dark .top-theme-switch-track{background:#c9973b1f}.app--dark .top-theme-switch:hover{border-color:#c9973b99;box-shadow:0 0 0 3px #c9973b2e,0 8px 16px #0000006b}.app--dark .top-logout-btn{background:#7f1d1d40;border-color:#f871715c;color:#fca5a5}.app--dark .assistant-center-pane{background:linear-gradient(180deg,#080d189e,#060a13d6)}.app--dark .bottom-dock{background:linear-gradient(180deg,#070c16f5,#0a101eeb);border-color:#47556942;box-shadow:0 18px 34px #0000006b,inset 0 1px #ffffff0d}.app--dark .bottom-dock--header{background:transparent;border:none;box-shadow:none}.app--dark .bottom-dock--header .dock-item{background:linear-gradient(180deg,#080c16bd,#0a0f1ce0);border-color:#4755693d;box-shadow:0 10px 18px #0000003d,inset 0 1px #ffffff0a}.app--dark .bottom-dock--header .dock-item:hover{background:linear-gradient(180deg,#0a0f1ceb,#0c1322fa);box-shadow:0 12px 22px #0000004d,0 0 0 1px #c9973b14}.app--dark .bottom-dock--header .dock-item--active{background:linear-gradient(145deg,#c9973b33,#1e2d6b47);border-color:#c9973b3d}.app--dark .bottom-dock--header .dock-item--assistant{box-shadow:0 16px 30px #0000006b,0 0 0 5px #080c16d1}.app--dark .dock-item{background:#0f172a80;color:#94a3b8;border-color:#4755691f}.app--dark .dock-item:hover{background:#0f172ae6;color:#c9b87a;border-color:#c9973b2e}.app--dark .dock-item--active{background:linear-gradient(145deg,#c9973b2e,#1e2d6b3d);color:#c9b87a;border-color:#c9973b3d}.app--dark .dock-item--assistant{background:linear-gradient(135deg,#1f3178,#395ad2 58%,#c9973b);color:#f5f1ea;border-color:#c9973b57;box-shadow:0 16px 30px #0000006b,0 0 0 6px #080c16db}.app--dark .dock-vea-badge.is-processing:after{border-color:#c9973ba6}.app--dark .drawer-backdrop{background:#02061780}.app--dark .drawer{background:#080d18f2;border-color:#c9973b33;box-shadow:0 34px 70px #0000006b,0 12px 28px #1e2d6b2e}.app--dark .drawer-header{background:#0f172a8c;border-bottom-color:#4755694d}.app--dark .drawer-title{color:#e0dbd0}.app--dark .drawer-close-btn{background:#0f172adb;border-color:#47556970;color:#94a3b8}.auth-callback{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.callback-container{background:#fff;padding:40px;border-radius:12px;box-shadow:0 8px 32px #0000001a;text-align:center;max-width:400px;width:90%}.spinner{width:60px;height:60px;margin:0 auto 20px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.success-icon{width:80px;height:80px;margin:0 auto 20px;background:#4caf50;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700;animation:scaleIn .3s ease-out}.error-icon{width:80px;height:80px;margin:0 auto 20px;background:#f44336;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700;animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.message{font-size:14px;color:#333;margin-bottom:12px;font-weight:500}.sub-message{font-size:14px;color:#666}:root{--font-ui: "Poppins", system-ui, -apple-system, sans-serif;--font-display: "Poppins", system-ui, -apple-system, sans-serif;font-family:var(--font-ui);line-height:1.5;font-weight:400;--bg-main: #ffffff;--bg-subtle: #ffffff;--bg-surface: #ffffff;--bg-surface-elevated: #ffffff;--glass-bg: rgba(255, 255, 255, .96);--glass-border: rgba(180, 155, 110, .22);--glass-glow: rgba(18, 24, 48, .07);--accent-primary: #1e2d6b;--accent-secondary: #2d45a8;--accent-rgb: 30, 45, 107;--accent-glow: rgba(30, 45, 107, .18);--premium-gold: #c9973b;--gold-rgb: 201, 151, 59;--gold-glow: rgba(201, 151, 59, .22);--text-primary: #12172e;--text-secondary: #4a5068;--text-muted: #9096b0;--error: #c0392b;--success: #1a7a4a;--warning: #c47d12;--blur-amount: 18px;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;--radius-xl: 32px;--card-shadow: 0 20px 40px rgba(18, 23, 46, .09), 0 2px 8px rgba(18, 23, 46, .05), 0 0 0 1px rgba(180, 155, 110, .1);--inner-shadow: inset 0 1px 1px rgba(255, 253, 249, .9);--transition-smooth: all .28s cubic-bezier(.16, 1, .3, 1);--transition-bounce: all .45s cubic-bezier(.175, .885, .32, 1.275);color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;font-family:var(--font-ui);background:var(--bg-main);color:var(--text-primary)}#root{width:100%;min-height:100vh;display:flex}.frc{display:flex;justify-content:center;align-items:center}.fcc{display:flex;flex-direction:column;align-items:center;justify-content:center}.spinner{width:28px;height:28px;border-radius:50%;border:2.5px solid rgba(var(--accent-rgb),.16);border-top-color:var(--accent-primary);animation:appSpin .75s linear infinite}@keyframes appSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}::selection{background:#1e2d6b2e;color:var(--text-primary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#b49b6e52;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#b49b6e85}:focus-visible{outline:2px solid rgba(30,45,107,.45);outline-offset:2px}
