*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fafafa;color:#111827;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-modal-overlay{align-items:center;animation:fadeIn .2s ease-in-out;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.login-modal-content{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:400px;padding:32px;position:relative;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .2s ease;width:32px}.login-modal-close:hover{background-color:#f3f4f6;color:#111827}.login-modal-title{color:#111827;font-size:1.5rem;font-weight:600;margin:0 0 24px;text-align:center}.login-form{gap:20px}.login-form,.login-form-group{display:flex;flex-direction:column}.login-form-group{gap:8px}.login-form-group label{color:#374151;font-size:.875rem;font-weight:500}.login-form-group input{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;outline:none;padding:10px 14px;transition:all .2s ease;width:100%}.login-form-group input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper input{padding-right:42px}.password-toggle-btn{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:4px;position:absolute;right:8px;transition:all .2s ease}.password-toggle-btn:hover{background-color:#f3f4f6;color:#111827}.password-toggle-btn:focus{box-shadow:0 0 0 2px #2563eb33;outline:none}.login-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:.875rem;padding:10px 14px;text-align:center}.login-submit-btn{background-color:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.login-submit-btn:hover:not(:disabled){background-color:#1d4ed8;box-shadow:0 4px 12px #2563eb4d;transform:translateY(-1px)}.login-submit-btn:active:not(:disabled){transform:translateY(0)}.login-submit-btn:disabled{cursor:not-allowed;opacity:.6}.sidebar{background-color:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;height:100vh;left:0;overflow-x:hidden;overflow-y:auto;position:fixed;top:0;width:260px;z-index:100}.sidebar-header{border-bottom:1px solid #e5e7eb;padding:24px 20px}.sidebar-title{color:#111827;font-size:1.5rem;font-weight:500;letter-spacing:-.3px;margin:0 0 4px}.sidebar-subtitle{color:#6b7280;font-size:.875rem;font-weight:400;margin:0}.sidebar-nav{flex:1 1;padding:12px}.sidebar-item{align-items:center;border-radius:6px;color:#374151;display:flex;font-size:.875rem;font-weight:500;gap:12px;margin-bottom:4px;padding:10px 12px;text-decoration:none;transition:all .15s ease}.sidebar-item:hover{background-color:#f9fafb;color:#111827}.sidebar-item.active{background-color:#eff6ff;color:#2563eb}.sidebar-item.active .sidebar-item-icon{color:#2563eb}.sidebar-item-icon{align-items:center;color:#6b7280;display:flex;flex-shrink:0;justify-content:center;transition:color .15s ease}.sidebar-item:hover .sidebar-item-icon{color:#374151}.sidebar-item-text{flex:1 1}.sidebar-draggable-item{align-items:center;cursor:move;display:flex;gap:8px;margin-bottom:4px;position:relative}.sidebar-draggable-item .sidebar-item{flex:1 1;margin-bottom:0}.delete-table-btn{align-items:center;background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;opacity:0;padding:4px;transition:all .15s ease}.delete-table-btn:hover{background-color:#fef2f2;color:#dc2626;opacity:1}.sidebar-draggable-item:hover .delete-table-btn{opacity:1}.sidebar-draggable-item.dragging{opacity:.5}.sidebar-draggable-item.drag-over{border-top:2px solid #2563eb}.sidebar-draggable-item.drag-over:before{background-color:#2563eb;content:"";height:2px;left:0;position:absolute;right:0;top:-2px}.drag-handle{align-items:center;color:#9ca3af;cursor:grab;display:flex;flex-shrink:0;justify-content:center;opacity:0;padding:4px;transition:opacity .15s ease}.drag-handle:active{cursor:grabbing}.sidebar-draggable-item.dragging .drag-handle,.sidebar-draggable-item:hover .drag-handle{opacity:1}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#0000}.sidebar::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#9ca3af}.create-buttons-container{display:flex;gap:8px;margin-bottom:12px}.create-btn{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;flex:1 1;font-family:inherit;font-size:.8125rem;font-weight:500;padding:8px 12px;text-align:center;transition:all .15s ease}.create-btn:hover{background-color:#f9fafb;border-color:#d1d5db;color:#111827}.create-btn:active{transform:scale(.98)}.create-btn-table:hover{background-color:#fffbeb;border-color:#fbbf24;color:#92400e}.create-btn-note:hover{background-color:#f0fdf4;border-color:#4ade80;color:#166534}.create-btn-export:hover{background-color:#eff6ff;border-color:#3b82f6;color:#1e40af}.modal-overlay{z-index:1000}.modal-content{max-height:80vh;max-width:500px;overflow-y:auto;width:90%}.modal-title{color:#111827;font-size:1.5rem;font-weight:600;margin:0 0 20px}.modal-form{display:flex;flex-direction:column;gap:20px}.form-input{font-size:.875rem;padding:8px 12px;transition:border-color .2s}.column-names-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.column-input{width:100%}.modal-actions{gap:12px;margin-top:8px}.btn{font-size:.875rem;padding:8px 16px}.btn-cancel{background-color:#f3f4f6;color:#374151}.btn-cancel:hover{background-color:#e5e7eb}.btn-primary:hover{background-color:#1d4ed8}.sidebar-section{margin-bottom:8px;margin-top:16px}.sidebar-section-title{color:#9ca3af;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:4px;padding:8px 12px 4px;text-transform:uppercase}.sidebar-item-note{align-items:center;display:flex;position:relative}.sidebar-item-note .sidebar-item-text{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delete-note-btn{align-items:center;background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;margin-left:4px;opacity:0;padding:4px;transition:all .15s ease}.delete-note-btn:hover{background-color:#fef2f2;color:#dc2626;opacity:1}.sidebar-item-note:hover .delete-note-btn{opacity:1}.sidebar-footer{background-color:#fff;border-top:1px solid #e5e7eb;margin-top:auto;padding:12px}.sidebar-item-footer{margin-bottom:0}.layout{background-color:#fafafa;display:flex;min-height:100vh}.main-content{flex:1 1;margin-left:260px;min-height:100vh;overflow-x:hidden}.dashboard-page{background:linear-gradient(135deg,#f5f7fa,#e8ecf1);min-height:100vh;padding:32px 24px}.dashboard-header{margin:0 auto 40px;max-width:1400px;text-align:center}.dashboard-header h1{color:#1a202c;font-size:2.5rem;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.dashboard-subtitle{color:#64748b;font-size:1.125rem;font-weight:400;margin:0}.dashboard-section{margin:0 auto 48px;max-width:1400px}.section-title{border-bottom:2px solid #e2e8f0;color:#1a202c;font-size:1.5rem;font-weight:700;letter-spacing:-.3px;margin:0 0 24px;padding-bottom:12px}.metric-cards-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.metric-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.metric-card:before{background:linear-gradient(90deg,#3b82f6,#8b5cf6);content:"";height:4px;left:0;position:absolute;right:0;top:0}.metric-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.metric-card-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.metric-card-title{color:#1e293b;font-size:1.125rem;font-weight:600;letter-spacing:-.2px;margin:0}.metric-card-period{background:#f1f5f9;border-radius:12px;color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.metric-card-body{display:flex;flex-direction:column;gap:12px}.metric-card-value{font-size:2rem;font-weight:700;letter-spacing:-.5px;line-height:1.2}.metric-card-subtitle{color:#64748b;font-size:.875rem;line-height:1.5;margin-top:4px}.metric-card-trend{align-items:center;display:flex;font-size:.875rem;font-weight:600;gap:4px;margin-top:4px}.metric-list{display:flex;flex-direction:column;gap:12px}.metric-list-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:space-between;padding:12px;transition:all .2s ease}.metric-list-item:hover{background:#f1f5f9;border-color:#cbd5e1}.metric-list-info{align-items:center;display:flex;flex:1 1;gap:12px}.metric-list-rank{align-items:center;background:#e2e8f0;border-radius:6px;color:#64748b;display:flex;font-size:.75rem;font-weight:700;height:24px;justify-content:center;width:24px}.metric-list-details{display:flex;flex-direction:column;gap:2px}.metric-list-name{color:#1e293b;font-size:.9375rem;font-weight:600}.metric-list-code{color:#64748b;font-size:.75rem}.metric-list-value{color:#3b82f6;font-size:1.125rem;font-weight:700;letter-spacing:-.2px}.metric-empty{color:#94a3b8;font-size:.875rem;padding:24px;text-align:center}.charity-details{display:flex;flex-direction:column;gap:12px}.charity-item{align-items:center;color:#475569;display:flex;font-size:.9375rem;justify-content:space-between}.charity-value{color:#1e293b;font-weight:600}.dashboard-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));margin:0 auto;max-width:1400px}.dashboard-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:24px}.chart-title{color:#1e293b;font-size:1.125rem;font-weight:600;letter-spacing:-.2px;margin:0 0 20px}@media (max-width:1200px){.dashboard-grid{grid-template-columns:1fr}.metric-cards-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (max-width:768px){.dashboard-page{padding:24px 16px}.dashboard-header h1{font-size:2rem}.section-title{font-size:1.25rem}.metric-cards-grid{grid-template-columns:1fr}.metric-card-value{font-size:1.5rem}.dashboard-grid{grid-template-columns:1fr}}.currency-tabs{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:8px;padding:4px}.currency-tab{background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:600;padding:8px 20px;transition:all .2s ease;white-space:nowrap}.currency-tab:hover{background:#e2e8f0;color:#475569}.currency-tab.active{background:linear-gradient(90deg,#3b82f6,#8b5cf6);box-shadow:0 2px 4px #3b82f64d;color:#fff}.currency-tab.active:hover{background:linear-gradient(90deg,#2563eb,#7c3aed)}@media (max-width:480px){.metric-card{padding:20px}.metric-card-header{align-items:flex-start;flex-direction:column;gap:8px}.metric-card-value{font-size:1.375rem}.currency-tabs{justify-content:center;width:100%}.currency-tab{flex:1 1;padding:10px 16px}}.excel-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;margin:0 auto;max-width:1400px;overflow:hidden}.excel-toolbar{align-items:center;background-color:#fff;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;flex-wrap:wrap;gap:8px;top:0;z-index:100}.excel-toolbar,.selection-stats-bar{margin:0;padding:12px 20px;position:-webkit-sticky;position:sticky}.selection-stats-bar{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-bottom:2px solid #0ea5e9;box-shadow:0 2px 4px #0000000d;top:60px;z-index:99}.selection-stats-header{align-items:center;border-bottom:1px solid #bae6fd;display:flex;justify-content:space-between;margin-bottom:10px;padding-bottom:8px}.selection-stats-title{align-items:center;color:#0369a1;display:flex;font-size:.875rem;font-weight:600;gap:6px}.selection-stats-count{background-color:#fff;border-radius:12px;color:#0284c7;font-size:.75rem;font-weight:500;padding:4px 10px}.selection-stats-content{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px}.selection-stat-column{background-color:#fff;border:1px solid #bae6fd;border-radius:6px;box-shadow:0 1px 2px #0000000d;min-width:180px;padding:10px 14px}.selection-stat-header{border-bottom:1px solid #e0f2fe;color:#0c4a6e;font-size:.8125rem;font-weight:600;margin-bottom:8px;padding-bottom:6px}.selection-stat-values{display:flex;flex-direction:column;gap:4px}.selection-stat-item{align-items:center;display:flex;font-size:.75rem;justify-content:space-between;padding:2px 0}.selection-stat-item .stat-label{color:#64748b;font-weight:500;margin-right:8px}.selection-stat-item .stat-value{color:#0c4a6e;font-family:Courier New,monospace;font-weight:600}.selection-stat-item .stat-note{color:#94a3b8;font-size:.7rem;font-style:italic;margin-left:6px}.selection-stat-item.stat-warning{background-color:#fef3c7;border-radius:4px;margin-top:4px;padding:4px 6px}.selection-stat-item.stat-warning .stat-label{color:#92400e}.selection-stat-item.stat-warning .stat-value{color:#b45309}.excel-toolbar+.excel-table-wrapper,.selection-stats-bar+.excel-table-wrapper{border-top:none;margin-top:0;padding-top:0}.excel-toolbar+.selection-stats-bar{border-top:none;margin-top:0}.toolbar-separator{background-color:#e5e7eb;height:24px;margin:0 4px;width:1px}.toolbar-button{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:6px 14px;transition:all .2s ease}.toolbar-button:hover{background-color:#f9fafb;border-color:#d1d5db;color:#111827}.toolbar-button.export-button{background-color:#2563eb;border-color:#2563eb;color:#fff}.toolbar-button.export-button:hover{background-color:#1d4ed8;border-color:#1d4ed8;color:#fff}.export-pdf-dropdown{display:inline-block;position:relative}.export-menu{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;left:0;margin-top:4px;min-width:160px;overflow:hidden;position:absolute;top:100%;z-index:1000}.export-menu-item{background-color:#fff;border:none;color:#374151;cursor:pointer;display:block;font-size:.875rem;font-weight:500;padding:10px 16px;text-align:left;transition:background-color .15s ease;width:100%}.export-menu-item:hover{background-color:#f9fafb;color:#111827}.export-menu-item:first-child{border-top-left-radius:6px;border-top-right-radius:6px}.export-menu-item:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}.excel-table-wrapper{display:block;flex:1 1;line-height:0;margin:0;max-height:calc(100vh - 200px);overflow-x:auto;overflow-y:auto;padding:0}.excel-table-wrapper>*{line-height:normal}.excel-table{border:0;border-collapse:collapse;border-spacing:0;display:table;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.875rem;margin:0;padding:0;table-layout:fixed;vertical-align:initial;width:100%}.excel-table thead{border:0;display:table-header-group;margin:0;padding:0;vertical-align:middle}.excel-table thead tr{border:0;display:table-row;margin:0;padding:0}.excel-table thead tr:first-child{margin-top:0;padding-top:0}.excel-table td,.excel-table th{border:1px solid #e5e7eb;height:auto;line-height:1.5;margin:0;min-height:40px;overflow:hidden;padding:10px 14px;position:relative;text-align:left;text-overflow:ellipsis;vertical-align:middle}.excel-table td.sno-column-cell,.excel-table th.sno-column-header{padding:4px 2px!important}.excel-table th{padding:6px 8px;white-space:nowrap}.header-text{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.excel-table thead th:first-child{border-top:1px solid #e5e7eb}.column-header,.row-header{background-color:#f9fafb;color:#6b7280;font-size:.75rem;font-weight:500;min-width:48px;text-align:center;-webkit-user-select:none;user-select:none;width:48px}.column-header.sno-column-header{max-width:50px!important;min-width:50px!important;width:50px!important}.excel-table td.sno-column-cell,.excel-table th.sno-column-header,.sno-column-cell,.sno-column-header,table.excel-table td.sno-column-cell,table.excel-table th.sno-column-header,td.sno-column-cell,th.sno-column-header{background-color:#f9fafb!important;box-shadow:2px 0 4px #0000001a!important;box-sizing:border-box!important;flex:none!important;flex-grow:0!important;flex-shrink:0!important;font-size:.7rem!important;left:0!important;max-width:50px!important;min-width:50px!important;overflow:hidden!important;padding:4px 2px!important;position:-webkit-sticky!important;position:sticky!important;text-align:center!important;white-space:nowrap!important;width:50px!important}.sno-column-header{font-size:.65rem!important;padding:2px!important;z-index:20}.sno-column-header .header-title-row{justify-content:center!important;margin:0!important;min-height:auto!important;padding:0!important}.sno-column-header .header-title-row span{font-size:.65rem!important;line-height:1!important;margin:0!important;padding:0!important}.sno-column-cell{cursor:default;font-size:.7rem!important;padding:4px 2px!important;-webkit-user-select:none;user-select:none;z-index:5}.sno-column-cell:hover{background-color:#f3f4f6}.excel-cell{background-color:#fff;color:#111827;cursor:cell;position:relative;transition:background-color .15s ease}.excel-cell:hover{background-color:#f9fafb}.excel-cell.selected{background-color:#dbeafe;outline:2px solid #2563eb;outline-offset:-2px;position:relative;z-index:1}.excel-cell.selected:focus-within{outline:2px solid #1d4ed8}.excel-cell.selected.range-start{border-top-left-radius:0}.excel-cell.selected.range-end{border-bottom-right-radius:0}.excel-table-wrapper.selecting{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.excel-cell.fill-range{background-color:#dbeafe;outline:1px solid #60a5fa;outline-offset:-1px}.fill-handle{background-color:#2563eb;border:1px solid #fff;bottom:0;cursor:crosshair;height:8px;position:absolute;right:0;width:8px;z-index:10}.fill-handle:hover{background-color:#1d4ed8;height:10px;width:10px}.excel-cell.header-cell{background-color:#f9fafb;color:#374151;font-weight:500}.cell-input{background:#0000;border:none;height:100%;padding:0}.cell-input,.header-input{font-family:inherit;font-size:inherit;outline:none;width:100%}.header-input{background:#fff;border:2px solid #2563eb;border-radius:4px;font-weight:500;padding:4px 8px}.header-input:focus{box-shadow:0 0 0 3px #2563eb1a}.header-text{padding:2px 4px;-webkit-user-select:none;user-select:none}.header-text-editable{border-radius:4px;cursor:pointer;padding:2px 4px;transition:background-color .15s ease}.header-text-editable:hover{background-color:#f3f4f6}.filter-button,.sort-button{align-items:center;background:none;border:none;border-radius:3px;color:#6b7280;cursor:pointer;display:flex;flex:1 1;font-size:.75rem;height:20px;justify-content:center;min-width:24px;padding:2px 6px;transition:all .15s ease}.filter-button:hover,.sort-button:hover{background-color:#e5e7eb;color:#374151}.filter-button.active,.sort-button.active{background-color:#2563eb;color:#fff}.filter-input-container{align-items:center;background:#fff!important;border:2px solid #2563eb!important;border-radius:4px;box-shadow:0 8px 24px #0006!important;display:flex;gap:4px;isolation:isolate;max-width:400px;min-width:200px;padding:8px;pointer-events:auto!important;position:fixed!important;transform:translateZ(0)!important;-webkit-transform:translateZ(0)!important;z-index:999999!important}.filter-input{border:1px solid #d1d5db;border-radius:4px;flex:1 1;font-size:.875rem;outline:none;padding:4px 8px}.filter-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.clear-filter-btn{background:none;border:none;border-radius:3px;color:#6b7280;cursor:pointer;font-size:1.2rem;line-height:1;padding:0 4px}.clear-filter-btn:hover{background-color:#f3f4f6;color:#111827}.excel-table-wrapper::-webkit-scrollbar{height:10px;width:10px}.excel-table-wrapper::-webkit-scrollbar-track{background:#f9fafb}.excel-table-wrapper::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:5px}.excel-table-wrapper::-webkit-scrollbar-thumb:hover{background:#9ca3af}.excel-table.fixed-headers thead{position:-webkit-sticky;position:sticky;top:0;z-index:10}.excel-table.fixed-headers thead th{background-color:#f9fafb;position:-webkit-sticky;position:sticky;top:0;z-index:11}.excel-table.fixed-headers thead th .filter-input-container{position:absolute!important;z-index:100000!important}.excel-table.fixed-headers thead th.row-header{z-index:12}.excel-table.fixed-headers thead th.sno-column-header{max-width:50px!important;min-width:50px!important;top:0;width:50px!important;z-index:20}.excel-table.fixed-headers tbody td.sno-column-cell{max-width:50px!important;min-width:50px!important;width:50px!important;z-index:6}.excel-table.fixed-headers .totals-row th{position:-webkit-sticky;position:sticky;top:0;z-index:13}.excel-table.fixed-headers .totals-row th.sno-column-header{max-width:50px!important;min-width:50px!important;top:0;width:50px!important;z-index:21}.excel-table.fixed-headers .currency-totals-row th{background-color:#f9fafb;position:-webkit-sticky;position:sticky;z-index:13}.excel-table.fixed-headers .currency-totals-row:first-child th{top:0}.excel-table.fixed-headers .currency-totals-row:not(:first-child) th{top:40px}.excel-table.fixed-headers .currency-totals-row th.sno-column-header{max-width:50px!important;min-width:50px!important;width:50px!important;z-index:21}.excel-table.fixed-headers thead tr:last-child th{background-color:#f9fafb;position:-webkit-sticky;position:sticky;z-index:11}.excel-table.fixed-headers thead tr:only-child th{top:0}.excel-table.fixed-headers thead tr:last-child:not(:only-child) th{top:40px}.excel-table.fixed-headers thead tr:nth-last-child(3)~tr:last-child th{top:80px}.excel-table.fixed-headers thead tr:last-child th.sno-column-header{max-width:50px!important;min-width:50px!important;width:50px!important;z-index:20}.totals-row{background-color:#f3f4f6;margin:0;padding:0}.currency-totals-row{background-color:#f9fafb;border-top:1px solid #e5e7eb;margin:0;padding:0}.currency-totals-row th{background-color:#f9fafb}.currency-totals-row th,.totals-header-cell{border-bottom:2px solid #d1d5db;color:#111827;font-weight:600;padding:8px 14px;text-align:right}.totals-header-cell,.totals-row td{background-color:#f3f4f6}.totals-row td{border-bottom:2px solid #d1d5db;border-top:2px solid #d1d5db;font-weight:600;padding:8px 14px;text-align:right}.total-value{color:#16a34a;font-weight:700}.net-profit-total{background-color:#f0fdf4!important}.net-profit-value{color:#16a34a;font-weight:700}.excel-cell span[style*="color: rgb(220, 38, 38)"]{color:#dc2626!important;font-weight:500}.excel-table tr.empty-row td{height:64px;min-height:64px;padding-bottom:16px;padding-top:16px}.dropdown-arrow{color:#6b7280;cursor:pointer;font-size:.7rem;right:8px;top:50%;transform:translateY(-50%);z-index:1}.currency-dropdown,.dropdown-arrow{pointer-events:auto;position:absolute}.currency-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #0000001a;left:0;margin-top:2px;overflow:hidden;right:0;top:100%;z-index:10000}.dropdown-option{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:.875rem;justify-content:space-between;padding:8px 12px;transition:background-color .15s ease}.dropdown-option:hover{background-color:#f9fafb}.dropdown-option:active{background-color:#eff6ff}.add-currency-option{border-top:1px solid #e5e7eb;color:#2563eb;font-weight:500;margin-top:4px;padding-top:8px}.add-currency-option:hover{background-color:#eff6ff}.remove-currency-btn{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:1.2rem;line-height:1;opacity:0;padding:0 4px;transition:color .15s ease}.dropdown-option:hover .remove-currency-btn{opacity:1}.remove-currency-btn:hover{color:#ef4444}.header-content{display:flex;flex-direction:column;min-height:100%;position:relative;width:100%}.header-title-row{justify-content:space-between;min-height:24px;padding:4px 0}.header-actions-row,.header-title-row{align-items:center;display:flex;gap:4px;width:100%}.header-actions-row{border-top:1px solid #e5e7eb;justify-content:center;padding:2px 0}.column-resizer{background-color:initial;cursor:col-resize;height:100%;position:absolute;right:-2px;top:0;touch-action:none;transition:background-color .15s ease;-webkit-user-select:none;user-select:none;width:6px;z-index:15}.column-resizer:hover{background-color:#2563eb;width:6px}.column-resizer:active{background-color:#1d4ed8;width:6px}.excel-table-wrapper.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.excel-table-wrapper.resizing *{cursor:col-resize!important}.column-header{position:relative;-webkit-user-select:none;user-select:none}.row-header-content{align-items:center;display:flex;gap:8px;justify-content:space-between;padding:0 8px;position:relative;width:100%}.row-header-content span{flex:1 1;text-align:left}.delete-column-btn,.delete-row-btn{align-items:center;background:none;border:none;border-radius:3px;color:#9ca3af;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;height:18px;justify-content:center;line-height:1;margin-left:auto;opacity:.6;padding:2px;transition:all .15s ease;width:18px}.delete-column-btn:hover,.delete-row-btn:hover{background-color:#fee2e2;color:#ef4444;opacity:1}.column-header:hover .delete-column-btn,.row-header:hover .delete-row-btn,.sno-column-cell:hover .delete-row-btn{opacity:1}.sno-column-cell .delete-row-btn{opacity:.6}.sno-column-cell:hover .delete-row-btn{opacity:1}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.modal-content{background:#fff;border-radius:8px;box-shadow:0 10px 25px #0003;min-width:320px;padding:24px}.modal-content h3{color:#111827;font-size:1.25rem;font-weight:500;margin:0 0 16px}.currency-input{border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;margin-bottom:16px;padding:10px 12px;transition:border-color .15s ease;width:100%}.currency-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.modal-actions{display:flex;gap:8px;justify-content:flex-end}.modal-button{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .15s ease}.modal-button:hover{background-color:#f9fafb;border-color:#d1d5db}.modal-button.primary{background-color:#2563eb;border-color:#2563eb;color:#fff}.modal-button.primary:hover{background-color:#1d4ed8;border-color:#1d4ed8}.table-page{background-color:#fafafa;min-height:100vh;padding:32px 40px}.table-header{align-items:center;display:flex;margin:0 auto 24px;max-width:1400px}.table-header h1{color:#111827;font-size:1.75rem;font-weight:500;letter-spacing:-.3px;margin:0}.table-name-editable{align-items:center;cursor:pointer;display:inline-flex;gap:8px;transition:color .2s ease;-webkit-user-select:none;user-select:none}.table-name-editable:hover{color:#2563eb}.edit-icon{color:#6b7280;font-size:1rem;opacity:0;transition:opacity .2s ease}.table-name-editable:hover .edit-icon{opacity:1}.table-name-input{background-color:#fff;border:2px solid #2563eb;border-radius:6px;color:#111827;font-family:inherit;font-size:1.75rem;font-weight:500;letter-spacing:-.3px;max-width:500px;min-width:200px;outline:none;padding:4px 12px}.table-name-input:focus{box-shadow:0 0 0 3px #2563eb1a}.delete-table-header-btn{align-items:center;background:none;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .15s ease}.delete-table-header-btn:hover{background-color:#fef2f2;color:#dc2626}.settings-container{margin:0 auto;max-width:800px;padding:24px}.settings-header{margin-bottom:32px}.settings-title{color:#111827;font-size:2rem;font-weight:600;margin:0 0 8px}.settings-subtitle{color:#6b7280;font-size:1rem;margin:0}.settings-user-info{color:#6b7280;font-size:.875rem;margin:12px 0 0}.settings-user-info strong{color:#111827;font-weight:600}.settings-content{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.settings-tabs{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex}.settings-tab{background:none;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;flex:1 1;font-size:.9375rem;font-weight:500;padding:16px 24px;transition:all .2s}.settings-tab:hover{background-color:#f3f4f6;color:#111827}.settings-tab.active{background-color:#fff;border-bottom-color:#2563eb;color:#2563eb}.settings-panel{padding:32px}.settings-form-container{max-width:500px}.settings-form-title{color:#111827;font-size:1.5rem;font-weight:600;margin:0 0 8px}.settings-form-description{color:#6b7280;font-size:.875rem;margin:0 0 24px}.settings-form-description strong{color:#111827;font-weight:600}.settings-form{gap:20px;margin-top:24px}.form-group,.settings-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#374151;font-size:.875rem;font-weight:500}.form-input{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:.9375rem;padding:10px 12px;transition:all .2s}.form-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.form-input:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.6}.alert{border-radius:6px;font-size:.875rem;font-weight:500;padding:12px 16px}.alert-error{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.alert-success{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.btn{border:none;border-radius:6px;cursor:pointer;font-family:inherit;font-size:.9375rem;font-weight:500;padding:10px 20px;transition:all .2s}.btn-primary{background-color:#2563eb;color:#fff}.btn-primary:hover:not(:disabled){background-color:#1d4ed8}.btn-primary:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.6}.settings-footer{border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;margin-top:32px;padding-top:24px}.btn-logout{background-color:#dc2626;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9375rem;font-weight:500;padding:10px 20px;transition:all .2s}.btn-logout:hover{background-color:#b91c1c}.btn-logout:active{transform:scale(.98)}


/*!
 * Quill Editor v1.3.7
 * https://quilljs.com/
 * Copyright (c) 2014, Jason Chen
 * Copyright (c) 2013, salesforce.com
 */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{height:1px;left:-100000px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{word-wrap:break-word;box-sizing:border-box;height:100%;line-height:1.42;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap}.ql-editor>*{cursor:text}.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor ol,.ql-editor p,.ql-editor pre,.ql-editor ul{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;margin:0;padding:0}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"\2022"}.ql-editor ul[data-checked=false],.ql-editor ul[data-checked=true]{pointer-events:none}.ql-editor ul[data-checked=false]>li *,.ql-editor ul[data-checked=true]>li *{pointer-events:all}.ql-editor ul[data-checked=false]>li:before,.ql-editor ul[data-checked=true]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"\2611"}.ql-editor ul[data-checked=false]>li:before{content:"\2610"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-increment:list-0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow .ql-toolbar:after,.ql-snow.ql-toolbar:after{clear:both;content:"";display:table}.ql-snow .ql-toolbar button,.ql-snow.ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow .ql-toolbar button svg,.ql-snow.ql-toolbar button svg{float:left;height:100%}.ql-snow .ql-toolbar button:active:hover,.ql-snow.ql-toolbar button:active:hover{outline:none}.ql-snow .ql-toolbar input.ql-image[type=file],.ql-snow.ql-toolbar input.ql-image[type=file]{display:none}.ql-snow .ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar button.ql-active,.ql-snow .ql-toolbar button:focus,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar button.ql-active,.ql-snow.ql-toolbar button:focus,.ql-snow.ql-toolbar button:hover{color:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill{fill:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter{stroke:#06c}@media (pointer:coarse){.ql-snow .ql-toolbar button:hover:not(.ql-active),.ql-snow.ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-stroke.ql-thin,.ql-snow .ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{margin-bottom:5px;margin-top:5px;padding:5px 10px;white-space:pre-wrap}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;padding:2px 4px;width:24px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid #0000;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{margin-top:-9px;position:absolute;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-item:before,.ql-snow .ql-picker.ql-header .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-item:before,.ql-snow .ql-picker.ql-font .ql-picker-label:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-item:before,.ql-snow .ql-picker.ql-size .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid #0000}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid #0000;box-shadow:0 2px 8px #0003}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{border:1px solid #ccc;display:none;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.note-page{flex-direction:column;height:100vh}.note-header,.note-page{background-color:#fff;display:flex}.note-header{align-items:center;border-bottom:1px solid #e5e7eb;flex-shrink:0;gap:16px;padding:20px 24px;z-index:10}.note-name-editable{align-items:center;border-radius:6px;color:#111827;cursor:pointer;display:flex;font-size:1.5rem;font-weight:600;gap:8px;padding:4px 8px;transition:background-color .2s ease}.note-name-editable:hover{background-color:#f9fafb}.note-name-editable .edit-icon{color:#9ca3af;font-size:.875rem;opacity:0;transition:opacity .2s ease}.note-name-editable:hover .edit-icon{opacity:1}.note-name-input{background-color:#fff;border:2px solid #2563eb;border-radius:6px;color:#111827;font-size:1.5rem;font-weight:600;outline:none;padding:8px 12px}.note-saving-indicator{color:#6b7280;font-size:.875rem;font-style:italic}.delete-note-header-btn{align-items:center;background:none;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s ease}.delete-note-header-btn:hover{background-color:#fef2f2;color:#dc2626}.note-toolbar-btn{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;display:flex;font-size:.875rem;gap:4px;padding:8px 12px;transition:all .2s ease}.note-toolbar-btn:hover:not(:disabled){background:#e5e7eb;border-color:#d1d5db}.note-toolbar-btn:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.5}.note-export-dropdown{position:relative}.note-export-menu{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a;display:block;margin-top:4px;min-width:160px;position:absolute;right:0;top:100%;z-index:100}.note-export-menu button{background:none;border:none;color:#374151;cursor:pointer;display:block;font-size:.875rem;padding:10px 16px;text-align:left;transition:background-color .2s;width:100%}.note-export-menu button:hover{background-color:#f9fafb}.note-export-menu button:first-child{border-radius:6px 6px 0 0}.note-export-menu button:last-child{border-radius:0 0 6px 6px}.note-settings-panel{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;padding:20px 24px;z-index:5}.note-settings-input{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;outline:none;padding:8px 12px;transition:border-color .2s;width:100%}.note-settings-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.note-settings-close-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;margin-top:16px;padding:8px 16px;transition:background-color .2s}.note-settings-close-btn:hover{background:#2563eb}.note-content-wrapper{background-color:#fff;flex:1 1;overflow:auto;padding:24px}.note-content-wrapper .ql-container{border:none;font-family:inherit;font-size:inherit;height:calc(100vh - 300px)}.note-content-wrapper .ql-editor{font-family:inherit;font-size:inherit;line-height:inherit;min-height:calc(100vh - 300px);padding:24px}.note-content-wrapper .ql-editor.ql-blank:before{left:24px!important;padding:0!important;right:24px!important;top:24px!important}.note-content-wrapper .ql-toolbar{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px 6px 0 0;padding:12px}.note-content-wrapper .ql-container{border:1px solid #e5e7eb;border-radius:0 0 6px 6px;border-top:none}.note-content-wrapper .ql-toolbar .ql-stroke{stroke:#374151}.note-content-wrapper .ql-toolbar .ql-fill{fill:#374151}.note-content-wrapper .ql-toolbar button{color:inherit!important;opacity:1!important;visibility:visible!important}.note-content-wrapper .ql-toolbar button:hover{background-color:initial!important;color:#4b5563!important}.note-content-wrapper .ql-toolbar button:hover,.note-content-wrapper .ql-toolbar button:hover>*,.note-content-wrapper .ql-toolbar button>*{opacity:1!important;visibility:visible!important}.note-content-wrapper .ql-toolbar button.ql-active{background-color:initial!important;color:#3b82f6;opacity:1!important;visibility:visible!important}.note-content-wrapper .ql-toolbar button:hover .ql-stroke{stroke:#4b5563}.note-content-wrapper .ql-toolbar button.ql-active .ql-stroke{stroke:#3b82f6}.note-content-wrapper .ql-toolbar button:hover .ql-fill{fill:#4b5563}.note-content-wrapper .ql-toolbar button.ql-active .ql-fill{fill:#3b82f6}.note-content-wrapper .ql-toolbar .ql-picker-label,.note-content-wrapper .ql-toolbar button{background-color:initial;cursor:pointer}.note-loading{align-items:center;color:#6b7280;display:flex;font-size:1rem;height:100vh;justify-content:center}.note-content-wrapper::-webkit-scrollbar{width:8px}.note-content-wrapper::-webkit-scrollbar-track{background:#0000}.note-content-wrapper::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.note-content-wrapper::-webkit-scrollbar-thumb:hover{background:#9ca3af}.file-manager{margin:0 auto;max-width:1200px;padding:24px}.file-manager-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.file-manager-header h1{color:#111827;font-size:28px;font-weight:600;margin:0}.file-manager-actions{display:flex;gap:12px}.upload-button{align-items:center;background-color:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:background-color .2s}.upload-button:hover{background-color:#2563eb}.upload-button svg{height:20px;width:20px}.upload-progress{background-color:#f3f4f6;border-radius:8px;margin-bottom:24px;padding:16px}.upload-progress-bar{background-color:#e5e7eb;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden;width:100%}.upload-progress-fill{background-color:#3b82f6;height:100%;transition:width .3s ease}.upload-progress-text{color:#6b7280;font-size:14px;text-align:center}.file-manager-empty,.file-manager-loading{color:#6b7280;padding:60px 20px;text-align:center}.file-manager-empty .empty-icon{font-size:64px;margin-bottom:16px}.file-manager-empty p{font-size:16px;margin:8px 0}.file-manager-empty .empty-hint{color:#9ca3af;font-size:14px}.file-manager-list{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.files-table{border-collapse:collapse;width:100%}.files-table thead{background-color:#f9fafb}.files-table th{border-bottom:1px solid #e5e7eb;color:#374151;font-weight:600;text-align:left}.files-table td,.files-table th{font-size:14px;padding:12px 16px}.files-table td{border-bottom:1px solid #f3f4f6}.files-table tbody tr:hover{background-color:#f9fafb}.files-table tbody tr:last-child td{border-bottom:none}.file-name-cell{align-items:center;display:flex;gap:12px}.file-icon{flex-shrink:0;font-size:20px}.file-name{color:#111827;flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-date-cell,.file-size-cell{color:#6b7280;white-space:nowrap}.file-actions-cell{display:flex;gap:8px;justify-content:flex-end}.action-btn{align-items:center;background-color:initial;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:inline-flex;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.action-btn:hover{background-color:#f3f4f6;border-color:#d1d5db}.download-btn:hover{border-color:#3b82f6;color:#3b82f6}.delete-btn:hover{border-color:#ef4444;color:#ef4444}.action-btn svg{height:16px;width:16px}@media (max-width:768px){.file-manager{padding:16px}.file-manager-header{align-items:flex-start;flex-direction:column;gap:16px}.files-table{font-size:12px}.files-table td,.files-table th{padding:8px 12px}.file-name{max-width:150px}}.App{min-height:100vh;width:100%}
/*# sourceMappingURL=main.6635a348.css.map*/