:root{--accent-primary: #22c55e;--accent-hover: #16a34a;--accent-gradient: linear-gradient(135deg, #22c55e 0%, #10b981 50%, #06b6d4 100%);--accent-glow: 0 0 20px var(--surface-accent-20);--success-color: #22c55e;--warning-color: #f59e0b;--danger-color: #f43f5e;--info-color: #3b82f6;--font-heading: "Calistoga", Georgia, serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", monospace;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-pill: 9999px;--sidebar-width: 230px;--header-height: 48px;--content-padding: 16px 24px;--content-max-width: 1500px;--surface-accent-8: rgba(34, 197, 94, .08);--surface-accent-10: rgba(34, 197, 94, .1);--surface-accent-12: rgba(34, 197, 94, .12);--surface-accent-15: rgba(34, 197, 94, .15);--surface-accent-20: rgba(34, 197, 94, .2);--surface-accent-25: rgba(34, 197, 94, .25);--surface-accent-30: rgba(34, 197, 94, .3);--surface-accent-50: rgba(34, 197, 94, .5);--surface-danger-3: rgba(30, 17, 22, .95);--surface-danger-5: rgba(244, 63, 94, .05);--surface-danger-6: rgba(244, 63, 94, .06);--surface-danger-8: rgba(244, 63, 94, .08);--surface-danger-10: rgba(244, 63, 94, .1);--surface-danger-12: rgba(244, 63, 94, .12);--surface-danger-15: rgba(244, 63, 94, .15);--surface-danger-25: rgba(244, 63, 94, .25);--surface-danger-30: rgba(244, 63, 94, .3);--surface-danger-35: rgba(244, 63, 94, .35);--surface-danger-40: rgba(244, 63, 94, .4);--surface-warning-10: rgba(245, 158, 11, .1);--surface-warning-15: rgba(245, 158, 11, .15);--surface-warning-25: rgba(245, 158, 11, .25);--surface-warning-30: rgba(245, 158, 11, .3);--surface-warning-35: rgba(245, 158, 11, .35);--surface-warning-40: rgba(245, 158, 11, .4);--surface-warning-50: rgba(245, 158, 11, .5);--surface-warning-60: rgba(245, 158, 11, .6);--surface-info-8: rgba(56, 189, 248, .08);--surface-info-10: rgba(56, 189, 248, .1);--surface-info-12: rgba(56, 189, 248, .12);--surface-info-30: rgba(56, 189, 248, .3);--surface-indigo-10: rgba(99, 102, 241, .1);--surface-indigo-12: rgba(99, 102, 241, .12);--surface-indigo-15: rgba(99, 102, 241, .15);--surface-indigo-20: rgba(99, 102, 241, .2);--surface-indigo-25: rgba(99, 102, 241, .25);--surface-indigo-30: rgba(99, 102, 241, .3);--surface-indigo-35: rgba(99, 102, 241, .35);--surface-indigo-40: rgba(99, 102, 241, .4);--surface-indigo-70: rgba(99, 102, 241, .7);--text-on-accent: #020617;--text-on-danger: #ffffff;--text-on-warning: #ffffff;--text-error: #f43f5e;--text-error-light: #f87171;--text-error-lighter: #fca5a5;--text-error-toast: #fecdd3;--text-success: #4ade80;--text-success-strong: #34d399;--text-success-toast: #a7f3d0;--text-warning: #fbbf24;--text-info: #38bdf8;--text-indigo: #a5b4fc;--text-indigo-strong: #818cf8;--text-white: #ffffff;--gradient-accent: linear-gradient(135deg, #22c55e 0%, #16a34a 100%);--gradient-danger: linear-gradient(135deg, #e11d48 0%, #f43f5e 100%);--gradient-warning: linear-gradient(135deg, #d97706 0%, #f59e0b 100%);--gradient-info: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);--gradient-inactive: linear-gradient(135deg, #64748b 0%, #475569 100%)}:root,:root[data-theme=dark]{color-scheme:dark;--bg-primary: #020617;--bg-secondary: #0f172a;--bg-card: rgba(15, 23, 42, .85);--bg-card-hover: rgba(30, 41, 59, .95);--bg-elevated: #1e293b;--border-color: rgba(51, 65, 85, .6);--border-glow: rgba(34, 197, 94, .35);--text-main: #f8fafc;--text-body: #e2e8f0;--text-muted: #94a3b8;--text-dim: #64748b;--shadow-sm: 0 2px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 12px 28px -6px rgba(0, 0, 0, .5);--surface-light-2: rgba(255, 255, 255, .02);--surface-light-3: rgba(255, 255, 255, .03);--surface-light-4: rgba(255, 255, 255, .04);--surface-light-5: rgba(255, 255, 255, .05);--surface-light-6: rgba(255, 255, 255, .06);--surface-light-8: rgba(255, 255, 255, .08);--surface-light-10: rgba(255, 255, 255, .1);--surface-light-12: rgba(255, 255, 255, .12);--surface-light-15: rgba(255, 255, 255, .15);--surface-light-20: rgba(255, 255, 255, .2);--surface-dark-15: rgba(0, 0, 0, .15);--surface-dark-20: rgba(0, 0, 0, .2);--surface-dark-25: rgba(0, 0, 0, .25);--surface-dark-40: rgba(2, 6, 23, .4);--surface-dark-60: rgba(2, 6, 23, .6);--surface-dark-65: rgba(0, 0, 0, .65);--surface-dark-75: rgba(2, 6, 23, .75);--surface-dark-82: rgba(2, 6, 23, .82);--surface-dark-85: rgba(0, 0, 0, .85);--surface-dark-90: rgba(0, 0, 0, .9)}:root[data-theme=light]{color-scheme:light;--bg-primary: #f8fafc;--bg-secondary: #f1f5f9;--bg-card: rgba(255, 255, 255, .85);--bg-card-hover: rgba(241, 245, 249, .95);--bg-elevated: #ffffff;--border-color: rgba(203, 213, 225, .6);--border-glow: rgba(34, 197, 94, .35);--text-main: #0f172a;--text-body: #334155;--text-muted: #64748b;--text-dim: #94a3b8;--shadow-sm: 0 2px 6px rgba(0, 0, 0, .08);--shadow-lg: 0 12px 28px -6px rgba(0, 0, 0, .12);--surface-light-2: rgba(0, 0, 0, .02);--surface-light-3: rgba(0, 0, 0, .03);--surface-light-4: rgba(0, 0, 0, .04);--surface-light-5: rgba(0, 0, 0, .05);--surface-light-6: rgba(0, 0, 0, .06);--surface-light-8: rgba(0, 0, 0, .08);--surface-light-10: rgba(0, 0, 0, .1);--surface-light-12: rgba(0, 0, 0, .12);--surface-light-15: rgba(0, 0, 0, .15);--surface-light-20: rgba(0, 0, 0, .2);--surface-dark-15: rgba(0, 0, 0, .08);--surface-dark-20: rgba(0, 0, 0, .1);--surface-dark-25: rgba(0, 0, 0, .12);--surface-dark-40: rgba(0, 0, 0, .18);--surface-dark-60: rgba(0, 0, 0, .25);--surface-dark-65: rgba(0, 0, 0, .3);--surface-dark-75: rgba(0, 0, 0, .35);--surface-dark-82: rgba(0, 0, 0, .4);--surface-dark-85: rgba(0, 0, 0, .45);--surface-dark-90: rgba(0, 0, 0, .5)}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-primary);color:var(--text-body);font-family:var(--font-body);height:100%;min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased;overflow:hidden}.app-container,.app-layout{display:flex;height:100vh;height:100dvh;width:100%;max-width:100%;overflow:hidden;position:relative}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--surface-dark-75);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sidebar,.app-sidebar{width:var(--sidebar-width, 240px);background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;height:100vh;height:100dvh;flex-shrink:0;z-index:101;-webkit-user-select:none;user-select:none;transition:width .25s cubic-bezier(.16,1,.3,1),transform .3s cubic-bezier(.16,1,.3,1);overflow:hidden}.sidebar.collapsed{width:72px}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:16px 14px;border-bottom:1px solid var(--border-color);min-height:64px;position:relative}.brand-logo-box{width:36px;height:36px;border-radius:8px;background:var(--accent-gradient, linear-gradient(135deg, #10b981 0%, #059669 100%));display:flex;align-items:center;justify-content:center;color:var(--text-on-accent);box-shadow:var(--accent-glow, 0 0 12px rgba(16, 185, 129, .3));flex-shrink:0;transition:transform .2s ease}.brand-logo-box:hover{transform:scale(1.05)}.brand-logo-icon{color:var(--text-on-accent)}.brand-text{display:flex;flex-direction:column;justify-content:center;overflow:hidden;white-space:nowrap;transition:opacity .2s ease,width .2s ease}.sidebar.collapsed .brand-text{opacity:0;width:0;pointer-events:none}.brand-name-row{display:flex;align-items:center;gap:6px}.brand-name{font-family:var(--font-heading, sans-serif);font-weight:700;font-size:1.1rem;color:var(--text-main, #f8fafc);letter-spacing:-.01em;line-height:1.2}.brand-badge{font-size:.6rem;font-weight:800;letter-spacing:.05em;padding:2px 5px;border-radius:4px;background:var(--surface-accent-15);color:var(--accent-primary, #22c55e);border:1px solid var(--surface-accent-30);text-transform:uppercase}.brand-tagline{font-size:.72rem;color:var(--text-muted, #94a3b8);font-weight:500;line-height:1.2;margin-top:1px}.mobile-close-btn{display:none;background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:var(--radius-sm);margin-left:auto;transition:all .2s ease}.mobile-close-btn:hover{color:var(--text-main);background:var(--surface-light-8)}.sidebar-nav-container{flex:1;overflow-y:auto;padding:16px 10px;display:flex;flex-direction:column;gap:20px;scrollbar-width:thin;scrollbar-color:var(--surface-light-10) transparent}.sidebar-nav-container::-webkit-scrollbar{width:4px}.sidebar-nav-container::-webkit-scrollbar-thumb{background:var(--surface-light-10);border-radius:4px}.sidebar-nav-group{display:flex;flex-direction:column;gap:4px}.sidebar-group-header{padding:0 10px 4px;overflow:hidden;white-space:nowrap}.sidebar.collapsed .sidebar-group-header{opacity:0;height:0;padding:0;margin:0;overflow:hidden}.sidebar-group-title{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted, #64748b)}.sidebar-group-items{display:flex;flex-direction:column;gap:3px}.nav-link{position:relative;display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:var(--radius-sm, 6px);color:var(--text-muted, #94a3b8);font-weight:600;font-size:.86rem;cursor:pointer;background:transparent;border:1px solid transparent;width:100%;text-align:left;transition:all .18s ease-in-out;min-height:38px;text-decoration:none;white-space:nowrap;outline:none}.sidebar.collapsed .nav-link{justify-content:center;padding:9px 0;gap:0}.nav-link-indicator{position:absolute;left:0;top:50%;transform:translateY(-50%) scaleY(0);width:3px;height:18px;border-top-right-radius:3px;border-bottom-right-radius:3px;background:var(--accent-primary, #22c55e);box-shadow:0 0 8px var(--accent-primary, #22c55e);transition:transform .2s cubic-bezier(.16,1,.3,1)}.nav-link.active .nav-link-indicator{transform:translateY(-50%) scaleY(1)}.nav-icon{flex-shrink:0;color:var(--text-muted, #94a3b8);transition:color .18s ease,transform .18s ease}.nav-link-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:opacity .2s ease,width .2s ease}.sidebar.collapsed .nav-link-text{display:none}.nav-link:hover{color:var(--text-main, #f8fafc);background:var(--surface-light-5);border-color:var(--surface-light-8)}.nav-link:hover .nav-icon{color:var(--text-main, #f8fafc);transform:translate(1px)}.sidebar.collapsed .nav-link:hover .nav-icon{transform:scale(1.1)}.nav-link.active{color:var(--text-main, #ffffff);background:var(--surface-accent-12);border-color:var(--surface-accent-25);font-weight:700;box-shadow:0 2px 8px var(--surface-dark-15)}.nav-link.active .nav-icon{color:var(--accent-primary, #22c55e)}.nav-link:focus-visible{box-shadow:0 0 0 2px var(--accent-primary)}.sidebar-footer{padding:12px 10px;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:6px;background:var(--surface-dark-15);flex-shrink:0}.sidebar-cycle-btn{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;padding:5px 6px;border-radius:var(--radius-sm, 6px);background:var(--surface-light-4);border:1px solid var(--border-color);color:var(--text-main);font-size:.72rem;font-weight:600;cursor:pointer;outline:none;transition:all .15s ease}.sidebar-cycle-btn:hover{border-color:var(--accent-primary);background:var(--surface-light-6)}.sidebar-cycle-btn:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--surface-accent-30)}.sidebar-collapse-btn{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:7px 10px;border-radius:var(--radius-sm, 6px);background:var(--surface-light-3);border:1px solid var(--border-color);color:var(--text-muted);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s ease;width:100%}.sidebar.collapsed .sidebar-collapse-btn{justify-content:center;padding:7px 0}.collapse-btn-text{overflow:hidden;white-space:nowrap}.sidebar.collapsed .collapse-btn-text{display:none}.sidebar-collapse-btn:hover{background:var(--surface-light-8);color:var(--text-main);border-color:var(--surface-light-15)}.sidebar-user-card{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm, 6px);background:var(--bg-card, rgba(15, 23, 42, .6));border:1px solid var(--border-color)}.sidebar.collapsed .sidebar-user-card{justify-content:center;padding:8px 0;border-color:transparent;background:transparent}.user-avatar-badge{width:32px;height:32px;border-radius:50%;background:var(--accent-gradient, linear-gradient(135deg, #10b981 0%, #059669 100%));color:var(--text-on-accent);font-weight:800;font-size:.85rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 6px #0000004d}.user-card-info{display:flex;flex-direction:column;overflow:hidden;flex:1}.sidebar.collapsed .user-card-info{display:none}.user-card-name{font-size:.82rem;font-weight:700;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-card-role{font-size:.68rem;color:var(--text-muted);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-logout{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px;border-radius:var(--radius-sm, 6px);background:transparent;border:1px solid transparent;color:var(--text-error-light);cursor:pointer;transition:all .2s ease;flex-shrink:0}.sidebar.collapsed .btn-logout{margin-top:4px}.logout-text{display:none}.btn-logout:hover{background:var(--surface-danger-15);border-color:var(--surface-danger-30);color:var(--text-error-lighter)}.main-content,.app-main{flex:1;height:100vh;padding:var(--content-padding);max-width:var(--content-max-width);overflow-y:auto;width:100%}.header-bar,.top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--border-color);gap:12px}.header-title-group{display:flex;align-items:center;gap:10px}.portal-badge{display:inline-flex;align-items:center;gap:6px;background:var(--bg-card);border:1px solid var(--border-color);padding:4px 10px;border-radius:var(--radius-pill);font-size:.78rem;font-weight:700;color:var(--text-main);letter-spacing:.02em}.portal-badge-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-primary);box-shadow:0 0 8px var(--accent-primary)}.mobile-hamburger-btn{display:none;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-main);padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;align-items:center;justify-content:center;transition:all .2s ease}.mobile-hamburger-btn:hover{border-color:var(--border-glow);background:var(--bg-elevated)}.user-pill,.user-badge{display:flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--border-color);padding:4px 12px;border-radius:var(--radius-pill);flex-shrink:0}.avatar-circle{width:28px;height:28px;border-radius:var(--radius-pill);background:var(--accent-gradient);color:var(--text-on-accent);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:.82rem;flex-shrink:0}.user-name{font-size:.82rem;font-weight:700;line-height:1.1}.user-email{font-size:.7rem;color:var(--text-muted)}.stats-grid,.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:16px}.stat-card,.metric-card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:14px 16px;transition:transform .2s ease,border-color .2s ease}.stat-card:hover,.metric-card:hover{transform:translateY(-1px);border-color:var(--border-glow)}.metric-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.stat-label,.metric-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.stat-value,.metric-value{font-family:var(--font-mono);font-size:1.45rem;font-weight:700;color:var(--text-main);word-break:break-word}.page-header-banner,.page-header{display:flex;justify-content:space-between;align-items:center;background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px 18px;margin-bottom:16px;gap:12px;box-shadow:0 2px 8px var(--surface-dark-15);transition:border-color .2s ease}.page-header-banner:hover{border-color:var(--border-glow)}.page-header-left,.page-header-content{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.page-header-title-row,.page-header-title-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.page-header-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--accent-primary);background:var(--surface-accent-10);border:1px solid var(--surface-accent-20);padding:5px;border-radius:var(--radius-sm);flex-shrink:0}.page-header-title{font-size:1.25rem;font-weight:800;color:var(--text-main);line-height:1.2;letter-spacing:-.01em;margin:0}.page-header-subtitle{color:var(--text-muted);font-size:.82rem;margin:2px 0 0;line-height:1.35}.page-header-actions,.card-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.table-card,.content-card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px 20px;margin-bottom:16px}.table-header,.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--surface-light-5)}.card-header-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.card-title{font-size:1.02rem;font-weight:700;color:var(--text-main);display:flex;align-items:center;gap:8px;margin:0;line-height:1.2}.card-header-subtitle{color:var(--text-muted);font-size:.78rem;margin:0}.header-count-badge{display:inline-flex;align-items:center;justify-content:center;background:var(--bg-elevated);border:1px solid var(--border-color);color:var(--accent-primary);font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-pill);line-height:1}.header-badge{display:inline-flex;align-items:center;background:var(--surface-accent-12);border:1px solid var(--surface-accent-30);color:var(--text-success);font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:var(--radius-pill);letter-spacing:.03em}.table-responsive,.custom-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-sm)}.table-responsive::-webkit-scrollbar{height:5px;width:5px}.table-responsive::-webkit-scrollbar-thumb{background:var(--surface-light-15);border-radius:4px}.custom-table,.ui-table{width:100%;border-collapse:collapse;text-align:left;min-width:600px}.custom-table th,.ui-table th{padding:8px 12px;color:var(--text-muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--border-color);white-space:nowrap}.custom-table td,.ui-table td{padding:10px 12px;border-bottom:1px solid var(--surface-light-4);font-size:.85rem}.custom-table tr:hover td,.ui-table tr:hover td{background:var(--surface-light-2)}.mono-text{font-family:var(--font-mono);font-weight:600}.badge,.badge-success,.badge-warning,.badge-danger,.badge-info,.status-badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:var(--radius-pill);font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.badge-success,.badge-emerald{background:var(--surface-accent-15);color:var(--text-success);border:1px solid var(--surface-accent-30)}.badge-warning,.badge-amber{background:var(--surface-warning-15);color:var(--text-warning);border:1px solid var(--surface-warning-30)}.badge-danger,.badge-rose{background:var(--surface-danger-15);color:var(--text-error-light);border:1px solid var(--surface-danger-30)}.badge-info,.badge-indigo{background:var(--surface-indigo-15);color:var(--text-indigo);border:1px solid var(--surface-indigo-30)}.btn-primary,.btn-cta,.btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--radius-sm);font-weight:700;font-size:.82rem;cursor:pointer;border:1px solid transparent;transition:all .2s ease;min-height:34px;background:var(--accent-gradient);color:var(--text-on-accent);box-shadow:var(--accent-glow);white-space:nowrap}.btn-primary:hover,.btn-cta:hover{opacity:.95;transform:translateY(-1px)}.btn-secondary,.btn-ghost{background:var(--surface-light-6);color:var(--text-main);border:1px solid var(--border-color);padding:6px 12px;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;min-height:34px;display:inline-flex;align-items:center;gap:6px;font-size:.82rem;white-space:nowrap}.btn-secondary:hover,.btn-ghost:hover{background:var(--surface-light-10);border-color:var(--text-muted)}.form-label{display:block;font-size:.78rem;font-weight:600;color:var(--text-muted);margin-bottom:2px}.input-field,.form-input{width:100%;background:var(--surface-dark-60);border:1px solid var(--border-color);padding:6px 10px;border-radius:var(--radius-sm);color:var(--text-main);font-family:inherit;font-size:.85rem;font-weight:500;min-height:36px;height:36px;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease;display:flex;align-items:center}select,.form-select,select.form-input,select.input-field,.dt-page-size-select{background-color:var(--surface-dark-60)!important;color:var(--text-main)!important;border:1px solid var(--border-color);border-radius:var(--radius-sm, 6px)}select option,.form-select option,select.form-input option,select.input-field option,.dt-page-size-select option{background-color:var(--bg-elevated)!important;color:var(--text-main)!important;padding:8px 12px}select option:hover,select option:focus,select option:checked{background-color:var(--surface-accent-20)!important;color:var(--accent-primary)!important}.input-field:focus,.form-input:focus,select:focus,select.form-input:focus,select.input-field:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--surface-accent-20)}.input-field.is-compact,.form-input.is-compact{min-height:32px;height:32px;padding:4px 8px;font-size:.82rem;border-radius:6px}.filter-tabs{display:inline-flex;align-items:center;gap:4px;background:var(--surface-dark-40);padding:3px;border-radius:var(--radius-md, 10px);border:1px solid var(--border-color)}.filter-tab{display:inline-flex;align-items:center;justify-content:center;padding:4px 12px;font-size:.78rem;font-weight:500;color:var(--text-muted);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm, 6px);cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.filter-tab:hover{color:var(--text-main);background:var(--surface-light-6)}.filter-tab.active,.filter-tab.is-active{color:var(--text-on-accent, #020617);background:var(--accent-primary, #22c55e);font-weight:700;box-shadow:0 1px 4px #22c55e40}.modal-overlay,.ui-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--surface-dark-82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:200;padding:12px}.modal-content,.ui-modal-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:22px;width:100%;max-width:520px;box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto}.alert-box{padding:10px 14px;border-radius:var(--radius-sm);font-size:.82rem;margin-bottom:14px}.alert-danger{background:var(--surface-danger-12);border:1px solid var(--danger-color);color:var(--text-error-light)}.alert-success{background:var(--surface-accent-12);border:1px solid var(--success-color);color:var(--text-success)}@media(max-width:1024px){:root{--content-padding: 14px 16px;--sidebar-width: 260px}.sidebar,.app-sidebar{position:fixed;top:0;bottom:0;left:0;width:260px!important;transform:translate(-100%);box-shadow:var(--shadow-lg, 0 12px 28px -6px rgba(0, 0, 0, .5))}.sidebar.mobile-open{transform:translate(0)}.sidebar.collapsed{width:260px!important}.sidebar.collapsed .brand-text,.sidebar.collapsed .sidebar-group-header,.sidebar.collapsed .nav-link-text,.sidebar.collapsed .collapse-btn-text,.sidebar.collapsed .user-card-info{display:flex!important;opacity:1!important;width:auto!important}.sidebar.collapsed .sidebar-group-header{height:auto!important;padding:0 10px 4px!important}.sidebar.collapsed .nav-link{justify-content:flex-start!important;padding:9px 12px!important;gap:12px!important}.sidebar.collapsed .sidebar-user-card{justify-content:flex-start!important;padding:8px 10px!important;background:var(--bg-card, rgba(15, 23, 42, .6))!important;border-color:var(--border-color)!important}.sidebar-collapse-btn{display:none}.mobile-close-btn,.mobile-hamburger-btn{display:flex}}@media(max-width:768px){:root{--content-padding: 10px 12px}.header-bar{margin-bottom:14px;padding-bottom:8px}.user-email{display:none}.user-pill{padding:3px 8px}.stats-grid,.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin-bottom:14px}.stat-card,.metric-card{padding:12px}.stat-value,.metric-value{font-size:1.25rem}.table-card,.content-card{padding:12px 14px;border-radius:var(--radius-md)}.modal-content,.ui-modal-card{padding:16px 12px;border-radius:var(--radius-md)}}@media(max-width:640px){.hide-mobile{display:none!important}.page-header-banner,.page-header{flex-direction:column!important;align-items:stretch!important;gap:10px!important;padding:12px 14px!important;margin-bottom:12px!important}.page-header-left{width:100%!important}.page-header-title-row{width:100%!important;justify-content:flex-start!important}.page-header-title{font-size:1.1rem!important}.table-header,.card-header{flex-direction:column!important;align-items:stretch!important;gap:8px!important;margin-bottom:10px!important;padding-bottom:8px!important}.card-header-main{width:100%!important}.card-title{font-size:.92rem!important}.page-header-actions,.card-header-actions{width:100%!important;display:flex!important;flex-direction:column!important;gap:6px!important;margin-top:4px!important}.page-header-actions .btn,.page-header-actions .btn-primary,.page-header-actions .btn-cta,.card-header-actions .btn,.card-header-actions .btn-primary,.card-header-actions .btn-cta{width:100%!important;padding:8px 12px!important;font-size:.84rem!important;justify-content:center!important;box-sizing:border-box!important;margin:0!important}}@media(max-width:480px){.stats-grid,.metrics-grid{grid-template-columns:1fr}.header-bar{flex-wrap:wrap}}.invoice-segmented-container{display:inline-flex;align-items:center;background:var(--surface-dark-60);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:0 6px;min-height:36px;height:36px;width:100%;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease;cursor:text}.invoice-segmented-container:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--surface-accent-20)}.invoice-segmented-container.is-compact{min-height:32px;height:32px;padding:0 4px;border-radius:4px}.invoice-segmented-container.is-duplicate{border-color:#f43f5e!important;background:var(--surface-danger-8)!important;box-shadow:0 0 0 2px var(--surface-danger-25)!important}.invoice-segmented-container.is-duplicate .slot-input,.invoice-segmented-container.is-duplicate .override-input{color:#fca5a5!important}.invoice-segmented-container.is-duplicate .input-prefix-addon{background:var(--surface-danger-20)!important;color:#fca5a5!important}tr.row-has-error{background:var(--surface-danger-8)!important}tr.row-has-error td.row-index-cell{color:#f43f5e!important;font-weight:800!important}.amount-input-wrapper.is-error{border-color:#f43f5e!important;background:var(--surface-danger-8)!important;box-shadow:0 0 0 2px var(--surface-danger-25)!important;border-radius:4px}.amount-input-wrapper.is-error input{color:#fca5a5!important}.mobile-invoice-card.is-error{border-color:#f43f5e!important;background:var(--surface-danger-6)!important;box-shadow:0 0 0 2px var(--surface-danger-25)!important}.invoice-segmented-container.has-warning{border-color:var(--surface-warning-60)}.text-success{color:var(--accent-primary, #22c55e)!important}.input-prefix-addon{display:inline-flex;align-items:center;background:var(--surface-light-6);color:var(--text-muted);font-size:.78rem;font-weight:700;padding:0 6px;height:22px;border-radius:4px;-webkit-user-select:none;user-select:none;margin-right:4px;white-space:nowrap;letter-spacing:.02em;box-sizing:border-box;flex-shrink:0}.invoice-segmented-container.is-compact .input-prefix-addon{height:20px;padding:0 4px;font-size:.74rem}.input-suffix-addon{display:inline-flex;align-items:center;background:var(--surface-light-6);color:var(--text-muted);font-size:.78rem;font-weight:700;padding:0 6px;height:22px;border-radius:4px;-webkit-user-select:none;user-select:none;margin-left:4px;white-space:nowrap;box-sizing:border-box;flex-shrink:0}.invoice-segmented-container.is-compact .input-suffix-addon{height:20px;padding:0 4px;font-size:.74rem}.badge-override{background:var(--surface-warning-15);color:var(--text-warning);border:1px solid var(--surface-warning-30);font-weight:800;font-size:.85rem;min-width:20px;justify-content:center}.slots-wrapper{display:inline-flex;align-items:center;gap:2px;flex:1;overflow-x:auto}.slot-input{background:transparent;border:1px solid transparent;border-radius:3px;color:var(--text-main);font-size:.85rem;font-weight:600;text-align:center;padding:2px 3px;height:24px;line-height:24px;outline:none;transition:all .12s ease;min-width:28px;box-sizing:border-box}.invoice-segmented-container.is-compact .slot-input{font-size:.82rem;height:22px;line-height:22px;padding:1px 2px}.slot-input:focus{background:var(--surface-accent-12);border-color:var(--surface-accent-50);color:var(--text-white)}.slot-input::placeholder{color:var(--surface-light-20);font-weight:400}.slot-input.slot-incomplete{border-color:var(--surface-warning-50);color:var(--text-warning)}.slot-delimiter{color:var(--text-muted);font-weight:700;font-size:.85rem;padding:0 1px;-webkit-user-select:none;user-select:none}.override-input{flex:1;width:100%;height:24px!important;min-height:24px!important;background:transparent!important;border:none!important;box-shadow:none!important;margin:0!important;padding:0 6px!important;font-size:.85rem;font-family:inherit;font-weight:500;color:var(--text-main);outline:none!important;box-sizing:border-box}.invoice-segmented-container.is-compact .override-input{height:22px!important;min-height:22px!important;font-size:.82rem;padding:0 4px!important}.override-input:focus{border:none!important;outline:none!important;box-shadow:none!important}.btn-toggle-override{background:transparent;border:none;color:var(--text-muted);padding:0;height:22px;width:22px;margin-left:auto;cursor:pointer;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease;opacity:.6;flex-shrink:0;box-sizing:border-box}.invoice-segmented-container.is-compact .btn-toggle-override{height:20px;width:20px}.btn-toggle-override:hover{color:var(--text-main);background:var(--surface-light-8);opacity:1}.password-toggle-btn:hover{color:var(--text-main)!important;background:var(--surface-light-8)}.searchable-select-container{position:relative;width:100%;box-sizing:border-box;-webkit-user-select:none;user-select:none}.searchable-select-trigger{width:100%;background:var(--surface-dark-60);border:1px solid var(--border-color);padding:6px 10px;border-radius:var(--radius-sm);color:var(--text-main);font-size:.85rem;font-weight:500;min-height:36px;height:36px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.searchable-select-container:focus-within .searchable-select-trigger,.searchable-select-container.is-open .searchable-select-trigger{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--surface-accent-20)}.searchable-select-container.is-compact .searchable-select-trigger{min-height:32px;height:32px;padding:4px 8px;font-size:.82rem;border-radius:4px}.searchable-select-container.is-disabled .searchable-select-trigger{opacity:.5;cursor:not-allowed}.searchable-select-container.is-duplicate .searchable-select-trigger{border-color:#f43f5e!important;background:var(--surface-danger-8)!important;box-shadow:0 0 0 2px var(--surface-danger-25)!important}.searchable-select-value{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.searchable-select-value.is-placeholder{color:var(--text-muted)}.searchable-select-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.select-clear-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:2px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.select-clear-btn:hover{color:var(--text-main);background:var(--surface-light-10)}.select-chevron{color:var(--text-muted);transition:transform .2s ease}.select-chevron.rotate-180{transform:rotate(180deg)}.searchable-select-popover{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:250;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);padding:6px;min-width:180px}.select-search-bar{display:flex;align-items:center;gap:6px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:4px 8px;margin-bottom:4px}.select-search-bar:focus-within{border-color:var(--accent-primary)}.select-search-icon{color:var(--text-muted);flex-shrink:0}.select-search-input{flex:1;background:transparent;border:none;color:var(--text-main);font-size:.8rem;outline:none;padding:0;min-height:auto;box-shadow:none!important}.select-search-clear{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:0;display:flex;align-items:center}.select-options-list{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.select-options-list::-webkit-scrollbar{width:4px}.select-options-list::-webkit-scrollbar-thumb{background:var(--surface-light-15);border-radius:2px}.select-option{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-radius:4px;font-size:.82rem;color:var(--text-main);cursor:pointer;transition:background .12s ease}.select-option:hover,.select-option.is-highlighted{background:var(--surface-light-8)}.select-option.is-selected{background:var(--surface-accent-12);color:var(--accent-primary);font-weight:600}.select-option.is-disabled{opacity:.4;cursor:not-allowed}.select-option-content{flex:1;overflow:hidden;text-align:left}.select-option-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.select-option-sublabel{font-size:.72rem;color:var(--text-muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.select-check-icon{color:var(--accent-primary);flex-shrink:0;margin-left:6px}.select-no-results{padding:12px;text-align:center;font-size:.8rem;color:var(--text-muted)}.fullscreen-grid-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:2000;background:var(--bg-primary);display:flex;flex-direction:column;width:100%;max-width:100%;height:100vh;height:100dvh;overflow-x:hidden;overflow-y:hidden;box-sizing:border-box;animation:fadeIn .15s ease-out}.fullscreen-grid-header{height:52px;min-height:52px;max-height:52px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 16px;gap:12px;flex-shrink:0;flex-wrap:nowrap;box-sizing:border-box;overflow:hidden}.header-left{display:flex;align-items:center;gap:10px;flex-shrink:1;min-width:0}.header-badge{display:inline-flex;align-items:center;gap:5px;background:var(--surface-accent-12);color:var(--accent-primary);border:1px solid var(--surface-accent-25);padding:3px 8px;border-radius:20px;font-size:.72rem;font-weight:700;letter-spacing:.03em;white-space:nowrap;flex-shrink:0}.header-title{font-size:1.05rem;font-weight:800;color:var(--text-main);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1}.draft-indicator{display:inline-flex;align-items:center;justify-content:center;gap:5px;background:var(--surface-light-4);border:1px solid var(--border-color);color:var(--text-muted);font-size:.72rem;font-weight:600;padding:3px 8px;border-radius:4px;min-width:76px;height:24px;box-sizing:border-box;flex-shrink:0}.draft-status-text{display:inline-block;text-align:center}.header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.summary-pill{display:inline-flex;align-items:center;gap:5px;background:var(--surface-light-4);border:1px solid var(--border-color);padding:3px 8px;height:28px;border-radius:6px;font-size:.78rem;box-sizing:border-box;white-space:nowrap}.summary-pill.highlight{background:var(--surface-info-10);border-color:var(--surface-info-30);color:var(--text-info);min-width:80px;justify-content:center}.summary-label{color:var(--text-muted);font-weight:500;font-size:.74rem}.summary-value{font-weight:700;font-family:var(--font-mono, monospace);font-size:.78rem}.btn-header-action{font-size:.78rem!important;padding:4px 8px!important;height:28px!important;display:inline-flex!important;align-items:center!important;gap:4px!important;border-radius:6px!important;flex-shrink:0!important}.btn-close-fullscreen{background:transparent;border:none;color:var(--text-muted);padding:4px;height:28px;width:28px;cursor:pointer;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.btn-close-fullscreen:hover{color:var(--text-main);background:var(--surface-light-8)}.fullscreen-alert-banner{padding:10px 20px;display:flex;align-items:center;gap:10px;font-size:.85rem;font-weight:600;flex-shrink:0}.fullscreen-grid-body{flex:1;overflow:auto;background:var(--surface-dark-40)}.fullscreen-spreadsheet-table{width:100%;border-collapse:collapse;font-size:.85rem;min-width:850px}.fullscreen-spreadsheet-table thead th{position:sticky;top:0;z-index:10;background:var(--bg-secondary);border-bottom:2px solid var(--border-color);padding:8px 10px;font-size:.76rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;text-align:left}.fullscreen-spreadsheet-table tbody tr{border-bottom:1px solid var(--surface-light-5);transition:background .1s ease}.fullscreen-spreadsheet-table tbody tr:hover{background:var(--surface-light-2)}.fullscreen-spreadsheet-table tbody tr.row-active{background:var(--surface-accent-8)}.row-index-cell{text-align:center;font-family:monospace;font-size:.78rem;color:var(--text-muted);-webkit-user-select:none;user-select:none}.btn-remove-row,.btn-row-delete{background:transparent;border:1px solid transparent;color:var(--text-muted);cursor:pointer;width:30px;height:30px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.btn-remove-row:hover:not(:disabled),.btn-row-delete:hover:not(:disabled){color:#f43f5e;background:var(--surface-danger-12);border-color:var(--surface-danger-30);box-shadow:0 0 10px var(--surface-danger-15)}.btn-remove-row:focus-visible:not(:disabled),.btn-row-delete:focus-visible:not(:disabled){outline:none;box-shadow:0 0 0 2px var(--surface-danger-40)}.btn-remove-row:disabled,.btn-row-delete:disabled{opacity:.25;cursor:not-allowed;pointer-events:none}.btn-grid-row-action{background:var(--surface-light-6);border:1px solid var(--border-color);color:var(--text-muted);width:28px;height:28px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.btn-grid-row-action:hover{color:var(--text-main);background:var(--surface-light-12);border-color:var(--surface-light-20)}.btn-grid-row-action.delete:hover:not(:disabled){color:#f43f5e;border-color:var(--surface-danger-40);background:var(--surface-danger-10)}.btn-grid-row-action:disabled{opacity:.3;cursor:not-allowed}.amount-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.amount-input-wrapper input.form-input,.amount-input-wrapper input.input-field{width:100%;padding-right:48px!important;text-align:right;font-family:var(--font-mono, monospace);background:var(--surface-dark-60)!important;color:var(--text-main)!important;border:1px solid var(--border-color);border-radius:var(--radius-sm, 6px)!important;box-sizing:border-box}.amount-input-wrapper input.form-input:focus,.amount-input-wrapper input.input-field:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--surface-accent-20);outline:none}.amount-input-wrapper input.form-input.is-compact,.amount-input-wrapper input.input-field.is-compact{padding-right:44px!important;height:32px!important;min-height:32px!important;font-size:.84rem;border-radius:6px!important}.amount-input-wrapper .currency-tag{position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:.72rem;font-weight:700;font-family:var(--font-mono, monospace);color:var(--text-muted);pointer-events:none;-webkit-user-select:none;user-select:none;background:var(--surface-light-6);padding:1px 6px;border-radius:4px;border:1px solid var(--surface-light-12);line-height:1.2;height:20px;display:inline-flex;align-items:center}.amount-input-wrapper input:focus~.currency-tag{color:var(--accent-primary);border-color:var(--surface-accent-30);background:var(--surface-accent-10)}.fullscreen-grid-footer{height:52px;min-height:52px;background:var(--bg-secondary);border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 20px;flex-shrink:0}.footer-left{display:flex;align-items:center;gap:16px}.footer-shortcut-hint{font-size:.75rem;color:var(--text-muted)}.footer-shortcut-hint kbd{background:var(--surface-light-8);border:1px solid var(--border-color);border-radius:3px;padding:1px 4px;font-size:.7rem;font-family:monospace;color:var(--text-main)}.footer-right{display:flex;align-items:center;gap:12px}.floating-select-popover{box-shadow:0 12px 30px var(--surface-dark-65),0 0 0 1px var(--border-color)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.fullscreen-floating-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:9999;padding:10px 18px;border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:10px;max-width:90vw;box-shadow:0 12px 32px var(--surface-dark-85),0 0 0 1px var(--border-color);animation:slideUpToast .25s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.fullscreen-floating-toast.toast-danger,.fullscreen-floating-toast.alert-danger{background:var(--surface-danger-3);border:1px solid #f43f5e;color:var(--text-error-toast);box-shadow:0 10px 28px #000000b3,0 0 0 1px var(--surface-danger-30)}.fullscreen-floating-toast.toast-success,.fullscreen-floating-toast.alert-success{background:#061e14f2;border:1px solid #10b981;color:var(--text-success-toast);box-shadow:0 10px 28px #000000b3,0 0 0 1px #10b9814d}@keyframes slideUpToast{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}.toast-message{font-size:.85rem;font-weight:600;line-height:1.3}.btn-toast-close{background:transparent;border:none;color:inherit;cursor:pointer;padding:2px 6px;margin-left:6px;opacity:.75;transition:opacity .15s ease;display:inline-flex;align-items:center;justify-content:center}.btn-toast-close:hover{opacity:1}.btn-toast-close{background:transparent;border:none;color:#f43f5e;cursor:pointer;padding:2px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s ease;margin-left:6px}.btn-toast-close:hover{background:#f43f5e33;color:var(--text-white)}.footer-error-indicator{display:inline-flex;align-items:center;gap:5px;background:var(--surface-danger-15);border:1px solid var(--surface-danger-40);color:#f43f5e;padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:700;cursor:pointer;animation:pulse 2s infinite}.desktop-table-container{display:block;width:100%;max-width:100%;overflow-x:auto;box-sizing:border-box;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--surface-indigo-40) var(--surface-dark-60)}.desktop-table-container::-webkit-scrollbar,.fullscreen-grid-body::-webkit-scrollbar,.slots-wrapper::-webkit-scrollbar{height:6px;width:6px}.desktop-table-container::-webkit-scrollbar-track,.fullscreen-grid-body::-webkit-scrollbar-track,.slots-wrapper::-webkit-scrollbar-track{background:var(--surface-dark-40);border-radius:4px}.desktop-table-container::-webkit-scrollbar-thumb,.fullscreen-grid-body::-webkit-scrollbar-thumb,.slots-wrapper::-webkit-scrollbar-thumb{background:var(--surface-indigo-40);border-radius:4px;border:1px solid var(--surface-indigo-20);transition:all .15s ease}.desktop-table-container::-webkit-scrollbar-thumb:hover,.fullscreen-grid-body::-webkit-scrollbar-thumb:hover,.slots-wrapper::-webkit-scrollbar-thumb:hover{background:var(--surface-indigo-70);border-color:#6366f180;box-shadow:0 0 8px var(--surface-indigo-40)}.mobile-card-deck-container{display:none}.hide-on-desktop{display:none!important}@media(max-width:767px){.hide-on-mobile{display:none!important}.hide-on-desktop{display:flex!important}.fullscreen-grid-overlay{height:100dvh;width:100%;max-width:100%;overflow-x:hidden}.fullscreen-grid-header{padding:0 10px;height:48px;min-height:48px;max-height:48px;flex-wrap:nowrap;gap:6px}.fullscreen-grid-header .header-left{gap:6px}.fullscreen-grid-header .header-title{font-size:.92rem}.fullscreen-grid-header .header-badge{display:none}.fullscreen-grid-header .draft-indicator{padding:3px;min-width:24px;width:24px;height:24px;justify-content:center}.fullscreen-grid-header .summary-pill{padding:2px 6px;font-size:.74rem;height:26px}.fullscreen-grid-header .summary-pill.highlight{min-width:68px}.fullscreen-grid-header .btn-icon-compact{padding:0!important;width:26px!important;height:26px!important;min-width:26px!important;justify-content:center!important}.desktop-table-container{display:none}.mobile-card-deck-container{display:flex;flex-direction:column;padding:12px 14px 24px;gap:12px}.mobile-card-deck-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:4px}.deck-count-text{font-size:.8rem;color:var(--text-muted);font-weight:500}.mobile-card-list{display:flex;flex-direction:column;gap:12px}.mobile-invoice-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px;box-shadow:0 4px 12px var(--surface-dark-20);transition:all .2s ease;scroll-margin-bottom:90px}.mobile-invoice-card.is-complete{border-color:var(--surface-accent-30);background:linear-gradient(180deg,rgba(34,197,94,.03) 0%,var(--bg-card) 100%)}.mobile-invoice-card.is-duplicate{border-color:#f43f5e;background:var(--surface-danger-5)}.mobile-card-topbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid var(--surface-light-6)}.card-badge-info{display:flex;align-items:center;gap:8px}.card-index-badge{background:var(--surface-light-10);color:var(--text-main);font-weight:700;font-size:.75rem;font-family:monospace;padding:2px 7px;border-radius:6px}.card-payee-preview{font-size:.85rem;font-weight:600;color:var(--text-main);max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-top-actions{display:flex;align-items:center;gap:6px}.btn-card-action{background:var(--surface-light-6);border:1px solid var(--border-color);color:var(--text-muted);width:32px;height:32px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.btn-card-action:hover{color:var(--text-main);background:var(--surface-light-12)}.btn-card-action.delete:hover:not(:disabled){color:#f43f5e;border-color:var(--surface-danger-40);background:var(--surface-danger-10)}.btn-card-action:disabled{opacity:.3;cursor:not-allowed}.mobile-card-form{display:flex;flex-direction:column;gap:10px}.mobile-form-group{display:flex;flex-direction:column;gap:4px}.mobile-field-label{font-size:.75rem;font-weight:600;color:var(--text-muted);display:flex;align-items:center;gap:5px}.mobile-amount-wrapper{position:relative}.mobile-amount-wrapper .currency-tag{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:.78rem;font-weight:700;color:var(--text-muted)}.mobile-deck-footer-actions{padding-top:8px;padding-bottom:20px}.btn-block{width:100%;justify-content:center;padding:10px 16px;font-size:.88rem}.fullscreen-grid-footer{padding:10px 14px;padding-bottom:calc(10px + env(safe-area-inset-bottom));height:auto;min-height:56px}.mobile-full-width{width:100%;display:flex}.btn-submit-invoices{width:100%;padding:12px 18px;font-size:.92rem;border-radius:8px}.invoice-segmented-container{height:40px;min-height:40px;padding:0 8px}.invoice-segmented-container .input-prefix-addon,.invoice-segmented-container .input-suffix-addon,.invoice-segmented-container .btn-toggle-override{height:26px}.invoice-segmented-container .btn-toggle-override{width:26px}.invoice-segmented-container .slot-input{height:28px;min-height:28px;font-size:.95rem}.invoice-segmented-container .override-input{height:28px!important;min-height:28px!important;font-size:.95rem!important}}.select-mobile-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999999;display:flex;flex-direction:column;justify-content:flex-end}.select-sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface-dark-65);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeInBackdrop .2s ease}@keyframes fadeInBackdrop{0%{opacity:0}to{opacity:1}}.select-bottom-sheet{position:relative;background:var(--bg-elevated);border:1px solid var(--border-color);border-top-left-radius:18px;border-top-right-radius:18px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 -10px 30px #000c;padding-bottom:calc(16px + env(safe-area-inset-bottom));animation:slideUpSheet .25s cubic-bezier(.16,1,.3,1);overflow:hidden}@keyframes slideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-handle-bar{display:flex;justify-content:center;padding:10px 0 4px}.sheet-handle-pill{width:36px;height:4px;border-radius:2px;background:var(--surface-light-20)}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px 10px;border-bottom:1px solid var(--surface-light-8)}.sheet-title{font-size:.95rem;font-weight:700;color:var(--text-main)}.sheet-close-btn{background:transparent;border:none;color:var(--text-muted);padding:4px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center}.sheet-close-btn:hover{color:var(--text-main);background:var(--surface-light-10)}.sheet-search-bar{padding:10px 16px;border-bottom:1px solid var(--surface-light-8)}.sheet-input{height:40px!important;font-size:.92rem!important}.sheet-options-list{max-height:50vh!important;overflow-y:auto;padding:8px 10px}.sheet-option-item{padding:12px 14px!important;min-height:48px;border-radius:8px!important;margin-bottom:4px}.sheet-option-item .select-option-label{font-size:.92rem;font-weight:600}.sheet-option-item .select-option-sublabel{font-size:.78rem;margin-top:2px}.payee-workspace-body{padding:24px;overflow-x:hidden;overflow-y:auto;display:flex;justify-content:center;width:100%;max-width:100%;box-sizing:border-box}.payee-workspace-form{width:100%;max-width:1180px;box-sizing:border-box;min-width:0}.payee-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start;width:100%;max-width:100%;box-sizing:border-box;min-width:0}@media(max-width:900px){.payee-editor-grid{grid-template-columns:1fr;gap:20px}}.payee-editor-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:20px;box-shadow:0 4px 16px var(--surface-dark-25);width:100%;max-width:100%;box-sizing:border-box;min-width:0;overflow:hidden}.payee-editor-card.pattern-engine-card{border-color:var(--surface-indigo-25);background:linear-gradient(180deg,rgba(99,102,241,.03) 0%,var(--bg-card) 100%)}.card-section-header{display:flex;align-items:flex-start;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--surface-light-6)}.section-icon-pill{width:36px;height:36px;border-radius:8px;background:var(--surface-light-6);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;color:var(--text-main);flex-shrink:0}.section-icon-pill.highlight{background:var(--surface-indigo-12);border-color:var(--surface-indigo-30);color:var(--text-indigo-strong)}.section-title{font-size:1.05rem;font-weight:700;color:var(--text-main);margin:0}.section-subtitle{font-size:.8rem;color:var(--text-muted);margin-top:3px}.form-group-stack{display:flex;flex-direction:column;gap:16px}.form-row-2col{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:600px){.form-row-2col{grid-template-columns:1fr}}.input-with-icon{position:relative;display:flex;align-items:center;width:100%}.input-leading-icon{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--text-dim);pointer-events:none}.has-leading-icon{padding-left:36px!important}.pattern-header-line{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;flex-wrap:wrap;gap:4px}.pattern-syntax-hint{font-size:.72rem;color:var(--text-muted)}.pattern-syntax-hint code{background:var(--surface-light-8);padding:1px 4px;border-radius:4px;color:var(--text-info);font-family:monospace}.pattern-input-with-preset-btn{position:relative;display:flex;align-items:center;gap:8px;width:100%;max-width:100%;box-sizing:border-box;min-width:0}.pattern-main-input{flex:1 1 0%;min-width:0;font-weight:600;color:var(--text-info);letter-spacing:.5px}.btn-compact-preset-trigger{display:inline-flex;align-items:center;gap:5px;background:var(--surface-indigo-10);border:1px solid var(--surface-indigo-30);color:var(--text-indigo);font-size:.78rem;font-weight:600;height:36px;padding:0 12px;border-radius:6px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .15s ease}.btn-compact-preset-trigger:hover,.btn-compact-preset-trigger.active{background:var(--surface-indigo-20);border-color:#6366f180;color:var(--text-white);box-shadow:0 0 12px var(--surface-indigo-20)}.btn-compact-preset-trigger .preset-chevron{transition:transform .2s ease}.btn-compact-preset-trigger .preset-chevron.rotate{transform:rotate(180deg)}.compact-preset-popover{position:absolute;top:calc(100% + 6px);right:0;width:320px;max-width:90vw;background:var(--bg-elevated);border:1px solid var(--surface-indigo-35);border-radius:10px;box-shadow:0 12px 32px var(--surface-dark-85);z-index:1000;display:flex;flex-direction:column;overflow:hidden;animation:fadeInDown .15s cubic-bezier(.16,1,.3,1)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.preset-popover-header{padding:10px 12px;border-bottom:1px solid var(--surface-light-8);background:var(--surface-dark-20);display:flex;flex-direction:column;gap:8px}.popover-title-row{display:flex;align-items:center;justify-content:space-between}.popover-title{font-size:.8rem;font-weight:700;color:var(--text-main);display:flex;align-items:center;gap:5px}.popover-badge{font-size:.68rem;color:var(--text-muted);background:var(--surface-light-6);padding:1px 6px;border-radius:4px}.popover-search{height:30px!important;font-size:.78rem!important;margin-top:0!important}.preset-popover-list{max-height:240px;overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:4px}.preset-popover-item{display:flex;flex-direction:column;align-items:flex-start;gap:3px;background:transparent;border:1px solid transparent;border-radius:6px;padding:8px 10px;text-align:left;cursor:pointer;transition:all .15s ease;width:100%}.preset-popover-item:hover{background:var(--surface-indigo-12);border-color:var(--surface-indigo-25)}.preset-item-top{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px}.preset-item-category{font-size:.68rem;font-weight:700;color:var(--text-indigo-strong);text-transform:uppercase;letter-spacing:.3px}.preset-item-pattern{font-size:.78rem;font-weight:700;color:var(--text-info)}.preset-item-desc{font-size:.72rem;color:var(--text-muted)}.dynamic-tokens-container{display:flex;flex-direction:column;gap:8px;background:var(--surface-dark-15);border:1px solid var(--surface-light-5);border-radius:8px;padding:10px 12px}.token-category-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.token-category-title{font-size:.72rem;font-weight:700;color:var(--text-muted);display:flex;align-items:center;gap:4px;min-width:155px}.token-pills-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.btn-token-chip{display:inline-flex;align-items:center;gap:4px;background:var(--surface-light-5);border:1px solid var(--surface-light-8);border-radius:6px;padding:3px 7px;cursor:pointer;transition:all .15s ease}.btn-token-chip code{font-size:.72rem;font-family:monospace;font-weight:700}.btn-token-chip.date code{color:var(--text-info)}.btn-token-chip.slot code{color:var(--text-indigo)}.btn-token-chip.sep code{color:var(--text-main)}.btn-token-chip .chip-badge{font-size:.65rem;background:var(--surface-info-12);color:var(--text-info);padding:1px 4px;border-radius:4px;font-weight:700}.btn-token-chip .chip-desc{font-size:.65rem;color:var(--text-muted)}.btn-token-chip:hover{background:var(--surface-indigo-15);border-color:var(--surface-indigo-35);transform:translateY(-1px)}.pattern-sandbox-box{background:var(--surface-dark-25);border:1px dashed var(--surface-indigo-35);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:12px}.sandbox-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.sandbox-badge{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;font-weight:700;color:var(--text-indigo);background:var(--surface-indigo-10);padding:3px 8px;border-radius:6px}.sandbox-hint{font-size:.72rem;color:var(--text-dim)}.sandbox-output-preview{display:flex;align-items:center;gap:8px;background:var(--surface-light-3);padding:8px 12px;border-radius:6px;border:1px solid var(--surface-light-5)}.output-label{font-size:.74rem;font-weight:600;color:var(--text-muted)}.output-val{font-size:.85rem;font-weight:700;color:var(--text-info)}.compact-preset-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-payees-deck{display:flex;flex-direction:column;gap:12px;padding:12px 14px 20px}.mobile-payee-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px;box-shadow:0 4px 16px var(--surface-dark-20)}.mobile-payee-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--surface-light-6)}.mobile-payee-info{display:flex;flex-direction:column;gap:2px;min-width:0}.payee-card-name{font-size:.95rem;font-weight:700;color:var(--text-main);word-break:break-word}.payee-card-bank{font-size:.78rem;color:var(--text-muted)}.mobile-payee-badges{display:flex;align-items:center;gap:6px;flex-shrink:0;flex-wrap:wrap}.mobile-payee-card-body{display:flex;flex-direction:column;gap:6px;font-size:.82rem}.payee-field-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.payee-field-row .field-label{color:var(--text-muted);font-weight:500}.payee-field-row .field-val{color:var(--text-main);font-weight:600;word-break:break-all}.payee-field-row .pattern-val{color:var(--accent-primary)}.mobile-payee-card-actions{display:flex;align-items:center;gap:8px;padding-top:8px;border-top:1px solid var(--surface-light-6)}.mobile-payee-card-actions .btn{flex:1;justify-content:center;min-height:34px}.mobile-payee-card-actions .btn-icon-only{flex:0 0 34px;padding:0}@media(max-width:768px){.payee-workspace-body{padding:14px 10px;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.payee-editor-grid{grid-template-columns:1fr;gap:14px;width:100%;max-width:100%}.payee-editor-card{padding:16px 12px;gap:14px;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}}@media(max-width:600px){.fullscreen-grid-header{padding:0 10px;height:48px;min-height:48px;max-height:48px;flex-wrap:nowrap;gap:6px;width:100%;max-width:100%;box-sizing:border-box}.fullscreen-grid-header .header-title{font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px;min-width:0}.payee-workspace-body{padding:10px 8px;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.payee-workspace-form{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.payee-editor-card{padding:12px 10px;border-radius:10px;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.form-row-2col{grid-template-columns:1fr;gap:10px;width:100%;max-width:100%;box-sizing:border-box}.pattern-header-line{flex-direction:column;align-items:flex-start;gap:2px;width:100%;max-width:100%}.pattern-syntax-hint{word-break:break-all;max-width:100%}.pattern-syntax-hint code{word-break:break-all;overflow-wrap:anywhere;max-width:100%}.pattern-input-with-preset-btn{gap:6px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.pattern-main-input{min-width:0;flex:1 1 0%;width:0}.btn-compact-preset-trigger{padding:0 8px;height:36px;flex-shrink:0}.preset-btn-label{display:none}.compact-preset-popover{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100vw - 32px);max-width:340px;max-height:80vh;z-index:10000;box-shadow:0 20px 50px var(--surface-dark-90),0 0 0 1px var(--surface-indigo-40);animation:zoomInMobile .18s cubic-bezier(.16,1,.3,1)}@keyframes zoomInMobile{0%{opacity:0;transform:translate(-50%,-46%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.dynamic-tokens-container{padding:8px;gap:8px;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.token-category-group{flex-direction:column;align-items:flex-start;gap:6px;width:100%;max-width:100%}.token-category-title{width:100%;min-width:0}.token-pills-list{width:100%;max-width:100%;gap:5px}.btn-token-chip{padding:3px 6px;font-size:.74rem;max-width:100%}.pattern-sandbox-box{padding:10px;gap:8px;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.sandbox-top{flex-direction:column;align-items:flex-start;gap:4px;width:100%}.sandbox-output-preview{flex-direction:column;align-items:flex-start;gap:4px;padding:6px 8px;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.output-val{word-break:break-all;overflow-wrap:anywhere;font-size:.8rem;max-width:100%}.fullscreen-grid-footer{padding:8px 10px;padding-bottom:calc(8px + env(safe-area-inset-bottom));height:auto;min-height:56px;width:100%;max-width:100%;box-sizing:border-box}.payee-workspace-footer-actions{width:100%;display:flex;gap:8px}.payee-workspace-footer-actions .btn{flex:1;width:50%;min-width:0!important;justify-content:center;height:40px;font-size:.86rem;padding:0 6px}.fullscreen-floating-toast{bottom:calc(68px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px);width:calc(100% - 24px);box-sizing:border-box}}.confirm-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3500;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.confirm-dialog-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface-dark-75);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .15s ease-out}.confirm-dialog-box{position:relative;width:100%;max-width:440px;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:14px;box-shadow:0 20px 50px var(--surface-dark-85),0 0 0 1px var(--surface-light-8);display:flex;flex-direction:column;overflow:hidden;animation:zoomInDialog .18s cubic-bezier(.16,1,.3,1);box-sizing:border-box}@keyframes zoomInDialog{0%{opacity:0;transform:scale(.94) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-dialog-box.variant-danger{border-color:var(--surface-danger-35);box-shadow:0 20px 50px var(--surface-dark-85),0 0 0 1px var(--surface-danger-25)}.confirm-dialog-box.variant-warning{border-color:var(--surface-warning-35);box-shadow:0 20px 50px var(--surface-dark-85),0 0 0 1px var(--surface-warning-25)}.confirm-dialog-box.variant-primary,.confirm-dialog-box.variant-info{border-color:var(--surface-indigo-35)}.confirm-dialog-header{padding:16px 18px 12px;display:flex;align-items:center;gap:12px}.dialog-icon-pill{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dialog-icon-pill.variant-danger{background:var(--surface-danger-12);border:1px solid var(--surface-danger-30);color:#f43f5e}.dialog-icon-pill.variant-warning{background:#f59e0b1f;border:1px solid var(--surface-warning-30);color:var(--text-warning)}.dialog-icon-pill.variant-primary,.dialog-icon-pill.variant-info{background:var(--surface-indigo-12);border:1px solid var(--surface-indigo-30);color:var(--text-indigo-strong)}.dialog-icon-pill.variant-success{background:var(--surface-accent-12);border:1px solid var(--surface-accent-30);color:var(--text-success)}.dialog-title-area{flex:1;min-width:0}.dialog-title{font-size:1.05rem;font-weight:700;color:var(--text-main);margin:0;line-height:1.3}.dialog-btn-close{background:transparent;border:none;color:var(--text-muted);width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.dialog-btn-close:hover{color:var(--text-main);background:var(--surface-light-8)}.confirm-dialog-body{padding:0 18px 16px}.dialog-message{font-size:.88rem;color:var(--text-muted);line-height:1.5;margin:0}.confirm-dialog-footer{padding:12px 18px 16px;display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid var(--surface-light-6);background:var(--surface-dark-15)}.dialog-btn-cancel{min-width:90px;height:38px;font-size:.86rem}.dialog-btn-confirm{min-width:120px;height:38px;font-size:.86rem;font-weight:700;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.dialog-btn-confirm.variant-danger{background:#e11d48;border:1px solid #f43f5e;color:var(--text-white)}.dialog-btn-confirm.variant-danger:hover{background:#f43f5e;box-shadow:0 0 14px var(--surface-danger-40)}.dialog-btn-confirm.variant-warning{background:#d97706;border:1px solid #f59e0b;color:var(--text-white)}.dialog-btn-confirm.variant-warning:hover{background:#f59e0b;box-shadow:0 0 14px var(--surface-warning-40)}.dialog-btn-confirm.variant-primary,.dialog-btn-confirm.variant-info,.dialog-btn-confirm.variant-success{background:var(--accent-primary, #22c55e);border:1px solid var(--accent-primary, #22c55e);color:var(--text-white)}@media(max-width:480px){.confirm-dialog-footer{width:100%}.confirm-dialog-footer .btn{flex:1;width:50%;min-width:0;justify-content:center}}.language-switcher{display:flex;align-items:center;gap:3px;background:var(--surface-light-4);border:1px solid var(--border-color);border-radius:var(--radius-sm, 6px);padding:2px;width:100%}.lang-btn{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;background:transparent;border:none;border-radius:4px;padding:3px 7px;font-size:.75rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .15s ease;line-height:1.2}.lang-btn:hover{color:var(--text-main);background:var(--surface-light-6)}.lang-btn.active{background:var(--accent-primary, #22c55e);color:var(--text-white);font-weight:700;box-shadow:0 1px 4px var(--surface-accent-30)}.lang-code{font-size:.72rem;letter-spacing:.5px}.theme-toggle{display:flex;align-items:center;gap:3px;background:var(--surface-light-4);border:1px solid var(--border-color);border-radius:var(--radius-sm, 6px);padding:2px;width:100%}.theme-toggle-btn{display:flex;align-items:center;justify-content:center;flex:1;background:transparent;border:none;border-radius:4px;padding:3px 5px;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.theme-toggle-btn:hover{color:var(--text-main);background:var(--surface-light-6)}.theme-toggle-btn.active{background:var(--accent-primary);color:var(--text-on-accent);font-weight:700;box-shadow:0 1px 4px var(--surface-accent-30)}[data-theme=dark]{color-scheme:dark}.dt-container{position:relative;border:1px solid var(--border-color);border-radius:var(--radius-md, 10px);background:var(--bg-card);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 2px 8px #0000000d}.dt-scroll-container{overflow-x:auto;max-height:70vh;position:relative}.dt-table{width:100%;border-collapse:collapse;text-align:left}.dt-th{padding:10px 14px;text-align:left;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--surface-light-4);border-bottom:1px solid var(--border-color);white-space:nowrap;-webkit-user-select:none;user-select:none}.dt-th-content{display:inline-flex;align-items:center;gap:6px}.dt-th-sortable{cursor:pointer;transition:color .15s,background .15s}.dt-th-sortable:hover{color:var(--text-main);background:var(--surface-light-6)}.dt-sort-icon{display:inline-flex;align-items:center}.dt-sort-idle{opacity:.35}.dt-sort-asc,.dt-sort-desc{color:var(--accent-primary)}.dt-tr{transition:background-color .12s ease}.dt-tr:hover td{background:var(--surface-light-4)}.dt-td{padding:10px 14px;font-size:.85rem;color:var(--text-main);border-bottom:1px solid var(--border-color);vertical-align:middle}.dt-skeleton-tr td{padding:14px}.dt-skeleton-bar{height:16px;border-radius:4px;background:linear-gradient(90deg,var(--surface-light-4) 25%,var(--surface-light-8) 50%,var(--surface-light-4) 75%);background-size:200% 100%;animation:dt-skeleton-loading 1.5s infinite ease-in-out}@keyframes dt-skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.dt-empty-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.dt-empty-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--surface-light-6);color:var(--text-muted);margin-bottom:12px}.dt-empty-icon-error{background:var(--surface-danger-10);color:var(--text-error)}.dt-empty-title{margin:0 0 6px;font-size:1rem;font-weight:600;color:var(--text-main)}.dt-empty-desc{margin:0 0 16px;font-size:.82rem;color:var(--text-muted);max-width:360px}.dt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--border-color);flex-wrap:wrap;background:var(--bg-card)}.dt-toolbar-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dt-toolbar-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.dt-search{position:relative;display:inline-flex;align-items:center}.dt-search-icon{position:absolute;left:10px;color:var(--text-muted);pointer-events:none}.dt-search-input{width:240px;height:34px;padding:0 30px 0 32px;font-size:.82rem;color:var(--text-main);background:var(--surface-light-2, rgba(255, 255, 255, .05));border:1px solid var(--border-color);border-radius:var(--radius-sm, 6px);transition:border-color .15s,width .2s ease}.dt-search-input:focus{outline:none;border-color:var(--accent-primary);width:280px}.dt-search-clear{position:absolute;right:6px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:50%;background:transparent;color:var(--text-muted);cursor:pointer}.dt-search-clear:hover{color:var(--text-main);background:var(--surface-light-6)}.dt-filter-chips{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:6px}.dt-filter-chips-list{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.dt-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:.72rem;color:var(--text-main);background:var(--surface-accent-10);border:1px solid var(--surface-accent-25);border-radius:var(--radius-pill, 9999px)}.dt-chip-label{color:var(--text-muted)}.dt-chip-value{font-weight:600}.dt-chip-dismiss{display:flex;align-items:center;justify-content:center;width:14px;height:14px;border:none;border-radius:50%;background:transparent;color:var(--text-muted);cursor:pointer}.dt-chip-dismiss:hover{background:var(--surface-light-8);color:var(--text-main)}.dt-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--border-color);font-size:.78rem;color:var(--text-muted);flex-wrap:wrap;gap:10px;background:var(--bg-card)}.dt-footer-controls{display:flex;align-items:center;gap:12px}.dt-page-size-select{height:30px;padding:0 8px;font-size:.78rem;color:var(--text-main);background:var(--surface-light-2);border:1px solid var(--border-color);border-radius:var(--radius-sm, 6px);cursor:pointer}.dt-pagination{display:flex;align-items:center;gap:4px}.dt-page-btn{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 6px;font-size:.78rem;font-weight:500;color:var(--text-muted);background:transparent;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;transition:all .15s ease}.dt-page-btn:hover:not(:disabled){color:var(--text-main);background:var(--surface-light-6);border-color:var(--text-muted)}.dt-page-btn.dt-page-active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary);font-weight:700}.dt-page-btn:disabled{opacity:.4;cursor:not-allowed}.dt-page-ellipsis{padding:0 4px;color:var(--text-muted)}.dt-btn-secondary{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;font-size:.8rem;font-weight:500;color:var(--text-main);background:var(--surface-light-4);border:1px solid var(--border-color);border-radius:var(--radius-sm, 6px);cursor:pointer;transition:background .15s}.dt-btn-secondary:hover{background:var(--surface-light-8)}.dt-btn-ghost{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;font-size:.78rem;color:var(--text-muted);background:transparent;border:none;cursor:pointer;border-radius:var(--radius-sm, 6px)}.dt-btn-ghost:hover{color:var(--text-main);background:var(--surface-light-6)}.dt-btn-ghost-sm{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;color:var(--text-muted);background:transparent;border:none;cursor:pointer;padding:2px 6px;border-radius:4px}.dt-btn-ghost-sm:hover{color:var(--text-main);background:var(--surface-light-6)}.dt-refetch-indicator{position:absolute;top:10px;right:14px;pointer-events:none;z-index:10}.dt-spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--surface-accent-30);border-top-color:var(--accent-primary);border-radius:50%;animation:dt-spin .6s linear infinite}@keyframes dt-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.dt-scroll-container{max-height:none}.dt-table,.dt-table thead,.dt-table tbody,.dt-table th,.dt-table td,.dt-table tr{display:block}.dt-table thead tr{position:absolute;top:-9999px;left:-9999px}.dt-table tr.dt-tr{border:1px solid var(--border-color);border-radius:var(--radius-md, 10px);margin:10px;padding:10px;background:var(--bg-card)}.dt-table td.dt-td{border:none;border-bottom:1px solid var(--surface-light-4);position:relative;padding:8px 0 8px 45%;min-height:36px;display:flex;align-items:center;justify-content:flex-end;text-align:right}.dt-table td.dt-td:last-child{border-bottom:none}.dt-table td.dt-td:before{content:attr(data-label);position:absolute;left:0;width:40%;padding-right:10px;white-space:nowrap;text-align:left;font-weight:600;font-size:.72rem;text-transform:uppercase;color:var(--text-muted)}.dt-toolbar{flex-direction:column;align-items:stretch}.dt-search-input{width:100%}.dt-search-input:focus{width:100%}.dt-footer{flex-direction:column;align-items:center;gap:12px}}
