.note-chat-panel{width:320px;min-width:280px;max-width:400px;background:var(--bg-primary);border-left:1px solid var(--border-primary);display:flex;flex-direction:column;height:100%}.note-chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.note-chat-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--text-primary)}.note-chat-title svg{color:var(--accent-primary)}.note-chat-close{background:transparent;border:none;padding:4px;cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);transition:all .15s ease}.note-chat-close:hover{color:var(--text-primary);background:var(--bg-hover)}.note-chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.note-chat-welcome{color:var(--text-secondary);font-size:13px;line-height:1.5}.note-chat-welcome p{margin-bottom:8px}.note-chat-welcome ul{list-style:none;padding:0;margin:0}.note-chat-welcome li{padding:4px 0;color:var(--text-muted);font-style:italic}.note-chat-welcome li:before{content:"•";color:var(--accent-primary);margin-right:8px}.note-chat-message{max-width:90%;padding:10px 14px;border-radius:12px;font-size:13px;line-height:1.5}.note-chat-message.user{align-self:flex-end;background:var(--message-own-bg, var(--accent-primary));color:var(--message-own-text, white);border-bottom-right-radius:4px}.note-chat-message.assistant{align-self:flex-start;background:var(--bg-tertiary);color:var(--text-primary);border-bottom-left-radius:4px}.note-chat-message-content{white-space:pre-wrap;word-wrap:break-word}.note-chat-edit-proposal{margin-top:12px;padding:12px;background:var(--bg-secondary);border:1px solid var(--accent-primary);border-radius:8px}.note-chat-edit-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--accent-primary);margin-bottom:8px}.note-chat-edit-preview{font-size:12px;color:var(--text-secondary);background:var(--bg-primary);padding:8px;border-radius:4px;max-height:120px;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word}.note-chat-edit-actions{display:flex;gap:8px;margin-top:10px}.note-chat-edit-actions button{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-accept{background:var(--success);color:#fff;border:none}.btn-accept:hover{filter:brightness(1.1)}.btn-reject{background:transparent;color:var(--text-secondary);border:1px solid var(--border-primary)}.btn-reject:hover{background:var(--bg-hover);color:var(--text-primary)}.note-chat-edit-accepted{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:12px;color:var(--success)}.note-chat-edit-rejected{margin-top:8px;font-size:12px;color:var(--text-muted);font-style:italic}.note-chat-typing{display:flex;gap:4px;padding:4px 0}.note-chat-typing span{width:6px;height:6px;background:var(--text-muted);border-radius:50%;animation:note-typing 1.4s infinite ease-in-out both}.note-chat-typing span:nth-child(1){animation-delay:-.32s}.note-chat-typing span:nth-child(2){animation-delay:-.16s}@keyframes note-typing{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.note-chat-error{padding:10px 14px;background:var(--danger-bg);color:var(--danger);border-radius:8px;font-size:13px}.note-chat-commands{display:flex;flex-wrap:wrap;gap:6px;padding:8px 0}.note-chat-command{padding:4px 10px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-full);font-size:11px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.note-chat-command:hover{background:var(--accent-overlay);border-color:var(--accent-primary);color:var(--accent-primary)}.note-chat-input-container{padding:12px;border-top:1px solid var(--border-primary);background:var(--bg-secondary)}.note-chat-input-wrapper{display:flex;gap:8px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:8px 12px;transition:border-color var(--transition-fast)}.note-chat-input-wrapper:focus-within{border-color:var(--accent-primary)}.note-chat-input{flex:1;background:transparent;border:none;color:var(--text-primary);font-size:13px;resize:none;min-height:20px;max-height:80px;line-height:1.4}.note-chat-input::placeholder{color:var(--text-muted)}.note-chat-input:focus{outline:none}.note-chat-send{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--accent-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.note-chat-send:hover:not(:disabled){background:var(--accent-secondary)}.note-chat-send:disabled{background:var(--bg-hover);color:var(--text-muted);cursor:not-allowed}.modal-with-chat{display:flex;max-width:1000px}.modal-main-content{flex:1;min-width:0}.btn-toggle-chat{display:flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.8rem;cursor:pointer;transition:all var(--transition-fast)}.btn-toggle-chat:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-toggle-chat.active{background:var(--accent-overlay);border-color:var(--accent-primary);color:var(--accent-primary)}.btn-toggle-chat svg{width:16px;height:16px}.form-group-content{flex:1;display:flex;flex-direction:column}.note-content-editor{flex:1;min-height:300px;padding:var(--space-md);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem;line-height:1.6;resize:none;font-family:inherit}.note-content-editor:focus{outline:none;border-color:var(--accent-primary)}.notes-graph-container{flex:1;overflow:auto;padding:var(--space-lg);background:var(--bg-primary)}.tree-graph{min-width:400px;font-family:var(--font-mono, "IBM Plex Mono", "Consolas", monospace);font-size:13px}.tree-branch{margin-bottom:2px}.tree-node{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:background-color .15s ease;position:relative}.tree-node:hover{background:var(--bg-hover)}.tree-node.selected{background:var(--accent-overlay)}.tree-folder{font-weight:500}.tree-note{font-weight:400}.tree-note.pinned{background:var(--accent-overlay)}.tree-note.template{background:#3fb95014}.tree-lines{display:flex;align-items:center;gap:0;min-width:16px;-webkit-user-select:none;user-select:none}.tree-vline{width:16px;height:24px;position:relative}.tree-vline.active:before{content:"";position:absolute;left:8px;top:0;bottom:0;width:1px;background:var(--border-secondary)}.tree-connector{font-family:monospace;color:var(--border-secondary);width:16px;text-align:center;font-size:14px;line-height:1;-webkit-user-select:none;user-select:none}.tree-toggle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:1px solid var(--border-secondary);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);transition:all .15s ease}.tree-toggle:hover{background:var(--bg-hover);border-color:var(--text-muted);color:var(--text-primary)}.tree-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .15s ease}.folder-icon{cursor:pointer}.folder-icon:hover{transform:scale(1.1)}.note-icon{opacity:.8}.tree-label{flex:1;display:flex;align-items:center;gap:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-label{color:var(--text-primary)}.note-label{color:var(--text-secondary)}.tree-node:hover .note-label{color:var(--text-primary)}.tree-count{color:var(--text-muted);font-size:11px;font-weight:400}.tree-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;border-radius:var(--radius-sm);font-size:10px;font-weight:600;text-transform:uppercase}.tree-badge.pinned{font-size:12px;padding:0;background:none}.tree-badge.template{background:var(--success);color:#fff}.tree-category{padding:2px 6px;border-radius:var(--radius-sm);font-size:10px;font-weight:500;color:#fff;text-transform:uppercase}.tree-children{margin-left:0}.unfiled-section{margin-top:16px;padding-top:16px;border-top:1px dashed var(--border-secondary)}.tree-folder.unfiled{opacity:.7}.tree-folder.unfiled:hover{opacity:1}.tree-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 32px;color:var(--text-muted);text-align:center}.tree-empty svg{margin-bottom:16px;opacity:.5}.tree-empty p{margin:0 0 8px;font-size:14px}.tree-empty-hint{font-size:12px;opacity:.7}[data-theme=ledger] .tree-graph{font-family:var(--font-mono, "IBM Plex Mono", monospace)}[data-theme=ledger] .tree-node{border-radius:0;border-bottom:1px solid transparent}[data-theme=ledger] .tree-node:hover{background:#ffffff08;border-bottom-color:var(--ledger-line)}[data-theme=ledger] .tree-node.selected{background:#ffffff0d;border-bottom-color:var(--accent-primary)}[data-theme=ledger] .tree-toggle{border-radius:0}[data-theme=ledger] .tree-connector{color:var(--ledger-line)}[data-theme=ledger] .tree-vline.active:before{background:var(--ledger-line)}[data-theme=ledger] .tree-badge,[data-theme=ledger] .tree-category{border-radius:0}@media (max-width: 768px){.note-chat-panel{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:100%;min-width:0;z-index:1000;transform:translate(100%);transition:transform .3s ease}.note-chat-panel.open{transform:translate(0)}.tree-graph{min-width:100%;font-size:12px}.tree-node{padding:6px 8px}.tree-label{font-size:12px}.notes-graph-container{padding:var(--space-md)}.modal-with-chat{flex-direction:column;max-width:100%}.modal-main-content{min-height:50vh}.notes-sidebar{width:100%!important;max-width:280px;min-width:200px}.notes-grid{grid-template-columns:1fr}.notes-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.notes-table{min-width:600px}}@media (max-width: 480px){.tree-graph{font-size:11px}.tree-node{padding:5px 6px;gap:4px}.tree-icon svg{width:14px;height:14px}.tree-toggle{width:18px;height:18px}.tree-count{font-size:10px}.tree-category{font-size:9px;padding:1px 4px}}.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);height:100dvh;position:fixed;left:0;top:0;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--glass-border);display:flex;flex-direction:column;z-index:100;transition:transform var(--transition-slow),width var(--transition-slow);text-align:left}.sidebar.collapsed{transform:translate(-100%);width:var(--sidebar-width)}.sidebar-header{padding:var(--space-lg);padding-left:var(--space-sm);border-bottom:1px solid var(--border-secondary);display:flex;align-items:center;gap:var(--space-md)}.sidebar-logo{width:40px;height:40px;background:var(--accent-gradient);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem;color:#fff;flex-shrink:0;box-shadow:var(--accent-glow)}.sidebar-brand{display:flex;flex-direction:column;overflow:hidden}.sidebar-brand-name{font-size:1.125rem;font-weight:700;color:var(--text-primary);white-space:nowrap}.sidebar-brand-tagline{font-size:.75rem;color:var(--text-muted);white-space:nowrap}.sidebar.collapsed .sidebar-brand{display:none}.sidebar-nav{flex:1;padding:var(--space-md);padding-left:var(--space-sm);overflow-y:auto;overflow-x:hidden}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:var(--radius-full)}.nav-section{margin-bottom:var(--space-lg)}.nav-section-title{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:var(--space-sm) 0;margin-bottom:var(--space-xs)}.sidebar.collapsed .nav-section-title{display:none}.nav-item{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-md);padding:var(--space-md);padding-left:var(--space-sm);margin-left:var(--space-xs);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);position:relative;overflow:hidden;border:none;background:transparent;width:calc(100% - var(--space-xs));text-align:left;font-size:.9rem;font-family:inherit}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--accent-overlay);color:var(--accent-primary)}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--accent-primary);border-radius:0 3px 3px 0}.nav-item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.1rem}.nav-item-text{white-space:nowrap;overflow:hidden}.sidebar.collapsed .nav-item-text{display:none}.nav-item-badge{margin-left:auto;background:var(--danger);color:#fff;font-size:.7rem;font-weight:600;padding:2px 6px;border-radius:var(--radius-full);min-width:18px;text-align:center}.sidebar.collapsed .nav-item-badge{display:none}.sidebar-footer{padding:var(--space-md);border-top:1px solid var(--border-secondary)}.sidebar-user{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);background:var(--bg-tertiary);cursor:pointer;transition:background var(--transition-fast)}.sidebar-user:hover{background:var(--bg-hover)}.sidebar-user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--accent-gradient);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;color:#fff;flex-shrink:0}.sidebar-user-info{flex:1;min-width:0;overflow:hidden}.sidebar-user-name{font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-email{font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar.collapsed .sidebar-user-info{display:none}.sidebar-collapse-btn{width:100%;padding:var(--space-sm) var(--space-md);margin-top:var(--space-sm);background:transparent;border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:.8rem;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:var(--space-sm)}.sidebar-collapse-btn:hover{background:var(--bg-hover);color:var(--text-primary);box-shadow:none;transform:none}.main-content{flex:1;margin-left:var(--sidebar-width);min-height:100vh;transition:margin-left var(--transition-slow);display:flex;flex-direction:column}.main-content.sidebar-collapsed{margin-left:0}.top-header{position:sticky;top:0;z-index:50;padding:var(--space-md) var(--space-xl);background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-secondary);display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);flex-wrap:wrap;min-width:0}.header-left{display:flex;align-items:center;gap:var(--space-lg);min-width:0;flex-shrink:1}.header-breadcrumb{display:flex;align-items:center;gap:var(--space-sm);font-size:.875rem;color:var(--text-secondary)}.header-breadcrumb-item,.header-breadcrumb-separator{color:var(--text-muted)}.header-breadcrumb-current{color:var(--text-primary);font-weight:500}.header-actions{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap;min-width:0}@media (max-width: 1280px){.header-btn span{display:none}.header-btn{padding:var(--space-sm)}.theme-selector .header-btn{min-width:0}.header-search input{width:180px}.header-search input:focus{width:220px}.top-header{gap:var(--space-md);padding:var(--space-md) var(--space-lg)}}.header-search{position:relative}.header-search input{width:280px;padding:var(--space-sm) var(--space-md);padding-left:40px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-full);color:var(--text-primary);font-size:.875rem;transition:all var(--transition-fast)}.header-search input:focus{outline:none;border-color:var(--accent-primary);background:var(--bg-secondary);width:320px}.header-search input::placeholder{color:var(--text-muted)}.header-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.header-search-loading{position:absolute;right:12px;top:50%;transform:translateY(-50%)}.loading-spinner-sm{width:14px;height:14px;border:2px solid var(--border-primary);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .6s linear infinite}.search-results-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--glass-shadow);max-height:400px;overflow-y:auto;z-index:1000}.search-results-section{padding:var(--space-sm)}.search-results-section:not(:last-child){border-bottom:1px solid var(--border-secondary)}.search-results-title{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:var(--space-sm) var(--space-sm);margin-bottom:var(--space-xs)}.search-result-item{display:flex;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-sm) var(--space-md);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);text-align:left;font-family:inherit}.search-result-item:hover{background:var(--bg-hover)}.search-result-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0}.search-result-content{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.search-result-primary{font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-secondary{font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-no-results{padding:var(--space-lg);text-align:center;color:var(--text-muted);font-size:.875rem}.header-btn{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-full);color:var(--text-primary);font-size:.8rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);position:relative;white-space:nowrap}.header-btn svg{width:16px;height:16px;flex-shrink:0}.header-btn svg,.header-btn svg path,.header-btn svg line,.header-btn svg polyline,.header-btn svg circle,.header-btn svg rect,.header-btn svg polygon{stroke:currentColor;stroke-width:2;fill:none}.header-btn svg [data-fill=true]{fill:currentColor;stroke:none}.header-btn:hover{background:var(--bg-hover);border-color:var(--accent-primary);color:var(--accent-primary);transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.header-btn:active{transform:translateY(0);box-shadow:none}.header-btn-primary{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.header-btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff;box-shadow:0 2px 12px var(--accent-glow-color, rgba(88, 166, 255, .4))}.header-btn-notifications{position:relative}.header-btn-notifications .notification-dot{position:absolute;top:-2px;right:-2px;width:10px;height:10px;background:var(--danger);border-radius:var(--radius-full);border:2px solid var(--bg-primary);animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.header-btn-logout:hover{border-color:var(--danger);color:var(--danger)}.header-icon-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);position:relative}.header-icon-btn svg{width:22px;height:22px}.header-icon-btn:hover{background:var(--bg-hover);border-color:var(--accent-primary);color:var(--accent-primary)}.header-font-scale{display:flex;align-items:center;gap:2px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:2px}.font-scale-btn{display:flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 7px;background:transparent;border:none;border-radius:var(--radius-sm, 6px);color:var(--text-secondary, var(--text-primary));font-size:13px;font-weight:600;line-height:1;cursor:pointer;transition:all var(--transition-fast)}.font-scale-btn.font-scale-reset{font-size:11px}.font-scale-btn.font-scale-up{font-size:15px}.font-scale-btn:hover{background:var(--bg-hover);color:var(--accent-primary)}.font-scale-btn:active{transform:translateY(1px)}.theme-selector{position:relative}.theme-selector .header-btn{min-width:90px}.theme-selector-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:160px;background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--glass-shadow);padding:var(--space-xs);z-index:1000;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all var(--transition-fast)}.theme-selector.open .theme-selector-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.theme-option{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-md);background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:all var(--transition-fast);text-align:left}.theme-option:hover{background:var(--bg-hover);color:var(--text-primary)}.theme-option.active{background:var(--accent-primary);color:#fff}.theme-option-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.theme-option-label{flex:1}.theme-option-preview{width:16px;height:16px;border-radius:var(--radius-full);border:2px solid currentColor;flex-shrink:0}.theme-option[data-theme=dark] .theme-option-preview{background:linear-gradient(135deg,#080b12 50%,#161b22 50%)}.theme-option[data-theme=light] .theme-option-preview{background:linear-gradient(135deg,#fff 50%,#e9ecef 50%)}.theme-option[data-theme=cream] .theme-option-preview{background:linear-gradient(135deg,#fffef9 50%,#f0ede4 50%)}.theme-option[data-theme=midnight] .theme-option-preview{background:linear-gradient(135deg,#000 50%,#141414 50%)}.theme-option[data-theme=sepia] .theme-option-preview{background:linear-gradient(135deg,#faf6f1 50%,#ede0d4 50%)}.theme-option[data-theme=ledger] .theme-option-preview{background:linear-gradient(135deg,#1a2332 50%,#141c28 50%)}@media (max-width: 768px){.theme-selector-dropdown{max-height:70vh;overflow-y:auto}}.page-content{flex:1;padding:var(--space-xl);padding-bottom:calc(var(--space-xl) + env(safe-area-inset-bottom,0));max-width:1600px;width:100%;margin:0 auto}.mobile-menu-btn{display:none}.sidebar-collapsed .mobile-menu-btn,.main-content.sidebar-collapsed .mobile-menu-btn{display:flex}.sidebar.collapsed.mobile-open{transform:translate(0)}.sidebar.mobile-open{width:var(--sidebar-width)}.sidebar.mobile-open .sidebar-brand,.sidebar.mobile-open .nav-section-title,.sidebar.mobile-open .nav-item-text,.sidebar.mobile-open .nav-item-badge,.sidebar.mobile-open .sidebar-user-info{display:block}.sidebar.mobile-open .sidebar-brand{display:flex}@media (max-width: 768px){.sidebar{transform:translate(-100%);width:min(85%,320px);max-width:320px;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0);padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0);border-right:none}.sidebar.mobile-open{transform:translate(0)}.sidebar:not(.mobile-open){visibility:hidden;transition:transform var(--transition-slow),width var(--transition-slow),visibility var(--transition-slow)}.sidebar.mobile-open .sidebar-header{padding-top:calc(var(--space-lg) + env(safe-area-inset-top,0));padding-right:60px}.main-content,.main-content.sidebar-collapsed{margin-left:0}.header-search input{width:200px}.header-search input:focus{width:240px}.mobile-menu-btn{display:flex!important}.header-btn span{display:none}.header-btn{padding:var(--space-sm)}.theme-selector .header-btn{min-width:0}.header-search{display:none}.header-actions{gap:var(--space-sm)}.header-left{min-width:0}.header-breadcrumb{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-header{padding:var(--space-sm) var(--space-md);padding-top:calc(var(--space-sm) + env(safe-area-inset-top,0))}.page-content{padding:var(--space-md)}.nav-item{padding:var(--space-md) var(--space-md);min-height:48px;font-size:1rem}.nav-item-icon{width:24px;height:24px}.nav-item-icon svg{width:22px;height:22px}.nav-item-text{display:block!important}.nav-section-title{display:block!important;padding:var(--space-md) var(--space-sm);font-size:.75rem}.mobile-close-btn{display:flex;position:absolute;top:calc(var(--space-md) + env(safe-area-inset-top,0));right:var(--space-md);width:40px;height:40px;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;z-index:10;transition:all var(--transition-fast)}.mobile-close-btn:hover,.mobile-close-btn:active{background:var(--bg-hover);color:var(--text-primary)}.sidebar-footer{padding-bottom:calc(var(--space-md) + env(safe-area-inset-bottom,0))}.sidebar-collapse-btn{display:none}.sidebar-user{padding:var(--space-md)}.sidebar-user-info{display:block!important}.sidebar-nav{padding:var(--space-lg);padding-top:var(--space-xl)}.nav-section{margin-bottom:var(--space-xl)}.nav-item{padding:var(--space-lg) var(--space-md);min-height:56px;font-size:1.1rem;border-radius:var(--radius-lg);margin-bottom:var(--space-xs)}.nav-item-icon{width:28px;height:28px}.nav-item-icon svg{width:24px;height:24px}.nav-item.active{background:var(--accent-primary);color:#fff}.nav-item.active:before{display:none}.nav-section-title{font-size:.8rem;padding:var(--space-md) var(--space-md);margin-bottom:var(--space-sm)}.sidebar-footer{padding:var(--space-lg);padding-bottom:calc(var(--space-xl) + env(safe-area-inset-bottom,0))}.sidebar-user{padding:var(--space-lg);border-radius:var(--radius-lg)}.sidebar-user-avatar{width:44px;height:44px;font-size:1rem}.sidebar-user-name{font-size:1rem}.sidebar-user-email{font-size:.875rem}}.mobile-close-btn{display:none}.mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:99;animation:fadeIn .2s ease-out}.time-tracking-section{display:flex;flex-direction:column;gap:var(--space-lg)}.time-tab-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.time-tab-header h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.time-tab-header .subtitle{font-size:.875rem;color:var(--text-muted);margin-top:2px}.time-stats-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-md)}.time-stat-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-md);transition:all var(--transition-fast)}.time-stat-card:hover{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary),var(--accent-glow)}.time-stat-card .label{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:var(--space-xs)}.time-stat-card .value{font-size:1.75rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary)}.time-stat-card .value.accent{color:var(--accent-primary)}.time-stat-card .value.success{color:var(--success)}.time-stat-card .subvalue{font-size:.8rem;color:var(--text-secondary);margin-top:2px}.time-entries-panel{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);overflow:hidden}.time-entries-panel .panel-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:linear-gradient(180deg,var(--bg-tertiary) 0%,transparent 100%);border-bottom:1px solid var(--border-primary)}.time-entries-panel .panel-title-section{display:flex;flex-direction:column;gap:2px}.time-entries-panel .panel-title{font-weight:600;font-size:1rem;color:var(--text-primary)}.time-entries-panel .panel-subtitle{font-size:.8rem;color:var(--text-muted)}.time-entries-panel .panel-controls{display:flex;align-items:center;gap:var(--space-md)}.view-toggle{display:flex;background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:3px;border:1px solid var(--border-primary)}.view-toggle button{padding:6px 14px;font-size:.8rem;font-weight:500;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.view-toggle button:hover:not(.active){color:var(--text-secondary)}.view-toggle button.active{background:var(--accent-primary);color:var(--bg-primary)}.date-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-lg);background:var(--bg-tertiary);border-bottom:1px solid var(--border-secondary)}.date-range-inputs{display:flex;align-items:center;gap:var(--space-md)}.date-input-group{display:flex;align-items:center;gap:var(--space-sm)}.date-input-group label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.date-input-group input[type=date]{padding:6px 10px;font-size:.8rem;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer}.date-input-group input[type=date]:focus{border-color:var(--accent-primary);outline:none}.date-presets{display:flex;gap:4px}.date-presets button,.preset-btn{padding:4px 10px;font-size:.7rem;font-weight:500;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.date-presets button:hover,.preset-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.date-presets button.active,.preset-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--bg-primary)}.refresh-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.refresh-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.refresh-btn svg{width:18px;height:18px}.refresh-btn svg.spinning{animation:spin 1s linear infinite}.error-banner{padding:var(--space-md) var(--space-lg);background:#ef44441a;border-bottom:1px solid rgba(239,68,68,.3)}.error-banner p{color:#ef4444;font-size:.875rem;margin:0}.time-entry-table{width:100%;border-collapse:collapse}.time-entry-table thead{background:var(--bg-tertiary);position:sticky;top:0;z-index:1}.time-entry-table th{padding:var(--space-sm) var(--space-md);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border-primary)}.time-entry-table th.text-right{text-align:right}.time-entry-table tbody tr{border-bottom:1px solid var(--border-secondary);transition:background var(--transition-fast)}.time-entry-table tbody tr:hover{background:var(--bg-hover)}.time-entry-table tbody tr.selected{background:#58a6ff1a}.time-entry-table td{padding:var(--space-sm) var(--space-md);font-size:.875rem;color:var(--text-primary);vertical-align:middle}.time-entry-table td.text-right{text-align:right}.time-entry-table td.text-muted{color:var(--text-muted)}.time-entry-table .description{max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.time-entry-table .hours{font-variant-numeric:tabular-nums;font-weight:600}.time-entry-table .amount{font-variant-numeric:tabular-nums;font-weight:600;color:var(--success)}.checkbox-col,.actions-col{width:40px;text-align:center}.edit-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:.6;transition:all var(--transition-fast)}.edit-btn:hover{opacity:1;background:var(--bg-tertiary);border-color:var(--border-primary);color:var(--accent-primary)}.edit-btn svg{width:14px;height:14px}.description-col{max-width:300px}.description-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.show-note-btn{display:block;margin-top:4px;padding:0;font-size:.75rem;color:var(--accent-primary);background:transparent;border:none;cursor:pointer;text-decoration:underline}.show-note-btn:hover{color:var(--accent-secondary)}.note-row{background:#58a6ff0d}.linked-note{margin-left:40px;padding:var(--space-md);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.linked-note h5{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 var(--space-sm) 0}.linked-note p{font-size:.85rem;color:var(--text-secondary);margin:0;white-space:pre-wrap;line-height:1.5}.activity-badge{display:inline-flex;align-items:center;padding:3px 8px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;border-radius:var(--radius-full)}.activity-badge.research{background:#a855f726;color:#a855f7}.activity-badge.court{background:#ef444426;color:#ef4444}.activity-badge.meeting{background:#3b82f626;color:#3b82f6}.activity-badge.drafting{background:#6366f126;color:#6366f1}.activity-badge.phone_call{background:#eab30826;color:#eab308}.activity-badge.email{background:#06b6d426;color:#06b6d4}.activity-badge.review{background:#22c55e26;color:#22c55e}.activity-badge.travel{background:#f9731626;color:#f97316}.activity-badge.admin{background:#6b728026;color:#9ca3af}.activity-badge.other{background:#94a3b826;color:#94a3b8}.grouped-entries{max-height:500px;overflow-y:auto}.date-group{border-bottom:1px solid var(--border-primary)}.date-group:last-child{border-bottom:none}.group-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);background:var(--bg-tertiary)}.group-title{display:flex;align-items:center;gap:var(--space-md)}.group-title h4{margin:0;font-size:.95rem;font-weight:600;color:var(--text-primary)}.entry-count{font-size:.8rem;color:var(--text-muted)}.group-totals{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.group-hours{font-size:.85rem;color:var(--text-secondary)}.group-amount{font-weight:600;color:var(--success)}.group-entries{padding:0}.entry-card{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-secondary);transition:all var(--transition-fast);cursor:pointer}.entry-card:hover{background:var(--bg-hover)}.entry-card:last-child{border-bottom:none}.entry-card.selected{background:#58a6ff1a;border-left:3px solid var(--accent-primary)}.entry-card-content{display:flex;align-items:flex-start;gap:var(--space-md);flex:1}.entry-card-content input[type=checkbox]{margin-top:4px;flex-shrink:0}.entry-details{flex:1;min-width:0}.entry-description{font-size:.9rem;color:var(--text-primary);line-height:1.4;margin:0}.entry-meta{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-xs);flex-wrap:wrap}.entry-rate{font-size:.8rem;color:var(--text-muted)}.entry-amount{text-align:right;flex-shrink:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.time-entries-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-md) var(--space-lg);background:linear-gradient(0deg,var(--bg-tertiary) 0%,transparent 100%);border-top:1px solid var(--border-primary)}.footer-totals{display:flex;align-items:center;gap:var(--space-xl)}.total-item{display:flex;align-items:center;gap:var(--space-sm)}.total-label{font-size:.8rem;color:var(--text-muted)}.total-value{font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-primary)}.total-value.highlight{color:var(--success);font-size:1.1rem}.selection-summary{display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-sm) var(--space-md);background:#58a6ff1a;border:1px solid var(--accent-primary);border-radius:var(--radius-md)}.selection-info{text-align:right}.selection-label{display:block;font-size:.8rem;color:var(--text-secondary)}.selection-amount{display:block;font-size:1.25rem;font-weight:700;color:var(--accent-primary)}.generate-invoice-btn{padding:10px 20px;font-size:.875rem;font-weight:600;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--space-sm)}.generate-invoice-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--accent-glow)}.generate-invoice-btn:disabled{opacity:.5;cursor:not-allowed}.generate-invoice-btn svg{width:16px;height:16px}.activity-breakdown{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--border-secondary)}.activity-breakdown h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin:0 0 var(--space-sm) 0}.activity-chips{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.activity-chip{display:flex;align-items:center;gap:var(--space-xs);padding:6px 12px;background:var(--bg-tertiary);border-radius:var(--radius-full);font-size:.8rem}.activity-chip .activity-name{color:var(--text-secondary);text-transform:capitalize}.activity-chip .activity-hours{font-weight:600;color:var(--text-primary);margin-left:var(--space-xs)}.activity-chip .activity-amount{color:var(--text-muted);font-size:.75rem}.activity-chip.activity-research{background:#a855f726}.activity-chip.activity-research .activity-name{color:#a855f7}.activity-chip.activity-court{background:#ef444426}.activity-chip.activity-court .activity-name{color:#ef4444}.activity-chip.activity-meeting{background:#3b82f626}.activity-chip.activity-meeting .activity-name{color:#3b82f6}.activity-chip.activity-drafting{background:#6366f126}.activity-chip.activity-drafting .activity-name{color:#6366f1}.activity-chip.activity-phone_call{background:#eab30826}.activity-chip.activity-phone_call .activity-name{color:#eab308}.activity-chip.activity-email{background:#06b6d426}.activity-chip.activity-email .activity-name{color:#06b6d4}.activity-chip.activity-review{background:#22c55e26}.activity-chip.activity-review .activity-name{color:#22c55e}.activity-chip.activity-travel{background:#f9731626}.activity-chip.activity-travel .activity-name{color:#f97316}.activity-chip.activity-admin{background:#6b728026}.activity-chip.activity-admin .activity-name{color:#9ca3af}.activity-chip.activity-other{background:#94a3b826}.activity-chip.activity-other .activity-name{color:#94a3b8}.empty-state svg{width:48px;height:48px;color:var(--text-muted);opacity:.5;margin-bottom:var(--space-md)}.empty-title{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 var(--space-xs) 0}.empty-subtitle{font-size:.8rem;color:var(--text-muted)}.time-entries-loading{display:flex;align-items:center;justify-content:center;padding:var(--space-xl);color:var(--text-muted)}.time-entries-loading .spinner{width:24px;height:24px;border:2px solid var(--border-primary);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite;margin-right:var(--space-sm)}.time-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.time-section-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.time-mode-toggle{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.5rem;background:var(--bg-secondary);border-radius:var(--radius-md)}.time-mode-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:500;font-size:.875rem;background:transparent;color:var(--text-secondary);transition:all var(--transition-fast)}.time-mode-btn:hover:not(.active){background:var(--bg-hover);color:var(--text-primary)}.time-mode-btn.active{background:var(--accent-primary);color:#fff}.time-mode-btn svg{width:16px;height:16px}.btn-new-time-entry{display:inline-flex;align-items:center;gap:var(--space-sm);padding:10px 18px;font-size:.875rem;font-weight:600;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;transition:all var(--transition-fast)}.btn-new-time-entry:hover{transform:translateY(-1px);box-shadow:var(--accent-glow)}.btn-new-time-entry svg{width:16px;height:16px}.time-entry-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border:2px solid var(--border-primary);border-radius:4px;background:var(--bg-tertiary);cursor:pointer;transition:all var(--transition-fast);position:relative}.time-entry-checkbox:hover{border-color:var(--accent-primary)}.time-entry-checkbox:checked{background:var(--accent-primary);border-color:var(--accent-primary)}.time-entry-checkbox:checked:after{content:"";position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}@media (max-width: 768px){.time-stats-bar{grid-template-columns:repeat(2,1fr)}.time-entries-panel .panel-header{flex-direction:column;align-items:flex-start}.time-entries-panel .panel-controls{width:100%;justify-content:space-between}.date-filters{flex-direction:column;align-items:flex-start}.time-entry-table{font-size:.8rem}.time-entry-table td,.time-entry-table th{padding:var(--space-xs) var(--space-sm)}.time-entries-footer{flex-direction:column;align-items:flex-start}.time-entries-footer .totals-row{flex-wrap:wrap;gap:var(--space-md)}.time-entries-footer .selected-summary{width:100%;flex-direction:column;text-align:center}}.two-factor-status{display:flex;flex-direction:column;gap:1rem}.two-factor-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.two-factor-header h4{margin:0 0 .25rem;font-size:1rem;font-weight:600}.two-factor-info{padding:1rem;background:var(--bg-secondary);border-radius:var(--radius-md)}.two-factor-info p{margin:0 0 .5rem}.two-factor-info p:last-child{margin-bottom:0}.two-factor-setup{display:flex;flex-direction:column;gap:1.5rem}.two-factor-setup h3{margin:0;font-size:1.125rem;font-weight:600}.two-factor-description{margin:0;color:var(--text-secondary)}.two-factor-apps{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.app-badge{display:inline-block;padding:.25rem .75rem;background:var(--bg-tertiary);border-radius:var(--radius-full);font-size:.75rem;color:var(--text-secondary)}.qr-code-container{display:flex;justify-content:center;padding:1.5rem;background:#fff;border-radius:var(--radius-lg);border:1px solid var(--border-color)}.qr-code{max-width:200px;height:auto;border-radius:var(--radius-md)}.manual-entry{text-align:center;padding:1rem;background:var(--bg-secondary);border-radius:var(--radius-md)}.manual-entry p{margin:0 0 .5rem;font-size:.875rem}.secret-code{display:inline-block;padding:.5rem 1rem;background:var(--bg-tertiary);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:1rem;letter-spacing:.1em;-webkit-user-select:all;user-select:all;word-break:break-all}.verify-form{display:flex;flex-direction:column;gap:1rem}.verify-form label{font-weight:500;margin-bottom:.25rem}.code-input{width:100%;max-width:200px;padding:.75rem 1rem;font-size:1.5rem;font-family:var(--font-mono);text-align:center;letter-spacing:.5em;border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);transition:border-color .2s}.code-input:focus{outline:none;border-color:var(--accent-primary)}.code-input.large{max-width:280px;font-size:2rem;padding:1rem 1.5rem}.code-input-wrapper{display:flex;justify-content:center}.button-group{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.two-factor-verify-page{display:flex;justify-content:center;align-items:center;min-height:100%;padding:2rem}.two-factor-verify-card{width:100%;max-width:400px;padding:2rem;background:var(--bg-primary);border-radius:var(--radius-xl);border:1px solid var(--border-color);box-shadow:var(--shadow-lg)}.two-factor-verify-header{text-align:center;margin-bottom:2rem}.two-factor-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;margin-bottom:1rem;background:var(--accent-primary-light);color:var(--accent-primary);border-radius:50%}.two-factor-verify-header h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.two-factor-verify-header p{margin:0;color:var(--text-secondary)}.two-factor-verify-form{display:flex;flex-direction:column;gap:1rem}.full-width{width:100%}.btn-link{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;font-size:.875rem;text-decoration:underline;transition:color .2s}.btn-link:hover{color:var(--text-primary)}.btn-link:disabled{opacity:.5;cursor:not-allowed}.two-factor-help{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color);text-align:center}.two-factor-help p{margin:0;font-size:.75rem}.badge-active{background:var(--status-success-bg);color:var(--status-success)}.badge-inactive{background:var(--bg-tertiary);color:var(--text-secondary)}.btn-danger{background:var(--status-error);color:#fff;border:none;padding:.625rem 1rem;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:opacity .2s}.btn-danger:hover:not(:disabled){opacity:.9}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.auth-page,.auth-layout{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-xl);background:var(--bg-primary)}.auth-container{width:100%;max-width:420px}.auth-card{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-xl)}.auth-header{text-align:center;margin-bottom:var(--space-xl)}.auth-logo{width:64px;height:64px;background:var(--accent-gradient);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-lg);box-shadow:var(--accent-glow)}.auth-logo span{font-size:1.75rem;font-weight:700;color:#fff}.auth-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0 0 var(--space-xs)}.auth-subtitle{color:var(--text-secondary);font-size:.9rem}.auth-form{display:flex;flex-direction:column;gap:var(--space-lg)}.auth-form label{font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-xs)}.auth-form input{width:100%;padding:var(--space-md);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem}.auth-form input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--focus-ring)}.auth-form button[type=submit]{width:100%;padding:var(--space-md);background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.auth-form button[type=submit]:hover{transform:translateY(-1px);box-shadow:0 4px 16px #667eea66}.auth-form button[type=submit]:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-footer{text-align:center;margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--border-secondary)}.auth-footer p{color:var(--text-secondary);font-size:.9rem}.auth-footer a{color:var(--accent-primary);font-weight:500}.auth-footer a:hover{text-decoration:underline}.auth-links{display:flex;justify-content:space-between;font-size:.85rem}.auth-links a{color:var(--text-muted)}.auth-links a:hover{color:var(--accent-primary)}.auth-error{background:var(--danger-bg);border:1px solid rgba(248,81,73,.3);color:var(--danger);padding:var(--space-md);border-radius:var(--radius-md);font-size:.9rem;text-align:center}.auth-info-box{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-md);margin-top:var(--space-lg)}.auth-info-box h4{font-size:.85rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-sm)}.auth-info-box ul{list-style:none;padding:0;margin:0}.auth-info-box li{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;font-size:.8rem;color:var(--text-secondary)}.auth-info-box li:before{content:"✓";color:var(--success);font-weight:700}.password-strength{margin-top:var(--space-xs)}.password-strength-bar{height:4px;background:var(--bg-hover);border-radius:2px;overflow:hidden}.password-strength-fill{height:100%;transition:width .3s ease,background-color .3s ease}.password-strength-fill.weak{width:33%;background:var(--danger)}.password-strength-fill.medium{width:66%;background:var(--warning)}.password-strength-fill.strong{width:100%;background:var(--success)}.password-strength-text{font-size:.75rem;color:var(--text-muted);margin-top:var(--space-xs)}@media (max-width: 480px){.auth-page,.auth-layout{padding:var(--space-md);align-items:flex-start;padding-top:var(--space-xl)}.auth-container{max-width:100%}.auth-card{padding:var(--space-lg);border-radius:var(--radius-lg)}.auth-logo{width:56px;height:56px}.auth-logo span{font-size:1.5rem}.auth-title{font-size:1.25rem}.auth-subtitle{font-size:.85rem}.auth-form{gap:var(--space-md)}.auth-form input{padding:var(--space-sm) var(--space-md);font-size:16px}.auth-form button[type=submit]{padding:var(--space-sm) var(--space-md)}.auth-links{flex-direction:column;gap:var(--space-sm);text-align:center}.auth-footer{margin-top:var(--space-lg);padding-top:var(--space-md)}.auth-info-box{padding:var(--space-sm)}.auth-info-box li{font-size:.75rem}}@media (max-width: 360px){.auth-page,.auth-layout{padding:var(--space-sm)}.auth-card{padding:var(--space-md)}.auth-title{font-size:1.1rem}}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "IBM Plex Mono", "SF Mono", Consolas, "Liberation Mono", monospace;--bg-primary: #080b12;--bg-secondary: #0d1117;--bg-tertiary: #161b22;--bg-elevated: #1c2128;--bg-hover: #21262d;--glass-bg: rgba(22, 27, 34, .7);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .4);--accent-primary: #58a6ff;--accent-secondary: #79c0ff;--accent-gradient: linear-gradient(135deg, #1f6feb 0%, #2f81f7 100%);--accent-glow: 0 0 20px rgba(88, 166, 255, .4);--success: #3fb950;--success-bg: rgba(63, 185, 80, .15);--warning: #d29922;--warning-bg: rgba(210, 153, 34, .15);--danger: #f85149;--danger-bg: rgba(248, 81, 73, .15);--info: #58a6ff;--info-bg: rgba(88, 166, 255, .15);--text-primary: #f0f6fc;--text-secondary: #8b949e;--text-muted: #6e7681;--text-link: #58a6ff;--border-primary: rgba(255, 255, 255, .1);--border-secondary: rgba(255, 255, 255, .05);--primary: var(--accent-primary);--primary-bg: var(--accent-overlay);--border-color: var(--border-primary);--error-color: var(--danger);--color-white: #ffffff;--color-black: #000000;--color-page-bg: white;--event-court-date: #ef4444;--event-hearing: #f97316;--event-deadline: #eab308;--event-filing: #22c55e;--event-meeting: #3b82f6;--event-deposition: #8b5cf6;--event-reminder: #6b7280;--event-task: #14b8a6;--event-consultation: #06b6d4;--event-other: #9ca3af;--message-own-bg: #2563eb;--message-own-text: #ffffff;--accent-overlay: rgba(88, 166, 255, .1);--accent-overlay-strong: rgba(88, 166, 255, .2);--focus-ring: rgba(88, 166, 255, .3);--forge-accent: #ff8c3c;--sidebar-width: 260px;--sidebar-collapsed-width: 72px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px}[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #e9ecef;--bg-elevated: #ffffff;--bg-hover: #dee2e6;--glass-bg: rgba(255, 255, 255, .85);--glass-border: rgba(0, 0, 0, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .08);--accent-primary: #0066cc;--accent-secondary: #3385d6;--accent-gradient: linear-gradient(135deg, #0066cc 0%, #004d99 100%);--accent-glow: 0 0 20px rgba(0, 102, 204, .2);--success: #198754;--success-bg: rgba(25, 135, 84, .1);--warning: #cc8400;--warning-bg: rgba(204, 132, 0, .1);--danger: #dc3545;--danger-bg: rgba(220, 53, 69, .1);--info: #0066cc;--info-bg: rgba(0, 102, 204, .1);--text-primary: #212529;--text-secondary: #495057;--text-muted: #6c757d;--text-link: #0066cc;--border-primary: rgba(0, 0, 0, .12);--border-secondary: rgba(0, 0, 0, .06);--primary: var(--accent-primary);--primary-bg: var(--accent-overlay);--border-color: var(--border-primary);--error-color: var(--danger);--color-page-bg: white;--message-own-bg: #0066cc;--message-own-text: #ffffff;--accent-overlay: rgba(0, 102, 204, .08);--accent-overlay-strong: rgba(0, 102, 204, .12);--focus-ring: rgba(0, 102, 204, .25)}[data-theme=cream]{--bg-primary: #fffef9;--bg-secondary: #f9f7f1;--bg-tertiary: #f0ede4;--bg-elevated: #ffffff;--bg-hover: #e8e4d9;--glass-bg: rgba(255, 254, 249, .85);--glass-border: rgba(120, 90, 50, .1);--glass-shadow: 0 8px 32px rgba(120, 90, 50, .08);--accent-primary: #2a7d6e;--accent-secondary: #3d9b89;--accent-gradient: linear-gradient(135deg, #2a7d6e 0%, #1d5c52 100%);--accent-glow: 0 0 20px rgba(42, 125, 110, .25);--success: #2d6a4f;--success-bg: rgba(45, 106, 79, .1);--warning: #b86e00;--warning-bg: rgba(184, 110, 0, .1);--danger: #c1292e;--danger-bg: rgba(193, 41, 46, .1);--info: #2a7d6e;--info-bg: rgba(42, 125, 110, .1);--text-primary: #2d2a24;--text-secondary: #5c574d;--text-muted: #7d7869;--text-link: #2a7d6e;--border-primary: rgba(100, 80, 50, .15);--border-secondary: rgba(100, 80, 50, .08);--primary: var(--accent-primary);--primary-bg: var(--accent-overlay);--border-color: var(--border-primary);--error-color: var(--danger);--color-page-bg: #fffef9;--message-own-bg: #2a7d6e;--message-own-text: #ffffff;--accent-overlay: rgba(42, 125, 110, .1);--accent-overlay-strong: rgba(42, 125, 110, .15);--focus-ring: rgba(42, 125, 110, .3)}[data-theme=midnight]{--bg-primary: #000000;--bg-secondary: #0a0a0a;--bg-tertiary: #141414;--bg-elevated: #1a1a1a;--bg-hover: #222222;--glass-bg: rgba(10, 10, 10, .85);--glass-border: rgba(255, 255, 255, .06);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .8);--accent-primary: #a78bfa;--accent-secondary: #c4b5fd;--accent-gradient: linear-gradient(135deg, #a78bfa 0%, #f472b6 100%);--accent-glow: 0 0 20px rgba(167, 139, 250, .4);--success: #4ade80;--success-bg: rgba(74, 222, 128, .12);--warning: #facc15;--warning-bg: rgba(250, 204, 21, .12);--danger: #f87171;--danger-bg: rgba(248, 113, 113, .12);--info: #a78bfa;--info-bg: rgba(167, 139, 250, .12);--text-primary: #fafafa;--text-secondary: #a1a1aa;--text-muted: #71717a;--text-link: #a78bfa;--border-primary: rgba(255, 255, 255, .08);--border-secondary: rgba(255, 255, 255, .04);--primary: var(--accent-primary);--primary-bg: var(--accent-overlay);--border-color: var(--border-primary);--error-color: var(--danger);--color-page-bg: #1a1a1a;--message-own-bg: #7c3aed;--message-own-text: #ffffff;--accent-overlay: rgba(167, 139, 250, .12);--accent-overlay-strong: rgba(167, 139, 250, .2);--focus-ring: rgba(167, 139, 250, .35)}[data-theme=sepia]{--bg-primary: #faf6f1;--bg-secondary: #f5ebe0;--bg-tertiary: #ede0d4;--bg-elevated: #ffffff;--bg-hover: #e6d5c3;--glass-bg: rgba(250, 246, 241, .85);--glass-border: rgba(139, 90, 43, .15);--glass-shadow: 0 8px 32px rgba(139, 90, 43, .1);--accent-primary: #9c6644;--accent-secondary: #b07d56;--accent-gradient: linear-gradient(135deg, #9c6644 0%, #7f5539 100%);--accent-glow: 0 0 20px rgba(156, 102, 68, .3);--success: #588157;--success-bg: rgba(88, 129, 87, .12);--warning: #bc6c25;--warning-bg: rgba(188, 108, 37, .12);--danger: #ae2012;--danger-bg: rgba(174, 32, 18, .12);--info: #9c6644;--info-bg: rgba(156, 102, 68, .12);--text-primary: #3d2c1e;--text-secondary: #6b5344;--text-muted: #8b7355;--text-link: #9c6644;--border-primary: rgba(139, 90, 43, .2);--border-secondary: rgba(139, 90, 43, .1);--primary: var(--accent-primary);--primary-bg: var(--accent-overlay);--border-color: var(--border-primary);--error-color: var(--danger);--color-page-bg: #faf6f1;--message-own-bg: #7f5539;--message-own-text: #ffffff;--accent-overlay: rgba(156, 102, 68, .1);--accent-overlay-strong: rgba(156, 102, 68, .15);--focus-ring: rgba(156, 102, 68, .3)}[data-theme=ledger]{--bg-primary: #f8f7f4;--bg-secondary: #ffffff;--bg-tertiary: #f0efec;--bg-elevated: #ffffff;--bg-hover: #e8e7e3;--glass-bg: #ffffff;--glass-border: #d4d3cf;--glass-shadow: 0 1px 3px rgba(0, 0, 0, .08);--accent-primary: #1a4480;--accent-secondary: #2563eb;--accent-gradient: none;--accent-glow: none;--success: #2e7d32;--success-bg: rgba(46, 125, 50, .08);--warning: #c77700;--warning-bg: rgba(199, 119, 0, .08);--danger: #c62828;--danger-bg: rgba(198, 40, 40, .08);--info: #1a4480;--info-bg: rgba(26, 68, 128, .08);--text-primary: #1a1a1a;--text-secondary: #4a4a4a;--text-muted: #6e6e6e;--text-link: #1a4480;--border-primary: #c4c3bf;--border-secondary: #e0dfdb;--ledger-line: #d4d3cf;--ledger-line-dark: #b0afa9;--ledger-header-bg: #e8e7e3;--ledger-row-alt: #f4f3f0;--ledger-row-hover: #eceae5;--ledger-positive: #2e7d32;--ledger-negative: #c62828;--ledger-zero: #6e6e6e;--primary: var(--accent-primary);--primary-bg: var(--accent-overlay);--border-color: var(--border-primary);--error-color: var(--danger);--color-page-bg: #ffffff;--message-own-bg: #1a4480;--message-own-text: #ffffff;--accent-overlay: rgba(26, 68, 128, .06);--accent-overlay-strong: rgba(26, 68, 128, .1);--focus-ring: rgba(26, 68, 128, .25);--space-xs: 4px;--space-sm: 6px;--space-md: 12px;--space-lg: 18px;--space-xl: 24px;--space-2xl: 36px;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 6px;--radius-xl: 8px;--radius-full: 9999px;--sidebar-bg: #1e2a3a;--sidebar-text: #e8eaed;--sidebar-text-muted: #9aa0a6;--sidebar-border: #2d3a4d;--sidebar-hover: #283548;--sidebar-active: #1a4480;--sidebar-logo-bg: #1a4480}html{transition:background-color .3s ease,color .3s ease}body,.sidebar,.top-header,.card,.glass-panel,.modal,.dropdown-menu,.search-results-dropdown{transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:calc(16px * var(--font-scale, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{overflow-x:clip;overscroll-behavior-x:none}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:1.5;width:100%;max-width:100%;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}code,kbd,samp,pre,.mono{font-family:var(--font-mono)}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 20% 0%,rgba(88,166,255,.05) 0%,transparent 55%);pointer-events:none;z-index:-1}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--text-primary)}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1rem}p{color:var(--text-secondary);margin:0}a{color:var(--text-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-secondary)}::selection{background:var(--accent-primary);color:#fff}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);font-family:inherit;font-size:.875rem;font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;outline:none;white-space:nowrap}.btn-primary{background:var(--accent-primary);color:#fff;box-shadow:none}.btn-primary:hover{background:var(--accent-secondary);transform:none;filter:brightness(.95);box-shadow:none}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-primary);box-shadow:none;transform:none}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary);box-shadow:none;transform:none}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(1.1);box-shadow:0 4px 16px var(--danger-bg)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{filter:brightness(1.1);box-shadow:0 4px 16px var(--success-bg)}.btn-icon{width:36px;height:36px;padding:0}.btn-sm,.btn-small{padding:var(--space-xs) var(--space-sm);font-size:.8rem;border-radius:var(--radius-sm)}.btn-lg{padding:var(--space-md) var(--space-lg);font-size:1rem}button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-link{background:none;border:none;color:var(--accent-primary);padding:0;font-size:.85rem;cursor:pointer}.btn-link:hover{color:var(--accent-secondary);text-decoration:underline;transform:none;box-shadow:none}.btn-icon-sm{width:28px;height:28px;padding:0;background:transparent;border:none;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.btn-icon-sm:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-danger-icon:hover{background:var(--danger-bg);color:var(--danger)}.btn-preview-icon:hover{background:var(--primary-bg);color:var(--primary)}.card{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-lg);transition:all var(--transition-normal)}.card:hover{border-color:var(--border-primary)}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-lg)}.form{display:flex;flex-direction:column;gap:var(--space-lg)}label{display:flex;flex-direction:column;gap:var(--space-xs);font-size:.875rem;font-weight:500;color:var(--text-secondary)}input,textarea,select{padding:var(--space-sm) var(--space-md);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem;font-family:inherit;transition:all var(--transition-fast);width:100%}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent-primary);background:var(--bg-secondary);box-shadow:0 0 0 3px var(--focus-ring)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:disabled,textarea:disabled,select:disabled{opacity:.5;cursor:not-allowed}textarea{resize:vertical;min-height:100px}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238b949e' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.checkbox-label,.checkbox-label-inline{flex-direction:row;align-items:center;gap:var(--space-sm);cursor:pointer}input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-primary)}.error,.success{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:.875rem;border:1px solid transparent}.error{color:var(--danger, #f85149);background:color-mix(in srgb,var(--danger, #f85149) 12%,transparent);border-color:color-mix(in srgb,var(--danger, #f85149) 35%,transparent)}.success{color:var(--success, #3fb950);background:color-mix(in srgb,var(--success, #3fb950) 12%,transparent);border-color:color-mix(in srgb,var(--success, #3fb950) 35%,transparent)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg)}.form-section{margin-bottom:var(--space-lg);padding-bottom:var(--space-lg);border-bottom:1px solid var(--border-secondary)}.form-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.form-section h3{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:var(--space-md)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.section-header h3{margin-bottom:0}.notes-cell{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-muted);font-size:.85rem}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-md);padding-top:var(--space-lg);border-top:1px solid var(--border-secondary)}.field-hint,.form-hint{font-size:.75rem;color:var(--text-muted);margin-top:var(--space-xs)}.field-key{font-family:JetBrains Mono,Fira Code,monospace;font-size:.8rem;background:var(--bg-hover);color:var(--accent-primary);padding:2px 6px;border-radius:var(--radius-sm)}.form-card{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-xl)}.form-page{max-width:700px}.form-meta{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--border-secondary);font-size:.8rem;color:var(--text-muted)}.filters-bar{display:flex;flex-wrap:wrap;gap:var(--space-md);margin-bottom:var(--space-xl)}.search-input{flex:1;min-width:250px}.filter-select{min-width:150px}.tabs-container{display:flex;flex-direction:column;gap:var(--space-lg)}.tabs-horizontal .tabs-list{display:flex;gap:var(--space-xs);border-bottom:1px solid var(--border-secondary);padding-bottom:var(--space-xs);overflow-x:auto;-webkit-overflow-scrolling:touch}.tabs-horizontal .tab-button{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);margin-bottom:-1px}.tabs-horizontal .tab-button:hover{color:var(--text-primary);background:var(--bg-hover)}.tabs-horizontal .tab-button.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}.tabs-vertical{flex-direction:row;gap:var(--space-xl)}.tabs-vertical .tabs-list{display:flex;flex-direction:column;gap:var(--space-xs);min-width:200px;border-right:1px solid var(--border-secondary);padding-right:var(--space-lg)}.tabs-vertical .tab-button{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:transparent;border:none;border-left:2px solid transparent;border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;text-align:left;transition:all var(--transition-fast)}.tabs-vertical .tab-button:hover{color:var(--text-primary);background:var(--bg-hover)}.tabs-vertical .tab-button.active{color:var(--accent-primary);background:var(--bg-hover);border-left-color:var(--accent-primary)}.tabs-vertical .tab-button.disabled{opacity:.5;cursor:not-allowed}.tab-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.tab-icon svg{width:16px;height:16px}.tab-label{flex:1}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-xs);background:var(--accent-primary);color:#fff;font-size:.75rem;font-weight:600;border-radius:var(--radius-full)}.tabs-content{flex:1;min-width:0}.tab-panel{display:none}.tab-panel.active{display:block}@media (max-width: 768px){.tabs-vertical{flex-direction:column}.tabs-vertical .tabs-list{flex-direction:row;flex-wrap:nowrap;min-width:100%;border-right:none;border-bottom:1px solid var(--border-secondary);padding-right:0;padding-bottom:var(--space-sm);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tabs-vertical .tabs-list::-webkit-scrollbar{display:none}.tabs-vertical .tab-button{border-left:none;border-bottom:2px solid transparent;border-radius:var(--radius-md) var(--radius-md) 0 0;white-space:nowrap}.tabs-vertical .tab-button.active{border-left-color:transparent;border-bottom-color:var(--accent-primary)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-lg);animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-xl);max-width:480px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 24px 80px #00000080;animation:slideUp .3s cubic-bezier(.16,1,.3,1)}.modal-large{max-width:800px;min-height:600px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal h3{font-size:1.25rem;margin-bottom:var(--space-md)}.modal p{color:var(--text-secondary);margin-bottom:var(--space-lg);line-height:1.6}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-md);margin-top:var(--space-lg)}.popout-container{position:fixed;z-index:500;background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;overflow:hidden;animation:popIn .3s cubic-bezier(.16,1,.3,1)}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.popout-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);background:var(--bg-tertiary);border-bottom:1px solid var(--border-secondary);cursor:move;-webkit-user-select:none;user-select:none}.popout-title{font-size:.9rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:var(--space-sm)}.popout-controls{display:flex;gap:var(--space-xs)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.animate-bounce{animation:bounce 1s ease-in-out infinite}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-primary{color:var(--text-primary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.help-text{font-size:.85rem;color:var(--text-muted);margin-top:var(--space-sm)}.page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-primary)}.topbar{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-xl);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-secondary);position:sticky;top:0;z-index:50}.topbar-right{display:flex;align-items:center;gap:var(--space-md)}.topbar-right button{padding:var(--space-sm) var(--space-md);font-size:.85rem}.topbar-right span{color:var(--text-secondary);font-size:.85rem}.content{flex:1;padding:var(--space-xl);max-width:1400px;margin:0 auto;width:100%}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-lg);margin-bottom:var(--space-xl);flex-wrap:wrap}.detail-title{display:flex;align-items:flex-start;gap:var(--space-lg)}.detail-title h2{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 var(--space-sm) 0;line-height:1.2}.detail-badges{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.case-number-display{font-size:.9rem;color:var(--text-muted);margin:0}.detail-actions{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}@media (max-width: 768px){.detail-header{flex-direction:column;gap:var(--space-md)}.detail-title h2{font-size:1.5rem}.detail-actions{width:100%}.detail-actions button{flex:1}.tabs,.tab-bar,[class*=tabs]{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap!important;gap:0!important}.tabs::-webkit-scrollbar,.tab-bar::-webkit-scrollbar{display:none}.tabs button,.tab-bar button,.tab-item{flex-shrink:0;white-space:nowrap;padding:.6rem 1rem!important;font-size:.85rem}}@media (max-width: 768px){.sidebar{transform:translate(-100%);position:fixed;z-index:1000}.sidebar.mobile-open{transform:translate(0)}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:999}.sidebar.mobile-open+.sidebar-overlay,.sidebar-overlay.visible{display:block}.main-content{margin-left:0!important;width:100%}.page-content{padding:var(--space-md)}.widget-grid,.dashboard-grid{grid-template-columns:1fr}.filters-bar{flex-direction:column}.search-input{min-width:100%}.modal{margin:var(--space-md);max-height:calc(100vh - var(--space-xl))}.mobile-menu-btn{display:flex!important}.case-facts-tab{padding:var(--space-sm)!important}.case-facts-tab>div{gap:var(--space-sm)!important}.fact-card,[class*=fact-card]{padding:var(--space-md)!important}.fact-graph{height:350px!important;min-height:300px}.fact-graph svg{max-width:100%;height:auto}.contacts-by-role{gap:var(--space-md)!important}.contact-card,.form-section{padding:var(--space-md)!important}.form-row{flex-direction:column!important;gap:var(--space-md)!important}.form-row>*{width:100%!important;min-width:0!important}}.font-mono,.data-value{font-family:var(--font-mono);font-feature-settings:"tnum" 1;letter-spacing:-.02em}.numeric,.currency,.hours,.quantity{font-family:var(--font-mono);font-feature-settings:"tnum" 1;text-align:right;white-space:nowrap}.numeric-positive,.currency-positive{color:var(--ledger-positive, var(--success))}.numeric-negative,.currency-negative{color:var(--ledger-negative, var(--danger))}.numeric-zero{color:var(--ledger-zero, var(--text-muted))}.ledger-table{width:100%;border-collapse:collapse;font-size:.875rem;background:var(--bg-secondary);border:1px solid var(--ledger-line, var(--border-primary))}.ledger-table th,.ledger-table td{padding:var(--space-sm) var(--space-md);text-align:left;border-bottom:1px solid var(--ledger-line, var(--border-secondary));vertical-align:middle}.ledger-table th{background:var(--ledger-header-bg, var(--bg-tertiary));font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);border-bottom:2px solid var(--ledger-line-dark, var(--border-primary));position:sticky;top:0;z-index:1}.ledger-table th.col-numeric,.ledger-table td.col-numeric{text-align:right;font-family:var(--font-mono);font-feature-settings:"tnum" 1}.ledger-table th.col-center,.ledger-table td.col-center{text-align:center}.ledger-table tbody tr:nth-child(2n){background:var(--ledger-row-alt, var(--bg-tertiary))}.ledger-table tbody tr:hover{background:var(--ledger-row-hover, var(--bg-hover))}.ledger-table tr.row-summary,.ledger-table tfoot tr{background:var(--ledger-header-bg, var(--bg-tertiary));font-weight:600;border-top:2px solid var(--ledger-line-dark, var(--border-primary))}.ledger-table tr.row-summary td,.ledger-table tfoot td{border-bottom:none}.ledger-table.compact th,.ledger-table.compact td{padding:var(--space-xs) var(--space-sm)}.ledger-table.bordered th,.ledger-table.bordered td{border:1px solid var(--ledger-line, var(--border-secondary))}.ledger-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-lg)}.ledger-card-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--space-md);margin-bottom:var(--space-md);border-bottom:1px solid var(--border-secondary)}.ledger-card-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin:0}.ledger-stat{display:flex;flex-direction:column;gap:var(--space-xs)}.ledger-stat-value{font-family:var(--font-mono);font-size:1.75rem;font-weight:600;color:var(--text-primary);line-height:1;font-feature-settings:"tnum" 1}.ledger-stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.ledger-input{font-family:var(--font-mono);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:.875rem}.ledger-input.input-currency,.ledger-input.input-numeric{text-align:right}.ledger-form-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;border-bottom:1px solid var(--border-secondary)}.ledger-form-row:last-child{border-bottom:none}.ledger-form-label{flex:0 0 140px;font-size:.8rem;font-weight:500;color:var(--text-secondary)}.ledger-form-value{flex:1}.ledger-badge{display:inline-block;padding:2px 8px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;border-radius:var(--radius-sm);border:1px solid}.ledger-badge-default{background:var(--bg-tertiary);border-color:var(--border-primary);color:var(--text-secondary)}.ledger-badge-active,.ledger-badge-success{background:var(--success-bg);border-color:var(--success);color:var(--success)}.ledger-badge-warning{background:var(--warning-bg);border-color:var(--warning);color:var(--warning)}.ledger-badge-danger,.ledger-badge-error{background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.ledger-badge-info{background:var(--info-bg);border-color:var(--info);color:var(--info)}[data-theme=ledger] .card,[data-theme=ledger] .glass-panel{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--bg-secondary);border-color:var(--border-primary)}[data-theme=ledger] .btn-primary{background:var(--accent-primary);box-shadow:none}[data-theme=ledger] .btn-primary:hover{background:var(--accent-secondary);transform:none;box-shadow:none}[data-theme=ledger] body:before{display:none}[data-theme=ledger] .modal{border-radius:var(--radius-sm);box-shadow:0 4px 20px #00000026;border:1px solid var(--border-primary);background:var(--bg-secondary)}[data-theme=ledger] .modal-overlay{background:#1a2a3a99;-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=ledger] .modal-header{background:var(--bg-tertiary);border-bottom:2px solid var(--ledger-line);padding:16px 20px}[data-theme=ledger] .modal-header h3{font-family:var(--font-mono);font-weight:600;color:var(--text-primary);letter-spacing:-.01em}[data-theme=ledger] .modal-body{padding:20px;background:var(--bg-secondary)}[data-theme=ledger] .modal-actions{background:var(--bg-tertiary);border-top:1px solid var(--ledger-line);padding:16px 20px}[data-theme=ledger] .modal .form-group label{font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}[data-theme=ledger] .modal .form-group input,[data-theme=ledger] .modal .form-group select,[data-theme=ledger] .modal .form-group textarea{border-radius:var(--radius-sm);border:1px solid var(--border-primary);background:var(--bg-primary);font-family:var(--font-mono);transition:border-color .15s,box-shadow .15s}[data-theme=ledger] .modal .form-group input:focus,[data-theme=ledger] .modal .form-group select:focus,[data-theme=ledger] .modal .form-group textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px #1a44801a;outline:none}[data-theme=ledger] .modal .form-group textarea{font-family:var(--font-mono);line-height:1.6}[data-theme=ledger] .modal .checkbox-label{font-family:var(--font-mono);font-size:13px}[data-theme=ledger] .modal .checkbox-label input[type=checkbox]{accent-color:var(--accent-primary)}[data-theme=ledger] .modal .template-section{border-top:2px solid var(--ledger-line);margin-top:20px;padding-top:20px}[data-theme=ledger] .modal .template-fields{background:var(--bg-tertiary);border:1px solid var(--ledger-line);border-radius:var(--radius-sm)}[data-theme=ledger] .modal .placeholder-help{background:var(--bg-primary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm)}[data-theme=ledger] .modal .placeholder-list code{font-family:var(--font-mono);background:var(--bg-tertiary);border:1px solid var(--border-secondary);color:var(--accent-primary)}[data-theme=ledger] .modal .btn-primary{background:var(--accent-primary);border:none;border-radius:var(--radius-sm);font-family:var(--font-mono);font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-size:12px}[data-theme=ledger] .modal .btn-primary:hover{background:#153a6b}[data-theme=ledger] .modal .btn-secondary{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-family:var(--font-mono);font-weight:500;color:var(--text-secondary);font-size:12px}[data-theme=ledger] .modal .btn-secondary:hover{background:var(--bg-hover);border-color:var(--text-muted)}[data-theme=ledger] .modal .btn-toggle-chat{background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:11px;font-weight:600}[data-theme=ledger] .modal .btn-toggle-chat.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}[data-theme=ledger] .modal .form-hint{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}[data-theme=ledger] .popout-container{border-radius:var(--radius-md);box-shadow:0 4px 20px #00000026}[data-theme=ledger] .sidebar{background:var(--sidebar-bg);backdrop-filter:none;-webkit-backdrop-filter:none;border-right-color:var(--sidebar-border)}[data-theme=ledger] .sidebar-logo{background:var(--sidebar-logo-bg);box-shadow:none}[data-theme=ledger] .sidebar-brand-name{color:var(--sidebar-text)}[data-theme=ledger] .sidebar-brand-tagline,[data-theme=ledger] .nav-section-title,[data-theme=ledger] .nav-item{color:var(--sidebar-text-muted)}[data-theme=ledger] .nav-item:hover{background:var(--sidebar-hover);color:var(--sidebar-text)}[data-theme=ledger] .nav-item.active{background:var(--sidebar-active);color:#fff}[data-theme=ledger] .nav-item-icon svg{stroke:currentColor}[data-theme=ledger] .sidebar-footer{border-top-color:var(--sidebar-border)}[data-theme=ledger] .sidebar-user{color:var(--sidebar-text)}[data-theme=ledger] .sidebar-user-avatar{background:var(--sidebar-active);color:#fff}[data-theme=ledger] .sidebar-user-name{color:var(--sidebar-text)}[data-theme=ledger] .sidebar-user-email{color:var(--sidebar-text-muted)}[data-theme=ledger] .sidebar-collapse-btn{color:var(--sidebar-text-muted);border-color:var(--sidebar-border)}[data-theme=ledger] .sidebar-collapse-btn:hover{background:var(--sidebar-hover);color:var(--sidebar-text)}[data-theme=ledger] .notes-sidebar{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md)}[data-theme=ledger] .notes-sidebar .folder-item{border-radius:var(--radius-sm)}[data-theme=ledger] .notes-sidebar .folder-item.active{background:var(--accent-primary);color:#fff}[data-theme=ledger] .note-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);box-shadow:none}[data-theme=ledger] .note-card:hover{border-color:var(--accent-primary);transform:none;box-shadow:0 2px 8px #00000014}[data-theme=ledger] .note-card.pinned{border-left:3px solid var(--accent-primary);background:linear-gradient(90deg,rgba(26,68,128,.04) 0%,var(--bg-secondary) 100%)}[data-theme=ledger] .note-card.template{border-left:3px solid var(--success);background:linear-gradient(90deg,rgba(46,125,50,.04) 0%,var(--bg-secondary) 100%)}[data-theme=ledger] .note-template-badge{background:#2e7d321f;color:var(--success);border-radius:var(--radius-sm)}[data-theme=ledger] .note-category-badge{border-radius:var(--radius-sm)}[data-theme=ledger] .note-tag{background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm)}[data-theme=ledger] .note-slug code{font-family:var(--font-mono)}[data-theme=ledger] .notes-grid{gap:12px}[data-theme=ledger] .folder-list{border:1px solid var(--ledger-line);border-radius:var(--radius-sm);overflow:hidden}[data-theme=ledger] .folder-list .folder-item,[data-theme=ledger] .folder-list .folder-item-wrapper{border-bottom:1px solid var(--ledger-line);border-radius:0;margin:0}[data-theme=ledger] .folder-list .folder-item-wrapper:last-child,[data-theme=ledger] .folder-list .folder-item:last-child{border-bottom:none}[data-theme=ledger] .folder-list .folder-item:hover{background:var(--ledger-row-hover)}
