:root{--bg-color:#0f0f23;--text-primary:#fff;--text-secondary:#9ca3af;--card-bg-solid:#1f1f35;--header-bg:linear-gradient(135deg,#161629 0%,var(--card-bg-solid) 100%);--sidebar-bg:linear-gradient(135deg,#161629 0%,var(--card-bg-solid) 100%);--border-color:#2a2a3e;--primary-color:#9333ea;--primary-hover:#7e22ce;--card-bg:linear-gradient(135deg,var(--card-bg-solid) 0%,var(--border-color) 100%);--nav-item-bg:linear-gradient(135deg,var(--card-bg-solid) 0%,#252544 100%);--nav-item-hover:#2a2a3e;--dropdown-bg:#111827;--input-bg:#161629;--shadow-sm:0 2px 8px rgba(0,0,0,.15);--shadow-md:0 4px 8px rgba(0,0,0,.15);--shadow-lg:0 10px 25px rgba(0,0,0,.45);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--status-online:#10b981;--delete-red:#dc2626;--button-text-color:var(--text-primary);--feature-text-color:var(--text-primary);--active-dot-color:var(--text-primary);--header-height:77px;--header-scale:1;--content-max-width:1120px;--content-padding-x:48px;--content-padding-y:40px;--content-padding-sm:24px;--content-padding-xs:16px;--page-padding-top:40px;--page-padding-bottom:24px;--page-padding-x:48px;--sidebar-padding:24px 16px;--sidebar-header-margin:32px;--branding-margin:24px;--header-min-height:264px;--header-min-height-sm:200px;--header-min-height-xs:160px;--header-top-block-min-height:296px;--primary-action-padding-top:24px;--primary-action-padding-bottom:24px;--primary-action-padding-x:24px;--welcome-card-title-size:17px;--welcome-card-text-size:15px;--list-item-title-size:16px;--color-bg-app:var(--bg-color);--color-bg-surface:var(--card-bg-solid);--color-bg-elevated:var(--dropdown-bg);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-muted:#9ca3af;--color-border-subtle:#2a2a3e;--color-border-strong:#3f3f5a;--feature-accent:var(--primary-color);--feature-accent-hover:var(--primary-hover);--color-accent:var(--feature-accent);--color-accent-hover:var(--feature-accent-hover);--sidebar-active-accent:var(--feature-accent);--sidebar-active-accent-hover:var(--feature-accent-hover);--color-success:#10b981;--color-warning:#fbbf24;--color-error:var(--delete-red);--brand-accent:#9333ea;--brand-accent-hover:#a855f7;--color-text-label:#374151;--color-border-input-light:#e5e0d8;--focus-ring-width:2px;--focus-ring-offset:2px;--focus-ring-color:var(--primary-color)}[data-feature=welcome]{--feature-accent:#3b82f6;--feature-accent-hover:#2563eb;--sidebar-active-accent:var(--brand-accent);--sidebar-active-accent-hover:var(--brand-accent-hover)}[data-feature=chat],[data-feature=documents],[data-feature=exam-simulation],[data-feature=notes-bookmarks],[data-feature=study-room],[data-feature=subjects]{--feature-accent:#3b82f6;--feature-accent-hover:#2563eb;--sidebar-active-accent:#9333ea;--sidebar-active-accent-hover:#a855f7}[data-feature=time-management]{--feature-accent:#9333ea;--feature-accent-hover:#a855f7;--sidebar-active-accent:#9333ea;--sidebar-active-accent-hover:#a855f7}[data-theme=light]{--bg-color:#fefaf2;--text-primary:#111827;--text-secondary:#4b5563;--card-bg-solid:#fefaf2;--header-bg:#fefaf2;--sidebar-bg:#fefaf2;--border-color:#e5e7eb;--primary-color:#a855f7;--primary-hover:#9333ea;--card-bg:#fefaf2;--nav-item-bg:#fefaf2;--nav-item-hover:#f3f4f6;--dropdown-bg:#fff;--input-bg:#fff;--shadow-sm:0 1px 3px rgba(0,0,0,.1);--shadow-md:0 4px 6px rgba(0,0,0,.05);--shadow-lg:0 10px 15px rgba(0,0,0,.1);--status-online:#10b981;--button-text-color:#fdf7ed;--feature-text-color:#fdf7ed;--active-dot-color:#fdf7ed;--color-bg-app:var(--bg-color);--color-bg-surface:var(--card-bg-solid);--color-bg-elevated:var(--dropdown-bg);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-muted:#6b7280;--color-border-subtle:#e5e7eb;--color-border-strong:#d1d5db;--color-accent:var(--feature-accent);--color-accent-hover:var(--feature-accent-hover);--color-success:#10b981;--color-warning:#fbbf24;--color-error:#dc2626;--brand-accent:#9333ea;--brand-accent-hover:#a855f7;--color-text-label:#374151;--color-border-input-light:#e5e0d8}@media (prefers-color-scheme:dark){:root{--color-bg-app:#0f0f23;--color-bg-surface:#1f1f35;--color-bg-elevated:#111827;--color-text-primary:#fff;--color-text-secondary:#9ca3af;--color-text-muted:#9ca3af;--color-border-subtle:#2a2a3e;--color-border-strong:#3f3f5a;--color-accent:var(--feature-accent);--color-accent-hover:var(--feature-accent-hover);--color-success:#10b981;--color-warning:#fbbf24;--color-error:#dc2626}}*{box-sizing:border-box;margin:0;padding:0}body,html{overflow-x:hidden;width:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-color);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.btn-primary,.btn-secondary{padding:14px 28px;min-height:48px;border-radius:10px;font-size:16px;font-weight:600;line-height:1.25;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;text-decoration:none}.btn-primary{min-width:220px;background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);color:var(--button-text-color);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04),0 4px 8px rgba(0,0,0,.15)}.btn-primary:hover{background:linear-gradient(135deg,var(--color-accent-hover) 0,var(--color-accent) 100%);transform:translateY(-1px);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 6px 12px rgba(0,0,0,.18)}.btn-primary:active{transform:translateY(0)}.btn-primary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary:disabled:hover{transform:none}@keyframes btn-primary-pulse{0%,to{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.15),0 4px 14px rgba(59,130,246,.35)}50%{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.15),0 4px 14px rgba(59,130,246,.5)}}.welcome-hero-cta .btn-primary{animation:btn-primary-pulse 2.5s ease-in-out infinite}.welcome-hero-cta .btn-primary:hover{animation:none}.btn-secondary{background:linear-gradient(135deg,var(--card-bg-solid) 0,var(--border-color) 100%);color:var(--button-text-color);border:1px solid var(--border-color);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04),0 4px 8px rgba(0,0,0,.15)}.btn-secondary:hover{background:linear-gradient(135deg,var(--border-color) 0,var(--nav-item-hover) 100%);transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,var(--color-error) 0,#b91c1c 100%);color:var(--button-text-color)}.btn-danger:hover{background:linear-gradient(135deg,#b91c1c 0,var(--color-error) 100%);transform:translateY(-1px)}.btn-sm{padding:8px 16px;font-size:14px;min-width:auto}.profile-section-header .btn-secondary.btn-sm{min-width:140px;text-align:center;display:flex;align-items:center;justify-content:center}.primary-action-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:var(--primary-action-padding-top) var(--primary-action-padding-x) var(--primary-action-padding-bottom);min-height:96px;box-sizing:border-box}.form-field{display:flex;flex-direction:column;gap:8px}.form-label{font-size:14px;font-weight:500;color:#e5e7eb}.form-input{background:rgba(15,15,35,.6);border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:14px 16px;color:var(--text-primary);font-size:15px;transition:border-color .2s,box-shadow .2s}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(147,51,234,.25)}.form-input:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}#new-subject-name.form-input:focus{border-color:rgba(148,163,184,.5);box-shadow:none}#new-subject-name.form-input:focus-visible{outline:none;outline-offset:0}.form-input-error{border-color:rgba(239,68,68,.6)}.form-helper-text{font-size:13px;color:#fca5a5}.form-helper-text-info{color:var(--text-secondary)}.form-submit{width:100%;justify-content:center}.form-submit:disabled{cursor:wait;opacity:.7}.form-textarea{resize:vertical;min-height:100px;font-family:inherit}.form-input select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%239ca3af' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}.page-transition-wrapper{position:relative;width:100%;min-height:calc(100vh - var(--header-height));overflow-x:hidden;overflow-y:visible}.page-transition-inner{width:100%;min-height:inherit;animation:page-enter .25s cubic-bezier(.4,0,.2,1) forwards}.home-container.chat-layout>.page-transition-wrapper{flex:1 1;min-width:0;min-height:0;height:100%;overflow:hidden}.home-container.chat-layout>.page-transition-wrapper>.page-transition-inner{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.home-container.chat-layout>.page-transition-wrapper>.page-transition-inner>.chat-content-wrapper,.home-container.chat-layout>.page-transition-wrapper>.page-transition-inner>.chat-page-container,.home-container.chat-layout>.page-transition-wrapper>.page-transition-inner>.documents-page-container{flex:1 1;min-height:0}@keyframes page-enter{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@media (prefers-reduced-motion:reduce){.page-transition-inner{animation:page-enter-reduced .2s ease forwards}}@keyframes page-enter-reduced{0%{opacity:0}to{opacity:1}}.welcome-content{flex:1 1;padding:var(--content-padding-y) var(--content-padding-x);overflow-y:auto;overflow-x:hidden;max-width:min(1200px,100%);margin:0 auto;width:100%;box-sizing:border-box;position:relative}@keyframes graduation-cap-ai-plate-breathe{0%,to{opacity:.6}50%{opacity:1}}.graduation-cap-ai-plate{animation:graduation-cap-ai-plate-breathe 2.5s ease-in-out infinite}.welcome-hero{text-align:center;margin-bottom:48px;min-height:var(--header-top-block-min-height);display:flex;flex-direction:column}.welcome-hero-brand{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:48px}.welcome-hero-logo{width:64px;height:64px;color:var(--brand-accent-hover);flex-shrink:0}.welcome-hero-title{font-size:clamp(40px,6vw,56px);font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.welcome-hero-headline{font-size:clamp(28px,4vw,42px);font-weight:700;color:var(--text-primary);line-height:1.2;margin-bottom:16px;max-width:600px;margin-left:auto;margin-right:auto}.welcome-hero-description{font-size:17px;color:var(--text-secondary);line-height:1.6;max-width:540px;margin:0 auto 32px;padding:0 16px}.welcome-hero-description--rotating{min-height:calc(1.6em * 3);font-style:italic;animation:welcome-hero-copy-fade-in .25s ease both}@keyframes welcome-hero-copy-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.welcome-hero-description--rotating{animation:none}}.welcome-hero-cta{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin-top:auto;padding-top:var(--primary-action-padding-top);padding-bottom:var(--primary-action-padding-bottom)}.btn-primary-arrow{transition:transform .2s ease}.welcome-hero-cta .btn-primary:hover .btn-primary-arrow{transform:translateX(2px)}.welcome-cta-secondary{display:inline-flex;align-items:center;padding:14px 28px;font-size:16px;font-weight:600;color:var(--text-secondary);background:var(--card-bg-solid);border:2px solid var(--border-color);border-radius:16px;cursor:pointer;text-decoration:none;transition:color .2s ease,background .2s ease,border-color .2s ease}.welcome-cta-secondary:hover{color:var(--text-primary);background:var(--nav-item-hover);border-color:var(--text-secondary)}.welcome-cta-secondary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}[data-theme=light] .welcome-cta-secondary{color:var(--color-text-label)}[data-theme=light] .welcome-cta-secondary:hover{color:#111827;background:var(--color-border-input-light)}.welcome-section{margin-bottom:48px}.welcome-section-title{font-size:24px;font-weight:600;color:var(--text-primary);margin-bottom:24px;text-align:center}.welcome-quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:16px;gap:16px;max-width:560px;margin:0 auto}.welcome-quick-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px 16px;min-height:120px;border-radius:20px;border:2px solid transparent;text-decoration:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06),0 4px 12px rgba(0,0,0,.15)}.welcome-quick-card:hover{transform:translateY(-3px)}.welcome-quick-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.welcome-quick-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.welcome-quick-icon svg{width:100%;height:100%}.welcome-quick-label{font-size:15px;font-weight:600;text-align:center}.welcome-quick-blue{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 4px 14px rgba(59,130,246,.35)}.welcome-quick-blue:hover{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 6px 20px rgba(59,130,246,.45)}.welcome-quick-green{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 4px 14px rgba(16,185,129,.35)}.welcome-quick-green:hover{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 6px 20px rgba(16,185,129,.45)}.welcome-quick-orange{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 4px 14px rgba(249,115,22,.35)}.welcome-quick-orange:hover{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 6px 20px rgba(249,115,22,.45)}.welcome-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:20px;gap:20px;max-width:1100px;margin:0 auto}.welcome-feature-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 20px;border-radius:20px;border:2px solid transparent;text-decoration:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 4px 14px rgba(0,0,0,.12)}.welcome-feature-card:hover{transform:translateY(-4px)}.welcome-feature-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.welcome-feature-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;flex-shrink:0}.welcome-feature-icon svg{width:100%;height:100%}.welcome-feature-title{font-size:17px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.welcome-feature-description{font-size:14px;color:var(--text-secondary);line-height:1.5}.welcome-feature-blue{background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 14px rgba(59,130,246,.28)}.welcome-feature-blue .welcome-feature-description,.welcome-feature-blue .welcome-feature-icon,.welcome-feature-blue .welcome-feature-title{color:#fff}.welcome-feature-blue:hover{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 8px 24px rgba(59,130,246,.4)}.welcome-feature-red{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 14px rgba(239,68,68,.28)}.welcome-feature-red .welcome-feature-description,.welcome-feature-red .welcome-feature-icon,.welcome-feature-red .welcome-feature-title{color:#fff}.welcome-feature-red:hover{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 8px 24px rgba(239,68,68,.4)}.welcome-feature-green{background:linear-gradient(135deg,#10b981,#059669);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 14px rgba(16,185,129,.28)}.welcome-feature-green .welcome-feature-description,.welcome-feature-green .welcome-feature-icon,.welcome-feature-green .welcome-feature-title{color:#fff}.welcome-feature-green:hover{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 8px 24px rgba(16,185,129,.4)}.welcome-feature-teal{background:linear-gradient(135deg,#06b6d4,#0891b2);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 14px rgba(6,182,212,.28)}.welcome-feature-teal .welcome-feature-description,.welcome-feature-teal .welcome-feature-icon,.welcome-feature-teal .welcome-feature-title{color:#fff}.welcome-feature-teal:hover{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 8px 24px rgba(6,182,212,.4)}.welcome-feature-orange{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 14px rgba(249,115,22,.28)}.welcome-feature-orange .welcome-feature-description,.welcome-feature-orange .welcome-feature-icon,.welcome-feature-orange .welcome-feature-title{color:#fff}.welcome-feature-orange:hover{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 8px 24px rgba(249,115,22,.4)}.welcome-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:20px;gap:20px;margin-top:48px;max-width:700px;margin-left:auto;margin-right:auto}.welcome-stat-card{padding:24px;border-radius:20px;border:2px solid var(--border-color);display:flex;flex-direction:column;align-items:center;gap:12px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 4px 14px rgba(0,0,0,.1)}.welcome-stat-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center}.welcome-stat-icon svg{width:100%;height:100%}.welcome-stat-value{font-size:28px;font-weight:700;color:var(--text-primary)}.welcome-stat-label{font-size:14px;color:var(--text-secondary);text-align:center}.welcome-stat-gold{background:linear-gradient(135deg,rgba(255,215,0,.22),rgba(212,175,55,.18) 50%,rgba(184,134,11,.14));border-color:rgba(212,175,55,.5);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.12),0 4px 16px rgba(212,175,55,.2)}.welcome-stat-gold .welcome-stat-icon,.welcome-stat-gold .welcome-stat-value{color:#d4af37}.welcome-stat-gold .welcome-stat-label{color:#b8860b}.welcome-stat-silver{background:linear-gradient(135deg,rgba(232,232,240,.28),hsla(0,0%,75%,.2) 50%,hsla(0,0%,66%,.14));border-color:hsla(0,0%,75%,.55);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.14),0 4px 16px hsla(0,0%,75%,.18)}.welcome-stat-silver .welcome-stat-icon,.welcome-stat-silver .welcome-stat-value{color:silver}.welcome-stat-silver .welcome-stat-label{color:grey}[data-theme=light] .welcome-stat-gold{background:linear-gradient(135deg,rgba(255,215,0,.2),rgba(212,175,55,.16) 50%,rgba(184,134,11,.12));border-color:rgba(184,134,11,.55)}[data-theme=light] .welcome-stat-gold .welcome-stat-icon,[data-theme=light] .welcome-stat-gold .welcome-stat-value{color:#b8860b}[data-theme=light] .welcome-stat-gold .welcome-stat-label{color:#92400e}[data-theme=light] .welcome-stat-silver{background:linear-gradient(135deg,rgba(240,240,245,.9),rgba(220,220,228,.7) 50%,rgba(200,200,210,.5));border-color:hsla(0,0%,50%,.45)}[data-theme=light] .welcome-stat-silver .welcome-stat-icon,[data-theme=light] .welcome-stat-silver .welcome-stat-value{color:#6b7280}[data-theme=light] .welcome-stat-silver .welcome-stat-label{color:#4b5563}@media (prefers-reduced-motion:reduce){.welcome-cta-secondary,.welcome-feature-card,.welcome-hero-cta .btn-primary,.welcome-quick-card{transition:none;animation:none}.welcome-feature-card:hover,.welcome-hero-cta .btn-primary:hover,.welcome-quick-card:hover{transform:none}.graduation-cap-ai-plate{animation:none}}[data-theme=light] .chat-messages{background:var(--card-bg-solid)}[data-theme=light] .chat-message.ai-message,[data-theme=light] .chat-message.ai-message .message-content,[data-theme=light] .chat-message.ai-message .message-content *{color:var(--color-text-label)}[data-theme=light] .chat-message.ai-message .message-content a{color:var(--color-accent)}[data-theme=light] .chat-message .message-content pre{background:rgba(196,181,253,.25);color:var(--color-text-label);border:1px solid rgba(168,85,247,.2)}[data-theme=light] .chat-message .message-content code{background:rgba(196,181,253,.2);color:var(--color-text-label)}[data-theme=light] .chat-message .message-content pre code{background:transparent}[data-theme=light] .ai-message-bookmark-button,[data-theme=light] .ai-message-bookmark-button:hover,[data-theme=light] .ai-message-copy-button,[data-theme=light] .ai-message-copy-button:hover,[data-theme=light] .message-cancel-button,[data-theme=light] .message-cancel-button:hover,[data-theme=light] .message-copy-button,[data-theme=light] .message-copy-button:hover,[data-theme=light] .message-edit-button,[data-theme=light] .message-edit-button:hover,[data-theme=light] .message-save-button,[data-theme=light] .message-save-button:hover{color:var(--color-text-label)}[data-theme=light] .ai-message-bookmark-button--bookmarked,[data-theme=light] .ai-message-bookmark-button--bookmarked:hover{color:var(--color-accent)}[data-theme=light] .ai-message-audio-button,[data-theme=light] .ai-message-audio-button:hover,[data-theme=light] .ai-message-rewrite-button,[data-theme=light] .ai-message-rewrite-button:hover,[data-theme=light] .chat-beautify-btn,[data-theme=light] .chat-tool-btn{color:var(--color-text-label)}[data-theme=light] .chat-send-btn{color:#fdf7ed}[data-theme=light] .chat-input-bar{--chat-input-bar-bg:#f9fafb;--chat-input-bar-border:#e5e7eb;--chat-input-bar-shadow:0 1px 2px rgba(0,0,0,.05)}.home-container.chat-layout{min-height:auto;height:calc(100vh - var(--header-height));overflow:hidden}.chat-layout .sidebar{height:calc(100vh - var(--header-height));position:-webkit-sticky;position:sticky;top:0}[data-theme=light] .chat-item-menu-button,[data-theme=light] .chat-item-menu-button:hover{background:transparent;color:var(--text-primary)}[data-theme=light] .chat-item-menu{background:var(--card-bg-solid);border:1px solid var(--border-color)}[data-theme=light] .chat-item-menu-item{background:var(--card-bg-solid);color:var(--text-primary)}[data-theme=light] .chat-item-menu-item:hover{background:#e5e7eb}[data-theme=light] .chat-item-menu-item-delete{background:#fee2e2;color:var(--color-error)}[data-theme=light] .chat-item-menu-item-delete:hover{background:#fecaca}.current-chat-name-wrapper .chat-item-menu-wrapper{flex-shrink:0}.current-chat-name-wrapper:has(.chat-item-menu-open){z-index:10;position:relative}body.create-session-modal-open .chat-page-container .chat-item-menu-wrapper,body.create-session-modal-open .sidebar .chat-item-menu-wrapper{visibility:hidden!important;opacity:0!important;pointer-events:none!important}.current-chat-name-wrapper .chat-item-menu{right:0;left:auto}.chat-page-container{flex:1 1;min-height:0;display:flex;flex-direction:column;height:100%;background:linear-gradient(135deg,var(--bg-color) 0,#1a1a3a 100%);overflow:hidden}[data-theme=light] .chat-page-container{background:var(--card-bg-solid)}.sidebar .sessions-list{padding:0 16px}.sessions-header{margin-bottom:24px}.sessions-title{gap:8px}.sessions-title-icon{color:var(--color-accent)}.sessions-title-text{flex:1 1}.new-session-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);color:var(--button-text-color);border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:24px;margin-left:16px;margin-right:16px;min-height:44px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04),0 4px 8px rgba(0,0,0,.15)}.new-session-btn:hover{background:linear-gradient(135deg,#5795fb,#2f6ef3);transform:translateY(-1px)}.new-session-icon{display:flex;align-items:center;font-size:20px}.sessions-list{overflow-y:auto;margin-top:8px}.session-button{width:100%;border:none;background:var(--nav-item-bg);color:var(--text-secondary);border-radius:10px;padding:12px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .2s;text-align:left;position:relative;box-shadow:var(--shadow-md)}.session-button:focus-visible{outline:2px solid rgba(168,85,247,.4);outline-offset:2px}.session-button:hover{background-color:var(--nav-item-hover)}.session-button.active{background:linear-gradient(135deg,var(--brand-accent) 0,var(--brand-accent-hover) 100%);color:var(--button-text-color)}.session-active-indicator{width:8px;height:8px;border-radius:50%;background:hsla(0,0%,100%,.08);transition:all .2s;flex-shrink:0}.session-button.active .session-active-indicator{background:var(--active-dot-color)}.session-button-body{display:flex;flex-direction:column;gap:3px;flex:1 1}.session-button-title{font-weight:600;font-size:14px}.session-button-date{font-size:12px;color:inherit;opacity:.85}.no-sessions{flex-direction:column;justify-content:center;gap:12px;padding:40px 20px;color:#6b7280}.no-sessions,.no-sessions-icon{display:flex;align-items:center}.no-sessions-icon{opacity:.3;font-size:32px}.no-sessions-text{font-size:14px;color:var(--text-secondary)}.chat-main-content{overflow:hidden;height:100%}.chat-main-content,.chat-messages{flex:1 1;min-height:0;display:flex;flex-direction:column}.chat-messages{padding:32px var(--content-padding-x) 24px var(--content-padding-x);overflow-y:auto;align-items:flex-start;gap:18px;width:100%;max-width:min(var(--content-max-width),100%);margin:0 auto;box-sizing:border-box}.chat-message{padding:14px 18px;font-size:15px;line-height:1.6;color:#f4f4ff;word-break:break-word;position:relative;animation:messageFadeIn .25s ease;text-align:left}.chat-message.user-message{max-width:72%;display:flex;flex-direction:column;gap:8px;position:relative;padding:0}.chat-message.user-message:after{content:"";position:absolute;top:0;right:-84px;width:84px;height:100%}.chat-message.user-message>.message-content{background:linear-gradient(135deg,var(--brand-accent) 0,var(--brand-accent-hover) 100%);border-radius:12px;border:1px solid hsla(0,0%,100%,.08);box-shadow:0 2px 8px rgba(147,51,234,.22);padding:14px 18px}.chat-message.user-message.recall-message>.message-content{background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);box-shadow:0 2px 8px rgba(37,99,235,.22);border-radius:12px;border:1px solid hsla(0,0%,100%,.08);padding:14px 18px;margin:0}.chat-message.ai-message.recall-message{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);border-radius:16px;padding:14px 24px 41px;margin:20px 0;box-shadow:0 4px 12px rgba(0,0,0,.1)}.chat-message.ai-message{width:100%;max-width:100%;background:transparent;border:none;padding:14px 0 44px;color:#e5e7eb;position:relative}.chat-message.summary-message{background:rgba(196,181,253,.35);border:1px solid rgba(147,51,234,.35);border-radius:16px;padding:14px 24px 41px;margin:20px 0;box-shadow:0 4px 12px rgba(147,51,234,.12)}.chat-message.ai-message.recall-message.recall-question{background:rgba(59,130,246,.18);border:1px solid rgba(96,165,250,.35);box-shadow:0 4px 12px rgba(59,130,246,.12)}[data-theme=light] .chat-message.ai-message.recall-message.recall-question{background:rgba(219,234,254,.95);border:1px solid rgba(147,197,253,.85);box-shadow:0 4px 12px rgba(59,130,246,.08)}.chat-message .message-content{width:100%}.message-edit-button{position:absolute;top:50%;right:-72px;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;color:hsla(0,0%,100%,.6);transition:all .2s ease;padding:0;z-index:10;opacity:0;visibility:hidden;pointer-events:none}.message-edit-button:hover{background:hsla(0,0%,100%,.25);border-color:hsla(0,0%,100%,.3);color:var(--text-primary);transform:translateY(-50%) scale(1.05)}.message-edit-button:active{transform:translateY(-50%) scale(.95)}.message-edit-button svg{width:16px;height:16px;pointer-events:none}.message-copy-button{position:absolute;top:50%;right:-40px;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;color:hsla(0,0%,100%,.6);transition:all .2s ease;padding:0;z-index:10;opacity:0;visibility:hidden;pointer-events:none}.message-copy-button:hover{background:hsla(0,0%,100%,.25);border-color:hsla(0,0%,100%,.3);color:var(--text-primary);transform:translateY(-50%) scale(1.05)}.message-copy-button:active{transform:translateY(-50%) scale(.95)}.message-copy-button svg{width:16px;height:16px;pointer-events:none}.ai-message-copy-button{position:relative;bottom:auto;left:auto;top:auto;right:auto;transform:none}.ai-message-copy-button:hover{transform:scale(1.05)}.ai-message-copy-button:active{transform:scale(.95)}.ai-message-bookmark-button{position:relative;bottom:auto;left:auto;top:auto;right:auto;transform:none}.ai-message-bookmark-button:hover{transform:scale(1.05)}.ai-message-bookmark-button:active{transform:scale(.95)}.ai-message-bookmark-button--bookmarked{color:var(--color-accent)}.ai-message-bookmark-button--bookmarked:hover{color:var(--color-accent);opacity:1}.ai-message-audio-button,.ai-message-rewrite-button{position:relative;bottom:auto;left:auto;top:auto;right:auto;transform:none}.ai-message-rewrite-button:hover{transform:scale(1.05)}.ai-message-rewrite-button:active{transform:scale(.95)}.ai-message-actions{position:absolute;bottom:8px;left:0;display:flex;align-items:center;gap:12px;z-index:10}.ai-message-actions .message-copy-button{opacity:1;visibility:visible;pointer-events:auto}.chat-message.ai-message.recall-message .ai-message-actions,.chat-message.summary-message .ai-message-actions{left:24px;bottom:12px}.ai-message-audio-button:hover{transform:scale(1.05)}.ai-message-audio-button:active{transform:scale(.95)}.message-cancel-button,.message-save-button{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;color:hsla(0,0%,100%,.6);transition:all .2s ease;padding:0;z-index:10;font-size:16px;font-weight:700;opacity:0;visibility:hidden;pointer-events:none}.message-save-button{right:-40px}.message-save-button:hover{background:rgba(76,175,80,.25);border-color:rgba(76,175,80,.5);color:var(--color-success);transform:translateY(-50%) scale(1.05)}.message-save-button:active{transform:translateY(-50%) scale(.95)}.message-save-button:disabled{opacity:.5;cursor:not-allowed}.message-cancel-button{right:-72px}.message-cancel-button:hover{background:rgba(244,67,54,.25);border-color:rgba(244,67,54,.5);color:var(--color-error);transform:translateY(-50%) scale(1.05)}.message-cancel-button:active{transform:translateY(-50%) scale(.95)}.chat-message.user-message.chat-message--editing .message-cancel-button,.chat-message.user-message.chat-message--editing .message-save-button,.chat-message.user-message:focus-within .message-copy-button,.chat-message.user-message:focus-within .message-edit-button,.chat-message.user-message:hover .message-copy-button,.chat-message.user-message:hover .message-edit-button{opacity:1;visibility:visible;pointer-events:auto}@media (hover:none){.chat-message.user-message .message-cancel-button,.chat-message.user-message .message-copy-button,.chat-message.user-message .message-edit-button,.chat-message.user-message .message-save-button{opacity:1;visibility:visible;pointer-events:auto}}.typing-indicator{display:flex;align-items:center;gap:4px;padding:8px 0;margin-top:4px}.typing-dot{width:8px;height:8px;border-radius:50%;background-color:var(--text-secondary);animation:typing-bounce 1.4s ease-in-out infinite}.typing-dot:first-child{animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}.typing-dot:nth-child(3){animation-delay:0s}@keyframes typing-bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-message .message-content :is(p,ul,ol,pre){margin-bottom:10px}.chat-message .message-content ol,.chat-message .message-content ul{padding-left:40px!important;margin-left:0!important;margin-top:8px;margin-bottom:10px;list-style-position:outside}.chat-message .message-content ul{list-style-type:disc}.chat-message .message-content ol{list-style-type:decimal}.chat-message .message-content li{margin-bottom:6px;line-height:1.5;padding-left:8px;display:list-item}.chat-message .message-content pre{background:rgba(15,15,35,.8);padding:10px 12px;border-radius:10px;overflow-x:auto;font-family:Fira Code,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:14px;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.4) transparent}.chat-message .message-content pre::-webkit-scrollbar{height:6px}.chat-message .message-content pre::-webkit-scrollbar-track{background:transparent;border-radius:10px}.chat-message .message-content pre::-webkit-scrollbar-thumb{background:rgba(148,163,184,.4);border-radius:10px}.chat-message .message-content pre::-webkit-scrollbar-thumb:hover{background:rgba(148,163,184,.6)}.chat-message .message-content code{font-family:Fira Code,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;background:rgba(15,15,35,.7);padding:2px 4px;border-radius:6px;font-size:13px}.chat-messages{scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.4) transparent}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent;border-radius:10px}.chat-messages::-webkit-scrollbar-thumb{background:rgba(148,163,184,.4);border-radius:10px}.chat-messages::-webkit-scrollbar-thumb:hover{background:rgba(148,163,184,.6)}.chat-main-content{scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.4) transparent}.chat-main-content::-webkit-scrollbar{width:6px}.chat-main-content::-webkit-scrollbar-track{background:transparent;border-radius:10px}.chat-main-content::-webkit-scrollbar-thumb{background:rgba(148,163,184,.4);border-radius:10px}.chat-main-content::-webkit-scrollbar-thumb:hover{background:rgba(148,163,184,.6)}@keyframes messageFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseDots{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}.chat-header{padding:var(--content-padding-y) var(--content-padding-x) var(--content-padding-sm);text-align:center;max-width:1400px;width:80%;margin:0 auto}.chat-content{flex:1 1;padding:0 var(--content-padding-x) 92px var(--content-padding-x);overflow-y:auto;max-width:min(var(--content-max-width),100%);margin:0 auto;width:100%;justify-content:center}.chat-content,.chat-list-view .chat-header{display:flex;flex-direction:column;align-items:center}.chat-list-view .chat-header{text-align:center;max-width:1400px;width:80%;margin:0 auto 32px}.chat-header-icon{display:flex;justify-content:center;align-items:center;margin-bottom:16px;color:var(--color-accent)}.chat-header-icon svg{width:64px;height:64px}.chat-header-title{font-size:24px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.chat-header-subtitle{color:var(--text-secondary);line-height:1.6}.chat-list-view{flex:1 1;padding:var(--content-padding-y) var(--content-padding-x);overflow-y:auto;max-width:min(var(--content-max-width),100%);width:100%;margin:0 auto;display:flex;flex-direction:column}.chat-list-header{display:flex;justify-content:space-between;align-items:center;margin-top:32px;margin-bottom:24px}.chat-list-title{font-size:24px;font-weight:700;color:var(--text-primary);margin:0}.chat-list-search{margin-bottom:16px}.chat-list-search-icon{font-size:20px}.chat-list-count-wrapper{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;min-height:32px}.chat-list-count{font-size:14px;color:var(--text-secondary)}.chat-list-sort-wrapper{position:relative;display:flex;align-items:center}.chat-list-sort-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:6px;transition:all .2s;padding:0}.chat-list-sort-button:hover{background:hsla(0,0%,100%,.1);color:var(--text-primary)}.chat-list-sort-icon{display:flex;align-items:center;font-size:18px}.chat-list-sort-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--card-bg-solid);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.3);min-width:160px;z-index:1000;overflow:hidden;display:flex;flex-direction:column}.chat-list-sort-option{display:flex;align-items:center;padding:12px 16px;background:transparent;border:none;color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s;text-align:left}.chat-list-sort-option:hover{background:hsla(0,0%,100%,.1)}.chat-list-sort-option.active{background:rgba(59,130,246,.2);color:var(--color-accent);font-weight:600}.chat-list-subject-header{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:12px 0 8px;margin-top:8px;border-bottom:1px solid var(--border-color)}.chat-list-items{flex:1 1;display:flex;flex-direction:column;gap:0}.chat-list-item-wrapper{position:relative;display:flex;align-items:center;border-bottom:1px solid var(--border-color)}.chat-list-item-wrapper:has(.chat-item-menu-open){z-index:10}.chat-list-item-wrapper:last-child{border-bottom:none}.documents-page-container .chat-list-items>.chat-list-item-wrapper:nth-child(odd){background:transparent}.documents-page-container .chat-list-items>.chat-list-item-wrapper:nth-child(2n){background:hsla(0,0%,100%,.04)}.documents-page-container .chat-list-item-wrapper[data-stripe=odd]{background:transparent}.documents-page-container .chat-list-item-wrapper[data-stripe=even]{background:hsla(0,0%,100%,.04)}[data-theme=light] .documents-page-container .chat-list-item-wrapper[data-stripe=odd],[data-theme=light] .documents-page-container .chat-list-items>.chat-list-item-wrapper:nth-child(odd){background:var(--card-bg-solid)}[data-theme=light] .documents-page-container .chat-list-item-wrapper[data-stripe=even],[data-theme=light] .documents-page-container .chat-list-items>.chat-list-item-wrapper:nth-child(2n){background:#f9fafb}.chat-list-item{flex:1 1;border:none;color:var(--text-primary);padding:16px 0;display:flex;flex-direction:column;gap:4px;cursor:pointer;transition:all .2s;text-align:left;border-radius:0}.chat-list-item,.chat-list-item:hover{background:transparent}.documents-page-container .chat-list-item-wrapper:hover{background:hsla(0,0%,100%,.02)}[data-theme=light] .documents-page-container .chat-list-item-wrapper:hover{background:#e5e7eb}.chat-list-item-content{display:flex;flex-direction:column;gap:4px}.chat-list-item-title{font-weight:600;font-size:var(--list-item-title-size);color:var(--text-primary);line-height:1.4}.chat-list-item-meta{display:flex;align-items:center;gap:8px;margin-top:2px}.chat-list-item-type{font-size:13px;color:var(--text-secondary);font-weight:400}.chat-list-item-separator{font-size:13px;color:#6b7280}.chat-list-item-date{font-size:13px;color:var(--text-secondary);line-height:1.4}.chat-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:#6b7280}.chat-list-empty-icon{display:flex;align-items:center;opacity:.3;font-size:32px}.chat-list-empty-text{font-size:14px;color:var(--text-secondary)}.chat-item-menu-wrapper{isolation:isolate}.chat-item-menu-button,.chat-item-menu-wrapper{position:relative;display:flex;align-items:center}.chat-item-menu-button{justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:6px;transition:all .2s;padding:0;margin-right:8px;z-index:1}.chat-item-menu-button:hover{background:transparent;color:var(--text-primary)}.chat-item-menu-wrapper.chat-item-menu-open .chat-item-menu-button{pointer-events:none}.chat-item-menu{position:absolute;top:100%;right:0;margin-top:4px;background:var(--text-primary);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);min-width:160px;z-index:2;overflow:hidden;border:1px solid #e5e7eb;pointer-events:auto}.chat-item-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background:transparent;color:#1f2937;font-size:14px;text-align:left;cursor:pointer;transition:background-color .15s}.chat-item-menu-item:hover{background:#f3f4f6}.chat-item-menu-item-delete{color:var(--color-error)}.chat-item-menu-item-delete:hover{background:#fee2e2}.chat-item-menu-icon{display:flex;align-items:center;width:20px;height:20px;flex-shrink:0}.chat-item-menu-icon svg{width:100%;height:100%}.chat-item-menu-text{flex:1 1}.rename-modal{max-width:480px;width:90%}.rename-input{width:100%;padding:12px 16px;background:var(--card-bg-solid);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:15px;outline:none;transition:border-color .2s}.rename-input:focus{border-color:var(--color-accent)}.rename-input:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.rename-input::placeholder{color:#6b7280}.rename-cancel-btn,.rename-submit-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.rename-cancel-btn{background:var(--card-bg-solid);color:var(--text-secondary);margin-right:12px}.rename-cancel-btn:hover{background:var(--border-color);color:var(--text-primary)}.rename-submit-btn{background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);color:var(--button-text-color)}.rename-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#5795fb,#2f6ef3);transform:translateY(-1px)}.rename-submit-btn:disabled{opacity:.5;cursor:not-allowed}.delete-modal{max-width:480px;width:90%}.delete-confirm-message{color:var(--text-primary);font-size:15px;line-height:1.6;margin:0;text-align:center}.delete-subject-warning{margin-top:12px;padding:12px;background:rgba(251,191,36,.1);border:1px solid rgba(251,191,36,.3);border-radius:8px;color:var(--color-warning);font-size:14px;line-height:1.5}.delete-cancel-btn,.delete-confirm-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.delete-cancel-btn{background:var(--card-bg-solid);color:var(--text-secondary);margin-right:12px}.delete-cancel-btn:hover{background:var(--border-color);color:var(--text-primary)}.delete-confirm-btn{background:var(--delete-red);color:var(--button-text-color)}.delete-confirm-btn:hover{background:#b91c1c;transform:translateY(-1px)}.chat-input-bar-wrapper{flex-shrink:0;padding:12px var(--content-padding-x) 24px}.chat-input-bar{display:flex;flex-direction:column;gap:8px;width:100%;max-width:min(var(--content-max-width),100%);margin:0 auto;padding:12px 12px 10px;background:var(--chat-input-bar-bg,var(--card-bg-solid));border:1px solid var(--chat-input-bar-border,var(--border-color));border-radius:24px;box-shadow:var(--chat-input-bar-shadow,0 1px 3px rgba(0,0,0,.12));box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.chat-input-bar-drag-active{border-style:dashed;border-color:var(--color-accent);position:relative}.chat-input-bar-drag-active:after{content:"Drop image here";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:inherit;background:rgba(15,23,42,.6);color:#f9fafb;font-size:.9rem;pointer-events:none}.chat-input-bar:focus-within{outline:none;border-color:var(--chat-input-bar-border,var(--border-color));box-shadow:var(--chat-input-bar-shadow,0 1px 3px rgba(0,0,0,.12))}.chat-tool-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;color:var(--button-text-color);border-radius:10px;cursor:pointer;opacity:.85;transition:opacity .15s,background .15s}.chat-tool-btn:hover:not(:disabled):not([aria-disabled=true]){opacity:1;background:hsla(0,0%,100%,.08)}.chat-tool-btn:disabled,.chat-tool-btn[aria-disabled=true]{opacity:.4;cursor:not-allowed}.chat-tool-btn[aria-disabled=true]{pointer-events:none}.chat-tool-btn[aria-pressed=true]{opacity:1;background:rgba(74,158,255,.2);color:var(--link-color,#4a9eff)}.chat-tool-btn svg{width:20px;height:20px;pointer-events:none}.attach-icon{filter:brightness(1.4)}.chat-input{width:100%;min-height:24px;max-height:240px;border:none;background:transparent;color:var(--text-primary);padding:8px 4px 4px;font-family:inherit;font-size:15px;line-height:24px;overflow-y:auto;resize:none;outline:none;box-sizing:border-box}.chat-input::placeholder{color:var(--text-secondary)}.chat-input-actions-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-input-actions-row--chat .chat-input-actions-left-bundle{display:flex;align-items:center;gap:4px;flex:1 1;min-width:0}.chat-input-actions-left,.chat-input-actions-row--chat .chat-input-actions-group--primary,.chat-input-actions-row--chat .chat-input-actions-group--secondary{display:flex;align-items:center;gap:4px;min-width:0}.chat-input-actions-left{flex:1 1}.chat-input-actions-right{display:flex;align-items:center;gap:4px;margin-left:auto}.chat-input-more-control{display:flex;align-items:center;position:relative;flex-shrink:0}@media (min-width:641px){.chat-input-more-control{display:none!important}.chat-image-attach-btn.chat-tool-btn--desktop-only,.chat-tool-btn--desktop-only{display:flex!important}}.chat-input-more-file-input{display:none}.chat-input-more-btn{display:flex!important;align-items:center;justify-content:center;flex-shrink:0}.chat-input-more-btn svg{width:20px;height:20px;pointer-events:none}.chat-input-more-btn--open{background:rgba(74,158,255,.2);color:var(--link-color,#4a9eff)}.chat-input-tools-menu{background:var(--chat-input-bar-bg,var(--card-bg-solid));border:1px solid var(--chat-input-bar-border,var(--border-color));border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.28);overflow:hidden;display:flex;flex-direction:column;padding:4px}[data-theme=light] .chat-input-tools-menu{box-shadow:0 8px 24px rgba(0,0,0,.12)}.chat-input-tools-menu-item{display:flex;align-items:center;gap:10px;width:100%;min-height:40px;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:14px;font-family:inherit;text-align:left;cursor:pointer;transition:background .15s}.chat-input-tools-menu-item:hover:not(:disabled){background:hsla(0,0%,100%,.08)}.chat-input-tools-menu-item:disabled{opacity:.4;cursor:not-allowed}[data-theme=light] .chat-input-tools-menu-item:hover:not(:disabled){background:rgba(0,0,0,.05)}.chat-input-tools-menu-item-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.chat-input-tools-menu-item-icon svg{width:20px;height:20px;pointer-events:none}.chat-input-tools-menu-item-label{flex:1 1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.learning-mode-control{position:relative;flex-shrink:0}.learning-mode-trigger{display:flex;align-items:center;gap:4px;height:36px;padding:0 10px;background:transparent;border:none;border-radius:10px;color:var(--text-primary);font-size:13px;font-family:inherit;cursor:pointer;transition:background .15s,color .15s}.learning-mode-trigger:hover:not(:disabled){background:hsla(0,0%,100%,.08)}.learning-mode-trigger:disabled{opacity:.4;cursor:not-allowed}.learning-mode-trigger-active{background:rgba(74,158,255,.2);color:var(--link-color,#4a9eff)}.learning-mode-trigger-icon{display:flex;align-items:center;flex-shrink:0}.learning-mode-trigger-icon svg{width:20px;height:20px;pointer-events:none}.learning-mode-trigger-label{white-space:nowrap;font-weight:500}.learning-mode-trigger-chevron{display:flex;align-items:center;flex-shrink:0;opacity:.7}.learning-mode-trigger-chevron svg{width:14px;height:14px;pointer-events:none;transition:transform .15s ease}.learning-mode-trigger--open .learning-mode-trigger-chevron svg{transform:rotate(180deg)}.learning-mode-menu{background:var(--chat-input-bar-bg,var(--card-bg-solid));border:none;outline:none;border-radius:10px;box-shadow:none;min-width:260px;overflow:hidden;display:flex;flex-direction:column}[data-theme=light] .learning-mode-menu{background:var(--chat-input-bar-bg,#f9fafb);box-shadow:none}.learning-mode-menu-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%;padding:12px 14px;border:none;background:transparent;color:var(--text-primary);text-align:left;cursor:pointer;transition:background-color .15s}.learning-mode-menu-item:hover{background:hsla(0,0%,100%,.08)}.learning-mode-menu-item-active{background:rgba(74,158,255,.15)}.learning-mode-menu-item-content{display:flex;flex-direction:column;gap:2px;min-width:0}.learning-mode-menu-item-label{font-size:14px;font-weight:600;color:var(--text-primary)}.learning-mode-menu-item-description{font-size:12px;line-height:1.4;color:var(--text-secondary)}.learning-mode-menu-item-check{display:flex;align-items:center;flex-shrink:0;margin-top:2px;color:var(--color-accent)}.learning-mode-menu-item-check svg{width:16px;height:16px;pointer-events:none}[data-theme=light] .learning-mode-trigger{background:transparent}[data-theme=light] .learning-mode-trigger:hover:not(:disabled){background:rgba(0,0,0,.06)}[data-theme=light] .learning-mode-trigger-active{background:rgba(59,130,246,.12)}[data-theme=light] .learning-mode-menu-item:hover{background:#f3f4f6}[data-theme=light] .learning-mode-menu-item-active{background:rgba(59,130,246,.1)}@media (max-width:640px){.learning-mode-trigger-label{display:none}.learning-mode-trigger{padding:0 6px;gap:2px;min-width:36px;justify-content:center}.learning-mode-trigger-chevron{display:flex}}.chat-beautify-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;color:var(--button-text-color);border-radius:10px;cursor:pointer;font-size:18px;transition:opacity .15s,background .15s}.chat-beautify-btn:hover:not(:disabled){background:hsla(0,0%,100%,.08)}.chat-beautify-btn:disabled{opacity:.5;cursor:not-allowed}.chat-send-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);border:none;color:var(--button-text-color);border-radius:50%;cursor:pointer;transition:background .15s,opacity .15s}.chat-send-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--color-accent-hover) 0,var(--color-accent) 100%)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-send-btn svg{width:20px;height:20px;pointer-events:none}.chat-image-attach-btn{position:relative}.chat-image-preview-row{display:flex;align-items:center;gap:10px;padding:4px 6px 0}.chat-image-preview-thumbnail-wrapper{position:relative;width:48px;height:48px;border-radius:8px;overflow:hidden;flex-shrink:0}.chat-image-preview-thumbnail{width:100%;height:100%;object-fit:cover;cursor:pointer;border-radius:8px}.chat-image-preview-spinner{position:absolute;inset:0;border-radius:inherit;background:rgba(15,23,42,.6);border:2px solid rgba(148,163,184,.6);border-top:2px solid var(--color-accent);animation:chat-spinner-rotate .8s linear infinite}@keyframes chat-spinner-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.chat-image-preview-meta{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:12px}.chat-image-preview-filename{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-image-preview-remove,.chat-image-preview-size{color:var(--text-secondary)}.chat-image-preview-remove{margin-left:auto;border:none;background:transparent;cursor:pointer;border-radius:999px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:16px;transition:background .15s,color .15s}.chat-image-preview-remove:hover{background:rgba(248,250,252,.12);color:var(--text-primary)}.chat-inline-error{display:flex;align-items:center;gap:8px;padding:4px 8px;margin-top:2px;border-radius:8px;background:hsla(0,91%,71%,.1);color:var(--color-error);font-size:12px}.chat-inline-error-close{margin-left:auto;border:none;background:transparent;color:inherit;cursor:pointer;border-radius:999px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:14px}.chat-image-attachment{margin-bottom:8px}.chat-image-attachment-above-bubble{margin-bottom:0}.chat-image-inline{max-width:80px;border-radius:12px;cursor:pointer;display:block}.chat-image-lightbox-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000}.chat-image-lightbox-content{position:relative;max-width:90vw;max-height:90vh}.chat-image-lightbox-image{max-width:100%;max-height:100%;border-radius:12px}.chat-image-lightbox-close{position:absolute;top:-12px;right:-12px;border:none;background:rgba(15,23,42,.9);color:#f9fafb;width:28px;height:28px;border-radius:999px}.chat-image-lightbox-close,.chat-stop-btn{display:flex;align-items:center;justify-content:center;cursor:pointer}.chat-stop-btn{width:36px;height:36px;background:#ef4444;border:none;color:#fdf7ed;border-radius:50%;font-size:16px;transition:background .15s}.chat-stop-btn:hover{background:#f87171}.citation-link{display:inline-flex;align-items:center;justify-content:center;min-width:1.3em;height:1.3em;padding:0 4px;margin:0 1px;font-size:.72em;font-weight:700;line-height:1;color:var(--color-accent);background:rgba(147,51,234,.12);border:1px solid rgba(147,51,234,.3);border-radius:4px;cursor:pointer;vertical-align:super;transition:background .15s,border-color .15s,transform .1s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.citation-link:hover{background:rgba(147,51,234,.22);border-color:var(--color-accent);transform:scale(1.1)}.citation-link:active{transform:scale(.95)}[data-theme=light] .citation-link{color:var(--color-accent);background:rgba(147,51,234,.08);border-color:rgba(147,51,234,.25)}[data-theme=light] .citation-link:hover{background:rgba(147,51,234,.16);border-color:var(--color-accent)}.citation-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.65);display:flex;align-items:center;justify-content:center;z-index:1000;animation:citationFadeIn .15s ease-out}@keyframes citationFadeIn{0%{opacity:0}to{opacity:1}}@keyframes citationSlideUp{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.citation-popup{background:var(--card-bg-solid);border:1px solid var(--border-color);border-radius:var(--radius-md);width:90%;max-width:640px;max-height:70vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:citationSlideUp .2s ease-out}.citation-popup-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color);gap:12px}.citation-popup-title{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1}.citation-popup-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.6em;height:1.6em;padding:0 6px;font-size:.8rem;font-weight:700;color:#fff;background:var(--color-accent);border-radius:5px;flex-shrink:0}.citation-popup-filename{font-weight:600;font-size:.95rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.citation-popup-location{font-size:.8rem;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}.citation-popup-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);border-radius:6px;cursor:pointer;flex-shrink:0;transition:background .15s,color .15s}.citation-popup-close:hover{background:var(--nav-item-hover);color:var(--text-primary)}.citation-popup-close svg{width:16px;height:16px}.citation-popup-body{padding:20px;overflow-y:auto;font-size:.9rem;line-height:1.7;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.citation-popup-body::-webkit-scrollbar{width:6px}.citation-popup-body::-webkit-scrollbar-track{background:transparent}.citation-popup-body::-webkit-scrollbar-thumb{background:rgba(148,163,184,.3);border-radius:10px}.citation-popup-body::-webkit-scrollbar-thumb:hover{background:rgba(148,163,184,.5)}[data-theme=light] .citation-popup{background:#fff;border-color:var(--border-color)}[data-theme=light] .citation-popup-body{color:var(--color-text-label)}.study-room-header-icon svg{color:var(--brand-accent-hover)}.study-room-invite-section{display:flex;flex-direction:column;gap:8px;margin-top:4px}.study-room-invite-input-row{display:flex;gap:8px;align-items:stretch}.study-room-email-input{flex:1 1}.study-room-add-email-btn{display:flex;align-items:center;justify-content:center;width:38px;flex-shrink:0;background:var(--color-accent);border:none;border-radius:8px;color:#fff;cursor:pointer;transition:opacity .15s}.study-room-add-email-btn:hover{opacity:.85}.study-room-email-chips{display:flex;flex-wrap:wrap;gap:6px}.study-room-email-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:99px;font-size:12px;color:var(--text-primary)}.study-room-email-chip-remove{display:flex;align-items:center;background:none;border:none;padding:0;color:var(--text-secondary);cursor:pointer;line-height:1}.study-room-email-chip-remove svg{width:12px;height:12px}.study-room-email-error{font-size:12px;color:#f87171;margin:0}.study-room-invite-hint{font-size:12px;color:var(--text-tertiary);margin:0}.study-room-submit-error{font-size:13px;color:#f87171;margin:0}.chat-content-wrapper{flex:1 1;min-width:0;min-height:0}.chat-content-wrapper,.room-chat-layout{overflow:hidden;display:flex;flex-direction:column}.room-chat-layout{height:100%}.room-messages-container{flex:1 1;overflow-y:auto;padding:32px var(--content-padding-x) 8px;display:flex;flex-direction:column;gap:4px;scroll-behavior:smooth;max-width:min(var(--content-max-width),100%);margin:0 auto;width:100%;box-sizing:border-box}.room-load-more{display:flex;justify-content:center;padding:8px 0 16px}.room-load-more-btn{background:none;border:1px solid var(--border-color);border-radius:8px;padding:6px 16px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.room-load-more-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.room-message{display:flex;gap:10px;padding:4px 0;max-width:100%}.room-message:not(.room-message--ai){align-items:flex-end}.room-message--own{flex-direction:row-reverse}.room-message-avatar{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--text-secondary);overflow:hidden}.room-message-avatar-ai{background:linear-gradient(135deg,var(--color-accent),#7c3aed);color:#fff;font-weight:700;font-size:14px}.room-message-avatar-ai,.room-message-avatar-initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.room-message-body{display:flex;flex-direction:column;gap:3px;max-width:calc(100% - 44px)}.room-message-main{display:flex;align-items:flex-end;gap:6px;max-width:100%}.room-message-side-actions{display:inline-flex;align-items:center;gap:4px;margin-bottom:2px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s ease}.room-message-main--editing .room-message-side-actions,.room-message-main:focus-within .room-message-side-actions,.room-message-main:hover .room-message-side-actions{opacity:1;visibility:visible;pointer-events:auto}@media (hover:none){.room-message-side-actions{opacity:1;visibility:visible;pointer-events:auto}}.room-message--own .room-message-body{align-items:flex-end}.room-message-meta{display:flex;align-items:center;gap:6px}.room-message--own .room-message-meta{justify-content:flex-end}.room-message-name{font-size:12px;font-weight:600;color:var(--text-secondary)}.room-message-edited-label,.room-message-time{font-size:11px;color:var(--text-tertiary)}.room-message-ai-badge{font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--color-accent);background:rgba(99,102,241,.1);padding:1px 5px;border-radius:4px}.room-message-content{padding:8px 12px;border-radius:12px;font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);max-width:100%}.room-message--own .room-message-content{background:var(--color-accent);color:#fff;border-color:transparent}.room-message--ai .room-message-content{background:rgba(99,102,241,.06);border-color:rgba(99,102,241,.2)}.room-message-content--streaming{background:rgba(99,102,241,.04)}.room-message-cursor{display:inline-block;width:2px;height:14px;background:var(--color-accent);margin-left:2px;vertical-align:text-bottom;animation:room-cursor-blink .8s steps(1) infinite}@keyframes room-cursor-blink{0%,to{opacity:1}50%{opacity:0}}.room-typing-indicator{display:flex;align-items:center;gap:4px;padding:8px 12px;color:var(--text-secondary);font-size:13px}.room-typing-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--color-accent);animation:room-typing-bounce 1.2s ease-in-out infinite}.room-typing-dot:nth-child(2){animation-delay:.2s}.room-typing-dot:nth-child(3){animation-delay:.4s}@keyframes room-typing-bounce{0%,80%,to{transform:scale(.7);opacity:.5}40%{transform:scale(1);opacity:1}}.room-typing-label{margin-left:4px}.room-empty-messages{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;color:var(--text-tertiary);text-align:center}.room-empty-icon svg{width:48px;height:48px;opacity:.3}.room-chat-layout .chat-input-bar-wrapper{flex-shrink:0}.room-input-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.room-connection-status{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-tertiary)}.room-connection-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--text-tertiary)}.room-connection-dot--connected{background:#22c55e}.room-input-hint{font-size:11px;color:var(--text-tertiary)}.room-loading{font-size:14px}.room-access-denied,.room-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary)}.room-access-denied{flex-direction:column;gap:12px;padding:40px;text-align:center}.room-access-denied-icon svg{width:56px;height:56px;opacity:.3}.room-access-denied h2{font-size:20px;color:var(--text-primary);margin:0}.room-access-denied p{font-size:14px;margin:0}.room-access-btn{margin-top:8px;display:inline-flex;align-items:center;gap:6px;padding:9px 20px;border-radius:8px;text-decoration:none}.room-participants-section{display:flex;flex-direction:column;gap:4px;padding:12px 8px 0;flex-shrink:0}.room-participants-header{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;margin-bottom:4px}.room-participants-label{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-tertiary)}.room-participants-count{font-size:11px;color:var(--text-tertiary);background:var(--bg-tertiary);border-radius:99px;padding:1px 7px;font-weight:600}.room-participants-list{display:flex;flex-direction:column;gap:2px;max-height:min(42vh,280px);overflow-y:auto;min-height:0}.room-participant-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;transition:background .1s}.room-participant-item:hover{background:var(--nav-item-hover)}.room-participant-item--pending{opacity:.65}.room-participant-avatar{width:28px;height:28px;border-radius:50%;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--text-secondary);flex-shrink:0}.room-message-avatar--blue,.room-participant-avatar--blue{background:rgba(37,99,235,.55);color:#eff6ff}.room-message-avatar--purple,.room-participant-avatar--purple{background:rgba(139,92,246,.42);color:#f5f3ff}[data-theme=light] .room-message-avatar--blue,[data-theme=light] .room-participant-avatar--blue{background:rgba(59,130,246,.3);color:#1e40af}[data-theme=light] .room-message-avatar--purple,[data-theme=light] .room-participant-avatar--purple{background:rgba(196,181,253,.65);color:#5b21b6}.room-message-avatar--green,.room-participant-avatar--green{background:rgba(22,163,74,.5);color:#ecfdf5}.room-message-avatar--orange,.room-participant-avatar--orange{background:rgba(234,88,12,.48);color:#fff7ed}.room-message-avatar--red,.room-participant-avatar--red{background:rgba(220,38,38,.45);color:#fef2f2}.room-message-avatar--brown,.room-participant-avatar--brown{background:rgba(120,53,15,.52);color:#fef3c7}[data-theme=light] .room-message-avatar--green,[data-theme=light] .room-participant-avatar--green{background:rgba(34,197,94,.32);color:#14532d}[data-theme=light] .room-message-avatar--orange,[data-theme=light] .room-participant-avatar--orange{background:rgba(249,115,22,.3);color:#9a3412}[data-theme=light] .room-message-avatar--red,[data-theme=light] .room-participant-avatar--red{background:rgba(239,68,68,.28);color:#991b1b}[data-theme=light] .room-message-avatar--brown,[data-theme=light] .room-participant-avatar--brown{background:rgba(251,191,36,.3);color:#78350f}.room-participant-avatar--pending{opacity:.6}.room-participant-info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.room-participant-name{font-size:13px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-participant-you{color:var(--text-tertiary);font-weight:400}.room-participant-role{font-size:11px;color:var(--text-tertiary)}.room-participant-remove{display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:none;border:none;border-radius:4px;color:var(--text-tertiary);cursor:pointer;opacity:0;transition:opacity .15s,background .15s,color .15s;flex-shrink:0}.room-participant-remove svg{width:13px;height:13px}.room-participant-item:hover .room-participant-remove{opacity:1}.room-participant-remove:hover{background:rgba(239,68,68,.1);color:#f87171}.room-participants-pending-label{font-size:11px;color:var(--text-tertiary);padding:8px 8px 2px;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.room-invite-area{padding:8px 8px 0}.room-invite-input-wrapper{display:flex;flex-direction:column;gap:6px}.room-invite-input{width:100%;padding:7px 10px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-size:13px;font-family:inherit}.room-invite-input:focus{outline:none;border-color:var(--color-accent)}.room-invite-actions{display:flex;gap:6px}.room-invite-send-btn{flex:1 1;padding:6px 0;background:var(--color-accent);border:none;border-radius:7px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s}.room-invite-send-btn:hover:not(:disabled){opacity:.85}.room-invite-send-btn:disabled{opacity:.5;cursor:not-allowed}.room-invite-cancel-btn{padding:6px 10px;background:none;border:1px solid var(--border-color);border-radius:7px;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:background .15s}.room-invite-cancel-btn:hover{background:var(--bg-secondary)}.room-invite-error{font-size:12px;color:#f87171;margin:0}.room-invite-success{font-size:12px;color:#4ade80;margin:0}.room-participants-section+.documents-separator{margin-top:12px}.room-rename-inline{display:flex;align-items:center;gap:4px;flex:1 1;min-width:0}.room-rename-input{flex:1 1;min-width:0;padding:4px 8px;border:1px solid var(--color-accent);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:13px;font-family:inherit}.room-rename-input:focus{outline:none}.room-rename-confirm{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0;background:var(--color-accent);border:none;border-radius:6px;color:#fff;cursor:pointer}.chat-item-menu-item--danger{color:#f87171!important}.chat-item-menu-item--danger:hover{background:rgba(239,68,68,.08)!important}.room-message-content--ai-prose{white-space:normal}.room-message-content--ai-prose p{margin:0 0 .5em}.room-message-content--ai-prose p:last-child{margin-bottom:0}.room-message-content--ai-prose ol,.room-message-content--ai-prose ul{margin:.3em 0 .5em 1.2em;padding:0}.room-message-content--ai-prose li{margin-bottom:.15em}.room-message-content--ai-prose code{background:var(--bg-tertiary);border-radius:4px;padding:1px 5px;font-size:.88em;font-family:var(--font-mono,monospace)}.room-message-content--ai-prose pre{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:10px 12px;overflow-x:auto;margin:.5em 0}.room-message-content--ai-prose pre code{background:none;padding:0;font-size:.85em}.room-message-content--ai-prose h1,.room-message-content--ai-prose h2,.room-message-content--ai-prose h3{margin:.5em 0 .25em;font-weight:600}.room-message-content--ai-prose blockquote{border-left:3px solid var(--color-accent);margin:.4em 0;padding-left:10px;color:var(--text-secondary)}.room-message-content--ai-prose table{border-collapse:collapse;margin:.5em 0;font-size:.9em}.room-message-content--ai-prose td,.room-message-content--ai-prose th{border:1px solid var(--border-color);padding:5px 10px}.room-ai-message-actions{display:flex;align-items:center;gap:4px;margin-top:4px}.room-ai-action-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:none;border:none;border-radius:6px;color:var(--text-tertiary);cursor:pointer;transition:background .15s,color .15s;padding:0}.room-ai-action-btn svg{width:14px;height:14px}.room-ai-action-btn:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.room-ai-action-btn:disabled{opacity:.35;cursor:not-allowed}.room-message-image-wrapper{margin-bottom:4px;max-width:240px}.room-message-image{max-width:100%;max-height:200px;border-radius:8px;cursor:zoom-in;display:block;object-fit:contain}.room-emoji-picker{position:relative;display:inline-flex;vertical-align:bottom}.room-emoji-picker-panel{position:absolute;bottom:calc(100% + 8px);left:0;z-index:100;width:min(288px,calc(100vw - 48px));max-height:min(320px,55vh);display:flex;flex-direction:column;background:var(--card-bg-solid);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 24px rgba(0,0,0,.12),inset 0 1px 0 hsla(0,0%,100%,.04);overflow:hidden}.room-emoji-picker-tabs{display:flex;gap:2px;padding:6px 6px 0;border-bottom:1px solid var(--border-color);flex-shrink:0;background:var(--bg-secondary)}.room-emoji-picker-tab{flex:1 1;min-width:0;padding:6px 4px;border:none;border-radius:8px 8px 0 0;background:transparent;color:var(--text-tertiary);font-size:10px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background .12s,color .12s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-emoji-picker-tab:hover{color:var(--text-primary);background:var(--nav-item-hover)}.room-emoji-picker-tab--active{color:var(--text-primary);background:var(--card-bg-solid);box-shadow:0 -1px 0 var(--card-bg-solid);margin-bottom:-1px;padding-bottom:7px}.room-emoji-picker-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:2px;gap:2px;padding:8px;overflow-y:auto;min-height:0}.room-emoji-picker-cell{display:flex;align-items:center;justify-content:center;aspect-ratio:1;max-height:40px;padding:0;border:none;border-radius:8px;background:transparent;font-size:22px;line-height:1;cursor:pointer;transition:background .12s}.room-emoji-picker-cell:hover{background:var(--nav-item-hover)}.room-chat-layout .room-input-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 0 0}.exam-main{flex:1 1;display:flex;flex-direction:column}.exam-content-area{flex:1 1;padding:0;max-width:100%;width:100%;box-sizing:border-box}.exam-home-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-gap:24px;gap:24px;align-items:start}.exam-home-form-panel,.exam-home-history-panel{background:var(--card-bg-solid);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:28px 24px}.exam-home-history-panel{display:flex;flex-direction:column}.exam-home-history-panel .exam-history-empty,.exam-home-history-panel .exam-history-loading,.exam-home-history-panel .exam-sessions-list{flex:1 1;min-height:0}.exam-home-history-panel .exam-sessions-list{overflow-y:auto}@media (min-width:901px){.exam-home-form-panel{align-self:flex-start}.exam-home-history-panel{align-self:flex-start;height:var(--exam-home-form-height,auto);max-height:var(--exam-home-form-height,auto);box-sizing:border-box;overflow:hidden}}.exam-panel-title{font-size:17px;font-weight:600;color:var(--text-primary);margin:0 0 20px}.exam-setup-form{display:flex;flex-direction:column;gap:18px}.exam-setup-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;align-items:start}.exam-setup-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.exam-doc-trigger{width:100%;display:flex;align-items:center;gap:8px;padding:0 12px;height:40px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text-secondary);font-size:14px;cursor:pointer;text-align:left;transition:border-color .15s ease}.exam-doc-trigger:hover{border-color:var(--feature-accent,var(--color-accent))}.exam-doc-trigger.has-value{color:var(--text-primary)}.exam-doc-trigger-icon{display:flex;align-items:center;color:var(--text-secondary);flex-shrink:0}.exam-doc-trigger-text{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exam-doc-trigger-arrow{font-size:10px;color:var(--text-secondary);flex-shrink:0}.exam-doc-picker{margin-top:6px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--card-bg-solid);box-shadow:var(--shadow-md);overflow:hidden;max-height:300px;display:flex;flex-direction:column}.exam-doc-picker-header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border-color);background:var(--input-bg);flex-shrink:0}.exam-doc-picker-title{flex:1 1;font-size:13px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exam-doc-picker-back{display:flex;align-items:center;gap:4px;background:none;border:none;cursor:pointer;font-size:12px;color:var(--text-secondary);padding:0;flex-shrink:0}.exam-doc-picker-back:hover{color:var(--text-primary)}.exam-doc-picker-close{background:none;border:none;cursor:pointer;font-size:13px;color:var(--text-secondary);padding:0 2px;line-height:1;flex-shrink:0}.exam-doc-picker-close:hover{color:var(--text-primary)}.exam-doc-picker-body{overflow-y:auto;flex:1 1}.exam-doc-picker-empty,.exam-doc-picker-loading{padding:16px 14px;font-size:13px;color:var(--text-secondary)}.exam-doc-folder-item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .12s ease}.exam-doc-folder-item:last-child{border-bottom:none}.exam-doc-folder-item:hover{background:var(--nav-item-hover)}.exam-doc-folder-icon{display:flex;align-items:center;color:var(--text-secondary);flex-shrink:0}.exam-doc-folder-name{flex:1 1;font-size:13px;color:var(--text-primary)}.exam-doc-folder-chevron{display:flex;align-items:center;color:var(--text-secondary)}.exam-doc-file-item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .12s ease}.exam-doc-file-item:last-child{border-bottom:none}.exam-doc-file-item:hover{background:var(--nav-item-hover)}.exam-doc-file-item.selected{background:rgba(147,51,234,.08)}.exam-doc-file-icon{display:flex;align-items:center;color:var(--text-secondary);flex-shrink:0}.exam-doc-file-name{flex:1 1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exam-doc-file-check{display:flex;align-items:center;color:var(--feature-accent,var(--color-accent));flex-shrink:0}.exam-scope-block{margin-top:8px}.exam-scope-tabs{display:flex;gap:4px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:3px}.exam-scope-tab{flex:1 1;padding:6px 10px;border:none;border-radius:4px;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.exam-scope-tab:hover{color:var(--text-primary)}.exam-scope-tab.active{background:var(--feature-accent,var(--color-accent));color:#fff}.exam-scope-range-wrap{margin-top:8px;display:flex;flex-direction:column;gap:6px}.exam-scope-range{display:flex;align-items:center;gap:8px}.exam-scope-range span{color:var(--text-secondary);font-size:13px}.exam-scope-range-total{flex-shrink:0;white-space:nowrap;font-weight:600;color:var(--text-primary)}.exam-scope-range input{width:72px}.exam-scope-sections{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;max-height:120px;overflow-y:auto}.exam-type-toggle{display:flex;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.exam-type-btn{flex:1 1;padding:9px 8px;border:none;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.exam-type-btn+.exam-type-btn{border-left:1px solid var(--border-color)}.exam-type-btn:hover{color:var(--text-primary)}.exam-type-btn.active{background:var(--feature-accent,var(--color-accent));color:#fff}.exam-start-btn{width:100%;padding:11px 16px;font-size:14px;font-weight:600}.exam-history-loading{display:flex;justify-content:center;padding:24px 0}.exam-history-empty{font-size:14px;color:var(--text-secondary);margin:0}.exam-session-message{font-size:13px;color:var(--text-secondary);margin:0 0 12px;padding:8px 12px;background:rgba(147,51,234,.08);border-radius:var(--radius-sm);border:1px solid rgba(147,51,234,.2)}.exam-generation-warning{font-size:13px;color:var(--text-secondary);margin:0 0 16px;padding:10px 12px;background:rgba(245,158,11,.1);border-radius:var(--radius-sm);border:1px solid rgba(245,158,11,.35)}.exam-mode-cards{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.exam-mode-card{padding:24px 16px;border:2px solid var(--border-color);border-radius:var(--radius-md);background:transparent;text-align:center;cursor:pointer;transition:all .2s ease}.exam-mode-card.selected,.exam-mode-card:hover{border-color:var(--feature-accent,var(--color-accent))}.exam-mode-card.selected{background:rgba(147,51,234,.08)}.exam-mode-card-icon{display:flex;justify-content:center;align-items:center;margin-bottom:8px;color:var(--feature-accent,var(--color-accent))}.exam-mode-card-icon svg{width:24px;height:24px}.exam-mode-card-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.exam-mode-card-desc{font-size:13px;color:var(--text-secondary);margin:0}.exam-question-container{max-width:720px;margin:0 auto}.exam-question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.exam-question-progress{font-size:14px;color:var(--text-secondary);font-weight:500}.exam-timer{display:flex;align-items:center;gap:6px;font-size:16px;font-weight:600;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.exam-timer.warning{color:var(--color-warning,#f59e0b)}.exam-timer.critical{color:var(--color-error,#ef4444)}.exam-question-card{background:var(--card-bg-solid);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:32px}.exam-question-prompt{font-size:17px;font-weight:500;color:var(--text-primary);margin:0 0 24px;line-height:1.6}.exam-question-options{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.exam-option-btn{display:block;width:100%;text-align:left;padding:14px 16px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-size:15px;cursor:pointer;transition:all .15s ease}.exam-option-btn:hover{background:rgba(147,51,234,.05)}.exam-option-btn.selected,.exam-option-btn:hover{border-color:var(--feature-accent,var(--color-accent))}.exam-option-btn.selected{background:rgba(147,51,234,.1)}.exam-option-btn.correct{border-color:var(--color-success,#10b981);background:rgba(16,185,129,.1)}.exam-option-btn.incorrect{border-color:var(--color-error,#ef4444);background:rgba(239,68,68,.1)}.exam-open-answer{width:100%;min-height:100px;padding:12px 16px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text-primary);font-size:15px;font-family:inherit;resize:vertical;margin-bottom:24px;box-sizing:border-box}.exam-open-answer:focus{outline:none;border-color:var(--feature-accent,var(--color-accent))}.exam-question-actions{display:flex;justify-content:flex-end;gap:12px}.exam-question-actions-nav{justify-content:space-between;align-items:center}.exam-question-actions-nav .btn-primary{min-width:160px}.exam-question-actions-nav .exam-nav-back{min-width:120px;padding:12px 24px}.exam-question-actions-nav .exam-nav-back:not(:disabled){background:transparent;border:1px solid var(--feature-accent,var(--color-accent));color:var(--feature-accent,var(--color-accent));box-shadow:none}.exam-question-actions-nav .exam-nav-back:not(:disabled):hover{background:color-mix(in srgb,var(--feature-accent,var(--color-accent)) 14%,transparent);border-color:var(--feature-accent,var(--color-accent));transform:translateY(-1px)}.exam-question-actions-nav .exam-nav-back:disabled{opacity:1;background:transparent;border:1px solid var(--border-color);color:color-mix(in srgb,var(--button-text-color) 38%,transparent);cursor:not-allowed;transform:none;box-shadow:none}.exam-question-actions-nav .exam-nav-back:disabled:hover{transform:none;background:transparent}.exam-feedback{margin-top:20px;padding:16px 20px;border-radius:var(--radius-sm);border:1px solid}.exam-feedback.correct{border-color:var(--color-success,#10b981);background:rgba(16,185,129,.08)}.exam-feedback.incorrect{border-color:var(--color-error,#ef4444);background:rgba(239,68,68,.08)}.exam-feedback-title{font-weight:600;font-size:15px;margin:0 0 8px}.exam-feedback.correct .exam-feedback-title{color:var(--color-success,#10b981)}.exam-feedback.incorrect .exam-feedback-title{color:var(--color-error,#ef4444)}.exam-feedback-text{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.5}.exam-results-container{max-width:720px;margin:0 auto}.exam-results-score-card{background:var(--card-bg-solid);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:40px 32px;text-align:center;margin-bottom:24px}.exam-results-score-value{font-size:56px;font-weight:700;color:var(--feature-accent,var(--color-accent));margin:0}.exam-results-score-label{font-size:14px;color:var(--text-secondary);margin:4px 0 0}.exam-results-stats{display:flex;justify-content:center;gap:32px;margin-top:16px}.exam-results-stat{text-align:center}.exam-results-stat-value{font-size:20px;font-weight:600;color:var(--text-primary)}.exam-results-stat-label{font-size:12px;color:var(--text-secondary)}.exam-results-questions{display:flex;flex-direction:column;gap:16px}.exam-result-item{background:var(--card-bg-solid);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px}.exam-result-item.correct{border-left:3px solid var(--color-success,#10b981)}.exam-result-item.incorrect{border-left:3px solid var(--color-error,#ef4444)}.exam-result-item.unanswered{border-left:3px solid var(--text-secondary)}.exam-result-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.exam-result-item-number{font-size:13px;font-weight:600;color:var(--text-secondary)}.exam-result-item-badge{font-size:12px;font-weight:600;padding:2px 10px;border-radius:12px}.exam-result-item-badge.correct{background:rgba(16,185,129,.15);color:var(--color-success,#10b981)}.exam-result-item-badge.incorrect{background:rgba(239,68,68,.15);color:var(--color-error,#ef4444)}.exam-result-item-badge.unanswered{background:rgba(156,163,175,.15);color:var(--text-secondary)}.exam-result-item-prompt{font-size:15px;color:var(--text-primary);margin:0 0 12px;line-height:1.5}.exam-result-detail{font-size:13px;color:var(--text-secondary);margin:4px 0;line-height:1.4}.exam-result-detail strong{color:var(--text-primary)}.exam-sessions-list{display:flex;flex-direction:column;gap:10px}.exam-session-card{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px 16px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:border-color .15s ease}.exam-session-card:hover{border-color:var(--feature-accent,var(--color-accent))}.exam-session-card-info{flex:1 1}.exam-session-card-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 2px}.exam-session-card-meta{font-size:12px;color:var(--text-secondary);margin:0}.exam-session-card-score{font-size:18px;font-weight:700;color:var(--feature-accent,var(--color-accent))}.exam-generating{text-align:center;padding:48px 24px}.exam-generating-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--feature-accent,var(--color-accent));border-radius:50%;animation:exam-spin .8s linear infinite;margin:0 auto 16px}@keyframes exam-spin{to{transform:rotate(1turn)}}.exam-generating-text{font-size:15px;color:var(--text-secondary);margin:0}.exam-generating-timer-note{font-size:13px;color:var(--text-tertiary,var(--text-secondary));margin:12px 0 0;opacity:.85}.exam-main input[type=number]::-webkit-inner-spin-button,.exam-main input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.exam-main input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}[data-theme=light] .exam-home-form-panel,[data-theme=light] .exam-home-history-panel,[data-theme=light] .exam-question-card,[data-theme=light] .exam-result-item,[data-theme=light] .exam-results-score-card{background:#fff;border-color:#e5e7eb;box-shadow:0 1px 4px rgba(0,0,0,.06)}[data-theme=light] .exam-doc-picker{background:#fff;border-color:#e5e7eb;box-shadow:0 4px 12px rgba(0,0,0,.1)}[data-theme=light] .exam-doc-picker-header{background:#f9fafb;border-bottom-color:#e5e7eb}[data-theme=light] .exam-doc-file-item,[data-theme=light] .exam-doc-folder-item{border-bottom-color:#f3f4f6}[data-theme=light] .exam-doc-file-item:hover,[data-theme=light] .exam-doc-folder-item:hover{background:#f3f4f6}[data-theme=light] .exam-doc-file-item.selected{background:rgba(147,51,234,.05)}[data-theme=light] .exam-main .exam-doc-trigger,[data-theme=light] .exam-main .exam-open-answer,[data-theme=light] .exam-main .form-input{background:#fefaf2;border-color:var(--color-border-input-light,#e5e7eb)}[data-theme=light] .exam-main .form-label,[data-theme=light] .exam-main .form-label-hint{color:#4b5563}[data-theme=light] .exam-scope-tabs{background:#f3f4f6;border-color:#e5e7eb}[data-theme=light] .exam-type-toggle{border-color:#e5e7eb}[data-theme=light] .exam-type-btn+.exam-type-btn{border-left-color:#e5e7eb}[data-theme=light] .exam-session-card{background:#f9fafb;border-color:#e5e7eb}[data-theme=light] .exam-session-card:hover{background:#f3f4f6;border-color:var(--feature-accent,var(--color-accent))}[data-theme=light] .exam-mode-card{border-color:#e5e7eb}[data-theme=light] .exam-question-actions-nav .exam-nav-back:not(:disabled){color:var(--feature-accent,var(--color-accent));border-color:var(--feature-accent,var(--color-accent))}[data-theme=light] .exam-question-actions-nav .exam-nav-back:disabled{color:#9ca3af;border-color:#e5e7eb}@media (max-width:900px){.exam-home-layout{grid-template-columns:1fr}}@media (max-width:640px){.exam-home-form-panel,.exam-home-history-panel{padding:20px 16px}.exam-mode-cards,.exam-setup-row{grid-template-columns:1fr}.exam-question-card{padding:20px}.exam-results-score-card{padding:24px 16px}.exam-results-score-value{font-size:40px}}.bookmark-card-date{font-size:12px;color:var(--text-secondary);align-self:center;margin-left:700px}.bookmark-card .document-card-icon.bookmark-card-icon{color:var(--color-accent)}.bookmark-card-content{color:#d1d5db}[data-theme=light] .bookmark-card-content{color:var(--text-primary)}[data-theme=light] .bookmark-card .document-card-meta,[data-theme=light] .bookmark-card .document-card-name,[data-theme=light] .bookmark-card-date{color:var(--text-secondary)}[data-theme=light] .documents-page-container .document-folder-icon{color:#6b7280}.create-note-modal--redesigned{max-width:560px;max-height:90vh;display:flex;flex-direction:column;transition:max-width .25s ease}.create-note-modal--redesigned.create-note-modal--expanded{max-width:1120px}.create-note-modal__header{display:flex;align-items:flex-start;gap:16px;padding:20px 24px;border-bottom:1px solid var(--border-color)}.create-note-modal__header-icon{width:44px;height:44px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--brand-accent) 0,var(--brand-accent-hover) 100%);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.create-note-modal__header-icon svg{width:22px;height:22px}.create-note-modal__header-text{flex:1 1;min-width:0}.create-note-modal__title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 4px;line-height:1.3}.create-note-modal__subtitle{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.4}.create-note-modal__header-actions{display:flex;align-items:center;gap:4px}.create-note-modal__close,.create-note-modal__expand{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:background-color .2s,color .2s}.create-note-modal__close:hover:not(:disabled),.create-note-modal__expand:hover:not(:disabled){background:var(--border-color);color:var(--text-primary)}.create-note-modal__close:focus-visible,.create-note-modal__expand:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.create-note-modal__close:disabled,.create-note-modal__expand:disabled{opacity:.6;cursor:not-allowed}.create-note-modal__body{padding:24px;flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.create-note-modal__error{padding:12px 16px;background:rgba(220,38,38,.1);border:1px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error);font-size:14px;line-height:1.4}.create-note-modal__section{display:flex;flex-direction:column;gap:8px}.create-note-modal__field-label{font-size:14px;font-weight:600;color:var(--text-primary)}.create-note-modal__required{color:var(--color-error);margin-left:2px}.create-note-modal__title-row{display:flex;gap:10px;align-items:stretch}.create-note-modal__input{flex:1 1;padding:12px 16px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:15px;transition:border-color .2s,box-shadow .2s}.create-note-modal__input::placeholder{color:var(--text-secondary)}.create-note-modal__input:hover:not(:disabled){border-color:var(--color-border-strong)}.create-note-modal__input:focus,.create-note-modal__input:focus-visible{outline:none;border-color:var(--color-border-strong);box-shadow:none}.create-note-modal__input:disabled{opacity:.7;cursor:not-allowed}.create-note-modal__input--small{padding:10px 14px;font-size:14px}.create-note-modal__btn-ai{display:flex;align-items:center;gap:6px;padding:0 14px;background:var(--color-accent);color:var(--button-text-color);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;flex-shrink:0;transition:background-color .2s,opacity .2s}.create-note-modal__btn-ai:hover:not(:disabled){background:var(--color-accent-hover)}.create-note-modal__btn-ai:disabled{background:var(--border-color);opacity:.6;cursor:not-allowed}.create-note-modal__btn-ai:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.create-note-modal__btn-ai-text{font-size:12px;opacity:.95}.create-note-modal__editor-wrap{width:100%;min-height:180px}.create-note-modal__folder-row{display:flex;flex-direction:column;gap:12px}.create-note-modal__select{padding:12px 16px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;cursor:pointer;transition:border-color .2s}.create-note-modal__select:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.create-note-modal__select:hover:not(:disabled){border-color:var(--color-border-strong)}.create-note-modal__btn-add-subject{padding:10px 16px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--color-accent);font-size:14px;font-weight:500;cursor:pointer;text-align:left;transition:background-color .2s,border-color .2s}.create-note-modal__btn-add-subject:hover:not(:disabled){background:rgba(168,85,247,.08);border-color:var(--color-accent)}.create-note-modal__btn-add-subject:disabled{opacity:.5;cursor:not-allowed}.create-note-modal__new-subject{display:flex;gap:10px;align-items:center;padding:12px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.create-note-modal__new-subject .create-note-modal__input--small{flex:1 1;min-width:0}.create-note-modal__btn-create-subject{padding:10px 18px;background:var(--color-accent);color:var(--button-text-color);border:none;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s,opacity .2s}.create-note-modal__btn-create-subject:hover:not(:disabled){background:var(--color-accent-hover)}.create-note-modal__btn-create-subject:disabled{background:var(--border-color);opacity:.6;cursor:not-allowed}.create-note-modal__btn-cancel-subject{padding:10px 16px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:14px;cursor:pointer;transition:all .2s}.create-note-modal__btn-cancel-subject:hover:not(:disabled){border-color:var(--color-accent);color:var(--text-primary)}[data-theme=light] .create-note-modal__btn-cancel-subject:hover:not(:disabled){background:var(--nav-item-hover);border-color:var(--color-border-strong);color:var(--color-text-label)}.create-note-modal__btn-cancel-subject:disabled{opacity:.5;cursor:not-allowed}.create-note-modal__footer{display:flex;gap:12px;justify-content:flex-end;padding:20px 24px;border-top:1px solid var(--border-color)}.create-note-modal__btn{padding:12px 24px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.create-note-modal__btn:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.create-note-modal__btn--secondary{background:transparent;border:1px solid var(--border-color);color:var(--text-primary)}.create-note-modal__btn--secondary:hover:not(:disabled){background:var(--border-color)}.create-note-modal__btn--primary{background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);border:none;color:var(--button-text-color)}.create-note-modal__btn--primary:hover:not(:disabled){box-shadow:0 4px 12px rgba(168,85,247,.3)}.create-note-modal__btn--primary:disabled{opacity:.5;cursor:not-allowed}[data-theme=light] .create-note-modal .create-note-title-input{color:var(--text-primary)!important}[data-theme=light] .create-note-modal .create-note-content-editor-wrap #note-content-textarea,[data-theme=light] .create-note-modal .create-note-title-input{background-color:var(--card-bg-solid)!important;border-color:var(--border-color)!important}[data-theme=light] .create-note-modal .create-note-content-editor-wrap #note-content-textarea .ProseMirror{background-color:var(--card-bg-solid)!important;color:var(--text-primary)!important}[data-theme=light] .create-note-modal #note-content-textarea .ProseMirror:focus,[data-theme=light] .create-note-modal #note-content-textarea .ProseMirror:focus-visible,[data-theme=light] .create-note-modal #note-content-textarea .rich-text-editor-click-area:focus-within,[data-theme=light] .create-note-modal #note-content-textarea [data-placeholder]:focus{outline:none!important;box-shadow:none!important}[data-theme=light] .create-note-modal #note-content-textarea>div:first-child{background-color:var(--card-bg-solid)!important;border-bottom-color:var(--border-color)!important;border-right-color:var(--border-color)}[data-theme=light] .create-note-modal #note-content-textarea>div:first-child>div{border-right-color:var(--border-color)}[data-theme=light] .create-note-modal #note-content-textarea>div:first-child button{color:var(--text-primary)!important;border-color:var(--border-color)!important;background-color:transparent!important}[data-theme=light] .create-note-modal #note-content-textarea>div:first-child button.active{background-color:var(--border-color)!important;color:var(--text-primary)!important}[data-theme=light] .create-note-modal .create-note-new-subject-input,[data-theme=light] .create-note-modal .create-note-new-subject-section{background-color:var(--card-bg-solid)!important;border-color:var(--border-color)!important}[data-theme=light] .create-note-modal .create-note-new-subject-input{color:var(--text-primary)!important}[data-theme=light] .create-note-modal .create-note-new-subject-cancel{background-color:var(--border-color)!important;border-color:var(--border-color)!important;color:#6b7280!important}[data-theme=light] .create-note-modal .create-note-new-subject-cancel:hover:not(:disabled){background-color:#d1d5db!important;border-color:#d1d5db!important;color:#4b5563!important}.create-note-new-subject-cancel:hover:not(:disabled){border-color:var(--color-accent);color:#fff}[data-theme=light] .create-note-modal .modal-footer .btn-secondary,[data-theme=light] .create-note-modal__btn--secondary{color:#6b7280;background-color:var(--border-color);border-color:var(--border-color)}[data-theme=light] .create-note-modal .modal-footer .btn-secondary:hover,[data-theme=light] .create-note-modal__btn--secondary:hover:not(:disabled){color:#4b5563;background-color:#d1d5db;border-color:#d1d5db}[data-theme=light] .edit-note-modal .edit-note-title-input{color:var(--text-primary)!important}[data-theme=light] .edit-note-modal .edit-note-content-editor-wrap #edit-note-content-textarea,[data-theme=light] .edit-note-modal .edit-note-title-input{background-color:var(--card-bg-solid)!important;border-color:var(--border-color)!important}[data-theme=light] .edit-note-modal .edit-note-content-editor-wrap #edit-note-content-textarea .ProseMirror{background-color:var(--card-bg-solid)!important;color:var(--text-primary)!important}[data-theme=light] .edit-note-modal #edit-note-content-textarea .ProseMirror:focus,[data-theme=light] .edit-note-modal #edit-note-content-textarea .ProseMirror:focus-visible,[data-theme=light] .edit-note-modal #edit-note-content-textarea .rich-text-editor-click-area:focus-within,[data-theme=light] .edit-note-modal #edit-note-content-textarea [data-placeholder]:focus{outline:none!important;box-shadow:none!important}[data-theme=light] .edit-note-modal #edit-note-content-textarea>div:first-child{background-color:var(--card-bg-solid)!important;border-bottom-color:var(--border-color)!important;border-right-color:var(--border-color)}[data-theme=light] .edit-note-modal #edit-note-content-textarea>div:first-child>div{border-right-color:var(--border-color)}[data-theme=light] .edit-note-modal #edit-note-content-textarea>div:first-child button{color:var(--text-primary)!important;border-color:var(--border-color)!important;background-color:transparent!important}[data-theme=light] .edit-note-modal #edit-note-content-textarea>div:first-child button.active{background-color:var(--border-color)!important;color:var(--text-primary)!important}[data-theme=light] .edit-note-modal .create-note-modal__btn--secondary{color:#6b7280;background-color:var(--border-color)}[data-theme=light] .edit-note-modal .create-note-modal__btn--secondary:hover:not(:disabled){color:#4b5563;background-color:#d1d5db}.move-note-modal .modal-body button.btn-secondary,.move-note-modal .move-note-modal-intro{color:var(--text-primary)}[data-theme=light] .move-note-modal .modal-body button.btn-secondary{color:#6b7280;background-color:#dbeafe;border-color:#93c5fd}[data-theme=light] .move-note-modal .modal-body button.btn-secondary:hover{color:#4b5563;background-color:#bfdbfe;border-color:#60a5fa}[data-theme=light] .move-note-modal .modal-footer .btn-secondary{color:#6b7280;background-color:#dbeafe;border-color:#93c5fd}[data-theme=light] .move-note-modal .modal-footer .btn-secondary:hover{color:#4b5563;background-color:#bfdbfe;border-color:#60a5fa}[data-theme=dark] .create-note-modal #note-content-textarea .ProseMirror p:after,[data-theme=dark] .create-note-modal #note-content-textarea .ProseMirror p:before,[data-theme=dark] .edit-note-modal #edit-note-content-textarea .ProseMirror p:after,[data-theme=dark] .edit-note-modal #edit-note-content-textarea .ProseMirror p:before{content:none!important;display:none!important}[data-theme=dark] .create-note-modal #note-content-textarea .ProseMirror:focus,[data-theme=dark] .create-note-modal #note-content-textarea .ProseMirror:focus-visible,[data-theme=dark] .create-note-modal #note-content-textarea .rich-text-editor-click-area:focus-within,[data-theme=dark] .create-note-modal #note-content-textarea [data-placeholder]:focus,[data-theme=dark] .edit-note-modal #edit-note-content-textarea .ProseMirror:focus,[data-theme=dark] .edit-note-modal #edit-note-content-textarea .ProseMirror:focus-visible,[data-theme=dark] .edit-note-modal #edit-note-content-textarea .rich-text-editor-click-area:focus-within,[data-theme=dark] .edit-note-modal #edit-note-content-textarea [data-placeholder]:focus{outline:none!important;box-shadow:none!important}#edit-note-content-textarea .rich-text-editor-click-area .ProseMirror,#note-content-textarea .rich-text-editor-click-area .ProseMirror{min-height:100%}.markdown-renderer,.note-editor-prosemirror{line-height:1.6;word-wrap:break-word}.markdown-renderer h1,.note-editor-prosemirror h1{font-size:1.75em;font-weight:700;margin:.75em 0 .35em;line-height:1.25}.markdown-renderer h2,.note-editor-prosemirror h2{font-size:1.4em;font-weight:700;margin:.65em 0 .3em;line-height:1.3}.markdown-renderer h3,.note-editor-prosemirror h3{font-size:1.15em;font-weight:600;margin:.55em 0 .25em;line-height:1.35}.markdown-renderer p,.note-editor-prosemirror p{margin:.5em 0;min-height:1.6em}.markdown-renderer ol,.markdown-renderer ul,.note-editor-prosemirror ol,.note-editor-prosemirror ul{margin:.5em 0;padding-left:1.5em}.markdown-renderer ul,.note-editor-prosemirror ul{list-style-type:disc}.markdown-renderer ol,.note-editor-prosemirror ol{list-style-type:decimal}.markdown-renderer li,.note-editor-prosemirror li{margin:.25em 0}.markdown-renderer li p,.note-editor-prosemirror li p{margin:0}.markdown-renderer blockquote,.note-editor-prosemirror blockquote{border-left:4px solid var(--color-accent);padding-left:1em;margin:.75em 0;font-style:italic;color:var(--text-secondary)}.markdown-renderer hr,.note-editor-prosemirror hr{border:none;border-top:1px solid #2a2a3e;margin:1.25em 0}[data-theme=light] .markdown-renderer hr,[data-theme=light] .note-editor-prosemirror hr{border-top-color:var(--border-color)}.markdown-renderer code,.note-editor-prosemirror code{background-color:#1a1a2e;padding:2px 6px;border-radius:4px;font-size:.9em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#f59e0b}.markdown-renderer pre,.note-editor-prosemirror pre{background-color:#1a1a2e;padding:16px;border-radius:8px;overflow:auto;border:1px solid #2a2a3e;margin:.75em 0}.markdown-renderer pre code,.note-editor-prosemirror pre code{background:none;padding:0;color:inherit}.markdown-renderer a,.note-editor-prosemirror a{color:var(--color-accent);text-decoration:underline}.markdown-renderer strong,.note-editor-prosemirror strong{font-weight:700}.markdown-renderer em,.note-editor-prosemirror em{font-style:italic}.markdown-renderer del,.markdown-renderer s,.note-editor-prosemirror del,.note-editor-prosemirror s{text-decoration:line-through}[data-theme=light] .markdown-renderer code,[data-theme=light] .note-editor-prosemirror code{background-color:#f3f4f6;color:#b45309}[data-theme=light] .markdown-renderer pre,[data-theme=light] .note-editor-prosemirror pre{background-color:#f3f4f6;border-color:var(--border-color)}[data-theme=light] .markdown-renderer pre code,[data-theme=light] .note-editor-prosemirror pre code{color:var(--text-primary)}.view-note-modal .view-note-content,.view-note-modal .view-note-content .markdown-renderer{color:var(--color-text-label)}.view-note-modal .view-note-content .markdown-renderer blockquote,.view-note-modal .view-note-content .markdown-renderer li,.view-note-modal .view-note-content .markdown-renderer p{color:inherit}[data-theme=dark] .view-note-modal .view-note-content,[data-theme=dark] .view-note-modal .view-note-content .markdown-renderer{color:#9ca3af}.view-note-modal .modal-footer .btn-secondary{color:var(--text-primary)}[data-theme=light] .view-note-modal .modal-footer .btn-secondary{color:#6b7280;background-color:var(--border-color)}[data-theme=light] .view-note-modal .modal-footer .btn-secondary:hover{color:#4b5563;background-color:#d1d5db}[data-theme=light] .document-card,[data-theme=light] .document-folder,[data-theme=light] .documents-page-container{background:var(--card-bg-solid)}.documents-page-container{flex:1 1;min-height:0;display:flex;height:100%;background:linear-gradient(135deg,var(--bg-color) 0,#1a1a3a 100%);overflow:hidden}.documents-content{flex:1 1;min-height:0;padding:var(--content-padding-y) var(--content-padding-x);overflow-y:auto;overflow-x:hidden;max-width:min(var(--content-max-width),100%);width:100%;margin:0 auto;display:flex;flex-direction:column;box-sizing:border-box}.documents-header{padding:var(--content-padding-y) var(--content-padding-x) var(--content-padding-sm);text-align:center;max-width:min(1400px,100%);width:80%;margin:0 auto 32px;min-height:var(--header-min-height);box-sizing:border-box}.documents-top-block{min-height:var(--header-top-block-min-height);margin-bottom:0;flex-shrink:0;display:flex;flex-direction:column}.documents-top-block .documents-header{margin-bottom:0}.documents-header-icon{display:flex;justify-content:center;align-items:center;margin-bottom:16px;color:var(--brand-accent-hover)}.documents-header-icon svg{width:64px;height:64px}.document-status-ready{font-size:14px;font-weight:600;padding:0 8px}.documents-title{font-size:24px;font-weight:700;margin-bottom:8px}.documents-subtitle{font-size:16px;color:var(--text-secondary);line-height:1.6;margin-bottom:24px}.documents-tabs{display:flex;gap:8px;border-bottom:1px solid var(--border-color);margin-top:24px;margin-bottom:24px}.documents-tab{padding:12px 24px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:-1px}.documents-tab:hover{color:var(--text-primary)}.documents-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}[data-feature=notes-bookmarks] .documents-tab.active,[data-feature=subjects] .documents-tab.active{color:var(--brand-accent);border-bottom-color:var(--brand-accent)}.documents-tab-content{flex:1 1;min-height:400px}.documents-header-actions{display:flex;justify-content:center;gap:12px;margin-top:16px}.documents-error{margin-bottom:24px;padding:14px 16px;border-radius:12px;background:rgba(239,68,68,.12);color:#fca5a5;border:1px solid rgba(239,68,68,.4);font-size:14px}.documents-main{position:relative;flex:1 1;display:flex;flex-direction:column}.documents-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;min-height:auto}.documents-empty-icon{display:flex;align-items:center;color:var(--color-accent);font-size:48px;margin-bottom:12px;opacity:.6}.documents-empty-title{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:0}.documents-empty-description{font-size:16px;color:var(--text-secondary);margin-bottom:32px;max-width:500px}.documents-list{display:flex;flex-direction:column;gap:16px}.document-card{background:linear-gradient(160deg,var(--card-bg-solid) 0,#27274b 100%);border:1px solid var(--border-color);border-radius:16px;padding:20px 24px;transition:all .2s;box-shadow:0 4px 8px rgba(0,0,0,.15);position:relative;overflow:visible}.document-card:hover{border-color:#3a3a4e;box-shadow:0 8px 16px rgba(0,0,0,.25);transform:translateY(-2px)}.document-card:has(.chat-item-menu-open){z-index:10}.document-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px;position:relative;z-index:1}.document-card-header--stacked{flex-direction:column}.document-card-header-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;margin-bottom:8px}.document-card-body{width:100%}.document-card-left{flex:1 1;min-width:0}.document-card-title-row{display:flex;align-items:center;gap:12px;margin-bottom:0;flex:1 1;min-width:0}.document-card-icon{display:flex;align-items:center;color:var(--color-accent);font-size:20px;flex-shrink:0}[data-feature=documents] .document-card-icon,[data-feature=documents] .document-folder-icon{color:var(--brand-accent)}.document-card-name{font-size:18px;font-weight:600;color:var(--text-primary);flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-card-meta{display:flex;align-items:center;gap:16px;font-size:14px;color:var(--text-secondary);margin-left:32px}.document-card-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;position:relative;z-index:99999}.document-status-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.document-status-uploaded{background:rgba(156,163,175,.15);color:#d1d5db;border:1px solid rgba(156,163,175,.3)}.document-status-processing{color:#93c5fd}.document-status-processing,.document-status-ready{background:rgba(59,130,246,.15);border:1px solid rgba(59,130,246,.3)}.document-status-ready{color:#60a5fa}[data-theme=light] .document-status-ready{background:rgba(59,130,246,.1);color:#2563eb;border-color:rgba(59,130,246,.2)}.document-status-failed{background:rgba(239,68,68,.15);color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.documents-footer{margin-top:auto;padding-top:32px;border-top:1px solid var(--border-color);text-align:center}.documents-footer-text{font-size:13px;color:var(--text-secondary);line-height:1.6}.documents-footer-text strong{color:var(--text-primary);font-weight:600}.documents-drag-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(147,51,234,.1);border:2px dashed var(--color-accent);border-radius:16px;display:flex;align-items:center;justify-content:center;z-index:10;pointer-events:none}.documents-drag-overlay-text{font-size:18px;font-weight:600;color:var(--color-accent)}.documents-folder-list{display:flex;flex-direction:column;gap:24px}.document-folder{background:linear-gradient(160deg,var(--card-bg-solid) 0,#27274b 100%);border:1px solid var(--border-color);border-radius:16px;overflow:visible;transition:all .2s}.document-folder:hover{border-color:#3a3a4e;box-shadow:0 8px 16px rgba(0,0,0,.25)}.document-folder-header{padding:20px 24px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .2s}.document-folder-header:hover{background-color:hsla(0,0%,100%,.03)}.document-folder-header-left{display:flex;align-items:center;gap:12px}.document-folder-icon{color:var(--color-accent);font-size:12px;width:16px;display:flex;align-items:center;justify-content:center;transition:transform .2s}.document-folder-name{font-size:var(--list-item-title-size);font-weight:600;color:var(--text-primary);margin:0}.document-folder-count{font-size:14px;color:var(--text-secondary);font-weight:400}.document-folder-content{border-top:1px solid var(--border-color);padding:24px;overflow:visible}.document-folder-upload-section{margin-top:auto;margin-bottom:0;padding:var(--primary-action-padding-top) var(--primary-action-padding-x) var(--primary-action-padding-bottom);min-height:96px;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;box-sizing:border-box}.document-folder-upload-text{font-size:16px;color:var(--text-secondary);line-height:1.6;margin-bottom:12px}.document-folder-upload-actions{display:flex;gap:12px;justify-content:center}.document-folder-documents{position:relative;overflow:visible}.document-search-box{height:48px;min-height:48px;padding:0 16px;border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg-solid);display:flex;align-items:center;gap:12px;box-sizing:border-box}.document-search-box .document-search-input{flex:1 1;min-width:0;background:transparent;border:none;color:var(--text-primary);font-size:15px;line-height:1.5;outline:none}.document-search-box .document-search-input:focus,.document-search-box .document-search-input:focus-visible{outline:none}.document-search-box .document-search-input::placeholder{color:#6b7280}.document-search-box .document-search-icon{display:flex;align-items:center;color:var(--text-secondary);flex-shrink:0}.notes-search-box{position:relative;padding:0;border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg-solid)}.notes-search-box,.notes-search-box .document-search-input{width:100%;height:48px;min-height:48px;box-sizing:border-box}.notes-search-box .document-search-input{padding:0 40px 0 44px;border:none;border-radius:12px;background:transparent;color:var(--text-primary);font-size:15px;line-height:1.5;outline:none;vertical-align:middle}.notes-search-box .document-search-input:focus,.notes-search-box .document-search-input:focus-visible{outline:none}.notes-search-box .document-search-input::placeholder{color:#6b7280}.notes-search-box .document-search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);pointer-events:none;display:flex;align-items:center;color:var(--text-secondary)}.notes-search-box .document-search-icon svg{width:20px;height:20px}.notes-search-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;font-size:18px;line-height:1}.documents-search-row{display:flex;gap:12px;align-items:center;justify-content:flex-start}.documents-search-meta{color:var(--text-secondary);font-size:14px}.chat-subjects-tab .chat-list-item{cursor:default}.chat-subjects-tab .chat-list-items>.chat-list-item-wrapper:nth-child(odd){background:transparent}.chat-subjects-tab .chat-list-items>.chat-list-item-wrapper:nth-child(2n){background:hsla(0,0%,100%,.04)}[data-theme=light] .chat-subjects-tab .chat-list-items>.chat-list-item-wrapper:nth-child(odd){background:var(--card-bg-solid)}[data-theme=light] .chat-subjects-tab .chat-list-items>.chat-list-item-wrapper:nth-child(2n){background:#f9fafb}.chat-subjects-tab .chat-list-item:hover,[data-theme=light] .chat-subjects-tab .chat-list-item:hover{background:transparent}[data-theme=light] .add-subject-modal .form-label{color:var(--color-text-label)}[data-theme=light] .add-subject-modal .form-input{background:#fefaf2;border-color:var(--color-border-input-light);color:#111827}[data-theme=light] .add-subject-modal .modal-footer .btn-secondary{color:var(--color-text-label)}[data-theme=light] .add-subject-modal .modal-footer .btn-secondary:hover{color:#111827}[data-theme=light] .rename-modal .form-label{color:var(--color-text-label)}[data-theme=light] .rename-modal .form-input{background:#fefaf2;border-color:var(--color-border-input-light);color:#111827}[data-theme=light] .rename-modal .modal-footer .btn-secondary{color:var(--color-text-label)}[data-theme=light] .rename-modal .modal-footer .btn-secondary:hover{color:#111827}.settings-coming-soon{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 20px;gap:24px}.coming-soon-icon{font-size:64px;line-height:1;opacity:.8}.coming-soon-title{font-size:28px;font-weight:600;color:var(--text-primary);margin:0}.coming-soon-description{font-size:16px;color:var(--text-secondary);line-height:1.6;max-width:500px;margin:0}.coming-soon-features{list-style:none;margin:0;display:flex;flex-direction:column;gap:12px;text-align:left;max-width:400px;width:100%;padding:24px;background:rgba(147,51,234,.08);border-radius:12px;border:1px solid rgba(147,51,234,.2)}.coming-soon-features li{font-size:15px;color:#e5e7eb;padding-left:24px;position:relative;line-height:1.6}.coming-soon-features li:before{content:"✓";position:absolute;left:0;color:var(--color-accent);font-weight:600}.coming-soon-footer{font-size:14px;color:var(--text-secondary);margin:0;font-style:italic}.chat-subjects-tab{display:flex;flex-direction:column;gap:20px}.chat-subjects-tab--modal-open .chat-item-menu-wrapper{visibility:hidden!important;opacity:0!important;pointer-events:none!important}.chat-subjects-actions{display:flex;justify-content:center;align-items:center;width:100%;margin-bottom:0}.chat-subjects-tab{gap:12px}.chat-subjects-search-icon{font-size:20px}.chat-subjects-count{font-size:14px;color:var(--text-secondary);font-weight:500;min-height:32px;display:flex;align-items:center}.chat-subjects-loading{padding:40px;text-align:center;color:var(--text-secondary);font-size:15px}.sidebar{padding:var(--sidebar-padding);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04),4px 0 20px rgba(0,0,0,.08)}.sidebar-nav{gap:10px;padding-right:4px}.sidebar-nav a{cursor:pointer}.nav-item{border-radius:16px;transition:transform .2s ease,box-shadow .2s ease;min-height:44px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06),0 2px 8px rgba(0,0,0,.06);border:1px solid transparent}.nav-item:hover{transform:translateY(-1px);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 12px rgba(0,0,0,.1)}.nav-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.nav-item-active{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.12),0 4px 14px rgba(0,0,0,.12)}.nav-item-active:hover{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.12),0 6px 18px rgba(0,0,0,.15)}.sidebar .btn-primary{background:linear-gradient(135deg,var(--sidebar-active-accent) 0,var(--sidebar-active-accent-hover) 100%)}.sidebar .btn-primary:hover{background:linear-gradient(135deg,var(--sidebar-active-accent-hover) 0,var(--sidebar-active-accent) 100%)}.nav-icon svg{width:22px;height:22px}.nav-label{font-weight:500}.active-dot{background-color:hsla(0,0%,100%,.9)}.header-hamburger{min-width:44px;min-height:44px;background:var(--nav-item-bg);border-radius:12px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06),0 2px 6px rgba(0,0,0,.06);transition:transform .2s ease,box-shadow .2s ease}.header-hamburger:hover{background:var(--nav-item-hover);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 12px rgba(0,0,0,.08)}.header-hamburger:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.header-hamburger svg{width:22px;height:22px}.mobile-drawer{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04),8px 0 32px rgba(0,0,0,.15)}.mobile-drawer-header{padding:16px 20px}.mobile-drawer-close{min-width:44px;min-height:44px;background:var(--nav-item-bg);border-radius:12px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06),0 2px 6px rgba(0,0,0,.06);transition:transform .2s ease,box-shadow .2s ease}.mobile-drawer-close:hover{background:var(--nav-item-hover);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 12px rgba(0,0,0,.08)}.mobile-drawer-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.mobile-drawer-content{padding:20px}.mobile-drawer-nav{gap:10px}.sidebar-back-button{padding:10px 14px;border:1px solid transparent;border-radius:12px;transition:transform .2s ease,box-shadow .2s ease;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06),0 2px 6px rgba(0,0,0,.06)}.sidebar-back-button:hover{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 12px rgba(0,0,0,.08)}.sidebar-back-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.sidebar-back-icon svg{width:20px;height:20px}@media (prefers-reduced-motion:reduce){.header-hamburger,.mobile-drawer-close,.nav-item,.sidebar-back-button{transition:none}.nav-item:hover{transform:none}}.time-management-main{padding-top:var(--content-padding-y)}.time-management-main .documents-header{margin-bottom:16px}.time-management-main .documents-content-section.time-management-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 var(--content-padding-x) var(--content-padding-y);min-height:200px}.time-management-timer-block{text-align:center;padding:32px 24px;min-width:280px;max-width:100%}.time-management-phase-label{font-size:18px;font-weight:600;margin:0 0 8px}.time-management-phase-label,.time-management-phase-label--work{color:var(--feature-accent,var(--color-accent))}.time-management-phase-label--longBreak,.time-management-phase-label--shortBreak{color:#10b981}.time-management-display{font-size:48px;font-weight:700;color:var(--text-primary);margin:0 0 8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em}.time-management-rounds{font-size:14px;color:var(--text-secondary);margin:0 0 24px}.time-management-controls{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}.time-management-main .btn-secondary,.time-management-main .btn-secondary.btn-sm,.time-management-main .time-management-btn.btn-secondary{color:var(--text-primary)}.time-management-controls button,.time-management-main .btn-secondary.btn-sm,.time-management-settings-modal .btn-secondary.btn-sm{min-width:180px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.time-management-main .btn-secondary.btn-sm:hover,.time-management-main .btn-secondary:hover{color:var(--text-primary)}[data-theme=light] .time-management-main .btn-secondary,[data-theme=light] .time-management-main .btn-secondary.btn-sm{background-color:#dbeafe;border-color:#93c5fd}[data-theme=light] .time-management-main .btn-secondary.btn-sm:hover,[data-theme=light] .time-management-main .btn-secondary:hover{background-color:#bfdbfe;border-color:#60a5fa}.time-management-btn{min-width:180px}.time-management-actions{margin-top:24px}.time-management-popup .modal-header{grid-template-columns:1fr}.time-management-popup .modal-header-left{grid-column:1}.time-management-popup .modal-icon-wrapper{background:linear-gradient(135deg,var(--feature-accent) 0,var(--feature-accent-hover) 100%)}.time-management-popup-phase-label{font-weight:600}.time-management-popup-phase-label--work{color:var(--feature-accent,var(--color-accent))}.time-management-popup-phase-label--longBreak,.time-management-popup-phase-label--shortBreak{color:#10b981}.time-management-settings-modal .btn-secondary,.time-management-settings-modal .btn-secondary.btn-sm{color:var(--text-primary)}.time-management-settings-current-phase{font-weight:600}.time-management-settings-current-phase--work{color:var(--feature-accent,var(--color-accent))}.time-management-settings-current-phase--longBreak,.time-management-settings-current-phase--shortBreak{color:#10b981}.time-management-settings-modal .btn-secondary.btn-sm:hover,.time-management-settings-modal .btn-secondary:hover{color:var(--text-primary)}[data-theme=light] .time-management-settings-modal .btn-secondary,[data-theme=light] .time-management-settings-modal .btn-secondary.btn-sm{background-color:#dbeafe;border-color:#93c5fd}[data-theme=light] .time-management-settings-modal .btn-secondary.btn-sm:hover,[data-theme=light] .time-management-settings-modal .btn-secondary:hover{background-color:#bfdbfe;border-color:#60a5fa}.time-management-settings-modal .form-label{color:var(--text-primary)}.time-management-settings-modal .form-label-hint{font-weight:400;color:var(--text-secondary);font-size:12px}.time-management-settings-modal #pomodoro-long,.time-management-settings-modal #pomodoro-rounds,.time-management-settings-modal #pomodoro-short,.time-management-settings-modal #pomodoro-work,.time-management-settings-modal .form-input{background:var(--card-bg-solid);border:1px solid var(--border-color)}.time-management-settings-modal #pomodoro-long:focus,.time-management-settings-modal #pomodoro-rounds:focus,.time-management-settings-modal #pomodoro-short:focus,.time-management-settings-modal #pomodoro-work:focus,.time-management-settings-modal .form-input:focus{border-color:var(--border-color);box-shadow:none}.time-management-settings-modal #pomodoro-long:focus-visible,.time-management-settings-modal #pomodoro-rounds:focus-visible,.time-management-settings-modal #pomodoro-short:focus-visible,.time-management-settings-modal #pomodoro-work:focus-visible,.time-management-settings-modal .form-input:focus-visible{outline:2px solid var(--border-color);outline-offset:2px}.time-management-settings-modal .modal-body{display:flex;flex-direction:column;align-items:center;gap:20px}.time-management-settings-custom-label,.time-management-settings-preset-label{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 8px;text-align:center;width:100%}.time-management-settings-presets{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.time-management-settings-presets .btn-secondary.btn-sm.active-preset{background:var(--feature-accent,var(--color-accent));color:#fff;border-color:var(--feature-accent,var(--color-accent))}.time-management-settings-presets .btn-secondary.btn-sm.active-preset:hover{background:var(--feature-accent-hover,var(--color-accent-hover));border-color:var(--feature-accent-hover,var(--color-accent-hover));color:#fff}.time-management-settings-custom-actions,.time-management-settings-modal .modal-body .form-field{width:100%}.time-management-settings-custom-actions{display:flex;gap:12px;margin-top:8px;justify-content:center}@media (max-width:480px){.time-management-display{font-size:40px}.time-management-controls{flex-direction:column}.time-management-btn{width:100%;max-width:220px}}.notification-bell-button{position:relative;display:flex;align-items:center;justify-content:center;width:clamp(36px,calc(65 * var(--header-scale, 1) * 1px),80px);height:clamp(36px,calc(65 * var(--header-scale, 1) * 1px),80px);background:transparent;border:1px solid var(--border-color);border-radius:clamp(8px,calc(12 * var(--header-scale, 1) * 1px),14px);color:var(--text-secondary);cursor:pointer;flex-shrink:0;text-decoration:none;transition:all .2s}.notification-bell-button svg{width:clamp(18px,calc(31 * var(--header-scale, 1) * 1px),38px);height:clamp(18px,calc(31 * var(--header-scale, 1) * 1px),38px)}.notification-bell-button:hover{background-color:var(--nav-item-hover);color:var(--text-primary);border-color:var(--color-accent)}.notification-bell-badge{position:absolute;top:clamp(-4px,calc(-5 * var(--header-scale, 1) * 1px),-6px);right:clamp(-4px,calc(-5 * var(--header-scale, 1) * 1px),-6px);min-width:clamp(16px,calc(20 * var(--header-scale, 1) * 1px),24px);height:clamp(16px,calc(20 * var(--header-scale, 1) * 1px),24px);padding:0 clamp(3px,calc(4 * var(--header-scale, 1) * 1px),5px);background:#dc2626;color:#fff;font-size:clamp(9px,calc(11 * var(--header-scale, 1) * 1px),13px);font-weight:700;border-radius:99px;display:flex;align-items:center;justify-content:center;line-height:1;pointer-events:none;box-shadow:0 0 0 2px var(--bg-color)}.notification-list-link{flex:1 1;display:flex;flex-direction:column;gap:4px;padding:16px 0;text-decoration:none;color:inherit;cursor:pointer;transition:background .2s;border-radius:0}.notification-title--read{font-weight:400!important;color:var(--text-secondary)!important}.notification-unread-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--color-accent);flex-shrink:0;margin-left:4px;align-self:center}.notification-delete-btn{color:var(--text-secondary)!important;transition:color .15s,background .15s!important}.notification-delete-btn:hover{color:#f87171!important;background:hsla(0,91%,71%,.12)!important}.notification-detail-back{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary);text-decoration:none;transition:color .15s;margin-bottom:24px}.notification-detail-back:hover{color:var(--text-primary)}.notification-detail-container{width:100%}.notification-detail-card{background:var(--nav-item-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:32px 36px;box-shadow:var(--shadow-sm)}.notification-detail-header{margin-bottom:24px;border-bottom:1px solid var(--border-color);padding-bottom:20px}.notification-detail-meta{display:flex;align-items:center;gap:12px;margin-bottom:12px}.notification-detail-type{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:3px 10px;border-radius:99px;background:rgba(147,51,234,.18);color:#c084fc}.notification-detail-type--study_room_invite_accepted,.notification-detail-type--user{background:rgba(16,185,129,.15);color:#34d399}.notification-detail-type--study_room_invite_declined{background:rgba(251,146,60,.15);color:#fb923c}.notification-detail-date{font-size:13px;color:var(--text-secondary)}.notification-detail-title{font-size:20px;font-weight:700;color:var(--text-primary);line-height:1.3;margin:0}.notification-detail-content{font-size:15px;color:var(--text-secondary);line-height:1.7;white-space:pre-wrap}.notification-detail-footer{margin-top:32px;padding-top:20px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end}.notification-detail-delete-btn{display:inline-flex;align-items:center;gap:8px;font-size:13px;padding:8px 16px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all .15s}.notification-detail-delete-btn:hover{border-color:#f87171;color:#f87171;background:hsla(0,91%,71%,.08)}.notification-invite-actions{display:flex;align-items:center;gap:10px;margin:16px 0 4px}.notification-invite-accept-btn{padding:9px 24px}.notification-invite-decline-btn{padding:9px 20px;background:none;border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.notification-invite-decline-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.notification-invite-decline-btn:disabled{opacity:.5;cursor:not-allowed}.notification-invite-result{font-size:14px;font-weight:500;margin:0}.notification-invite-result--accepted{color:#4ade80}.notification-invite-result--declined{color:var(--text-secondary)}[data-theme=light] .notification-detail-card{background:var(--card-bg-solid)}[data-theme=light] .notification-detail-content{color:var(--color-text-label,#374151)}@media (max-width:768px){.notification-detail-card{padding:20px}}@media (max-width:1024px){:root{--content-padding-x:24px;--content-padding-y:40px;--page-padding-top:40px;--page-padding-bottom:24px;--page-padding-x:24px;--chat-sessions-max-height:300px;--sidebar-padding:16px;--sidebar-header-margin:20px;--branding-margin:16px;--brand-title-size:16px;--brand-subtitle-size:11px;--avatar-size:36px;--avatar-font-size:18px;--user-name-size:13px;--user-status-size:11px;--nav-item-padding:10px 12px;--nav-item-font-size:14px;--nav-icon-size:18px;--nav-label-size:13px;--welcome-title-size:36px;--welcome-content-padding:24px;--login-padding:32px}.home-container{flex-direction:column;width:100%;overflow-x:hidden}.header-hamburger{display:flex!important}.home-container .sidebar{display:none!important}.chat-layout .sidebar{height:auto;min-height:0;flex-shrink:0;position:relative}.chat-layout .chat-page-container,.chat-layout .documents-page-container{flex:1 1;min-height:0}.sidebar{width:100%;min-width:unset;max-width:100%;border-right:none;border-bottom:1px solid var(--border-color);padding:var(--sidebar-padding);box-sizing:border-box}.user-profile{padding:10px;gap:10px}.avatar{width:var(--avatar-size);height:var(--avatar-size);font-size:var(--avatar-font-size)}.user-name{font-size:var(--user-name-size)}.user-status{font-size:var(--user-status-size)}.sidebar-nav{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.nav-item{padding:var(--nav-item-padding);font-size:var(--nav-item-font-size);justify-content:center}.nav-icon{font-size:var(--nav-icon-size)}.nav-label{font-size:var(--nav-label-size);text-align:center}.welcome-content{padding:var(--welcome-content-padding);width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.login-card,.login-content{padding:var(--login-padding)}.chat-page-container{flex-direction:column}.chat-header{padding:var(--page-padding-top) var(--page-padding-x) 16px var(--page-padding-x)}.chat-content{padding:0 var(--page-padding-x) 92px var(--page-padding-x)}.documents-page-container{flex-direction:column}.documents-header{padding:var(--page-padding-top) var(--page-padding-x) 16px var(--page-padding-x)}.documents-content{padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom) var(--page-padding-x)}.welcome-hero-headline{font-size:var(--welcome-title-size)}.welcome-quick-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.welcome-features-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (min-width:768px) and (max-width:1024px){:root{--sidebar-padding:12px 10px;--sidebar-header-margin:16px;--branding-margin:12px;--brand-title-size:15px;--brand-subtitle-size:10px;--avatar-size:32px;--avatar-font-size:16px;--user-name-size:12px;--user-status-size:10px;--nav-item-padding:8px 6px;--nav-item-font-size:15px;--nav-icon-size:16px;--nav-label-size:10px;--nav-grid-columns:3;--welcome-title-size:32px;--welcome-content-padding:20px 16px}.sidebar{padding:var(--sidebar-padding)}.user-profile{padding:8px;gap:8px}.avatar{width:var(--avatar-size);height:var(--avatar-size);font-size:var(--avatar-font-size)}.user-name{font-size:var(--user-name-size)}.user-status{font-size:var(--user-status-size)}.nav-item{padding:var(--nav-item-padding);font-size:var(--nav-item-font-size)}.nav-icon{font-size:var(--nav-icon-size)}.nav-item{flex-direction:column;gap:4px;align-items:center;justify-content:center;min-height:70px}.nav-label{font-size:var(--nav-label-size)}.welcome-hero-headline{font-size:var(--welcome-title-size);padding:0 8px}.welcome-hero-description{padding:0 8px}.welcome-content{padding:var(--welcome-content-padding)}.welcome-features-grid,.welcome-quick-grid,.welcome-stats{width:100%;max-width:100%;box-sizing:border-box;padding:0}.active-dot{top:4px;right:4px}}@supports (height:100dvh){@media (max-width:768px){.home-container.chat-layout{height:calc(100dvh - var(--header-height))}}}@media (max-width:768px){:root{--header-height:50px;--content-padding-x:20px;--content-padding-y:40px;--header-min-height:var(--header-min-height-sm);--header-top-block-min-height:var(--header-min-height-sm);--primary-action-padding-top:20px;--primary-action-padding-bottom:20px;--primary-action-padding-x:20px;--page-padding-top:40px;--page-padding-x:20px;--page-padding-bottom:20px;--chat-sessions-max-height:250px;--sidebar-padding:12px;--sidebar-header-margin:16px;--branding-margin:12px;--brand-title-size:15px;--brand-subtitle-size:10px;--avatar-size:32px;--avatar-font-size:16px;--user-name-size:12px;--user-status-size:10px;--nav-item-padding:8px 10px;--nav-item-font-size:13px;--nav-icon-size:16px;--nav-label-size:12px;--welcome-title-size:28px;--welcome-content-padding:24px;--login-padding:24px;--login-card-padding:28px;--profile-padding:24px;--profile-card-padding:28px}.header-chat-name-text{max-width:min(180px,50vw)}.header-profile,.header-profile .user-profile{min-width:0}.user-menu-button{min-width:40px;min-height:40px}.user-menu-dropdown{right:8px;max-width:calc(100vw - 24px)}.sidebar{padding:var(--sidebar-padding)}.avatar{width:var(--avatar-size);height:var(--avatar-size);font-size:var(--avatar-font-size)}.user-name{font-size:var(--user-name-size)}.user-status{font-size:var(--user-status-size)}.sidebar-nav{grid-template-columns:repeat(2,1fr);gap:6px;grid-template-columns:repeat(var(--nav-grid-columns,2),1fr)}.nav-item{padding:var(--nav-item-padding);font-size:var(--nav-item-font-size);flex-direction:column;gap:4px;align-items:center;justify-content:center;min-height:70px}.nav-icon{font-size:var(--nav-icon-size)}.nav-label{font-size:var(--nav-label-size)}.welcome-hero-headline{font-size:var(--welcome-title-size)}.chat-header{padding:var(--page-padding-top) var(--page-padding-x) 12px var(--page-padding-x)}.chat-content{padding:0 var(--page-padding-x) 92px var(--page-padding-x)}.documents-header{padding:var(--page-padding-top) var(--page-padding-x) 12px var(--page-padding-x)}.documents-content{padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom) var(--page-padding-x)}.welcome-quick-grid{grid-template-columns:repeat(2,1fr)}.welcome-features-grid,.welcome-stats{grid-template-columns:1fr}.login-content{padding:var(--login-padding)}.login-card{padding:var(--login-card-padding);max-width:100%}.login-title{font-size:28px}.profile-content{padding:var(--profile-padding)}.profile-card{padding:var(--profile-card-padding);max-width:100%}.profile-title{font-size:28px}.welcome-hero-cta{flex-direction:column}.btn-primary,.btn-secondary,.welcome-cta-secondary,.welcome-hero-cta .btn-primary{width:100%;min-width:0;justify-content:center}.modal-content{max-width:100%;margin:0;border-radius:16px 16px 0 0;max-height:95vh}.session-type-cards{grid-template-columns:1fr}.modal-body,.modal-footer,.modal-header{padding:20px}.documents-header{width:100%;max-width:100%;min-height:var(--header-min-height);padding:32px var(--content-padding-x) 20px var(--content-padding-x)}}@media (max-width:640px){.top-header--mobile-compact{height:64px;min-height:64px;--header-height:64px}.top-header--mobile-compact .header-resize-handle{display:none}.top-header--mobile-compact .header-content{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;grid-template-rows:64px;align-items:center;justify-items:center;grid-gap:0;gap:0;padding:0 8px;height:64px;min-width:0;width:100%;max-width:100%;box-sizing:border-box}.top-header--mobile-compact .header-content>.header-hamburger{grid-column:1;grid-row:1;justify-self:center;align-self:center;margin:0;width:40px;height:40px;flex-shrink:0}.top-header--mobile-compact .header-content>.header-brand-link{grid-column:2;grid-row:1;justify-self:stretch;align-self:center;display:block;min-width:0;width:100%;max-width:100%;overflow:hidden}.top-header--mobile-compact .header-branding{display:block;width:100%;min-width:0;max-width:100%}.top-header--mobile-compact .header-brand-icon{display:none}.top-header--mobile-compact .header-brand-text{display:block;width:100%;min-width:0;height:auto}.top-header--mobile-compact .header-brand-subtitle{display:none}.top-header--mobile-compact .header-mobile-title{margin:0;padding:0;width:100%;max-width:100%;font-size:15px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;color:var(--text-primary)}.top-header--mobile-compact .header-content>.header-profile{grid-column:3;grid-row:1;justify-self:center;align-self:center;display:flex;align-items:center;justify-content:center;width:48px;min-width:48px;max-width:48px;gap:0;flex-shrink:0}.top-header--mobile-compact .header-notification-bell,.top-header--mobile-compact .header-theme-toggle{display:none!important}.top-header--mobile-compact .user-profile--compact{display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;background:transparent;box-shadow:none;gap:0;min-width:0}.top-header--mobile-compact .avatar-wrapper--button .avatar,.top-header--mobile-compact .user-profile--compact .avatar{width:40px;height:40px;font-size:15px;border-radius:10px}.top-header--mobile-compact .avatar-wrapper--button{display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;margin:0;background:transparent;border:none;cursor:pointer;border-radius:12px;flex-shrink:0}.top-header--mobile-compact .avatar-wrapper--button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chat-input-actions-row--chat{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.chat-input-actions-row--chat .chat-input-actions-left-bundle{display:flex;align-items:center;gap:2px;flex:1 1;min-width:0}.chat-input-actions-row--chat .chat-input-actions-group--primary,.chat-input-actions-row--chat .chat-input-actions-group--secondary{display:flex;align-items:center;gap:2px;min-width:0}.chat-input-actions-row--chat .chat-input-actions-right{display:flex;align-items:center;gap:2px;justify-content:flex-end;margin-left:0;flex-shrink:0}.chat-image-attach-btn.chat-tool-btn--desktop-only,.chat-tool-btn--desktop-only{display:none!important}.chat-input-actions-row--chat .chat-beautify-btn,.chat-input-actions-row--chat .chat-input-more-btn,.chat-input-actions-row--chat .chat-send-btn,.chat-input-actions-row--chat .chat-stop-btn,.chat-input-actions-row--chat .chat-tool-btn,.chat-input-actions-row--chat .learning-mode-control{width:36px;height:36px;min-width:36px;max-width:36px;flex-shrink:0}.chat-input-actions-row--chat .learning-mode-trigger{width:auto;height:36px;padding:0 6px;min-width:36px;max-width:max-content;justify-content:center;gap:1px}.chat-input-actions-row--chat .learning-mode-trigger-label{display:none}.chat-input-actions-row--chat .learning-mode-trigger-chevron{display:flex;opacity:.85}.chat-input-actions-row--chat .learning-mode-trigger-chevron svg{width:12px;height:12px}.chat-input-actions-row--chat .learning-mode-control{width:auto;max-width:none}.chat-input-actions-row:not(.chat-input-actions-row--chat){flex-wrap:wrap;row-gap:2px}.chat-input-actions-row:not(.chat-input-actions-row--chat) .chat-input-actions-left{flex:1 1 100%;flex-wrap:wrap;gap:2px}.chat-input-actions-row:not(.chat-input-actions-row--chat) .chat-input-actions-right{margin-left:auto;gap:2px}}.mobile-account-sheet-overlay{position:fixed;inset:0;z-index:9998;background:rgba(0,0,0,.45);animation:mobile-account-overlay-in .2s ease}.mobile-account-sheet{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom,0px));z-index:9999;display:flex;flex-direction:column;gap:4px;padding:8px;background:var(--card-bg-solid,var(--card-bg));border:1px solid var(--border-color);border-radius:18px;box-shadow:0 12px 40px rgba(0,0,0,.28);animation:mobile-account-sheet-in .22s ease}@keyframes mobile-account-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes mobile-account-sheet-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.mobile-account-sheet-item{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:12px 14px;border:none;border-radius:12px;background:transparent;color:var(--text-primary);font-size:15px;font-weight:500;text-decoration:none;text-align:left;cursor:pointer;box-sizing:border-box;transition:background .15s ease}.mobile-account-sheet-item:focus-visible,.mobile-account-sheet-item:hover{background:var(--nav-item-hover);outline:none}.mobile-account-sheet-item:focus-visible{box-shadow:inset 0 0 0 2px var(--color-accent)}.mobile-account-sheet-item-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0}.mobile-account-sheet-item-icon svg{width:22px;height:22px}.mobile-account-sheet-badge{margin-left:auto;min-width:22px;height:22px;padding:0 7px;border-radius:11px;background:var(--color-accent);color:#fff;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.mobile-account-sheet-item--danger,.mobile-account-sheet-item--danger .mobile-account-sheet-item-icon{color:#ef4444}@media (max-width:480px){:root{--header-height:45px;--content-padding-x:16px;--content-padding-y:40px;--header-min-height:var(--header-min-height-xs);--header-top-block-min-height:var(--header-min-height-xs);--primary-action-padding-top:16px;--primary-action-padding-bottom:16px;--primary-action-padding-x:16px;--page-padding-top:40px;--page-padding-x:16px;--page-padding-bottom:16px;--chat-sessions-max-height:200px;--welcome-content-padding:16px;--login-padding:20px 16px;--login-card-padding:24px;--profile-padding:20px 16px;--profile-card-padding:24px;--profile-avatar-size:100px;--profile-avatar-font-size:40px;--sessions-title-size:16px;--new-session-font-size:13px;--documents-title-size:20px;--chat-header-title-size:20px;--modal-title-size:20px;--welcome-title-size:24px;--section-title-size:22px}.header-chat-name-text{max-width:min(180px,50vw)}.header-profile,.header-profile .user-profile{min-width:0}.header-profile .user-name{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-button{min-width:40px;min-height:40px}.user-menu-dropdown{right:8px;max-width:calc(100vw - 24px)}.sidebar-nav,.welcome-quick-grid{grid-template-columns:1fr}.welcome-content{padding:var(--welcome-content-padding)}.login-content{padding:var(--login-padding)}.login-card{padding:var(--login-card-padding)}.profile-content{padding:var(--profile-padding)}.profile-card{padding:var(--profile-card-padding)}.profile-avatar{width:var(--profile-avatar-size);height:var(--profile-avatar-size);font-size:var(--profile-avatar-font-size)}.profile-edit-actions{flex-direction:column}.profile-edit-actions .btn-primary,.profile-edit-actions .btn-secondary{width:100%}.sessions-title{font-size:var(--sessions-title-size)}.new-session-btn{padding:10px 12px;font-size:var(--new-session-font-size)}.chat-header{padding:var(--page-padding-top) var(--page-padding-x) 12px var(--page-padding-x)}.chat-content{padding:0 var(--page-padding-x) 92px var(--page-padding-x)}.chat-header-title{font-size:var(--chat-header-title-size)}.documents-header{padding:var(--page-padding-top) var(--page-padding-x) 12px var(--page-padding-x)}.documents-content{padding:var(--page-padding-top) var(--page-padding-x) var(--page-padding-bottom) var(--page-padding-x)}.documents-title{font-size:var(--documents-title-size)}.chat-input-bar-wrapper{padding:10px var(--page-padding-x) 20px}.modal-header{padding:16px}.modal-title{font-size:var(--modal-title-size)}.welcome-hero-brand{margin-bottom:40px}.welcome-hero-headline{font-size:var(--welcome-title-size)}.welcome-section-title{font-size:var(--section-title-size)}.documents-header{min-height:var(--header-min-height);padding:24px var(--content-padding-x)}.documents-header-icon svg{width:48px;height:48px}.document-folder-upload-actions .btn-primary{min-width:0;width:100%}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}[data-theme=light] .coming-soon-card{background:var(--card-bg-solid)}[data-theme=light] .coming-soon-icon-inner{color:var(--button-text-color)}[data-theme=light] .coming-soon-features-list{background:rgba(196,181,253,.35);border:1px solid rgba(147,51,234,.35)}[data-theme=light] .coming-soon-features-list li{color:var(--color-text-label)}[data-theme=light] .modal-content{background:var(--card-bg-solid)}[data-theme=light] .modal-icon{color:#fff}[data-theme=light] .profile-avatar{color:var(--button-text-color)}[data-theme=light] .profile-card{background:var(--card-bg-solid)}[data-theme=light] .profile-card .btn-secondary{color:#1d4ed8;background-color:#dbeafe;border-color:#93c5fd}[data-theme=light] .profile-card .btn-secondary:hover{color:#1e40af;background-color:#bfdbfe;border-color:#60a5fa}[data-theme=light] .profile-card .form-label{color:var(--color-text-label)}[data-theme=light] .profile-card .form-input,[data-theme=light] .profile-card .form-textarea{background-color:#fefaf2;border-color:var(--color-border-input-light);color:#111827}[data-theme=light] .login-card{background:#fefaf2}[data-theme=light] .login-card .form-label{color:var(--color-text-label)}[data-theme=light] .login-card .form-input{background:#fefaf2;border-color:var(--color-border-input-light);color:#111827}[data-theme=light] .login-card .social-button-google{color:#fdf7ed}.top-header{position:-webkit-sticky;position:sticky;top:0;width:100%;height:var(--header-height);min-height:var(--header-height);display:flex;align-items:center;background:var(--header-bg);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);z-index:100;overflow:visible;transition:background .3s ease,border-color .3s ease}.top-header .header-brand-subtitle,.top-header .header-brand-title,.top-header .header-branding,.top-header .header-branding>div,.top-header .header-content,.top-header .header-profile,.top-header .header-profile .avatar,.top-header .header-profile .user-menu-button,.top-header .header-profile .user-name,.top-header .header-profile .user-status,.top-header .header-resize-handle,.top-header .notification-bell-button,.top-header .theme-toggle-button{transition:font-size .12s ease,width .12s ease,height .12s ease,padding .12s ease,gap .12s ease,min-width .12s ease,margin .12s ease,max-width .12s ease}.header-resize-handle{position:absolute;left:0;right:0;bottom:0;height:clamp(6px,calc(8 * var(--header-scale, 1) * 1px),12px);cursor:ns-resize;z-index:1}.header-resize-handle:after{content:"";position:absolute;left:20%;right:20%;bottom:clamp(1px,calc(2 * var(--header-scale, 1) * 1px),3px);height:clamp(2px,calc(3 * var(--header-scale, 1) * 1px),4px);border-radius:clamp(1px,calc(2 * var(--header-scale, 1) * 1px),3px);background:var(--border-color);opacity:0;transition:opacity .15s ease}.header-resize-handle:hover:after{opacity:.8}.header-content{display:flex;align-items:center;justify-content:space-between;width:100%;padding:calc(22 * var(--header-scale, 1) * 1px) calc(34 * var(--header-scale, 1) * 1px);max-width:100%;margin:0 auto;box-sizing:border-box}.header-hamburger{display:none;align-items:center;justify-content:center;width:clamp(32px,calc(40 * var(--header-scale, 1) * 1px),48px);height:clamp(32px,calc(40 * var(--header-scale, 1) * 1px),48px);padding:0;margin-right:clamp(6px,calc(8 * var(--header-scale, 1) * 1px),10px);background:transparent;border:1px solid var(--border-color);border-radius:clamp(8px,calc(10 * var(--header-scale, 1) * 1px),12px);color:var(--text-primary);cursor:pointer;flex-shrink:0}.header-hamburger:hover{background:var(--nav-item-bg)}.header-hamburger svg{width:clamp(18px,calc(22 * var(--header-scale, 1) * 1px),26px);height:clamp(18px,calc(22 * var(--header-scale, 1) * 1px),26px)}.header-branding,.header-content>a{display:flex;align-items:center}.header-branding{gap:clamp(10px,calc(15 * var(--header-scale, 1) * 1px),20px);justify-self:start}.header-branding .header-icon-purple{color:var(--brand-accent-hover);flex-shrink:0;width:clamp(28px,calc(65 * var(--header-scale, 1) * 1px),80px);height:clamp(28px,calc(65 * var(--header-scale, 1) * 1px),80px)}.header-branding .header-icon-purple:hover{color:var(--brand-accent-hover)}.header-branding>div{height:clamp(28px,calc(65 * var(--header-scale, 1) * 1px),80px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.header-brand-title{font-size:clamp(12px,calc(22 * var(--header-scale, 1) * 1px),28px);font-weight:600;color:var(--text-primary);line-height:1.2;margin:0}.header-brand-subtitle{font-size:clamp(10px,calc(15 * var(--header-scale, 1) * 1px),18px);color:var(--text-secondary);margin:clamp(1px,calc(2 * var(--header-scale, 1) * 1px),4px) 0 0 0}.header-chat-name{display:flex;align-items:center;justify-content:center;text-align:center;justify-self:center}.header-chat-name-text{font-size:clamp(11px,calc(20 * var(--header-scale, 1) * 1px),24px);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:clamp(200px,calc(384 * var(--header-scale, 1) * 1px),420px)}.header-profile{display:flex;align-items:center;justify-self:end;gap:clamp(12px,calc(23 * var(--header-scale, 1) * 1px),28px);min-width:clamp(200px,calc(324 * var(--header-scale, 1) * 1px),400px)}.header-profile .user-profile{padding:clamp(6px,calc(9 * var(--header-scale, 1) * 1px),12px) clamp(12px,calc(20 * var(--header-scale, 1) * 1px),24px) clamp(6px,calc(9 * var(--header-scale, 1) * 1px),12px) clamp(8px,calc(13 * var(--header-scale, 1) * 1px),16px);min-width:clamp(100px,calc(151 * var(--header-scale, 1) * 1px),180px)}.header-profile .avatar{width:clamp(28px,calc(52 * var(--header-scale, 1) * 1px),64px);height:clamp(28px,calc(52 * var(--header-scale, 1) * 1px),64px);font-size:clamp(12px,calc(23 * var(--header-scale, 1) * 1px),28px)}.header-profile .user-name{font-size:clamp(11px,calc(16 * var(--header-scale, 1) * 1px),20px)}.header-profile .user-status{font-size:clamp(10px,calc(14 * var(--header-scale, 1) * 1px),18px)}.header-profile .user-menu-button{width:clamp(36px,calc(48 * var(--header-scale, 1) * 1px),60px);height:clamp(36px,calc(48 * var(--header-scale, 1) * 1px),60px);padding:clamp(6px,calc(9 * var(--header-scale, 1) * 1px),12px)}.header-profile .user-menu-button svg{width:clamp(18px,calc(23 * var(--header-scale, 1) * 1px),28px);height:clamp(18px,calc(23 * var(--header-scale, 1) * 1px),28px)}.theme-toggle-button{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;width:clamp(36px,calc(65 * var(--header-scale, 1) * 1px),80px);height:clamp(36px,calc(65 * var(--header-scale, 1) * 1px),80px);padding:0;border-radius:clamp(8px,calc(12 * var(--header-scale, 1) * 1px),14px);display:flex;align-items:center;justify-content:center;transition:all .2s}.theme-toggle-button svg{width:clamp(18px,calc(31 * var(--header-scale, 1) * 1px),38px);height:clamp(18px,calc(31 * var(--header-scale, 1) * 1px),38px)}.theme-toggle-button:hover{background-color:var(--nav-item-hover);color:var(--text-primary);border-color:var(--color-accent)}.mobile-drawer-overlay{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.5);display:flex;justify-content:flex-start;align-items:stretch;animation:mobile-drawer-overlay-in .2s ease}.mobile-drawer{width:min(320px,85vw);max-width:320px;background:var(--sidebar-bg);border-right:1px solid var(--border-color);display:flex;flex-direction:column;box-shadow:4px 0 24px rgba(0,0,0,.2);animation:mobile-drawer-slide-in .25s ease}@keyframes mobile-drawer-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes mobile-drawer-slide-in{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.mobile-drawer-header{padding:16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.mobile-drawer-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:transparent;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer}.mobile-drawer-close:hover{background:var(--nav-item-bg)}.mobile-drawer-close svg{width:24px;height:24px}.mobile-drawer-content{flex:1 1;overflow-y:auto;padding:16px;min-height:0}.mobile-drawer-nav{display:flex;flex-direction:column;gap:8px}.mobile-drawer-nav .nav-item{width:100%;justify-content:flex-start;padding:12px 16px}.auth-layout{justify-content:center;align-items:center;padding:24px}.auth-layout,.home-container{display:flex;min-height:calc(100vh - var(--header-height));background:var(--bg-color);width:100%;box-sizing:border-box}.home-container{overflow-x:hidden}.sidebar{width:280px;min-width:280px;background:var(--sidebar-bg);border-right:1px solid var(--border-color);padding:24px 0;box-shadow:var(--shadow-md);transition:background .3s ease,border-color .3s ease}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:rgba(147,51,234,.3);border-radius:10px}.sidebar::-webkit-scrollbar-thumb:hover{background:rgba(147,51,234,.5)}.user-profile{display:flex;align-items:center;gap:12px;padding:12px;background:var(--card-bg);border-radius:12px;box-shadow:var(--shadow-md);transition:background .3s ease}a.user-profile{text-decoration:none;color:inherit}.avatar-wrapper{position:relative}.avatar{width:40px;height:40px;border-radius:50%;background-color:var(--brand-accent-hover);color:#fefaf2;display:flex;align-items:center;justify-content:center;font-size:20px}.avatar svg{width:1.1em;height:1.1em;color:inherit}.status-indicator{position:absolute;bottom:0;right:0;width:12px;height:12px;background-color:var(--brand-accent-hover);border:2px solid var(--bg-color);border-radius:50%}.status-indicator--online{background-color:var(--status-online)}.user-info{display:flex;flex-direction:column;flex:1 1}.user-name{font-size:14px;font-weight:500;color:var(--text-primary)}.user-status{font-size:12px;color:var(--text-secondary)}.user-menu{position:relative}.user-menu-button{border:none;background:transparent;color:var(--text-secondary);cursor:pointer;padding:6px;border-radius:999px;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.user-menu-button svg{width:20px;height:20px}.user-menu-button:focus-visible,.user-menu-button:hover{background-color:var(--hover-bg)}.user-menu-button:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.user-menu-dropdown{position:absolute;right:0;top:120%;min-width:140px;background:var(--dropdown-bg);border-radius:8px;box-shadow:var(--shadow-lg);padding:6px 0;z-index:20;border:1px solid var(--border-color)}.user-menu-item{width:100%;padding:8px 12px;border:none;background:transparent;font-size:13px;text-align:left;cursor:pointer;gap:10px}.user-menu-item,.user-menu-item-icon{color:var(--text-primary);display:flex;align-items:center}.user-menu-item-icon{justify-content:center;width:18px;height:18px;flex-shrink:0}.user-menu-item-icon svg{width:100%;height:100%;color:inherit}.user-menu-item:focus-visible,.user-menu-item:hover{background-color:var(--nav-item-hover)}.user-menu-item:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}[data-theme=light] .user-menu-dropdown{background:var(--card-bg-solid);border-color:var(--border-color)}[data-theme=light] .user-menu-item,[data-theme=light] .user-menu-item-icon,[data-theme=light] .user-menu-item-icon svg{color:var(--text-primary)}[data-theme=light] .user-menu-item:focus-visible,[data-theme=light] .user-menu-item:hover{background-color:var(--nav-item-hover)}.sidebar-nav{flex-direction:column;gap:8px;flex:1 1;padding:0}.sidebar,.sidebar-nav{display:flex;overflow-y:auto}.sidebar{flex-direction:column;min-height:0}.sessions-list{flex-shrink:0;display:flex;flex-direction:column;gap:12px;margin-bottom:0}.sidebar-nav a{text-decoration:none;color:inherit;display:block}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;cursor:pointer;transition:all .2s;background:var(--nav-item-bg);color:var(--text-secondary);position:relative;box-shadow:var(--shadow-md);width:250px;margin:0 auto}.nav-item:hover{background-color:var(--nav-item-hover)}.nav-item-active{background:linear-gradient(135deg,var(--sidebar-active-accent) 0,var(--sidebar-active-accent-hover) 100%);color:var(--button-text-color);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 2px 6px rgba(0,0,0,.12)}.nav-item-active:hover{background:linear-gradient(135deg,var(--sidebar-active-accent-hover) 0,var(--sidebar-active-accent) 100%);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 10px rgba(0,0,0,.15)}.nav-icon{display:flex;align-items:center;flex-shrink:0}.nav-label{flex:1 1}.active-dot{width:8px;height:8px;background-color:var(--active-dot-color);border-radius:50%;flex-shrink:0}.sidebar-detail-header{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:16px;margin-bottom:8px;gap:12px}.sidebar-back-button{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--nav-item-bg);color:var(--text-secondary);border:none;border-radius:8px;cursor:pointer;transition:all .2s;font-size:14px;font-weight:500;box-shadow:var(--shadow-sm)}.sidebar-back-button:hover{background-color:var(--nav-item-hover);color:var(--text-primary)}.sidebar-back-icon{display:flex;align-items:center;flex-shrink:0}.sidebar-back-label{flex-shrink:0}.current-chat-name-wrapper{display:flex;justify-content:space-between;align-items:center;padding:16px 16px 12px;margin-bottom:12px;gap:8px;position:relative}.current-chat-name{display:flex;align-items:center;justify-content:center;flex:1 1;min-width:0}.current-chat-name-text{font-size:18px;font-weight:600;color:var(--text-primary);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.sessions-title-wrapper{display:flex;justify-content:center;align-items:center;padding:0;margin:0;flex:1 1}.sessions-title-wrapper a,.sessions-title-wrapper a:focus,.sessions-title-wrapper a:hover{text-decoration:none}.sessions-title{display:flex;align-items:center;justify-content:center;gap:10px;font-size:18px;font-weight:600;color:var(--text-primary);text-decoration:none}.sessions-title-icon{display:flex;align-items:center;color:var(--brand-accent);font-size:24px}.sessions-title-text{flex-shrink:0}.documents-separator{border-top:1px solid var(--border-color);margin:24px 16px 0}.documents-title-wrapper{display:flex;justify-content:center;align-items:center;padding:8px 16px;margin-bottom:8px}.documents-title,.documents-title-wrapper a,.documents-title-wrapper a:focus,.documents-title-wrapper a:hover{text-decoration:none}.documents-title{display:flex;align-items:center;justify-content:center;gap:10px;font-size:18px;font-weight:600;color:var(--text-primary);cursor:pointer;width:100%}.current-chat-name-wrapper,.sidebar-detail-header{padding:0 16px}.new-session-btn{margin:0 16px}.sessions-list{padding:0 16px}.documents-section{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%;padding:0}.attach-documents-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 14px;background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);color:var(--button-text-color);border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;width:250px;margin:0 auto 12px;min-height:38px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04),0 4px 8px rgba(0,0,0,.15)}.attach-documents-btn:hover{background:linear-gradient(135deg,#5795fb,#2f6ef3);transform:translateY(-1px)}.attach-documents-icon{display:flex;align-items:center;font-size:18px}.no-documents-attached{font-size:12px;color:var(--text-secondary);text-align:center;margin-top:4px;font-style:italic}.documents-title-icon{display:flex;align-items:center;color:var(--brand-accent);font-size:20px}.documents-title-text{flex-shrink:0;font-size:18px}.login-content{flex:1 1;display:flex;align-items:center;justify-content:center;padding:48px;overflow-y:auto}.login-card{width:100%;max-width:440px;padding:40px;border-radius:20px;background:linear-gradient(160deg,var(--card-bg-solid) 0,#27274b 100%);box-shadow:0 20px 40px rgba(0,0,0,.25);gap:24px}.login-card,.login-header{display:flex;flex-direction:column}.login-header{text-align:center;gap:12px}.login-title{font-size:32px;font-weight:600;color:var(--text-primary)}.login-subtitle{font-size:16px;color:var(--text-secondary);line-height:1.6}.login-message{padding:14px 16px;border-radius:12px;font-size:14px;font-weight:500;line-height:1.5}.login-message-success{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:1px solid rgba(59,130,246,.3)}.login-message-error{background:rgba(239,68,68,.12);color:#fca5a5;border:1px solid rgba(239,68,68,.4)}.login-message-info{background:rgba(59,130,246,.12);color:#93c5fd;border:1px solid rgba(59,130,246,.4)}.login-form{display:flex;flex-direction:column;gap:18px}.divider{height:1px;background:linear-gradient(90deg,rgba(148,163,184,0),rgba(148,163,184,.4),rgba(148,163,184,0))}.forgot-password-section{margin-top:8px}.forgot-password-link{margin-top:4px;background:none;border:none;padding:0;color:var(--color-accent);font-size:13px;cursor:pointer;text-align:left}.forgot-password-link:focus,.forgot-password-link:hover{text-decoration:underline}.forgot-password-link:focus{outline:none}.forgot-password-link:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.forgot-password-form{margin-top:8px;display:flex;flex-direction:column;gap:12px}.forgot-password-actions{display:flex;gap:8px;justify-content:flex-end}.social-login-group{display:flex;flex-direction:column;gap:12px}.social-button{width:100%;padding:14px 16px;border-radius:12px;border:none;cursor:pointer;font-size:15px;font-weight:600;transition:transform .2s,box-shadow .2s;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.04),0 8px 16px rgba(0,0,0,.2)}.social-button:hover{transform:translateY(-1px)}.social-button-apple{background:linear-gradient(135deg,#111827,#1f2937);color:#f9fafb;border:1px solid rgba(148,163,184,.2)}.social-button-google{background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);color:var(--text-primary);border:1px solid rgba(59,130,246,.3)}.login-footer{font-size:13px;color:var(--text-secondary);text-align:center;line-height:1.6}.login-footer p+p{margin-top:8px}.auth-inline-link{color:var(--color-accent);font-weight:600;text-decoration:none}.auth-inline-link:focus,.auth-inline-link:hover{text-decoration:underline}.auth-inline-link:focus{outline:none}.auth-inline-link:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.profile-content{flex:1 1;display:flex;align-items:center;justify-content:center;padding:48px;overflow-y:auto}.profile-card{width:100%;max-width:600px;padding:40px;border-radius:20px;background:linear-gradient(160deg,var(--card-bg-solid) 0,#27274b 100%);box-shadow:0 20px 40px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:24px;animation:profileFadeIn .4s ease-out}@keyframes profileFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes profileFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}.profile-card-fade-out{animation:profileFadeOut .4s ease-in forwards}.profile-header{display:flex;justify-content:center;align-items:flex-start;gap:16px;margin-bottom:1.5rem;position:relative}.profile-header-left{flex:1 1;text-align:center;display:flex;flex-direction:column;align-items:center}.profile-close-button{position:absolute;top:0;right:0}.profile-title{font-size:32px;font-weight:600;color:var(--text-primary)}.profile-subtitle{font-size:16px;color:var(--text-secondary);line-height:1.6}.profile-message{padding:14px 16px;border-radius:12px;font-size:14px;font-weight:500;line-height:1.5}.profile-message-success{background:rgba(16,185,129,.15);color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.profile-message-error{background:rgba(239,68,68,.12);color:#fca5a5;border:1px solid rgba(239,68,68,.4)}.profile-info{display:flex;flex-direction:column;gap:32px}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;gap:20px}.profile-avatar{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--brand-accent) 0,var(--brand-accent-hover) 100%);display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:600;color:var(--text-primary);box-shadow:0 8px 16px rgba(147,51,234,.3)}.profile-edit-btn{min-width:140px}.profile-edit-form{display:flex;flex-direction:column;gap:18px}.profile-edit-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.profile-edit-actions .btn-primary,.profile-edit-actions .btn-secondary{min-width:120px}.profile-details{display:flex;flex-direction:column;gap:20px}.profile-detail-row{display:flex;flex-direction:column;gap:8px;padding-bottom:20px;border-bottom:1px solid rgba(148,163,184,.1)}.profile-detail-row:last-child{border-bottom:none;padding-bottom:0}.profile-detail-bio{flex-direction:column}.profile-detail-label{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.profile-detail-value{font-size:16px;color:var(--text-primary);line-height:1.6}.profile-detail-bio .profile-detail-value{white-space:pre-wrap;word-wrap:break-word}.profile-change-email-section,.profile-change-password-section{padding-top:32px;border-top:1px solid rgba(148,163,184,.1);display:flex;flex-direction:column;gap:20px}.profile-section-header{display:flex;justify-content:space-between;align-items:center}.profile-section-title{font-size:20px;font-weight:600;color:var(--text-primary)}.profile-change-email-form,.profile-change-password-form{display:flex;flex-direction:column;gap:18px}.profile-email-actions,.profile-password-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.profile-email-actions .btn-primary,.profile-email-actions .btn-secondary,.profile-password-actions .btn-primary,.profile-password-actions .btn-secondary{min-width:120px}.coming-soon-content{flex:1 1;display:flex;align-items:center;justify-content:center;padding:var(--content-padding-x);overflow-y:auto;box-sizing:border-box}.coming-soon-card{width:100%;max-width:min(700px,100%);padding:var(--content-padding-y);border-radius:20px;background:linear-gradient(160deg,var(--card-bg-solid) 0,#27274b 100%);box-shadow:0 20px 40px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:32px}.coming-soon-header{display:flex;align-items:center;gap:16px;padding-bottom:24px;border-bottom:1px solid rgba(148,163,184,.1)}.coming-soon-icon-wrapper{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:12px;background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);box-shadow:0 8px 16px rgba(147,51,234,.3)}[data-feature=study-room] .coming-soon-icon-wrapper{background:linear-gradient(135deg,var(--brand-accent) 0,var(--brand-accent-hover) 100%)}[data-feature=study-room] .coming-soon-header{justify-content:center}[data-feature=study-room] .coming-soon-title-group{align-items:center;text-align:center}[data-feature=study-room] .coming-soon-page-title{font-size:clamp(22px,4vw,32px);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(520px,100%)}.coming-soon-icon-inner{color:var(--text-primary);display:flex;align-items:center;justify-content:center}[data-feature=study-room] .coming-soon-icon-inner{color:#fdf7ed}.coming-soon-title-group{display:flex;flex-direction:column;gap:4px}.coming-soon-page-title{font-size:32px;font-weight:600;color:var(--text-primary);margin:0}.coming-soon-page-subtitle{font-size:16px;color:var(--text-secondary);margin:0}.coming-soon-body{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 20px;gap:24px}.coming-soon-emoji{font-size:64px;line-height:1;opacity:.8}.coming-soon-body-title{font-size:28px;font-weight:600;color:var(--text-primary);margin:0}.coming-soon-body-description{font-size:16px;color:var(--text-secondary);line-height:1.6;max-width:500px;margin:0}.coming-soon-features-list{list-style:none;margin:0;display:flex;flex-direction:column;gap:12px;text-align:left;max-width:500px;width:100%;padding:24px;background:rgba(147,51,234,.08);border-radius:12px;border:1px solid rgba(147,51,234,.2)}.coming-soon-features-list li{font-size:15px;color:#e5e7eb;padding-left:24px;position:relative;line-height:1.6}.coming-soon-features-list li:before{content:"✓";position:absolute;left:0;color:var(--color-accent);font-weight:600}.coming-soon-body-footer{font-size:14px;color:var(--text-secondary);margin:0;font-style:italic}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.75);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-overlay--nested{z-index:10000}.discard-changes-dialog{max-width:440px}.modal-content{background:linear-gradient(135deg,#161629 0,var(--card-bg-solid) 100%);border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.5);border:1px solid var(--border-color);display:flex;flex-direction:column}.modal-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:flex-start;padding:24px;border-bottom:1px solid var(--border-color);position:relative}.modal-header-left{display:flex;align-items:flex-start;gap:16px;justify-content:center;grid-column:2}.modal-icon-wrapper{width:48px;height:48px;background:linear-gradient(135deg,var(--brand-accent) 0,var(--brand-accent-hover) 100%);border-radius:12px;flex-shrink:0}.modal-icon,.modal-icon-wrapper{display:flex;align-items:center;justify-content:center}.modal-icon{color:#fff}.modal-icon,.modal-icon svg{width:24px;height:24px}.modal-title-group{text-align:center}.modal-title{font-size:24px;font-weight:600;color:var(--text-primary);margin:0 0 4px;line-height:1.2}.modal-subtitle{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.4}.modal-close-button{background:transparent;border:none;color:var(--text-primary);cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0;width:32px;height:32px;grid-column:3;justify-self:end}.modal-close-button:hover{background:var(--border-color)}.modal-body{padding:24px;flex:1 1}.session-type-section{display:flex;flex-direction:column;gap:20px}.title-input-section{display:grid;grid-template-columns:auto 1fr;align-items:center;grid-gap:16px;gap:16px;margin-top:20px;margin-bottom:0}.title-input-label{font-size:16px;font-weight:600;color:var(--text-primary);margin:0;flex-shrink:0}.required-indicator{color:#ef4444;margin-left:2px}.title-input-field{background:var(--card-bg-solid);border:1px solid var(--border-color);border-radius:8px;padding:12px 16px;color:var(--text-primary);font-size:14px;outline:none;transition:all .2s;width:100%;box-sizing:border-box}.title-input-field:focus,.title-input-field:focus-visible{outline:none;border-color:var(--color-border-strong);box-shadow:none}.title-input-field::placeholder{color:var(--text-secondary)}.title-input-field:hover{border-color:#3a3a4e}.session-type-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.session-type-cards{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.session-type-card{background:var(--card-bg-solid);border:2px solid var(--border-color);border-radius:12px;padding:20px;cursor:pointer;transition:all .2s;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;position:relative}.session-type-card:not(.selected):hover{border-color:#3a3a4e;background:#252544}[data-theme=light] .session-type-card:not(.selected):hover{border-color:#d1d5db;background:#f3f4f6}.session-type-card.selected{background:var(--card-bg-solid);border:2px solid transparent;position:relative;box-shadow:0 0 8px rgba(59,130,246,.3)}.session-type-card.selected:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:14px;background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 50%,var(--color-accent) 100%);z-index:-1;pointer-events:none}.session-type-card.selected:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:12px;background:var(--card-bg-solid);z-index:-1;pointer-events:none}.session-type-card-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.session-type-card-icon.general-icon{background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%)}.session-type-card-icon.subject-icon{background:linear-gradient(135deg,var(--brand-accent) 0,var(--brand-accent-hover) 100%)}.session-type-icon{color:#fff8e7;display:flex;align-items:center;justify-content:center}.session-type-icon,.session-type-icon svg{width:24px;height:24px}.session-type-card-content{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.session-type-card-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.session-type-card-desc{font-size:13px;color:var(--text-secondary);margin:0;line-height:1.4}.subject-selector{display:flex;flex-direction:column;gap:8px;margin-top:8px}.subject-selector-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.subject-selector-label{font-size:14px;font-weight:500;color:var(--text-primary)}.subject-manage-link{background:transparent;border:none;color:var(--color-accent);font-size:13px;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .2s;text-decoration:none}.subject-manage-link:hover{background:rgba(147,51,234,.1);color:var(--color-accent)}.subject-selector-loading{padding:20px;text-align:center;color:var(--text-secondary);font-size:14px}.subject-selector-empty{display:flex;flex-direction:column;gap:12px;padding:20px;text-align:center;background:rgba(147,51,234,.05);border-radius:8px;border:1px dashed rgba(147,51,234,.3)}.subject-selector-empty-text{font-size:14px;color:var(--text-secondary);margin:0}.subject-selector-add-btn{padding:8px 16px;background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);color:var(--button-text-color);border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;align-self:center}.subject-selector-add-btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px rgba(147,51,234,.3)}.subject-selector-dropdown{background:var(--card-bg-solid);border:1px solid var(--border-color);border-radius:8px;padding:12px 16px;color:var(--text-primary);font-size:14px;cursor:pointer;outline:none;transition:all .2s}.subject-selector-dropdown:focus,.subject-selector-dropdown:focus-visible{outline:none;border-color:var(--color-border-strong);box-shadow:none}.subject-selector-dropdown:hover{border-color:#3a3a4e}.subject-selector-dropdown option{background:var(--card-bg-solid);color:var(--text-primary)}.upload-document-file-input{width:100%;padding:12px 16px;background:#1f1f35;border:1px solid #2a2a3e;border-radius:8px;color:#fff;font-size:15px;outline:none;transition:border-color .2s;cursor:pointer}.upload-document-file-input:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.upload-document-file-input:disabled{cursor:not-allowed}.upload-document-selected{padding:12px 16px;background:#1f1f35;border:1px solid #2a2a3e;border-radius:8px;color:#9ca3af;font-size:14px}[data-theme=light] .upload-document-file-input{background:#fefaf2;border-color:var(--color-border-input-light);color:#111827}[data-theme=light] .upload-document-selected{background:#fefaf2;border-color:var(--color-border-input-light);color:#6b7280}.rename-document-label{display:block;margin-bottom:8px;color:#9ca3af}.rename-document-input{width:100%;padding:12px;background-color:#1f1f35;border:1px solid #2a2a3e;border-radius:8px;color:#fff;font-size:16px;margin-bottom:24px;outline:none;transition:border-color .2s}.rename-document-input:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}[data-theme=light] .rename-document-modal .rename-document-label{color:var(--color-text-label)}[data-theme=light] .rename-document-modal .rename-document-input{background-color:#fefaf2;border-color:var(--color-border-input-light);color:#111827}[data-theme=light] .rename-document-modal .rename-document-cancel-btn{color:var(--color-text-label)}[data-theme=light] .rename-document-modal .rename-document-cancel-btn:hover{color:#111827}.modal-footer{padding:24px;border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}.modal-footer--end{justify-content:flex-end}.modal-footer--column{flex-direction:column;align-items:stretch}.attach-document-modal{max-width:550px!important;width:90%!important}.modal-back-button{display:flex;align-items:center;gap:8px;padding:8px 0;margin-bottom:16px;background:none;border:none;color:var(--color-accent);font-size:14px;font-weight:500;cursor:pointer;transition:color .2s ease}.modal-back-button:hover{color:var(--color-accent-hover)}.attach-modal-content-list{min-height:300px;max-height:400px;overflow-y:auto;padding-right:4px}.folder-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:8px;background:#1f1f35;margin-bottom:8px;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.folder-item:hover{background:#2a2a3e;border-color:#3f3f5e}.folder-item-left{gap:12px}.folder-icon,.folder-item-left{display:flex;align-items:center}.folder-icon{color:var(--color-accent)}.folder-name{color:#e5e7eb;font-size:15px;font-weight:500}.folder-chevron{color:#6b7280}.document-selection-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:8px;background:#1f1f35;margin-bottom:8px;cursor:pointer;transition:all .2s ease;border:1px solid #2a2a3e}.document-selection-item:hover:not(.already-attached){background:#2a2a3e;border-color:var(--color-accent)}.document-selection-item.selected{background:rgba(147,51,234,.1);border-color:var(--color-accent)}.document-selection-item.already-attached{opacity:.6;cursor:not-allowed;background:#1a1a2e}.document-item-left{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1}.document-info{display:flex;flex-direction:column;min-width:0;overflow:hidden}.document-name{color:#e5e7eb;font-size:15px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.already-attached-tag{color:#9ca3af;font-size:12px}.document-status-tags{display:flex;gap:8px;align-items:center}.status-tag{font-size:12px;padding:1px 6px;border-radius:4px;font-weight:500}.status-processing{background:rgba(59,130,246,.2);color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.status-uploaded{background:hsla(220,9%,46%,.2);color:#9ca3af;border:1px solid hsla(220,9%,46%,.3)}.status-failed{background:rgba(239,68,68,.2);color:#f87171;border:1px solid rgba(239,68,68,.3)}.selection-check{width:20px;height:20px;flex-shrink:0;border-radius:4px;border:2px solid #3f3f5e;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.selection-check.checked{background:var(--color-accent);border-color:var(--color-accent);color:var(--button-text-color)}.attach-submit-button{display:flex;align-items:center;gap:8px;padding:12px 24px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);color:var(--button-text-color);border:none;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.attach-submit-button:disabled{opacity:.5;cursor:not-allowed}.attach-submit-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(168,85,247,.3)}.cancel-button{background:transparent;border:1px solid var(--border-color);color:var(--text-primary);padding:12px 24px;border-radius:var(--radius-sm);font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-button:hover{background:var(--border-color);color:var(--text-primary)}.attached-documents-list{margin-top:12px;display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:scroll;padding:0 16px;width:100%;scrollbar-width:thin;scrollbar-color:var(--color-accent) hsla(0,0%,100%,.05)}.attached-documents-list::-webkit-scrollbar{width:6px;display:block!important}.attached-documents-list::-webkit-scrollbar-track{background:hsla(0,0%,100%,.05);border-radius:10px}.attached-documents-list::-webkit-scrollbar-thumb{background:var(--color-accent);border-radius:10px}.attached-documents-list::-webkit-scrollbar-thumb:hover{background:var(--color-accent-hover)}.attached-document-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:hsla(0,0%,100%,.05);border-radius:6px;border:1px solid hsla(0,0%,100%,.1);transition:all .2s ease}.attached-document-item:hover{background:hsla(0,0%,100%,.08);border-color:rgba(147,51,234,.3)}.attached-document-info{display:flex;align-items:center;gap:8px;overflow:hidden;flex:1 1}.attached-document-icon{color:var(--brand-accent);display:flex;align-items:center;flex-shrink:0}.attached-document-name{color:#e5e7eb;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.detach-document-btn{background:none;border:none;color:#6b7280;cursor:pointer;display:flex;align-items:center;padding:2px;border-radius:4px;transition:all .2s ease;flex-shrink:0}.detach-document-btn:hover{color:#ef4444;background:rgba(239,68,68,.1)}.detach-document-btn svg{width:14px;height:14px}[data-theme=light] .folder-item{background:#f3f4f6;border-color:#e5e7eb}[data-theme=light] .folder-item:hover{background:#e5e7eb}[data-theme=light] .folder-name{color:#1f2937}[data-theme=light] .document-selection-item{background:#f9fafb;border-color:#e5e7eb}[data-theme=light] .document-selection-item:hover:not(.already-attached){background:#f3f4f6;border-color:var(--color-accent)}[data-theme=light] .document-selection-item.selected{background:rgba(147,51,234,.05)}[data-theme=light] .status-processing{background:rgba(59,130,246,.1);color:#2563eb;border-color:rgba(59,130,246,.2)}[data-theme=light] .status-uploaded{background:hsla(220,9%,46%,.1);color:#4b5563;border-color:hsla(220,9%,46%,.2)}[data-theme=light] .status-failed{background:rgba(220,38,38,.1);color:#dc2626;border-color:rgba(220,38,38,.2)}[data-theme=light] .document-name{color:#1f2937}[data-theme=light] .selection-check{border-color:#d1d5db}[data-theme=light] .attach-document-modal .cancel-button{color:#6b7280;background-color:var(--border-color);border-color:var(--border-color)}[data-theme=light] .attach-document-modal .cancel-button:hover{color:#4b5563;background-color:#d1d5db;border-color:#d1d5db}[data-theme=light] .attached-document-item{background:rgba(0,0,0,.03);border-color:rgba(0,0,0,.05)}[data-theme=light] .attached-document-item:hover{background:rgba(0,0,0,.05)}[data-theme=light] .attached-document-name{color:var(--color-text-label)}[data-theme=light] .attached-documents-list{scrollbar-color:var(--color-accent) rgba(0,0,0,.05)}[data-theme=light] .attached-documents-list::-webkit-scrollbar-track{background:rgba(0,0,0,.05)}[data-theme=light] .attached-documents-list::-webkit-scrollbar-thumb{background:var(--color-accent);opacity:.8}[data-theme=light] .attached-documents-list::-webkit-scrollbar-thumb:hover{background:var(--color-accent-hover)}