.dashboard-container{max-width:1400px;margin:0 auto;padding:var(--space-6);animation:fadeIn var(--transition-base)}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-8);flex-wrap:wrap}.welcome-section{flex:1;min-width:250px}.welcome-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin-bottom:var(--space-2);line-height:var(--line-height-tight)}.welcome-subtitle{font-size:var(--text-lg);color:var(--color-gray-600);line-height:var(--line-height-normal)}.quick-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.quick-action-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-size:var(--text-base);font-weight:var(--font-medium);white-space:nowrap;min-height:var(--touch-target-min)}.quick-action-btn svg{width:20px;height:20px;flex-shrink:0}.alert{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-6);font-size:var(--text-sm);line-height:var(--line-height-normal)}.alert-error{background-color:var(--color-error-light);color:var(--color-error-dark);border:1px solid var(--color-error)}.alert .btn-link{margin-left:auto;color:inherit;text-decoration:underline;font-weight:var(--font-medium);padding:var(--space-1) var(--space-2)}.alert .btn-link:hover{text-decoration:none}.documents-section{animation:fadeIn var(--transition-base)}.section-title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-6)}.document-card{background:#fff;border-radius:var(--radius-xl);border:1px solid var(--color-gray-200);padding:var(--space-5);cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden}.document-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-300)}.document-card:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}.document-card:active{transform:translateY(-2px)}.document-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4)}.doc-icon{width:40px;height:40px;padding:var(--space-2);background:linear-gradient(135deg,var(--color-primary-50) 0%,var(--color-primary-100) 100%);border-radius:var(--radius-lg);color:var(--color-primary-600);flex-shrink:0}.document-card:hover .document-actions,.document-card:focus-within .document-actions{opacity:1}.action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--color-gray-100);color:var(--color-gray-600);transition:all var(--transition-fast);padding:0}.action-btn svg{width:16px;height:16px}.action-btn-danger:hover{background:var(--color-error-light);color:var(--color-error)}.document-card-body{display:flex;flex-direction:column;gap:var(--space-3)}.document-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900);line-height:var(--line-height-tight);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.document-meta{display:flex;flex-direction:column;gap:var(--space-2)}.meta-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-gray-600)}.document-card.skeleton{pointer-events:none;cursor:default}.document-card.skeleton:hover{transform:none;box-shadow:none;border-color:var(--color-gray-200)}.skeleton-header,.skeleton-title,.skeleton-text,.skeleton-footer{background:linear-gradient(90deg,var(--color-gray-200) 0%,var(--color-gray-100) 50%,var(--color-gray-200) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.skeleton-header{width:40px;height:40px;border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.skeleton-title{height:24px;width:80%;margin-bottom:var(--space-3)}.skeleton-text{height:16px;width:60%;margin-bottom:var(--space-2)}.skeleton-footer{height:16px;width:50%}@media (max-width: 1024px){.dashboard-container{padding:var(--space-5)}.documents-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-5)}.welcome-title{font-size:var(--text-2xl)}.welcome-subtitle{font-size:var(--text-base)}}@media (max-width: 768px){.dashboard-container{padding:var(--space-4)}.dashboard-header{flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-6)}.welcome-section{width:100%}.welcome-title{font-size:var(--text-xl)}.welcome-subtitle{font-size:var(--text-base)}.quick-actions{width:100%;flex-direction:column}.quick-action-btn{width:100%;justify-content:center}.documents-grid{grid-template-columns:1fr;gap:var(--space-4)}.section-title{font-size:var(--text-xl);margin-bottom:var(--space-4)}.document-actions{opacity:1}.document-card{padding:var(--space-4)}.document-card:hover{transform:none}.document-card:active{transform:scale(.98)}.document-title{font-size:var(--text-base)}.meta-item{font-size:var(--text-xs)}.empty-state{padding:var(--space-12) var(--space-4)}.empty-state-icon{width:100px;height:100px;margin-bottom:var(--space-5)}.empty-state-icon svg{width:50px;height:50px}.empty-state-title{font-size:var(--text-xl)}.empty-state-description{font-size:var(--text-base);margin-bottom:var(--space-6)}.empty-state-actions{width:100%;flex-direction:column}.empty-state-actions .btn{width:100%;justify-content:center}}@media (max-width: 768px){.dashboard-header{position:sticky;top:0;background:var(--color-gray-50);z-index:var(--z-sticky);padding-bottom:var(--space-4);margin-bottom:var(--space-4);border-bottom:1px solid var(--color-gray-200)}}@media (prefers-reduced-motion: reduce){.dashboard-container,.documents-section,.empty-state,.document-card,.document-actions,.action-btn{animation:none;transition:none}.document-card:hover,.action-btn:hover{transform:none}}@media (prefers-contrast: high){.document-card{border:2px solid var(--color-gray-900)}.document-card:hover{border-color:var(--color-primary-600)}.action-btn{border:1px solid currentColor}}.document-card:focus-visible,.action-btn:focus-visible,.quick-action-btn:focus-visible{outline:3px solid var(--color-primary-500);outline-offset:2px}.space-view-container{max-width:1400px;margin:0 auto;padding:var(--space-6);animation:fadeIn var(--transition-base)}.space-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-8);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-gray-200)}.space-info{flex:1;min-width:0}.space-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin-bottom:var(--space-2);line-height:var(--line-height-tight)}.space-description{font-size:var(--text-lg);color:var(--color-gray-600);line-height:var(--line-height-normal);max-width:800px}.space-controls{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding:var(--space-4);background:#fff;border-radius:var(--radius-lg);border:1px solid var(--color-gray-200)}.controls-left,.controls-right{display:flex;align-items:center;gap:var(--space-4)}.view-switcher{display:flex;gap:var(--space-1);background:var(--color-gray-100);padding:var(--space-1);border-radius:var(--radius-md)}.view-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-gray-600);cursor:pointer;transition:all var(--transition-fast)}.view-btn:hover{background:var(--color-gray-200);color:var(--color-gray-900)}.view-btn.active{background:#fff;color:var(--color-primary-600);box-shadow:var(--shadow-sm)}.view-btn svg{width:18px;height:18px}.document-count{font-size:var(--text-sm);color:var(--color-gray-600);font-weight:var(--font-medium)}.filter-toggle-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:#fff;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);color:var(--color-gray-700);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.filter-toggle-btn svg{width:16px;height:16px}.sort-select{padding:var(--space-2) var(--space-4);background:#fff;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);color:var(--color-gray-700);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.sort-select:hover{border-color:var(--color-gray-400)}.sort-select:focus{outline:2px solid var(--color-primary-500);outline-offset:2px;border-color:var(--color-primary-500)}.filters-panel{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-6);animation:slideDown var(--transition-base)}.filter-group{display:flex;flex-direction:column;gap:var(--space-3)}.filter-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-gray-700)}.filter-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.filter-chip{padding:var(--space-2) var(--space-4);background:var(--color-gray-100);border:1px solid var(--color-gray-300);border-radius:var(--radius-full);color:var(--color-gray-700);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.filter-chip:hover{background:var(--color-gray-200);border-color:var(--color-gray-400)}.filter-chip.active{background:var(--color-primary-500);border-color:var(--color-primary-500);color:#fff}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-6);animation:fadeIn var(--transition-base)}.document-card-grid{background:#fff;border-radius:var(--radius-xl);border:1px solid var(--color-gray-200);padding:var(--space-5);cursor:pointer;transition:all var(--transition-base);position:relative;display:flex;flex-direction:column;gap:var(--space-4)}.document-card-grid:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-300)}.document-card-grid:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}.document-card-grid:active{transform:translateY(-2px)}.document-card-grid .doc-icon{width:48px;height:48px;padding:var(--space-3);background:linear-gradient(135deg,var(--color-primary-50) 0%,var(--color-primary-100) 100%);border-radius:var(--radius-lg);color:var(--color-primary-600);flex-shrink:0}.document-card-grid .doc-icon svg{width:100%;height:100%}.documents-list{display:flex;flex-direction:column;gap:var(--space-3);animation:fadeIn var(--transition-base)}.document-card-list{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--color-gray-200);padding:var(--space-4);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--space-4)}.document-card-list:hover{background:var(--color-gray-50);border-color:var(--color-primary-300);box-shadow:var(--shadow-sm)}.document-card-list:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}.document-card-list .doc-icon{width:40px;height:40px;padding:var(--space-2);background:linear-gradient(135deg,var(--color-primary-50) 0%,var(--color-primary-100) 100%);border-radius:var(--radius-md);color:var(--color-primary-600);flex-shrink:0}.document-card-list .doc-icon svg{width:100%;height:100%}.document-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-2)}.document-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900);line-height:var(--line-height-tight);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.document-card-list .document-title{font-size:var(--text-base)}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-sm);line-height:1}.badge-warning{background:var(--color-warning-light);color:var(--color-warning-dark)}.document-meta{display:flex;flex-wrap:wrap;gap:var(--space-3)}.meta-item{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-gray-600)}.meta-item svg{width:14px;height:14px;flex-shrink:0;color:var(--color-gray-400)}.document-actions{display:flex;gap:var(--space-2);opacity:0;transition:opacity var(--transition-base)}.document-card-grid:hover .document-actions,.document-card-grid:focus-within .document-actions,.document-card-list:hover .document-actions,.document-card-list:focus-within .document-actions{opacity:1}.action-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--color-gray-100);color:var(--color-gray-600);border:none;cursor:pointer;transition:all var(--transition-fast);padding:0}.action-btn:hover{background:var(--color-gray-200);color:var(--color-gray-900);transform:scale(1.1)}.action-btn:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}.action-btn svg{width:18px;height:18px}.fab{position:fixed;bottom:var(--space-6);right:var(--space-6);width:56px;height:56px;display:none;align-items:center;justify-content:center;background:var(--color-primary-600);color:#fff;border:none;border-radius:var(--radius-full);box-shadow:var(--shadow-xl);cursor:pointer;transition:all var(--transition-base);z-index:var(--z-fixed)}.fab:hover{background:var(--color-primary-700);transform:scale(1.1)}.fab:active{transform:scale(.95)}.fab svg{width:24px;height:24px}.bottom-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-fast)}.bottom-sheet{position:fixed;bottom:0;left:0;right:0;background:#fff;border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:80vh;overflow-y:auto;z-index:var(--z-modal);animation:slideUp var(--transition-base)}.bottom-sheet-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5);border-bottom:1px solid var(--color-gray-200);position:sticky;top:0;background:#fff;z-index:1}.bottom-sheet-header h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0}.close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-gray-100);border:none;border-radius:var(--radius-md);color:var(--color-gray-600);cursor:pointer;transition:all var(--transition-fast);padding:0}.close-btn:hover{background:var(--color-gray-200);color:var(--color-gray-900)}.close-btn svg{width:18px;height:18px}.bottom-sheet-content{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-6)}.bottom-sheet-content .form-select{width:100%;padding:var(--space-3);background:#fff;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);color:var(--color-gray-700);font-size:var(--text-base);cursor:pointer}.empty-state-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.empty-state-actions .btn{display:inline-flex;align-items:center;gap:var(--space-2)}.empty-state-actions .btn svg{width:20px;height:20px}.space-header.skeleton{pointer-events:none}.skeleton-title,.skeleton-text{background:linear-gradient(90deg,var(--color-gray-200) 0%,var(--color-gray-100) 50%,var(--color-gray-200) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}@media (max-width: 1024px){.space-view-container{padding:var(--space-5)}.documents-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-5)}.space-title{font-size:var(--text-2xl)}.space-description{font-size:var(--text-base)}}@media (max-width: 768px){.space-view-container{padding:var(--space-4);padding-bottom:var(--space-16)}.space-header{flex-direction:column;gap:var(--space-4);position:sticky;top:0;background:var(--color-gray-50);z-index:var(--z-sticky);padding:var(--space-4);margin:calc(var(--space-4) * -1);margin-bottom:var(--space-6)}.space-info{width:100%}.space-title{font-size:var(--text-xl)}.space-description{font-size:var(--text-sm)}.space-header .btn{display:none}.space-controls{flex-direction:column;align-items:stretch;gap:var(--space-3)}.controls-left,.controls-right{width:100%;justify-content:space-between}.view-switcher{display:none}.sort-select,.filter-toggle-btn{flex:1}.documents-grid{display:flex;flex-direction:column;gap:var(--space-3)}.document-card-grid{flex-direction:row;align-items:center;padding:var(--space-4)}.document-card-grid:hover{transform:none}.document-card-grid:active{transform:scale(.98)}.document-card-grid .doc-icon{width:40px;height:40px}.document-actions{opacity:1}.action-btn{width:32px;height:32px}.action-btn svg{width:16px;height:16px}.fab{display:flex}.filters-panel{display:none}.empty-state{padding:var(--space-12) var(--space-4)}.empty-state-icon{width:100px;height:100px;margin-bottom:var(--space-5)}.empty-state-icon svg{width:50px;height:50px}.empty-state-title{font-size:var(--text-xl)}.empty-state-description{font-size:var(--text-base);margin-bottom:var(--space-6)}.empty-state-actions{width:100%;flex-direction:column}.empty-state-actions .btn{width:100%;justify-content:center}}@media (prefers-reduced-motion: reduce){.space-view-container,.documents-grid,.documents-list,.document-card-grid,.document-card-list,.filters-panel,.bottom-sheet,.bottom-sheet-backdrop,.empty-state,.fab{animation:none;transition:none}.document-card-grid:hover,.action-btn:hover,.fab:hover{transform:none}}@media (prefers-contrast: high){.document-card-grid,.document-card-list{border:2px solid var(--color-gray-900)}.document-card-grid:hover,.document-card-list:hover{border-color:var(--color-primary-600)}.action-btn,.view-btn,.filter-chip{border:1px solid currentColor}}.document-card-grid:focus-visible,.document-card-list:focus-visible,.action-btn:focus-visible,.view-btn:focus-visible,.filter-chip:focus-visible,.filter-toggle-btn:focus-visible,.sort-select:focus-visible,.fab:focus-visible{outline:3px solid var(--color-primary-500);outline-offset:2px}.fullscreen-viewer{display:flex;flex-direction:column;height:100%;background-color:var(--color-gray-50)}.viewer-top-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-6);background-color:#fff;border-bottom:1px solid var(--color-gray-200);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:var(--z-sticky);flex-wrap:wrap}.viewer-toolbar-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.viewer-toolbar-actions .btn{font-size:var(--text-sm);padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);font-weight:var(--font-medium);transition:all var(--transition-fast);min-height:40px}.viewer-toolbar-actions .btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.viewer-toolbar-actions .btn-primary{background-color:var(--color-primary-600);color:#fff;border:none}.viewer-toolbar-actions .btn-primary:hover{background-color:var(--color-primary-700)}.viewer-toolbar-actions .btn-secondary{background-color:var(--color-gray-100);color:var(--color-gray-700);border:1px solid var(--color-gray-300)}.viewer-toolbar-actions .btn-secondary:hover{background-color:var(--color-gray-200);border-color:var(--color-gray-400)}.viewer-toolbar-actions .btn-danger{background-color:var(--color-error);color:#fff;border:none}.viewer-toolbar-actions .btn-danger:hover{background-color:#dc2626}.document-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-gray-600);white-space:nowrap}.document-meta .text-muted{color:var(--color-gray-500)}.viewer-toolbar-actions .text-muted{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background-color:var(--color-gray-100);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-gray-600)}.delete-confirm-bar{padding:var(--space-4) var(--space-6);background-color:var(--color-error-light);border-bottom:1px solid var(--color-error);animation:slideDown var(--transition-base)}.delete-confirm-bar p{margin-bottom:var(--space-3);color:var(--color-error-dark);font-weight:var(--font-medium);font-size:var(--text-sm)}.delete-confirm-bar .flex{display:flex}.delete-confirm-bar .gap-10{gap:var(--space-3)}.viewer-content-layout{display:flex;flex:1;overflow:hidden;position:relative}.viewer-content-wrapper{flex:1;overflow-y:auto;padding:var(--space-8) var(--space-6);transition:margin-right var(--transition-base)}.viewer-content-wrapper.with-sidebar{margin-right:320px}.viewer-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);line-height:var(--line-height-tight);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:2px solid var(--color-gray-200);max-width:900px;margin-left:auto;margin-right:auto}.viewer-prose{max-width:900px;margin:0 auto;font-size:var(--text-base);line-height:var(--line-height-relaxed);color:var(--color-gray-800)}.viewer-prose h1{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin-top:var(--space-8);margin-bottom:var(--space-4);line-height:var(--line-height-tight)}.viewer-prose h2{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-top:var(--space-6);margin-bottom:var(--space-3);line-height:var(--line-height-tight)}.viewer-prose h3{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-top:var(--space-5);margin-bottom:var(--space-3);line-height:var(--line-height-tight)}.viewer-prose p{margin-bottom:var(--space-4);line-height:var(--line-height-relaxed)}.viewer-prose ul,.viewer-prose ol{margin-bottom:var(--space-4);padding-left:var(--space-6);list-style:initial}.viewer-prose ul{list-style-type:disc}.viewer-prose ol{list-style-type:decimal}.viewer-prose li{margin-bottom:var(--space-2);line-height:var(--line-height-relaxed)}.viewer-prose a{color:var(--color-primary-600);text-decoration:underline;transition:color var(--transition-fast)}.viewer-prose a:hover{color:var(--color-primary-700)}.viewer-prose blockquote{border-left:4px solid var(--color-primary-600);padding-left:var(--space-4);margin:var(--space-4) 0;font-style:italic;color:var(--color-gray-600)}.viewer-prose code{background-color:var(--color-gray-100);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.9em;color:var(--color-gray-800)}.viewer-prose pre{background-color:var(--color-gray-900);color:var(--color-gray-100);padding:var(--space-4);border-radius:var(--radius-lg);overflow-x:auto;margin:var(--space-4) 0}.viewer-prose pre code{background-color:transparent;padding:0;color:inherit}.viewer-prose table{width:100%;border-collapse:collapse;margin:var(--space-4) 0;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden}.viewer-prose th,.viewer-prose td{padding:var(--space-3);text-align:left;border-bottom:1px solid var(--color-gray-200)}.viewer-prose th{background-color:var(--color-gray-100);font-weight:var(--font-semibold);color:var(--color-gray-900)}.viewer-prose tr:last-child td{border-bottom:none}.viewer-prose img{max-width:100%;height:auto;border-radius:var(--radius-lg);margin:var(--space-4) 0}.viewer-prose hr{border:none;border-top:2px solid var(--color-gray-200);margin:var(--space-6) 0}.viewer-sidebar{position:fixed;right:0;top:0;width:320px;height:100vh;background-color:#fff;border-left:1px solid var(--color-gray-200);box-shadow:var(--shadow-lg);overflow-y:auto;padding:var(--space-6);z-index:var(--z-fixed);animation:slideInRight var(--transition-base)}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.viewer-sidebar h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-4)}.viewer-sidebar .version-item{padding:var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);margin-bottom:var(--space-3);transition:all var(--transition-fast)}.viewer-sidebar .version-item:hover{border-color:var(--color-primary-300);background-color:var(--color-primary-50)}.viewer-sidebar .version-item.current{background-color:var(--color-primary-50);border-color:var(--color-primary-600)}@media (min-width: 768px) and (max-width: 1023px){.viewer-top-bar{padding:var(--space-4) var(--space-5)}.viewer-content-wrapper{padding:var(--space-6) var(--space-5)}.viewer-content-wrapper.with-sidebar{margin-right:280px}.viewer-sidebar{width:280px}.viewer-title{font-size:var(--text-2xl)}.viewer-prose{font-size:var(--text-base)}}@media (max-width: 767px){.viewer-top-bar{padding:var(--space-3) var(--space-4);flex-direction:column;align-items:stretch;gap:var(--space-3)}.viewer-toolbar-actions{flex-wrap:wrap;gap:var(--space-2);width:100%}.viewer-toolbar-actions .btn{flex:1;min-width:0;font-size:var(--text-sm);padding:var(--space-2) var(--space-3);justify-content:center}.document-meta{width:100%;justify-content:center;font-size:var(--text-xs);padding-top:var(--space-2);border-top:1px solid var(--color-gray-200)}.delete-confirm-bar{padding:var(--space-3) var(--space-4)}.delete-confirm-bar .flex{flex-direction:column;gap:var(--space-2)}.delete-confirm-bar .btn{width:100%}.viewer-content-wrapper{padding:var(--space-4)}.viewer-content-wrapper.with-sidebar{margin-right:0}.viewer-title{font-size:var(--text-2xl);margin-bottom:var(--space-4);padding-bottom:var(--space-3)}.viewer-prose{font-size:var(--text-base)}.viewer-prose h1{font-size:var(--text-2xl);margin-top:var(--space-6)}.viewer-prose h2{font-size:var(--text-xl);margin-top:var(--space-5)}.viewer-prose h3{font-size:var(--text-lg);margin-top:var(--space-4)}.viewer-prose table{font-size:var(--text-sm)}.viewer-prose th,.viewer-prose td{padding:var(--space-2)}.viewer-sidebar{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;height:70vh;max-height:70vh;border-left:none;border-top:1px solid var(--color-gray-200);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;padding:var(--space-4);animation:slideUp var(--transition-base)}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.viewer-sidebar:before{content:"";position:absolute;top:var(--space-2);left:50%;transform:translate(-50%);width:40px;height:4px;background-color:var(--color-gray-300);border-radius:var(--radius-full)}}.viewer-fab{position:fixed;bottom:var(--space-6);right:var(--space-6);width:56px;height:56px;border-radius:var(--radius-full);background-color:var(--color-primary-600);color:#fff;border:none;box-shadow:var(--shadow-xl);display:none;align-items:center;justify-content:center;font-size:var(--text-xl);cursor:pointer;transition:all var(--transition-fast);z-index:var(--z-fixed)}.viewer-fab:hover{background-color:var(--color-primary-700);transform:scale(1.05);box-shadow:var(--shadow-2xl)}.viewer-fab:active{transform:scale(.95)}@media (max-width: 767px){.viewer-fab{display:flex}}.mobile-actions-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-fast)}.mobile-actions-sheet{position:fixed;bottom:0;left:0;right:0;background-color:#fff;border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;padding:var(--space-6) var(--space-4);z-index:var(--z-modal);box-shadow:var(--shadow-2xl);animation:slideUp var(--transition-base);max-height:80vh;overflow-y:auto}@media print{.viewer-top-bar,.viewer-sidebar,.viewer-fab,.delete-confirm-bar{display:none!important}.viewer-content-wrapper{margin-right:0!important;padding:0!important}.viewer-title{page-break-after:avoid}.viewer-prose{max-width:100%}.viewer-prose h1,.viewer-prose h2,.viewer-prose h3{page-break-after:avoid}.viewer-prose table,.viewer-prose img,.viewer-prose pre{page-break-inside:avoid}}@media (prefers-contrast: high){.viewer-top-bar{border-bottom-width:2px}.viewer-title{border-bottom-width:3px}.viewer-sidebar{border-left-width:2px}}@media (prefers-reduced-motion: reduce){.viewer-sidebar,.delete-confirm-bar,.viewer-fab{animation:none}.viewer-content-wrapper{transition:none}}.agent-management{max-width:1400px;margin:0 auto;padding:var(--space-10, 40px) var(--space-6, 24px);min-height:calc(100vh - 80px)}.agent-management-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-10, 40px);gap:var(--space-6, 24px)}.agent-management-header h1{margin:0 0 var(--space-2, 8px) 0;font-size:var(--text-4xl, 36px);font-weight:var(--font-bold, 700);color:var(--color-gray-900, #111827);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.agent-management-subtitle{color:var(--color-gray-600, #4b5563);margin:0;font-size:var(--text-lg, 18px);line-height:var(--line-height-relaxed, 1.75)}.agent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--space-6, 24px)}.agent-card{background:#fff;border-radius:var(--radius-xl, 12px);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06));overflow:hidden;transition:all var(--transition-base, .2s) cubic-bezier(.4,0,.2,1);border:1px solid transparent}.agent-card:hover{box-shadow:var(--shadow-xl, 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04));transform:translateY(-4px);border-color:#667eea33}.agent-card-header{height:140px;display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(135deg,#667eea,#764ba2);overflow:hidden}.agent-card-header:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{0%,to{transform:translate(0)}50%{transform:translate(-10%,-10%)}}.agent-card-avatar{font-size:56px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));position:relative;z-index:1;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.agent-card-body{padding:var(--space-6, 24px)}.agent-card-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3, 12px);gap:var(--space-2, 8px)}.agent-card-title{margin:0;font-size:var(--text-xl, 20px);font-weight:var(--font-semibold, 600);color:var(--color-gray-900, #111827);line-height:var(--line-height-tight, 1.25)}.agent-badge{padding:var(--space-1, 4px) var(--space-3, 12px);border-radius:var(--radius-full, 9999px);font-size:var(--text-xs, 12px);font-weight:var(--font-semibold, 600);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.agent-badge-public{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;box-shadow:0 2px 4px #92400e1a}.agent-badge-internal{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;box-shadow:0 2px 4px #1e40af1a}.agent-card-description{color:var(--color-gray-600, #4b5563);font-size:var(--text-sm, 14px);margin:0 0 var(--space-5, 20px) 0;line-height:var(--line-height-relaxed, 1.75);min-height:48px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.agent-card-stats{display:flex;gap:var(--space-8, 32px);padding:var(--space-5, 20px) 0;margin-bottom:var(--space-5, 20px);background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:var(--radius-lg, 8px);padding:var(--space-4, 16px);justify-content:space-around}.agent-stat{display:flex;flex-direction:column;align-items:center;gap:var(--space-1, 4px)}.agent-stat-value{font-size:var(--text-3xl, 30px);font-weight:var(--font-bold, 700);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.agent-stat-label{font-size:var(--text-xs, 12px);color:var(--color-gray-500, #6b7280);text-transform:uppercase;font-weight:var(--font-medium, 500);letter-spacing:.5px}.agent-card-actions{display:flex;gap:var(--space-2, 8px)}.btn-agent-secondary{flex:1;padding:var(--space-3, 12px) var(--space-4, 16px);border:2px solid var(--color-gray-200, #e5e7eb);background:#fff;color:var(--color-gray-700, #374151);border-radius:var(--radius-lg, 8px);cursor:pointer;font-size:var(--text-sm, 14px);font-weight:var(--font-semibold, 600);transition:all var(--transition-fast, .15s) cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.btn-agent-secondary:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);opacity:0;transition:opacity var(--transition-fast, .15s)}.btn-agent-secondary:hover{border-color:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-agent-secondary:hover:before{opacity:1}.btn-agent-secondary span{position:relative;z-index:1}.btn-agent-danger{padding:var(--space-3, 12px) var(--space-4, 16px);border:2px solid #fca5a5;background:#fff;color:#dc2626;border-radius:var(--radius-lg, 8px);cursor:pointer;font-size:var(--text-sm, 14px);font-weight:var(--font-semibold, 600);transition:all var(--transition-fast, .15s) cubic-bezier(.4,0,.2,1);flex-shrink:0}.btn-agent-danger:hover{background:#fee2e2;border-color:#ef4444;color:#b91c1c;transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.agent-card-footer{margin-top:var(--space-4, 16px);padding-top:var(--space-4, 16px);border-top:1px solid var(--color-gray-200, #e5e7eb);display:flex;align-items:center;justify-content:space-between}.agent-slug{font-family:var(--font-mono, "Courier New", monospace);font-size:var(--text-sm, 13px);color:var(--color-gray-400, #9ca3af);background:var(--color-gray-50, #f9fafb);padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:var(--radius-sm, 4px);border:1px solid var(--color-gray-200, #e5e7eb)}.agent-empty-state{text-align:center;padding:var(--space-16, 64px) var(--space-6, 24px);background:linear-gradient(135deg,#f9fafb,#fff);border-radius:var(--radius-2xl, 16px);border:2px dashed var(--color-gray-300, #d1d5db);margin-top:var(--space-8, 32px)}.agent-empty-icon{font-size:80px;margin-bottom:var(--space-6, 24px);animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.agent-empty-state h2{font-size:var(--text-3xl, 30px);font-weight:var(--font-bold, 700);color:var(--color-gray-900, #111827);margin:0 0 var(--space-4, 16px) 0}.agent-empty-state p{color:var(--color-gray-600, #4b5563);font-size:var(--text-lg, 18px);line-height:var(--line-height-relaxed, 1.75);margin:0 0 var(--space-8, 32px) 0;max-width:500px;margin-left:auto;margin-right:auto}.agent-empty-state .btn-primary{padding:var(--space-4, 16px) var(--space-8, 32px);font-size:var(--text-lg, 18px);box-shadow:0 10px 25px #667eea4d}.agent-builder{max-width:800px;margin:0 auto;padding:40px 20px}.agent-builder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.agent-builder-header h1{margin:0;font-size:32px;color:#1a202c}.agent-form{background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a}.agent-form-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid #e2e8f0}.agent-form-section:last-of-type{border-bottom:none}.agent-form-section-title{font-size:18px;color:#1a202c;margin:0 0 16px}.agent-form-section-description{color:#718096;font-size:14px;margin:0 0 16px;line-height:1.5}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:600;color:#2d3748;margin-bottom:8px;font-size:14px}.form-help{font-weight:400;color:#a0aec0;font-size:13px;margin-left:8px}.form-help-text{display:block;font-size:12px;color:#a0aec0;margin-top:6px;font-style:italic}.form-group input[type=text],.form-group input[type=email],.form-group textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;transition:border-color .2s}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group textarea{resize:vertical;font-family:inherit}.input-with-prefix{display:flex;align-items:center}.input-prefix{padding:10px 12px;background:#f7fafc;border:1px solid #e2e8f0;border-right:none;border-radius:6px 0 0 6px;color:#718096;font-size:14px}.input-with-prefix input{border-radius:0 6px 6px 0!important}.form-group-checkbox{margin-bottom:12px}.form-group-checkbox label{display:flex;align-items:center;cursor:pointer;font-weight:400;color:#2d3748}.form-group-checkbox input[type=checkbox]{margin-right:10px;width:18px;height:18px;cursor:pointer}.agent-color-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.color-dropdown-wrapper{display:flex;align-items:center;gap:12px}.color-preview-box{width:40px;height:40px;border-radius:6px;border:2px solid #e2e8f0;flex-shrink:0}.color-select{flex:1;padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s}.color-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.agent-color-preview{height:80px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:16px;margin-top:16px;box-shadow:0 4px 12px #00000026}.agent-knowledge-tabs{display:grid;grid-template-columns:1fr 1fr;gap:20px}.agent-knowledge-tab h3{font-size:16px;color:#2d3748;margin:0 0 12px}.agent-selection-list{max-height:300px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:6px;padding:8px}.agent-selection-item{display:flex;align-items:center;padding:8px 12px;border-radius:4px;cursor:pointer;transition:background .2s}.agent-selection-item:hover{background:#f7fafc}.agent-selection-item input[type=checkbox]{margin-right:10px;width:18px;height:18px;cursor:pointer}.agent-selection-item span{font-size:14px;color:#2d3748}.agent-form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:32px}.btn-primary,.btn-secondary{padding:var(--space-3, 12px) var(--space-6, 24px);border-radius:var(--radius-lg, 8px);font-size:var(--text-base, 16px);font-weight:var(--font-semibold, 600);cursor:pointer;transition:all var(--transition-base, .2s) cubic-bezier(.4,0,.2,1);white-space:nowrap}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;box-shadow:0 4px 12px #667eea4d;position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.btn-primary:hover:not(:disabled):before{left:100%}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#fff;color:var(--color-gray-700, #374151);border:2px solid var(--color-gray-300, #d1d5db)}.btn-secondary:hover{background:var(--color-gray-50, #f9fafb);border-color:var(--color-gray-400, #9ca3af);transform:translateY(-1px)}.agent-warning{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;padding:16px;margin-bottom:24px;color:#92400e;font-size:14px;line-height:1.5}.agent-warning strong{display:block;margin-bottom:4px}.error-message{background:#fee;border:1px solid #f56565;border-radius:8px;padding:12px 16px;color:#c53030;font-size:14px;margin-bottom:20px}.loading-spinner{text-align:center;padding:var(--space-16, 64px) var(--space-6, 24px);color:var(--color-gray-500, #6b7280);font-size:var(--text-lg, 18px)}.loading-spinner:before{content:"";display:block;width:48px;height:48px;margin:0 auto var(--space-6, 24px);border:4px solid var(--color-gray-200, #e5e7eb);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}.loading-spinner-small{padding:var(--space-6, 24px);text-align:center;color:var(--color-gray-500, #6b7280);font-size:var(--text-sm, 14px)}.empty-message{padding:var(--space-6, 24px);text-align:center;color:var(--color-gray-500, #6b7280);font-size:var(--text-base, 16px);font-style:italic}.agent-card-skeleton{background:#fff;border-radius:var(--radius-xl, 12px);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));overflow:hidden}.agent-card-skeleton .skeleton-header{height:140px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6,#e5e7eb 75%);background-size:200% 100%;animation:shimmer-skeleton 1.5s infinite}.agent-card-skeleton .skeleton-body{padding:var(--space-6, 24px)}.agent-card-skeleton .skeleton-line{height:16px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6,#e5e7eb 75%);background-size:200% 100%;animation:shimmer-skeleton 1.5s infinite;border-radius:var(--radius-sm, 4px);margin-bottom:var(--space-3, 12px)}.agent-card-skeleton .skeleton-line.short{width:60%}@keyframes shimmer-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.agent-chat-container{max-width:1000px;margin:0 auto;padding:20px;height:calc(100vh - 40px);display:flex;flex-direction:column}.agent-chat-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.btn-back{padding:8px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#4a5568;cursor:pointer;font-size:14px;transition:all .2s}.btn-back:hover{background:#f7fafc;border-color:#cbd5e0}.btn-back-inline{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;transition:all .2s;flex-shrink:0}.btn-back-inline:hover{background:#f7fafc;border-color:#cbd5e0;transform:translate(-2px)}.agent-chat-title{margin:0;font-size:24px;color:#1a202c}.agent-chat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.agent-chat-empty-icon{font-size:64px;margin-bottom:16px}.agent-chat-empty h2{font-size:24px;color:#1a202c;margin:0 0 8px}.agent-chat-empty p{color:#718096;margin:0}.chat-error-message{background:#fee;border:1px solid #f56565;border-radius:6px;padding:10px 12px;color:#c53030;font-size:13px;margin-bottom:12px}.agent-selection-list::-webkit-scrollbar{width:8px}.agent-selection-list::-webkit-scrollbar-track{background:#f7fafc;border-radius:4px}.agent-selection-list::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.agent-selection-list::-webkit-scrollbar-thumb:hover{background:#a0aec0}@media (max-width: 768px){.agent-management{padding:var(--space-6, 24px) var(--space-4, 16px)}.agent-management-header{flex-direction:column;gap:var(--space-4, 16px);margin-bottom:var(--space-8, 32px)}.agent-management-header h1{font-size:var(--text-3xl, 30px)}.agent-management-subtitle{font-size:var(--text-base, 16px)}.agent-management-header .btn-primary{width:100%;padding:var(--space-4, 16px);font-size:var(--text-lg, 18px)}.agent-grid{grid-template-columns:1fr;gap:var(--space-4, 16px)}.agent-card{box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.agent-card:hover{transform:none}.agent-card-header{height:120px}.agent-card-avatar{font-size:48px}.agent-card-body{padding:var(--space-4, 16px)}.agent-card-title{font-size:var(--text-lg, 18px)}.agent-card-description{font-size:var(--text-sm, 14px);margin-bottom:var(--space-4, 16px)}.agent-card-stats{gap:var(--space-6, 24px);padding:var(--space-3, 12px)}.agent-stat-value{font-size:var(--text-2xl, 24px)}.agent-card-actions{flex-direction:column;gap:var(--space-2, 8px)}.btn-agent-secondary,.btn-agent-danger{width:100%;padding:var(--space-3, 12px);font-size:var(--text-base, 16px)}.agent-empty-state{padding:var(--space-12, 48px) var(--space-4, 16px)}.agent-empty-icon{font-size:64px}.agent-empty-state h2{font-size:var(--text-2xl, 24px)}.agent-empty-state p{font-size:var(--text-base, 16px)}.agent-empty-state .btn-primary{width:100%;padding:var(--space-4, 16px)}.agent-knowledge-tabs,.agent-color-row{grid-template-columns:1fr}.agent-builder,.agent-form{padding:var(--space-6, 24px) var(--space-4, 16px)}.agent-form-actions{flex-direction:column-reverse}.agent-form-actions .btn-primary,.agent-form-actions .btn-secondary{width:100%}}@media (min-width: 769px) and (max-width: 1024px){.agent-grid{grid-template-columns:repeat(2,1fr)}.agent-management{padding:var(--space-8, 32px) var(--space-6, 24px)}}@media (hover: none) and (pointer: coarse){.agent-card:hover{transform:none;box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1))}.btn-agent-secondary:hover,.btn-agent-danger:hover,.btn-primary:hover{transform:none}.agent-card-actions button{min-height:44px}}.agent-builder-title-section{flex:1}.agent-builder-subtitle{color:var(--color-gray-600, #4b5563);font-size:var(--text-base, 16px);margin:var(--space-2, 8px) 0 0 0;line-height:var(--line-height-normal, 1.5)}.agent-builder-header-actions{display:flex;gap:var(--space-3, 12px);align-items:center}.btn-preview{padding:var(--space-3, 12px) var(--space-5, 20px);background:#fff;color:var(--color-gray-700, #374151);border:2px solid var(--color-gray-300, #d1d5db);border-radius:var(--radius-lg, 8px);font-size:var(--text-sm, 14px);font-weight:var(--font-semibold, 600);cursor:pointer;transition:all var(--transition-base, .2s);white-space:nowrap}.btn-preview:hover{background:var(--color-gray-50, #f9fafb);border-color:#667eea;color:#667eea;transform:translateY(-1px)}.agent-builder-progress{background:#fff;border-radius:var(--radius-xl, 12px);padding:var(--space-8, 32px);margin-bottom:var(--space-8, 32px);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1))}.progress-steps{display:flex;align-items:center;justify-content:space-between;max-width:900px;margin:0 auto}.progress-step-wrapper{display:flex;align-items:center;flex:1}.progress-step{display:flex;align-items:center;gap:var(--space-4, 16px);padding:var(--space-4, 16px);background:transparent;border:none;cursor:pointer;transition:all var(--transition-base, .2s);border-radius:var(--radius-lg, 8px);width:100%}.progress-step:hover{background:var(--color-gray-50, #f9fafb)}.progress-step.active{background:linear-gradient(135deg,#667eea1a,#764ba21a)}.progress-step-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;background:var(--color-gray-100, #f3f4f6);border:3px solid var(--color-gray-300, #d1d5db);transition:all var(--transition-base, .2s);flex-shrink:0}.progress-step.active .progress-step-icon{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;box-shadow:0 4px 12px #667eea66;transform:scale(1.1)}.progress-step.completed .progress-step-icon{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b981;color:#fff}.progress-step-label{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.progress-step-number{font-size:var(--text-xs, 12px);color:var(--color-gray-500, #6b7280);font-weight:var(--font-medium, 500);text-transform:uppercase;letter-spacing:.5px}.progress-step.active .progress-step-number{color:#667eea;font-weight:var(--font-semibold, 600)}.progress-step-title{font-size:var(--text-base, 16px);color:var(--color-gray-700, #374151);font-weight:var(--font-semibold, 600);margin-top:var(--space-1, 4px)}.progress-step.active .progress-step-title{color:var(--color-gray-900, #111827)}.progress-connector{height:3px;flex:1;background:var(--color-gray-300, #d1d5db);margin:0 var(--space-2, 8px);transition:all var(--transition-base, .2s)}.progress-connector.completed{background:linear-gradient(90deg,#10b981,#059669)}.agent-builder-content{display:flex;gap:var(--space-8, 32px);align-items:flex-start}.agent-builder-main{flex:1;min-width:0}.step-header{display:flex;align-items:flex-start;gap:var(--space-4, 16px);margin-bottom:var(--space-8, 32px)}.step-icon{font-size:48px;flex-shrink:0;animation:float 3s ease-in-out infinite}.active-step{animation:fadeIn .3s ease-in-out}.color-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6, 24px);margin-bottom:var(--space-8, 32px)}.color-picker-wrapper{display:flex;flex-direction:column;gap:var(--space-3, 12px)}.color-preview-large{width:100%;height:80px;border-radius:var(--radius-lg, 8px);border:3px solid var(--color-gray-200, #e5e7eb);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));transition:all var(--transition-base, .2s)}.color-picker-wrapper:hover .color-preview-large{border-color:#667eea;box-shadow:0 8px 16px #667eea33;transform:translateY(-2px)}.gradient-preview-section{margin-top:var(--space-6, 24px)}.gradient-preview-section label{display:block;font-weight:var(--font-semibold, 600);color:var(--color-gray-700, #374151);margin-bottom:var(--space-3, 12px);font-size:var(--text-sm, 14px)}.agent-gradient-preview{height:160px;border-radius:var(--radius-xl, 12px);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, .1));position:relative;overflow:hidden}.agent-gradient-preview:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);animation:shimmer 3s ease-in-out infinite}.preview-content{position:relative;z-index:1;text-align:center;color:#fff}.preview-icon{font-size:56px;margin-bottom:var(--space-3, 12px);filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));animation:float 3s ease-in-out infinite}.preview-text{font-size:var(--text-2xl, 24px);font-weight:var(--font-bold, 700);text-shadow:0 2px 8px rgba(0,0,0,.3)}.access-settings-grid{display:flex;flex-direction:column;gap:var(--space-4, 16px)}.access-option{background:#fff;border:2px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-lg, 8px);padding:var(--space-5, 20px);transition:all var(--transition-base, .2s)}.access-option:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26}.access-option-header{display:flex;align-items:flex-start;gap:var(--space-4, 16px)}.access-checkbox{width:24px;height:24px;cursor:pointer;flex-shrink:0;margin-top:2px}.access-label{flex:1;cursor:pointer;display:flex;flex-direction:column;gap:var(--space-2, 8px)}.access-title{font-size:var(--text-lg, 18px);font-weight:var(--font-semibold, 600);color:var(--color-gray-900, #111827)}.access-description{font-size:var(--text-sm, 14px);color:var(--color-gray-600, #4b5563);line-height:var(--line-height-relaxed, 1.75)}.knowledge-selection-summary{display:flex;gap:var(--space-4, 16px);margin-bottom:var(--space-6, 24px);padding:var(--space-5, 20px);background:linear-gradient(135deg,#f9fafb,#fff);border-radius:var(--radius-lg, 8px);border:2px solid var(--color-gray-200, #e5e7eb)}.selection-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-2, 8px);padding:var(--space-4, 16px);background:#fff;border-radius:var(--radius-md, 6px);box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.stat-icon{font-size:24px}.stat-value{font-size:var(--text-3xl, 30px);font-weight:var(--font-bold, 700);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.stat-label{font-size:var(--text-xs, 12px);color:var(--color-gray-500, #6b7280);text-transform:uppercase;font-weight:var(--font-medium, 500);letter-spacing:.5px}.agent-form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-8, 32px);padding-top:var(--space-6, 24px);border-top:2px solid var(--color-gray-200, #e5e7eb)}.step-nav-left,.step-nav-right{display:flex;gap:var(--space-3, 12px)}.btn-step-nav{padding:var(--space-3, 12px) var(--space-6, 24px);border-radius:var(--radius-lg, 8px);font-size:var(--text-base, 16px);font-weight:var(--font-semibold, 600);cursor:pointer;transition:all var(--transition-base, .2s);border:2px solid}.btn-prev{background:#fff;color:var(--color-gray-700, #374151);border-color:var(--color-gray-300, #d1d5db)}.btn-prev:hover{background:var(--color-gray-50, #f9fafb);border-color:var(--color-gray-400, #9ca3af);transform:translate(-2px)}.btn-next{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent;box-shadow:0 4px 12px #667eea4d}.btn-next:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.agent-builder-preview{width:380px;flex-shrink:0;background:#fff;border-radius:var(--radius-xl, 12px);box-shadow:var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, .1));position:sticky;top:var(--space-6, 24px);max-height:calc(100vh - 120px);overflow:hidden;display:flex;flex-direction:column}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5, 20px);border-bottom:2px solid var(--color-gray-200, #e5e7eb);background:linear-gradient(135deg,#f9fafb,#fff)}.preview-header h3{margin:0;font-size:var(--text-lg, 18px);font-weight:var(--font-semibold, 600);color:var(--color-gray-900, #111827)}.btn-close-preview{width:32px;height:32px;border-radius:50%;border:none;background:var(--color-gray-200, #e5e7eb);color:var(--color-gray-600, #4b5563);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all var(--transition-fast, .15s)}.btn-close-preview:hover{background:var(--color-gray-300, #d1d5db);color:var(--color-gray-900, #111827);transform:rotate(90deg)}.preview-body{padding:var(--space-6, 24px);overflow-y:auto}.preview-agent-card{background:#fff;border-radius:var(--radius-xl, 12px);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));overflow:hidden;border:1px solid var(--color-gray-200, #e5e7eb)}.preview-card-header{height:140px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.preview-card-header:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:shimmer 3s ease-in-out infinite}.preview-card-avatar{font-size:56px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));position:relative;z-index:1;animation:float 3s ease-in-out infinite}.preview-card-body{padding:var(--space-5, 20px)}.preview-card-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3, 12px);gap:var(--space-2, 8px)}.preview-card-title{margin:0;font-size:var(--text-lg, 18px);font-weight:var(--font-semibold, 600);color:var(--color-gray-900, #111827);line-height:var(--line-height-tight, 1.25)}.preview-card-description{color:var(--color-gray-600, #4b5563);font-size:var(--text-sm, 14px);margin:0 0 var(--space-4, 16px) 0;line-height:var(--line-height-relaxed, 1.75);min-height:42px}.preview-card-stats{display:flex;gap:var(--space-4, 16px);padding:var(--space-4, 16px);background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:var(--radius-lg, 8px);margin-bottom:var(--space-4, 16px);justify-content:space-around}.preview-stat{display:flex;flex-direction:column;align-items:center;gap:var(--space-1, 4px)}.preview-stat-value{font-size:var(--text-2xl, 24px);font-weight:var(--font-bold, 700);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.preview-stat-label{font-size:var(--text-xs, 12px);color:var(--color-gray-500, #6b7280);text-transform:uppercase;font-weight:var(--font-medium, 500)}.preview-card-footer{display:flex;align-items:center;gap:var(--space-2, 8px);padding-top:var(--space-4, 16px);border-top:1px solid var(--color-gray-200, #e5e7eb)}.preview-access-icon{font-size:18px}.preview-access-text{font-size:var(--text-sm, 14px);color:var(--color-gray-600, #4b5563);font-weight:var(--font-medium, 500)}@media (max-width: 768px){.agent-builder-header{flex-direction:column;gap:var(--space-4, 16px)}.agent-builder-header-actions{width:100%;flex-direction:column}.btn-preview,.agent-builder-header-actions .btn-secondary{width:100%}.agent-builder-progress{padding:var(--space-4, 16px)}.progress-steps{flex-direction:column;gap:var(--space-2, 8px)}.progress-step-wrapper{width:100%}.progress-connector{display:none}.progress-step{width:100%;padding:var(--space-3, 12px)}.progress-step-icon{width:48px;height:48px;font-size:20px}.progress-step.active .progress-step-icon{transform:scale(1)}.agent-builder-content{flex-direction:column}.agent-builder-preview{width:100%;position:static;max-height:none;order:-1;margin-bottom:var(--space-6, 24px)}.color-picker-grid{grid-template-columns:1fr}.agent-form-actions{flex-direction:column;gap:var(--space-3, 12px)}.step-nav-left,.step-nav-right,.btn-step-nav,.agent-form-actions .btn-primary{width:100%}.step-header{flex-direction:column;text-align:center;align-items:center}.step-icon{font-size:40px}}@media (min-width: 769px) and (max-width: 1024px){.agent-builder-preview{width:320px}.progress-step-label{font-size:var(--text-sm, 14px)}.progress-step-icon{width:48px;height:48px;font-size:20px}}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:var(--space-4, 16px);font-size:20px;pointer-events:none;z-index:1}.input-wrapper input{padding-left:var(--space-12, 48px)!important}.form-group.has-error input,.form-group.has-error textarea{border-color:#ef4444!important;background:#fef2f2}.form-group.has-error input:focus,.form-group.has-error textarea:focus{box-shadow:0 0 0 3px #ef44441a!important}.form-error-text{display:flex;align-items:center;gap:var(--space-2, 8px);font-size:var(--text-sm, 14px);color:#dc2626;margin-top:var(--space-2, 8px);font-weight:var(--font-medium, 500)}.error-icon{font-size:16px}.form-help-text{display:flex;align-items:center;gap:var(--space-2, 8px)}.help-icon{font-size:14px}.textarea-wrapper{position:relative}.textarea-counter{position:absolute;bottom:var(--space-2, 8px);right:var(--space-3, 12px);font-size:var(--text-xs, 12px);color:var(--color-gray-400, #9ca3af);background:#fff;padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:var(--radius-sm, 4px);pointer-events:none}.knowledge-tab-header{display:flex;flex-direction:column;gap:var(--space-3, 12px);margin-bottom:var(--space-4, 16px)}.search-box{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:var(--space-3, 12px);font-size:16px;pointer-events:none;z-index:1}.search-input{width:100%;padding:var(--space-2, 8px) var(--space-3, 12px) var(--space-2, 8px) var(--space-10, 40px);border:1px solid var(--color-gray-300, #d1d5db);border-radius:var(--radius-md, 6px);font-size:var(--text-sm, 14px);transition:all var(--transition-fast, .15s)}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.agent-selection-item{display:flex;align-items:center;gap:var(--space-3, 12px);padding:var(--space-3, 12px);border-radius:var(--radius-md, 6px);cursor:pointer;transition:all var(--transition-fast, .15s);border:2px solid transparent;position:relative}.agent-selection-item:hover{background:var(--color-gray-50, #f9fafb);border-color:var(--color-gray-200, #e5e7eb)}.agent-selection-item.selected{background:linear-gradient(135deg,#667eea0d,#764ba20d);border-color:#667eea4d}.agent-selection-item.selected:hover{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-color:#667eea80}.selection-icon{font-size:18px;flex-shrink:0}.selection-text{flex:1;font-size:var(--text-sm, 14px);color:var(--color-gray-700, #374151);font-weight:var(--font-medium, 500)}.selection-check{font-size:18px;color:#10b981;font-weight:var(--font-bold, 700);flex-shrink:0}.empty-state-small{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-10, 40px) var(--space-6, 24px);text-align:center;background:var(--color-gray-50, #f9fafb);border-radius:var(--radius-lg, 8px);border:2px dashed var(--color-gray-300, #d1d5db)}.empty-icon{font-size:48px;margin-bottom:var(--space-3, 12px);opacity:.5}.empty-state-small p{margin:0;color:var(--color-gray-500, #6b7280);font-size:var(--text-sm, 14px);font-style:italic}.btn-test{padding:var(--space-3, 12px) var(--space-6, 24px);border-radius:var(--radius-lg, 8px);font-size:var(--text-base, 16px);font-weight:var(--font-semibold, 600);cursor:pointer;transition:all var(--transition-base, .2s);background:#fff;color:#667eea;border:2px solid #667eea}.btn-test:hover:not(:disabled){background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-test:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.input-wrapper input{padding-left:var(--space-10, 40px)!important}.input-icon{left:var(--space-3, 12px);font-size:18px}.knowledge-tab-header{gap:var(--space-2, 8px)}.agent-selection-item{padding:var(--space-3, 12px) var(--space-2, 8px)}.selection-text{font-size:var(--text-sm, 14px)}.btn-test{width:100%}}@media (max-width: 768px){.agent-builder{padding:0}.agent-builder-header{position:sticky;top:0;z-index:10;background:#fff;padding:var(--space-4, 16px);border-bottom:2px solid var(--color-gray-200, #e5e7eb);box-shadow:0 2px 8px #0000000d}.agent-builder-title-section h1{font-size:var(--text-2xl, 24px)}.agent-builder-subtitle{font-size:var(--text-sm, 14px)}.agent-builder-progress{position:fixed;bottom:0;left:0;right:0;z-index:20;margin:0;border-radius:0;padding:var(--space-3, 12px) var(--space-4, 16px);box-shadow:0 -4px 12px #0000001a;background:#fff}.progress-steps{flex-direction:row;justify-content:space-around;gap:0}.progress-step-wrapper{flex:1;max-width:80px}.progress-step{flex-direction:column;padding:var(--space-2, 8px);gap:var(--space-1, 4px)}.progress-step-icon{width:40px;height:40px;font-size:18px;margin:0}.progress-step-label{align-items:center;text-align:center}.progress-step-number{display:none}.progress-step-title{font-size:var(--text-xs, 12px)}.agent-builder-content{padding-bottom:140px}.agent-builder-main{padding:var(--space-4, 16px)}.agent-form{padding:0;box-shadow:none;background:transparent}.agent-form-section{background:#fff;padding:var(--space-6, 24px) var(--space-4, 16px);margin-bottom:var(--space-4, 16px);border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.agent-form-section-title{font-size:var(--text-lg, 18px)}.agent-form-section-description{font-size:var(--text-sm, 14px)}.agent-form-actions{position:fixed;bottom:80px;left:0;right:0;background:#fff;padding:var(--space-4, 16px);border-top:2px solid var(--color-gray-200, #e5e7eb);box-shadow:0 -2px 8px #0000000d;z-index:15;margin:0}.agent-builder-preview{position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;max-height:none;border-radius:0;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.preview-header{padding:var(--space-5, 20px) var(--space-4, 16px)}.preview-body{padding:var(--space-4, 16px);overflow-y:auto;height:calc(100vh - 80px)}.agent-knowledge-tabs{grid-template-columns:1fr;gap:var(--space-4, 16px)}.agent-knowledge-tab{background:#fff;padding:var(--space-4, 16px);border-radius:var(--radius-lg, 8px);border:2px solid var(--color-gray-200, #e5e7eb)}.agent-selection-list{max-height:250px}.color-preview-large{height:60px}.agent-gradient-preview{height:120px}.preview-icon{font-size:40px}.preview-text{font-size:var(--text-xl, 20px)}.access-option{padding:var(--space-4, 16px)}.access-title{font-size:var(--text-base, 16px)}.knowledge-selection-summary{flex-direction:column;gap:var(--space-3, 12px);padding:var(--space-4, 16px)}.selection-stat{flex-direction:row;justify-content:space-between;padding:var(--space-3, 12px)}.stat-value{font-size:var(--text-2xl, 24px)}.progress-step,.agent-selection-item,.access-option{min-height:44px}.btn-preview{display:none}}@media (min-width: 769px) and (max-width: 1024px){.agent-builder-content{flex-direction:column}.agent-builder-preview{width:100%;position:static;max-height:600px;margin-bottom:var(--space-6, 24px)}.progress-step-label,.progress-step-title{font-size:var(--text-sm, 14px)}.color-picker-grid{grid-template-columns:1fr}}@media (max-width: 768px) and (orientation: landscape){.agent-builder-progress{padding:var(--space-2, 8px) var(--space-4, 16px)}.progress-step-icon{width:36px;height:36px;font-size:16px}.progress-step-title{font-size:10px}.agent-form-actions{bottom:60px;padding:var(--space-3, 12px) var(--space-4, 16px)}.agent-builder-content{padding-bottom:120px}}@media (max-width: 375px){.agent-builder-header{padding:var(--space-3, 12px)}.agent-builder-title-section h1{font-size:var(--text-xl, 20px)}.progress-step-wrapper{max-width:70px}.progress-step-icon{width:36px;height:36px;font-size:16px}.progress-step-title{font-size:10px}.step-icon{font-size:36px}.agent-form-section{padding:var(--space-5, 20px) var(--space-3, 12px)}}@media (max-width: 768px){input[type=text],input[type=email],textarea,select{font-size:16px!important}}@supports (padding: max(0px)){@media (max-width: 768px){.agent-builder-header{padding-top:max(var(--space-4, 16px),env(safe-area-inset-top))}.agent-builder-progress{padding-bottom:max(var(--space-3, 12px),env(safe-area-inset-bottom))}.agent-form-actions{padding-bottom:max(var(--space-4, 16px),env(safe-area-inset-bottom))}}}.user-admin-container{max-width:1200px;margin:0 auto;padding:var(--space-10) var(--space-5)}.user-admin-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-10);gap:var(--space-4)}.user-admin-header-content h1{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin:0 0 var(--space-2) 0;line-height:var(--line-height-tight)}.user-admin-header-content p{font-size:var(--text-base);color:var(--color-gray-600);margin:0;line-height:var(--line-height-normal)}.user-admin-alert{margin-bottom:var(--space-6);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-medium);display:flex;align-items:center;gap:var(--space-3);animation:slideInDown var(--transition-base)}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-admin-alert.error{background:var(--color-error-light);color:var(--color-error-dark);border:1px solid var(--color-error)}.user-admin-alert.success{background:var(--color-success-light);color:var(--color-success-dark);border:1px solid var(--color-success)}.user-admin-card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--space-6);margin-bottom:var(--space-8);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base)}.user-admin-card:hover{box-shadow:var(--shadow-md)}.user-admin-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5);gap:var(--space-4)}.user-admin-card-header h2{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0;line-height:var(--line-height-tight)}.company-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-5)}.company-info-item{display:flex;flex-direction:column;gap:var(--space-1)}.company-info-label{font-size:var(--text-sm);color:var(--color-gray-500);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.05em}.company-info-value{font-size:var(--text-lg);color:var(--color-gray-900);font-weight:var(--font-semibold)}.user-table-wrapper{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-gray-200)}.user-table{width:100%;border-collapse:collapse;background:#fff}.user-table thead{background:var(--color-gray-50);border-bottom:2px solid var(--color-gray-200)}.user-table th{padding:var(--space-4) var(--space-4);text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-gray-600);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.user-table tbody tr{border-bottom:1px solid var(--color-gray-100);transition:background-color var(--transition-fast)}.user-table tbody tr:last-child{border-bottom:none}.user-table tbody tr:hover{background:var(--color-gray-50)}.user-table td{padding:var(--space-4) var(--space-4);font-size:var(--text-sm);color:var(--color-gray-700);vertical-align:middle}.user-name-cell{display:flex;align-items:center;gap:var(--space-3)}.user-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);font-size:var(--text-sm);color:#fff;flex-shrink:0}.user-name-info{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.user-name{font-weight:var(--font-semibold);color:var(--color-gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:var(--text-xs);color:var(--color-gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap;letter-spacing:.02em}.badge-owner{background:var(--color-primary-100);color:var(--color-primary-800)}.badge-admin{background:var(--color-warning-light);color:var(--color-warning-dark)}.badge-user{background:var(--color-gray-100);color:var(--color-gray-700)}.badge-active{background:var(--color-success-light);color:var(--color-success-dark)}.badge-inactive{background:var(--color-error-light);color:var(--color-error-dark)}.badge-moderator{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.user-actions{display:flex;gap:var(--space-2);align-items:center}.btn-action{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-md);border:1px solid;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;display:inline-flex;align-items:center;gap:var(--space-2)}.btn-action-secondary{background:#fff;border-color:var(--color-gray-300);color:var(--color-gray-700)}.btn-action-secondary:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-400);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-action-danger{background:var(--color-error-light);border-color:var(--color-error);color:var(--color-error-dark)}.btn-action-danger:hover:not(:disabled){background:var(--color-error);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-action:disabled{opacity:.5;cursor:not-allowed}.btn-primary-action{padding:var(--space-3) var(--space-5);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:var(--space-2);box-shadow:0 4px 12px #667eea4d}.btn-primary-action:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.btn-primary-action:active:not(:disabled){transform:translateY(0)}.btn-primary-action:disabled{opacity:.6;cursor:not-allowed}.btn-secondary-action{padding:var(--space-3) var(--space-5);background:#fff;color:var(--color-gray-700);border:2px solid var(--color-gray-300);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:var(--space-2)}.btn-secondary-action:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-400);transform:translateY(-1px)}.btn-secondary-action:active:not(:disabled){transform:translateY(0)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);padding:var(--space-4);animation:fadeIn var(--transition-base)}.modal-content{background:#fff;border-radius:var(--radius-xl);padding:var(--space-8);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;z-index:var(--z-modal);box-shadow:var(--shadow-2xl);animation:modalSlideUp var(--transition-slow)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{margin-bottom:var(--space-6)}.modal-header h3{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin:0;line-height:var(--line-height-tight)}.modal-form{display:flex;flex-direction:column;gap:var(--space-5)}.modal-form-group{display:flex;flex-direction:column;gap:var(--space-2)}.modal-form-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-gray-700)}.modal-form-input{padding:var(--space-3) var(--space-4);border:2px solid var(--color-gray-300);border-radius:var(--radius-lg);font-size:var(--text-base);color:var(--color-gray-900);transition:all var(--transition-fast)}.modal-form-input:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-100)}.modal-form-input:disabled{background:var(--color-gray-50);cursor:not-allowed}.modal-form-hint{font-size:var(--text-xs);color:var(--color-gray-500);margin-top:var(--space-1)}.modal-form-input-group{display:flex;gap:var(--space-2)}.modal-form-input-group .modal-form-input{flex:1}.modal-form-checkbox-wrapper{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);cursor:pointer;transition:background-color var(--transition-fast)}.modal-form-checkbox-wrapper:hover{background:var(--color-gray-50)}.modal-form-checkbox{width:20px;height:20px;cursor:pointer}.modal-form-checkbox-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-700);cursor:pointer}.modal-actions{display:flex;gap:var(--space-3);margin-top:var(--space-6)}.modal-actions button{flex:1}.confirmation-dialog{max-width:480px}.confirmation-dialog .modal-header{margin-bottom:var(--space-4)}.confirmation-message{font-size:var(--text-base);color:var(--color-gray-700);line-height:var(--line-height-relaxed);margin-bottom:var(--space-6)}.confirmation-actions{display:flex;gap:var(--space-3)}.confirmation-actions button{flex:1}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16);gap:var(--space-4)}.loading-spinner{width:48px;height:48px;border:4px solid var(--color-gray-200);border-top-color:var(--color-primary-600);border-radius:var(--radius-full);animation:spin .8s linear infinite}.loading-text{font-size:var(--text-base);color:var(--color-gray-600);font-weight:var(--font-medium)}@media (max-width: 767px){.user-admin-container{padding:var(--space-6) var(--space-4)}.user-admin-header{flex-direction:column;align-items:stretch;gap:var(--space-4)}.user-admin-header-content h1{font-size:var(--text-2xl)}.user-admin-card{padding:var(--space-5);border-radius:var(--radius-lg)}.user-admin-card-header{flex-direction:column;align-items:stretch;gap:var(--space-3)}.company-info-grid{grid-template-columns:1fr;gap:var(--space-4)}.user-table-wrapper{display:none}.modal-content{padding:var(--space-6);max-width:100%}.modal-header h3{font-size:var(--text-xl)}.modal-actions{flex-direction:column}.confirmation-actions{flex-direction:column-reverse}}@media (min-width: 768px) and (max-width: 1023px){.user-admin-container{padding:var(--space-8) var(--space-5)}.company-info-grid{grid-template-columns:repeat(2,1fr)}.user-table th,.user-table td{padding:var(--space-3)}}.mobile-user-list{display:none}.mobile-user-card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-3);transition:all var(--transition-fast)}.mobile-user-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-gray-300)}.mobile-user-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.mobile-user-info{flex:1;min-width:0}.mobile-user-badges{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.mobile-user-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;padding-top:var(--space-3);border-top:1px solid var(--color-gray-100)}.mobile-user-actions button{flex:1;min-width:120px}@media (max-width: 767px){.mobile-user-list{display:block}}.mobile-user-card{position:relative;touch-action:pan-y}.mobile-user-card.swiping{transition:none}.mobile-user-card-swipe-actions{position:absolute;top:0;right:0;bottom:0;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-4);background:var(--color-error);border-radius:var(--radius-lg);opacity:0;pointer-events:none;transition:opacity var(--transition-fast)}.mobile-user-card.swiped .mobile-user-card-swipe-actions{opacity:1;pointer-events:auto}.bottom-sheet-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-base);display:none}.bottom-sheet{position:fixed;left:0;right:0;bottom:0;background:#fff;border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;padding:var(--space-6) var(--space-5);z-index:var(--z-modal);max-height:80vh;overflow-y:auto;transform:translateY(100%);transition:transform var(--transition-slow);display:none}.bottom-sheet.open{transform:translateY(0)}.bottom-sheet-handle{width:40px;height:4px;background:var(--color-gray-300);border-radius:var(--radius-full);margin:0 auto var(--space-5) auto}.bottom-sheet-header{margin-bottom:var(--space-5)}.bottom-sheet-header h3{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin:0}.bottom-sheet-content{display:flex;flex-direction:column;gap:var(--space-4)}.bottom-sheet-actions{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-gray-200)}.bottom-sheet-actions button{width:100%;justify-content:center}@media (max-width: 767px){.bottom-sheet-backdrop.open,.bottom-sheet{display:block}}@media (min-width: 768px) and (max-width: 1023px){.user-admin-card{padding:var(--space-5)}.user-table th,.user-table td{padding:var(--space-3)}.user-name-cell{gap:var(--space-2)}.user-avatar{width:36px;height:36px;font-size:var(--text-xs)}.user-actions{flex-direction:column;align-items:stretch}.btn-action{width:100%;justify-content:center}}@media (max-width: 1023px){.user-table th:nth-child(3),.user-table td:nth-child(3){display:none}}.group-management{max-width:1200px;margin:0 auto;padding:20px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px}.page-header h1{margin:0 0 8px;font-size:28px;font-weight:600;color:#0f172a}.page-description{margin:0;color:#64748b;font-size:14px}.error-banner{padding:12px 16px;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;margin-bottom:20px}.empty-state{text-align:center;padding:60px 20px;background:#f8fafc;border-radius:12px;border:2px dashed #e2e8f0}.empty-state svg{margin-bottom:20px;opacity:.5}.empty-state h2{margin:0 0 8px;font-size:20px;color:#0f172a}.empty-state p{margin:0 0 24px;color:#64748b}.groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.group-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .2s}.group-card:hover{box-shadow:0 4px 12px #00000014;border-color:#cbd5e1}.group-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.group-icon{width:40px;height:40px;background:#eff6ff;border-radius:10px;display:flex;align-items:center;justify-content:center}.group-card-header h3{margin:0;font-size:18px;font-weight:600;color:#0f172a;flex:1}.group-description{margin:0 0 16px;color:#64748b;font-size:14px;line-height:1.5}.group-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid #e2e8f0}.btn-link{display:flex;align-items:center;gap:6px;padding:6px 12px;background:none;border:none;color:#2563eb;font-size:14px;font-weight:500;cursor:pointer;border-radius:6px;transition:background .2s}.btn-link:hover{background:#eff6ff}.group-actions{display:flex;gap:8px}.btn-icon{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border:1px solid #e2e8f0;background:#fff;border-radius:6px;cursor:pointer;color:#475569;transition:all .2s}.btn-icon:hover{background:#f1f5f9;border-color:#cbd5e1}.btn-icon.btn-danger{color:#dc2626}.btn-icon.btn-danger:hover{background:#fee2e2;border-color:#fecaca}@media (max-width: 768px){.page-header{flex-direction:column;gap:16px}.page-header button{width:100%}.groups-grid{grid-template-columns:1fr}}.forum-container{max-width:1200px;margin:0 auto;padding:var(--space-8);animation:fadeIn var(--transition-base)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.forum-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-8);gap:var(--space-6);flex-wrap:wrap}.forum-title-section{flex:1;min-width:250px}.forum-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin:0 0 var(--space-2) 0;line-height:var(--line-height-tight)}.forum-subtitle{font-size:var(--text-lg);color:var(--color-gray-600);margin:0;line-height:var(--line-height-normal)}.forum-search{margin-bottom:var(--space-8)}.search-input-wrapper{position:relative;max-width:600px}.search-icon{position:absolute;left:var(--space-4);top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--color-gray-400);pointer-events:none;transition:color var(--transition-fast)}.search-input{width:100%;padding:var(--space-3) var(--space-12) var(--space-3) var(--space-12);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);font-size:var(--text-base);background:#fff;color:var(--color-gray-900);transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.search-input:hover{border-color:var(--color-gray-300)}.search-input:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-100);transform:translateY(-1px)}.search-input:focus~.search-icon{color:var(--color-primary-600)}.search-input::placeholder{color:var(--color-gray-400)}.search-clear{position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);background:none;border:none;padding:var(--space-2);cursor:pointer;color:var(--color-gray-400);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all var(--transition-fast)}.search-clear:hover{background:var(--color-gray-100);color:var(--color-gray-700);transform:translateY(-50%) scale(1.1)}.search-clear:active{transform:translateY(-50%) scale(.95)}.search-clear svg{width:16px;height:16px}.topics-list{display:flex;flex-direction:column;gap:var(--space-4)}.topic-card{display:flex;gap:var(--space-4);padding:var(--space-6);background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden}.topic-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--color-primary-500) 0%,var(--color-primary-600) 100%);transform:scaleY(0);transition:transform var(--transition-base)}.topic-card:hover{border-color:var(--color-primary-300);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.topic-card:hover:before{transform:scaleY(1)}.topic-card:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}.topic-card:active{transform:translateY(0)}.topic-avatar{flex-shrink:0}.avatar{width:48px;height:48px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary-500) 0%,var(--color-primary-600) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);font-size:var(--text-base);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.topic-card:hover .avatar{transform:scale(1.05)}.topic-content{flex:1;min-width:0}.topic-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0 0 var(--space-2) 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:var(--line-height-tight);transition:color var(--transition-fast)}.topic-card:hover .topic-title{color:var(--color-primary-600)}.topic-meta{display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:var(--text-sm);color:var(--color-gray-600)}.meta-item{display:flex;align-items:center;gap:var(--space-2)}.meta-item svg{width:16px;height:16px;color:var(--color-gray-400);flex-shrink:0}.topic-actions{flex-shrink:0;display:flex;align-items:center}.reaction-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-600);min-height:var(--touch-target-min)}.reaction-btn:hover{background:var(--color-gray-100);border-color:var(--color-primary-400);color:var(--color-gray-900);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.reaction-btn:active{transform:translateY(0)}.reaction-btn.reacted{background:var(--color-primary-50);border-color:var(--color-primary-500);color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-100)}.reaction-btn.reacted:hover{background:var(--color-primary-100);border-color:var(--color-primary-600);transform:translateY(-1px)}.reaction-btn svg{width:18px;height:18px;transition:transform var(--transition-fast)}.reaction-btn:hover svg{transform:scale(1.1)}.reaction-btn.reacted svg{animation:reactionPop .3s cubic-bezier(.68,-.55,.265,1.55)}.reaction-btn.loading{opacity:.6;cursor:wait}.reaction-btn.loading svg{animation:spin 1s linear infinite}.reaction-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn:disabled,.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.form-input:disabled,.reply-textarea:disabled{background:var(--color-gray-100);cursor:not-allowed;opacity:.7}@keyframes reactionPop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.reaction-count{font-weight:var(--font-semibold);min-width:20px;text-align:center}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--space-4);margin-top:var(--space-8);padding:var(--space-4)}.page-info{font-size:var(--text-sm);color:var(--color-gray-600);font-weight:var(--font-medium)}.topic-detail-container{max-width:900px;margin:0 auto;padding:var(--space-8);animation:fadeIn var(--transition-base)}.back-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:#fff;border:1px solid var(--color-gray-200);color:var(--color-gray-600);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-lg);transition:all var(--transition-fast);margin-bottom:var(--space-6)}.back-btn:hover{background:var(--color-gray-50);color:var(--color-gray-900);border-color:var(--color-gray-300);transform:translate(-2px)}.back-btn:active{transform:translate(0)}.back-btn svg{width:16px;height:16px;transition:transform var(--transition-fast)}.back-btn:hover svg{transform:translate(-2px)}.topic-detail{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--space-8);margin-bottom:var(--space-8);box-shadow:var(--shadow-sm)}.topic-header{margin-bottom:var(--space-6)}.topic-detail .topic-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin-bottom:var(--space-4);line-height:var(--line-height-tight)}.topic-author-info{display:flex;align-items:center;gap:var(--space-4)}.author-details{flex:1}.author-name{font-weight:var(--font-semibold);color:var(--color-gray-900);display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-base);margin-bottom:var(--space-1)}.moderator-badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;font-size:var(--text-xs);font-weight:var(--font-bold);border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #fbbf244d;animation:badgeShine 2s ease-in-out infinite}@keyframes badgeShine{0%,to{box-shadow:0 2px 4px #fbbf244d}50%{box-shadow:0 2px 8px #fbbf2480}}.meta-item .moderator-badge{display:inline-flex;align-items:center;margin-left:var(--space-2);padding:var(--space-1) var(--space-2);background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:var(--radius-sm);vertical-align:middle}.meta-item .moderator-badge svg{color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.topic-date{font-size:var(--text-sm);color:var(--color-gray-500)}.topic-content{line-height:var(--line-height-relaxed);color:var(--color-gray-700);margin-bottom:var(--space-6);font-size:var(--text-base)}.topic-content p{margin:0 0 var(--space-4) 0}.topic-content p:last-child{margin-bottom:0}.topic-content ul,.topic-content ol{margin:0 0 var(--space-4) var(--space-6);padding-left:var(--space-4)}.topic-content li{margin-bottom:var(--space-2)}.topic-content code{background:var(--color-gray-100);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.875em;color:var(--color-gray-800)}.topic-content pre{background:var(--color-gray-900);color:var(--color-gray-100);padding:var(--space-4);border-radius:var(--radius-lg);overflow-x:auto;margin:0 0 var(--space-4) 0;box-shadow:var(--shadow-inner)}.topic-content pre code{background:none;padding:0;color:inherit}.topic-footer{display:flex;gap:var(--space-4);align-items:center;padding-top:var(--space-6);border-top:1px solid var(--color-gray-200)}.replies-section{margin-top:var(--space-8)}.replies-title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0 0 var(--space-6) 0}.replies-list{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-8)}.reply-card{display:flex;gap:var(--space-4);padding:var(--space-6);background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);transition:all var(--transition-base);position:relative}.reply-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-gray-300)}.reply-avatar{flex-shrink:0}.reply-avatar .avatar{width:40px;height:40px;font-size:var(--text-sm)}.reply-content-wrapper{flex:1;min-width:0}.reply-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-3);gap:var(--space-3)}.reply-author{font-weight:var(--font-semibold);color:var(--color-gray-900);display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-base)}.reply-date{font-size:var(--text-sm);color:var(--color-gray-500);white-space:nowrap}.reply-content{line-height:var(--line-height-relaxed);color:var(--color-gray-700);margin-bottom:var(--space-3);font-size:var(--text-base)}.reply-content p{margin:0 0 var(--space-3) 0}.reply-content p:last-child{margin-bottom:0}.reply-footer{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.reply-form-section{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm)}.reply-form-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0 0 var(--space-4) 0}.reply-form{display:flex;flex-direction:column;gap:var(--space-4)}.reply-textarea{width:100%;padding:var(--space-4);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);font-size:var(--text-base);font-family:inherit;background:#fff;color:var(--color-gray-900);resize:vertical;min-height:120px;transition:all var(--transition-base);line-height:var(--line-height-normal)}.reply-textarea:hover{border-color:var(--color-gray-300)}.reply-textarea:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-100);transform:translateY(-1px)}.reply-textarea::placeholder{color:var(--color-gray-400)}.reply-form-actions{display:flex;justify-content:flex-end;gap:var(--space-3)}.create-topic-container{max-width:900px;margin:0 auto;padding:var(--space-8);animation:fadeIn var(--transition-base)}.create-topic-header{margin-bottom:var(--space-8)}.create-topic-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin:0 0 var(--space-2) 0;line-height:var(--line-height-tight)}.create-topic-subtitle{font-size:var(--text-lg);color:var(--color-gray-600);margin:0;line-height:var(--line-height-normal)}.create-topic-form{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-sm)}.form-group{margin-bottom:var(--space-6)}.form-group:last-child{margin-bottom:0}.form-label{display:block;font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-2);font-size:var(--text-base)}.required{color:var(--color-error);margin-left:var(--space-1)}.form-input{width:100%;padding:var(--space-3);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);font-size:var(--text-base);background:#fff;color:var(--color-gray-900);transition:all var(--transition-base);font-family:inherit}.form-input:hover{border-color:var(--color-gray-300)}.form-input:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-100);transform:translateY(-1px)}.form-input.error{border-color:var(--color-error)}.form-input.error:focus{box-shadow:0 0 0 4px var(--color-error-light)}.form-error{color:var(--color-error);font-size:var(--text-sm);margin-top:var(--space-2);display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-medium)}.form-hint{color:var(--color-gray-500);font-size:var(--text-sm);margin-top:var(--space-2);line-height:var(--line-height-normal)}.similar-topics{background:var(--color-primary-50);border:1px solid var(--color-primary-200);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-6);animation:slideIn var(--transition-base)}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.similar-topics-header{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-primary-700);font-weight:var(--font-semibold);margin-bottom:var(--space-3)}.similar-topics-header svg{width:16px;height:16px;flex-shrink:0}.similar-topics-list{display:flex;flex-direction:column;gap:var(--space-2)}.similar-topic-item{display:block;padding:var(--space-3);background:#fff;border:1px solid var(--color-primary-200);border-radius:var(--radius-md);text-decoration:none;transition:all var(--transition-fast)}.similar-topic-item:hover{border-color:var(--color-primary-400);box-shadow:var(--shadow-sm);transform:translate(4px)}.similar-topic-title{font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-1);font-size:var(--text-sm);line-height:var(--line-height-tight)}.similar-topic-meta{font-size:var(--text-xs);color:var(--color-gray-600)}.editor-toolbar{display:flex;gap:var(--space-1);padding:var(--space-2);background:var(--color-gray-50);border:2px solid var(--color-gray-200);border-bottom:none;border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-wrap:wrap}.toolbar-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;color:var(--color-gray-600);transition:all var(--transition-fast)}.toolbar-btn:hover{background:var(--color-gray-100);color:var(--color-gray-900);border-color:var(--color-gray-300);transform:translateY(-1px)}.toolbar-btn:active{transform:translateY(0)}.toolbar-btn.active{background:var(--color-primary-600);color:#fff;border-color:var(--color-primary-600);box-shadow:0 2px 4px #3b82f64d}.toolbar-btn svg{width:18px;height:18px}.editor-wrapper{border:2px solid var(--color-gray-200);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:#fff;transition:all var(--transition-base)}.editor-wrapper.error{border-color:var(--color-error)}.editor-wrapper.error:focus-within{box-shadow:0 0 0 4px var(--color-error-light)}.editor-wrapper:focus-within{border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-100)}.topic-editor{min-height:200px;padding:var(--space-4);outline:none;font-size:var(--text-base);line-height:var(--line-height-relaxed);color:var(--color-gray-900)}.topic-editor p{margin:0 0 var(--space-4) 0}.topic-editor ul,.topic-editor ol{margin:0 0 var(--space-4) var(--space-6);padding-left:var(--space-4)}.topic-editor li{margin-bottom:var(--space-2)}.topic-editor pre{background:var(--color-gray-900);color:var(--color-gray-100);padding:var(--space-4);border-radius:var(--radius-lg);overflow-x:auto;margin:0 0 var(--space-4) 0}.topic-editor code{background:var(--color-gray-100);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.875em;color:var(--color-gray-800)}.topic-editor pre code{background:none;padding:0;color:inherit}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-gray-200)}.toast-container{position:fixed;top:var(--space-6);right:var(--space-6);z-index:9999;display:flex;flex-direction:column;gap:var(--space-3);max-width:400px;pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-medium);box-shadow:var(--shadow-xl);animation:toastSlideIn .3s cubic-bezier(.68,-.55,.265,1.55);pointer-events:auto;min-width:300px}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.toast-icon svg{width:100%;height:100%}.toast-message{flex:1;line-height:var(--line-height-normal)}.toast-close{flex-shrink:0;background:none;border:none;padding:var(--space-1);cursor:pointer;color:inherit;opacity:.7;transition:opacity var(--transition-fast);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.toast-close:hover{opacity:1;background:#0000001a}.toast-close svg{width:16px;height:16px}.toast-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.toast-success .toast-icon{color:#16a34a}.toast-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.toast-error .toast-icon{color:#dc2626}.toast-warning{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.toast-warning .toast-icon{color:#f59e0b}.toast-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.toast-info .toast-icon{color:#3b82f6}@media (max-width: 768px){.toast-container{top:var(--space-4);right:var(--space-4);left:var(--space-4);max-width:none}.toast{min-width:0}}.alert{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-6);font-size:var(--text-base);font-weight:var(--font-medium);animation:slideDown var(--transition-base);box-shadow:var(--shadow-sm)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert svg{width:20px;height:20px;flex-shrink:0}.alert span{flex:1;line-height:var(--line-height-normal)}.alert .btn-link{background:none;border:none;color:inherit;cursor:pointer;font-weight:var(--font-semibold);text-decoration:underline;padding:0;transition:opacity var(--transition-fast)}.alert .btn-link:hover{opacity:.8}.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.alert-error svg{color:#dc2626}.alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.alert-success svg{color:#16a34a}.alert-warning{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.alert-warning svg{color:#f59e0b}.alert-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.alert-info svg{color:#3b82f6}.skeleton{animation:pulse 1.5s ease-in-out infinite;pointer-events:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.skeleton-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--color-gray-200) 0%,var(--color-gray-100) 50%,var(--color-gray-200) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-content{flex:1}.skeleton-title{height:24px;background:linear-gradient(90deg,var(--color-gray-200) 0%,var(--color-gray-100) 50%,var(--color-gray-200) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md);margin-bottom:var(--space-2);width:70%}.skeleton-text{height:16px;background:linear-gradient(90deg,var(--color-gray-200) 0%,var(--color-gray-100) 50%,var(--color-gray-200) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md);margin-bottom:var(--space-2);width:50%}.skeleton-footer{height:16px;background:linear-gradient(90deg,var(--color-gray-200) 0%,var(--color-gray-100) 50%,var(--color-gray-200) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md);width:40%}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-6);text-align:center;animation:fadeIn var(--transition-slow)}.empty-state-icon{width:120px;height:120px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary-50) 0%,var(--color-primary-100) 100%);border-radius:var(--radius-full);margin-bottom:var(--space-6);color:var(--color-primary-500)}.empty-state-icon svg{width:60px;height:60px}.empty-state-title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-3)}.empty-state-description{font-size:var(--text-lg);color:var(--color-gray-600);max-width:500px;margin-bottom:var(--space-8);line-height:var(--line-height-relaxed)}@media (max-width: 1024px){.forum-container,.topic-detail-container,.create-topic-container{padding:var(--space-6)}.forum-title,.topic-detail .topic-title{font-size:var(--text-2xl)}}@media (max-width: 768px){.forum-container,.topic-detail-container,.create-topic-container{padding:var(--space-4)}.forum-header{flex-direction:column;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6)}.forum-title{font-size:var(--text-xl)}.forum-subtitle{font-size:var(--text-base)}.search-input-wrapper{max-width:100%}.topic-card{flex-direction:column;padding:var(--space-4)}.topic-card:before{width:100%;height:4px;top:0;left:0;right:0;bottom:auto;transform:scaleX(0)}.topic-card:hover:before{transform:scaleX(1)}.topic-title{font-size:var(--text-lg)}.topic-meta{flex-direction:column;gap:var(--space-2)}.topic-actions{align-self:flex-start;width:100%}.reaction-btn{width:100%;justify-content:center}.topic-detail{padding:var(--space-6)}.topic-detail .topic-title{font-size:var(--text-xl)}.topic-author-info{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.reply-card{flex-direction:column;padding:var(--space-4)}.reply-header{flex-direction:column;align-items:flex-start}.reply-date{white-space:normal}.reply-form-section{padding:var(--space-6)}.pagination{flex-direction:column;gap:var(--space-3)}.create-topic-header{margin-bottom:var(--space-6)}.create-topic-title{font-size:var(--text-2xl)}.create-topic-subtitle{font-size:var(--text-base)}.create-topic-form{padding:var(--space-6)}.form-actions{flex-direction:column-reverse;gap:var(--space-3)}.form-actions button{width:100%}.editor-toolbar{padding:var(--space-2)}.toolbar-btn{width:32px;height:32px}.empty-state{padding:var(--space-12) var(--space-4)}.empty-state-icon{width:100px;height:100px;margin-bottom:var(--space-5)}.empty-state-icon svg{width:50px;height:50px}.empty-state-title{font-size:var(--text-xl)}.empty-state-description{font-size:var(--text-base);margin-bottom:var(--space-6)}}@media (max-width: 480px){.forum-container,.topic-detail-container,.create-topic-container{padding:var(--space-3)}.forum-title{font-size:var(--text-lg)}.topic-card{padding:var(--space-3)}.topic-detail{padding:var(--space-4)}.reply-card{padding:var(--space-3)}.reply-form-section,.create-topic-form{padding:var(--space-4)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.topic-card:hover,.reaction-btn:hover,.toolbar-btn:hover,.back-btn:hover{transform:none}.topic-card:before{transition:none}}@media (prefers-contrast: high){.topic-card,.reply-card,.topic-detail,.reply-form-section,.create-topic-form{border:2px solid var(--color-gray-900)}.reaction-btn,.toolbar-btn,.form-input,.reply-textarea,.moderator-badge{border:2px solid currentColor}}.topic-card:focus-visible,.reaction-btn:focus-visible,.toolbar-btn:focus-visible,.back-btn:focus-visible,.form-input:focus-visible,.reply-textarea:focus-visible,.similar-topic-item:focus-visible{outline:3px solid var(--color-primary-500);outline-offset:2px}@media (pointer: coarse){.reaction-btn,.toolbar-btn,.back-btn,.search-clear{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}}img[data-src]{opacity:0;transition:opacity var(--transition-base)}img.lazy-loaded{opacity:1}img.lazy-placeholder{filter:blur(10px);transform:scale(1.1);transition:filter var(--transition-slow),transform var(--transition-slow)}img.lazy-placeholder.lazy-loaded{filter:blur(0);transform:scale(1)}img{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.img-container{position:relative;overflow:hidden}.img-container:before{content:"";display:block;padding-bottom:var(--aspect-ratio, 56.25%)}.img-container img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.contain-layout{contain:layout}.contain-paint{contain:paint}.contain-strict{contain:strict}.contain-content{contain:content}.animate-transform{will-change:transform}.animate-opacity{will-change:opacity}.animate-transform-opacity{will-change:transform,opacity}.gpu-accelerated{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.smooth-scroll{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.reduce-paint{will-change:transform;transform:translateZ(0)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-size:16px;line-height:1.5}body{margin:0;padding:0;min-height:100vh;font-family:var(--font-sans);color:var(--color-gray-900);background-color:var(--color-gray-50)}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}button{cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}:root{--color-primary-50: #eff6ff;--color-primary-100: #dbeafe;--color-primary-200: #bfdbfe;--color-primary-300: #93c5fd;--color-primary-400: #60a5fa;--color-primary-500: #3b82f6;--color-primary-600: #2563eb;--color-primary-700: #1d4ed8;--color-primary-800: #1e40af;--color-primary-900: #1e3a8a;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-success: #10b981;--color-success-light: #d1fae5;--color-success-dark: #065f46;--color-warning: #f59e0b;--color-warning-light: #fef3c7;--color-warning-dark: #92400e;--color-error: #ef4444;--color-error-light: #fee2e2;--color-error-dark: #991b1b;--color-info: #3b82f6;--color-info-light: #dbeafe;--color-info-dark: #1e40af;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", "Courier New", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--radius-none: 0;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .06);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--transition-slower: .5s cubic-bezier(.4, 0, .2, 1);--z-base: 0;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--touch-target-min: 44px}.inline-flex{display:inline-flex}.grid{display:grid}.inline-grid{display:inline-grid}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.hidden{display:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-none{flex:none}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.gap-0{gap:var(--space-0)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.gap-10{gap:var(--space-10)}.gap-12{gap:var(--space-12)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.m-0{margin:var(--space-0)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-5{margin:var(--space-5)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.m-10{margin:var(--space-10)}.m-12{margin:var(--space-12)}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.mt-0{margin-top:var(--space-0)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mt-10{margin-top:var(--space-10)}.mt-12{margin-top:var(--space-12)}.mb-0{margin-bottom:var(--space-0)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.mb-10{margin-bottom:var(--space-10)}.mb-12{margin-bottom:var(--space-12)}.ml-0{margin-left:var(--space-0)}.ml-1{margin-left:var(--space-1)}.ml-2{margin-left:var(--space-2)}.ml-3{margin-left:var(--space-3)}.ml-4{margin-left:var(--space-4)}.ml-6{margin-left:var(--space-6)}.ml-auto{margin-left:auto}.mr-0{margin-right:var(--space-0)}.mr-1{margin-right:var(--space-1)}.mr-2{margin-right:var(--space-2)}.mr-3{margin-right:var(--space-3)}.mr-4{margin-right:var(--space-4)}.mr-6{margin-right:var(--space-6)}.mr-auto{margin-right:auto}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.p-10{padding:var(--space-10)}.p-12{padding:var(--space-12)}.px-0{padding-left:var(--space-0);padding-right:var(--space-0)}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-5{padding-left:var(--space-5);padding-right:var(--space-5)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.px-8{padding-left:var(--space-8);padding-right:var(--space-8)}.py-0{padding-top:var(--space-0);padding-bottom:var(--space-0)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-5{padding-top:var(--space-5);padding-bottom:var(--space-5)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.py-8{padding-top:var(--space-8);padding-bottom:var(--space-8)}.pt-0{padding-top:var(--space-0)}.pt-2{padding-top:var(--space-2)}.pt-4{padding-top:var(--space-4)}.pt-6{padding-top:var(--space-6)}.pt-8{padding-top:var(--space-8)}.pb-0{padding-bottom:var(--space-0)}.pb-2{padding-bottom:var(--space-2)}.pb-4{padding-bottom:var(--space-4)}.pb-6{padding-bottom:var(--space-6)}.pb-8{padding-bottom:var(--space-8)}.pl-0{padding-left:var(--space-0)}.pl-2{padding-left:var(--space-2)}.pl-4{padding-left:var(--space-4)}.pl-6{padding-left:var(--space-6)}.pr-0{padding-right:var(--space-0)}.pr-2{padding-right:var(--space-2)}.pr-4{padding-right:var(--space-4)}.pr-6{padding-right:var(--space-6)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.text-4xl{font-size:var(--text-4xl)}.text-5xl{font-size:var(--text-5xl)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.leading-tight{line-height:var(--line-height-tight)}.leading-normal{line-height:var(--line-height-normal)}.leading-relaxed{line-height:var(--line-height-relaxed)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-primary{color:var(--color-primary-600)}.text-gray-50{color:var(--color-gray-50)}.text-gray-100{color:var(--color-gray-100)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-white{color:#fff}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.bg-white{background-color:#fff}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-primary{background-color:var(--color-primary-600)}.bg-primary-50{background-color:var(--color-primary-50)}.bg-primary-100{background-color:var(--color-primary-100)}.bg-success{background-color:var(--color-success)}.bg-success-light{background-color:var(--color-success-light)}.bg-warning{background-color:var(--color-warning)}.bg-warning-light{background-color:var(--color-warning-light)}.bg-error{background-color:var(--color-error)}.bg-error-light{background-color:var(--color-error-light)}.rounded-none{border-radius:var(--radius-none)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-xs{box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.shadow-inner{box-shadow:var(--shadow-inner)}.shadow-none{box-shadow:none}.w-full{width:100%}.w-auto{width:auto}.w-screen{width:100vw}.w-min{width:min-content}.w-max{width:max-content}.max-w-xs{max-width:20rem}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-full{max-width:100%}.max-w-screen{max-width:100vw}.h-full{height:100%}.h-screen{height:100vh}.h-auto{height:auto}.min-h-screen{min-height:100vh}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.cursor-default{cursor:default}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.transition{transition:all var(--transition-base)}.transition-fast{transition:all var(--transition-fast)}.transition-slow{transition:all var(--transition-slow)}.transition-colors{transition:color var(--transition-base),background-color var(--transition-base),border-color var(--transition-base)}.transition-transform{transition:transform var(--transition-base)}.transition-opacity{transition:opacity var(--transition-base)}.border{border:1px solid var(--color-gray-200)}.border-0{border:0}.border-2{border-width:2px}.border-t{border-top:1px solid var(--color-gray-200)}.border-b{border-bottom:1px solid var(--color-gray-200)}.border-l{border-left:1px solid var(--color-gray-200)}.border-r{border-right:1px solid var(--color-gray-200)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-primary{border-color:var(--color-primary-600)}.border-error{border-color:var(--color-error)}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.select-all{-webkit-user-select:all;user-select:all}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-fill{object-fit:fill}.z-0{z-index:var(--z-base)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-dropdown{z-index:var(--z-dropdown)}.z-modal{z-index:var(--z-modal)}.z-tooltip{z-index:var(--z-tooltip)}@media (min-width: 640px){.sm\:flex{display:flex}.sm\:grid{display:grid}.sm\:hidden{display:none}.sm\:block{display:block}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:gap-4{gap:var(--space-4)}.sm\:gap-6{gap:var(--space-6)}.sm\:gap-8{gap:var(--space-8)}.sm\:px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.sm\:py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.sm\:text-sm{font-size:var(--text-sm)}.sm\:text-base{font-size:var(--text-base)}.sm\:text-lg{font-size:var(--text-lg)}.sm\:text-xl{font-size:var(--text-xl)}.sm\:max-w-sm{max-width:24rem}.sm\:max-w-md{max-width:28rem}.sm\:max-w-lg{max-width:32rem}}@media (min-width: 768px){.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:block{display:block}.md\:flex-row{flex-direction:row}.md\:flex-col{flex-direction:column}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:gap-4{gap:var(--space-4)}.md\:gap-6{gap:var(--space-6)}.md\:gap-8{gap:var(--space-8)}.md\:px-8{padding-left:var(--space-8);padding-right:var(--space-8)}.md\:py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.md\:text-base{font-size:var(--text-base)}.md\:text-lg{font-size:var(--text-lg)}.md\:text-xl{font-size:var(--text-xl)}.md\:text-2xl{font-size:var(--text-2xl)}.md\:text-3xl{font-size:var(--text-3xl)}.md\:max-w-md{max-width:28rem}.md\:max-w-lg{max-width:32rem}.md\:max-w-xl{max-width:36rem}.md\:max-w-2xl{max-width:42rem}}@media (min-width: 1024px){.lg\:flex{display:flex}.lg\:grid{display:grid}.lg\:hidden{display:none}.lg\:block{display:block}.lg\:flex-row{flex-direction:row}.lg\:flex-col{flex-direction:column}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:gap-6{gap:var(--space-6)}.lg\:gap-8{gap:var(--space-8)}.lg\:gap-10{gap:var(--space-10)}.lg\:px-10{padding-left:var(--space-10);padding-right:var(--space-10)}.lg\:py-8{padding-top:var(--space-8);padding-bottom:var(--space-8)}.lg\:text-lg{font-size:var(--text-lg)}.lg\:text-xl{font-size:var(--text-xl)}.lg\:text-2xl{font-size:var(--text-2xl)}.lg\:text-3xl{font-size:var(--text-3xl)}.lg\:text-4xl{font-size:var(--text-4xl)}.lg\:max-w-lg{max-width:32rem}.lg\:max-w-xl{max-width:36rem}.lg\:max-w-2xl{max-width:42rem}.lg\:max-w-3xl{max-width:48rem}.lg\:max-w-4xl{max-width:56rem}}@media (min-width: 1280px){.xl\:flex{display:flex}.xl\:grid{display:grid}.xl\:hidden{display:none}.xl\:block{display:block}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.xl\:gap-8{gap:var(--space-8)}.xl\:gap-10{gap:var(--space-10)}.xl\:gap-12{gap:var(--space-12)}.xl\:px-12{padding-left:var(--space-12);padding-right:var(--space-12)}.xl\:py-10{padding-top:var(--space-10);padding-bottom:var(--space-10)}.xl\:text-xl{font-size:var(--text-xl)}.xl\:text-2xl{font-size:var(--text-2xl)}.xl\:text-3xl{font-size:var(--text-3xl)}.xl\:text-4xl{font-size:var(--text-4xl)}.xl\:text-5xl{font-size:var(--text-5xl)}.xl\:max-w-2xl{max-width:42rem}.xl\:max-w-3xl{max-width:48rem}.xl\:max-w-4xl{max-width:56rem}.xl\:max-w-5xl{max-width:64rem}.xl\:max-w-6xl{max-width:72rem}}*:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (prefers-contrast: high){:root{--color-gray-100: #e0e0e0;--color-gray-200: #c0c0c0;--color-gray-300: #a0a0a0}}@media print{*,*:before,*:after{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-weight:var(--font-medium);line-height:1;text-align:center;text-decoration:none;white-space:nowrap;border:1px solid transparent;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast);min-height:var(--touch-target-min);min-width:var(--touch-target-min);-webkit-tap-highlight-color:transparent}.btn:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px}.btn-primary{background-color:var(--color-primary-600);color:#fff;border-color:var(--color-primary-600)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-700);border-color:var(--color-primary-700);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:active:not(:disabled){background-color:var(--color-primary-800);border-color:var(--color-primary-800);transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-secondary{background-color:#fff;color:var(--color-gray-700);border-color:var(--color-gray-300)}.btn-secondary:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-400);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-secondary:active:not(:disabled){background-color:var(--color-gray-100);border-color:var(--color-gray-400);transform:translateY(0)}.btn-danger{background-color:var(--color-error);color:#fff;border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background-color:#dc2626;border-color:#dc2626;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-danger:active:not(:disabled){background-color:var(--color-error-dark);border-color:var(--color-error-dark);transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-ghost{background-color:transparent;color:var(--color-gray-700);border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:var(--color-gray-100);color:var(--color-gray-900)}.btn-ghost:active:not(:disabled){background-color:var(--color-gray-200)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-md);min-height:36px}.btn-md{padding:var(--space-3) var(--space-4);font-size:var(--text-base);border-radius:var(--radius-lg);min-height:var(--touch-target-min)}.btn-lg{padding:var(--space-4) var(--space-6);font-size:var(--text-lg);border-radius:var(--radius-lg);min-height:52px}.btn:disabled,.btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn.loading{position:relative;color:transparent;pointer-events:none}.btn.loading:after{content:"";position:absolute;width:16px;height:16px;top:50%;left:50%;margin-left:-8px;margin-top:-8px;border:2px solid currentColor;border-radius:50%;border-top-color:transparent;animation:btn-spin .6s linear infinite;color:inherit}.btn-primary.loading:after,.btn-danger.loading:after{border-color:#fff;border-top-color:transparent}.btn-secondary.loading:after,.btn-ghost.loading:after{border-color:var(--color-gray-700);border-top-color:transparent}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn-icon{padding:var(--space-3);min-width:var(--touch-target-min);min-height:var(--touch-target-min)}.btn-icon.btn-sm{padding:var(--space-2);min-width:36px;min-height:36px}.btn-icon.btn-lg{padding:var(--space-4);min-width:52px;min-height:52px}.btn-group{display:inline-flex;gap:var(--space-2)}.btn-group .btn{flex:0 0 auto}.btn-block{display:flex;width:100%}@media (max-width: 767px){.btn{min-height:var(--touch-target-min);padding:var(--space-3) var(--space-4)}.btn-sm{min-height:40px;padding:var(--space-2) var(--space-3)}.btn-lg{min-height:56px;padding:var(--space-4) var(--space-6)}}.form-field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.form-field:last-child{margin-bottom:0}.form-label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-700);margin-bottom:var(--space-2)}.form-label.required:after{content:"*";color:var(--color-error);margin-left:var(--space-1)}.form-input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-base);font-family:var(--font-sans);line-height:var(--line-height-normal);color:var(--color-gray-900);background-color:#fff;border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);transition:all var(--transition-fast);min-height:var(--touch-target-min);font-size:16px}.form-input::placeholder{color:var(--color-gray-400)}.form-input:hover:not(:disabled):not(:focus){border-color:var(--color-gray-400)}.form-input:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-100)}.form-input:disabled{background-color:var(--color-gray-100);color:var(--color-gray-500);cursor:not-allowed;opacity:.6}.form-field-floating{position:relative;margin-bottom:var(--space-4)}.form-field-floating .form-input{padding-top:var(--space-5);padding-bottom:var(--space-2)}.form-field-floating .form-label-floating{position:absolute;left:var(--space-4);top:50%;transform:translateY(-50%);font-size:var(--text-base);color:var(--color-gray-400);pointer-events:none;transition:all var(--transition-fast);background-color:#fff;padding:0 var(--space-1)}.form-field-floating .form-input:focus~.form-label-floating,.form-field-floating .form-input:not(:placeholder-shown)~.form-label-floating{top:var(--space-2);font-size:var(--text-xs);color:var(--color-primary-600);transform:translateY(0)}.form-field-floating .form-input:not(:placeholder-shown)~.form-label-floating{opacity:0;visibility:hidden}.form-field-floating .form-input:disabled~.form-label-floating{color:var(--color-gray-400)}.form-textarea{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-base);font-family:var(--font-sans);line-height:var(--line-height-normal);color:var(--color-gray-900);background-color:#fff;border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);transition:all var(--transition-fast);resize:vertical;min-height:100px;font-size:16px}.form-textarea::placeholder{color:var(--color-gray-400)}.form-textarea:hover:not(:disabled):not(:focus){border-color:var(--color-gray-400)}.form-textarea:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-100)}.form-textarea:disabled{background-color:var(--color-gray-100);color:var(--color-gray-500);cursor:not-allowed;opacity:.6}.form-select{width:100%;padding:var(--space-3) var(--space-10) var(--space-3) var(--space-4);font-size:var(--text-base);font-family:var(--font-sans);line-height:var(--line-height-normal);color:var(--color-gray-900);background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right var(--space-3) center;background-repeat:no-repeat;background-size:20px;border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);transition:all var(--transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;min-height:var(--touch-target-min);font-size:16px}.form-select:hover:not(:disabled):not(:focus){border-color:var(--color-gray-400)}.form-select:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-100)}.form-select:disabled{background-color:var(--color-gray-100);color:var(--color-gray-500);cursor:not-allowed;opacity:.6}.form-checkbox-wrapper{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;-webkit-user-select:none;user-select:none;min-height:var(--touch-target-min);padding:var(--space-2) 0}.form-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;min-width:20px;border:2px solid var(--color-gray-300);border-radius:var(--radius-sm);background-color:#fff;cursor:pointer;transition:all var(--transition-fast);position:relative;margin-top:2px}.form-checkbox:hover:not(:disabled){border-color:var(--color-primary-600)}.form-checkbox:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-100)}.form-checkbox:checked{background-color:var(--color-primary-600);border-color:var(--color-primary-600)}.form-checkbox:checked:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.form-checkbox:disabled{background-color:var(--color-gray-100);border-color:var(--color-gray-300);cursor:not-allowed;opacity:.6}.form-checkbox-label{font-size:var(--text-base);color:var(--color-gray-700);line-height:var(--line-height-normal);cursor:pointer}.form-checkbox:disabled~.form-checkbox-label{color:var(--color-gray-500);cursor:not-allowed}.form-radio-wrapper{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;-webkit-user-select:none;user-select:none;min-height:var(--touch-target-min);padding:var(--space-2) 0}.form-radio{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;min-width:20px;border:2px solid var(--color-gray-300);border-radius:var(--radius-full);background-color:#fff;cursor:pointer;transition:all var(--transition-fast);position:relative;margin-top:2px}.form-radio:hover:not(:disabled){border-color:var(--color-primary-600)}.form-radio:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-100)}.form-radio:checked{border-color:var(--color-primary-600)}.form-radio:checked:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:10px;height:10px;border-radius:var(--radius-full);background-color:var(--color-primary-600)}.form-radio:disabled{background-color:var(--color-gray-100);border-color:var(--color-gray-300);cursor:not-allowed;opacity:.6}.form-radio-label{font-size:var(--text-base);color:var(--color-gray-700);line-height:var(--line-height-normal);cursor:pointer}.form-radio:disabled~.form-radio-label{color:var(--color-gray-500);cursor:not-allowed}.form-radio-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-field.error .form-input,.form-field.error .form-textarea,.form-field.error .form-select{border-color:var(--color-error)}.form-field.error .form-input:focus,.form-field.error .form-textarea:focus,.form-field.error .form-select:focus{border-color:var(--color-error);box-shadow:0 0 0 3px var(--color-error-light)}.form-field.error .form-label{color:var(--color-error)}.form-field.success .form-input,.form-field.success .form-textarea,.form-field.success .form-select{border-color:var(--color-success)}.form-field.success .form-input:focus,.form-field.success .form-textarea:focus,.form-field.success .form-select:focus{border-color:var(--color-success);box-shadow:0 0 0 3px var(--color-success-light)}.form-message{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);line-height:var(--line-height-normal);margin-top:var(--space-2)}.form-message-error{color:var(--color-error)}.form-message-error:before{content:"⚠";font-size:var(--text-base);flex-shrink:0}.form-message-success{color:var(--color-success)}.form-message-success:before{content:"✓";font-size:var(--text-base);flex-shrink:0}.form-message-info{color:var(--color-gray-600)}.form-message-info:before{content:"ℹ";font-size:var(--text-base);flex-shrink:0}.form-input-wrapper{position:relative;width:100%}.form-input-wrapper .form-input{padding-right:var(--space-10)}.form-input-icon{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);color:var(--color-gray-400);pointer-events:none;display:flex;align-items:center;justify-content:center}.form-input-icon.clickable{pointer-events:auto;cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);transition:all var(--transition-fast)}.form-input-icon.clickable:hover{background-color:var(--color-gray-100);color:var(--color-gray-600)}.form-helper{font-size:var(--text-sm);color:var(--color-gray-600);margin-top:var(--space-2);line-height:var(--line-height-normal)}@media (max-width: 767px){.form-input,.form-textarea,.form-select{font-size:16px}.form-checkbox-wrapper,.form-radio-wrapper{min-height:var(--touch-target-min);padding:var(--space-3) 0}.form-checkbox,.form-radio{width:24px;height:24px;min-width:24px}.form-checkbox:checked:after{left:6px;top:2px;width:6px;height:11px}.form-radio:checked:after{width:12px;height:12px}}.card{background-color:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base),opacity var(--transition-base);display:flex;flex-direction:column;contain:layout style paint}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);will-change:transform,box-shadow}.card-flat{box-shadow:none;border:1px solid var(--color-gray-200)}.card-flat:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.card-elevated{box-shadow:var(--shadow-md);border:none}.card-elevated:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-interactive{cursor:pointer;-webkit-user-select:none;user-select:none}.card-interactive:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.card-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-gray-200);background-color:var(--color-gray-50)}.card-header-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0;line-height:var(--line-height-tight)}.card-header-subtitle{font-size:var(--text-sm);color:var(--color-gray-600);margin-top:var(--space-1);line-height:var(--line-height-normal)}.card-body{padding:var(--space-6);flex:1}.card-body-compact{padding:var(--space-4)}.card-body-spacious{padding:var(--space-8)}.card-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-gray-200);background-color:var(--color-gray-50);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.card-media{width:100%;height:auto;display:block;object-fit:cover}.card-media-top{border-radius:var(--radius-xl) var(--radius-xl) 0 0}.card-media-container{position:relative;overflow:hidden;background-color:var(--color-gray-100)}.card-media-container-16-9{aspect-ratio:16 / 9}.card-media-container-4-3{aspect-ratio:4 / 3}.card-media-container-1-1{aspect-ratio:1 / 1}.card-actions{display:flex;gap:var(--space-2);align-items:center;padding:var(--space-4) var(--space-6)}.card-actions-end{justify-content:flex-end}.card-actions-start{justify-content:flex-start}.card-actions-center{justify-content:center}.card-actions-between{justify-content:space-between}.card-badge{position:absolute;top:var(--space-3);right:var(--space-3);padding:var(--space-1) var(--space-3);background-color:var(--color-primary-600);color:#fff;font-size:var(--text-xs);font-weight:var(--font-semibold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px}.card-grid{display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.card-grid-compact{gap:var(--space-4)}.card-grid-spacious{gap:var(--space-8)}@media (min-width: 640px){.card-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (min-width: 768px){.card-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}@media (min-width: 1024px){.card-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}.card-list{display:flex;flex-direction:column;gap:var(--space-4)}.card-list .card{flex-direction:row}.card-list .card-media-container{width:200px;flex-shrink:0}.card-list .card-body{flex:1}@media (max-width: 767px){.card{border-radius:var(--radius-lg)}.card-header{padding:var(--space-4) var(--space-4)}.card-body{padding:var(--space-4)}.card-footer{padding:var(--space-3) var(--space-4);flex-direction:column;align-items:stretch}.card-actions{padding:var(--space-3) var(--space-4);flex-wrap:wrap}.card-grid{grid-template-columns:1fr;gap:var(--space-4)}.card-list .card{flex-direction:column}.card-list .card-media-container{width:100%}}.card-skeleton{background:linear-gradient(90deg,var(--color-gray-100) 0%,var(--color-gray-200) 50%,var(--color-gray-100) 100%);background-size:200% 100%;animation:card-skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--radius-md)}@keyframes card-skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.card-skeleton-header{height:24px;width:60%;margin-bottom:var(--space-3)}.card-skeleton-text{height:16px;width:100%;margin-bottom:var(--space-2)}.card-skeleton-text:last-child{width:80%;margin-bottom:0}.card-skeleton-image{width:100%;height:200px;margin-bottom:var(--space-4)}.toast-container{position:fixed;z-index:var(--z-tooltip);pointer-events:none;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.toast-container-top-right{top:0;right:0}.toast-container-top-center{top:0;left:50%;transform:translate(-50%);align-items:center}.toast-container-top-left{top:0;left:0}.toast-container-bottom-right{bottom:0;right:0}.toast-container-bottom-center{bottom:0;left:50%;transform:translate(-50%);align-items:center}.toast-container-bottom-left{bottom:0;left:0}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--space-3);min-width:300px;max-width:500px;padding:var(--space-4);background-color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--color-gray-200);animation:toast-slide-in .3s cubic-bezier(.4,0,.2,1)}.toast.toast-exit{animation:toast-slide-out .2s cubic-bezier(.4,0,1,1)}@keyframes toast-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toast-slide-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:var(--text-lg)}.toast-content{flex:1;min-width:0}.toast-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-1);line-height:var(--line-height-tight)}.toast-message{font-size:var(--text-sm);color:var(--color-gray-600);line-height:var(--line-height-normal)}.toast-close{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--color-gray-400);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.toast-close:hover{color:var(--color-gray-600);background-color:var(--color-gray-100)}.toast-success{border-left:4px solid var(--color-success)}.toast-success .toast-icon{color:var(--color-success)}.toast-error{border-left:4px solid var(--color-error)}.toast-error .toast-icon{color:var(--color-error)}.toast-warning{border-left:4px solid var(--color-warning)}.toast-warning .toast-icon{color:var(--color-warning)}.toast-info{border-left:4px solid var(--color-info)}.toast-info .toast-icon{color:var(--color-info)}@media (max-width: 767px){.toast-container{left:0;right:0;padding:var(--space-3)}.toast{min-width:auto;width:100%}.toast-container-top-center,.toast-container-bottom-center{transform:none;left:0}}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:var(--z-modal-backdrop);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:modal-backdrop-fade-in .2s ease-out;overflow-y:auto}.modal-backdrop.modal-exit{animation:modal-backdrop-fade-out .2s ease-in}@keyframes modal-backdrop-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-backdrop-fade-out{0%{opacity:1}to{opacity:0}}.modal{position:relative;background-color:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-width:500px;width:100%;max-height:90vh;display:flex;flex-direction:column;z-index:var(--z-modal);animation:modal-scale-in .2s cubic-bezier(.4,0,.2,1)}.modal.modal-exit{animation:modal-scale-out .2s cubic-bezier(.4,0,1,1)}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes modal-scale-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.modal-sm{max-width:400px}.modal-md{max-width:500px}.modal-lg{max-width:700px}.modal-xl{max-width:900px}.modal-full{max-width:95vw;max-height:95vh}.modal-header{padding:var(--space-6);border-bottom:1px solid var(--color-gray-200);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.modal-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0;line-height:var(--line-height-tight)}.modal-close{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--color-gray-400);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);border:none;background:none}.modal-close:hover{color:var(--color-gray-600);background-color:var(--color-gray-100)}.modal-body{padding:var(--space-6);overflow-y:auto;flex:1}.modal-footer{padding:var(--space-6);border-top:1px solid var(--color-gray-200);display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}@media (max-width: 767px){.modal-backdrop{padding:0;align-items:flex-end}.modal{max-width:100%;max-height:90vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:modal-slide-up .3s cubic-bezier(.4,0,.2,1)}.modal.modal-exit{animation:modal-slide-down .2s cubic-bezier(.4,0,1,1)}@keyframes modal-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes modal-slide-down{0%{transform:translateY(0)}to{transform:translateY(100%)}}.modal-header,.modal-body{padding:var(--space-4)}.modal-footer{padding:var(--space-4);flex-direction:column-reverse}.modal-footer .btn{width:100%}}.alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid;margin-bottom:var(--space-4)}.alert-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:var(--text-lg)}.alert-content{flex:1;min-width:0}.alert-title{font-size:var(--text-sm);font-weight:var(--font-semibold);margin-bottom:var(--space-1);line-height:var(--line-height-tight)}.alert-message{font-size:var(--text-sm);line-height:var(--line-height-normal)}.alert-close{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);border:none;background:none}.alert-success .alert-icon{color:var(--color-success)}.alert-success .alert-close{color:var(--color-success-dark)}.alert-success .alert-close:hover{background-color:#10b98133}.alert-error .alert-icon{color:var(--color-error)}.alert-error .alert-close{color:var(--color-error-dark)}.alert-error .alert-close:hover{background-color:#ef444433}.alert-warning .alert-icon{color:var(--color-warning)}.alert-warning .alert-close{color:var(--color-warning-dark)}.alert-warning .alert-close:hover{background-color:#f59e0b33}.alert-info .alert-icon{color:var(--color-info)}.alert-info .alert-close{color:var(--color-info-dark)}.alert-info .alert-close:hover{background-color:#3b82f633}.spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--color-gray-300);border-top-color:var(--color-primary-600);border-radius:50%;animation:spinner-rotate .6s linear infinite}.spinner-sm{width:16px;height:16px;border-width:2px}.spinner-md{width:24px;height:24px;border-width:2px}.spinner-lg{width:32px;height:32px;border-width:3px}.spinner-xl{width:48px;height:48px;border-width:4px}.spinner-primary{border-color:var(--color-gray-300);border-top-color:var(--color-primary-600)}.spinner-white{border-color:#ffffff4d;border-top-color:#fff}.spinner-success{border-color:var(--color-gray-300);border-top-color:var(--color-success)}.spinner-error{border-color:var(--color-gray-300);border-top-color:var(--color-error)}.spinner-container{display:flex;align-items:center;justify-content:center;padding:var(--space-8)}.spinner-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background-color:#fffc;z-index:var(--z-dropdown)}.skeleton{background:linear-gradient(90deg,var(--color-gray-100) 0%,var(--color-gray-200) 50%,var(--color-gray-100) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--radius-md)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:16px;width:100%;margin-bottom:var(--space-2)}.skeleton-text-sm{height:14px}.skeleton-text-lg{height:20px}.skeleton-title{height:24px;width:60%;margin-bottom:var(--space-3)}.skeleton-avatar{width:40px;height:40px;border-radius:var(--radius-full)}.skeleton-avatar-sm{width:32px;height:32px}.skeleton-avatar-lg{width:56px;height:56px}.skeleton-button{height:44px;width:120px;border-radius:var(--radius-lg)}.skeleton-image{width:100%;height:200px;border-radius:var(--radius-lg)}.skeleton-card{padding:var(--space-6);background-color:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200)}.skeleton-list{display:flex;flex-direction:column;gap:var(--space-4)}.skeleton-grid{display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.progress{width:100%;height:8px;background-color:var(--color-gray-200);border-radius:var(--radius-full);overflow:hidden}.progress-bar{height:100%;background-color:var(--color-primary-600);border-radius:var(--radius-full);transition:width var(--transition-base)}.progress-bar-success{background-color:var(--color-success)}.progress-bar-warning{background-color:var(--color-warning)}.progress-bar-error{background-color:var(--color-error)}.progress-bar-animated{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem;animation:progress-bar-stripes 1s linear infinite}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress-sm{height:4px}.progress-md{height:8px}.progress-lg{height:12px}.btn,.btn-primary,.btn-secondary,.btn-danger,.btn-ghost{transition:all var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.card,.card-flat,.card-elevated{transition:all var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base)}.card-interactive{transition:all var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.form-input,.form-textarea,.form-select{transition:all var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-checkbox,.form-radio{transition:all var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast)}a{transition:color var(--transition-fast),opacity var(--transition-fast)}a:hover{opacity:.8}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-flat:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-elevated:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.card-interactive:hover{cursor:pointer;box-shadow:var(--shadow-lg);transform:translateY(-3px)}.card-interactive:active{transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn:active:not(:disabled){transform:translateY(0)}.btn-primary:hover:not(:disabled){box-shadow:0 8px 16px -4px #2563eb66}.btn-secondary:hover:not(:disabled){box-shadow:0 4px 8px -2px #0000001a}.btn-danger:hover:not(:disabled){box-shadow:0 8px 16px -4px #ef444466}.btn-ghost:hover:not(:disabled){transform:none;background-color:var(--color-gray-100)}.btn-icon:hover:not(:disabled){transform:scale(1.05)}.btn-icon:active:not(:disabled){transform:scale(.95)}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-100);transform:scale(1.01);transition:all var(--transition-fast)}.form-field-floating .form-label-floating{transition:all var(--transition-base),color var(--transition-fast),transform var(--transition-base)}.form-field-floating .form-input:focus~.form-label-floating{color:var(--color-primary-600);transform:translateY(0) scale(.95)}.form-checkbox:focus,.form-radio:focus{box-shadow:0 0 0 4px var(--color-primary-100);transform:scale(1.1)}.form-checkbox:checked{animation:checkbox-check .2s ease-out}@keyframes checkbox-check{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.form-radio:checked{animation:radio-check .2s ease-out}@keyframes radio-check{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.page-enter{animation:page-fade-in .3s ease-out}@keyframes page-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-in-left{animation:slide-in-left .3s cubic-bezier(.4,0,.2,1)}@keyframes slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}.slide-in-right{animation:slide-in-right .3s cubic-bezier(.4,0,.2,1)}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}.slide-out-left{animation:slide-out-left .2s cubic-bezier(.4,0,1,1)}@keyframes slide-out-left{0%{transform:translate(0)}to{transform:translate(-100%)}}.slide-out-right{animation:slide-out-right .2s cubic-bezier(.4,0,1,1)}@keyframes slide-out-right{0%{transform:translate(0)}to{transform:translate(100%)}}.scale-in{animation:scale-in .2s cubic-bezier(.4,0,.2,1)}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.scale-out{animation:scale-out .2s cubic-bezier(.4,0,1,1)}@keyframes scale-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.btn-ripple{position:relative;overflow:hidden}.btn-ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background-color:#ffffff80;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-ripple:active:after{width:300px;height:300px}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.bounce{animation:bounce 1s ease-in-out}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97)}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.glow{box-shadow:0 0 20px #3b82f680;animation:glow 1.5s ease-in-out infinite alternate}@keyframes glow{0%{box-shadow:0 0 10px #3b82f64d}to{box-shadow:0 0 20px #3b82f699}}.nav-item{transition:all var(--transition-fast)}.nav-item:hover{background-color:var(--color-gray-100);transform:translate(4px)}.nav-item.active{background-color:var(--color-primary-50);color:var(--color-primary-600);border-left:3px solid var(--color-primary-600)}.list-item{transition:all var(--transition-fast)}.list-item:hover{background-color:var(--color-gray-50);transform:translate(2px)}.badge{transition:all var(--transition-fast)}.badge:hover{transform:scale(1.05)}.avatar{transition:all var(--transition-fast)}.avatar:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}.icon-interactive{transition:all var(--transition-fast);cursor:pointer}.icon-interactive:hover{color:var(--color-primary-600);transform:scale(1.15)}.icon-interactive:active{transform:scale(.95)}.loading-enter{animation:fade-in .2s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.loading-exit{animation:fade-out .2s ease-in}@keyframes fade-out{0%{opacity:1}to{opacity:0}}.skeleton{animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.stagger-item{animation:stagger-fade-in .3s ease-out backwards}.stagger-item:nth-child(1){animation-delay:.05s}.stagger-item:nth-child(2){animation-delay:.1s}.stagger-item:nth-child(3){animation-delay:.15s}.stagger-item:nth-child(4){animation-delay:.2s}.stagger-item:nth-child(5){animation-delay:.25s}.stagger-item:nth-child(6){animation-delay:.3s}.stagger-item:nth-child(7){animation-delay:.35s}.stagger-item:nth-child(8){animation-delay:.4s}.stagger-item:nth-child(9){animation-delay:.45s}.stagger-item:nth-child(10){animation-delay:.5s}@keyframes stagger-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fade-in .3s ease-out}.fade-out{animation:fade-out .3s ease-in}.slide-up{animation:slide-up .3s ease-out}@keyframes slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.slide-down{animation:slide-down .3s ease-out}@keyframes slide-down{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.zoom-in{animation:zoom-in .2s ease-out}@keyframes zoom-in{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.zoom-out{animation:zoom-out .2s ease-in}@keyframes zoom-out{0%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0}}.rotate-in{animation:rotate-in .3s ease-out}@keyframes rotate-in{0%{transform:rotate(-180deg) scale(.5);opacity:0}to{transform:rotate(0) scale(1);opacity:1}}.gpu-accelerated{transform:translateZ(0);will-change:transform}.animate-optimized{will-change:transform,opacity}.animate-complete{will-change:auto}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.card:hover,.card-interactive:hover,.btn:hover{transform:none}.skeleton{animation:none;background:var(--color-gray-200)}}.skeleton-dashboard{padding:var(--space-6)}.skeleton-dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8)}.skeleton-dashboard-title{height:32px;width:200px;border-radius:var(--radius-lg)}.skeleton-dashboard-actions{display:flex;gap:var(--space-3)}.skeleton-dashboard-button{height:44px;width:120px;border-radius:var(--radius-lg)}.skeleton-dashboard-grid{display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.skeleton-dashboard-card{background-color:#fff;border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200)}.skeleton-dashboard-card-image{height:160px;width:100%;margin-bottom:var(--space-4);border-radius:var(--radius-lg)}.skeleton-dashboard-card-title{height:20px;width:80%;margin-bottom:var(--space-3);border-radius:var(--radius-md)}.skeleton-dashboard-card-text{height:14px;width:100%;margin-bottom:var(--space-2);border-radius:var(--radius-md)}.skeleton-dashboard-card-text:last-child{width:60%}.skeleton-editor{padding:var(--space-6);max-width:900px;margin:0 auto}.skeleton-editor-toolbar{display:flex;gap:var(--space-2);padding:var(--space-4);background-color:#fff;border-radius:var(--radius-lg);margin-bottom:var(--space-6);box-shadow:var(--shadow-sm)}.skeleton-editor-tool{height:36px;width:36px;border-radius:var(--radius-md)}.skeleton-editor-title{height:40px;width:60%;margin-bottom:var(--space-6);border-radius:var(--radius-lg)}.skeleton-editor-content{display:flex;flex-direction:column;gap:var(--space-3)}.skeleton-editor-line{height:16px;width:100%;border-radius:var(--radius-md)}.skeleton-editor-line:nth-child(3n){width:90%}.skeleton-editor-line:nth-child(5n){width:75%}.skeleton-space{padding:var(--space-6)}.skeleton-space-header{margin-bottom:var(--space-8)}.skeleton-space-title{height:32px;width:250px;margin-bottom:var(--space-3);border-radius:var(--radius-lg)}.skeleton-space-description{height:16px;width:400px;border-radius:var(--radius-md)}.skeleton-space-controls{display:flex;gap:var(--space-3);margin-bottom:var(--space-6)}.skeleton-space-control{height:40px;width:100px;border-radius:var(--radius-lg)}.skeleton-agents{padding:var(--space-6)}.skeleton-agents-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8)}.skeleton-agents-grid{display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.skeleton-agent-card{background-color:#fff;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200)}.skeleton-agent-header{height:100px;width:100%;background:linear-gradient(135deg,var(--color-gray-200) 0%,var(--color-gray-300) 100%)}.skeleton-agent-body{padding:var(--space-6)}.skeleton-agent-title{height:24px;width:70%;margin-bottom:var(--space-3);border-radius:var(--radius-md)}.skeleton-agent-text{height:14px;width:100%;margin-bottom:var(--space-2);border-radius:var(--radius-md)}.skeleton-table{background-color:#fff;border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200)}.skeleton-table-header{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-gray-200)}.skeleton-table-header-cell{height:16px;border-radius:var(--radius-md)}.skeleton-table-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-gray-100)}.skeleton-table-cell{height:14px;border-radius:var(--radius-md)}.skeleton-chat{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6)}.skeleton-chat-message{display:flex;gap:var(--space-3);align-items:flex-start}.skeleton-chat-message.user{flex-direction:row-reverse}.skeleton-chat-avatar{width:40px;height:40px;border-radius:var(--radius-full);flex-shrink:0}.skeleton-chat-bubble{max-width:70%;padding:var(--space-4);background-color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.skeleton-chat-text{height:14px;width:100%;margin-bottom:var(--space-2);border-radius:var(--radius-md)}.skeleton-chat-text:last-child{width:80%;margin-bottom:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12) var(--space-6);text-align:center;min-height:400px}.empty-state-icon{width:120px;height:120px;margin-bottom:var(--space-6);color:var(--color-gray-300);display:flex;align-items:center;justify-content:center;font-size:80px}.empty-state-illustration{width:200px;height:200px;margin-bottom:var(--space-6);opacity:.8}.empty-state-title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-3);line-height:var(--line-height-tight)}.empty-state-message{font-size:var(--text-base);color:var(--color-gray-600);margin-bottom:var(--space-6);max-width:500px;line-height:var(--line-height-relaxed)}.empty-state-action{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.empty-state-documents .empty-state-icon:before{content:"📄"}.empty-state-spaces .empty-state-icon:before{content:"📁"}.empty-state-agents .empty-state-icon:before{content:"🤖"}.empty-state-search .empty-state-icon:before{content:"🔍"}.empty-state-users .empty-state-icon:before{content:"👥"}.empty-state-messages .empty-state-icon:before{content:"💬"}.empty-state-notifications .empty-state-icon:before{content:"🔔"}.empty-state-error .empty-state-icon{color:var(--color-error)}.empty-state-error .empty-state-icon:before{content:"⚠️"}.empty-state-compact{min-height:200px;padding:var(--space-8) var(--space-4)}.empty-state-compact .empty-state-icon{width:80px;height:80px;font-size:60px;margin-bottom:var(--space-4)}.empty-state-compact .empty-state-title{font-size:var(--text-lg);margin-bottom:var(--space-2)}.empty-state-compact .empty-state-message{font-size:var(--text-sm);margin-bottom:var(--space-4)}.loading-inline{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-gray-600);font-size:var(--text-sm)}.loading-inline .spinner{width:16px;height:16px}.btn-loading{position:relative;color:transparent!important;pointer-events:none}.btn-loading:before{content:"";position:absolute;width:20px;height:20px;top:50%;left:50%;margin-left:-10px;margin-top:-10px;border:2px solid currentColor;border-radius:50%;border-top-color:transparent;animation:btn-loading-spin .6s linear infinite}.btn-primary.btn-loading:before,.btn-danger.btn-loading:before{border-color:#fff;border-top-color:transparent}.btn-secondary.btn-loading:before,.btn-ghost.btn-loading:before{border-color:var(--color-gray-700);border-top-color:transparent}@keyframes btn-loading-spin{to{transform:rotate(360deg)}}.loading-page{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:var(--color-gray-50);z-index:var(--z-modal)}.loading-page .spinner{width:48px;height:48px;border-width:4px;margin-bottom:var(--space-4)}.loading-page-text{font-size:var(--text-base);color:var(--color-gray-600);margin-top:var(--space-4)}.loading-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12) var(--space-6);min-height:300px}.loading-section .spinner{width:40px;height:40px;border-width:3px;margin-bottom:var(--space-4)}.loading-section-text{font-size:var(--text-sm);color:var(--color-gray-600)}.card-loading{position:relative;pointer-events:none}.card-loading:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-color:#fffc;display:flex;align-items:center;justify-content:center;border-radius:inherit;z-index:1}.upload-progress{background-color:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200);margin-bottom:var(--space-3)}.upload-progress-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.upload-progress-info{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.upload-progress-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:var(--color-primary-50);color:var(--color-primary-600);border-radius:var(--radius-lg);font-size:var(--text-xl);flex-shrink:0}.upload-progress-details{flex:1;min-width:0}.upload-progress-filename{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-900);margin-bottom:var(--space-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-progress-size{font-size:var(--text-xs);color:var(--color-gray-600)}.upload-progress-cancel{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--color-gray-400);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);border:none;background:none}.upload-progress-cancel:hover{color:var(--color-gray-600);background-color:var(--color-gray-100)}.upload-progress-bar-container{position:relative;height:8px;background-color:var(--color-gray-200);border-radius:var(--radius-full);overflow:hidden}.upload-progress-bar{height:100%;background:linear-gradient(90deg,var(--color-primary-500),var(--color-primary-600));border-radius:var(--radius-full);transition:width var(--transition-base);position:relative;overflow:hidden}.upload-progress-bar:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background-image:linear-gradient(45deg,rgba(255,255,255,.2) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.2) 50%,rgba(255,255,255,.2) 75%,transparent 75%,transparent);background-size:1rem 1rem;animation:upload-progress-stripes 1s linear infinite}@keyframes upload-progress-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.upload-progress-percentage{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--text-xs);font-weight:var(--font-semibold);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.upload-progress.complete .upload-progress-icon{background-color:var(--color-success-light);color:var(--color-success)}.upload-progress.complete .upload-progress-bar{background:linear-gradient(90deg,var(--color-success),var(--color-success-dark))}.upload-progress.complete .upload-progress-bar:after{animation:none}.upload-progress.error .upload-progress-icon{background-color:var(--color-error-light);color:var(--color-error)}.upload-progress.error .upload-progress-bar{background:var(--color-error)}.upload-progress.error .upload-progress-bar:after{animation:none}.upload-progress-list{position:fixed;bottom:var(--space-4);right:var(--space-4);width:400px;max-height:500px;overflow-y:auto;z-index:var(--z-tooltip);display:flex;flex-direction:column;gap:var(--space-3)}.progress-circle{position:relative;width:60px;height:60px}.progress-circle-svg{transform:rotate(-90deg)}.progress-circle-bg{fill:none;stroke:var(--color-gray-200);stroke-width:4}.progress-circle-bar{fill:none;stroke:var(--color-primary-600);stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset var(--transition-base)}.progress-circle-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-gray-900)}@media (max-width: 767px){.empty-state{padding:var(--space-8) var(--space-4);min-height:300px}.empty-state-icon{width:100px;height:100px;font-size:60px;margin-bottom:var(--space-4)}.empty-state-illustration{width:150px;height:150px;margin-bottom:var(--space-4)}.empty-state-title{font-size:var(--text-xl)}.empty-state-message{font-size:var(--text-sm)}.upload-progress-list{width:calc(100% - var(--space-8));left:var(--space-4);right:var(--space-4)}.skeleton-dashboard-grid,.skeleton-agents-grid{grid-template-columns:1fr}}.form-error{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);background-color:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-lg);margin-top:var(--space-2);animation:error-shake .5s cubic-bezier(.36,.07,.19,.97)}.form-error-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--color-error);font-size:var(--text-lg)}.form-error-icon:before{content:"⚠"}.form-error-message{flex:1;font-size:var(--text-sm);color:var(--color-error-dark);line-height:var(--line-height-normal)}@keyframes error-shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}.error-inline{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-error);font-size:var(--text-sm);font-weight:var(--font-medium)}.error-inline-icon:before{content:"⚠";font-size:var(--text-base)}.field-error{position:relative}.field-error .form-input,.field-error .form-textarea,.field-error .form-select{border-color:var(--color-error);background-color:var(--color-error-light);animation:field-error-pulse .3s ease-out}.field-error .form-input:focus,.field-error .form-textarea:focus,.field-error .form-select:focus{border-color:var(--color-error);box-shadow:0 0 0 4px #ef44441a}@keyframes field-error-pulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.field-error:after{content:"⚠";position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);color:var(--color-error);font-size:var(--text-lg);pointer-events:none}.toast-error-enhanced{border-left:4px solid var(--color-error);background-color:#fff;box-shadow:0 10px 25px -5px #ef44444d;animation:toast-error-slide-in .3s cubic-bezier(.4,0,.2,1)}@keyframes toast-error-slide-in{0%{opacity:0;transform:translate(100%) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}.toast-error-enhanced .toast-icon{width:24px;height:24px;background-color:var(--color-error-light);border-radius:var(--radius-full);color:var(--color-error);font-size:var(--text-xl)}.toast-error-enhanced .toast-icon:before{content:"✕"}.toast-error-enhanced .toast-title{color:var(--color-error-dark);font-weight:var(--font-semibold)}.toast-warning-enhanced{border-left:4px solid var(--color-warning);background-color:#fff;box-shadow:0 10px 25px -5px #f59e0b4d}.toast-warning-enhanced .toast-icon{width:24px;height:24px;background-color:var(--color-warning-light);border-radius:var(--radius-full);color:var(--color-warning);font-size:var(--text-xl)}.toast-warning-enhanced .toast-icon:before{content:"⚠"}.toast-warning-enhanced .toast-title{color:var(--color-warning-dark);font-weight:var(--font-semibold)}.toast-success-enhanced{border-left:4px solid var(--color-success);background-color:#fff;box-shadow:0 10px 25px -5px #10b9814d}.toast-success-enhanced .toast-icon{width:24px;height:24px;background-color:var(--color-success-light);border-radius:var(--radius-full);color:var(--color-success);font-size:var(--text-xl)}.toast-success-enhanced .toast-icon:before{content:"✓"}.toast-success-enhanced .toast-title{color:var(--color-success-dark);font-weight:var(--font-semibold)}.toast-info-enhanced{border-left:4px solid var(--color-info);background-color:#fff;box-shadow:0 10px 25px -5px #3b82f64d}.toast-info-enhanced .toast-icon{width:24px;height:24px;background-color:var(--color-info-light);border-radius:var(--radius-full);color:var(--color-info);font-size:var(--text-xl)}.toast-info-enhanced .toast-icon:before{content:"ℹ"}.toast-info-enhanced .toast-title{color:var(--color-info-dark);font-weight:var(--font-semibold)}.toast-action{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.toast-action-button{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-md);border:1px solid var(--color-gray-300);background-color:#fff;color:var(--color-gray-700);cursor:pointer;transition:all var(--transition-fast)}.toast-action-button:hover{background-color:var(--color-gray-50);border-color:var(--color-gray-400)}.toast-action-button-primary{background-color:var(--color-primary-600);color:#fff;border-color:var(--color-primary-600)}.toast-action-button-primary:hover{background-color:var(--color-primary-700);border-color:var(--color-primary-700)}.modal-error{border-top:4px solid var(--color-error)}.modal-error .modal-header{background-color:var(--color-error-light);border-bottom-color:var(--color-error)}.modal-error .modal-title{color:var(--color-error-dark);display:flex;align-items:center;gap:var(--space-3)}.modal-error .modal-title:before{content:"⚠";font-size:var(--text-3xl);color:var(--color-error)}.modal-error-icon{width:60px;height:60px;margin:0 auto var(--space-4);display:flex;align-items:center;justify-content:center;background-color:var(--color-error-light);border-radius:var(--radius-full);color:var(--color-error);font-size:var(--text-4xl);animation:error-icon-pulse 2s ease-in-out infinite}@keyframes error-icon-pulse{0%,to{transform:scale(1);box-shadow:0 0 #ef444466}50%{transform:scale(1.05);box-shadow:0 0 0 10px #ef444400}}.modal-error-icon:before{content:"✕"}.modal-error-content{text-align:center}.modal-error-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-error-dark);margin-bottom:var(--space-3)}.modal-error-message{font-size:var(--text-base);color:var(--color-gray-700);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.modal-error-details{background-color:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--space-4);margin-top:var(--space-4);text-align:left}.modal-error-details-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.modal-error-details-title:after{content:"▼";font-size:var(--text-xs);transition:transform var(--transition-fast)}.modal-error-details-title.collapsed:after{transform:rotate(-90deg)}.modal-error-details-content{font-size:var(--text-sm);color:var(--color-gray-600);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto;padding:var(--space-3);background-color:#fff;border-radius:var(--radius-md);margin-top:var(--space-2)}.modal-warning{border-top:4px solid var(--color-warning)}.modal-warning .modal-header{background-color:var(--color-warning-light);border-bottom-color:var(--color-warning)}.modal-warning .modal-title{color:var(--color-warning-dark);display:flex;align-items:center;gap:var(--space-3)}.modal-warning .modal-title:before{content:"⚠";font-size:var(--text-3xl);color:var(--color-warning)}.modal-confirm-destructive{border-top:4px solid var(--color-error)}.modal-confirm-destructive .modal-title{color:var(--color-error-dark)}.modal-confirm-destructive .modal-footer .btn-danger{animation:btn-danger-pulse 2s ease-in-out infinite}@keyframes btn-danger-pulse{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 8px #ef444400}}.validation-indicator{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-bold);transition:all var(--transition-fast)}.validation-indicator-success{background-color:var(--color-success-light);color:var(--color-success);animation:validation-success .3s ease-out}.validation-indicator-success:before{content:"✓"}@keyframes validation-success{0%{transform:translateY(-50%) scale(0)}50%{transform:translateY(-50%) scale(1.2)}to{transform:translateY(-50%) scale(1)}}.validation-indicator-error{background-color:var(--color-error-light);color:var(--color-error);animation:validation-error .5s cubic-bezier(.36,.07,.19,.97)}.validation-indicator-error:before{content:"✕"}@keyframes validation-error{0%,to{transform:translateY(-50%) rotate(0)}25%{transform:translateY(-50%) rotate(-10deg)}75%{transform:translateY(-50%) rotate(10deg)}}.validation-indicator-loading{background-color:var(--color-gray-200);color:var(--color-gray-600)}.validation-indicator-loading:before{content:"";width:12px;height:12px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:validation-loading-spin .6s linear infinite}@keyframes validation-loading-spin{to{transform:rotate(360deg)}}.validation-messages{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.validation-message{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);line-height:var(--line-height-normal);animation:validation-message-slide-in .2s ease-out}@keyframes validation-message-slide-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.validation-message-icon{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;margin-top:2px}.validation-message-error{color:var(--color-error)}.validation-message-error .validation-message-icon:before{content:"✕"}.validation-message-warning{color:var(--color-warning)}.validation-message-warning .validation-message-icon:before{content:"⚠"}.validation-message-success{color:var(--color-success)}.validation-message-success .validation-message-icon:before{content:"✓"}.validation-message-info{color:var(--color-info)}.validation-message-info .validation-message-icon:before{content:"ℹ"}.password-strength{margin-top:var(--space-3)}.password-strength-bar{height:4px;background-color:var(--color-gray-200);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-2)}.password-strength-fill{height:100%;border-radius:var(--radius-full);transition:all var(--transition-base)}.password-strength-weak .password-strength-fill{width:33%;background-color:var(--color-error)}.password-strength-medium .password-strength-fill{width:66%;background-color:var(--color-warning)}.password-strength-strong .password-strength-fill{width:100%;background-color:var(--color-success)}.password-strength-label{font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.5px}.password-strength-weak .password-strength-label{color:var(--color-error)}.password-strength-medium .password-strength-label{color:var(--color-warning)}.password-strength-strong .password-strength-label{color:var(--color-success)}.error-boundary{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:var(--space-8);text-align:center}.error-boundary-icon{width:100px;height:100px;margin-bottom:var(--space-6);display:flex;align-items:center;justify-content:center;background-color:var(--color-error-light);border-radius:var(--radius-full);color:var(--color-error);font-size:60px}.error-boundary-icon:before{content:"⚠"}.error-boundary-title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-3)}.error-boundary-message{font-size:var(--text-base);color:var(--color-gray-600);margin-bottom:var(--space-6);max-width:500px;line-height:var(--line-height-relaxed)}.error-boundary-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.error-network{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);text-align:center}.error-network-icon{width:80px;height:80px;margin-bottom:var(--space-4);display:flex;align-items:center;justify-content:center;background-color:var(--color-warning-light);border-radius:var(--radius-full);color:var(--color-warning);font-size:50px;animation:error-network-pulse 2s ease-in-out infinite}.error-network-icon:before{content:"📡"}@keyframes error-network-pulse{0%,to{opacity:1}50%{opacity:.5}}.error-network-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-2)}.error-network-message{font-size:var(--text-base);color:var(--color-gray-600);margin-bottom:var(--space-4)}.error-404{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:var(--space-8);text-align:center}.error-404-code{font-size:120px;font-weight:var(--font-bold);color:var(--color-gray-300);line-height:1;margin-bottom:var(--space-4)}.error-404-title{font-size:var(--text-3xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-3)}.error-404-message{font-size:var(--text-lg);color:var(--color-gray-600);margin-bottom:var(--space-6);max-width:500px}@media (max-width: 767px){.modal-error-icon{width:50px;height:50px;font-size:var(--text-3xl)}.modal-error-title{font-size:var(--text-lg)}.modal-error-message{font-size:var(--text-sm)}.error-boundary{min-height:300px;padding:var(--space-6)}.error-boundary-icon{width:80px;height:80px;font-size:50px}.error-boundary-title{font-size:var(--text-xl)}.error-404-code{font-size:80px}.error-404-title{font-size:var(--text-2xl)}.error-404-message{font-size:var(--text-base)}}*:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:2px;border-radius:2px}*:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible,[role=button]:focus-visible,[role=link]:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:3px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:0;box-shadow:0 0 0 4px var(--color-primary-100)}.form-checkbox:focus-visible,.form-radio:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:2px;box-shadow:0 0 0 4px var(--color-primary-100)}.card:focus-visible,.card-interactive:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:2px;box-shadow:var(--shadow-lg)}.nav-item:focus-visible,.sidebar-item:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:-2px;background-color:var(--color-primary-50)}.modal:focus-visible,[role=dialog]:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:-3px}[role=tab]:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:-2px;z-index:1}@media (prefers-contrast: high){*:focus-visible{outline-width:4px;outline-color:currentColor}}.skip-link{position:absolute;top:-100px;left:0;background-color:var(--color-primary-600);color:#fff;padding:var(--space-3) var(--space-6);text-decoration:none;font-weight:var(--font-semibold);font-size:var(--text-base);border-radius:0 0 var(--radius-md) 0;z-index:var(--z-tooltip);transition:top var(--transition-fast)}.skip-link:focus{top:0;outline:3px solid var(--color-gray-900);outline-offset:2px}body.keyboard-nav *:focus{outline:3px solid var(--color-primary-600);outline-offset:2px}body.keyboard-nav button:focus,body.keyboard-nav a:focus,body.keyboard-nav [role=button]:focus{outline:3px solid var(--color-primary-600);outline-offset:3px}[tabindex="-1"]:focus{outline:none}[role=button],[role=link],[role=tab],[role=menuitem]{cursor:pointer}[role=button]:not([tabindex]),[role=link]:not([tabindex]),[role=tab]:not([tabindex]),[role=menuitem]:not([tabindex]){tabindex:0}.kbd{display:inline-block;padding:var(--space-1) var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:1;color:var(--color-gray-700);background-color:var(--color-gray-100);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);box-shadow:0 1px 0 var(--color-gray-300);white-space:nowrap}.kbd-group{display:inline-flex;gap:var(--space-1);align-items:center}.kbd-separator{color:var(--color-gray-400);font-size:var(--text-xs);margin:0 var(--space-1)}.shortcuts-modal{max-width:600px;max-height:80vh;overflow-y:auto}.shortcuts-section{margin-bottom:var(--space-6)}.shortcuts-section:last-child{margin-bottom:0}.shortcuts-section-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:2px solid var(--color-gray-200)}.shortcuts-list{display:flex;flex-direction:column;gap:var(--space-3)}.shortcut-item{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-2) 0}.shortcut-description{flex:1;font-size:var(--text-sm);color:var(--color-gray-700)}.shortcut-keys{flex-shrink:0}.tooltip{position:absolute;z-index:var(--z-tooltip);padding:var(--space-2) var(--space-3);background-color:var(--color-gray-900);color:#fff;font-size:var(--text-sm);border-radius:var(--radius-md);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-fast)}.tooltip[data-show]{opacity:1}.tooltip-arrow{position:absolute;width:8px;height:8px;background-color:var(--color-gray-900);transform:rotate(45deg)}.tooltip[data-popper-placement^=top] .tooltip-arrow{bottom:-4px}.tooltip[data-popper-placement^=bottom] .tooltip-arrow{top:-4px}.tooltip[data-popper-placement^=left] .tooltip-arrow{right:-4px}.tooltip[data-popper-placement^=right] .tooltip-arrow{left:-4px}.focus-trap{position:relative}.focus-trap-start,.focus-trap-end{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.loading-spinner[role=status]{position:relative}.loading-spinner[role=status]:after{content:"";position:absolute;width:20px;height:20px;border:3px solid var(--color-gray-300);border-top-color:var(--color-primary-600);border-radius:50%;animation:spinner-rotate .8s linear infinite}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.form-errors[role=alert]{padding:var(--space-4);background-color:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.form-errors-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-error-dark);margin-bottom:var(--space-2)}.form-errors-list{list-style:disc;padding-left:var(--space-5);color:var(--color-error-dark);font-size:var(--text-sm)}.form-errors-list li{margin-bottom:var(--space-1)}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) 0;font-size:var(--text-sm)}.breadcrumb-item{display:flex;align-items:center;gap:var(--space-2)}.breadcrumb-link{color:var(--color-primary-600);text-decoration:none;transition:color var(--transition-fast)}.breadcrumb-link:hover{color:var(--color-primary-700);text-decoration:underline}.breadcrumb-link:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:2px;border-radius:var(--radius-sm)}.breadcrumb-separator{color:var(--color-gray-400);-webkit-user-select:none;user-select:none}.breadcrumb-current{color:var(--color-gray-700);font-weight:var(--font-medium)}table{border-collapse:collapse;width:100%}th{text-align:left;font-weight:var(--font-semibold);background-color:var(--color-gray-50);padding:var(--space-3) var(--space-4);border-bottom:2px solid var(--color-gray-300)}td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-200)}tr:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:-2px}.alert[role=alert],.alert[role=status]{padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid;display:flex;align-items:flex-start;gap:var(--space-3)}.alert-info{background-color:var(--color-info-light);border-color:var(--color-info);color:var(--color-info-dark)}.alert-success{background-color:var(--color-success-light);border-color:var(--color-success);color:var(--color-success-dark)}.alert-warning{background-color:var(--color-warning-light);border-color:var(--color-warning);color:var(--color-warning-dark)}.alert-error{background-color:var(--color-error-light);border-color:var(--color-error);color:var(--color-error-dark)}.alert-icon{flex-shrink:0;font-size:var(--text-xl)}.alert-content{flex:1}.alert-title{font-weight:var(--font-semibold);margin-bottom:var(--space-1)}.disclosure{border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden}.disclosure-button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);background-color:#fff;border:none;text-align:left;font-size:var(--text-base);font-weight:var(--font-medium);color:var(--color-gray-900);cursor:pointer;transition:background-color var(--transition-fast)}.disclosure-button:hover{background-color:var(--color-gray-50)}.disclosure-button:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:-3px;z-index:1}.disclosure-button[aria-expanded=true]{background-color:var(--color-gray-50)}.disclosure-icon{transition:transform var(--transition-fast)}.disclosure-button[aria-expanded=true] .disclosure-icon{transform:rotate(180deg)}.disclosure-panel{padding:var(--space-4);border-top:1px solid var(--color-gray-200)}.disclosure-panel[hidden]{display:none}.tabs{display:flex;flex-direction:column}.tab-list{display:flex;gap:var(--space-1);border-bottom:2px solid var(--color-gray-200);overflow-x:auto;-webkit-overflow-scrolling:touch}.tab{padding:var(--space-3) var(--space-4);background-color:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-gray-600);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);margin-bottom:-2px}.tab:hover{color:var(--color-gray-900);background-color:var(--color-gray-50)}.tab:focus-visible{outline:2px solid var(--color-primary-600);outline-offset:-2px;z-index:1}.tab[aria-selected=true]{color:var(--color-primary-600);border-bottom-color:var(--color-primary-600);font-weight:var(--font-semibold)}.tab-panel{padding:var(--space-6) 0}.tab-panel[hidden]{display:none}.tab-list:before{content:"";position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (max-width: 767px){button,a,[role=button],[role=link]{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}*:focus-visible{outline-width:2px;outline-offset:1px}.shortcuts-modal{max-width:100%;max-height:100vh;border-radius:0}}@media print{*:focus-visible{outline:none}a[href]:after{content:" (" attr(href) ")";font-size:.8em;color:var(--color-gray-600)}.skip-link[href]:after,a[href^="#"]:after{content:""}}:root{--text-on-white-primary: var(--color-gray-900);--text-on-white-secondary: var(--color-gray-700);--text-on-white-tertiary: var(--color-gray-600);--text-on-white-muted: var(--color-gray-500);--text-on-dark-primary: white;--text-on-dark-secondary: var(--color-gray-100);--text-on-dark-tertiary: var(--color-gray-200);--link-color: var(--color-primary-700);--link-hover-color: var(--color-primary-800);--success-text: #047857;--warning-text: #92400e;--error-text: #991b1b;--info-text: #1e40af}.text-contrast-high{color:var(--text-on-white-primary)}.text-contrast-medium{color:var(--text-on-white-secondary)}.text-contrast-low{color:var(--text-on-white-tertiary)}a{color:var(--link-color)}a:hover{color:var(--link-hover-color)}.text-success{color:var(--success-text)!important}.text-warning{color:var(--warning-text)!important}.text-error{color:var(--error-text)!important}.text-info{color:var(--info-text)!important}*:focus-visible{outline-color:var(--color-primary-600);outline-width:3px;outline-style:solid;outline-offset:2px}@media (prefers-contrast: high){:root{--color-gray-100: #e0e0e0;--color-gray-200: #c0c0c0;--color-gray-300: #a0a0a0;--color-gray-400: #808080;--color-gray-500: #606060;--color-gray-600: #404040;--color-gray-700: #2a2a2a;--color-gray-800: #1a1a1a;--color-gray-900: #000000}.border,.card,.form-input,.form-select,.form-textarea{border-width:2px;border-color:var(--color-gray-900)}*:focus-visible{outline-width:4px;outline-color:#000}.btn{border-width:2px}.btn-primary{background-color:#00f;border-color:#000;color:#fff}.btn-secondary{background-color:#fff;border-color:#000;color:#000}}.alert-success:before,.message-success:before,.status-success:before{content:"✓ ";font-weight:700}.alert-error:before,.message-error:before,.status-error:before{content:"✕ ";font-weight:700}.alert-warning:before,.message-warning:before,.status-warning:before{content:"⚠ ";font-weight:700}.alert-info:before,.message-info:before,.status-info:before{content:"ℹ ";font-weight:700}.required-field:after{content:" *";color:var(--error-text);font-weight:700}a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}a:hover{text-decoration-thickness:2px}.nav-item.active,.tab[aria-selected=true],[aria-current=page]{font-weight:var(--font-semibold);position:relative}.nav-item.active:before,[aria-current=page]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:currentColor}.status-indicator{display:inline-flex;align-items:center;gap:var(--space-2)}.status-indicator:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background-color:currentColor}.status-success .status-indicator:before{border-radius:50%}.status-error .status-indicator:before{border-radius:0}.status-warning .status-indicator:before{border-radius:0;transform:rotate(45deg)}.status-info .status-indicator:before{border-radius:0;transform:rotate(45deg)}.bg-white *:focus-visible,.bg-gray-50 *:focus-visible,.bg-gray-100 *:focus-visible{outline-color:var(--color-primary-600)}.bg-gray-800 *:focus-visible,.bg-gray-900 *:focus-visible,.bg-primary *:focus-visible{outline-color:#fff}.sidebar *:focus-visible{outline-color:#fff;outline-width:2px}.card:focus-visible{outline-color:var(--color-primary-600);outline-width:3px;outline-offset:2px}.btn-primary:focus-visible{outline-color:var(--color-primary-900);box-shadow:0 0 0 4px var(--color-primary-100)}.btn-secondary:focus-visible{outline-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-100)}.btn-danger:focus-visible{outline-color:var(--color-error-dark);box-shadow:0 0 0 4px var(--color-error-light)}.text-large-muted{font-size:var(--text-lg);color:var(--color-gray-400)}h1,h2,h3{color:var(--color-gray-800)}@media print{*{color:#000!important;background:#fff!important}.alert,.card,.form-input{border:2px solid #000000!important}a[href]:after{content:" (" attr(href) ")";font-size:.8em}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0ms!important;transition-duration:.01ms!important;transition-delay:0ms!important;scroll-behavior:auto!important}.btn:hover,.card:hover,.sidebar-nav-item:hover{transform:none!important}.fade-in,.fade-out,.modal-backdrop{opacity:1!important}.slide-in,.slide-out,.toast{transform:none!important}.spinner,.loading-spinner,.btn.loading:after{animation:none!important}.btn.loading:after{content:"...";position:static;width:auto;height:auto;border:none;margin-left:var(--space-2)}.card-skeleton,.skeleton{animation:none!important;background:var(--color-gray-200)!important}.card-interactive:hover,.document-card:hover{transform:none!important}*:focus-visible{transition:none!important}[data-parallax],[data-scroll-effect]{transform:none!important}}body.reduce-motion *,body.reduce-motion *:before,body.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}body.reduce-motion .btn:hover,body.reduce-motion .card:hover{transform:none!important}body.reduce-motion .spinner,body.reduce-motion .loading-spinner{animation:none!important}@media (prefers-reduced-motion: reduce){.modal,.toast,.alert{display:block;opacity:1}*:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:2px}.btn.loading{opacity:.7}.btn:disabled,.form-input:disabled{opacity:.5}}@media (prefers-reduced-motion: no-preference){.smooth-transition{transition:all var(--transition-base)}.hover-lift:hover{transform:translateY(-2px);transition:transform var(--transition-fast)}.fade-in{animation:fadeIn var(--transition-base)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}}.a11y-settings{position:fixed;bottom:var(--space-4);right:var(--space-4);z-index:var(--z-tooltip)}.a11y-settings-toggle{width:48px;height:48px;border-radius:var(--radius-full);background-color:var(--color-gray-900);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:transform var(--transition-fast)}.a11y-settings-toggle:hover{transform:scale(1.05)}.a11y-settings-toggle:focus-visible{outline:3px solid var(--color-primary-600);outline-offset:2px}.a11y-settings-panel{position:absolute;bottom:60px;right:0;width:300px;background-color:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--space-6);border:1px solid var(--color-gray-200)}.a11y-settings-panel[hidden]{display:none}.a11y-settings-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-4)}.a11y-setting-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--color-gray-200)}.a11y-setting-item:last-child{border-bottom:none}.a11y-setting-label{font-size:var(--text-sm);color:var(--color-gray-700);font-weight:var(--font-medium)}.a11y-setting-description{font-size:var(--text-xs);color:var(--color-gray-500);margin-top:var(--space-1)}.toggle-switch{position:relative;width:44px;height:24px;background-color:var(--color-gray-300);border-radius:var(--radius-full);cursor:pointer;transition:background-color var(--transition-fast)}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch-slider{position:absolute;top:2px;left:2px;width:20px;height:20px;background-color:#fff;border-radius:var(--radius-full);transition:transform var(--transition-fast);box-shadow:var(--shadow-sm)}.toggle-switch input:checked+.toggle-switch-slider{transform:translate(20px)}.toggle-switch input:checked~.toggle-switch{background-color:var(--color-primary-600)}.toggle-switch:focus-within{outline:2px solid var(--color-primary-600);outline-offset:2px}@media (prefers-reduced-motion: reduce){.toggle-switch-slider{transition:none!important}}@media (max-width: 767px){.a11y-settings-panel{width:calc(100vw - var(--space-8));max-width:320px}.a11y-settings{bottom:var(--space-3);right:var(--space-3)}}.a11y-settings-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0000004d;z-index:calc(var(--z-tooltip) - 1)}@media (prefers-reduced-motion: reduce){.a11y-settings-backdrop{transition:none!important}}body.high-contrast{--color-gray-100: #e0e0e0;--color-gray-200: #c0c0c0;--color-gray-300: #a0a0a0;--color-gray-400: #808080;--color-gray-500: #606060;--color-gray-600: #404040;--color-gray-700: #2a2a2a;--color-gray-800: #1a1a1a;--color-gray-900: #000000}body.high-contrast .border,body.high-contrast .card,body.high-contrast .form-input{border-width:2px;border-color:var(--color-gray-900)}body.high-contrast *:focus-visible{outline-width:4px;outline-color:#000}.card,.card-flat,.card-elevated,.card-interactive{contain:layout style paint}.modal,.modal-content{contain:layout style}.toast{contain:layout style paint}.sidebar,.sidebar-content{contain:layout style}.document-card,.space-card,.agent-card{contain:layout style paint}.form-field,.form-group{contain:layout style}.btn-primary,.btn-secondary,.btn-danger,.btn-ghost{transition:transform var(--transition-fast),opacity var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast)!important}.btn-primary:hover,.btn-secondary:hover,.btn-danger:hover,.btn-ghost:hover{will-change:transform}.btn-primary:active,.btn-secondary:active,.btn-danger:active,.btn-ghost:active{will-change:auto}.card-interactive,.card-elevated{transition:transform var(--transition-base),box-shadow var(--transition-base),opacity var(--transition-base)!important}.card-interactive:hover,.card-elevated:hover{will-change:transform,box-shadow}.card-interactive:not(:hover),.card-elevated:not(:hover){will-change:auto}.form-input,.form-textarea,.form-select{transition:border-color var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)!important}.form-input:focus,.form-textarea:focus,.form-select:focus{will-change:border-color,box-shadow}.form-input:not(:focus),.form-textarea:not(:focus),.form-select:not(:focus){will-change:auto}.modal,.toast,.sidebar,.dropdown-menu,.floating-menu{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.scrollable,.sidebar-content,.modal-body,.document-list{-webkit-overflow-scrolling:touch;transform:translateZ(0)}.card:hover,.btn:hover,.nav-item:hover{will-change:transform}.animating{will-change:transform,opacity}.animation-complete,.card:not(:hover),.btn:not(:hover),.nav-item:not(:hover){will-change:auto}.editor-canvas,.spreadsheet-container,.chat-messages{will-change:transform;transform:translateZ(0);contain:layout style paint}.infinite-scroll,.virtual-list{contain:layout style paint;will-change:transform}@keyframes fade-in-optimized{0%{opacity:0;transform:translateZ(0)}to{opacity:1;transform:translateZ(0)}}@keyframes fade-out-optimized{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translateZ(0)}}@keyframes slide-up-optimized{0%{opacity:0;transform:translate3d(0,20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes slide-down-optimized{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,20px,0)}}@keyframes scale-in-optimized{0%{opacity:0;transform:scale3d(.95,.95,1)}to{opacity:1;transform:scaleZ(1)}}@keyframes scale-out-optimized{0%{opacity:1;transform:scaleZ(1)}to{opacity:0;transform:scale3d(.95,.95,1)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}*{will-change:auto!important}}.hw-accelerate{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.optimize-animation{will-change:transform,opacity;transform:translateZ(0)}.optimize-scroll{-webkit-overflow-scrolling:touch;transform:translateZ(0);contain:layout style paint}.isolate{contain:layout style paint;isolation:isolate}.prevent-layout-shift{content-visibility:auto;contain-intrinsic-size:auto 500px}.above-fold{content-visibility:visible}.below-fold{content-visibility:auto;contain-intrinsic-size:auto 500px}.lazy-render{content-visibility:auto}@supports (-webkit-backdrop-filter: blur(10px)){.backdrop-blur{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}@-moz-document url-prefix(){.scrollable{scrollbar-width:thin}}@supports (font-variation-settings: normal){body{font-feature-settings:"kern" 1;text-rendering:optimizeLegibility}}:root{--primary: var(--color-primary-600);--primary-hover: var(--color-primary-700);--danger: var(--color-error);--danger-hover: var(--color-error-dark);--bg-dark: #1e293b;--bg-light: var(--color-gray-50);--border: var(--color-gray-200);--text-dark: var(--color-gray-900);--text-muted: var(--color-gray-500)}body{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-light);color:var(--text-dark)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-container{display:flex;min-height:100vh;position:relative}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:60px;background:#fff;border-bottom:1px solid var(--color-gray-200);z-index:var(--z-sticky);padding:0 var(--space-4);align-items:center;gap:var(--space-4)}.mobile-menu-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-gray-700);cursor:pointer;border-radius:var(--radius-lg);transition:background-color var(--transition-fast)}.mobile-menu-btn:hover{background-color:var(--color-gray-100)}.mobile-header-brand{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900)}.sidebar{width:260px;background:linear-gradient(180deg,#1e293b,#0f172a);color:#fff;display:flex;flex-direction:column;overflow:hidden;transition:width var(--transition-slow),transform var(--transition-slow);position:fixed;top:0;left:0;height:100vh;z-index:var(--z-fixed);box-shadow:var(--shadow-xl)}.sidebar.sidebar-collapsed{width:100px}.sidebar-collapsed .sidebar-nav-item,.sidebar-collapsed .sidebar-space-item,.sidebar-collapsed .sidebar-logout-btn,.sidebar-collapsed .sidebar-nav-btn-primary{position:relative}.sidebar-collapsed .sidebar-nav-item:hover:after,.sidebar-collapsed .sidebar-space-item:hover:after,.sidebar-collapsed .sidebar-logout-btn:hover:after,.sidebar-collapsed .sidebar-nav-btn-primary:hover:after{content:attr(title);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:var(--color-gray-900);color:#fff;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);white-space:nowrap;z-index:var(--z-tooltip);box-shadow:var(--shadow-lg);pointer-events:none;animation:tooltipFadeIn var(--transition-fast)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-50%) translate(-4px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.sidebar-backdrop{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:calc(var(--z-fixed) - 1);animation:fadeIn var(--transition-base)}.sidebar-header{padding:var(--space-6) var(--space-5);padding-right:calc(var(--space-5) + 40px);flex-shrink:0;position:relative;display:flex;flex-direction:column;gap:var(--space-4)}.sidebar-collapsed .sidebar-header{padding:var(--space-6) var(--space-4);padding-right:var(--space-4)}.sidebar-brand{display:flex;align-items:center;gap:var(--space-3);cursor:pointer;transition:opacity var(--transition-fast)}.sidebar-brand:hover{opacity:.9}.sidebar-brand-icon,.sidebar-brand-icon-collapsed{flex-shrink:0}.sidebar-collapsed .sidebar-brand{display:none}.sidebar-brand-text{font-size:var(--text-xl);font-weight:var(--font-bold);margin:0;white-space:nowrap;overflow:hidden}.sidebar-collapsed .sidebar-brand-text{display:none}.sidebar-user-info{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:#ffffff0d;border-radius:var(--radius-lg);transition:background-color var(--transition-fast)}.sidebar-user-info:hover{background:#ffffff14}.sidebar-user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);font-size:var(--text-sm);flex-shrink:0}.sidebar-user-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:#ffffffe6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-collapsed .sidebar-user-info{display:none}.sidebar-toggle-btn{position:absolute;top:var(--space-6);right:var(--space-5);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;transition:all var(--transition-fast);z-index:10}.sidebar-toggle-btn:hover{background:#ffffff26;transform:scale(1.05)}.sidebar-collapsed .sidebar-toggle-btn{right:50%;transform:translate(50%)}.sidebar-collapsed .sidebar-toggle-btn:hover{transform:translate(50%) scale(1.05)}.sidebar-toggle-btn span{display:none}.sidebar-toggle-btn svg{width:20px;height:20px}.sidebar-mobile-close{display:none;position:absolute;top:var(--space-6);right:var(--space-5);width:36px;height:36px;align-items:center;justify-content:center;background:#ffffff1a;border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;transition:all var(--transition-fast);z-index:10}.sidebar-mobile-close:hover{background:#ffffff26}.sidebar-search{padding:0 var(--space-5) var(--space-4) var(--space-5);flex-shrink:0}.sidebar-collapsed .sidebar-search{display:none}.sidebar-search-wrapper{position:relative;display:flex;align-items:center}.sidebar-search-icon{position:absolute;left:var(--space-3);color:#ffffff80;pointer-events:none;transition:color var(--transition-fast)}.sidebar-search-input{width:100%;padding:var(--space-3) var(--space-3) var(--space-3) var(--space-10);background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);color:#fff;font-size:var(--text-sm);transition:all var(--transition-fast)}.sidebar-search-input::placeholder{color:#ffffff80}.sidebar-search-input:focus{outline:none;background:#ffffff1f;border-color:#667eea80;box-shadow:0 0 0 3px #667eea1a}.sidebar-search-wrapper:focus-within .sidebar-search-icon{color:#ffffffe6;transform:scale(1.1)}.sidebar-collapsed .sidebar-search-input{padding:var(--space-3);text-align:center}.sidebar-collapsed .sidebar-search-icon{position:static;margin:0 auto}.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sidebar-nav-btn-primary{width:100%;padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:var(--radius-lg);color:#fff;font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--space-2);transition:all var(--transition-fast);box-shadow:0 4px 12px #667eea4d;margin-bottom:var(--space-4)}.sidebar-nav-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.sidebar-nav-btn-primary:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.sidebar-nav-btn-primary:active{transform:translateY(0)}.sidebar-nav-btn-primary svg{transition:transform var(--transition-fast)}.sidebar-nav-btn-primary:hover svg{transform:rotate(90deg)}.sidebar-collapsed .sidebar-nav-btn-primary{padding:var(--space-4)}.sidebar-collapsed .sidebar-nav-btn-primary span{display:none}.sidebar-collapsed .sidebar-nav-btn-primary svg{width:24px;height:24px}.sidebar-nav-section{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-4)}.sidebar-nav-item{width:100%;padding:var(--space-3) var(--space-4);background:transparent;border:none;border-radius:var(--radius-lg);color:#fffc;font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;display:flex;align-items:center;gap:var(--space-3);transition:all var(--transition-fast);text-align:left;position:relative}.sidebar-nav-item:hover{background:#ffffff14;color:#fff;transform:translate(2px)}.sidebar-nav-item:focus{outline:2px solid rgba(102,126,234,.5);outline-offset:2px}.sidebar-nav-item.active{background:#667eea33;color:#fff}.sidebar-nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:linear-gradient(180deg,#667eea,#764ba2);border-radius:0 2px 2px 0}.sidebar-nav-item svg{transition:transform var(--transition-fast)}.sidebar-nav-item:hover svg{transform:scale(1.1)}.sidebar-collapsed .sidebar-nav-item{justify-content:center;padding:var(--space-4)}.sidebar-collapsed .sidebar-nav-item span{display:none}.sidebar-collapsed .sidebar-nav-item svg{margin:0;width:24px;height:24px}.badge-new{display:inline-block;padding:2px 6px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:10px;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.5px;border-radius:4px;box-shadow:0 2px 4px #10b9814d;animation:pulse-badge 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(.98)}}.sidebar-section{margin-top:var(--space-2)}.sidebar-section-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-2);margin-bottom:var(--space-2)}.sidebar-section-header h3{font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;color:#fff9;margin:0}.sidebar-section-action{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#ffffff14;border:none;border-radius:var(--radius-md);color:#fffc;cursor:pointer;transition:all var(--transition-fast)}.sidebar-section-action:hover{background:#ffffff26;color:#fff;transform:scale(1.05)}.sidebar-collapsed .sidebar-section-header{justify-content:center}.sidebar-collapsed .sidebar-section-header h3{display:none}.sidebar-collapsed .sidebar-section-action{width:32px;height:32px}.sidebar-collapsed .sidebar-section-action svg{width:18px;height:18px}.sidebar-space-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-1)}.sidebar-space-item{width:100%;padding:var(--space-3) var(--space-4);background:transparent;border:none;border-radius:var(--radius-lg);color:#fffc;font-size:var(--text-sm);cursor:pointer;display:flex;align-items:center;gap:var(--space-3);transition:all var(--transition-fast);text-align:left}.sidebar-space-item:hover{background:#ffffff14;color:#fff;transform:translate(2px)}.sidebar-space-item:focus{outline:2px solid rgba(102,126,234,.5);outline-offset:2px}.sidebar-space-item.active{background:#667eea26;color:#fff;font-weight:var(--font-semibold)}.sidebar-space-item svg{flex-shrink:0;opacity:.8;transition:all var(--transition-fast)}.sidebar-space-item:hover svg{opacity:1;transform:scale(1.1)}.sidebar-space-item.active svg{opacity:1}.sidebar-space-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-collapsed .sidebar-space-item{justify-content:center;padding:var(--space-4)}.sidebar-collapsed .sidebar-space-item span{display:none}.sidebar-collapsed .sidebar-space-item svg{width:22px;height:22px}.sidebar-empty-text{font-size:var(--text-sm);color:#ffffff80;padding:var(--space-2) var(--space-4);margin:0;line-height:var(--line-height-relaxed)}.sidebar-footer{padding:var(--space-5);border-top:1px solid rgba(255,255,255,.1);flex-shrink:0}.sidebar-logout-btn{width:100%;padding:var(--space-3) var(--space-4);background:#ffffff14;border:none;border-radius:var(--radius-lg);color:#ffffffe6;font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--space-2);transition:all var(--transition-fast)}.sidebar-logout-btn:hover{background:#ffffff1f;color:#fff}.sidebar-collapsed .sidebar-logout-btn{padding:var(--space-4)}.sidebar-collapsed .sidebar-logout-btn span{display:none}.sidebar-collapsed .sidebar-logout-btn svg{width:24px;height:24px}.main-content{flex:1;padding:30px;overflow-y:auto;margin-left:260px;transition:margin-left var(--transition-slow)}.app-container.sidebar-collapsed .main-content{margin-left:100px}.main-content:has(.fullscreen-editor),.main-content:has(.fullscreen-viewer){padding:0;overflow:hidden}@media (max-width: 767px){.mobile-header{display:flex}.sidebar{transform:translate(-100%);width:280px}.sidebar.sidebar-mobile-open{transform:translate(0)}.sidebar-backdrop{display:block}.sidebar-mobile-close{display:flex}.sidebar-toggle-btn{display:none}.main-content{margin-left:0;padding-top:80px}.app-container.sidebar-collapsed .main-content{margin-left:0}}@media (min-width: 768px) and (max-width: 1023px){.sidebar{width:240px}.sidebar.sidebar-collapsed{width:72px}.main-content{margin-left:240px}.app-container.sidebar-collapsed .main-content{margin-left:72px}}.auth-container-modern{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:linear-gradient(135deg,#667eea,#764ba2);position:relative;overflow:hidden}.auth-container-modern:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.1) 0%,transparent 50%);animation:auth-bg-float 20s ease-in-out infinite;pointer-events:none}@keyframes auth-bg-float{0%,to{transform:translate(0)}50%{transform:translate(30px,-30px)}}.auth-card{background:#fff;border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);width:100%;max-width:440px;padding:var(--space-10) var(--space-8);position:relative;z-index:1;animation:auth-card-slide-up .5s cubic-bezier(.4,0,.2,1)}@keyframes auth-card-slide-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin:0 0 var(--space-2) 0;line-height:var(--line-height-tight)}.auth-subtitle{font-size:var(--text-base);color:var(--color-gray-600);margin:0;line-height:var(--line-height-normal)}.auth-form{display:flex;flex-direction:column;gap:var(--space-6)}.auth-form .form-field-floating{margin-bottom:0}.auth-form .form-input{height:56px;font-size:var(--text-base);padding:var(--space-4);border-width:2px;transition:all var(--transition-base)}.auth-form .form-input:focus{border-color:var(--color-primary-600);box-shadow:0 0 0 4px var(--color-primary-100);transform:translateY(-1px)}.auth-form .form-label-floating{font-size:var(--text-base);font-weight:var(--font-medium)}.auth-form .form-input:focus~.form-label-floating,.auth-form .form-input:not(:placeholder-shown)~.form-label-floating{font-size:var(--text-sm);font-weight:var(--font-semibold)}.auth-form .form-input:not(:placeholder-shown)~.form-label-floating{opacity:0;visibility:hidden}.auth-form .form-input-wrapper{position:relative}.auth-form .form-input-wrapper .form-input{padding-right:var(--space-12)}.auth-form .form-input-icon{right:var(--space-4);width:40px;height:40px;border-radius:var(--radius-lg)}.auth-form .form-input-icon:hover{background-color:var(--color-gray-100)}.auth-form .form-input-icon:active{background-color:var(--color-gray-200)}.auth-form .alert{margin:0;animation:auth-alert-slide-in .3s ease-out}@keyframes auth-alert-slide-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.auth-form .btn{height:56px;font-size:var(--text-lg);font-weight:var(--font-semibold);letter-spacing:.3px;transition:all var(--transition-base)}.auth-form .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg)}.auth-form .btn-primary:active:not(:disabled){transform:translateY(0)}.auth-footer{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-gray-200);text-align:center}.auth-footer-text{font-size:var(--text-sm);color:var(--color-gray-600);margin:0;line-height:var(--line-height-normal)}.auth-link{color:var(--color-primary-600);font-weight:var(--font-semibold);text-decoration:none;transition:color var(--transition-fast)}.auth-link:hover{color:var(--color-primary-700);text-decoration:underline}.auth-helper{font-size:var(--text-sm);color:var(--color-gray-500);margin-top:var(--space-2);line-height:var(--line-height-normal)}@media (max-width: 767px){.auth-container-modern{padding:var(--space-3);align-items:flex-start;padding-top:var(--space-12)}.auth-card{padding:var(--space-8) var(--space-6);max-width:100%;border-radius:var(--radius-xl)}.auth-title{font-size:var(--text-2xl)}.auth-subtitle{font-size:var(--text-sm)}.auth-form{gap:var(--space-5)}.auth-form .form-input{height:52px}.auth-form .btn{height:52px;font-size:var(--text-base)}.auth-footer{margin-top:var(--space-6);padding-top:var(--space-5)}}@media (min-width: 768px) and (max-width: 1023px){.auth-card{max-width:480px}}.fullscreen-editor{display:flex;flex-direction:column;height:100vh;background:var(--color-gray-50);position:relative}.editor-top-bar{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-gray-200);background:#fff;position:sticky;top:0;z-index:var(--z-sticky);flex-shrink:0;box-shadow:0 1px 3px #0000000d}.editor-toolbar-actions{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.space-selector{padding:var(--space-2) var(--space-4);border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-medium);background:#fff;cursor:pointer;min-width:200px;transition:all var(--transition-fast);color:var(--color-gray-700)}.space-selector:hover{border-color:var(--color-primary-400);background:var(--color-gray-50)}.space-selector:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 3px var(--color-primary-100)}.inline-message{font-size:var(--text-sm);font-weight:var(--font-medium);padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);display:inline-flex;align-items:center;gap:var(--space-2);animation:slideInRight var(--transition-base)}@keyframes slideInRight{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.inline-message.error-message{background:var(--color-error-light);color:var(--color-error-dark);border:1px solid var(--color-error)}.inline-message.success-message{background:var(--color-success-light);color:var(--color-success-dark);border:1px solid var(--color-success)}.auto-save-hint{font-size:var(--text-xs);color:var(--color-gray-500);display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-gray-50);border-radius:var(--radius-md);border:1px solid var(--color-gray-200)}.modern-editor{display:flex;flex-direction:column;height:100%;overflow:hidden;background:#fff}.editor-toolbar{display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--color-gray-200);background:#fff;flex-shrink:0;flex-wrap:wrap;align-items:center}.editor-toolbar button{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-300);background:#fff;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-700);transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:var(--space-2);min-height:36px}.editor-toolbar button:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-400);color:var(--color-gray-900);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.editor-toolbar button:active:not(:disabled){transform:translateY(0)}.editor-toolbar button:disabled{opacity:.4;cursor:not-allowed;background:var(--color-gray-50)}.editor-toolbar button.is-active{background:var(--color-primary-600);color:#fff;border-color:var(--color-primary-600);box-shadow:0 2px 4px #3b82f64d}.editor-toolbar button.is-active:hover:not(:disabled){background:var(--color-primary-700);border-color:var(--color-primary-700)}.bubble-menu{position:absolute;display:flex;gap:var(--space-1);padding:var(--space-2);background:var(--color-gray-900);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:var(--z-popover);animation:bubbleMenuFadeIn var(--transition-fast)}@keyframes bubbleMenuFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.bubble-menu button{padding:var(--space-2);background:transparent;border:none;color:#fff;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);transition:all var(--transition-fast);min-width:32px;height:32px;display:flex;align-items:center;justify-content:center}.bubble-menu button:hover{background:#ffffff26}.bubble-menu button.is-active{background:var(--color-primary-600)}.editor-content-wrapper{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-16) var(--space-20);max-width:900px;margin:0 auto;width:100%;background:#fff;box-sizing:border-box}@media (min-width: 1024px){.editor-content-wrapper::-webkit-scrollbar{width:10px}.editor-content-wrapper::-webkit-scrollbar-track{background:transparent}.editor-content-wrapper::-webkit-scrollbar-thumb{background-color:transparent;border-radius:var(--radius-md);transition:background-color var(--transition-base)}.editor-content-wrapper:hover::-webkit-scrollbar-thumb{background-color:var(--color-gray-300)}.editor-content-wrapper::-webkit-scrollbar-thumb:hover{background-color:var(--color-gray-400)}.editor-content-wrapper{scrollbar-width:thin;scrollbar-color:transparent transparent}.editor-content-wrapper:hover{scrollbar-color:var(--color-gray-300) transparent}}.editor-title-input{font-size:var(--text-4xl);font-weight:var(--font-bold);border:none;outline:none;width:100%;max-width:100%;min-width:0;padding:0;margin:0 0 var(--space-6) 0;color:var(--color-gray-900);background:transparent;line-height:var(--line-height-tight);transition:color var(--transition-fast);resize:none;overflow:hidden;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;white-space:pre-wrap;font-family:inherit;min-height:auto;box-sizing:border-box;display:block}.editor-title-input:focus{color:var(--color-gray-900)}.editor-title-input::placeholder{color:var(--color-gray-300);font-weight:var(--font-semibold)}.ProseMirror{min-height:calc(100vh - 400px);outline:none;font-size:var(--text-base);line-height:var(--line-height-relaxed);color:var(--color-gray-800)}.ProseMirror:focus{outline:none}.ProseMirror h1{font-size:var(--text-3xl);font-weight:var(--font-bold);margin-top:var(--space-8);margin-bottom:var(--space-4);line-height:var(--line-height-tight);color:var(--color-gray-900)}.ProseMirror h2{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-top:var(--space-6);margin-bottom:var(--space-3);line-height:var(--line-height-tight);color:var(--color-gray-900)}.ProseMirror h3{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-top:var(--space-5);margin-bottom:var(--space-3);line-height:var(--line-height-normal);color:var(--color-gray-900)}.ProseMirror p{margin-bottom:var(--space-4)}.ProseMirror blockquote{border-left:4px solid var(--color-primary-500);padding-left:var(--space-4);margin:var(--space-4) 0;color:var(--color-gray-600);font-style:italic}.ProseMirror code{background:var(--color-gray-100);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:.9em;font-family:var(--font-mono);color:var(--color-gray-800)}.ProseMirror pre{background:var(--color-gray-900);color:var(--color-gray-100);padding:var(--space-4);border-radius:var(--radius-lg);overflow-x:auto;margin:var(--space-4) 0}.ProseMirror pre code{background:transparent;padding:0;color:inherit}.active-users-container{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-gray-50);border-radius:var(--radius-lg);border:1px solid var(--color-gray-200)}.active-user-avatar{width:36px;height:36px;border-radius:var(--radius-full);border:3px solid white;background:var(--color-primary-500);color:#fff;font-size:var(--text-xs);font-weight:var(--font-semibold);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-md);position:relative}.active-user-avatar:hover{transform:scale(1.15);z-index:10;box-shadow:var(--shadow-lg)}.active-user-avatar:after{content:attr(data-name);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--color-gray-900);color:#fff;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-xs);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:var(--z-tooltip)}.active-user-avatar:hover:after{opacity:1}.collaboration-cursor__caret{border-left:2px solid;border-right:none;margin-left:-1px;margin-right:-1px;pointer-events:none;position:relative;word-break:normal;animation:cursorBlink 1s ease-in-out infinite}@keyframes cursorBlink{0%,49%{opacity:1}50%,to{opacity:.5}}.collaboration-cursor__label{border-radius:var(--radius-md) var(--radius-md) var(--radius-md) 0;color:#fff;font-size:var(--text-xs);font-style:normal;font-weight:var(--font-semibold);left:-1px;line-height:normal;padding:var(--space-1) var(--space-2);position:absolute;top:-1.6em;-webkit-user-select:none;user-select:none;white-space:nowrap;box-shadow:var(--shadow-sm);animation:labelFadeIn var(--transition-base)}@keyframes labelFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.user-joined{animation:userJoin var(--transition-slow)}@keyframes userJoin{0%{opacity:0;transform:scale(.5)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.user-left{animation:userLeave var(--transition-slow)}@keyframes userLeave{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.5)}}.editor-container{background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000000d}.editor-header{margin-bottom:20px}.editor-header input{font-size:32px;font-weight:700;border:none;outline:none;width:100%;margin-bottom:10px}.ProseMirror ul,.ProseMirror ol{padding-left:0;margin:.5em 0}.ProseMirror ul{list-style-type:disc}.ProseMirror ol{list-style-type:decimal}.ProseMirror li{margin-left:1.5em;padding-left:.5em;position:relative}.ProseMirror li p{margin:.25em 0}.ProseMirror ul ul{list-style-type:circle;margin-top:.25em;margin-bottom:.25em}.ProseMirror ul ul ul{list-style-type:square}.ProseMirror ol ol{list-style-type:lower-alpha;margin-top:.25em;margin-bottom:.25em}.ProseMirror ol ol ol{list-style-type:lower-roman}.ProseMirror ul ol,.ProseMirror ol ul{margin-top:.25em;margin-bottom:.25em}.ProseMirror li>ul,.ProseMirror li>ol{margin-left:0;padding-left:1.5em}.ProseMirror ul>li::marker{color:var(--primary)}.ProseMirror ol>li::marker{color:var(--primary);font-weight:600}.ProseMirror li+li{margin-top:.25em}.ProseMirror .list-item{display:list-item}.ProseMirror .bullet-list{list-style-type:disc}.ProseMirror .ordered-list{list-style-type:decimal}.ProseMirror table,.prose table,table,.ProseMirror table.tiptap-table,.prose table.tiptap-table,table.tiptap-table{border-collapse:collapse!important;margin:1.5em 0!important;table-layout:fixed!important;width:100%!important;overflow:hidden!important;border:2px solid #94a3b8!important;background-color:#fff!important}.ProseMirror table td,.ProseMirror table th,.prose table td,.prose table th,table td,table th{min-width:100px!important;border:2px solid #94a3b8!important;padding:16px 20px!important;vertical-align:top!important;box-sizing:border-box!important;position:relative!important;min-height:50px!important}.ProseMirror table td:not([style*=background-color]),.prose table td:not([style*=background-color]),table td:not([style*=background-color]){background-color:#fff!important}.ProseMirror table.tiptap-table td,.ProseMirror table.tiptap-table th,.prose table.tiptap-table td,.prose table.tiptap-table th,table.tiptap-table td,table.tiptap-table th{min-width:100px!important;border:2px solid #94a3b8!important;padding:16px 20px!important;vertical-align:top!important;box-sizing:border-box!important;position:relative!important;min-height:50px!important}.ProseMirror table.tiptap-table td:not([style*=background-color]),.prose table.tiptap-table td:not([style*=background-color]),table.tiptap-table td:not([style*=background-color]){background-color:#fff!important}.ProseMirror table th,.prose table th,table th,.ProseMirror table.tiptap-table th,.prose table.tiptap-table th,table.tiptap-table th{font-weight:700!important;text-align:left!important;background-color:#f1f5f9!important;border-bottom:3px solid #94a3b8!important}.ProseMirror table.tiptap-table .selectedCell,.prose table.tiptap-table .selectedCell,table.tiptap-table .selectedCell{background-color:#dbeafe!important;outline:2px solid #3b82f6!important;outline-offset:-2px!important}.ProseMirror table.tiptap-table .column-resize-handle,.prose table.tiptap-table .column-resize-handle,table.tiptap-table .column-resize-handle{position:absolute!important;right:-2px!important;top:0!important;bottom:0!important;width:4px!important;background-color:var(--primary)!important;pointer-events:none!important}.ProseMirror table.tiptap-table p,.prose table.tiptap-table p,table.tiptap-table p{margin:0!important;min-height:1.2em!important}.ProseMirror table.tiptap-table td:not([style*=background-color]):hover,.ProseMirror table.tiptap-table th:not([style*=background-color]):hover,.prose table.tiptap-table td:not([style*=background-color]):hover,.prose table.tiptap-table th:not([style*=background-color]):hover,table.tiptap-table td:not([style*=background-color]):hover,table.tiptap-table th:not([style*=background-color]):hover{background-color:#f8fafc!important}.toolbar-separator{width:1px;height:24px;background-color:var(--border);margin:0 4px}.color-picker-wrapper{position:relative;display:inline-block}.color-picker-button{padding:6px 12px;border:1px solid var(--border);background:#fff;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.color-picker-button:hover{background-color:#eff6ff;border-color:var(--primary)}.color-picker-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid var(--border);border-radius:8px;padding:8px;box-shadow:0 4px 12px #0000001a;z-index:1000;min-width:200px}.color-clear-button{width:100%;padding:6px 12px;margin-bottom:8px;border:1px solid var(--border);background:#fff;border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.color-clear-button:hover{background-color:#f8fafc}.color-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.color-swatch{width:32px;height:32px;border:2px solid var(--border);border-radius:4px;cursor:pointer;transition:all .2s;padding:0}.color-swatch:hover{transform:scale(1.1);border-color:var(--primary);box-shadow:0 2px 8px #00000026}.text-muted{color:var(--text-muted)}.mb-20{margin-bottom:20px}.mt-20{margin-top:20px}.flex{display:flex}.flex-between{display:flex;justify-content:space-between;align-items:center}.gap-10{gap:10px}.error-message{color:var(--danger);font-size:14px;margin-top:10px}.success-message{color:#10b981;font-size:14px;margin-top:10px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;padding:30px;border-radius:12px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal h2{margin-bottom:20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.ai-agent-toolbar{position:relative;display:inline-block}.ai-agent-dropdown{position:relative}.ai-improve-btn{background:#8b5cf6!important;color:#fff!important;border:none!important;font-weight:600;box-shadow:0 2px 4px #8b5cf64d;transition:all .2s}.ai-improve-btn:hover:not(:disabled){background:#7c3aed!important;transform:translateY(-1px);box-shadow:0 4px 8px #8b5cf680}.ai-improve-btn:disabled{opacity:.7;cursor:not-allowed}.ai-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:320px;max-width:400px;max-height:calc(100vh - 120px);overflow-y:auto;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 10px 25px #00000026;z-index:1000;padding:12px}.ai-dropdown-header{padding-bottom:12px;border-bottom:1px solid #e2e8f0;margin-bottom:12px}.ai-dropdown-header strong{display:block;color:#0f172a;font-size:14px;margin-bottom:4px}.ai-dropdown-header small{color:#64748b;font-size:12px}.ai-dropdown-options{display:flex;flex-direction:column;gap:6px}.ai-dropdown-option{padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;text-align:left;font-size:13px;color:#0f172a;cursor:pointer;transition:all .2s}.ai-dropdown-option:hover{background:#eff6ff;border-color:#667eea;color:#667eea}.ai-dropdown-divider{height:1px;background:#e2e8f0;margin:12px 0}.ai-dropdown-custom{display:flex;flex-direction:column;gap:8px}.ai-dropdown-custom label{font-size:13px;font-weight:600;color:#0f172a}.ai-custom-prompt{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;font-family:inherit;resize:none;transition:border-color .2s}.ai-custom-prompt:focus{outline:none;border-color:#667eea}.ai-custom-btn{width:100%;font-size:13px;padding:8px}.ai-error-toast{position:fixed;top:20px;right:20px;background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;padding:12px 16px;display:flex;align-items:center;gap:12px;z-index:10000;box-shadow:0 4px 12px #00000026;animation:slideIn .3s ease}.ai-error-toast span{color:#991b1b;font-size:14px}.ai-error-toast button{background:none;border:none;color:#991b1b;font-size:20px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.ai-result-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.ai-result-modal{background:#fff;border-radius:12px;max-width:600px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #0000004d;animation:slideUp .3s ease}.ai-result-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e2e8f0}.ai-result-header h3{margin:0;color:#10b981;font-size:18px}.ai-modal-close{background:none;border:none;font-size:28px;color:#64748b;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.ai-modal-close:hover{background:#f1f5f9;color:#0f172a}.ai-result-body{padding:20px;overflow-y:auto;flex:1}.ai-result-section{margin-bottom:20px}.ai-result-section strong{display:block;color:#0f172a;font-size:14px;margin-bottom:8px}.ai-result-title{color:#475569;font-size:16px;margin:0}.ai-result-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:12px;max-height:300px;overflow-y:auto;font-size:14px;line-height:1.6}.ai-result-footer{display:flex;gap:10px;padding:20px;border-top:1px solid #e2e8f0;justify-content:flex-end}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.ai-undo-float{position:fixed;bottom:30px;right:30px;z-index:9999;animation:slideUp .3s ease}.ai-undo-content{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:16px 20px;border-radius:12px;box-shadow:0 8px 24px #10b98166;display:flex;align-items:center;gap:12px;font-size:14px;font-weight:500}.ai-undo-icon{font-size:20px}.ai-undo-text{margin-right:8px}.ai-undo-btn{background:#fff!important;color:#10b981!important;border:none!important;padding:8px 16px!important;font-size:13px!important;font-weight:600!important;border-radius:6px!important;cursor:pointer;transition:all .2s;box-shadow:none!important}.ai-undo-btn:hover{background:#f0fdf4!important;transform:translateY(-1px)}.ai-undo-dismiss{background:#fff3;border:none;color:#fff;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:20px;transition:all .2s;padding:0;margin-left:4px}.ai-undo-dismiss:hover{background:#ffffff4d}.editor-content-wrapper{position:relative}.ai-magic-active .ProseMirror{animation:magicGlow 1.5s ease-out;position:relative}@keyframes magicGlow{0%{box-shadow:0 0 #8b5cf6cc,0 0 #ec4899cc}30%{box-shadow:0 0 30px 15px #8b5cf699,0 0 50px 25px #ec489966;background:linear-gradient(135deg,#8b5cf626,#ec489926)}to{box-shadow:0 0 #8b5cf600,0 0 #ec489900;background:transparent}}.spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}.fullscreen-viewer{display:flex;flex-direction:column;height:100vh;background:#fff;position:relative}.viewer-top-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;border-bottom:1px solid var(--border);background:#fff;position:sticky;top:0;z-index:100;flex-shrink:0}.viewer-toolbar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.document-meta{font-size:13px;color:var(--text-muted);white-space:nowrap}.delete-confirm-bar{background:#fee2e2;border-bottom:1px solid #fca5a5;padding:16px 24px;flex-shrink:0}.viewer-content-layout{display:flex;flex:1;overflow:hidden}.viewer-content-wrapper{flex:1;overflow-y:auto;padding:60px 80px;max-width:900px;margin:0 auto;width:100%;transition:max-width .3s ease}.viewer-content-wrapper.with-sidebar{max-width:100%;margin:0}.viewer-title{font-size:42px;font-weight:700;margin:0 0 16px;color:var(--text-dark)}.viewer-prose{min-height:calc(100vh - 300px);font-size:16px;line-height:1.7;color:var(--text-dark)}.viewer-sidebar{width:350px;border-left:1px solid var(--border);background:var(--bg-light);overflow-y:auto;padding:20px;flex-shrink:0}.viewer-content-wrapper::-webkit-scrollbar{width:12px}.viewer-content-wrapper::-webkit-scrollbar-track{background:transparent}.viewer-content-wrapper::-webkit-scrollbar-thumb{background-color:transparent;border-radius:6px;transition:background-color .3s ease}.viewer-content-wrapper:hover::-webkit-scrollbar-thumb{background-color:#0003}.viewer-content-wrapper::-webkit-scrollbar-thumb:hover{background-color:#0006}.viewer-content-wrapper{scrollbar-width:thin;scrollbar-color:transparent transparent}.viewer-content-wrapper:hover{scrollbar-color:rgba(0,0,0,.2) transparent}.viewer-sidebar::-webkit-scrollbar{width:8px}.viewer-sidebar::-webkit-scrollbar-track{background:transparent}.viewer-sidebar::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px}.viewer-sidebar::-webkit-scrollbar-thumb:hover{background-color:#0006}.form-toolbar{background:#f8fafc;border:1px solid var(--border);border-radius:6px 6px 0 0;padding:12px;margin-bottom:-1px}.form-toolbar-section{display:flex;align-items:center;gap:8px}.form-toolbar-label{font-weight:600;font-size:13px;color:var(--text-muted);margin-right:8px}.form-toolbar-btn{padding:6px 12px;border:1px solid var(--border);background:#fff;border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.form-toolbar-btn:hover{background:#eff6ff;border-color:var(--primary)}.editor-content-wrapper .form-field-checkbox-wrapper,.editor-content-wrapper .form-field-input-wrapper{margin:16px 0;padding:16px;border:2px dashed #e2e8f0;border-radius:8px;background:#f8fafc}.editor-content-wrapper .form-field-checkbox-wrapper:hover,.editor-content-wrapper .form-field-input-wrapper:hover{border-color:var(--primary);background:#eff6ff}.viewer-content-wrapper .form-field-checkbox-wrapper,.viewer-content-wrapper .form-field-input-wrapper{margin:0!important;padding:0!important;border:none!important;background:transparent!important;display:block!important}.checkbox-edit-mode{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.checkbox-label-input{flex:1;min-width:200px;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px}.checkbox-required{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted)}.checkbox-required input[type=checkbox]{cursor:pointer}.btn-delete-field{padding:6px 10px;border:1px solid #fecaca;background:#fee2e2;color:#b91c1c;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.btn-delete-field:hover{background:#fecaca;border-color:#f87171}.checkbox-view-mode{display:flex;align-items:center;gap:8px;font-size:15px;cursor:pointer}.checkbox-view-mode input[type=checkbox]{width:18px;height:18px;cursor:pointer}.input-edit-mode{display:flex;flex-direction:column;gap:12px}.field-header{display:flex;align-items:center;gap:8px}.field-type-select{padding:6px 10px;border:1px solid var(--border);border-radius:4px;font-size:13px;background:#fff;cursor:pointer}.field-label-input{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px}.btn-settings{padding:6px 10px;border:1px solid var(--border);background:#fff;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.btn-settings:hover{background:#eff6ff;border-color:var(--primary)}.field-settings{display:flex;flex-direction:column;gap:10px;padding:12px;background:#fff;border:1px solid var(--border);border-radius:6px}.setting-item{display:flex;align-items:center;gap:8px;font-size:13px}.setting-item input[type=number],.setting-item input[type=text]{flex:1;padding:6px 10px;border:1px solid var(--border);border-radius:4px;font-size:13px}.setting-item span{min-width:80px;color:var(--text-muted)}.field-preview{padding:12px;background:#fff;border:1px solid var(--border);border-radius:6px}.field-preview label{display:block;margin-bottom:6px;font-weight:500;font-size:14px}.preview-input{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;background:#f8fafc}.input-view-mode{display:flex;flex-direction:column;gap:6px}.input-view-mode label{font-weight:500;font-size:14px;color:var(--text-dark)}.form-input{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:6px;font-size:14px;transition:border-color .2s}.form-input:focus{outline:none;border-color:var(--primary)}.field-hint{font-size:12px;color:var(--text-muted)}.required-indicator{color:var(--danger);font-weight:700;margin-left:4px}.filled-checkbox{display:flex;align-items:center;gap:8px;padding:8px 0;font-size:15px}.filled-field{padding:8px 0;font-size:15px}.filled-field strong{color:var(--text-dark);margin-right:8px}.page-form-content .react-field-placeholder,.page-form-content .form-field-checkbox,.page-form-content .form-field-input,.page-form-content div[data-field-type=checkbox]:not(.embedded-form-field):not(.interactive-field),.page-form-content div[data-field-type=text]:not(.embedded-form-field):not(.interactive-field),.page-form-content div[data-field-type=number]:not(.embedded-form-field):not(.interactive-field),.page-form-content div[data-field-type=email]:not(.embedded-form-field):not(.interactive-field),.page-form-content div[data-field-id]:not(.embedded-form-field):not(.interactive-field){display:none!important}.page-form-content .embedded-form-field,.viewer-prose .embedded-form-field{display:block!important;margin:24px 0!important;padding:0!important;visibility:visible!important;opacity:1!important}.page-form-content .interactive-field,.viewer-prose .interactive-field{display:flex!important;background:#f8fafc;border:2px solid var(--border);border-radius:8px;padding:16px;transition:all .2s;visibility:visible!important;opacity:1!important}.page-form-content .interactive-field:hover{background:#eff6ff;border-color:var(--primary)}.page-form-content .interactive-field:focus-within{background:#fff;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.page-form-content .checkbox-field.interactive-field{display:flex;align-items:center;gap:12px;cursor:pointer}.page-form-content .checkbox-field input[type=checkbox]{width:20px;height:20px;cursor:pointer}.page-form-content .input-field.interactive-field{display:flex;flex-direction:column;gap:8px}.page-form-content .input-field label{font-weight:600;font-size:15px;color:var(--text-dark)}.page-form-content .input-field input{width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:6px;font-size:15px;background:#fff;transition:border-color .2s}.page-form-content .input-field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.page-form-content .input-field input.error{border-color:var(--danger)}.page-view-container{max-width:800px;margin:0 auto;padding:40px 20px}.page-header{margin-bottom:40px;text-align:center}.page-header h1{font-size:32px;font-weight:700;color:var(--text-dark);margin-bottom:12px}.page-subtitle{font-size:16px;color:var(--text-muted)}.page-form{background:#fff;border-radius:12px;padding:40px;box-shadow:0 2px 8px #0000000d}.form-field-item{margin-bottom:32px}.form-field-item:last-child{margin-bottom:0}.checkbox-field{display:flex;align-items:center;gap:12px;padding:16px;background:#f8fafc;border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .2s}.checkbox-field:hover{background:#eff6ff;border-color:var(--primary)}.checkbox-field input[type=checkbox]{width:20px;height:20px;cursor:pointer}.checkbox-field span{font-size:15px;font-weight:500}.input-field{display:flex;flex-direction:column;gap:8px}.input-field label{font-weight:600;font-size:15px;color:var(--text-dark)}.input-field input{width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:8px;font-size:15px;transition:border-color .2s}.input-field input:focus{outline:none;border-color:var(--primary)}.input-field input.error{border-color:var(--danger)}.field-error{color:var(--danger);font-size:13px;margin-top:4px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:40px;padding-top:32px;border-top:1px solid var(--border)}.main-content:has(.chat-container){padding:0;overflow:hidden}.chat-container{display:flex;height:100vh;background:linear-gradient(135deg,#f8fafc,#f1f5f9);position:relative}.chat-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 50%,rgba(102,126,234,.03) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(118,75,162,.03) 0%,transparent 50%);pointer-events:none;animation:backgroundShift 20s ease-in-out infinite}@keyframes backgroundShift{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.chat-main{flex:1;display:flex;flex-direction:column;max-width:900px;margin:0 auto;width:100%;height:100vh;position:relative;z-index:1}.chat-header{padding:var(--space-6, 24px) var(--space-5, 20px);background:#fff;border-bottom:1px solid var(--color-gray-200, #e5e7eb);box-shadow:0 1px 3px #0000000d;display:flex;align-items:center;gap:var(--space-4, 16px);position:relative;z-index:10}.chat-header:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2)}.btn-back-inline{width:40px;height:40px;border-radius:var(--radius-lg, 8px);background:var(--color-gray-100, #f3f4f6);color:var(--color-gray-700, #374151);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-base, .2s);flex-shrink:0}.btn-back-inline:hover{background:var(--color-gray-200, #e5e7eb);transform:translate(-2px)}.chat-header h1{font-size:var(--text-2xl, 24px);margin:0;font-weight:var(--font-bold, 700);color:var(--color-gray-900, #111827);line-height:var(--line-height-tight, 1.25)}.chat-subtitle{font-size:var(--text-sm, 14px);color:var(--color-gray-600, #4b5563);margin:var(--space-1, 4px) 0 0 0;line-height:var(--line-height-normal, 1.5)}.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:20px}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background-color:transparent;transition:background-color .3s ease;border-radius:4px}.chat-messages:hover::-webkit-scrollbar-thumb{background-color:#0003}.chat-messages::-webkit-scrollbar-thumb:hover{background-color:#0000004d}.chat-message{display:flex;gap:var(--space-3, 12px);max-width:100%;animation:messageSlideIn .4s cubic-bezier(.4,0,.2,1);opacity:0;animation-fill-mode:forwards}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-message.user{justify-content:flex-end}.chat-message.assistant{justify-content:flex-start}.message-avatar{flex-shrink:0;position:relative}.avatar-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;position:relative;box-shadow:0 2px 8px #0000001a;transition:all var(--transition-base, .2s)}.avatar-icon:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;padding:2px;background:linear-gradient(135deg,#fff6,#ffffff1a);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:.6}.chat-message:hover .avatar-icon{transform:scale(1.05);box-shadow:0 4px 12px #00000026}.avatar-icon.user-avatar{background:linear-gradient(135deg,#667eea,#764ba2)}.avatar-icon.ai-avatar{background:linear-gradient(135deg,#f093fb,#f5576c)}.message-content-wrapper{display:flex;flex-direction:column;gap:var(--space-2, 8px);max-width:75%;min-width:0}.chat-message.user .message-content-wrapper{align-items:flex-end}.message-content{padding:var(--space-4, 16px) var(--space-5, 20px);border-radius:var(--radius-xl, 12px);line-height:var(--line-height-relaxed, 1.75);word-wrap:break-word;position:relative;transition:all var(--transition-base, .2s)}.chat-message.user .message-content{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom-right-radius:var(--radius-sm, 4px);box-shadow:0 4px 12px #667eea4d}.chat-message.user:hover .message-content{box-shadow:0 6px 16px #667eea66;transform:translateY(-1px)}.chat-message.assistant .message-content{background:#fff;border:1px solid var(--color-gray-200, #e5e7eb);color:var(--color-gray-900, #111827);border-bottom-left-radius:var(--radius-sm, 4px);box-shadow:0 2px 8px #0000000f}.chat-message.assistant:hover .message-content{box-shadow:0 4px 12px #0000001a;border-color:var(--color-gray-300, #d1d5db)}.message-content p{margin:0 0 12px}.message-content p:last-child{margin-bottom:0}.message-content ul,.message-content ol{margin:8px 0;padding-left:20px}.message-content li{margin:4px 0}.message-content code{background:#0000001a;padding:2px 6px;border-radius:4px;font-size:14px;font-family:Courier New,monospace}.chat-message.user .message-content code{background:#fff3}.message-content pre{background:#0000000d;padding:12px;border-radius:8px;overflow-x:auto;margin:8px 0}.message-content strong{font-weight:600}.source-documents{display:flex;flex-direction:column;gap:var(--space-2, 8px);margin-top:var(--space-2, 8px)}.source-label{font-size:var(--text-xs, 12px);font-weight:var(--font-semibold, 600);color:var(--color-gray-500, #6b7280);text-transform:uppercase;letter-spacing:.5px}.document-badges{display:flex;flex-wrap:wrap;gap:var(--space-2, 8px)}.document-badge{display:inline-flex;align-items:center;gap:var(--space-2, 8px);background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:var(--space-2, 8px) var(--space-4, 16px);border-radius:var(--radius-full, 9999px);font-size:var(--text-xs, 12px);color:var(--color-gray-700, #374151);cursor:pointer;transition:all var(--transition-base, .2s);border:1px solid var(--color-gray-200, #e5e7eb);font-weight:var(--font-medium, 500);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.document-badge:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#667eea1a,#764ba21a);opacity:0;transition:opacity var(--transition-base, .2s)}.document-badge:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.document-badge:hover:before{opacity:1}.document-badge svg{color:#667eea;flex-shrink:0;position:relative;z-index:1}.document-badge:hover svg{animation:documentPulse .6s ease-in-out}@keyframes documentPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.message-actions{display:flex;gap:var(--space-2, 8px);margin-top:var(--space-2, 8px);animation:fadeIn .2s ease-in}.message-action-btn{display:inline-flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-3, 12px);background:var(--color-gray-100, #f3f4f6);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-lg, 8px);font-size:var(--text-xs, 12px);color:var(--color-gray-700, #374151);cursor:pointer;transition:all var(--transition-fast, .15s);font-weight:var(--font-medium, 500)}.message-action-btn:hover{background:var(--color-gray-200, #e5e7eb);border-color:var(--color-gray-300, #d1d5db);transform:translateY(-1px)}.message-action-btn:active{transform:translateY(0)}.message-action-btn svg{flex-shrink:0}.message-timestamp{font-size:var(--text-xs, 12px);color:var(--color-gray-400, #9ca3af);padding:0 var(--space-1, 4px);font-weight:var(--font-medium, 500)}.typing-indicator{display:flex;gap:var(--space-2, 8px);padding:var(--space-2, 8px) 0;align-items:center}.typing-indicator span{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);animation:typingBounce 1.4s infinite ease-in-out;box-shadow:0 2px 4px #667eea4d}.typing-indicator span:nth-child(1){animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0) scale(1);opacity:.7}30%{transform:translateY(-12px) scale(1.1);opacity:1}}.chat-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:var(--space-10, 40px) var(--space-5, 20px);text-align:center;animation:fadeIn .6s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.empty-state-icon{margin-bottom:var(--space-6, 24px);color:#667eea;opacity:.8;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.chat-empty-state h2{font-size:var(--text-3xl, 30px);margin-bottom:var(--space-3, 12px);color:var(--color-gray-900, #111827);font-weight:var(--font-bold, 700)}.chat-empty-state>p{font-size:var(--text-lg, 18px);color:var(--color-gray-600, #4b5563);margin-bottom:var(--space-8, 32px);max-width:500px;line-height:var(--line-height-relaxed, 1.75)}.suggested-prompts{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-3, 12px);max-width:700px;width:100%}.suggested-prompt-btn{padding:var(--space-4, 16px) var(--space-5, 20px);background:#fff;border:2px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-xl, 12px);font-size:var(--text-sm, 14px);color:var(--color-gray-700, #374151);cursor:pointer;transition:all var(--transition-base, .2s);text-align:left;font-weight:var(--font-medium, 500);line-height:var(--line-height-normal, 1.5);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.suggested-prompt-btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#667eea0d,#764ba20d);opacity:0;transition:opacity var(--transition-base, .2s)}.suggested-prompt-btn:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 8px 16px #667eea26}.suggested-prompt-btn:hover:before{opacity:1}.suggested-prompt-btn:active{transform:translateY(0)}.chat-input-area{padding:var(--space-5, 20px);background:#fff;border-top:1px solid var(--color-gray-200, #e5e7eb);box-shadow:0 -4px 16px #0000000f;position:relative;z-index:10}.chat-input-wrapper{display:flex;gap:var(--space-3, 12px);align-items:flex-end;max-width:900px;margin:0 auto}.chat-input{flex:1;min-height:52px;max-height:200px;padding:var(--space-4, 16px) var(--space-5, 20px);border:2px solid var(--color-gray-300, #d1d5db);border-radius:var(--radius-xl, 12px);font-size:var(--text-base, 16px);font-family:inherit;resize:none;overflow-y:auto;transition:all var(--transition-base, .2s);line-height:var(--line-height-normal, 1.5);color:var(--color-gray-900, #111827);background:#fff}.chat-input::placeholder{color:var(--color-gray-400, #9ca3af)}.chat-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a;background:#fff}.chat-input:disabled{background:var(--color-gray-50, #f9fafb);cursor:not-allowed;opacity:.6}.chat-send-btn{width:52px;height:52px;border-radius:var(--radius-xl, 12px);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-base, .2s);flex-shrink:0;box-shadow:0 4px 12px #667eea4d;position:relative;overflow:hidden}.chat-send-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.chat-send-btn:hover:not(:disabled):before{width:300px;height:300px}.chat-send-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.05);box-shadow:0 8px 20px #667eea66}.chat-send-btn:active:not(:disabled){transform:translateY(0) scale(1)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.chat-send-btn svg{position:relative;z-index:1}.chat-input-hint{margin-top:var(--space-2, 8px);text-align:center;font-size:var(--text-xs, 12px);color:var(--color-gray-500, #6b7280)}.chat-input-hint kbd{padding:var(--space-1, 4px) var(--space-2, 8px);background:var(--color-gray-100, #f3f4f6);border:1px solid var(--color-gray-300, #d1d5db);border-radius:var(--radius-sm, 4px);font-size:var(--text-xs, 12px);font-family:inherit;font-weight:var(--font-medium, 500);box-shadow:0 1px 2px #0000000d}.draft-badge{margin-left:10px;font-size:12px;font-weight:700;color:#f59e0b;background:#fef3c7;padding:2px 8px;border-radius:4px;text-transform:uppercase}@media (max-width: 768px){.chat-container{background:#fff}.chat-container:before{display:none}.chat-main{max-width:100%}.chat-header{padding:var(--space-4, 16px);position:sticky;top:0;z-index:20;box-shadow:0 2px 8px #00000014}.chat-header h1{font-size:var(--text-xl, 20px)}.chat-subtitle{font-size:var(--text-xs, 12px)}.btn-back-inline{width:36px;height:36px}.chat-messages{padding:var(--space-4, 16px);gap:var(--space-4, 16px)}.message-content-wrapper{max-width:85%}.message-content{padding:var(--space-3, 12px) var(--space-4, 16px);font-size:var(--text-sm, 14px)}.avatar-icon{width:36px;height:36px}.chat-empty-state{padding:var(--space-8, 32px) var(--space-4, 16px)}.empty-state-icon{font-size:48px}.chat-empty-state h2{font-size:var(--text-2xl, 24px)}.chat-empty-state>p{font-size:var(--text-base, 16px)}.suggested-prompts{grid-template-columns:1fr;gap:var(--space-2, 8px)}.suggested-prompt-btn{padding:var(--space-3, 12px) var(--space-4, 16px);font-size:var(--text-sm, 14px)}.chat-input-area{padding:var(--space-4, 16px);position:sticky;bottom:0;background:#fff;box-shadow:0 -2px 12px #00000014}.chat-input-wrapper{gap:var(--space-2, 8px)}.chat-input{min-height:44px;padding:var(--space-3, 12px) var(--space-4, 16px);font-size:var(--text-base, 16px)}.chat-send-btn{width:44px;height:44px}.chat-input-hint{display:none}.document-badges{gap:var(--space-2, 8px)}.document-badge{padding:var(--space-2, 8px) var(--space-3, 12px);font-size:11px}.document-badge svg{width:12px;height:12px}.message-actions{flex-wrap:wrap}.message-action-btn{padding:var(--space-2, 8px) var(--space-3, 12px);font-size:11px}.message-action-btn svg{width:14px;height:14px}.chat-message{-webkit-tap-highlight-color:transparent}.suggested-prompt-btn,.document-badge,.message-action-btn{min-height:44px;-webkit-tap-highlight-color:transparent}}@media (min-width: 769px) and (max-width: 1024px){.chat-main{max-width:100%;padding:0 var(--space-6, 24px)}.message-content-wrapper{max-width:80%}}@media (max-width: 768px) and (orientation: landscape){.chat-header{padding:var(--space-3, 12px) var(--space-4, 16px)}.chat-header h1{font-size:var(--text-lg, 18px)}.chat-subtitle{display:none}.chat-messages,.chat-input-area{padding:var(--space-3, 12px)}.chat-empty-state{padding:var(--space-6, 24px) var(--space-4, 16px)}.empty-state-icon{font-size:40px;margin-bottom:var(--space-4, 16px)}.chat-empty-state h2{font-size:var(--text-xl, 20px);margin-bottom:var(--space-2, 8px)}.chat-empty-state>p{font-size:var(--text-sm, 14px);margin-bottom:var(--space-4, 16px)}}@media (max-width: 375px){.chat-header h1{font-size:var(--text-lg, 18px)}.message-content{padding:var(--space-3, 12px);font-size:var(--text-sm, 14px)}.avatar-icon{width:32px;height:32px}.avatar-icon svg{width:16px;height:16px}}@media (max-width: 768px){.chat-input{font-size:16px!important}}@supports (padding: max(0px)){@media (max-width: 768px){.chat-header{padding-top:max(var(--space-4, 16px),env(safe-area-inset-top))}.chat-input-area{padding-bottom:max(var(--space-4, 16px),env(safe-area-inset-bottom))}}}@media (max-width: 767px){.fullscreen-editor{padding-top:60px}.editor-top-bar{padding:var(--space-3) var(--space-4);gap:var(--space-2)}.editor-toolbar-actions{flex-direction:column;align-items:stretch;width:100%}.space-selector{width:100%;min-width:auto}.editor-toolbar{position:fixed;bottom:0;left:0;right:0;padding:var(--space-2) var(--space-3);background:#fff;border-top:1px solid var(--color-gray-200);border-bottom:none;box-shadow:0 -2px 8px #0000001a;z-index:var(--z-sticky);overflow-x:auto;flex-wrap:nowrap;gap:var(--space-2)}.editor-toolbar::-webkit-scrollbar{height:4px}.editor-toolbar::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-sm)}.editor-toolbar button{padding:var(--space-2);min-width:44px;min-height:44px;font-size:var(--text-xs);white-space:nowrap;flex-shrink:0}.editor-toolbar .toolbar-separator{display:none}.editor-content-wrapper{padding:var(--space-6) var(--space-4);padding-bottom:80px}.editor-title-input{font-size:var(--text-2xl);margin-bottom:var(--space-4)}.ProseMirror{font-size:var(--text-base);min-height:calc(100vh - 300px)}.active-users-container{padding:var(--space-2);gap:var(--space-1)}.active-user-avatar{width:32px;height:32px;font-size:11px}.bubble-menu{padding:var(--space-1);gap:var(--space-1)}.bubble-menu button{min-width:40px;height:40px}.auto-save-hint{font-size:11px;padding:var(--space-1) var(--space-2)}.inline-message{font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}}@media (min-width: 768px) and (max-width: 1023px){.editor-content-wrapper{padding:var(--space-12) var(--space-8);max-width:720px}.editor-title-input{font-size:var(--text-3xl)}.editor-toolbar{padding:var(--space-3) var(--space-5)}}@media (min-width: 1280px){.editor-content-wrapper{max-width:1000px;padding:var(--space-20) var(--space-24)}}.search-results-container{max-width:1200px;margin:0 auto}.search-results-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6);gap:var(--space-4)}.search-header-content{flex:1}.search-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin:0 0 var(--space-2) 0}.search-subtitle{font-size:var(--text-base);color:var(--color-gray-600);margin:0}.filter-toggle-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:#fff;border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);color:var(--color-gray-700);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.filter-toggle-btn:hover{background:var(--color-gray-50);border-color:var(--color-gray-400)}.filter-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.filter-chip{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);background:var(--color-primary-50);border:1px solid var(--color-primary-200);border-radius:var(--radius-full);color:var(--color-primary-700);font-size:var(--text-sm);font-weight:var(--font-medium)}.filter-chip-remove{display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;color:var(--color-primary-600);cursor:pointer;transition:color var(--transition-fast)}.filter-chip-remove:hover{color:var(--color-primary-800)}.search-content-wrapper{display:flex;gap:var(--space-6);align-items:flex-start}.search-filters-sidebar{width:260px;flex-shrink:0;background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--space-5);position:sticky;top:var(--space-4)}.filter-section{margin-bottom:var(--space-6)}.filter-section:last-child{margin-bottom:0}.filter-section-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0 0 var(--space-3) 0;text-transform:uppercase;letter-spacing:.05em}.filter-options{display:flex;flex-direction:column;gap:var(--space-2)}.filter-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.filter-option:hover{background:var(--color-gray-50)}.filter-option input[type=radio]{margin:0;cursor:pointer}.filter-option span:first-of-type{flex:1;font-size:var(--text-sm);color:var(--color-gray-700)}.filter-count{font-size:var(--text-xs);color:var(--color-gray-500);font-weight:var(--font-medium)}.search-results-main{flex:1;min-width:0}.search-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16);background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);gap:var(--space-4)}.search-loading p{color:var(--color-gray-600);font-size:var(--text-base);margin:0}.search-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16);background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);gap:var(--space-4);text-align:center}.search-error svg{color:var(--color-error)}.search-error h3{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0}.search-error p{color:var(--color-gray-600);font-size:var(--text-base);margin:0}.search-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16);background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);gap:var(--space-4);text-align:center}.search-empty-state svg{color:var(--color-gray-400)}.search-empty-state h3{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0}.search-empty-state p{color:var(--color-gray-600);font-size:var(--text-base);margin:0;max-width:400px}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding:var(--space-3) 0}.results-count{font-size:var(--text-sm);color:var(--color-gray-600);margin:0}.mobile-filter-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#fff;border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);color:var(--color-gray-700);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;position:relative}.filter-badge{display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;background:var(--color-primary-500);color:#fff;border-radius:var(--radius-full);font-size:11px;font-weight:var(--font-semibold)}.search-results-list{display:flex;flex-direction:column;gap:var(--space-4)}.search-result-card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--space-5);cursor:pointer;transition:all var(--transition-base)}.search-result-card:hover{border-color:var(--color-primary-300);box-shadow:var(--shadow-md);transform:translateY(-1px)}.result-card-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.result-type-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em}.result-type-badge.document{background:var(--color-primary-50);color:var(--color-primary-700)}.result-type-badge.space{background:#fef3c7;color:#92400e}.result-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0 0 var(--space-2) 0;line-height:var(--line-height-tight)}.result-snippet{font-size:var(--text-sm);color:var(--color-gray-600);line-height:var(--line-height-relaxed);margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.search-highlight{background:#fef08a;color:inherit;padding:2px 0;border-radius:2px;font-weight:var(--font-medium)}.results-footer{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-gray-200);text-align:center}.results-summary{font-size:var(--text-sm);color:var(--color-gray-600);margin:0}.mobile-filter-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:var(--z-modal-backdrop);display:flex;align-items:flex-end;animation:fadeIn var(--transition-base)}.mobile-filter-sheet{width:100%;max-height:80vh;background:#fff;border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;display:flex;flex-direction:column;animation:slideUp var(--transition-base)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-filter-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-gray-200)}.mobile-filter-header h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900);margin:0}.mobile-filter-close{display:flex;align-items:center;justify-content:center;padding:var(--space-2);background:none;border:none;color:var(--color-gray-500);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.mobile-filter-close:hover{background:var(--color-gray-100);color:var(--color-gray-700)}.mobile-filter-content{flex:1;overflow-y:auto;padding:var(--space-5)}.mobile-filter-content .filter-section{margin-bottom:var(--space-6)}.mobile-filter-content .filter-section:last-child{margin-bottom:0}.mobile-filter-content .filter-section-title{font-size:var(--text-base)}.mobile-filter-actions{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-gray-200);background:var(--color-gray-50)}.mobile-filter-actions .btn{flex:1}@media (max-width: 768px){.search-results-container{padding:var(--space-4)}.search-results-header{flex-direction:column;gap:var(--space-3)}.search-title{font-size:var(--text-2xl)}.search-content-wrapper{flex-direction:column}.search-result-card{padding:var(--space-4)}.result-title{font-size:var(--text-base)}.result-snippet{font-size:var(--text-sm)}.desktop-only{display:none!important}}@media (min-width: 769px){.mobile-only{display:none!important}}@media (min-width: 769px) and (max-width: 1024px){.search-filters-sidebar{width:220px}.search-content-wrapper{gap:var(--space-4)}}.bubble-menu.table-menu{display:flex;background-color:#fff;padding:.5rem;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid var(--color-gray-200);gap:.5rem;align-items:center}.bubble-menu.table-menu .button-group{display:flex;gap:.25rem}.bubble-menu.table-menu .separator{width:1px;height:1.5rem;background-color:var(--color-gray-200);margin:0 .25rem}.bubble-menu.table-menu button{display:flex;align-items:center;justify-content:center;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500;color:var(--color-gray-700);background-color:transparent;border:none;cursor:pointer;transition:all .2s;white-space:nowrap}.bubble-menu.table-menu button:hover{background-color:var(--color-gray-100);color:var(--color-gray-900)}.bubble-menu.table-menu button:disabled{opacity:.5;cursor:not-allowed}.bubble-menu.table-menu button.text-red-500{color:var(--color-error)}.bubble-menu.table-menu button.text-red-500:hover{background-color:var(--color-error-light);color:var(--color-error-dark)}.bubble-menu.table-menu button.font-bold{font-weight:600}
