.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.btn-close{display:flex;align-items:center;justify-content:center;padding:.5rem;border:none;background:transparent;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.modal-form{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.9rem}.required{color:#dc2626}.form-group input[type=text],.form-group input[type=number],.form-group textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:all .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.form-group textarea{resize:vertical;font-family:inherit}.form-group small{display:block;margin-top:.25rem;font-size:.8rem;color:#6b7280}.form-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.form-section h3{margin:0 0 .5rem;font-size:1.1rem;color:#1a1a1a}.form-hint{margin:0 0 1.5rem;font-size:.85rem;color:#6b7280}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkbox-group{display:flex;flex-direction:column;gap:0}.checkbox-group label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:400;margin-bottom:0}.checkbox-group input[type=checkbox]{width:auto;height:1.25rem;cursor:pointer}.checkbox-group span{font-weight:500;color:#374151}.error-message{padding:.75rem;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:.9rem;margin-bottom:1rem}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e5e7eb;margin:0 -1.5rem -1.5rem}@media (max-width: 640px){.modal-content{max-height:100vh;border-radius:0}.form-row{grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.lists-page{max-width:1200px;margin:0 auto;padding:var(--spacing-xl) 0 6rem}.lists-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.lists-page .page-header h1{margin:0;font-size:2rem;color:var(--color-text-primary)}.lists-page .page-subtitle{margin:var(--spacing-sm) 0 0 0;color:var(--color-text-secondary);font-size:.95rem}.lists-page .btn-icon{display:flex;align-items:center;justify-content:center;padding:.5rem;border:none;background:transparent;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.lists-page .btn-icon:hover{background:#f3f4f6;color:#374151}.lists-page .btn-icon.btn-danger:hover{background:#fee2e2;color:#dc2626}.lists-page .loading,.lists-page .error{text-align:center;padding:3rem;font-size:1.1rem;color:#6b7280}.lists-page .error{color:var(--color-danger)}.lists-page .empty-state{text-align:center;padding:4rem var(--spacing-xl)}.lists-page .empty-icon{color:var(--color-text-muted);margin-bottom:var(--spacing-md)}.lists-page .empty-state h2{margin:var(--spacing-md) 0 var(--spacing-sm) 0;color:var(--color-text-secondary)}.lists-page .empty-state p{color:var(--color-text-secondary);margin-bottom:var(--spacing-xl)}.lists-page .lists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.lists-page .list-card{background:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-base);cursor:pointer}.lists-page .list-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-primary);transform:translateY(-2px)}.lists-page .list-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.lists-page .list-title{margin:0;font-size:1.25rem;color:var(--color-text-primary);flex:1;margin-right:1rem}.lists-page .list-actions{display:flex;gap:var(--spacing-xs)}.lists-page .list-description{color:var(--color-text-secondary);font-size:.9rem;margin:0 0 var(--spacing-md) 0;line-height:1.5}.lists-page .list-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);padding:var(--spacing-md) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin:var(--spacing-md) 0}.lists-page .stat{display:flex;flex-direction:column;gap:var(--spacing-xs)}.lists-page .stat-label{font-size:.75rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px}.lists-page .stat-value{font-size:1.1rem;font-weight:600;color:var(--color-text-primary)}.lists-page .list-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-md)}.lists-page .list-meta{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.85rem;color:var(--color-text-tertiary)}.lists-page .badge{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:500}.lists-page .badge-loop{background:var(--color-primary-lighter);color:#1e40af}.lists-page .pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.lists-page .pagination-info{color:var(--color-text-secondary);font-size:.9rem}@media (max-width: 768px){.lists-page{padding:var(--spacing-md)}.lists-page .page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.lists-page .lists-grid{grid-template-columns:1fr}.lists-page .list-stats{grid-template-columns:repeat(2,1fr)}}.verse-search-modal{width:90vw;max-width:900px;max-height:90vh;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb;flex-shrink:0}.modal-header h2{margin:0;font-size:1.5rem;color:#1a1a1a}.btn-close{display:flex;align-items:center;justify-content:center;padding:.5rem;background:transparent;border:none;color:#6b7280;border-radius:6px;cursor:pointer;transition:all .2s}.btn-close:hover{background:#f3f4f6;color:#374151}.search-container{padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#fafafa;flex-shrink:0}.search-input-group{display:flex;align-items:center;gap:.75rem;background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:.5rem 1rem;margin-bottom:1rem;transition:border-color .2s}.search-input-group:focus-within{border-color:#2563eb}.search-icon{color:#9ca3af;flex-shrink:0}.search-input{flex:1;border:none;outline:none;font-size:1rem;padding:.5rem 0;color:#1a1a1a}.search-input:focus{outline:none}.search-input::placeholder{color:#9ca3af}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.filter-group label{font-size:.875rem;font-weight:500;color:#374151}.filter-select{padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;color:#1a1a1a;background-color:#fff;cursor:pointer;transition:all .2s}.filter-select:hover:not(:disabled){border-color:#2563eb}.filter-select:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.filter-option{display:flex;flex-direction:column;gap:.25rem;padding:0 .5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.filter-checkbox{width:18px;height:18px;cursor:pointer;accent-color:#2563eb}.checkbox-label span{font-size:.875rem;font-weight:500;color:#374151}.filter-hint{font-size:.75rem;color:#6b7280;margin-top:-.25rem;line-height:1.3}.results-container{flex:1;overflow-y:auto;padding:1.5rem;min-height:300px}.empty-results{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:3rem;text-align:center}.empty-icon{color:#d1d5db;margin-bottom:1rem}.empty-results p{color:#6b7280;margin:0;font-size:.95rem}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #f3f4f6}.results-count,.selected-count{font-size:.875rem;color:#6b7280}.selected-count{font-weight:600;color:#2563eb}.results-list{display:flex;flex-direction:column;gap:.5rem}.result-card{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s}.result-card:hover{border-color:#2563eb;background:#f0f9ff}.result-card.selected{border-color:#2563eb;background:#eff6ff}.result-checkbox{width:24px;height:24px;border:2px solid #d1d5db;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;transition:all .2s;margin-top:2px}.result-card:hover .result-checkbox{border-color:#2563eb}.result-card.selected .result-checkbox{background:#2563eb;border-color:#2563eb;color:#fff}.result-content{flex:1}.result-reference{font-weight:600;color:#1a1a1a;margin-bottom:.5rem;font-size:.95rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.result-meta{font-weight:400;color:#6b7280;font-size:.85rem}.result-text{margin:0;color:#374151;line-height:1.6;font-size:.95rem}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e5e7eb;flex-shrink:0}@media (max-width: 768px){.verse-search-modal{width:95vw;max-height:95vh}.search-input-group{flex-wrap:wrap}.search-input-group button{width:100%}.filters{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.modal-footer button{width:100%}}.verse-comparison-popover{position:absolute;top:100%;left:0;right:0;margin-top:.5rem;background:#fff;border:2px solid #2563eb;border-radius:12px;box-shadow:0 10px 25px #00000026;z-index:1000;max-width:100%;animation:popoverFadeIn .2s ease-out}@keyframes popoverFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.popover-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;background:#f9fafb;border-radius:10px 10px 0 0}.popover-title{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#1a1a1a;font-size:1rem}.popover-title svg{color:#2563eb}.popover-actions{display:flex;align-items:center;gap:.5rem}.btn-replace{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-replace:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px);box-shadow:0 2px 8px #2563eb4d}.btn-replace:active:not(:disabled){transform:translateY(0)}.btn-replace:disabled{opacity:.5;cursor:not-allowed}.btn-replace svg{width:16px;height:16px}.btn-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;color:#6b7280;border-radius:6px;cursor:pointer;transition:all .2s}.btn-close:hover{background:#e5e7eb;color:#374151}.popover-filters{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1rem 1.25rem;background:#fff}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.85rem;font-weight:600;color:#374151}.filter-select{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;color:#1a1a1a;background-color:#fff;cursor:pointer;transition:all .2s}.filter-select:hover{border-color:#2563eb}.filter-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.popover-content{padding:1.25rem;max-height:400px;overflow-y:auto}.loading-message{text-align:center;padding:2rem;color:#6b7280;font-size:.95rem}.no-verses-message{text-align:center;padding:2rem;color:#9ca3af;font-size:.95rem}.comparison-verse-block{display:flex;flex-direction:column;gap:.75rem}.comparison-reference{font-weight:600;color:#1a1a1a;font-size:.95rem}.comparison-version{font-weight:400;color:#6b7280;margin-left:.5rem;font-size:.85rem}.comparison-text{padding:1rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;line-height:1.8;font-size:.95rem;color:#374151}.comparison-text .verse-segment{font-weight:400}.comparison-text .verse-segment.main{font-weight:500;color:#1a1a1a}.comparison-text .verse-number-inline{font-size:.75rem;font-weight:600;color:#6b7280;margin-right:.25rem}.comparison-text .verse-number-inline.main{color:#2563eb;font-weight:700}@media (max-width: 768px){.verse-comparison-popover{position:fixed;top:50%;left:50%;right:auto;transform:translate(-50%,-50%);margin-top:0;max-width:90vw;max-height:80vh}.popover-filters{grid-template-columns:1fr}}.list-detail-page{max-width:1200px;margin:0 auto;padding:0 0 6rem}.list-detail-page .page-header{margin-bottom:2rem}.list-detail-page .btn-back{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;border:none;color:#6b7280;font-size:.95rem;cursor:pointer;border-radius:6px;transition:all .2s;margin-bottom:1rem}.list-detail-page .btn-back:hover{background:#f3f4f6;color:#374151}.list-detail-page .header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.list-detail-page .header-title h1{margin:0 0 .5rem;font-size:2rem;color:#1a1a1a}.list-detail-page .list-description{margin:0;color:#6b7280;font-size:.95rem}.list-detail-page .header-actions{display:flex;gap:1rem;flex-shrink:0}.list-detail-page .header-actions .btn{min-height:38px}.list-detail-page .btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.list-detail-page .btn-primary{background:#2563eb;color:#fff;box-shadow:0 2px 4px #2563eb33}.list-detail-page .btn-primary:hover{background:#1d4ed8;box-shadow:0 4px 8px #2563eb4d;transform:translateY(-1px)}.list-detail-page .btn-warning{background:#f59e0b;color:#fff;box-shadow:0 2px 4px #f59e0b33}.list-detail-page .btn-warning:hover{background:#d97706;box-shadow:0 4px 8px #f59e0b4d;transform:translateY(-1px)}.list-detail-page .search-section{margin-bottom:1rem}.list-detail-page .search-bar-button{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem 1.5rem;background:#fff;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;color:#9ca3af;cursor:pointer;transition:all .2s}.list-detail-page .global-actions{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:1rem}.list-detail-page .action-group{display:flex;align-items:center;gap:.75rem}.list-detail-page .btn-action{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:#fff;border:1px solid #2563eb;border-radius:8px;color:#2563eb;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.list-detail-page .btn-action:hover{background:#2563eb;color:#fff}.list-detail-page .view-filters{flex:1;justify-content:flex-end}.list-detail-page .view-label{display:flex;align-items:center;gap:.5rem;color:#6b7280;font-size:.9rem;font-weight:500}.list-detail-page .view-select{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;color:#1a1a1a;background-color:#fff;cursor:pointer;transition:all .2s;min-width:150px}.list-detail-page .view-select:hover:not(:disabled){border-color:#2563eb}.list-detail-page .view-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.list-detail-page .view-select:disabled{opacity:.5;cursor:not-allowed}.list-detail-page .btn-replace-all{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:#16a34a;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.list-detail-page .btn-replace-all:hover:not(:disabled){background:#15803d;transform:translateY(-1px);box-shadow:0 2px 8px #16a34a4d}.list-detail-page .btn-replace-all:active:not(:disabled){transform:translateY(0)}.list-detail-page .btn-replace-all:disabled{opacity:.5;cursor:not-allowed}.list-detail-page .btn-reset-view{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;cursor:pointer;transition:all .2s}.list-detail-page .btn-reset-view:hover{background:#dc2626;border-color:#dc2626;color:#fff}.list-detail-page .search-bar-button:hover{border-color:#2563eb;color:#2563eb;box-shadow:0 2px 8px #2563eb1a}.list-detail-page .search-bar-button span{flex:1;text-align:left}.list-detail-page .search-icon-right{color:#d1d5db}.list-detail-page .search-bar-button:hover .search-icon-right{color:#2563eb}.list-detail-page .verses-section{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:1.5rem}.list-detail-page .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.list-detail-page .section-header h2{margin:0;font-size:1.25rem;color:#1a1a1a}.list-detail-page .verse-count{font-size:.9rem;color:#6b7280;background:#f3f4f6;padding:.25rem .75rem;border-radius:999px}.list-detail-page .empty-state{text-align:center;padding:4rem 2rem}.list-detail-page .empty-icon{color:#d1d5db;margin-bottom:1rem}.list-detail-page .empty-state h3{margin:1rem 0 .5rem;color:#374151}.list-detail-page .empty-state p{color:#6b7280;margin:0}.list-detail-page .verses-list{display:flex;flex-direction:column;gap:.75rem}.list-detail-page .verse-card{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.list-detail-page .verse-card:hover{background:#f3f4f6;border-color:#d1d5db;box-shadow:0 2px 4px #0000000d}.list-detail-page .verse-card.dragging{opacity:.5;box-shadow:0 8px 16px #00000026}.list-detail-page .drag-handle{display:flex;align-items:center;justify-content:center;color:#d1d5db;cursor:grab;padding:.25rem;border-radius:4px;transition:all .2s;flex-shrink:0}.list-detail-page .drag-handle:hover{color:#2563eb;background:#eff6ff}.list-detail-page .drag-handle:active{cursor:grabbing}.list-detail-page .verse-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#2563eb;color:#fff;border-radius:6px;font-weight:600;font-size:.9rem;flex-shrink:0}.list-detail-page .verse-content{flex:1}.list-detail-page .verse-reference{font-weight:600;color:#1a1a1a;margin-bottom:.75rem;font-size:.95rem}.list-detail-page .verse-version{font-weight:400;color:#6b7280;margin-left:.5rem;font-size:.85rem}.list-detail-page .verse-text-block{padding:1rem;background:#fff;border-radius:8px;border:2px solid #e5e7eb;line-height:1.8;font-size:.95rem}.list-detail-page .verse-segment{color:#374151;font-weight:400}.list-detail-page .verse-segment.main{color:#1a1a1a;font-weight:500}.list-detail-page .verse-number-inline{font-size:.75rem;font-weight:600;color:#6b7280;margin-right:.25rem}.list-detail-page .verse-number-inline.main{color:#2563eb;font-weight:700}.list-detail-page .context-controls{display:flex;gap:1.5rem;padding-top:.5rem}.list-detail-page .context-control{display:flex;align-items:center;gap:.5rem}.list-detail-page .control-label{font-size:.85rem;color:#6b7280;font-weight:500}.list-detail-page .btn-context{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#6b7280;cursor:pointer;transition:all .2s}.list-detail-page .btn-context:hover:not(:disabled){background:#2563eb;border-color:#2563eb;color:#fff}.list-detail-page .btn-context:disabled{opacity:.4;cursor:not-allowed}.list-detail-page .context-count{font-weight:600;color:#374151;min-width:1.5rem;text-align:center;font-size:.9rem}.list-detail-page .btn-compare{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #2563eb;border-radius:6px;color:#2563eb;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s;margin-right:auto}.list-detail-page .btn-compare:hover{background:#2563eb;color:#fff}.list-detail-page .btn-compare:focus{outline-color:#2563eb}.list-detail-page .btn-compare svg{flex-shrink:0}.list-detail-page .btn-remove{display:flex;align-items:center;justify-content:center;padding:.5rem;background:transparent;border:none;color:#9ca3af;border-radius:6px;cursor:pointer;transition:all .2s;flex-shrink:0}.list-detail-page .btn-remove:hover{background:#fee2e2;color:#dc2626}.list-detail-page .loading,.list-detail-page .error{text-align:center;padding:3rem;font-size:1.1rem;color:#6b7280}.list-detail-page .error{color:#dc2626}@media (max-width: 768px){.list-detail-page{padding:1rem}.list-detail-page .header-content{flex-direction:column;gap:1rem}.list-detail-page .header-actions{width:100%;justify-content:flex-end}.list-detail-page .verse-card{flex-wrap:wrap}.list-detail-page .btn-remove{order:-1;margin-left:auto}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);padding:var(--spacing-xl)}.login-container{background:var(--color-bg-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);width:100%;max-width:420px;box-shadow:var(--shadow-xl)}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-icon{color:var(--color-primary);margin-bottom:var(--spacing-md)}.login-header h1{margin:0 0 var(--spacing-sm) 0;font-size:1.75rem;color:var(--color-text-primary)}.login-header p{margin:0;color:var(--color-text-secondary);font-size:.95rem}.login-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.login-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-sm);margin:0}.login-form .form-group label{font-weight:500;color:var(--color-text-primary);font-size:.95rem}.login-form .form-group input{padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:1rem;transition:all var(--transition-base)}.login-form .form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.login-form .form-group input:disabled{background:var(--color-bg-lighter);cursor:not-allowed}.login-form .error-message{padding:var(--spacing-md);background:var(--color-danger-light);color:var(--color-danger);border-radius:var(--radius-sm);font-size:.9rem;border:1px solid var(--color-danger-lighter)}.login-form .btn-login{width:100%;padding:.875rem;font-size:1rem;justify-content:center}.login-footer{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);text-align:center}.login-info{margin:0;font-size:.85rem;color:var(--color-text-tertiary)}@media (max-width: 480px){.login-page{padding:var(--spacing-md)}.login-container{padding:var(--spacing-lg)}.login-header h1{font-size:1.5rem}}.chat-message{display:flex;gap:12px;padding:12px 8px;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message-user{background:#f7f7f8}.chat-message-assistant{background:#fff}.chat-message-avatar{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#4a5568;color:#fff}.chat-message-user .chat-message-avatar{background:#2563eb}.chat-message-content{flex:1;min-width:0;line-height:1.6}.chat-message-content p{margin:0;color:#1a202c}.chat-message-markdown{color:#1a202c}.chat-message-markdown p{margin:0 0 12px}.chat-message-markdown p:last-child{margin-bottom:0}.chat-message-markdown ul,.chat-message-markdown ol{margin:12px 0;padding-left:20px}.chat-message-markdown li{margin:4px 0}.chat-message-markdown code{background:#f3f4f6;padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:.9em}.chat-message-markdown pre{background:#1e293b;color:#e2e8f0;padding:12px;border-radius:6px;overflow-x:auto;margin:12px 0}.chat-message-markdown pre code{background:none;padding:0;color:inherit;font-size:.875em}.chat-message-cursor{display:inline-block;animation:blink 1s step-end infinite;color:#2563eb;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.chat-input-container{border-top:1px solid #e5e7eb;padding:16px 20px;background:#fff}.chat-input-wrapper{display:flex;align-items:flex-start;gap:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:8px;transition:border-color .2s,box-shadow .2s}.chat-input-wrapper:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;background:#fff}.chat-input{flex:1;background:transparent;border:none;outline:none;font-size:14px;line-height:1.5;color:#111827;height:fill-available;height:-webkit-fill-available;min-height:24px;max-height:150px;padding-top:0;padding-bottom:0;resize:none;font-family:inherit;overflow:auto}.chat-input::placeholder{color:#9ca3af}.chat-input:focus{outline:none}.chat-input-send{background:#3b82f6;color:#fff;border:none;border-radius:8px;padding:8px 12px;cursor:pointer;display:flex;align-self:center;align-items:center;justify-content:center;transition:background .2s,transform .1s;flex-shrink:0;min-width:40px;min-height:40px}.chat-input-send:hover:not(:disabled){background:#2563eb;transform:scale(1.05)}.chat-input-send:active:not(:disabled){transform:scale(.95)}.chat-input-send:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6}.chat-input-send svg{width:20px;height:20px;flex-shrink:0}.chat-input-send .spinner{animation:spin 1s linear infinite}.chat-sidebar{position:fixed;top:0;right:0;height:100vh;background:#fff;box-shadow:-2px 0 8px #0000001a;display:flex;flex-direction:column;z-index:1000;transition:none}.chat-sidebar.resizing{-webkit-user-select:none;user-select:none;transition:none}.resize-handle{position:absolute;left:0;top:0;width:6px;height:100%;cursor:ew-resize;background:transparent;z-index:10;transition:background .2s}.resize-handle:hover{background:#3b82f64d}.resize-handle:before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:2px;height:40px;background:#d1d5db;border-radius:1px;opacity:0;transition:opacity .2s}.resize-handle:hover:before{opacity:1}.conversations-full-view{display:flex;flex-direction:column;height:100%;background:#f9fafb}.conversations-header{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#fff;border-bottom:1px solid #e5e7eb}.conversations-header h3{margin:0;font-size:18px;font-weight:600;display:flex;align-items:center;gap:8px;color:#1f2937}.new-conversation-btn{display:flex;align-items:center;justify-content:center;padding:8px;background:#3b82f6;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.new-conversation-btn:hover{background:#2563eb}.conversations-list-full{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.conversations-list-full::-webkit-scrollbar{width:6px}.conversations-list-full::-webkit-scrollbar-track{background:#f1f5f9}.conversations-list-full::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.conversations-list-full::-webkit-scrollbar-thumb:hover{background:#94a3b8}.conversations-loading{display:flex;justify-content:center;align-items:center;padding:40px;color:#6b7280}.conversations-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#6b7280;gap:16px}.conversations-empty svg{color:#d1d5db}.conversations-empty p{margin:0;font-size:14px}.btn-primary{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#2563eb}.conversation-item{position:relative;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.conversation-item:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.conversation-info{flex:1;min-width:0}.conversation-title{font-weight:600;font-size:15px;color:#1f2937;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-preview{font-size:13px;color:#6b7280;margin-bottom:6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.conversation-date{font-size:12px;color:#9ca3af}.conversation-delete{flex-shrink:0;padding:6px;background:transparent;border:none;color:#ef4444;cursor:pointer;border-radius:6px;opacity:0;transition:all .2s;display:flex;align-items:center;justify-content:center}.conversation-item:hover .conversation-delete{opacity:1}.conversation-delete:hover{background:#fee2e2}.chat-full-view{display:flex;flex-direction:column;height:100%}.chat-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#fff}.btn-back{padding:8px;background:transparent;border:none;color:#6b7280;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-back:hover{background:#f3f4f6;color:#1f2937}.chat-header h3{flex:1;margin:0;font-size:16px;font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header-actions{display:flex;gap:8px}.btn-icon{padding:8px;background:transparent;border:none;color:#6b7280;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-icon:hover{background:#f3f4f6;color:#1f2937}.chat-messages{flex:1;overflow-y:auto;padding:16px 8px;display:flex;flex-direction:column;gap:16px}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#f9fafb}.chat-messages::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#9ca3af}.chat-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 40px;gap:16px}.chat-welcome svg{color:#d1d5db}.chat-welcome h4{margin:0;font-size:20px;font-weight:600;color:#1f2937}.chat-welcome p{margin:0;font-size:14px;color:#6b7280;max-width:400px;line-height:1.6}.chat-examples{display:flex;flex-direction:column;gap:8px;margin-top:16px;width:100%;max-width:400px}.chat-examples button{padding:12px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#374151;cursor:pointer;transition:all .2s;text-align:left}.chat-examples button:hover{border-color:#3b82f6;color:#3b82f6;transform:translate(4px)}.chat-error{display:flex;align-items:flex-start;gap:12px;padding:16px;margin:16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;font-size:14px}.error-icon{font-size:20px;line-height:1}.error-content{flex:1;min-width:0}.error-title{font-weight:600;color:#dc2626;margin-bottom:4px}.chat-error .error-message{color:#dc2626;line-height:1.5;word-wrap:break-word;background:none;border:none}.function-execution{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fef3c7;border:1px solid #fde68a;border-radius:8px;font-size:14px;color:#92400e}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-light: #eff6ff;--color-primary-lighter: #dbeafe;--color-success: #16a34a;--color-success-hover: #15803d;--color-warning: #f59e0b;--color-warning-hover: #d97706;--color-danger: #dc2626;--color-danger-light: #fee2e2;--color-danger-lighter: #fecaca;--color-text-primary: #1a1a1a;--color-text-secondary: #6b7280;--color-text-tertiary: #9ca3af;--color-text-muted: #d1d5db;--color-bg-white: #ffffff;--color-bg-light: #fafafa;--color-bg-lighter: #f3f4f6;--color-bg-lightest: #f9fafb;--color-border: #e5e7eb;--color-border-light: #d1d5db;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .15);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}.btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:.75rem 1.5rem;border:none;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{background:var(--color-bg-lighter);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-border);border-color:var(--color-border-light)}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background:var(--color-success-hover)}.btn-warning{background:var(--color-warning);color:#fff}.btn-warning:hover:not(:disabled){background:var(--color-warning-hover)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--color-danger-hover)}.btn-icon{padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.btn-sm{padding:.5rem .875rem;font-size:.875rem}.btn-lg{padding:1rem 2rem;font-size:1.125rem}.app{position:relative;min-height:100vh;display:flex;flex-direction:column;transition:margin-right .1s ease}.navbar{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:#fff;padding:var(--spacing-md) 0;box-shadow:var(--shadow-md)}.nav-container{max-width:1400px;margin:0 auto;padding:0 var(--spacing-xl);display:flex;justify-content:space-between;align-items:center}.nav-title{display:flex;align-items:center;gap:.75rem;font-size:1.5rem;font-weight:600}.nav-links{display:flex;gap:var(--spacing-xl);align-items:center}.nav-link{color:#fff;text-decoration:none;font-weight:500;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);transition:background-color var(--transition-base)}.nav-link:hover{color:#fff;background-color:#ffffff1a}.chat-toggle-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-sm);background:#ffffff26;color:#fff;font-weight:500;font-size:14px;cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-fast);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chat-toggle-btn.active,.chat-toggle-btn:hover{background:#ffffff40}.chat-toggle-btn:active{transform:scale(.98)}.main-content{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:var(--spacing-xl)}.footer{background-color:var(--color-bg-light);color:var(--color-text-secondary);text-align:center;padding:var(--spacing-lg);margin-top:auto;border-top:1px solid var(--color-border)}@media (max-width: 768px){.nav-container{flex-direction:column;gap:var(--spacing-md)}.nav-links{gap:var(--spacing-md)}.main-content{padding:var(--spacing-md)}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;min-height:100vh}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#747bff}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#f9f9f9;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}button svg{height:1em;width:1em;vertical-align:middle;margin-left:.2em;margin-right:.2em}select{-moz-appearance:none;-webkit-appearance:none;appearance:none;padding-right:2.5em;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .7em center;background-size:1.2em}select::-ms-expand{display:none}input,textarea,select{font-family:inherit;font-size:1em;padding:.5em;border-radius:4px;border:1px solid #ccc;background-color:#fff;color:#213547}input:focus,textarea:focus,select:focus{outline:2px solid #646cff;outline-offset:2px}
