@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&display=swap";.grecaptcha-badge{visibility:hidden!important}:root{--bg-base:#06060a;--bg-surface:#0e0e14b3;--bg-elevated:#161620cc;--bg-hover:#20202e99;--bg-active:#2a2a3a99;--bg-glass:#1010188c;--border-subtle:#ffffff0a;--border-default:#ffffff12;--border-strong:#ffffff1f;--border-glow:#8b5cf633;--text-primary:#f0f0f5;--text-secondary:#f0f0f580;--text-tertiary:#f0f0f547;--accent:#8b5cf6;--accent-hover:#a78bfa;--accent-dim:#7c3aed;--accent-subtle:#8b5cf614;--accent-glow:#8b5cf64d;--rose:#f43f5e;--rose-glow:#f43f5e33;--cyan:#22d3ee;--cyan-glow:#22d3ee26;--shadow-sm:0 1px 3px #00000080, 0 1px 2px #0000004d;--shadow-md:0 4px 16px #0006, 0 2px 4px #0000004d;--shadow-lg:0 12px 48px #00000080, 0 4px 12px #0000004d;--shadow-glow:0 0 30px var(--accent-glow);--shadow-glow-lg:0 0 60px var(--accent-glow), 0 0 120px #8b5cf61a;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Cascadia Code", monospace}*{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{background:var(--bg-base);height:100%;color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.6;overflow:hidden}#root{height:100%;position:relative}#root:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#8b5cf60f 0%,#0000 70%);width:60%;height:60%;animation:20s ease-in-out infinite alternate ambientDrift;position:fixed;top:-30%;left:-10%}#root:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#22d3ee0a 0%,#0000 70%);width:50%;height:50%;animation:25s ease-in-out infinite alternate-reverse ambientDrift;position:fixed;bottom:-20%;right:-10%}.app:before{content:"";pointer-events:none;z-index:9999;opacity:.5;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");position:fixed;inset:0}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff0f}::-webkit-scrollbar-thumb:hover{background:#ffffff1f}::selection{color:var(--text-primary);background:#8b5cf640}@keyframes ambientDrift{0%{transform:translate(0)scale(1)}to{transform:translate(5%,8%)scale(1.1)}}.confirm-card{background:linear-gradient(#8b5cf61f 0%,#22d3ee0f 100%),#14161af0;border:1px solid #a78bfa73;border-radius:14px;flex-direction:column;align-self:stretch;gap:10px;margin:12px 0 4px;padding:14px 16px;animation:.25s cubic-bezier(.16,1,.3,1) confirmCardIn;display:flex;box-shadow:0 10px 30px #00000059,inset 0 0 0 1px #a78bfa2e}@keyframes confirmCardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.confirm-card__header{align-items:center;gap:10px;display:flex}.confirm-card__emoji{flex-shrink:0;font-size:24px;line-height:1}.confirm-card__header-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.confirm-card__name{color:var(--text-primary,#fff);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;font-weight:600;line-height:1.2;overflow:hidden}.confirm-card__model{color:var(--text-secondary,#c0c0d0);font-size:11.5px;font-family:var(--font-mono)}.confirm-card__countdown{color:var(--text-secondary,#c0c0d0);font-size:12px;font-family:var(--font-mono);background:#ffffff0a;border-radius:6px;flex-shrink:0;padding:3px 8px}.confirm-card__countdown--soon{color:#f97316;background:#f973161f}.confirm-card__status{color:var(--text-secondary,#c0c0d0);align-items:center;gap:8px;font-size:12.5px;display:flex}.confirm-card__check{min-width:24px;height:22px;color:var(--text-secondary,#c0c0d0);font-size:11px;font-weight:600;font-family:var(--font-mono);background:#ffffff0f;border-radius:11px;justify-content:center;align-items:center;padding:0 6px;display:inline-flex}.confirm-card__check--ok{color:#4ade80;background:#22c55e2e}.confirm-card__status-text{flex:1;min-width:0}.confirm-card__schedules-info{color:var(--text-secondary,#c0c0d0);background:#22d3ee0f;border:1px solid #22d3ee2e;border-radius:8px;margin:0;padding:8px 10px;font-size:12.5px}.confirm-card__error{color:#fca5a5;background:#ef44441a;border:1px solid #ef444440;border-radius:8px;margin:0;padding:8px 10px;font-size:12.5px}.confirm-card__actions{gap:8px;margin-top:2px;display:flex}.confirm-card__btn{cursor:pointer;border:1px solid #0000;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:11px 14px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,transform .15s,color .15s;display:inline-flex}.confirm-card__btn:active{transform:translateY(1px)}.confirm-card__btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.confirm-card__btn--ghost{color:var(--text-secondary,#c0c0d0);background:0 0;border-color:#ffffff29}.confirm-card__btn--ghost:hover:not(:disabled){color:var(--text-primary,#fff);background:#ffffff0d;border-color:#ffffff47}.confirm-card__btn--primary{color:#fff;background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%);border-color:#a78bfa59;flex:2;box-shadow:0 6px 16px #8b5cf659}.confirm-card__btn--primary:hover:not(:disabled){background:linear-gradient(135deg,#a78bfa 0%,#7c3aed 100%);box-shadow:0 8px 22px #8b5cf673}.confirm-card__spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite confirmSpin}@keyframes confirmSpin{to{transform:rotate(360deg)}}@media (width>=1025px){.confirm-card{display:none}}.review-card{border-radius:var(--radius-lg);border:1px solid var(--border-glow);background:linear-gradient(135deg, var(--bg-elevated) 0%, var(--bg-glass) 100%);-webkit-backdrop-filter:blur(24px);box-shadow:var(--shadow-lg), 0 0 40px #8b5cf614;transform-origin:top;margin:16px 0 8px;padding:20px;animation:.32s cubic-bezier(.34,1.56,.64,1) review-card-in;position:relative}.review-card--exiting{animation:.2s ease-out forwards review-card-out}@keyframes review-card-in{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes review-card-out{to{opacity:0;transform:scale(.96)}}@media (prefers-reduced-motion:reduce){.review-card,.review-card--exiting{animation:none}}.review-card__header{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:16px;margin-bottom:18px;padding-bottom:16px;display:flex}.review-card__header-emoji{border-radius:var(--radius-md);background:var(--accent-subtle);border:1px solid var(--border-glow);flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:32px;display:flex}.review-card__header-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.review-card__title{color:var(--text-primary);letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:1.2}.review-card__subtitle{color:var(--text-secondary);margin-bottom:6px;font-size:13px;line-height:1.5}.review-card__model-badge{border-radius:var(--radius-full);background:var(--accent-subtle);color:var(--accent-hover);border:1px solid var(--border-glow);align-self:flex-start;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.review-card__model-badge--premium{color:#fb7185;background:#f43f5e14;border-color:#f43f5e33}.review-card__model-badge--fast{color:var(--cyan);background:#22d3ee14;border-color:#22d3ee33}.review-card__model-bolt{font-size:10px}.review-card__model-cost{color:var(--text-tertiary);font-weight:400}.review-card__sections{grid-template-columns:1fr;gap:12px;display:grid}@container chat (width>=640px){.review-card__sections{grid-template-columns:1fr 1fr}}@container chat (width>=960px){.review-card__sections{grid-template-columns:repeat(3,1fr)}}.review-card__section{border-radius:var(--radius-md);background:var(--bg-glass);border:1px solid var(--border-subtle);flex-direction:column;min-height:120px;padding:14px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative}.review-card__section:hover{border-color:var(--border-strong);transform:translateY(-1px)}.review-card__section--complete{border-color:#22d3ee26}.review-card__section--empty{border-style:dashed;border-color:var(--border-default);background:#00000026}.review-card__section-header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.review-card__check{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.review-card__check--on{color:var(--cyan);background:#22d3ee26;border:1px solid #22d3ee4d}.review-card__check--off{color:var(--text-tertiary);border:1px solid var(--border-default);background:#ffffff0a}.review-card__section-title{color:var(--text-primary);letter-spacing:.02em;font-size:13px;font-weight:600}.review-card__section-body{color:var(--text-secondary);flex-direction:column;flex:1;gap:6px;font-size:12.5px;line-height:1.55;display:flex;overflow:hidden}.review-card__placeholder{color:var(--text-tertiary);font-size:12px;font-style:italic}.review-card__text{-webkit-line-clamp:6;line-clamp:6;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.review-card__meta{color:var(--text-tertiary);font-size:12px}.review-card__meta strong{color:var(--text-secondary);font-weight:500}.review-card__code{font-family:var(--font-mono);color:var(--text-secondary);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);white-space:pre-wrap;word-break:break-word;-webkit-line-clamp:8;line-clamp:8;background:#00000040;-webkit-box-orient:vertical;max-height:140px;margin:0;padding:8px 10px;font-size:11.5px;display:-webkit-box;overflow:hidden}.review-card__list{margin:0;padding-left:16px;list-style:outside}.review-card__list li{margin-bottom:2px}.review-card__chips{flex-wrap:wrap;gap:6px;display:flex}.review-card__chip{border-radius:var(--radius-full);background:var(--accent-subtle);color:var(--accent-hover);border:1px solid var(--border-glow);align-items:center;padding:3px 9px;font-size:11.5px;font-weight:500;display:inline-flex}.review-card__chip--ghost{color:var(--text-tertiary);border-color:var(--border-default);background:0 0}.review-card__corefiles{flex-direction:column;gap:8px;display:flex}.review-card__corefiles-tabs{flex-wrap:wrap;gap:4px;display:flex}.review-card__corefiles-tab{color:var(--text-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-full);cursor:pointer;background:#ffffff05;align-items:center;gap:4px;padding:3px 8px;font-family:inherit;font-size:11px;font-weight:500;transition:all .15s;display:inline-flex}.review-card__corefiles-tab:hover{color:var(--text-secondary);border-color:var(--border-strong)}.review-card__corefiles-tab--active{color:var(--accent-hover);background:var(--accent-subtle);border-color:var(--border-glow)}.review-card__corefiles-tab--empty{opacity:.7}.review-card__corefiles-dot{font-size:10px}.review-card__corefiles-content{color:var(--text-secondary);font-size:12px;line-height:1.5}.review-card__section-edit{color:var(--accent-hover);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;align-self:flex-start;margin-top:10px;padding:5px 10px;font-family:inherit;font-size:11.5px;font-weight:500;transition:all .15s}.review-card__section-edit:hover:not(:disabled){background:var(--accent-subtle);border-color:var(--border-glow)}.review-card__section-edit:focus-visible{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow);outline:none}.review-card__section-edit:disabled{opacity:.4;cursor:not-allowed}.review-card__warning,.review-card__error{border-radius:var(--radius-sm);margin-top:14px;padding:10px 12px;font-size:12.5px;line-height:1.5}.review-card__warning{color:var(--cyan);background:#22d3ee0f;border:1px solid #22d3ee2e}.review-card__error{color:var(--rose);border:1px solid var(--rose-glow);background:#f43f5e14}.review-card__cta-sticky{border-top:1px solid var(--border-subtle);justify-content:flex-end;align-items:center;gap:10px;margin-top:18px;padding-top:16px;display:flex}.review-card__countdown{font-variant-numeric:tabular-nums;color:var(--text-secondary);border:1px solid var(--border-strong);border-radius:var(--radius-full);background:#ffffff0d;align-items:center;gap:4px;margin-right:auto;padding:4px 9px;font-size:11.5px;font-weight:500;display:inline-flex}.review-card__countdown--soon{color:var(--rose);border-color:var(--rose-glow);background:#f43f5e14;animation:1s ease-in-out infinite review-card-pulse}@keyframes review-card-pulse{0%,to{opacity:1}50%{opacity:.6}}@media (prefers-reduced-motion:reduce){.review-card__countdown--soon{animation:none}}.review-card__btn{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:600;transition:all .18s;display:inline-flex}.review-card__btn:focus-visible{box-shadow:0 0 0 3px var(--accent-glow);outline:none}.review-card__btn--ghost{color:var(--text-secondary);border-color:var(--border-default);background:0 0}.review-card__btn--ghost:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover);border-color:var(--border-strong)}.review-card__btn--primary{color:#fff;background:linear-gradient(135deg, var(--accent) 0%, var(--accent-dim) 100%);border-color:var(--accent);box-shadow:0 4px 16px #8b5cf640,inset 0 1px #ffffff1a}.review-card__btn--primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 24px #8b5cf666,inset 0 1px #ffffff26}.review-card__btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.review-card__btn[aria-busy=true]{pointer-events:none}.review-card__spinner{border-radius:var(--radius-full);border:2px solid #ffffff4d;border-top-color:#fff;width:14px;height:14px;animation:.8s linear infinite review-card-spin}@keyframes review-card-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.review-card__spinner{animation-duration:2s}.review-card__btn--primary:hover:not(:disabled){transform:none}}@container chat (width<=640px){.review-card{border-radius:var(--radius-md);margin:12px 0 0;padding:14px}.review-card__header{gap:12px;margin-bottom:14px;padding-bottom:12px}.review-card__header-emoji{width:52px;height:52px;font-size:26px}.review-card__title{font-size:17px}.review-card__subtitle{font-size:12.5px}.review-card__cta-sticky{z-index:2;padding:12px 14px calc(12px + env(safe-area-inset-bottom,0));background:linear-gradient(to bottom, transparent 0%, var(--bg-base) 30%, var(--bg-base) 100%);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border-subtle);flex-direction:column-reverse;align-items:stretch;gap:8px;margin:16px -14px 0;position:sticky;bottom:0}.review-card__btn{width:100%;min-height:48px}}.review-card__schedules{border-radius:var(--radius-md);background:#8b5cf60f;border:1px solid #8b5cf62e;margin:16px 0 0;padding:14px 16px}.review-card__schedules-header{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.review-card__schedules-title{color:var(--text-primary);margin:0;font-size:14px;font-weight:600}.review-card__schedules-count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px}.review-card__schedules-hint{color:var(--text-muted);margin:0 0 10px;font-size:12px;line-height:1.4}.review-card__schedules-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.review-card__schedule{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);align-items:flex-start;gap:10px;padding:10px 12px;transition:border-color .12s,background .12s;display:flex}.review-card__schedule--on{background:#8b5cf614;border-color:#8b5cf673}.review-card__schedule input[type=checkbox]{cursor:pointer;flex-shrink:0;margin-top:3px}.review-card__schedule-label{cursor:pointer;flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.review-card__schedule-desc{color:var(--text-primary);font-size:13px;font-weight:500;line-height:1.3}.review-card__schedule-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.review-card__schedule-cadence{font-family:var(--font-mono);color:var(--text-secondary);background:#0003;border-radius:4px;padding:2px 6px;font-size:11px}.review-card__schedule-tz{opacity:.7}.review-card__schedule-next{font-variant-numeric:tabular-nums}.draft-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(24px)saturate(1.2);border-left:1px solid var(--border-subtle);flex-direction:column;animation:.3s cubic-bezier(.16,1,.3,1) panelSlideIn;display:flex;position:relative;overflow:hidden}.draft-panel:before{content:"";pointer-events:none;background:linear-gradient(#0000 5%,#8b5cf61f 40%,#22d3ee0f 70%,#0000 95%);width:1px;position:absolute;top:0;bottom:0;left:-1px}.draft-panel__topbar{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:12px;padding:16px 18px 12px;display:flex}.draft-panel__topbar-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.draft-panel__topbar-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent,#a78bfa);font-size:12px;font-weight:600}.draft-panel__topbar-hint{color:var(--text-secondary,#c0c0d0);font-size:12.5px;line-height:1.4}.draft-panel__card{box-shadow:none;background:0 0;border:none;border-radius:0;flex:1;margin:0;padding:16px 18px;overflow-y:auto}.draft-panel__footer{border-top:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(12px);background:#0000002e;align-items:center;gap:10px;padding:12px 18px;display:flex}.draft-panel__footer--ghost{background:0 0;justify-content:flex-end}@media (width<=1024px){.draft-panel{display:none}}.auth-page{background:var(--bg-base);min-height:100dvh;color:var(--text-primary);display:flex}.auth-hero{flex:1;padding:64px 56px;display:none;position:relative;overflow:hidden}@media (width>=1024px){.auth-hero{justify-content:center;align-items:center;display:flex}}.auth-hero-blob{filter:blur(110px);pointer-events:none;border-radius:999px;position:absolute}.auth-hero-blob.top{background:#8b5cf638;width:320px;height:320px;top:15%;left:18%}.auth-hero-blob.bottom{background:#22d3ee2e;width:260px;height:260px;bottom:12%;right:15%}.auth-hero-inner{z-index:1;max-width:460px;position:relative}.auth-hero-label{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:28px;font-family:JetBrains Mono,monospace;font-size:12px;display:inline-block}.auth-hero-title{letter-spacing:-.02em;margin:0 0 20px;font-size:2.6rem;font-weight:700;line-height:1.1}.auth-hero-title-accent{background:linear-gradient(90deg, var(--accent), var(--cyan));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.auth-hero-subtitle{color:var(--text-secondary);margin:0;font-size:1.05rem;line-height:1.55}.auth-hero-proof{align-items:center;gap:16px;margin-top:48px;display:flex}.auth-avatars{display:flex}.auth-avatars img{border:2px solid var(--bg-base);object-fit:cover;background:var(--bg-surface);border-radius:999px;width:36px;height:36px;margin-left:-10px}.auth-avatars img:first-child{margin-left:0}.auth-proof-text{color:var(--text-tertiary);font-size:13px;font-style:italic}.auth-form-wrap{padding:48px 24px;padding-top:max(48px, env(safe-area-inset-top,0));padding-bottom:max(48px, env(safe-area-inset-bottom,0));background:var(--bg-surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-left:1px solid var(--border-subtle);flex:1;justify-content:center;align-items:safe center;display:flex;overflow-y:auto}@media (width<=640px){.auth-form-wrap{padding:24px 16px;padding-top:max(24px, env(safe-area-inset-top,0));padding-bottom:max(24px, env(safe-area-inset-bottom,0));border-left:none}.auth-heading h2{font-size:1.35rem}.auth-heading p{font-size:13px}.auth-input{height:48px;font-size:16px}.auth-btn{height:48px;font-size:15px}.auth-form{gap:18px}}.auth-form{flex-direction:column;gap:24px;width:100%;max-width:420px;display:flex}.auth-form.is-compact{gap:14px;max-width:480px}.auth-form.is-compact .auth-brand{margin-bottom:0}.auth-form.is-compact .auth-heading h2{font-size:1.4rem}.auth-form.is-compact .auth-heading p{font-size:13px}.auth-row{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}@media (width<=640px){.auth-form.is-compact{gap:12px}.auth-form.is-compact .auth-heading h2{margin-bottom:4px;font-size:1.2rem}.auth-form.is-compact .auth-heading p{font-size:12.5px;line-height:1.4}.auth-form.is-compact .auth-input{height:44px}.auth-form.is-compact .auth-btn{height:44px;font-size:14px}.auth-row{gap:10px}}@media (width<=480px){.auth-form.is-compact .auth-icon{display:none}.auth-form.is-compact .auth-input{padding-left:14px}.auth-form.is-compact .auth-input.has-right-icon{padding-right:36px}.auth-form.is-compact .auth-toggle{right:10px}.auth-row{grid-template-columns:1fr;gap:10px}}@media (width<=640px){.auth-form-wrap{align-items:flex-start}}.auth-brand{color:inherit;align-items:center;gap:10px;margin-bottom:4px;text-decoration:none;transition:opacity .15s;display:flex}.auth-brand:hover{opacity:.85}.auth-hero-link{color:inherit;text-decoration:none;transition:opacity .15s}.auth-hero-link:hover{opacity:.92}.auth-btn-google{border-color:#ffffff24}.auth-btn-google:hover{background:var(--bg-elevated);border-color:var(--accent)}.auth-brand-mark{background:var(--accent);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 8px 32px #8b5cf666}.auth-brand-name{letter-spacing:-.01em;font-size:1.4rem;font-weight:700}.auth-heading h2{letter-spacing:-.01em;margin:0 0 6px;font-size:1.6rem;font-weight:700}.auth-heading p{color:var(--text-secondary);margin:0;font-size:14px}.auth-tabs{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:10px;align-self:flex-start;gap:2px;padding:4px;display:inline-flex}.auth-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:7px 16px;font-size:13px;font-weight:500;transition:all .15s}.auth-tab:hover{color:var(--text-primary)}.auth-tab.active{background:var(--accent);color:#fff;box-shadow:0 4px 16px #8b5cf640}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-field-label{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:13px;font-weight:500;display:flex}.auth-field-label a,.auth-field-label button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:none;transition:color .15s}.auth-field-label a:hover,.auth-field-label button:hover{color:var(--cyan)}.auth-input-wrap{align-items:center;display:flex;position:relative}.auth-input-wrap .auth-icon{color:var(--text-tertiary);pointer-events:none;display:flex;position:absolute;left:14px}.auth-input-wrap .auth-toggle{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;padding:4px;display:flex;position:absolute;right:12px}.auth-input-wrap .auth-toggle:hover{color:var(--text-secondary)}.auth-input{background:var(--bg-elevated);border:1px solid var(--border-default);width:100%;height:46px;color:var(--text-primary);box-sizing:border-box;border-radius:10px;padding:0 14px 0 42px;font-family:inherit;font-size:14px;transition:border-color .15s,background .15s}.auth-input:hover{border-color:var(--border-strong)}.auth-input:focus{border-color:var(--accent);background:var(--bg-hover);box-shadow:0 0 0 3px var(--accent-subtle);outline:none}.auth-input.has-right-icon{padding-right:42px}.auth-input::placeholder{color:var(--text-tertiary)}.auth-input-hint{color:var(--text-tertiary);margin-top:4px;font-size:11.5px}.auth-btn{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;height:46px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex}.auth-btn.primary{background:var(--accent);color:#fff;box-shadow:0 8px 24px #8b5cf640}.auth-btn.primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.auth-btn.primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.auth-btn.ghost{color:var(--text-primary);border-color:var(--border-default);background:0 0}.auth-btn.ghost:hover{background:var(--bg-elevated);border-color:var(--border-strong)}.auth-btn:focus-visible{box-shadow:0 0 0 3px var(--accent-subtle), 0 0 0 1px var(--accent);outline:none}.auth-divider{color:var(--text-tertiary);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:12px;font-size:11px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.auth-error,.auth-success{border:1px solid;border-radius:8px;padding:11px 14px;font-size:13px}.auth-error{color:#ff8894;background:#f43f5e14;border-color:#f43f5e33}.auth-success{color:#4ade80;background:#10b98114;border-color:#10b98133}.auth-footer-text{text-align:center;color:var(--text-secondary);font-size:13px}.auth-footer-text a,.auth-footer-text button{color:var(--accent);cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:none;transition:color .15s}.auth-footer-text a:hover,.auth-footer-text button:hover{color:var(--cyan)}.auth-card-preview{background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:10px;padding:14px 16px;font-size:13px;line-height:1.55}.auth-card-preview strong{color:var(--text-primary)}.wizard-page{background:var(--bg-base);min-height:100dvh;padding:32px 16px;padding-top:max(32px, env(safe-area-inset-top,0));padding-bottom:max(32px, env(safe-area-inset-bottom,0));justify-content:center;align-items:center;display:flex}.wizard-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;gap:0;width:100%;max-width:560px;display:flex}.wizard-stepper{border-bottom:1px solid var(--border-subtle);justify-content:center;align-items:flex-start;gap:0;padding:28px 32px 24px;list-style:none;display:flex}.wizard-step-item{flex-direction:column;flex:1;align-items:center;max-width:120px;display:flex;position:relative}.wizard-step-line{background:var(--border-default);height:1px;transition:background .4s cubic-bezier(.16,1,.3,1);position:absolute;top:14px;left:-50%;right:50%}.wizard-step-item:first-child .wizard-step-line{display:none}.wizard-step-line.passed{background:var(--accent-dim)}.wizard-step-dot{z-index:1;border-radius:var(--radius-full);background:var(--bg-elevated);border:1px solid var(--border-default);width:28px;height:28px;color:var(--text-tertiary);justify-content:center;align-items:center;font-size:12px;font-weight:600;transition:background .3s cubic-bezier(.16,1,.3,1),border-color .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.wizard-step-dot.pending{background:var(--bg-elevated);border:1px solid var(--border-default);color:var(--text-tertiary)}.wizard-step-dot.active{border:2px solid var(--accent);color:var(--accent);box-shadow:0 0 0 4px var(--accent-subtle);background:0 0}.wizard-step-dot.done{background:var(--accent);border-color:var(--accent);color:#fff}.wizard-step-label{color:var(--text-tertiary);text-align:center;white-space:nowrap;margin-top:8px;font-size:11px;font-weight:500}.wizard-sr-status{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wizard-panels-wrap{width:100%}.wizard-panel{flex-direction:column;flex-shrink:0;gap:20px;width:100%;padding:32px;display:flex}.wizard-panel-header{flex-direction:column;gap:6px;display:flex}.wizard-panel-header h2{letter-spacing:-.01em;color:var(--text-primary);margin:0;font-size:1.45rem;font-weight:700}.wizard-panel-header p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.55}.wizard-google-badge{border-radius:var(--radius-full);background:var(--bg-elevated);border:1px solid var(--border-default);color:var(--text-secondary);align-items:center;gap:6px;width:fit-content;margin-bottom:4px;padding:4px 10px;font-size:12px;display:inline-flex}.wizard-optional{color:var(--text-tertiary);font-size:11px;font-weight:400}.auth-input.wizard-input-no-icon{padding-left:14px}.wizard-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2 4l4 4 4-4' stroke='rgba(240,240,245,0.28)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px!important}.wizard-select option{color:var(--text-primary);background:#1a1a2e}.wizard-textarea{resize:vertical;min-height:88px;line-height:1.55;height:auto!important;padding:12px 14px!important}.wizard-chips{border:0;flex-wrap:wrap;gap:8px;min-inline-size:0;margin:0;padding:0;display:flex}.wizard-chips-legend{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wizard-chip{border-radius:var(--radius-full);border:1px solid var(--border-default);color:var(--text-secondary);cursor:pointer;background:0 0;align-items:center;padding:7px 14px;font-family:inherit;font-size:13px;font-weight:500;line-height:1;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.wizard-chip:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.wizard-chip.selected{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent)}.wizard-chip:focus-visible{box-shadow:0 0 0 3px var(--accent-subtle);outline:none}.wizard-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.wizard-actions--split{justify-content:space-between}.wizard-actions .auth-btn{width:auto;min-width:120px}@media (width<=640px){.wizard-page{align-items:flex-start;padding:0}.wizard-card{-webkit-backdrop-filter:none;backdrop-filter:none;border-top:none;border-left:none;border-right:none;border-radius:0;max-width:100%;min-height:100dvh}.wizard-stepper{padding:20px 24px 16px}.wizard-step-label{display:none}.wizard-panel{gap:18px;padding:24px 20px}.wizard-panel-header h2{font-size:1.25rem}.wizard-panel .auth-input{height:48px;font-size:16px}.wizard-panel .wizard-textarea{font-size:16px;height:auto!important}.wizard-actions,.wizard-actions--split{flex-direction:column-reverse;gap:10px}.wizard-actions .auth-btn{width:100%;min-width:0;height:48px;font-size:15px}}.onboarding-schedule .auth-form-wrap{overflow-y:auto}.onboarding-form{width:100%;max-width:520px}.onboarding-bullets{gap:14px;margin:32px 0 0;padding:0;list-style:none;display:grid}.onboarding-bullets li{align-items:flex-start;gap:12px;display:flex}.onboarding-bullet-icon{color:#a78bfa;background:#a78bfa26;border-radius:99px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-weight:700;display:inline-flex}.onboarding-bullet-text{flex-direction:column;gap:2px;display:flex}.onboarding-bullet-text>span{opacity:.75;font-size:14px}.onboarding-loading,.onboarding-empty{text-align:center;color:#ffffffb3;background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;padding:24px 16px;font-size:14px}.onboarding-days{flex-direction:column;gap:18px;max-height:380px;margin-bottom:8px;padding-right:4px;display:flex;overflow-y:auto}.onboarding-day{flex-direction:column;gap:8px;display:flex}.onboarding-day-label{text-transform:uppercase;letter-spacing:.06em;color:#ffffff8c;font-size:11px;font-weight:600}.onboarding-slots{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;display:grid}.onboarding-slot{appearance:none;color:#ffffffeb;cursor:pointer;text-align:center;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:10px;padding:10px 8px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s,transform 50ms}.onboarding-slot:hover:not(:disabled){background:#a78bfa1f;border-color:#a78bfa59}.onboarding-slot:focus-visible{outline-offset:2px;outline:2px solid #a78bfa}.onboarding-slot.selected{color:#fff;background:#a78bfa38;border-color:#a78bfa;box-shadow:inset 0 0 0 1px #a78bfa}.onboarding-slot:disabled{opacity:.5;cursor:not-allowed}@media (width<=640px){.onboarding-slots{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px}.onboarding-slot{padding:8px 6px;font-size:12px}.onboarding-days{max-height:320px}}.account-grid{grid-template-columns:1fr;gap:16px;padding:8px 0 32px;display:grid}@media (width>=768px){.account-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}.account-card{background:var(--bg-card,#ffffff0a);border:1px solid var(--border,#ffffff14);border-radius:14px;flex-direction:column;min-width:0;padding:20px;display:flex}.account-card-full{grid-column:1/-1}.account-card-header{align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.account-card-icon{background:color-mix(in srgb, var(--accent-primary,#8b5cf6) 14%, transparent);width:36px;height:36px;color:var(--accent-primary,#8b5cf6);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.account-card-title-wrap{flex-direction:column;gap:2px;min-width:0;display:flex}.account-card-title{color:var(--text-primary,#fff);margin:0;font-size:15px;font-weight:600}.account-card-subtitle{color:var(--text-muted,#888);margin:0;font-size:12px}.account-card-body{flex-direction:column;gap:14px;display:flex}.account-field{flex-direction:column;gap:4px;display:flex}.account-field-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#888);font-size:11px;font-weight:500}.account-field-value{color:var(--text-primary,#fff);align-items:center;gap:6px;font-size:14px;display:inline-flex}.account-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;display:grid}@media (width<=480px){.account-grid-2{grid-template-columns:1fr}}.account-grid-2-tight{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.account-profile-head{align-items:center;gap:14px;padding-bottom:4px;display:flex}.account-avatar{object-fit:cover;border:2px solid var(--border,#ffffff14);border-radius:50%;flex-shrink:0;width:56px;height:56px}.account-avatar-fallback{background:var(--bg-elevated,#ffffff0f);color:var(--text-secondary,#aaa);justify-content:center;align-items:center;font-size:18px;font-weight:600;display:flex}.account-profile-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.account-profile-meta strong{color:var(--text-primary,#fff);font-size:16px}.account-badges{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.account-badge{letter-spacing:.02em;white-space:nowrap;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.account-badge-ok{color:#4ade80;background:#22c55e2e}.account-badge-warn{color:#fbbf24;background:#f59e0b2e}.account-badge-danger{color:#f87171;background:#ef44442e}.account-badge-muted{background:var(--bg-elevated,#ffffff0f);color:var(--text-secondary,#aaa)}.account-form{flex-direction:column;gap:12px;display:flex}.account-input-wrap{flex-direction:column;gap:6px;display:flex}.account-input-label{color:var(--text-secondary,#aaa);font-size:12px;font-weight:500}.account-input{background:var(--bg-input,#0000004d);border:1px solid var(--border,#ffffff14);width:100%;color:var(--text-primary,#fff);border-radius:8px;padding:10px 12px;font-size:14px;transition:border-color .15s,background .15s}.account-input:focus{border-color:var(--accent-primary,#8b5cf6);background:var(--bg-elevated,#ffffff0a);outline:none}.account-input-pw{position:relative}.account-input-pw .account-input{padding-right:40px}.account-input-pw-toggle{cursor:pointer;color:var(--text-muted,#888);background:0 0;border:none;border-radius:6px;padding:6px;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.account-input-pw-toggle:hover{color:var(--text-primary,#fff);background:var(--bg-hover,#ffffff0f)}.account-btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:14px;font-weight:500;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.account-btn:disabled{opacity:.5;cursor:not-allowed}.account-btn.primary{background:var(--accent-primary,#8b5cf6);color:#fff}.account-btn.primary:not(:disabled):hover{background:color-mix(in srgb, var(--accent-primary,#8b5cf6) 88%, white 12%)}.account-btn.ghost{color:var(--text-secondary,#aaa);border-color:var(--border,#ffffff1f);background:0 0}.account-btn.ghost:hover{background:var(--bg-hover,#ffffff0f);color:var(--text-primary,#fff)}.account-btn.danger{color:#fff;background:#ef4444}.account-btn.danger:not(:disabled):hover{background:#dc2626}.account-btn.danger-ghost{color:#f87171;background:0 0;border-color:#ef444459}.account-btn.danger-ghost:hover{background:#ef444424}.account-actions{flex-wrap:wrap;gap:8px;display:flex}.account-alert{border-radius:8px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:13px;line-height:1.4;display:flex}.account-alert-ok{color:#86efac;background:#22c55e24;border:1px solid #22c55e4d}.account-alert-err{color:#fca5a5;background:#ef444424;border:1px solid #ef44444d}.account-hint{color:var(--text-muted,#888);margin:0;font-size:12px;line-height:1.4}.account-text-muted{color:var(--text-muted,#888);font-size:13px;line-height:1.5}.account-divider{background:var(--border,#ffffff14);height:1px;margin:4px 0}.account-code{background:var(--bg-elevated,#ffffff0f);border-radius:4px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.account-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:4px;display:grid}@media (width<=600px){.account-totals{grid-template-columns:1fr}}.account-total{border:1px solid var(--border,#ffffff14);background:var(--bg-elevated,#ffffff0a);border-radius:10px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.account-total-warn{border-color:#f59e0b40}.account-total-danger{border-color:#ef444440}.account-total-ok{border-color:#22c55e40}.account-total-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#888);font-size:11px}.account-total-value{color:var(--text-primary,#fff);font-size:18px;font-weight:600}.account-total-count{color:var(--text-muted,#888);font-size:11px}.account-empty{text-align:center;color:var(--text-muted,#888);background:var(--bg-elevated,#ffffff08);border-radius:8px;padding:24px;font-size:13px}.account-table-wrap{margin:0 -4px;padding:0 4px;overflow-x:auto}.account-table{border-collapse:collapse;width:100%;font-size:13px}.account-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#888);border-bottom:1px solid var(--border,#ffffff14);padding:8px 10px;font-size:11px;font-weight:500}.account-table td{border-bottom:1px solid var(--border,#ffffff0f);color:var(--text-primary,#fff);vertical-align:middle;padding:12px 10px}.account-table tbody tr:last-child td{border-bottom:none}.account-payment-desc{font-weight:500}.account-payment-meta{color:var(--text-muted,#888);margin-top:2px;font-size:11px}@media (width>=600px){.account-payment-meta{display:none}}.account-payment-amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}@media (width<=599px){.account-th-hide-mobile,td.account-th-hide-mobile{display:none}}.account-integrations-list{flex-direction:column;gap:16px;display:flex}.account-integration-item{background:var(--bg-elevated,#ffffff0a);border:1px solid var(--border,#ffffff14);border-radius:10px;flex-direction:column;gap:8px;padding:16px;display:flex}.account-integration-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.account-integration-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.account-integration-name{color:var(--text-primary,#fff);font-size:14px;font-weight:600}.account-integration-desc{color:var(--text-muted,#888);font-size:12px;line-height:1.4}.account-integration-link{color:var(--accent-primary,#8b5cf6);text-decoration:none;transition:opacity .15s}.account-integration-link:hover{opacity:.8;text-decoration:underline}.account-integration-status-wrap{flex-shrink:0;align-items:center;gap:8px;display:flex}.account-integration-meta{color:var(--text-muted,#888);font-size:12px}.tokens-page{flex-direction:column;gap:24px;max-width:900px;min-height:100%;margin:0 auto;padding:28px 32px;display:flex}.tokens-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.tokens-page-heading{flex-direction:column;gap:6px;display:flex}.tokens-page-title{color:var(--text-primary);font-size:22px;font-weight:700;line-height:1.2}.tokens-page-subtitle{color:var(--text-secondary);max-width:560px;font-size:13.5px;line-height:1.55}.token-error-banner{border-radius:var(--radius-sm);color:#fca5a5;background:#ef444414;border:1px solid #ef444440;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:13.5px;display:flex}.token-error-retry{color:#fca5a5;cursor:pointer;background:0 0;border:1px solid #ef444466;border-radius:6px;flex-shrink:0;padding:4px 10px;font-size:12px;font-weight:500;transition:background .15s}.token-error-retry:hover{background:#ef44441f}.tokens-table-wrap{background:var(--bg-surface,#0e0e14b3);border:1px solid var(--border-default);border-radius:var(--radius-md);overflow:hidden}.tokens-table{border-collapse:collapse;width:100%;font-size:13.5px}.tokens-table thead tr{background:var(--bg-elevated,#161620cc);border-bottom:1px solid var(--border-default)}.tokens-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);text-align:left;white-space:nowrap;padding:10px 16px;font-size:11px;font-weight:600}.tokens-table th:last-child{text-align:right}.tokens-row{border-bottom:1px solid var(--border-subtle);transition:background .1s}.tokens-row:last-child{border-bottom:none}.tokens-row:hover{background:var(--bg-hover,#20202e99)}.tokens-td{color:var(--text-primary);vertical-align:middle;padding:12px 16px}.tokens-td-name{font-weight:500}.tokens-td-date{color:var(--text-secondary);font-family:var(--font-mono);font-size:12.5px}.tokens-td-action{text-align:right}.tokens-never{color:var(--text-tertiary);font-style:italic}.token-prefix{font-family:var(--font-mono);color:var(--accent);background:var(--accent-subtle);border-radius:4px;padding:2px 6px;font-size:12.5px}.tokens-empty{padding:0!important}.tokens-empty-inner{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;display:flex}.tokens-empty-icon{background:var(--bg-elevated);border:1px solid var(--border-default);width:52px;height:52px;color:var(--text-tertiary);border-radius:14px;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.tokens-empty-text{color:var(--text-primary);margin:0;font-size:15px;font-weight:600}.tokens-empty-hint{color:var(--text-secondary);margin:0 0 16px;font-size:13.5px}.token-row-skeleton td{padding:14px 16px}.token-skeleton-cell{background:linear-gradient(90deg, var(--bg-elevated) 0%, var(--bg-hover) 40%, var(--bg-elevated) 100%);background-size:200% 100%;border-radius:4px;height:14px;animation:1.4s ease-in-out infinite skeletonPulse}.token-skeleton-name{width:140px}.token-skeleton-prefix{width:120px}.token-skeleton-date{width:60px}.token-skeleton-btn{border-radius:6px;width:64px;height:28px;margin-left:auto}@keyframes skeletonPulse{0%{background-position:200% 0}to{background-position:-200% 0}}.token-btn{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:13.5px;font-weight:600;text-decoration:none;transition:background .14s,border-color .14s,color .14s,transform .12s,box-shadow .18s,opacity .14s;display:inline-flex}.token-btn:disabled{opacity:.5;cursor:not-allowed}.token-btn-primary{color:#fff;background:linear-gradient(135deg,#8b5cf6,#a855f7)}.token-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px -6px #8b5cf680}.token-btn-primary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.token-btn-ghost{color:var(--text-secondary);background:0 0;border-color:#ffffff14}.token-btn-ghost:hover:not(:disabled){color:var(--text-primary);background:#ffffff0a}.token-btn-revoke{color:#f87171;background:0 0;border-color:#ef44444d;padding:5px 12px;font-size:12px}.token-btn-revoke:hover:not(:disabled){background:#ef444414;border-color:#ef444480}.token-btn-revoke:focus-visible{outline-offset:2px;outline:2px solid #ef4444}.token-btn-copy{background:var(--bg-elevated);border-color:var(--border-default);color:var(--text-secondary);flex-shrink:0;padding:6px 12px;font-size:12.5px;font-weight:500}.token-btn-copy:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.token-btn-copy:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.token-btn-copy-snippet{align-self:flex-start}.token-overlay{-webkit-backdrop-filter:blur(8px);z-index:300;background:#000000d9;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.token-modal{background:var(--bg-surface,#121221);border:1px solid #8b5cf633;border-radius:18px;flex-direction:column;width:100%;max-width:480px;animation:.2s panelSlideIn;display:flex;overflow:hidden;box-shadow:0 24px 60px -15px #0009,0 0 0 1px #ffffff08}.token-modal-wide{max-width:580px}.token-modal-revoke{max-width:440px;padding:28px 28px 22px}.token-modal-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 24px 0;display:flex}.token-modal-title{color:var(--text-primary);margin:0;font-size:17px;font-weight:700;line-height:1.2}.token-modal-desc{color:var(--text-secondary);margin:4px 0 0;font-size:13.5px;line-height:1.5}.token-modal-close{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 4px;font-size:24px;line-height:1;transition:color .15s}.token-modal-close:hover{color:var(--text-primary)}.token-modal-close:focus-visible{outline:2px solid var(--accent);border-radius:4px}.token-modal-body{flex-direction:column;gap:18px;padding:20px 24px 0;display:flex}.token-modal-footer{justify-content:flex-end;gap:8px;padding:20px 24px 22px;display:flex}.token-field{flex-direction:column;gap:6px;display:flex}.token-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:12.5px;font-weight:600}.token-input{background:var(--bg-elevated,#161620cc);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);width:100%;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.token-input::placeholder{color:var(--text-tertiary)}.token-input:focus,.token-input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.token-field-error{color:#f87171;font-size:12.5px}.token-hint{color:var(--text-tertiary);margin:0;font-size:12px;line-height:1.5}.token-inline-code{font-family:var(--font-mono);background:var(--accent-subtle);color:var(--accent);border-radius:3px;padding:1px 5px;font-size:11.5px}.token-copy-row{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:8px 12px;display:flex;overflow:hidden}.token-value{font-family:var(--font-mono);color:var(--accent);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:13px;overflow:hidden}.token-snippet-wrap{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);position:relative;overflow:hidden}.token-snippet{font-family:var(--font-mono);color:var(--text-secondary);white-space:pre;margin:0;padding:14px 16px;font-size:12px;line-height:1.6;overflow-x:auto}.token-btn-copy-snippet{position:absolute;top:10px;right:10px}.token-warning-banner{border-radius:var(--radius-sm);color:#fbbf24;background:#f59e0b14;border:1px solid #f59e0b47;align-items:flex-start;gap:10px;padding:12px 14px;font-size:13.5px;line-height:1.5;display:flex}.token-warning-banner svg{flex-shrink:0;margin-top:1px}.token-warning-banner strong{color:#fcd34d}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=640px){.tokens-page{gap:16px;padding:16px}.tokens-page-header{flex-direction:column;align-items:stretch}.tokens-page-header .token-btn-primary{align-self:flex-start}.tokens-table-wrap{overflow-x:auto}.tokens-table{min-width:480px}.token-modal{border-radius:12px}.token-modal-header{padding:18px 18px 0}.token-modal-body{padding:16px 18px 0}.token-modal-footer{padding:16px 18px 18px}}@media (prefers-reduced-motion:reduce){.token-overlay,.token-modal,.token-btn,.token-skeleton-cell{transition-duration:.01ms!important;animation:none!important}}.app{z-index:1;height:100%;display:flex;position:relative;overflow-x:hidden}.sidebar{background:var(--bg-glass);-webkit-backdrop-filter:blur(24px)saturate(1.2);border-right:1px solid var(--border-subtle);flex-direction:column;width:280px;min-width:280px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.sidebar:after{content:"";pointer-events:none;background:linear-gradient(#0000 5%,#8b5cf626 30%,#22d3ee14 60%,#0000 95%);width:1px;position:absolute;top:0;bottom:0;right:-1px}.sidebar-collapsed{width:60px;min-width:60px}.sidebar-toggle{color:var(--text-tertiary);cursor:pointer;text-align:center;background:0 0;border:none;padding:14px 0;font-size:16px;transition:all .2s}.sidebar-toggle:hover{color:var(--accent);text-shadow:0 0 12px var(--accent-glow)}.sidebar-collapsed-icons{flex-direction:column;flex:1;align-items:center;gap:4px;padding:4px 8px;display:flex;overflow-y:auto}.collapsed-agent{background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;width:40px;height:40px;color:var(--text-primary);justify-content:center;align-items:center;font-size:16px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.collapsed-agent:hover{background:var(--bg-hover);border-color:var(--border-glow);box-shadow:var(--shadow-glow);transform:scale(1.1)}.collapsed-more{color:var(--text-tertiary);font-size:10px;font-family:var(--font-mono);margin-top:4px}.sidebar-tenant{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:14px 14px 12px;display:flex}.sidebar-tenant-dot{background:var(--accent,#8b5cf6);border-radius:9999px;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #8b5cf62e}.sidebar-tenant-info{flex-direction:column;min-width:0;display:flex}.sidebar-tenant-name{color:var(--text-primary,#f0f0f5);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-tenant-plan{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted,#f0f0f580);font-size:10px}.sidebar-blocked{color:#fca5a5;background:#ef44441a;border-bottom:1px solid #ef44444d;flex-direction:column;gap:2px;padding:10px 14px;font-size:11px;display:flex}.sidebar-blocked strong{color:#fca5a5;font-size:12px}.sidebar-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:16px 14px 12px;display:flex}.sidebar-brand{align-items:center;gap:10px;display:flex}.sidebar-logo{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border-default);flex-shrink:0;width:32px;height:32px;display:block}.sidebar-brand h2{color:var(--text-primary);letter-spacing:-.3px;margin:0;font-size:13px;font-weight:600}.sidebar-count{color:var(--text-tertiary);font-size:10.5px;font-family:var(--font-mono)}.sidebar-actions{gap:4px;display:flex}.icon-btn{color:var(--text-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.icon-btn:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--border-glow);box-shadow:0 0 12px #8b5cf614}.sidebar-search{padding:8px 12px;position:relative}.search-icon{color:var(--text-tertiary);pointer-events:none;transition:color .2s;position:absolute;top:50%;left:22px;transform:translateY(-50%)}.sidebar-search:focus-within .search-icon{color:var(--accent)}.search-input{width:100%;color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:12.5px;font-family:var(--font-sans);background:#ffffff08;outline:none;padding:8px 28px 8px 34px;transition:all .25s}.search-input:focus{border-color:var(--accent);background:#8b5cf60a;box-shadow:0 0 0 3px #8b5cf60f,0 0 20px #8b5cf60a}.search-input::placeholder{color:var(--text-tertiary)}.search-clear{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:16px;line-height:1;transition:color .15s;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.search-clear:hover{color:var(--rose)}.agent-list-wrapper{flex:1;padding:2px 0;overflow-y:auto}.sidebar-draft-item{border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:calc(100% - 12px);color:inherit;background:linear-gradient(135deg,#8b5cf61f,#22d3ee0f);border:1px solid #8b5cf652;align-items:center;gap:10px;margin:6px 6px 8px;padding:8px 10px;font-family:inherit;transition:all .18s;display:flex;position:relative}.sidebar-draft-item:hover{border-color:var(--accent);background:linear-gradient(135deg,#8b5cf633,#22d3ee1a);box-shadow:0 0 16px #8b5cf62e}.sidebar-draft-emoji{border-radius:var(--radius-sm);border:1px solid var(--border-glow);background:#ffffff0f;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.sidebar-draft-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.sidebar-draft-label{color:var(--accent-hover);text-transform:uppercase;letter-spacing:.6px;font-size:9.5px;font-weight:700;line-height:1.2}.sidebar-draft-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:500;line-height:1.3;overflow:hidden}.sidebar-draft-pulse{color:var(--accent);flex-shrink:0;font-size:7px;animation:1.6s ease-in-out infinite draftPulse}@keyframes draftPulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.sidebar-draft-pulse{animation:none}}.agent-list{margin:0;padding:0 6px;list-style:none}.agent-list li{margin-bottom:1px}.agent-item{border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:7px 10px;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.agent-item:hover{border-color:var(--border-subtle);background:#ffffff08}.agent-item:active{transform:scale(.97)}.agent-emoji{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:#ffffff08;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;transition:all .25s;display:flex}.agent-item:hover .agent-emoji{border-color:var(--border-glow);background:#8b5cf60f;transform:scale(1.05);box-shadow:0 0 14px #8b5cf61a}.agent-info{flex-direction:column;flex:1;gap:0;min-width:0;display:flex}.agent-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;line-height:1.3;overflow:hidden}.agent-slug{color:var(--text-tertiary);font-size:10px;font-family:var(--font-mono);letter-spacing:-.3px;line-height:1.3}.agent-status-dot{opacity:.7;flex-shrink:0;font-size:8px;transition:opacity .2s}.agent-item:hover .agent-status-dot{opacity:1}.panel-header-meta{align-items:center;gap:8px;display:flex}.panel-status-badge{font-size:11px;font-weight:500}.sidebar-loading{flex-direction:column;gap:6px;padding:10px 12px;display:flex}.loading-skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#ffffff05 25%,#ffffff0d 50%,#ffffff05 75%) 0 0/200% 100%;height:40px;animation:2s ease-in-out infinite shimmer}.sidebar-empty{text-align:center;color:var(--text-tertiary);padding:32px 16px;font-size:13px}.sidebar-footer{border-top:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:10px;font-family:var(--font-mono);letter-spacing:.3px;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;display:flex}.sidebar-user{flex-direction:column;gap:1px;min-width:0;display:flex}.sidebar-user-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;overflow:hidden}.sidebar-user-role{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;font-size:9px}.sidebar-footer-actions{flex-shrink:0;gap:4px;display:flex}.main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.header{border-bottom:1px solid var(--border-subtle);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px)saturate(1.3);z-index:10;align-items:center;gap:12px;padding:14px 28px;display:flex;position:relative}.header:after{content:"";background:linear-gradient(90deg,#0000 5%,#8b5cf61f 25%,#22d3ee0f 50%,#8b5cf614 75%,#0000 95%);height:1px;position:absolute;bottom:-1px;left:0;right:0}.header h1{letter-spacing:-.4px;background:linear-gradient(135deg, var(--text-primary) 30%, var(--accent-hover) 70%, var(--cyan));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:15px;font-weight:700}.header-subtitle{color:var(--text-tertiary);border-radius:var(--radius-full);border:1px solid var(--border-default);letter-spacing:.5px;text-transform:uppercase;background:#ffffff08;padding:3px 10px;font-size:10.5px;font-weight:500}.header-tenant{border-radius:var(--radius-full);background:linear-gradient(135deg,#8b5cf614,#22d3ee0a);border:1px solid #8b5cf62e;align-items:center;gap:8px;max-width:240px;padding:4px 12px;display:inline-flex}.header-tenant-dot{background:var(--accent,#8b5cf6);border-radius:9999px;flex:none;width:7px;height:7px;box-shadow:0 0 0 3px #8b5cf62e}.header-tenant-name{color:var(--text-primary);letter-spacing:-.1px;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.main-body{flex:1;display:flex;overflow:hidden}.chat-wrapper{flex-direction:column;flex:1;min-width:0;display:flex;container:chat/inline-size}.chat-area{scroll-behavior:smooth;flex-direction:column;flex:1;gap:16px;padding:28px 32px 20px;display:flex;overflow:hidden auto}.chat-area:before{content:"";margin-top:auto}.resume-banner{z-index:5;-webkit-backdrop-filter:blur(20px)saturate(1.3);color:var(--text-secondary,#c0c0d0);background:#14161af5;border-bottom:1px solid #a78bfa38;align-items:center;gap:12px;margin:-28px -32px 8px;padding:12px 32px;font-size:13px;display:flex;position:sticky;top:-28px;box-shadow:0 2px 8px #00000059}.resume-banner-text{flex:1}.resume-banner-discard{color:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:6px;padding:4px 10px;font-size:12px;transition:background .15s,border-color .15s}.resume-banner-discard:hover{background:#ffffff0f;border-color:#ffffff40}@media (width<=640px){.resume-banner{margin:-14px -14px 6px;padding:10px 14px;font-size:12.5px;top:-14px}}.empty-state{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;animation:1s fadeIn;display:flex}.empty-icon{border-radius:var(--radius-xl);background:radial-gradient(circle at 40% 40%,#8b5cf61f,#22d3ee0a 60%,#0000);border:1px solid #8b5cf61a;justify-content:center;align-items:center;width:96px;height:96px;margin-bottom:28px;font-size:36px;display:flex;position:relative;box-shadow:0 0 40px #8b5cf614,0 0 80px #8b5cf60a,inset 0 1px #ffffff0a}.empty-icon:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;background:conic-gradient(#0000,#8b5cf633,#22d3ee1a,#0000,#8b5cf626,#0000);padding:2px;animation:6s linear infinite rotateBorder;position:absolute;inset:-2px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.empty-state h2{letter-spacing:-.8px;background:linear-gradient(135deg, var(--text-primary) 20%, var(--accent) 60%, var(--cyan) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 8px;font-size:26px;font-weight:800}.empty-state>p{color:var(--text-secondary);margin:0 0 36px;font-size:15px;font-weight:300}.empty-suggestions{text-align:left;background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);border:1px solid var(--border-default);box-shadow:var(--shadow-lg), inset 0 1px 0 #ffffff08;width:100%;max-width:400px;padding:18px 14px}.empty-suggestions>span{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:8px;padding:0 8px;font-size:10px;font-weight:700;display:block}.empty-suggestions ul{margin:0;padding:0;list-style:none}.empty-suggestions li button{text-align:left;width:100%;color:var(--text-secondary);font-size:13px;font-family:var(--font-mono);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:10px 12px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.empty-suggestions li button:before{content:"›";color:var(--accent);opacity:0;flex-shrink:0;font-size:16px;font-weight:700;transition:all .2s;transform:translate(-6px)}.empty-suggestions li button:hover{color:var(--text-primary);background:#8b5cf60d;border-color:#8b5cf61a;padding-left:8px}.empty-suggestions li button:hover:before{opacity:1;transform:translate(0)}.message{gap:6px;max-width:780px;animation:.4s cubic-bezier(.16,1,.3,1) messageIn;display:flex}.message-user{flex-direction:row-reverse;align-self:flex-end}.message-assistant{align-self:flex-start}.message-avatar{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-top:2px;font-size:14px;display:flex;position:relative}.avatar-user{background:linear-gradient(135deg,#6366f1,#8b5cf6);box-shadow:0 2px 12px #6366f140}.avatar-assistant{background:linear-gradient(135deg, var(--accent-dim), #a855f7, #c084fc);box-shadow:0 2px 12px #8b5cf64d}.avatar-assistant:after{content:"";border-radius:inherit;z-index:-1;opacity:.6;background:conic-gradient(#0000 60%,#8b5cf64d,#0000 100%);animation:4s linear infinite rotateBorder;position:absolute;inset:-1px}.message-content{border-radius:var(--radius-lg);overflow-wrap:anywhere;width:max-content;min-width:0;max-width:100%;padding:10px 14px 6px;font-size:14px;line-height:1.7}.message-assistant .message-content{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-default);color:var(--text-primary);box-shadow:var(--shadow-sm), inset 0 1px 0 #ffffff08;max-width:680px}.message-user .message-content{background:linear-gradient(135deg, #6366f1, var(--accent), #a855f7);color:#fff;border:none;max-width:500px;box-shadow:0 4px 20px #6366f133,0 8px 40px #8b5cf61a}.message-bubble-wrapper{flex-direction:column;min-width:0;max-width:100%;display:flex}.message-timestamp{font-size:10px;font-family:var(--font-mono);text-align:right;opacity:.75;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:.2px;min-width:max-content;margin-top:4px;line-height:1;display:block}.message-assistant .message-timestamp{color:var(--text-tertiary)}.message-user .message-timestamp{color:#ffffffd9}.message-footer{justify-content:flex-end;align-items:center;gap:6px;margin-top:4px;display:flex}.message-footer .message-timestamp{margin-top:0}.message-copy-btn{width:22px;height:22px;color:var(--text-tertiary);cursor:pointer;opacity:0;background:0 0;border:1px solid #0000;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;transition:opacity .15s,color .15s,background .15s,border-color .15s;display:inline-flex}.message:hover .message-copy-btn,.message-copy-btn:focus-visible{opacity:1}.message-copy-btn:hover{color:var(--text-primary);background:var(--bg-glass);border-color:var(--border-default)}.message-copy-btn.is-copied{opacity:1;color:var(--accent)}.message-copy-btn-user{color:#fff}.message-copy-btn-user:hover{color:#fff;background:#ffffff1f;border-color:#fff3}.message-copy-btn-user.is-copied{color:#fff}@media (hover:none){.message-copy-btn{opacity:.6}}.typing-indicator{align-items:center;gap:5px;padding:6px 2px;display:flex}.typing-indicator span{background:var(--accent);width:7px;height:7px;box-shadow:0 0 8px var(--accent-glow);border-radius:50%;animation:1.4s ease-in-out infinite typingBounce}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}.typing-indicator-with-steps{margin-top:6px}.message-steps{color:var(--text-muted);border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default);flex-direction:column;margin:6px 0 8px;padding:0;font-size:13px;line-height:1.4;list-style:none;display:flex}.message-step{border-top:1px solid var(--border-default);align-items:center;gap:8px;padding:6px 0;display:flex}.message-step:first-child{border-top:0}.message-step-marker{flex-shrink:0;justify-content:center;align-items:center;width:14px;font-size:12px;display:inline-flex}.message-step-running .message-step-marker{color:var(--accent);animation:1.4s ease-in-out infinite stepPulse}.message-step-done .message-step-marker{color:var(--text-muted);opacity:.7}.message-step-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@keyframes stepPulse{0%,to{opacity:.5}50%{opacity:1}}.message-steps-summary{margin:0 0 8px}.message-steps-summary.is-running{margin:6px 0 8px}.message-steps-header{align-items:center;gap:10px;min-height:20px;display:flex}.message-steps-active{color:var(--text-muted);flex:1;align-items:center;gap:8px;min-width:0;font-size:13px;line-height:1.4;display:inline-flex}.message-steps-active-label{white-space:nowrap;text-overflow:ellipsis;animation:.28s ease-out stepLabelSwap;overflow:hidden}.message-step-marker-running{color:var(--accent);animation:1.4s ease-in-out infinite stepPulse}@keyframes stepLabelSwap{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.message-steps-toggle{color:var(--text-muted);cursor:pointer;opacity:.75;background:0 0;border:0;align-items:center;gap:6px;padding:2px 0;font-family:inherit;font-size:12px;transition:opacity .15s;display:inline-flex}.message-steps-toggle:hover{opacity:1;color:var(--text-default)}.message-steps-toggle-icon{width:10px;font-size:10px;display:inline-block}.message-steps-collapsed{opacity:.85;margin-top:6px}.message-content p{margin:0 0 8px}.message-content p:last-child{margin-bottom:0}.message-content pre{border:1px solid var(--border-default);border-radius:var(--radius-md);min-width:0;max-width:100%;font-size:12.5px;font-family:var(--font-mono);-webkit-backdrop-filter:blur(8px);background:#0006;margin:10px 0;padding:14px 16px;line-height:1.55;overflow-x:auto}.message-content code{color:var(--accent-hover);border-radius:var(--radius-xs);font-size:12.5px;font-family:var(--font-mono);overflow-wrap:anywhere;background:#8b5cf61a;border:1px solid #8b5cf614;padding:2px 6px}.message-user .message-content code{color:#fff;background:#ffffff26;border-color:#ffffff1a}.message-content pre code{color:var(--text-primary);overflow-wrap:normal;background:0 0;border:none;padding:0}.message-codeblock{position:relative}.message-codeblock>pre{margin:10px 0}.message-codeblock-copy{border:1px solid var(--border-default);height:24px;color:var(--text-secondary);font-size:11px;font-family:var(--font-sans,inherit);cursor:pointer;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(6px);background:#0000008c;border-radius:6px;align-items:center;gap:5px;padding:0 8px;font-weight:500;transition:opacity .15s,color .15s,background .15s,border-color .15s;display:inline-flex;position:absolute;top:16px;right:12px}.message-codeblock:hover .message-codeblock-copy,.message-codeblock-copy:focus-visible,.message-codeblock-copy.is-copied{opacity:1;pointer-events:auto}.message-codeblock-copy:hover{color:var(--text-primary);border-color:var(--accent);background:#000000bf}.message-codeblock-copy.is-copied{opacity:1;color:var(--accent);border-color:var(--accent)}.message-codeblock-copy-label{line-height:1}@media (hover:none){.message-codeblock-copy{opacity:.75}}.message-content ul,.message-content ol{margin:6px 0;padding-left:20px}.message-content li{margin:3px 0}.message-content h1,.message-content h2,.message-content h3{letter-spacing:-.3px;margin:16px 0 6px;font-weight:700}.message-content h1{font-size:17px}.message-content h2{font-size:15px}.message-content h3{background:linear-gradient(90deg, var(--accent-hover), var(--cyan));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:14px}.message-content table{border-collapse:collapse;width:100%;min-width:0;max-width:100%;margin:10px 0;font-size:12.5px;display:block;overflow-x:auto}.message-content th,.message-content td{border:1px solid var(--border-default);text-align:left;padding:7px 12px}.message-content th{color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;background:#ffffff08;font-size:11px;font-weight:600}.message-content strong{color:var(--text-primary);font-weight:600}.message-content a{color:var(--accent-hover);text-decoration:none;transition:color .15s}.message-content a:hover{color:var(--cyan);text-decoration:underline}.message-content img{border-radius:var(--radius-md);max-width:100%;height:auto;margin:8px 0;display:block}.message-attachments{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.message-attachments:last-child{margin-bottom:0}.message-attachments-images{flex-direction:column;gap:6px;display:flex}.message-attachments-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.message-attachments-files{flex-direction:column;gap:6px;display:flex}.message-attachment-image{cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;padding:0;line-height:0;transition:opacity .15s,box-shadow .15s;display:inline-block;overflow:hidden}.message-attachment-image:hover{opacity:.9;box-shadow:0 0 0 2px var(--accent)}.message-attachment-image:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.message-attachment-img{object-fit:cover;border-radius:var(--radius-md);width:100%;max-width:280px;height:auto;max-height:280px;display:block}.message-attachment-file{border-radius:var(--radius-md);background:#ffffff1a;border:1px solid #ffffff2e;align-items:center;gap:8px;max-width:280px;padding:6px 10px;display:inline-flex;overflow:hidden}.message-attachment-file-icon{font-size:10px;font-weight:700;font-family:var(--font-mono);letter-spacing:.03em;border-radius:var(--radius-xs);color:#ffffffe6;text-transform:uppercase;background:#ffffff26;flex-shrink:0;padding:2px 5px}.message-attachment-file-info{flex-direction:column;gap:1px;min-width:0;display:flex}.message-attachment-file-name{color:#fffffff2;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.message-attachment-file-size{color:#fff9;font-size:11px;font-family:var(--font-mono)}.message-attachments-audios{flex-direction:column;gap:6px;display:flex}.message-attachment-audio{border-radius:var(--radius-md);background:#ffffff14;border:1px solid #ffffff26;align-items:center;gap:10px;max-width:360px;padding:6px 8px;display:flex}.message-attachment-audio-player{flex:1;min-width:0;height:32px}.message-attachment-audio-size{color:#fff9;font-size:11px;font-family:var(--font-mono);flex-shrink:0}.message-attachment-audio-unavailable{color:#ffffff8c;flex:1;font-size:12px;font-style:italic}@media (width<=640px){.message-attachment-img{max-width:200px;max-height:200px}.message-attachments-grid{grid-template-columns:1fr 1fr;gap:4px}.message-attachments-grid .message-attachment-img{max-width:140px;max-height:140px}}.doc-attachment-list{flex-direction:column;gap:8px;margin-top:10px;display:flex}.doc-attachment-chip{border-radius:var(--radius-md);background:#8b5cf60f;border:1px solid #8b5cf62e;align-items:center;gap:10px;max-width:380px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.doc-attachment-chip:hover{background:#8b5cf61a;border-color:#8b5cf64d}.doc-attachment-chip-expired{opacity:.55;background:#ffffff08;border-color:#ffffff14}.doc-attachment-chip-expired:hover{background:#ffffff08;border-color:#ffffff14}.doc-attachment-chip-icon{font-size:10px;font-weight:700;font-family:var(--font-mono);letter-spacing:.03em;text-transform:uppercase;border-radius:var(--radius-xs);color:var(--accent-hover);background:#8b5cf633;flex-shrink:0;padding:3px 6px}.doc-attachment-chip-expired .doc-attachment-chip-icon{color:var(--text-tertiary);background:#ffffff14}.doc-attachment-chip-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.doc-attachment-chip-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.doc-attachment-chip-meta{color:var(--text-secondary);font-size:11px;font-family:var(--font-mono)}.doc-attachment-chip-expiry{color:#8b5cf6cc;white-space:nowrap;border-radius:var(--radius-full);background:#8b5cf614;border:1px solid #8b5cf61f;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:500}.doc-attachment-chip-expiry-expired{color:var(--text-tertiary);background:0 0;border-color:#ffffff0f}.doc-attachment-chip-btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);white-space:nowrap;cursor:pointer;outline-offset:2px;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:6px 14px;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s,box-shadow .15s;display:inline-flex}.doc-attachment-chip-btn:hover{background:var(--accent-hover);box-shadow:0 0 12px var(--accent-glow);color:#fff;text-decoration:none}.doc-attachment-chip-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.doc-attachment-chip-btn-disabled{color:var(--text-tertiary);cursor:not-allowed;border-radius:var(--radius-sm);background:#ffffff12;border:1px solid #ffffff0f;padding:6px 14px;font-size:12px;font-weight:500}.doc-attachment-chip-btn-disabled:hover{box-shadow:none;background:#ffffff12}@media (width<=640px){.doc-attachment-chip{max-width:100%}}.tools-indicator{border-radius:var(--radius-full);color:var(--accent-hover);font-size:12px;font-weight:500;font-family:var(--font-mono);letter-spacing:-.2px;background:#8b5cf60f;border:1px solid #8b5cf61a;align-self:flex-start;align-items:center;gap:8px;margin-top:-14px;margin-left:38px;padding:7px 16px;animation:.3s fadeIn;display:inline-flex;position:relative;overflow:hidden}.tools-indicator:before{content:"";background:linear-gradient(90deg,#0000,#8b5cf60f,#0000);animation:2s ease-in-out infinite toolShimmer;position:absolute;inset:0}.input-area{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px)saturate(1.2);border-top:1px solid var(--border-subtle);flex-direction:column;gap:0;padding:8px 28px 20px;display:flex;position:relative}.input-area:before{content:"";background:linear-gradient(to top, var(--bg-base), transparent);pointer-events:none;height:32px;position:absolute;top:-32px;left:0;right:0}.input-textarea{color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:14px;font-family:var(--font-sans);resize:none;background:#ffffff05;outline:none;flex:1;min-height:24px;max-height:160px;padding:12px 16px;line-height:1.5;transition:all .25s cubic-bezier(.4,0,.2,1)}.input-textarea:focus{border-color:var(--accent);background:#8b5cf608;box-shadow:0 0 0 3px #8b5cf60f,0 0 30px #8b5cf60a}.input-textarea::placeholder{color:var(--text-tertiary)}.input-textarea:disabled{opacity:.5;cursor:not-allowed}.send-btn{background:linear-gradient(135deg, var(--accent-dim), var(--accent), #a855f7);color:#fff;border-radius:var(--radius-md);font-size:13px;font-weight:600;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;letter-spacing:.2px;border:none;padding:12px 22px;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 2px 12px #8b5cf633}.send-btn:before{content:"";opacity:0;background:linear-gradient(135deg,#0000 30%,#ffffff1f 50%,#0000 70%);transition:opacity .3s;position:absolute;inset:0}.send-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px #8b5cf659,0 0 48px #8b5cf61f}.send-btn:hover:not(:disabled):before{opacity:1}.send-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #8b5cf633}.send-btn:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-active);color:var(--text-primary);box-shadow:none}.cancel-btn{color:var(--text-secondary);border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:13px;font-weight:600;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;letter-spacing:.2px;background:0 0;padding:12px 22px;transition:all .2s cubic-bezier(.4,0,.2,1)}.cancel-btn:hover{color:var(--rose);background:#f43f5e14;border-color:#f43f5e4d;box-shadow:0 0 12px #f43f5e1a}.cancel-btn:active{transform:translateY(1px)}.input-row{align-items:flex-end;gap:10px;width:100%;display:flex}.input-area-drag-active{box-shadow:0 0 0 2px #8b5cf633;border-color:var(--accent)!important}.input-drop-overlay{z-index:10;border:2px dashed var(--accent);border-radius:var(--radius-md);pointer-events:none;background:#0e0e14e0;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.input-drop-label{color:var(--accent-hover);letter-spacing:.3px;font-size:14px;font-weight:600}.attach-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.attach-btn:hover:not(:disabled){color:var(--accent-hover);border-color:var(--border-glow);background:var(--accent-subtle)}.attach-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.attach-btn:disabled{opacity:.35;cursor:not-allowed}.attach-file-input{display:none}.mic-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;transition:color .15s,border-color .15s,background .15s;display:flex}.mic-btn:hover:not(:disabled){color:var(--accent-hover);border-color:var(--border-glow);background:var(--accent-subtle)}.mic-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mic-btn:disabled{opacity:.35;cursor:not-allowed}.mic-btn-active,.mic-btn-active:hover:not(:disabled){color:var(--accent);border-color:var(--accent);background:var(--accent-subtle);animation:1.4s ease-in-out infinite mic-pulse}@keyframes mic-pulse{0%,to{box-shadow:0 0 0 2px var(--accent-subtle)}50%{box-shadow:0 0 0 5px var(--accent-subtle)}}@media (prefers-reduced-motion:reduce){.mic-btn-active{animation:none}}.input-row-recording{align-items:center;padding:4px 0}.voice-recording-indicator{flex:1;align-items:center;gap:10px;min-width:0;padding:0 12px;display:flex}.voice-recording-dot{background:#ef4444;border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:1.2s ease-in-out infinite voice-pulse}@keyframes voice-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.voice-recording-label{color:var(--text-primary);font-size:13px;font-weight:500}.voice-recording-timer{font-family:var(--font-mono);color:var(--text-secondary);margin-left:auto;font-size:13px}.voice-cancel-btn,.voice-stop-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;transition:color .15s,border-color .15s,background .15s;display:flex}.voice-cancel-btn{color:var(--text-secondary)}.voice-cancel-btn:hover{color:#ef4444;background:#ef444414;border-color:#ef44448c}.voice-stop-btn{color:var(--accent);border-color:var(--border-glow);background:var(--accent-subtle)}.voice-stop-btn:hover{background:var(--accent);color:#fff}.voice-cancel-btn:focus-visible,.voice-stop-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.input-voice-error{border-radius:var(--radius-sm);color:#fecaca;background:#ef44441a;border:1px solid #ef444459;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:8px 12px;font-size:12.5px;display:flex}.input-voice-error-dismiss{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:0;padding:0 4px;font-size:18px;line-height:1}.input-voice-error-dismiss:hover{opacity:1}@media (width<=640px){.mic-btn,.voice-cancel-btn,.voice-stop-btn{width:34px;min-width:34px;height:34px}}@media (prefers-reduced-motion:reduce){.voice-recording-dot{animation:none}.mic-btn,.voice-cancel-btn,.voice-stop-btn{transition:none}}.attachment-chip-list{flex-wrap:wrap;gap:6px;margin:0;padding:8px 0 4px;list-style:none;display:flex}.attachment-chip{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);align-items:center;gap:6px;max-width:220px;padding:4px 6px 4px 4px;transition:border-color .15s;display:flex;position:relative}.attachment-chip-error{background:#ef44440f;border-color:#ef444480}.attachment-chip-preview{background:#ffffff0a;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex;overflow:hidden}.attachment-chip-thumb{object-fit:cover;width:32px;height:32px;display:block}.attachment-chip-icon{font-size:9px;font-weight:700;font-family:var(--font-mono);color:var(--text-tertiary);letter-spacing:.5px;line-height:1}.attachment-chip-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.attachment-chip-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;font-weight:500;line-height:1.3;overflow:hidden}.attachment-chip-size{color:var(--text-tertiary);font-size:10px;line-height:1.2;font-family:var(--font-mono)}.attachment-chip-error-msg{color:#ef4444;white-space:nowrap;text-overflow:ellipsis;font-size:10px;line-height:1.2;overflow:hidden}.attachment-chip-remove{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;padding:0;font-size:14px;line-height:1;transition:all .15s;display:flex}.attachment-chip-remove:hover{color:#ef4444;background:#ef444426}.attachment-chip-remove:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (width<=640px){.input-row{gap:8px}.attach-btn{width:34px;min-width:34px;height:34px}.attachment-chip{max-width:160px}}@media (prefers-reduced-motion:reduce){.attachment-chip,.attach-btn,.attachment-chip-remove{transition:none}.input-drop-overlay,.typing-indicator span{animation:none}}@keyframes messageIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes typingBounce{0%,80%,to{opacity:.3;transform:scale(.7)}40%{opacity:1;transform:scale(1)}}@keyframes rotateBorder{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes toolShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.agent-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(24px)saturate(1.2);border-left:1px solid var(--border-subtle);flex-direction:column;animation:.3s cubic-bezier(.16,1,.3,1) panelSlideIn;display:flex;position:relative;overflow:hidden}.panel-resize-handle{cursor:col-resize;z-index:10;width:8px;height:100%;position:absolute;top:0;left:-4px}.panel-resize-handle:after{content:"";background:#ffffff1a;border-radius:2px;width:2px;height:40px;transition:background .15s,height .15s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.panel-resize-handle:hover:after{background:var(--accent);height:60px}.panel-resize-handle:active:after{background:var(--accent);height:100%}.agent-panel:before{content:"";pointer-events:none;background:linear-gradient(#0000 5%,#8b5cf61f 40%,#22d3ee0f 70%,#0000 95%);width:1px;position:absolute;top:0;bottom:0;left:-1px}.panel-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.panel-agent-info{align-items:center;gap:10px;display:flex}.panel-emoji{border-radius:var(--radius-md);border:1px solid var(--border-default);background:linear-gradient(135deg,#8b5cf61a,#22d3ee0d);justify-content:center;align-items:center;width:40px;height:40px;font-size:22px;display:flex}.panel-agent-info h3{color:var(--text-primary);letter-spacing:-.2px;margin:0;font-size:14px;font-weight:600}.panel-slug{color:var(--text-tertiary);font-size:11px;font-family:var(--font-mono)}.panel-actions{gap:6px;display:flex}.panel-btn{border-radius:var(--radius-sm);font-size:12px;font-weight:500;font-family:var(--font-sans);cursor:pointer;border:1px solid var(--border-default);padding:6px 12px;transition:all .2s}.panel-btn-chat{background:var(--accent-subtle);color:var(--accent-hover);border-color:#8b5cf626}.panel-btn-chat:hover{background:#8b5cf61f;box-shadow:0 0 12px #8b5cf61a}.panel-btn-close{color:var(--text-tertiary);background:0 0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:14px;display:flex}.panel-btn-close:hover{color:var(--rose);background:#f43f5e14;border-color:#f43f5e26}.panel-btn-delete{color:var(--text-tertiary);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:flex}.panel-btn-delete:hover:not(:disabled){color:var(--rose);background:#f43f5e14;border-color:#f43f5e26}.panel-btn-delete:disabled{cursor:wait;opacity:.6}.panel-quick-actions{border-bottom:1px solid var(--border-subtle);gap:6px;padding:10px 12px;display:flex}.quick-action{border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;text-align:left;font-family:var(--font-sans);color:inherit;background:#ffffff05;flex:1;align-items:center;gap:8px;padding:8px 10px;transition:all .2s;display:flex}.quick-action:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.quick-action:hover:not(:disabled){background:var(--accent-subtle);border-color:var(--border-glow);box-shadow:0 0 12px #8b5cf60f}.quick-action-maintenance:hover{background:#f43f5e0d;border-color:#f43f5e26;box-shadow:0 0 12px #f43f5e0f}.quick-action-activate:hover:not(:disabled){background:#22c55e0f;border-color:#22c55e40;box-shadow:0 0 12px #22c55e14}.quick-action-pause:hover:not(:disabled){background:#f59e0b0f;border-color:#f59e0b40;box-shadow:0 0 12px #f59e0b14}.quick-action-icon{flex-shrink:0;font-size:16px}.quick-action-title{color:var(--text-primary);font-size:12px;font-weight:600;line-height:1.2;display:block}.quick-action-desc{color:var(--text-tertiary);font-size:10px;line-height:1.3;display:block}.panel-meta{border-bottom:1px solid var(--border-subtle);background:var(--border-subtle);grid-template-columns:repeat(4,1fr);gap:1px;padding:0;display:grid}.agent-error-banner{color:var(--text-primary);background:#ef444414;border-top:1px solid #ef444440;border-bottom:1px solid #ef444459;gap:10px;padding:12px 14px;display:flex}.agent-error-banner-icon{font-size:18px;line-height:1.2}.agent-error-banner-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.agent-error-banner-title{text-transform:uppercase;letter-spacing:.6px;color:#fca5a5;font-size:12px;font-weight:700}.agent-error-banner-message{font-family:var(--font-mono);color:var(--text-primary);white-space:pre-wrap;word-break:break-word;background:#00000040;border:1px solid #ef444433;border-radius:6px;max-height:160px;margin:0;padding:8px 10px;font-size:11px;line-height:1.45;overflow-y:auto}.agent-error-banner-meta{color:var(--text-tertiary);font-size:11px}.agent-error-banner-action-error{color:#fca5a5;font-size:11px}.agent-error-banner-actions{flex-wrap:wrap;gap:8px;margin-top:2px;display:flex}.agent-error-banner-btn{border:1px solid var(--border-subtle);background:var(--bg-glass);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:background .15s,border-color .15s,opacity .15s}.agent-error-banner-btn:hover:not(:disabled){background:#ffffff0f}.agent-error-banner-btn:disabled{opacity:.5;cursor:not-allowed}.agent-error-banner-btn-primary{color:#fff;background:#dc2626;border-color:#dc2626}.agent-error-banner-btn-primary:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.meta-item{background:var(--bg-glass);flex-direction:column;gap:1px;min-width:0;padding:8px 12px;display:flex}.meta-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.8px;font-size:9px;font-weight:700}.meta-value{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;overflow:hidden}.meta-value.mono{font-family:var(--font-mono);font-size:11px}.panel-files-bar{border-bottom:1px solid var(--border-subtle);background:#00000014;padding:8px 12px;display:block}.panel-files-bar:after{content:"";clear:both;display:block}.panel-tabs{border-bottom:none;min-width:0;padding:0;display:block}.panel-tab{font-size:12px;font-weight:500;font-family:var(--font-sans);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;margin:2px 4px 2px 0;padding:6px 12px;transition:background .14s,color .14s,border-color .14s;display:inline-flex}.panel-tab:hover:not(:disabled){color:var(--text-primary);background:#ffffff0a}.panel-tab-active{background:var(--accent-subtle);color:var(--accent-hover);border-color:#8b5cf638;box-shadow:inset 0 1px #8b5cf614}.panel-tab-missing{opacity:.4}.panel-edit-trigger{font-size:12.5px;font-weight:600;font-family:var(--font-sans);color:var(--accent-hover);background:var(--accent-subtle);cursor:pointer;white-space:nowrap;border:1px solid #8b5cf647;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:7px 14px;transition:background .14s,border-color .14s,transform .12s,box-shadow .18s;display:inline-flex}.panel-edit-trigger:hover{background:#8b5cf62e;border-color:#8b5cf673;transform:translateY(-1px);box-shadow:0 6px 18px -8px #8b5cf680}.panel-edit-trigger:active{transform:translateY(0)}.panel-edit-trigger svg{flex-shrink:0;width:14px;height:14px}.panel-edit-feedback-row{border-bottom:1px solid var(--border-subtle);gap:6px;padding:6px 12px;display:flex}.panel-content{flex:1;padding:16px;position:relative;overflow-y:auto}.panel-edit-trigger-wrap{float:right;margin:0 0 4px 10px;position:relative}.panel-edit-choice{z-index:10;border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(12px);background:#1a1a24;border:1px solid #8b5cf659;flex-direction:column;min-width:260px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 18px 40px -12px #000000b3,0 0 0 1px #0006}.panel-edit-choice-item{border:none;border-bottom:1px solid var(--border-subtle);text-align:left;cursor:pointer;color:var(--text-secondary);background:0 0;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;font-size:12.5px;transition:background .12s,color .12s;display:flex}.panel-edit-choice-item:last-child{border-bottom:none}.panel-edit-choice-item:hover{color:var(--text-primary);background:#8b5cf614}.panel-edit-choice-item strong{color:var(--text-primary);font-weight:600}.panel-edit-choice-item span{color:var(--text-tertiary);font-size:11.5px;line-height:1.4}.panel-loading{flex-direction:column;gap:10px;display:flex}.panel-markdown{color:var(--text-secondary);font-size:13px;line-height:1.7}.panel-markdown h1,.panel-markdown h2,.panel-markdown h3{color:var(--text-primary);margin:14px 0 6px;font-weight:600}.panel-markdown h1{font-size:16px}.panel-markdown h2{font-size:14px}.panel-markdown h3{color:var(--accent-hover);font-size:13px}.panel-markdown p{margin:0 0 8px}.panel-markdown p:last-child{margin:0}.panel-markdown ul,.panel-markdown ol{margin:4px 0;padding-left:18px}.panel-markdown li{margin:2px 0}.panel-markdown code{color:var(--accent-hover);font-size:12px;font-family:var(--font-mono);background:#8b5cf614;border-radius:3px;padding:1px 5px}.panel-markdown pre{border:1px solid var(--border-default);border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-mono);background:#0000004d;margin:8px 0;padding:10px 12px;line-height:1.5;overflow-x:auto}.panel-markdown pre code{color:var(--text-primary);background:0 0;padding:0}.panel-markdown strong{color:var(--text-primary);font-weight:600}.panel-empty{text-align:center;color:var(--text-tertiary);padding:32px;font-size:13px}.panel-edit-toolbar{border-bottom:1px solid var(--border-subtle);color:var(--text-tertiary);background:#0000001f;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 12px;font-size:12px;display:flex}.panel-edit-hint{color:var(--text-tertiary);font-size:12px}.panel-edit-hint strong{color:var(--text-secondary);font-weight:600}.panel-edit-actions{gap:6px;margin-left:auto;display:flex}.panel-edit-btn{border:1px solid var(--border-default);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:4px 10px;font-size:12px;transition:background .12s,color .12s,border-color .12s}.panel-edit-btn:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent-hover);background:#ffffff0a}.panel-edit-btn:disabled{opacity:.5;cursor:not-allowed}.panel-edit-btn-ghost{color:var(--text-tertiary);border-color:#0000}.panel-edit-btn-primary{background:var(--accent-subtle);color:var(--accent-hover);border-color:#8b5cf640}.panel-edit-btn-primary:hover:not(:disabled){background:#8b5cf62e}.panel-edit-feedback{border-radius:var(--radius-sm);margin-left:auto;padding:2px 8px;font-size:11px}.panel-edit-feedback-ok{color:#22c55e;background:#22c55e14}.panel-edit-feedback-err{color:#ef4444;background:#ef444414}.panel-edit-textarea{border:1px solid var(--border-default);border-radius:var(--radius-sm);width:100%;min-height:60vh;color:var(--text-primary);font-family:var(--font-mono);resize:vertical;background:#00000040;outline:none;padding:10px 12px;font-size:12px;line-height:1.55}.panel-edit-textarea:focus{border-color:var(--accent-hover);box-shadow:0 0 0 2px #8b5cf62e}.panel-view-toggle{border-bottom:1px solid var(--border-subtle);background:#00000026;flex-wrap:wrap;gap:4px;padding:6px 10px;display:flex}.view-toggle-btn{min-width:0;font-size:12px;font-weight:500;font-family:var(--font-sans);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;flex:calc(50% - 4px);justify-content:center;align-items:center;gap:6px;padding:6px 10px;transition:all .2s;display:flex}.view-toggle-btn:hover{color:var(--text-primary);background:#ffffff08}.view-toggle-active{background:var(--accent-subtle);color:var(--accent-hover);border-color:#8b5cf61f}.cron-badge{background:var(--accent);color:#fff;border-radius:var(--radius-full);text-align:center;min-width:16px;padding:0 5px;font-size:10px;font-weight:700;line-height:16px}.crons-empty{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:40px 20px;display:flex}.crons-empty-icon{opacity:.4;font-size:32px}.crons-empty p{color:var(--text-tertiary);margin:0;font-size:13px}.crons-create-btn{font-size:12px;font-weight:500;font-family:var(--font-sans);color:var(--accent-hover);background:var(--accent-subtle);border-radius:var(--radius-full);cursor:pointer;border:1px solid #8b5cf61f;margin-top:4px;padding:6px 14px;transition:all .2s}.crons-create-btn:hover{background:#8b5cf61f;box-shadow:0 0 12px #8b5cf614}.crons-list{flex-direction:column;gap:16px;display:flex}.crons-list-header{justify-content:flex-end;display:flex}.crons-add-btn{width:28px;height:28px;font-size:18px;font-weight:500;font-family:var(--font-sans);color:var(--accent-hover);background:var(--accent-subtle);border-radius:var(--radius-full);cursor:pointer;border:1px solid #8b5cf61f;justify-content:center;align-items:center;padding:0;line-height:1;transition:all .2s;display:flex}.crons-add-btn:hover{background:#8b5cf61f;box-shadow:0 0 12px #8b5cf614}.crons-section{flex-direction:column;gap:8px;display:flex}.crons-section-title{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1.2px;margin:0 0 6px;font-size:10px;font-weight:700}.job-card{border:1px solid var(--border-default);border-radius:var(--radius-md);background:#ffffff05;flex-direction:column;gap:6px;padding:10px 12px;transition:border-color .2s;display:flex}.job-active{border-left:2px solid var(--accent)}.job-inactive{opacity:.5}.job-header{align-items:center;gap:6px;display:flex}.job-status{flex-shrink:0;font-size:8px}.job-status-active{color:var(--accent)}.job-status-done{color:var(--text-tertiary)}.job-description{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;font-weight:500;overflow:hidden}.job-type{flex-shrink:0;font-size:12px}.job-details-grid{grid-template-columns:1fr 1fr;gap:6px 12px;display:grid}.job-detail{align-items:center;gap:6px;min-width:0;display:flex}.job-detail-full{grid-column:1/-1}.job-detail .job-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.job-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;min-width:60px;font-size:10px;font-weight:600}.job-value{color:var(--text-secondary);font-size:12px}.job-cron{font-size:12px;font-family:var(--font-mono);color:var(--accent-hover);border-radius:var(--radius-xs);background:#8b5cf614;border:1px solid #8b5cf614;padding:1px 6px}.job-id{font-size:11px;font-family:var(--font-mono);color:var(--text-tertiary);letter-spacing:.02em}.job-copy-btn{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:10px;font-weight:500;line-height:1;transition:color .15s}.job-copy-btn:hover{color:var(--text-secondary)}.job-prompt{color:var(--text-tertiary);font-size:11px;line-height:1.4;font-family:var(--font-mono);border-top:1px solid var(--border-subtle);padding-top:4px}.job-actions{align-items:stretch;gap:6px;margin-top:8px;display:flex}.job-run-btn{color:var(--accent-hover);border-radius:var(--radius-sm);cursor:pointer;background:#8b5cf614;border:1px solid #8b5cf626;flex:1;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s}.job-run-btn:hover:not(:disabled){background:#8b5cf626;border-color:#8b5cf64d}.job-run-btn:disabled{opacity:.5;cursor:not-allowed}.job-delete-btn{color:#ef4444d9;border-radius:var(--radius-sm);cursor:pointer;background:#ef44440f;border:1px solid #ef44442e;padding:6px 10px;font-size:12px;line-height:1;transition:all .15s}.job-delete-btn:hover:not(:disabled){color:#ef4444;background:#ef444424;border-color:#ef444459}.job-delete-btn:disabled{opacity:.5;cursor:not-allowed}@keyframes panelSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.login-page{background:var(--bg-base);min-height:100dvh;padding:20px;padding-top:max(20px, env(safe-area-inset-top,0));padding-bottom:max(20px, env(safe-area-inset-bottom,0));justify-content:center;align-items:center;display:flex}.login-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-lg);padding:32px}.login-header{text-align:center;margin-bottom:24px}.login-header h1{color:var(--text-primary);margin-bottom:4px;font-size:22px;font-weight:700}.login-header p{color:var(--text-tertiary);font-size:13px}.login-google-badge{border:1px solid var(--border-default);color:var(--text-secondary);background:#ffffff0a;border-radius:999px;align-items:center;gap:6px;margin-top:12px;padding:4px 10px;font-size:12px;display:inline-flex}.login-tabs{background:var(--bg-elevated);border-radius:var(--radius-sm);gap:4px;margin-bottom:20px;padding:3px;display:flex}.login-tab{color:var(--text-tertiary);border-radius:var(--radius-xs);cursor:pointer;background:0 0;border:none;flex:1;padding:8px 4px;font-size:12px;font-weight:500;transition:all .2s}.login-tab:hover{color:var(--text-secondary)}.login-tab.active{background:var(--accent-subtle);color:var(--accent);box-shadow:var(--shadow-sm)}.login-form{flex-direction:column;gap:14px;display:flex}.login-label{color:var(--text-secondary);flex-direction:column;gap:5px;font-size:12px;font-weight:500;display:flex}.login-input{font-size:14px;font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);outline:none;padding:10px 12px;transition:border-color .2s}.login-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.login-input::placeholder{color:var(--text-tertiary)}.login-btn{font-size:14px;font-weight:600;font-family:var(--font-sans);border:1px solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:10px 16px;text-decoration:none;transition:all .2s;display:flex}.login-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.login-btn.primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-glow)}.login-btn.primary:disabled{opacity:.6;cursor:not-allowed}.login-btn.secondary{background:var(--bg-elevated);color:var(--text-secondary)}.login-btn.secondary:hover{background:var(--bg-hover)}.login-btn.oauth{background:var(--bg-elevated);color:var(--text-primary)}.login-btn.oauth:hover{background:var(--bg-hover);border-color:var(--border-strong)}.login-btn.oauth svg{flex-shrink:0}.login-error{color:#f87171;border-radius:var(--radius-sm);background:#ef44441a;border:1px solid #ef444433;margin-bottom:16px;padding:10px 14px;font-size:13px}.login-success{color:#4ade80;border-radius:var(--radius-sm);background:#22c55e1a;border:1px solid #22c55e33;margin-bottom:16px;padding:10px 14px;font-size:13px}.login-hint{color:var(--text-tertiary);text-align:center;margin:0;font-size:12px}.login-footer{text-align:center;color:var(--text-tertiary);border-top:1px solid var(--border-subtle);margin-top:20px;padding-top:16px;font-size:12px}.login-divider{color:var(--text-tertiary);align-items:center;gap:12px;margin:16px 0;font-size:12px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.admin-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#000000d9;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.admin-panel{background:var(--bg-surface,#1a1a2e);border:1px solid var(--border-default);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:800px;max-height:80vh;padding:24px;animation:.2s panelSlideIn;display:flex;overflow:hidden;box-shadow:0 25px 50px #00000080}.admin-panel-top{flex-shrink:0}.admin-panel-body{flex:1;min-height:0;margin-right:-8px;padding-right:8px;overflow-y:auto}.admin-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.admin-header h2{color:var(--text-primary);font-size:18px;font-weight:700}.admin-close{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:24px;line-height:1;transition:color .2s}.admin-close:hover{color:var(--text-primary)}.admin-tabs{border-bottom:1px solid var(--border-subtle);align-items:center;gap:4px;margin-bottom:16px;padding-bottom:12px;display:flex}.admin-tab{color:var(--text-tertiary);border-radius:var(--radius-xs);cursor:pointer;background:0 0;border:none;padding:6px 14px;font-size:13px;font-weight:500;transition:all .2s}.admin-tab:hover{color:var(--text-secondary)}.admin-tab.active{color:var(--accent);background:var(--accent-subtle)}.admin-subtabs{background:var(--bg-elevated);border-radius:var(--radius-sm);align-items:center;gap:4px;margin-bottom:14px;padding:4px;display:flex}.admin-subtab{color:var(--text-tertiary);border-radius:var(--radius-xs);cursor:pointer;background:0 0;border:none;padding:5px 12px;font-size:12px;font-weight:500;transition:all .15s}.admin-subtab:hover{color:var(--text-secondary)}.admin-subtab.active{color:var(--text-primary);background:var(--bg-glass)}.admin-subtabs .admin-invite-cta{margin-left:auto}.admin-invite-form{background:var(--bg-elevated);border-radius:var(--radius-sm);align-items:center;gap:8px;margin-bottom:16px;padding:12px;display:flex}.admin-invite-email{flex:1}.admin-invite-role{width:140px}.admin-invite-submit{padding:8px 16px}.admin-invite-cancel{padding:8px 12px}.admin-invite-cta{margin-left:auto;padding:6px 14px;font-size:13px}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table th{text-align:left;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-subtle);padding:8px 12px;font-size:11px;font-weight:500}.admin-table td{color:var(--text-primary);border-bottom:1px solid var(--border-subtle);padding:10px 12px}.admin-table tr:hover td{background:var(--bg-hover)}.admin-table td.admin-email{color:var(--text-secondary);font-family:var(--font-mono);font-size:12px}.admin-table td.admin-date{color:var(--text-tertiary);font-family:var(--font-mono);font-size:12px}.admin-badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.3px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.admin-badge.admin{color:var(--accent);background:#8b5cf626}.admin-badge.user{color:var(--cyan);background:#22d3ee26}.admin-badge.status-active{color:#4ade80;background:#22c55e26}.admin-badge.status-invited{color:#fbbf24;background:#f59e0b26}.admin-badge.status-disabled{color:#f87171;background:#ef44441a}.admin-actions{align-items:center;gap:6px;display:flex}.admin-action-btn{color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-xs);cursor:pointer;padding:4px 10px;font-size:11px;font-weight:500;transition:all .15s}.admin-action-btn:hover{background:var(--bg-hover);border-color:var(--border-strong)}.admin-action-btn.danger{color:#f87171}.admin-action-btn.danger:hover{background:#ef44441a;border-color:#ef44444d}.admin-self{color:var(--text-tertiary);font-size:11px;font-style:italic}.pending-activation-banner{color:var(--text-primary,#e4e4e7);background:linear-gradient(90deg,#8b5cf624,#d946ef1a);border-bottom:1px solid #8b5cf640;justify-content:space-between;align-items:center;gap:16px;padding:10px 20px;font-size:13px;display:flex}.pending-activation-banner span{flex:1;line-height:1.5}.pending-activation-cta{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#8b5cf6,#a855f7);border:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600;transition:transform .12s,box-shadow .2s}.pending-activation-cta:hover{transform:translateY(-1px);box-shadow:0 8px 20px -6px #8b5cf680}.activation-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:200;background:#000000c7;justify-content:center;align-items:center;padding:24px;animation:.18s fadeIn;display:flex;position:fixed;inset:0}.activation-panel{background:var(--bg-surface,#121221);text-align:center;border:1px solid #8b5cf640;border-radius:20px;width:100%;max-width:480px;padding:40px 36px 32px;animation:.22s panelSlideIn;position:relative;box-shadow:0 25px 60px -15px #8b5cf659}.activation-close{color:var(--text-tertiary,#71717a);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px 10px;font-size:26px;line-height:1;position:absolute;top:12px;right:14px}.activation-close:hover{color:var(--text-primary,#e4e4e7);background:#ffffff0d}.activation-icon{color:#fff;background:linear-gradient(135deg,#8b5cf6,#a855f7 55%,#d946ef);border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;display:flex;box-shadow:0 14px 40px -10px #8b5cf699}.activation-title{color:var(--text-primary,#e4e4e7);margin:0 0 12px;font-size:22px;font-weight:700}.activation-copy{color:var(--text-secondary,#a1a1aa);margin:0 0 28px;font-size:15px;line-height:1.55}.activation-actions{flex-direction:column;gap:10px;display:flex}.activation-btn-primary{color:#fff;background:linear-gradient(135deg,#8b5cf6,#a855f7);border-radius:12px;padding:13px 22px;font-size:15px;font-weight:600;text-decoration:none;transition:transform .12s,box-shadow .2s;display:inline-block}.activation-btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 30px -8px #8b5cf68c}.activation-btn-secondary{color:var(--text-secondary,#a1a1aa);cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:12px;padding:12px 22px;font-size:14px;font-weight:500;transition:background .15s,color .15s}.activation-btn-secondary:hover{color:var(--text-primary,#e4e4e7);background:#ffffff0a}.activation-footer{color:var(--text-tertiary,#71717a);margin:20px 0 0;font-size:12px}.confirm-panel{text-align:left;max-width:440px;padding:28px 28px 22px}.confirm-panel-danger{border-color:#ef444447;box-shadow:0 25px 60px -15px #ef444447}.confirm-icon{color:#fff;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin:0 0 16px;display:flex}.confirm-icon-default{background:linear-gradient(135deg,#8b5cf6,#a855f7);box-shadow:0 8px 22px -8px #8b5cf68c}.confirm-icon-danger{background:linear-gradient(135deg,#ef4444,#f97316);box-shadow:0 8px 22px -8px #ef44448c}.confirm-title{color:var(--text-primary,#e4e4e7);margin:0 0 8px;font-size:17px;font-weight:600;line-height:1.35}.confirm-message{color:var(--text-secondary,#a1a1aa);white-space:pre-wrap;margin:0 0 22px;font-size:14px;line-height:1.55}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}.confirm-btn{cursor:pointer;border:1px solid #0000;border-radius:10px;padding:10px 18px;font-family:inherit;font-size:13.5px;font-weight:600;transition:background .14s,border-color .14s,color .14s,transform .12s,box-shadow .18s}.confirm-btn:disabled{opacity:.55;cursor:not-allowed}.confirm-btn-ghost{color:var(--text-secondary,#a1a1aa);background:0 0;border-color:#ffffff14}.confirm-btn-ghost:hover:not(:disabled){color:var(--text-primary,#e4e4e7);background:#ffffff0a}.confirm-btn-primary{color:#fff;background:linear-gradient(135deg,#8b5cf6,#a855f7)}.confirm-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 30px -8px #8b5cf68c}.confirm-btn-danger{color:#fff;background:linear-gradient(135deg,#ef4444,#f97316)}.confirm-btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 30px -8px #ef44448c}@media (width<=480px){.confirm-actions{flex-direction:column-reverse}.confirm-btn{width:100%}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.agent-panel,.header,.input-area,.sidebar,.empty-suggestions,.message-assistant .message-content{background:var(--bg-base)}}.mobile-menu-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .18s;display:none}.mobile-menu-btn:hover{background:var(--accent-subtle);border-color:var(--border-glow);color:var(--accent)}.mobile-menu-btn svg{width:18px;height:18px}.header-new-chat-btn{background:var(--accent-subtle);border-radius:var(--radius-sm);width:36px;height:36px;color:var(--accent-hover);cursor:pointer;border:1px solid #8b5cf62e;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;padding:0;transition:all .18s;display:inline-flex}.header-new-chat-btn:hover{border-color:var(--border-glow);background:#8b5cf629;box-shadow:0 0 12px #8b5cf62e}.header-new-chat-btn svg{width:18px;height:18px}.header-clear-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;margin-right:8px;padding:0;transition:all .18s;display:inline-flex}.header-clear-btn:hover{background:#ef444429;border-color:#ef444499;box-shadow:0 0 12px #ef444438}.header-clear-btn svg{width:18px;height:18px}.header-clear-btn+.header-new-chat-btn{margin-left:0}@media (width<=960px){.sidebar{width:220px;min-width:220px}}@media (width<=1024px){.agent-panel{z-index:95;background:var(--bg-base);-webkit-backdrop-filter:none;border-left:none;height:100dvh;animation:.25s cubic-bezier(.16,1,.3,1) panelSlideIn;position:fixed;inset:0;width:100vw!important;min-width:100vw!important;max-width:100vw!important}.agent-panel:before,.panel-resize-handle{display:none}}@media (width<=640px){.mobile-menu-btn{display:inline-flex}.icon-btn-collapse{display:none}.app>.sidebar{z-index:90;background:var(--bg-base);border-right:1px solid var(--border-default);will-change:transform;width:min(82vw,320px);min-width:0;max-width:320px;height:100dvh;transition:transform .28s cubic-bezier(.4,0,.2,1);position:fixed;inset:0 auto 0 0;transform:translate(-100%);box-shadow:8px 0 32px #0006}.app[data-sidebar-open=true]>.sidebar{transform:translate(0)}.app>.sidebar .sidebar-tenant{padding-top:calc(14px + env(safe-area-inset-top,0))}.sidebar-backdrop{z-index:85;cursor:pointer;appearance:none;background:#0000008c;border:none;margin:0;padding:0;animation:.18s ease-out fadeIn;position:fixed;inset:0}.header{gap:6px 8px;padding:10px 12px}.header h1{text-overflow:ellipsis;white-space:nowrap;flex:100%;min-width:0;font-size:14px;line-height:1.25;overflow:hidden}.header-subtitle{display:none}.header-tenant{max-width:60%;margin-left:0;padding:3px 10px}.header-tenant-name{font-size:11px}.pending-activation-banner{flex-direction:column;align-items:stretch;gap:8px;padding:10px 14px;font-size:12px}.pending-activation-cta{align-self:stretch}.main-body,.chat-wrapper{width:100%}.chat-area{gap:10px;padding:14px 14px 8px}.empty-state h2{font-size:22px}.empty-state>p{margin-bottom:24px;font-size:13px}.empty-icon{width:80px;height:80px;margin-bottom:22px;font-size:30px}.empty-suggestions{padding:14px 10px}.message{gap:4px;max-width:100%}.message-content{width:auto;padding:9px 13px 5px;font-size:13.5px}.message-assistant .message-content,.message-user .message-content{max-width:100%}.message-content pre,.message-content table{max-width:100%;overflow-x:auto}.input-area{padding:6px 12px calc(14px + env(safe-area-inset-bottom,0))}.input-row{gap:8px}.send-btn{padding:12px 16px;font-size:12.5px}.message-input,.input-textarea{min-height:44px;font-size:16px}.panel-header{padding:calc(12px + env(safe-area-inset-top,0)) 14px 12px}.panel-agent-info{gap:8px}.panel-agent-info h3{font-size:14px}.panel-emoji{width:36px;height:36px;font-size:20px}.panel-quick-actions{gap:6px;padding:8px 10px}.quick-action{text-align:center;justify-content:center;min-width:0;padding:8px 10px}.quick-action>div{align-items:center;display:flex}.quick-action-title{white-space:nowrap}.quick-action-desc{display:none}.panel-meta{flex-wrap:wrap}.meta-item{min-width:50%;padding:8px 10px}.panel-files-bar{padding:8px 10px}.panel-content{padding:14px 14px calc(20px + env(safe-area-inset-bottom,0))}.admin-overlay,.activation-overlay{padding:max(16px, env(safe-area-inset-top,16px)) max(14px, env(safe-area-inset-right,14px)) max(16px, env(safe-area-inset-bottom,16px)) max(14px, env(safe-area-inset-left,14px))}.admin-panel{border-radius:var(--radius-md);max-width:100%;height:100%;max-height:100%;padding:16px 14px}.admin-header{margin-bottom:14px}.admin-header h2{font-size:16px}.admin-tabs{flex-wrap:wrap;gap:6px;margin-bottom:12px;padding-bottom:10px}.admin-tab{padding:6px 10px;font-size:12.5px}.admin-invite-form>input,.admin-invite-form>select,.admin-invite-form>button{width:100%;font-size:16px}.admin-invite-form{flex-direction:column;align-items:stretch;gap:8px;padding:10px}.admin-table{min-width:480px;font-size:12px}.admin-table th,.admin-table td{padding:8px}.admin-action-btn{min-height:32px;padding:6px 10px}.login-page{padding:16px 14px}.login-card{border-radius:var(--radius-md);padding:22px 18px}.login-input{padding:12px;font-size:16px}.login-btn{padding:13px;font-size:15px}}.install-prompt{color:var(--text-primary,#f5f5f5);background:#15161c;border:1px solid #8b5cf640;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin:8px 28px 0;padding:10px 14px;animation:.22s cubic-bezier(.4,0,.2,1) install-prompt-in;display:flex;box-shadow:0 4px 16px #00000059}@keyframes install-prompt-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.install-prompt-body{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.install-prompt-icon{color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.install-prompt-text{flex-direction:column;gap:2px;min-width:0;display:flex}.install-prompt-text strong{font-size:14px;font-weight:600}.install-prompt-text span{color:var(--text-secondary,#b5b8bf);font-size:12.5px;line-height:1.35}.install-prompt-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.install-prompt-secondary,.install-prompt-primary{cursor:pointer;border:1px solid #0000;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.install-prompt-secondary{color:var(--text-secondary,#b5b8bf);border-color:var(--border-subtle,#ffffff1a);background:0 0}.install-prompt-secondary:hover{color:var(--text-primary,#fff);background:#ffffff0a}.install-prompt-primary{color:#fff;background:#8b5cf6}.install-prompt-primary:hover{background:#7c3aed}@media (width<=480px){.install-prompt{flex-direction:column;align-items:stretch;margin:6px 16px 0;padding:12px}.install-prompt-actions{justify-content:flex-end}}.agent-created-toast{z-index:70;background:var(--bg-glass,#14161af5);-webkit-backdrop-filter:blur(18px)saturate(1.2);color:var(--text-primary,#f5f5f5);border:1px solid #22c55e66;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;animation:.22s cubic-bezier(.4,0,.2,1) install-prompt-in;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 12px 32px #0006}.agent-created-toast-text{flex:1;min-width:0}.agent-created-toast-cta{color:#dcfce7;cursor:pointer;background:#22c55e38;border:1px solid #22c55e8c;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600}.agent-created-toast-cta:hover{color:#fff;background:#22c55e52}.agent-created-toast-close{color:#ffffffd9;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:18px;line-height:1}.agent-created-toast-close:hover{color:var(--text-primary);background:#ffffff0f}@media (width<=480px){.agent-created-toast{bottom:12px;left:12px;right:12px}}.integration-section{flex-direction:column;gap:12px;padding:4px 0;display:flex}.integration-card{background:var(--bg-glass,#1010188c);border:1px solid var(--border-default,#ffffff12);border-radius:var(--radius-md,12px);flex-direction:column;gap:12px;padding:16px;display:flex}.integration-card-header{align-items:center;gap:10px;display:flex}.integration-card-icon{flex-shrink:0;font-size:20px}.integration-card-title-wrap{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.integration-card-title{color:var(--text-primary,#f0f0f5);font-size:14px;font-weight:600}.integration-card-status{font-size:11px;font-weight:500}.integration-badge{white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.integration-badge-ok{color:#4ade80;background:#22c55e2e}.integration-badge-muted{background:var(--bg-elevated,#ffffff0f);color:var(--text-secondary,#f0f0f580)}.integration-alert{border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.4}.integration-alert-warn{color:#fbbf24;background:#f59e0b24;border:1px solid #f59e0b4d}.integration-alert-err{color:#fca5a5;background:#ef444424;border:1px solid #ef44444d}.integration-account-count{text-transform:uppercase;letter-spacing:.04em;color:#ffffff80;margin:8px 0 4px;font-size:11px;font-weight:600}.integration-account-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.integration-account-item{background:#ffffff08;border:1px solid #ffffff12;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;transition:background-color .15s,border-color .15s;display:flex}.integration-account-item:hover{background:#ffffff0d;border-color:#ffffff1f}.integration-account-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.integration-account-email{color:#ffffffeb;word-break:break-all;font-size:13px;font-weight:500}.integration-account-meta{color:#ffffff73;letter-spacing:.02em;font-size:11px}.integration-account-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;align-self:flex-start;margin-top:4px;padding:2px 6px;font-size:10px;display:inline-block}.integration-account-badge-warn{color:#fbbf24;background:#f59e0b2e}.integration-meta{flex-direction:column;gap:2px;display:flex}.integration-meta-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary,#f0f0f547);font-size:11px;font-weight:500}.integration-meta-value{color:var(--text-primary,#f0f0f5);font-size:13px;font-family:var(--font-mono)}.integration-desc{color:var(--text-secondary,#f0f0f580);margin:0;font-size:13px;line-height:1.4}.integration-actions{flex-wrap:wrap;gap:8px;display:flex}.integration-btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;transition:background .15s,opacity .15s;display:inline-flex}.integration-btn:disabled{opacity:.5;cursor:not-allowed}.integration-btn-primary{background:var(--accent,#8b5cf6);color:#fff}.integration-btn-primary:not(:disabled):hover{background:var(--accent-hover,#a78bfa)}.integration-btn-primary:focus-visible{outline:2px solid var(--accent,#8b5cf6);outline-offset:2px}.integration-btn-danger{color:#fca5a5;background:#ef444433;border-color:#ef444459}.integration-btn-danger:not(:disabled):hover{color:#fff;background:#ef44444d}.integration-btn-danger:focus-visible{outline-offset:2px;outline:2px solid #ef4444}.calendar-toast{z-index:70;background:var(--bg-glass,#14161af5);-webkit-backdrop-filter:blur(18px)saturate(1.2);color:var(--text-primary,#f5f5f5);border-radius:12px;align-items:center;gap:10px;max-width:340px;padding:10px 14px;font-size:13px;animation:.22s cubic-bezier(.4,0,.2,1) install-prompt-in;display:flex;position:fixed;bottom:56px;right:16px;box-shadow:0 12px 32px #0006}.calendar-toast-ok{border:1px solid #22c55e66}.calendar-toast-err{border:1px solid #ef444466}.calendar-toast-text{flex:1;min-width:0;line-height:1.4}.calendar-toast-close{color:#ffffffd9;cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;padding:4px 6px;font-size:18px;line-height:1}.calendar-toast-close:hover{color:var(--text-primary);background:#ffffff0f}@media (width<=480px){.calendar-toast{max-width:unset;bottom:12px;left:12px;right:12px}}.marketplace-tab{flex-direction:column;gap:14px;padding:4px 0;display:flex}.marketplace-success{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d;border-radius:8px;padding:10px 14px;font-size:13px}.marketplace-filters{flex-direction:column;gap:8px;display:flex}.marketplace-search{background:var(--bg-glass,#1010188c);border:1px solid var(--border-default,#ffffff12);width:100%;color:var(--text-primary,#f0f0f5);border-radius:8px;outline:none;padding:8px 12px;font-size:13px;transition:border-color .15s}.marketplace-search:focus{border-color:var(--accent,#8b5cf6)}.marketplace-search::placeholder{color:var(--text-tertiary,#f0f0f547)}.marketplace-tags{flex-wrap:wrap;gap:6px;display:flex}.marketplace-tag-chip{background:var(--bg-elevated,#ffffff0f);border:1px solid var(--border-default,#ffffff12);color:var(--text-secondary,#f0f0f580);cursor:pointer;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:500;transition:all .15s}.marketplace-tag-chip:hover{background:color-mix(in srgb, var(--accent,#8b5cf6) 15%, transparent);border-color:color-mix(in srgb, var(--accent,#8b5cf6) 40%, transparent);color:var(--text-primary,#f0f0f5)}.marketplace-tag-chip-active{background:color-mix(in srgb, var(--accent,#8b5cf6) 25%, transparent);border-color:var(--accent,#8b5cf6);color:var(--accent,#8b5cf6)}.marketplace-tag-chip:focus-visible{outline:2px solid var(--accent,#8b5cf6);outline-offset:2px}.marketplace-tag-chip-clear{color:#fca5a5;background:0 0;border-color:#ef444459}.marketplace-tag-chip-clear:hover{color:#fecaca;background:#ef44441f;border-color:#ef44448c}.marketplace-loading{flex-direction:column;gap:10px;display:flex}.marketplace-skeleton-card{background:var(--bg-glass,#1010188c);border:1px solid var(--border-default,#ffffff12);border-radius:10px;align-items:flex-start;gap:12px;padding:14px;display:flex}.marketplace-error{color:#fca5a5;background:#ef44441f;border:1px solid #ef44444d;border-radius:8px;flex-direction:column;gap:10px;padding:16px;font-size:13px;display:flex}.marketplace-error-inline{color:#fca5a5;margin-top:6px;font-size:12px}.marketplace-retry-btn{color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:6px;align-self:flex-start;padding:4px 10px;font-size:12px;transition:opacity .15s}.marketplace-retry-btn:hover{opacity:.75}.marketplace-empty{color:var(--text-secondary,#f0f0f580);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;font-size:14px;display:flex}.marketplace-empty-icon{opacity:.5;font-size:36px}.marketplace-grid{flex-direction:column;gap:8px;display:flex}.marketplace-card{background:var(--bg-glass,#1010188c);border:1px solid var(--border-default,#ffffff12);border-radius:10px;flex-direction:column;gap:8px;padding:14px;transition:border-color .15s;display:flex}.marketplace-card:hover{border-color:color-mix(in srgb, var(--accent,#8b5cf6) 35%, transparent)}.marketplace-card-installed{background:color-mix(in srgb, #22c55e 6%, var(--bg-glass,#1010188c));border-color:#22c55e4d}.marketplace-card-header{align-items:center;gap:10px;display:flex}.marketplace-card-icon{object-fit:contain;border-radius:6px;flex-shrink:0;width:32px;height:32px}.marketplace-card-icon-fallback{background:var(--bg-elevated,#ffffff0f);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.marketplace-card-title-wrap{flex-wrap:wrap;flex:1;align-items:center;gap:6px;min-width:0;display:flex}.marketplace-card-name{color:var(--text-primary,#f0f0f5);font-size:14px;font-weight:600}.marketplace-origin-badge{background:color-mix(in srgb, var(--accent,#8b5cf6) 18%, transparent);border:1px solid color-mix(in srgb, var(--accent,#8b5cf6) 35%, transparent);color:var(--accent,#8b5cf6);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:600}.marketplace-card-desc{color:var(--text-secondary,#f0f0f580);margin:0;font-size:12px;line-height:1.5}.marketplace-card-tags{flex-wrap:wrap;gap:4px;display:flex}.marketplace-card-tag{background:var(--bg-elevated,#ffffff0f);color:var(--text-tertiary,#f0f0f547);border-radius:999px;padding:2px 7px;font-size:10px}.marketplace-install-btn,.marketplace-uninstall-btn{background:var(--accent,#8b5cf6);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;flex-shrink:0;padding:5px 12px;font-size:12px;font-weight:600;transition:background .15s,opacity .15s}.marketplace-install-btn:hover{background:var(--accent-hover,#a78bfa)}.marketplace-install-btn:focus-visible,.marketplace-uninstall-btn:focus-visible{outline:2px solid var(--accent,#8b5cf6);outline-offset:2px}.marketplace-uninstall-btn{color:#fca5a5;background:#ef444433;border:1px solid #ef444459}.marketplace-uninstall-btn:hover{background:#ef444459}.marketplace-uninstall-btn-sm{padding:3px 9px;font-size:11px}.marketplace-installed-section{border-top:1px solid var(--border-default,#ffffff12);margin-top:4px;padding-top:14px}.marketplace-installed-title{color:var(--text-secondary,#f0f0f580);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:600}.marketplace-installed-list{flex-direction:column;gap:6px;display:flex}.marketplace-installed-item{background:var(--bg-elevated,#ffffff0a);border:1px solid var(--border-default,#ffffff0f);border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.marketplace-installed-name{color:var(--text-primary,#f0f0f5);font-family:var(--font-mono,"JetBrains Mono", monospace);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.mcp-modal-overlay{z-index:2000;-webkit-backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.mcp-modal-panel{background:var(--bg-panel,#0e0e16);border:1px solid var(--border-default,#ffffff14);border-radius:14px;flex-direction:column;width:100%;max-width:500px;max-height:90vh;animation:.18s cubic-bezier(.4,0,.2,1) mcp-modal-in;display:flex;overflow:hidden;box-shadow:0 24px 48px #00000080}@keyframes mcp-modal-in{0%{opacity:0;transform:scale(.96)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}.mcp-modal-header{border-bottom:1px solid var(--border-default,#ffffff12);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 14px;display:flex}.mcp-modal-header-left{flex:1;align-items:flex-start;gap:12px;min-width:0;display:flex}.mcp-modal-icon{object-fit:contain;border-radius:8px;flex-shrink:0}.mcp-modal-icon-fallback{background:var(--bg-elevated,#ffffff0f);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.mcp-modal-title{color:var(--text-primary,#f0f0f5);margin:0 0 2px;font-size:15px;font-weight:700}.mcp-modal-subtitle{color:var(--text-secondary,#f0f0f580);margin:0;font-size:12px;line-height:1.4}.mcp-modal-close{color:var(--text-tertiary,#f0f0f547);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:4px 6px;font-size:16px;line-height:1;transition:color .15s,background .15s}.mcp-modal-close:hover{background:var(--bg-elevated,#ffffff0f);color:var(--text-primary,#f0f0f5)}.mcp-modal-close:focus-visible{outline:2px solid var(--accent,#8b5cf6);outline-offset:2px}.mcp-modal-body{flex-direction:column;flex:1;gap:12px;padding:16px 20px;display:flex;overflow-y:auto}.mcp-modal-creds-intro{color:var(--text-secondary,#f0f0f580);margin:0;font-size:13px;line-height:1.5}.mcp-modal-no-creds{color:var(--text-secondary,#f0f0f580);text-align:center;margin:0;padding:12px 0;font-size:13px;line-height:1.5}.mcp-modal-fields{flex-direction:column;gap:14px;display:flex}.mcp-field{flex-direction:column;gap:5px;display:flex}.mcp-field-label{color:var(--text-secondary,#f0f0f580);font-size:12px;font-weight:600}.mcp-field-required{color:#ef4444;margin-left:3px}.mcp-field-input{background:var(--bg-input,#ffffff0d);border:1px solid var(--border-default,#ffffff14);color:var(--text-primary,#f0f0f5);border-radius:8px;outline:none;width:100%;padding:9px 12px;font-size:13px;transition:border-color .15s}.mcp-field-input:focus{border-color:var(--accent,#8b5cf6)}.mcp-field-input::placeholder{color:var(--text-tertiary,#f0f0f547)}.mcp-field-input-error,.mcp-field-input-error:focus{border-color:#ef4444}.mcp-field-error{color:#fca5a5;margin:0;font-size:11px}.mcp-field-hint{color:var(--text-tertiary,#f0f0f547);margin:0;font-size:11px;line-height:1.4}.mcp-modal-error{color:#fca5a5;background:#ef44441f;border:1px solid #ef44444d;border-radius:8px;padding:10px 12px;font-size:13px}.mcp-modal-footer{border-top:1px solid var(--border-default,#ffffff12);justify-content:flex-end;align-items:center;gap:8px;padding:14px 20px;display:flex}.mcp-modal-btn{cursor:pointer;border:1px solid #0000;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;transition:background .15s,opacity .15s}.mcp-modal-btn:disabled{cursor:not-allowed;opacity:.5}.mcp-modal-btn:focus-visible{outline:2px solid var(--accent,#8b5cf6);outline-offset:2px}.mcp-modal-btn-ghost{border-color:var(--border-default,#ffffff12);color:var(--text-secondary,#f0f0f580);background:0 0}.mcp-modal-btn-ghost:not(:disabled):hover{background:var(--bg-elevated,#ffffff0f);color:var(--text-primary,#f0f0f5)}.mcp-modal-btn-primary{background:var(--accent,#8b5cf6);color:#fff}.mcp-modal-btn-primary:not(:disabled):hover{background:var(--accent-hover,#a78bfa)}@media (width<=540px){.mcp-modal-panel{max-width:100%}}.ppt-page{flex-direction:column;gap:16px;max-width:800px;margin:0 auto;padding:24px;display:flex}.ppt-page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ppt-page-title{color:var(--text-primary);margin:0;font-size:20px;font-weight:700}.ppt-page-subtitle{color:var(--text-secondary);margin:4px 0 0;font-size:13px}.ppt-card{background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-md);flex-direction:column;gap:16px;padding:20px;display:flex}.ppt-success-banner{border-radius:var(--radius-sm);color:#4ade80;background:#22c55e24;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:500;display:flex}.ppt-error-banner{border-radius:var(--radius-sm);color:#fca5a5;background:#ef444424;align-items:flex-start;gap:8px;padding:10px 14px;font-size:13px;display:flex}.ppt-warning-banner{border-radius:var(--radius-sm);color:#fbbf24;background:#f59e0b1f;border-left:3px solid #f59e0b;align-items:flex-start;gap:8px;padding:10px 14px;font-size:13px;display:flex}.ppt-warning-banner em{opacity:.9;font-style:italic}.ppt-empty-header{align-items:flex-start;gap:16px;display:flex}.ppt-empty-icon{background:var(--accent-subtle);border-radius:var(--radius-sm);width:52px;min-width:52px;height:52px;color:var(--accent);justify-content:center;align-items:center;display:flex}.ppt-empty-title{color:var(--text-primary);margin:0 0 6px;font-size:15px;font-weight:600}.ppt-empty-desc{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.6}.ppt-empty-desc strong{color:var(--text-primary);font-weight:600}.ppt-dropzone{border:1.5px dashed var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;text-align:center;flex-direction:column;align-items:center;gap:10px;padding:32px 24px;transition:border-color .15s,background .15s;display:flex}.ppt-dropzone:not(.ppt-dropzone-disabled):hover{border-color:var(--accent);background:var(--accent-subtle)}.ppt-dropzone-active{border-color:var(--accent)!important;background:var(--accent-subtle)!important}.ppt-dropzone-disabled{opacity:.5;cursor:not-allowed}.ppt-dropzone-icon{color:var(--text-tertiary);transition:color .15s}.ppt-dropzone-active .ppt-dropzone-icon,.ppt-dropzone:not(.ppt-dropzone-disabled):hover .ppt-dropzone-icon{color:var(--accent)}.ppt-dropzone-hint{color:var(--text-secondary);margin:0;font-size:14px;font-weight:500}.ppt-dropzone-sub,.ppt-dropzone-limit{color:var(--text-tertiary);margin:0;font-size:12px}.ppt-file-input-hidden{opacity:0;clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ppt-error-inline{color:#fca5a5;margin:0;font-size:12px}.ppt-uploading{color:var(--text-secondary);justify-content:center;align-items:center;gap:10px;padding:8px 0;font-size:13px;display:flex}.ppt-spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:var(--radius-full);width:16px;height:16px;animation:.7s linear infinite pptSpin}@keyframes pptSpin{to{transform:rotate(360deg)}}.ppt-btn{border-radius:var(--radius-sm);font-size:13px;font-weight:600;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 16px;transition:background .14s,color .14s,border-color .14s,transform .12s;display:inline-flex}.ppt-btn:disabled{opacity:.5;cursor:not-allowed}.ppt-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ppt-btn-primary{background:var(--accent);color:#fff}.ppt-btn-primary:not(:disabled):hover{background:var(--accent-hover);transform:translateY(-1px)}.ppt-btn-secondary{background:var(--accent-subtle);color:var(--accent-hover);border-color:#8b5cf647}.ppt-btn-secondary:not(:disabled):hover{background:#8b5cf62e;border-color:#8b5cf673;transform:translateY(-1px)}.ppt-btn-ghost{color:var(--text-secondary);border-color:var(--border-default);background:0 0}.ppt-btn-ghost:not(:disabled):hover{background:var(--bg-hover);color:var(--text-primary)}.ppt-btn-sm{padding:6px 12px;font-size:12px}.ppt-btn-cancel{align-self:flex-start}.ppt-active-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ppt-active-title-wrap{flex-direction:column;gap:4px;min-width:0;display:flex}.ppt-active-title{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:16px;font-weight:700;display:flex}.ppt-version-chip{border-radius:var(--radius-full);background:var(--accent-subtle);color:var(--accent-hover);font-size:11px;font-weight:600;font-family:var(--font-mono);border:1px solid #8b5cf633;padding:2px 8px}.ppt-filename{color:var(--text-secondary);font-size:12px;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ppt-section{border-top:1px solid var(--border-subtle);flex-direction:column;gap:10px;padding-top:4px;display:flex}.ppt-section-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin:0;font-size:11px;font-weight:600}.ppt-swatches{flex-wrap:wrap;gap:10px;display:flex}.ppt-swatch{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);align-items:center;gap:8px;min-width:140px;padding:8px 10px;display:flex}.ppt-swatch-color{border-radius:var(--radius-xs);border:1px solid #ffffff1a;flex-shrink:0;width:32px;height:32px}.ppt-swatch-info{flex-direction:column;gap:2px;display:flex}.ppt-swatch-label{color:var(--text-secondary);font-size:11px;font-weight:500}.ppt-swatch-hex{color:var(--text-primary);font-size:12px;font-family:var(--font-mono);font-weight:500}.ppt-fonts{flex-direction:column;gap:6px;display:flex}.ppt-font-row{align-items:center;gap:12px;display:flex}.ppt-font-label{color:var(--text-secondary);min-width:44px;font-size:12px}.ppt-font-value{color:var(--text-primary);font-size:13px;font-weight:500}.ppt-logo-img{object-fit:contain;border-radius:var(--radius-xs);border:1px solid var(--border-default);background:#ffffff0a;max-width:200px;max-height:80px;padding:8px}.ppt-logo-placeholder{color:var(--text-tertiary);align-items:center;gap:8px;padding:8px 0;font-size:13px;display:flex}.ppt-meta-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.ppt-meta-item{flex-direction:column;gap:3px;display:flex}.ppt-meta-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-tertiary);font-size:11px;font-weight:600}.ppt-meta-value{color:var(--text-primary);font-size:13px;font-family:var(--font-mono)}.ppt-badge{border-radius:var(--radius-full);align-items:center;padding:2px 7px;font-size:10px;font-weight:600;display:inline-flex}.ppt-badge-active{color:#4ade80;background:#22c55e2e}.ppt-badge-warn{color:#fbbf24;background:#f59e0b2e}.ppt-skeleton-hero{border-radius:var(--radius-sm);height:120px}.ppt-skeleton-row{border-radius:var(--radius-xs);height:20px}.ppt-history{background:var(--bg-glass);border:1px solid var(--border-default);border-radius:var(--radius-md);overflow:hidden}.ppt-history-toggle{width:100%;color:var(--text-secondary);font-size:13px;font-weight:600;font-family:var(--font-sans);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:14px 16px;transition:color .14s,background .14s;display:flex}.ppt-history-toggle:hover{color:var(--text-primary);background:var(--bg-hover)}.ppt-history-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ppt-history-chevron{color:var(--text-tertiary);flex-shrink:0;transition:transform .2s}.ppt-history-chevron-open{transform:rotate(180deg)}.ppt-history-count{border-radius:var(--radius-full);background:var(--accent-subtle);color:var(--accent-hover);margin-left:4px;padding:1px 6px;font-size:11px}.ppt-history-list{border-top:1px solid var(--border-subtle);flex-direction:column;gap:0;padding:8px 0;display:flex}.ppt-history-empty{color:var(--text-tertiary);margin:0;padding:12px 16px;font-size:13px}.ppt-version-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;padding:10px 16px;transition:background .12s;display:flex}.ppt-version-row:last-child{border-bottom:none}.ppt-version-row:hover{background:var(--bg-hover)}.ppt-version-row-active{background:#22c55e0d}.ppt-version-info{align-items:center;gap:6px;min-width:80px;display:flex}.ppt-version-num{color:var(--text-primary);font-size:13px;font-weight:700;font-family:var(--font-mono)}.ppt-version-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ppt-version-filename{color:var(--text-secondary);font-size:12px;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ppt-version-date{color:var(--text-tertiary);font-size:11px}.ppt-version-colors{flex-shrink:0;align-items:center;gap:8px;display:flex}.ppt-version-swatch{border-radius:var(--radius-xs);border:1px solid #ffffff1a;flex-shrink:0;width:18px;height:18px}.ppt-version-font{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;max-width:100px;font-size:11px;overflow:hidden}.ppt-overlay-dialog{z-index:200;background:0 0;border:none;justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;max-height:100%;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}.ppt-overlay-dialog::backdrop{display:none}.ppt-overlay-backdrop{-webkit-backdrop-filter:blur(4px);cursor:default;z-index:0;background:#0000008c;border:none;width:100%;height:100%;position:fixed;inset:0}.ppt-overlay-panel{z-index:1;background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-lg);width:min(780px,94vw);max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:relative;overflow:hidden}.ppt-overlay-header{flex-shrink:0;justify-content:flex-end;padding:10px 12px 0;display:flex}.ppt-overlay-scroll{flex:1;overflow-y:auto}@media (width<=640px){.ppt-page{padding:16px 12px}.ppt-empty-header{flex-direction:column}.ppt-active-header{flex-direction:column;align-items:stretch}.ppt-btn-sm{align-self:flex-start}.ppt-swatches{gap:8px}.ppt-swatch{flex:1;min-width:0}.ppt-version-row{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.ppt-spinner{animation-duration:.01ms!important}.ppt-history-chevron{transition-duration:.01ms!important}}
