:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;height:100vh;overflow:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s;will-change:border-color;transform:translateZ(0);backface-visibility:hidden}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{width:100%;height:100vh;padding:0;margin:0;color:#0f172a;overflow:hidden}.App{display:flex;flex-direction:column;height:100vh;width:100%;padding-right:70px;box-sizing:border-box;overflow:hidden}.sticky-header{flex-shrink:0;z-index:100;background:#fff;box-shadow:0 2px 8px #0000001a}body:has(.modal-overlay) .sticky-header,body:has(.modal-overlay) .topbar,body:has(.modal-overlay) .nav{z-index:0!important;pointer-events:none!important}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.5rem 2rem;padding-left:110px;padding-right:90px;background:#fff;border-bottom:1px solid #e2e8f0;width:100%;box-sizing:border-box}.topbar.debtor-topbar{padding-left:2rem;padding-right:2rem;background:linear-gradient(135deg,#1a237e,#3949ab);color:#fff;border-bottom:none}.topbar.debtor-topbar h1{color:#fff;font-size:1.5rem}.topbar.debtor-topbar .muted{color:#fffc}.topbar.debtor-topbar button{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.topbar.debtor-topbar button:hover{background:#ffffff4d}.topbar button{flex-shrink:0;white-space:nowrap}.client-signout-bar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 2rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.client-user-email{font-size:.9rem;color:#64748b}.btn-signout{padding:.5rem 1rem;background:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .2s}.btn-signout:hover{background:#dc2626}.nav{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;padding:1rem 110px;background:#fff;border-bottom:1px solid #e2e8f0;box-sizing:border-box}.nav button{padding:.6rem 1rem;border:1px solid #cbd5e1;background:#f8fafc;border-radius:6px;cursor:pointer;color:#334155}.nav button.active{background:#dcfce7;border-color:#22c55e;color:#15803d}.nav button:disabled{background:#e5e7eb;border-color:#cbd5e1;color:#475569;cursor:not-allowed}.card{flex:1;min-height:0;overflow:hidden;border:none;border-radius:0;background:#f5f7fa;box-shadow:none;text-align:left}main.card{padding:0;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}main.card>*{flex:1;min-height:0}form.card{max-width:480px;margin:0 auto;display:flex;flex-direction:column;gap:.75rem}label{display:flex;flex-direction:column;gap:.35rem;font-weight:600}input{padding:.65rem;border-radius:6px;border:1px solid #cbd5e1;font-size:1rem}button{border:none;background:#16a34a;color:#fff;padding:.65rem 1.1rem;border-radius:6px;font-weight:600;cursor:pointer}button:hover{background:#15803d}.muted{color:#64748b}.error{color:#b91c1c;margin:0}.hint{color:#64748b;font-size:.875rem;margin:0}.users-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;font-size:.875rem}.users-table thead{background:#f8fafc;border-bottom:2px solid #e2e8f0}.users-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#475569;white-space:nowrap}.users-table td{padding:.75rem 1rem;border-top:1px solid #e2e8f0;vertical-align:middle}.users-table tbody tr:hover{background:#f8fafc}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-inactive{background:#fee2e2;color:#991b1b}.status-unknown{background:#e5e7eb;color:#475569}.modal-overlay{position:fixed;inset:0;background:#00000080;z-index:999999!important;display:flex;align-items:center;justify-content:center;overflow-y:auto}.modal-content{position:relative;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:auto;min-width:400px;max-width:90vw;max-height:85vh;margin:2rem auto;display:flex;flex-direction:column}.modal-content *{transition:none!important;animation:none!important;cursor:default!important}.modal-content button,.modal-content input,.modal-content select,.modal-content textarea{cursor:pointer!important}.modal-content input[type=text],.modal-content input[type=email],.modal-content input[type=number],.modal-content input[type=file],.modal-content input[type=date],.modal-content input[type=time],.modal-content textarea{cursor:text!important}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(to bottom,#f8fafc,#fff);flex-shrink:0}.modal-header h2{margin:0;font-size:1.25rem;color:#0f172a}.modal-close{background:transparent;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;padding:.25rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;flex-shrink:0}.modal-close:hover{background:#f1f5f9;color:#0f172a}.modal-body{padding:1.5rem;overflow-y:auto;flex:1;min-height:0}.modal-body label{display:flex;flex-direction:column;gap:.5rem;font-weight:600;color:#334155}.modal-body input,.modal-body select,.modal-body textarea{padding:.65rem;border-radius:6px;border:1px solid #cbd5e1;font-size:1rem;font-family:inherit;transition:border-color .2s}.modal-body input:focus,.modal-body select:focus,.modal-body textarea:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 3px #16a34a1a}.modal-body textarea{resize:vertical}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid #e2e8f0;background:#f8fafc}.settings-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.profile-info{display:flex;flex-direction:column;gap:.75rem}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #e2e8f0}.info-row:last-child{border-bottom:none}.info-row .label{font-weight:600;color:#475569}.info-row .value{color:#0f172a}.nav-item{display:inline-flex;align-items:stretch}.nav-item button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.nav-item button:only-child{border-radius:6px}.nav .nav-popout-btn{display:flex;align-items:center;justify-content:center;width:26px;padding:0;border:1px solid #cbd5e1;border-left:none;background:#f1f5f9;border-radius:0 6px 6px 0;cursor:pointer;color:#94a3b8;font-size:.65rem;transition:all .15s ease}.nav .nav-popout-btn:hover{background:#e0e7ff;color:#4338ca}.nav .nav-popout-btn.popped{background:#dcfce7;color:#16a34a;border-color:#86efac}.popout-window{display:flex;flex-direction:column;height:100vh;overflow:hidden}.popout-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1.2rem;background:linear-gradient(135deg,#1e293b,#334155);color:#fff;flex-shrink:0;box-shadow:0 1px 3px #0003}.popout-title{font-size:.9rem;opacity:.95}.popout-title strong{font-weight:700;margin-right:.3rem}.popout-header-actions{display:flex;align-items:center;gap:1rem}.popout-user{font-size:.78rem;opacity:.6}.popout-close{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#fff;padding:.35rem .75rem;border-radius:4px;cursor:pointer;font-size:.78rem;transition:background .15s}.popout-close:hover{background:#ef4444b3}.popout-content{flex:1;overflow:auto;padding:1.5rem}.popout-content>.card,.popout-window .card{border:none;box-shadow:none}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%;padding:2rem;box-sizing:border-box;background:linear-gradient(135deg,#f0f4f8,#d9e2ec,#bcccdc);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.login-card{width:100%;max-width:440px;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000000a,0 10px 24px #00000014,0 0 0 1px #00000008;overflow:hidden;animation:loginFadeIn .4s ease-out}@keyframes loginFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.login-logo-section{display:flex;flex-direction:column;align-items:center;padding:36px 32px 0}.login-logo{width:200px;height:auto;margin-bottom:8px}.login-brand-divider{width:60px;height:3px;background:linear-gradient(90deg,#16a34a,#15803d);border-radius:3px;margin:16px 0 8px}.login-form-area{padding:24px 36px 28px}.login-subtitle{margin:0 0 6px;font-size:1.1rem;font-weight:600;color:#1e293b;text-align:center}.login-muted{color:#64748b;font-size:.85rem;margin:0 0 16px;line-height:1.5;text-align:center}.login-form{display:flex;flex-direction:column;gap:14px}.login-form label{display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:.85rem;color:#334155}.login-form input{padding:10px 14px;border-radius:8px;border:1.5px solid #cbd5e1;font-size:.95rem;color:#1e293b;background:#f8fafc;transition:border-color .2s,box-shadow .2s}.login-form input:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 3px #16a34a1f;background:#fff}.login-btn-primary{width:100%;padding:11px 20px;border:none;border-radius:8px;background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:transform .15s,box-shadow .15s;letter-spacing:.02em}.login-btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #15803d59;background:linear-gradient(135deg,#22c55e,#16a34a)}.login-btn-primary:active{transform:translateY(0)}.login-btn-secondary{width:100%;padding:9px 16px;border:1.5px solid #cbd5e1;border-radius:8px;background:#f8fafc;color:#334155;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.login-btn-secondary:hover{background:#e2e8f0;border-color:#94a3b8}.login-footer-row{display:flex;justify-content:center;margin-top:14px}.login-link-btn{background:transparent!important;border:none!important;color:#16a34a!important;cursor:pointer;font-size:.85rem;padding:4px 0!important;font-weight:500;transition:color .15s}.login-link-btn:hover{color:#15803d!important;text-decoration:underline;background:transparent!important}.login-trusted-badge{text-align:center;color:#16a34a;font-size:.8rem;font-weight:500;margin:12px 0 0;padding:8px 12px;background:#f0fdf4;border-radius:8px;border:1px solid #bbf7d0}.login-success-box{background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border:1px solid #a5d6a7;border-radius:10px;padding:20px 24px;text-align:center;color:#2e7d32}.login-mfa-section{margin-top:16px;padding-top:8px}.login-card-footer{padding:12px 36px;text-align:center;background:#f8fafc;border-top:1px solid #e2e8f0;font-size:.72rem;color:#94a3b8;letter-spacing:.03em;text-transform:uppercase;font-weight:500}.task-drawer{position:fixed;top:0;right:0;height:100vh;background:linear-gradient(180deg,#1e293b,#0f172a);border-left:1px solid rgba(71,85,105,.5);z-index:1000;display:flex;flex-direction:column;transition:width .3s cubic-bezier(.4,0,.2,1);box-shadow:-4px 0 24px #0000004d;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.task-drawer.expanded{width:380px}.task-drawer.collapsed{width:56px}.task-drawer-header{display:flex;align-items:center;gap:10px;padding:14px 12px;background:linear-gradient(135deg,#1e3a5f,#0f172a);border-bottom:1px solid rgba(56,189,248,.15);min-height:56px}.toggle-btn{width:32px;height:32px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#94a3b8;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.toggle-btn:hover{background:#38bdf826;color:#38bdf8;border-color:#38bdf84d}.header-content{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.header-content h3{margin:0;font-size:16px;font-weight:700;color:#f1f5f9;letter-spacing:.3px;white-space:nowrap}.task-badge{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:11px;font-weight:700;padding:2px 7px;border-radius:10px;min-width:20px;text-align:center;line-height:1.4;box-shadow:0 2px 6px #ef444466}.task-badge-mini{position:absolute;top:10px;right:6px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #ef444480}.popout-widget-btn{width:28px;height:28px;margin-left:auto;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#94a3b8;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.popout-widget-btn:hover{background:#38bdf826;color:#38bdf8;border-color:#38bdf84d}.create-task-btn{width:32px;height:32px;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:8px;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:0 2px 8px #22c55e4d}.create-task-btn:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:scale(1.05);box-shadow:0 4px 12px #22c55e66}.task-tabs{display:flex;border-bottom:1px solid rgba(71,85,105,.4);background:#0f172a80}.task-tab{flex:1;padding:10px 8px;background:transparent;border:none;border-bottom:2px solid transparent;color:#64748b;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s}.task-tab:hover{color:#cbd5e1}.task-tab.active{color:#38bdf8;border-bottom-color:#38bdf8}.tab-count{background:#38bdf833;color:#38bdf8;font-size:11px;font-weight:700;padding:1px 6px;border-radius:8px}.task-filter-bar{padding:8px 12px;border-bottom:1px solid rgba(71,85,105,.3)}.filter-select{width:100%;padding:6px 10px;background:#1e293bcc;border:1px solid rgba(71,85,105,.5);border-radius:6px;color:#cbd5e1;font-size:12px;cursor:pointer;outline:none}.filter-select:focus{border-color:#38bdf8}.task-drawer-content{flex:1;overflow-y:auto;padding:6px 0}.task-drawer-content::-webkit-scrollbar{width:5px}.task-drawer-content::-webkit-scrollbar-track{background:transparent}.task-drawer-content::-webkit-scrollbar-thumb{background:#64748b66;border-radius:3px}.task-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:40px 16px;color:#64748b;font-size:13px}.task-loading i{color:#38bdf8}.task-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:10px;text-align:center}.task-empty i{font-size:28px;color:#334155}.task-empty p{color:#64748b;font-size:14px;margin:0}.task-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;margin:2px 8px;border-radius:10px;cursor:pointer;transition:all .2s;gap:10px;background:#1e293b66;border:1px solid transparent}.task-item:hover{background:#1e293bcc;border-color:#47556980;transform:translate(-2px)}.task-item.completed{opacity:.55}.task-item.completed h4{text-decoration:line-through}.task-item-left{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0}.task-item-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.task-priority-dot{width:10px;height:10px;border-radius:50%;margin-top:5px;flex-shrink:0}.task-priority-dot.priority-high{background:#ef4444;box-shadow:0 0 8px #ef444480}.task-priority-dot.priority-moderate{background:#f59e0b;box-shadow:0 0 8px #f59e0b66}.task-priority-dot.priority-low{background:#22c55e;box-shadow:0 0 8px #22c55e4d}.task-priority-dot.completed{background:#64748b;box-shadow:none}.task-item-info{min-width:0}.task-item-info h4{margin:0;font-size:13px;font-weight:600;color:#e2e8f0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-item-sub{display:flex;align-items:center;gap:10px;margin-top:3px}.task-assignee,.task-due{display:flex;align-items:center;gap:4px;font-size:11px;color:#64748b}.task-assignee i,.task-due i{font-size:10px}.task-item-desc{margin:3px 0 0;font-size:12px;color:#94a3b8;line-height:1.3}.task-status-tag{font-size:10px;font-weight:600;padding:2px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.task-status-tag.status-open{background:#38bdf826;color:#38bdf8}.task-status-tag.status-in-progress{background:#f59e0b26;color:#f59e0b}.task-status-tag.status-completed{background:#22c55e26;color:#22c55e}.task-msg-count{display:flex;align-items:center;gap:4px;font-size:11px;color:#64748b}.task-msg-count i{font-size:10px}.task-seen-count{display:flex;align-items:center;gap:4px;font-size:11px;color:#3b82f6;opacity:.7}.task-seen-count i{font-size:10px}.dismiss-btn{background:none;border:none;color:#475569;font-size:13px;cursor:pointer;padding:4px 6px;border-radius:4px;transition:all .2s;flex-shrink:0}.dismiss-btn:hover{color:#ef4444;background:#ef44441a}.clear-dismissed-btn{display:block;margin:12px auto;background:none;border:none;color:#64748b;font-size:12px;cursor:pointer;padding:6px 12px;transition:color .2s}.clear-dismissed-btn:hover{color:#38bdf8}.completed-section{margin-top:4px;padding:0 8px}.completed-header{display:flex;align-items:center;gap:6px;padding:8px 6px;color:#64748b;font-size:12px;font-weight:600;cursor:pointer;list-style:none}.completed-header::-webkit-details-marker{display:none}.completed-header i{color:#22c55e}.collapsed-icons{display:flex;flex-direction:column;align-items:center;padding:12px 0;gap:8px}.collapsed-icon-btn{width:36px;height:36px;background:#22c55e26;border:1px solid rgba(34,197,94,.3);border-radius:8px;color:#22c55e;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.collapsed-icon-btn:hover{background:#22c55e40;transform:scale(1.1)}.create-task-form{padding:16px 14px;border-bottom:1px solid rgba(71,85,105,.4);background:#0f172a99;overflow-y:auto;max-height:calc(100vh - 120px)}.create-task-form h4{margin:0 0 14px;color:#e2e8f0;font-size:15px;font-weight:700;display:flex;align-items:center;gap:8px}.create-task-form label{display:block;color:#94a3b8;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;margin:12px 0 4px}.create-task-form label:first-of-type{margin-top:0}.create-task-form label .optional{text-transform:none;font-weight:400;color:#475569;font-size:11px}.create-task-form input[type=text],.create-task-form input[type=date],.create-task-form textarea,.create-task-form .assignee-select{width:100%;padding:9px 12px;background:#1e293bcc;border:1px solid rgba(71,85,105,.5);border-radius:8px;color:#e2e8f0;font-size:13px;outline:none;transition:border-color .2s;box-sizing:border-box}.create-task-form input[type=text]:focus,.create-task-form input[type=date]:focus,.create-task-form textarea:focus,.create-task-form .assignee-select:focus{border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf826}.create-task-form textarea{resize:vertical;min-height:60px;font-family:inherit}.priority-selector{display:flex;gap:6px}.priority-opt{flex:1;padding:8px 6px;border-radius:8px;border:1px solid rgba(71,85,105,.5);background:#1e293b80;color:#94a3b8;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;text-align:center;white-space:nowrap}.priority-opt:hover{border-color:#94a3b880}.priority-opt.high.active{background:#ef444426;border-color:#ef4444;color:#ef4444;box-shadow:0 0 12px #ef444433}.priority-opt.moderate.active{background:#f59e0b26;border-color:#f59e0b;color:#f59e0b;box-shadow:0 0 12px #f59e0b33}.priority-opt.low.active{background:#22c55e26;border-color:#22c55e;color:#22c55e;box-shadow:0 0 12px #22c55e33}.submit-task-btn{width:100%;margin-top:16px;padding:11px 16px;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:10px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;box-shadow:0 2px 10px #22c55e4d}.submit-task-btn:hover:not(:disabled){background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px);box-shadow:0 4px 16px #22c55e66}.submit-task-btn:disabled{opacity:.5;cursor:not-allowed}.add-task-btn{margin-top:8px;padding:10px 20px;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:10px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s;box-shadow:0 2px 8px #22c55e4d}.add-task-btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px #22c55e66}.task-detail-overlay{position:fixed;inset:0;background:#000000a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10000;display:flex;justify-content:center;align-items:center;animation:tdFadeIn .2s ease}@keyframes tdFadeIn{0%{opacity:0}to{opacity:1}}.task-detail-panel{width:560px;max-width:95vw;max-height:90vh;background:linear-gradient(180deg,#1e293b,#0f172a);border:1px solid rgba(71,85,105,.5);border-radius:16px;box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;overflow:hidden;animation:tdSlideUp .25s ease}@keyframes tdSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.task-detail-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:linear-gradient(135deg,#1e3a5f,#0f172a);border-bottom:1px solid rgba(56,189,248,.15)}.task-detail-back{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#94a3b8;font-size:13px;padding:7px 14px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s}.task-detail-back:hover{background:#38bdf826;color:#38bdf8}.task-detail-actions{display:flex;gap:8px}.task-delete-btn{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;font-size:13px;padding:7px 12px;cursor:pointer;transition:all .2s}.task-delete-btn:hover{background:#ef444433;border-color:#ef4444}.task-detail-body{flex:1;overflow-y:auto;padding:20px}.task-detail-body::-webkit-scrollbar{width:5px}.task-detail-body::-webkit-scrollbar-thumb{background:#64748b66;border-radius:3px}.task-detail-title-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.task-detail-title-row h2{margin:0;font-size:20px;font-weight:700;color:#f1f5f9}.task-priority-badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:6px;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.task-priority-badge.priority-high{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.4)}.task-priority-badge.priority-moderate{background:#f59e0b33;color:#f59e0b;border:1px solid rgba(245,158,11,.4)}.task-priority-badge.priority-low{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.4)}.task-detail-desc{color:#94a3b8;font-size:14px;line-height:1.5;margin:0 0 16px}.task-detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px;padding:14px;background:#0f172a80;border-radius:10px;border:1px solid rgba(71,85,105,.3)}.meta-item{display:flex;flex-direction:column;gap:3px}.meta-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:#64748b}.meta-value{font-size:13px;color:#e2e8f0;font-weight:500}.status-select{padding:5px 8px;background:#1e293bcc;border:1px solid rgba(71,85,105,.5);border-radius:6px;color:#e2e8f0;font-size:13px;cursor:pointer;outline:none;width:fit-content}.status-select:focus{border-color:#38bdf8}.task-messages-section{border-top:1px solid rgba(71,85,105,.3);padding-top:16px}.task-messages-section h3{margin:0 0 12px;font-size:14px;font-weight:600;color:#cbd5e1;display:flex;align-items:center;gap:8px}.task-messages-section h3 i{color:#38bdf8}.task-messages-list{max-height:260px;overflow-y:auto;padding:4px 0;margin-bottom:12px}.task-messages-list::-webkit-scrollbar{width:4px}.task-messages-list::-webkit-scrollbar-thumb{background:#64748b4d;border-radius:2px}.no-messages{color:#475569;font-size:13px;text-align:center;padding:20px 0;font-style:italic}.task-message{padding:10px 14px;border-radius:12px;margin-bottom:8px;max-width:88%}.task-message.mine{background:linear-gradient(135deg,#38bdf81f,#3b82f61f);border:1px solid rgba(56,189,248,.2);margin-left:auto;border-bottom-right-radius:4px}.task-message.theirs{background:#1e293b99;border:1px solid rgba(71,85,105,.3);margin-right:auto;border-bottom-left-radius:4px}.msg-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.msg-header strong{font-size:12px;color:#94a3b8;font-weight:600}.msg-time{font-size:10px;color:#475569;white-space:nowrap}.msg-text{margin:0;font-size:13px;color:#e2e8f0;line-height:1.4;word-wrap:break-word}.task-message-input{display:flex;gap:8px;align-items:flex-end}.task-message-input textarea{flex:1;padding:10px 14px;background:#1e293bcc;border:1px solid rgba(71,85,105,.5);border-radius:12px;color:#e2e8f0;font-size:13px;font-family:inherit;resize:none;outline:none;transition:border-color .2s}.task-message-input textarea:focus{border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf81a}.send-msg-btn{width:40px;height:40px;background:linear-gradient(135deg,#38bdf8,#3b82f6);border:none;border-radius:10px;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0;box-shadow:0 2px 8px #38bdf84d}.send-msg-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #38bdf866}.send-msg-btn:disabled{opacity:.4;cursor:not-allowed}.multi-assignee-dropdown{position:relative}.assignee-trigger{width:100%;padding:9px 12px;background:#1e293bcc;border:1px solid rgba(71,85,105,.5);border-radius:8px;color:#e2e8f0;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;transition:border-color .2s;box-sizing:border-box}.assignee-trigger:hover,.assignee-trigger:focus{border-color:#38bdf8;outline:none}.assignee-trigger .placeholder{color:#64748b}.assignee-trigger .selected-names{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignee-trigger i{color:#64748b;font-size:11px;flex-shrink:0}.assignee-options{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#1e293b;border:1px solid rgba(71,85,105,.6);border-radius:10px;box-shadow:0 8px 24px #0006;z-index:100;max-height:220px;overflow-y:auto;padding:4px 0;animation:dropIn .15s ease}@keyframes dropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.assignee-options::-webkit-scrollbar{width:5px}.assignee-options::-webkit-scrollbar-thumb{background:#64748b66;border-radius:3px}.assignee-option{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;transition:background .15s;-webkit-user-select:none;user-select:none}.assignee-option:hover{background:#38bdf814}.assignee-option.selected{background:#22c55e14}.assignee-option input[type=checkbox]{width:16px;height:16px;accent-color:#22c55e;cursor:pointer;flex-shrink:0}.assignee-option .option-name{font-size:13px;color:#e2e8f0;font-weight:500}.assignee-option .option-email{font-size:11px;color:#64748b;margin-left:auto;flex-shrink:0}.assignee-completion-list{display:flex;flex-direction:column;gap:6px;margin-top:4px}.assignee-completion-row{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;background:#1e293b80;border:1px solid rgba(71,85,105,.2);transition:all .2s}.assignee-completion-row.done{background:#22c55e0f;border-color:#22c55e33}.completion-check{background:none;border:none;font-size:18px;cursor:pointer;padding:0;line-height:1;transition:transform .2s;color:#475569}.completion-check:not(:disabled):hover{transform:scale(1.15)}.completion-check:disabled{cursor:default;opacity:.7}.completion-check.checked{color:#22c55e}.assignee-name{font-size:13px;color:#e2e8f0;font-weight:500}.assignee-name.completed-name{text-decoration:line-through;color:#64748b}.done-label{margin-left:auto;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#22c55e;background:#22c55e1f;padding:2px 8px;border-radius:4px}.read-receipts-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.read-receipt-pill{display:inline-flex;align-items:center;gap:5px;background:#3b82f61a;color:#60a5fa;border:1px solid rgba(59,130,246,.2);padding:3px 10px;border-radius:16px;font-size:11px;font-weight:500}.read-receipt-pill i{font-size:10px;color:#3b82f6}.read-receipt-pill .read-time{font-size:10px;opacity:.6;margin-left:2px}@media(max-width:768px){.task-drawer.expanded{width:300px}.task-drawer.collapsed{width:48px}.task-detail-panel{width:95vw}.task-detail-meta{grid-template-columns:1fr}}.task-assignee-circles{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.assignee-circle{width:26px;height:26px;border-radius:50%;border:2px solid rgba(148,163,184,.3);background:#1e293bcc;color:#94a3b8;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;padding:0;line-height:1}.assignee-circle:hover{border-color:#38bdf899;background:#38bdf81a;color:#38bdf8;transform:scale(1.15)}.assignee-circle.done{border-color:#22c55e99;background:#22c55e26;color:#22c55e}.assignee-circle.done:hover{border-color:#22c55e;background:#22c55e40}.assignee-circle i{font-size:10px}.step-progress-mini{display:flex;align-items:center;gap:5px;margin-left:4px}.step-progress-bar{width:40px;height:4px;border-radius:2px;background:#94a3b833;overflow:hidden}.step-progress-fill{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,#3b82f6,#22c55e);transition:width .3s ease}.step-progress-text{font-size:10px;color:#64748b;font-weight:600}.steps-builder{margin-top:4px;border-top:1px solid rgba(148,163,184,.1);padding-top:10px}.steps-builder label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#e2e8f0;margin-bottom:8px}.steps-builder label i{color:#8b5cf6}.steps-preview{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.step-preview-item{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#8b5cf614;border:1px solid rgba(139,92,246,.15);border-radius:6px;font-size:12px}.step-num{width:20px;height:20px;border-radius:50%;background:#8b5cf633;color:#a78bfa;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0}.step-title{flex:1;color:#e2e8f0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step-person{font-size:10px;color:#8b5cf6;white-space:nowrap;display:flex;align-items:center;gap:3px}.step-remove{background:none;border:none;color:#64748b;cursor:pointer;padding:2px 4px;font-size:10px;border-radius:4px;transition:all .15s}.step-remove:hover{color:#ef4444;background:#ef44441a}.step-add-row{display:flex;gap:4px;align-items:stretch}.step-add-row input{flex:1;min-width:0;padding:6px 8px;background:#0f172a99;border:1px solid rgba(148,163,184,.15);border-radius:6px;color:#e2e8f0;font-size:12px}.step-add-row input:focus{outline:none;border-color:#8b5cf680}.step-assignee-select{width:90px;padding:4px 6px;background:#0f172a99;border:1px solid rgba(148,163,184,.15);border-radius:6px;color:#e2e8f0;font-size:11px;cursor:pointer}.step-assignee-select:focus{outline:none;border-color:#8b5cf680}.step-add-btn{width:32px;background:#8b5cf633;border:1px solid rgba(139,92,246,.3);border-radius:6px;color:#a78bfa;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}.step-add-btn:hover:not(:disabled){background:#8b5cf64d;color:#c4b5fd}.step-add-btn:disabled{opacity:.4;cursor:default}.tiered-steps-view{display:flex;flex-direction:column;gap:12px;margin-top:6px}.tiered-person-group{background:#0f172a66;border:1px solid rgba(148,163,184,.1);border-radius:10px;padding:10px 12px;transition:border-color .2s}.tiered-person-group:hover{border-color:#8b5cf640}.tiered-person-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(148,163,184,.08)}.person-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#475569,#334155);border:2px solid rgba(148,163,184,.3);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#e2e8f0;flex-shrink:0}.person-avatar.done{background:linear-gradient(135deg,#166534,#15803d);border-color:#22c55e80;color:#86efac}.person-avatar.done i{font-size:11px}.person-name{flex:1;font-size:13px;font-weight:600;color:#e2e8f0}.person-name.completed-name{color:#22c55e;text-decoration:line-through;opacity:.7}.person-progress{font-size:11px;font-weight:600;color:#64748b;background:#64748b1a;padding:2px 8px;border-radius:10px}.tiered-step-list{display:flex;flex-direction:column;gap:4px}.tiered-step-item{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:6px;transition:background .15s}.tiered-step-item:hover{background:#8b5cf60f}.step-check{background:none;border:none;color:#475569;font-size:15px;cursor:pointer;padding:2px;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.step-check:hover:not(:disabled){color:#8b5cf6;transform:scale(1.15)}.step-check.checked{color:#22c55e}.step-check:disabled{opacity:.5;cursor:default}.step-text{font-size:12.5px;color:#cbd5e1;flex:1}.step-text.done-text{text-decoration:line-through;color:#64748b}.task-widget{display:flex;flex-direction:column;height:100vh;background:linear-gradient(180deg,#1e293b,#0f172a);color:#e2e8f0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;overflow:hidden;-webkit-user-select:none;user-select:none}.tw-titlebar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:linear-gradient(135deg,#1e3a5f,#0f172a);border-bottom:1px solid rgba(56,189,248,.15);min-height:44px;-webkit-app-region:drag}.tw-title{font-size:14px;font-weight:700;color:#f1f5f9;letter-spacing:.3px;display:flex;align-items:center;gap:6px}.tw-title i{color:#38bdf8;font-size:13px}.tw-badge{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:11px;font-weight:700;padding:2px 7px;border-radius:10px;min-width:20px;text-align:center;box-shadow:0 2px 6px #ef444466}.tw-titlebar-actions{margin-left:auto;display:flex;gap:4px;-webkit-app-region:no-drag}.tw-icon-btn{width:28px;height:28px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#94a3b8;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.tw-icon-btn:hover{background:#38bdf826;color:#38bdf8;border-color:#38bdf84d}.tw-quick-create{padding:8px 10px 10px;background:#0f172a99;border-bottom:1px solid rgba(71,85,105,.4);animation:tw-slide-down .15s ease-out}@keyframes tw-slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.tw-quick-row{margin-bottom:6px}.tw-quick-input{width:100%;padding:7px 10px;background:#1e293be6;border:1px solid rgba(71,85,105,.5);border-radius:6px;color:#e2e8f0;font-size:13px;outline:none;transition:border-color .15s;box-sizing:border-box}.tw-quick-input:focus{border-color:#38bdf8}.tw-quick-input::placeholder{color:#475569}.tw-quick-options{display:flex;align-items:center;gap:6px}.tw-priority-pills{display:flex;gap:3px}.tw-pill{width:26px;height:26px;border-radius:6px;border:1px solid rgba(71,85,105,.4);background:#1e293b99;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;opacity:.5}.tw-pill.active{opacity:1;border-color:#38bdf8;background:#38bdf81a}.tw-pill:hover{opacity:.8}.tw-quick-assignee{flex:1;padding:5px 6px;background:#1e293be6;border:1px solid rgba(71,85,105,.5);border-radius:6px;color:#cbd5e1;font-size:12px;cursor:pointer;outline:none}.tw-quick-submit{width:28px;height:28px;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:6px;color:#fff;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.tw-quick-submit:hover{transform:scale(1.05)}.tw-quick-submit:disabled{opacity:.4;cursor:not-allowed;transform:none}.tw-filter-bar{padding:6px 10px;border-bottom:1px solid rgba(71,85,105,.3)}.tw-filter{width:100%;padding:5px 8px;background:#1e293bcc;border:1px solid rgba(71,85,105,.4);border-radius:5px;color:#cbd5e1;font-size:12px;cursor:pointer;outline:none}.tw-list{flex:1;overflow-y:auto;padding:4px 0}.tw-list::-webkit-scrollbar{width:4px}.tw-list::-webkit-scrollbar-track{background:transparent}.tw-list::-webkit-scrollbar-thumb{background:#64748b4d;border-radius:2px}.tw-loading,.tw-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 16px;color:#64748b;font-size:13px;gap:8px}.tw-loading i{color:#38bdf8;font-size:18px}.tw-empty i{font-size:28px;opacity:.4}.tw-task{display:flex;align-items:center;gap:8px;padding:9px 12px;cursor:pointer;transition:background .12s;border-left:3px solid transparent;position:relative}.tw-task:hover{background:#38bdf80f}.tw-task.high{border-left-color:#ef4444}.tw-task.moderate{border-left-color:#eab308}.tw-task.low{border-left-color:#22c55e}.tw-task.completed{opacity:.45;border-left-color:#475569}.tw-task.unread{background:#38bdf80a}.tw-check{width:22px;height:22px;flex-shrink:0;background:none;border:none;color:#475569;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .12s}.tw-check:hover{color:#38bdf8}.tw-check.checked{color:#22c55e}.tw-task-body{flex:1;min-width:0}.tw-task-title{font-size:13px;font-weight:600;color:#e2e8f0;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tw-task-title.done{text-decoration:line-through;color:#64748b}.tw-task.my-done .tw-task-title{color:#94a3b8}.tw-task-meta{display:flex;align-items:center;gap:8px;margin-top:2px;font-size:11px;color:#64748b}.tw-progress{background:#38bdf81f;color:#38bdf8;padding:1px 5px;border-radius:4px;font-weight:600}.tw-due i,.tw-msgs i{margin-right:2px}.tw-priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tw-priority-dot.high{background:#ef4444}.tw-priority-dot.moderate{background:#eab308}.tw-priority-dot.low{background:#22c55e}.tw-unread-dot{position:absolute;top:8px;right:8px;width:6px;height:6px;background:#38bdf8;border-radius:50%;box-shadow:0 0 6px #38bdf880}.tw-completed-toggle{width:100%;padding:8px 14px;background:transparent;border:none;border-top:1px solid rgba(71,85,105,.3);color:#64748b;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;transition:color .12s}.tw-completed-toggle:hover{color:#94a3b8}.tdw{display:flex;flex-direction:column;height:100vh;background:linear-gradient(180deg,#1e293b,#0f172a);color:#e2e8f0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;overflow:hidden}.tdw-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:linear-gradient(135deg,#1e3a5f,#0f172a);border-bottom:1px solid rgba(56,189,248,.15);min-height:44px}.tdw-header-left{display:flex;align-items:center;gap:8px}.tdw-header-right{display:flex;align-items:center;gap:6px}.tdw-priority-badge{font-size:12px;font-weight:700;padding:3px 10px;border-radius:12px;display:inline-flex;align-items:center;gap:4px}.tdw-priority-badge.high{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.tdw-priority-badge.moderate{background:#eab30826;color:#fde047;border:1px solid rgba(234,179,8,.3)}.tdw-priority-badge.low{background:#22c55e26;color:#86efac;border:1px solid rgba(34,197,94,.3)}.tdw-status-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.5px}.tdw-status-badge.open{background:#38bdf81f;color:#38bdf8}.tdw-status-badge.in-progress{background:#eab3081f;color:#fde047}.tdw-status-badge.completed{background:#22c55e1f;color:#86efac}.tdw-delete-btn,.tdw-close-btn{width:30px;height:30px;border-radius:6px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#94a3b8;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.tdw-delete-btn:hover{background:#ef444426;color:#fca5a5;border-color:#ef44444d}.tdw-close-btn:hover{background:#ffffff1a;color:#e2e8f0}.tdw-body{flex:1;overflow-y:auto;padding:20px}.tdw-body::-webkit-scrollbar{width:5px}.tdw-body::-webkit-scrollbar-track{background:transparent}.tdw-body::-webkit-scrollbar-thumb{background:#64748b4d;border-radius:3px}.tdw-title{margin:0 0 6px;font-size:22px;font-weight:800;color:#f1f5f9;line-height:1.3}.tdw-desc{margin:0 0 16px;font-size:14px;color:#94a3b8;line-height:1.5}.tdw-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;padding:14px;background:#0f172a80;border-radius:10px;border:1px solid rgba(71,85,105,.3)}.tdw-meta-item label{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#64748b;margin-bottom:4px}.tdw-meta-item span{font-size:13px;color:#cbd5e1}.tdw-meta-item select{padding:5px 8px;background:#1e293be6;border:1px solid rgba(71,85,105,.5);border-radius:6px;color:#cbd5e1;font-size:12px;cursor:pointer;outline:none}.tdw-meta-item select:focus{border-color:#38bdf8}.tdw-section{margin-bottom:20px}.tdw-section h3{font-size:14px;font-weight:700;color:#cbd5e1;margin:0 0 10px;display:flex;align-items:center;gap:6px}.tdw-section h3 i{color:#38bdf8;font-size:13px}.tdw-steps{display:flex;flex-direction:column;gap:12px}.tdw-person-group{background:#0f172a66;border-radius:8px;border:1px solid rgba(71,85,105,.25);overflow:hidden}.tdw-person-header{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#1e293b66;border-bottom:1px solid rgba(71,85,105,.2);font-size:13px;font-weight:600}.tdw-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.tdw-avatar.done{background:linear-gradient(135deg,#22c55e,#16a34a)}.done-name{text-decoration:line-through;color:#64748b}.tdw-person-progress{margin-left:auto;font-size:11px;background:#38bdf81f;color:#38bdf8;padding:2px 6px;border-radius:6px}.tdw-step{display:flex;align-items:center;gap:8px;padding:8px 12px 8px 16px;transition:background .1s}.tdw-step:hover{background:#38bdf808}.tdw-step-check{background:none;border:none;color:#475569;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .12s}.tdw-step-check.checked{color:#22c55e}.tdw-step-check:disabled{cursor:default;opacity:.5}.tdw-step.done span,.done-text{text-decoration:line-through;color:#64748b}.tdw-assignee-list{display:flex;flex-direction:column;gap:4px}.tdw-assignee-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;transition:background .1s}.tdw-assignee-row:hover{background:#38bdf80a}.tdw-assign-check{background:none;border:none;color:#475569;font-size:16px;cursor:pointer;transition:color .12s}.tdw-assign-check.checked{color:#22c55e}.tdw-assign-check:disabled{cursor:default;opacity:.5}.tdw-done-label{margin-left:auto;font-size:10px;font-weight:700;text-transform:uppercase;color:#22c55e;background:#22c55e1f;padding:2px 6px;border-radius:4px}.tdw-read-receipts{margin-bottom:16px}.tdw-receipt-pills{display:flex;flex-wrap:wrap;gap:6px}.tdw-receipt-pill{font-size:11px;padding:4px 8px;border-radius:12px;background:#22c55e1a;color:#86efac;border:1px solid rgba(34,197,94,.2);display:inline-flex;align-items:center;gap:4px}.tdw-muted{font-size:12px;color:#475569;font-style:italic}.tdw-messages-section{flex:1;display:flex;flex-direction:column}.tdw-messages-list{flex:1;max-height:280px;overflow-y:auto;padding:8px 0}.tdw-messages-list::-webkit-scrollbar{width:4px}.tdw-messages-list::-webkit-scrollbar-thumb{background:#64748b4d;border-radius:2px}.tdw-message{padding:8px 12px;margin-bottom:8px;border-radius:10px;max-width:85%}.tdw-message.mine{background:linear-gradient(135deg,#1d4ed8,#2563eb);margin-left:auto;border-bottom-right-radius:4px}.tdw-message.theirs{background:#1e293bb3;border:1px solid rgba(71,85,105,.3);border-bottom-left-radius:4px}.tdw-msg-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:8px}.tdw-msg-header strong{font-size:12px;color:#e2e8f0}.tdw-msg-time{font-size:10px;color:#fff6;white-space:nowrap}.tdw-msg-text{margin:0;font-size:13px;line-height:1.4}.tdw-msg-input{display:flex;gap:8px;padding-top:10px;border-top:1px solid rgba(71,85,105,.3);margin-top:6px}.tdw-msg-input textarea{flex:1;padding:8px 10px;background:#1e293be6;border:1px solid rgba(71,85,105,.5);border-radius:8px;color:#e2e8f0;font-size:13px;resize:none;outline:none;font-family:inherit}.tdw-msg-input textarea:focus{border-color:#38bdf8}.tdw-msg-input textarea::placeholder{color:#475569}.tdw-msg-input button{width:36px;height:36px;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0;align-self:flex-end}.tdw-msg-input button:hover{transform:scale(1.05);background:linear-gradient(135deg,#2563eb,#1d4ed8)}.tdw-msg-input button:disabled{opacity:.4;cursor:not-allowed;transform:none}.tdw-loading,.tdw-not-found{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#64748b;font-size:14px}.tdw-loading i{color:#38bdf8;font-size:24px}.tdw-not-found i{font-size:36px;color:#eab308}.tdw-not-found h3{margin:0;color:#e2e8f0}.tdw-not-found p{margin:0;color:#64748b}.tdw-not-found button{margin-top:8px;padding:8px 16px;background:#38bdf826;color:#38bdf8;border:1px solid rgba(56,189,248,.3);border-radius:8px;cursor:pointer;font-size:13px}.tdw-not-found button:hover{background:#38bdf840}.clock-widget{position:fixed;top:20px;left:20px;z-index:999;transition:all .3s ease}.clock-widget.collapsed{width:60px;height:60px}.clock-widget.expanded{width:320px;background:linear-gradient(135deg,#2d3748,#1a202c);border-radius:16px;box-shadow:0 8px 32px #0006,0 0 0 2px #27ae60;padding:1.5rem}.clock-toggle{width:60px;height:60px;border:none;border-radius:12px;color:#fff;font-size:1.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;position:relative}.clock-toggle.clocked-in{background:linear-gradient(135deg,#27ae60,#2ecc71);box-shadow:0 4px 16px #27ae6066}.clock-toggle.clocked-out{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 4px 16px #e74c3c66}.clock-toggle:hover{transform:scale(1.05)}.clock-toggle.clocked-in:hover{box-shadow:0 6px 20px #27ae6099}.clock-toggle.clocked-out:hover{box-shadow:0 6px 20px #e74c3c99}.clock-widget.expanded .clock-toggle{position:absolute;top:1rem;right:1rem;width:40px;height:40px;font-size:1.2rem}.status-pulse{position:absolute;top:5px;right:5px;width:12px;height:12px;background:#fff;border:2px solid #27ae60;border-radius:50%;animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{transform:scale(1);opacity:1;box-shadow:0 0 #ffffffb3}50%{transform:scale(1.2);opacity:.9;box-shadow:0 0 8px 4px #fff6}}.clock-content{display:flex;flex-direction:column;gap:1rem;padding-top:2rem}.clock-header{display:flex;align-items:center;gap:.75rem;color:#fff;margin-bottom:.5rem}.clock-header i{font-size:1.5rem;color:#27ae60}.clock-header h3{margin:0;font-size:1.3rem;font-weight:600}.clock-user{background:#27ae601a;padding:.6rem 1rem;border-radius:8px;color:#e2e8f0;font-size:.95rem;display:flex;align-items:center;gap:.5rem;border:1px solid rgba(39,174,96,.3)}.clock-user i{color:#27ae60}.clock-status{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:#0003;border-radius:12px;border:1px solid #4a5568}.clock-slider-container{display:flex;flex-direction:column;gap:.5rem}.slider-label{text-align:center;font-weight:700;font-size:.85rem;color:#a0aec0;letter-spacing:1px}.clock-slider{position:relative;width:100%;height:60px;border:none;border-radius:30px;cursor:pointer;transition:all .4s ease;overflow:hidden;background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 4px 12px #e74c3c4d}.clock-slider.active{background:linear-gradient(135deg,#27ae60,#2ecc71);box-shadow:0 4px 12px #27ae604d}.clock-slider:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000004d}.clock-slider:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.slider-track{position:absolute;inset:0;display:flex;align-items:center;padding:0 6px;transition:all .4s ease}.clock-slider.active .slider-track{justify-content:flex-end}.clock-slider:not(.active) .slider-track{justify-content:flex-start}.slider-thumb{width:48px;height:48px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:all .4s ease;box-shadow:0 2px 8px #0003}.clock-slider.active .slider-thumb{color:#27ae60}.clock-slider:not(.active) .slider-thumb{color:#e74c3c}.slider-text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-weight:700;font-size:1rem;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2);pointer-events:none;z-index:1}.btn-lunch{width:100%;background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 12px #f39c124d;margin-top:.5rem}.btn-lunch:hover{transform:translateY(-2px);box-shadow:0 6px 16px #f39c1266;background:linear-gradient(135deg,#e67e22,#d35400)}.btn-lunch:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.session-time{font-size:2rem;font-weight:700;color:#27ae60;text-align:center;font-family:Courier New,monospace;letter-spacing:2px;text-shadow:0 2px 8px rgba(39,174,96,.3)}.btn{padding:.8rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-success{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;box-shadow:0 4px 12px #27ae604d}.btn-success:hover{transform:translateY(-2px);box-shadow:0 6px 16px #27ae6066}.btn-danger{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;box-shadow:0 4px 12px #e74c3c4d}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 6px 16px #e74c3c66}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.clock-actions{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem;border-top:1px solid #4a5568}.action-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#27ae601a;color:#e2e8f0;text-decoration:none;border-radius:8px;transition:all .3s ease;border:1px solid rgba(39,174,96,.2);font-size:.9rem;cursor:pointer;font-family:inherit;width:100%;text-align:left}.action-link:hover{background:#27ae6033;border-color:#27ae60;transform:translate(4px)}.action-link i{color:#27ae60;font-size:1rem}@media(max-width:768px){.clock-widget{top:10px;left:10px}.clock-widget.expanded{width:280px}}.mini-slider{gap:.25rem!important}.mini-slider .clock-slider{height:40px;border-radius:20px}.mini-slider .slider-thumb{width:32px;height:32px;font-size:.9rem}.mini-slider .slider-label{font-size:.7rem!important}.lunch-slider{background:linear-gradient(135deg,#ffa726,#ff9800)!important}.lunch-slider.active{background:linear-gradient(135deg,#ff8f00,#f57c00)!important}.lunch-slider .slider-thumb{color:#ff9800!important}.lunch-slider.active .slider-thumb{color:#ff8f00!important}.bank-slider{background:linear-gradient(135deg,#4caf50,#388e3c)!important}.bank-slider.active{background:linear-gradient(135deg,#2e7d32,#1b5e20)!important}.bank-slider .slider-thumb{color:#4caf50!important}.bank-slider.active .slider-thumb{color:#1b5e20!important}.day-end-slider{background:linear-gradient(135deg,#ef5350,#e53935)!important}.day-end-slider.active{background:linear-gradient(135deg,#c62828,#b71c1c)!important}.day-end-slider .slider-thumb{color:#e53935!important}.day-end-slider.active .slider-thumb{color:#b71c1c!important}.dashboard{display:flex;flex-direction:column;flex:1;min-height:0;box-sizing:border-box;overflow:hidden}.dashboard-header{flex-shrink:0;padding:.75rem 1.5rem;background:#1e293b;border-bottom:1px solid #334155}.dashboard-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.dashboard-header-left{min-width:0;flex:1}.dashboard-header h1{color:#fff;font-size:1.25rem;font-weight:600;margin:0;display:flex;align-items:center;gap:.5rem}.dashboard-header h1 i{color:#00d68f}.header-quick-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.hqa-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;border-radius:8px;background:#ffffff12;color:#ffffff8c;font-size:.85rem;cursor:pointer;transition:all .15s ease;padding:0}.hqa-btn:hover{background:#00d68f33;color:#00d68f;transform:translateY(-1px)}.hqa-btn:active{transform:translateY(0);background:#00d68f4d}.welcome-text{color:#fff9;font-size:.8rem;margin:.2rem 0 0;display:flex;align-items:center;gap:1rem}.dashboard-content-scroll{flex:1;overflow-y:auto;background:#f5f7fa;padding:1rem 1.5rem}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.status-indicator{padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600}.status-indicator.clocked-in{background:#00d68f26;color:#00d68f;border:2px solid #00d68f}.status-indicator.clocked-out{background:#ef44441a;color:#ef4444;border:2px solid #ef4444}.dashboard-grid .card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;transition:all .3s ease}.dashboard-grid .card:hover{transform:translateY(-4px);box-shadow:0 6px 16px #00000026}.card h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.stat-card{display:flex;align-items:center;gap:1.5rem;padding:2rem}.stat-icon{width:70px;height:70px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;flex-shrink:0}.stat-icon.today{background:linear-gradient(135deg,#27ae60,#2ecc71)}.stat-icon.week{background:linear-gradient(135deg,#3498db,#5dade2)}.stat-icon.month{background:linear-gradient(135deg,#9b59b6,#be90d4)}.stat-icon.pto{background:linear-gradient(135deg,#f39c12,#f1c40f)}.stat-content{display:flex;flex-direction:column;gap:.25rem}.stat-label{color:#999;font-size:.9rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat-value{color:#2c3e50;font-size:2rem;font-weight:700}.progress-card{grid-column:span 2}.progress-content{display:flex;flex-direction:column;gap:1rem}.progress-stats{display:flex;justify-content:space-between;color:#666;font-size:.95rem}.progress-value{font-weight:700;color:#27ae60}.progress-bar-container{height:40px;background:linear-gradient(135deg,#f5f5f5,#e8e8e8);border-radius:20px;overflow:hidden;position:relative;border:2px solid #27ae60}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#27ae60,#2ecc71);transition:width .6s ease;display:flex;align-items:center;justify-content:flex-end;padding-right:1rem}.progress-label{color:#fff;font-weight:700;font-size:1rem;text-shadow:0 1px 3px rgba(0,0,0,.3)}.info-content{display:flex;flex-direction:column;gap:.75rem}.info-row{display:flex;justify-content:space-between;padding:.75rem;background:linear-gradient(135deg,#f9f9f9,#f0f0f0);border-radius:8px;border-left:4px solid #27ae60}.info-label{color:#666;font-weight:500}.info-value{color:#2c3e50;font-weight:700}.recent-entries{grid-column:span 2}.text-center{text-align:center;color:#999;font-style:italic}.status-badge{display:inline-block;padding:.3rem .8rem;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:capitalize}.status-badge.active{background:#27ae60;color:#fff}.status-badge.completed{background:#3498db;color:#fff}.status-badge.pending{background:#f39c12;color:#fff}.quick-actions,.action-buttons,.action-btn{display:none}.dashboard-loading{display:flex;align-items:center;justify-content:center;min-height:400px;color:#999;font-size:1.2rem}.stat-card-expanded{flex-direction:column;align-items:flex-start;gap:.75rem}.stat-card-expanded .stat-icon{position:absolute;top:1.5rem;right:1.5rem;width:50px;height:50px;font-size:1.4rem}.stat-card-expanded{position:relative}.stat-subscores{display:flex;flex-direction:column;gap:.4rem;width:100%;margin-top:.25rem;padding-top:.5rem;border-top:1px solid #eee}.subscore-row{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;padding:.2rem 0}.subscore-label{color:#888;font-weight:500;display:flex;align-items:center;gap:.4rem}.subscore-label i{font-size:.7rem;color:#aaa;width:14px;text-align:center}.subscore-value{font-weight:700;color:#2c3e50}.subscore-value.warn{color:#e74c3c}.subscore-value.good{color:#27ae60}.subscore-value.accrual{color:#3498db}.running-value{font-family:Courier New,Courier,monospace;color:#27ae60!important;letter-spacing:1px}.stat-sub-live{font-size:.75rem;color:#27ae60;font-weight:600;display:flex;align-items:center;gap:.4rem}.pulse-dot{font-size:.5rem;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.progress-divider{height:1px;background:linear-gradient(to right,transparent,#ddd,transparent);margin:1.25rem 0}.monthly-bar{border-color:#9b59b6}.monthly-fill{background:linear-gradient(90deg,#9b59b6,#be90d4)!important}.monthly-progress-value{color:#9b59b6!important}.goal-badge{display:inline-block;background:linear-gradient(135deg,gold,orange);color:#fff;font-size:.7rem;padding:.2rem .6rem;border-radius:12px;margin-left:.5rem;font-weight:700;letter-spacing:.5px;animation:badgePop .5s ease-out;box-shadow:0 2px 8px #ffa50066}.monthly-badge{background:linear-gradient(135deg,#9b59b6,#e056c1);box-shadow:0 2px 8px #9b59b666}@keyframes badgePop{0%{transform:scale(0);opacity:0}60%{transform:scale(1.3)}to{transform:scale(1);opacity:1}}.complete-glow{border-color:gold!important;box-shadow:0 0 12px #ffd70080,0 0 24px #ffd70033;animation:glowPulse 2s ease-in-out infinite}.monthly-glow{border-color:#9b59b6!important;box-shadow:0 0 12px #9b59b680,0 0 24px #9b59b633}@keyframes glowPulse{0%,to{box-shadow:0 0 12px #ffd70080}50%{box-shadow:0 0 20px #ffd700cc,0 0 40px #ffd7004d}}.fill-complete{background:linear-gradient(90deg,#27ae60,#2ecc71,gold)!important;background-size:200% 100%;animation:shimmer 2s ease-in-out infinite}.monthly-complete{background:linear-gradient(90deg,#9b59b6,#be90d4,#e056c1)!important;background-size:200% 100%;animation:shimmer 2s ease-in-out infinite}@keyframes shimmer{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.celebration-container{position:relative;width:100%;height:120px;margin-top:.75rem;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#00001ee6,#0a0028f2);box-shadow:0 4px 16px #0000004d,inset 0 0 30px #6432c81a;animation:celebrationSlideIn .4s ease-out}@keyframes celebrationSlideIn{0%{opacity:0;transform:scaleY(0);transform-origin:top}to{opacity:1;transform:scaleY(1)}}.fireworks-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.celebration-text{position:absolute;bottom:12px;left:0;right:0;text-align:center;display:flex;align-items:center;justify-content:center;gap:.5rem;z-index:1}.celebration-label{color:gold;font-weight:800;font-size:1.1rem;letter-spacing:1px;text-shadow:0 0 10px rgba(255,215,0,.6),0 0 20px rgba(255,215,0,.3);animation:textGlow 1.5s ease-in-out infinite alternate}@keyframes textGlow{0%{text-shadow:0 0 10px rgba(255,215,0,.6)}to{text-shadow:0 0 20px rgba(255,215,0,.9),0 0 40px rgba(255,215,0,.4)}}.celebration-emoji{font-size:1.3rem;animation:emojiDance .5s ease-in-out infinite alternate}.celebration-emoji:last-child{animation-delay:.25s}@keyframes emojiDance{0%{transform:translateY(0) rotate(-5deg)}to{transform:translateY(-4px) rotate(5deg)}}@media(max-width:768px){.dashboard{padding:1rem}.dashboard-header h1{font-size:1.5rem}.welcome-text{flex-direction:column;align-items:flex-start;gap:.5rem}.dashboard-grid{grid-template-columns:1fr}.stat-card{padding:1.5rem}.stat-icon{width:60px;height:60px;font-size:1.5rem}.stat-value{font-size:1.5rem}.progress-card,.recent-entries{grid-column:span 1}.header-quick-actions{gap:.2rem}.hqa-btn{width:30px;height:30px;font-size:.75rem}}.time-tracking{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;box-sizing:border-box;overflow:hidden}.loading{display:flex;align-items:center;justify-content:center;height:400px;font-size:18px;color:#6b7280}.time-tracking .page-header-sticky{flex-shrink:0;background:#1e293b;color:#fff;padding:.75rem 1.5rem;border-bottom:1px solid #334155;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.time-tracking .page-header-sticky h2{margin:0;font-size:1.25rem;color:#fff}.time-tracking .page-header-sticky h2 i{color:#00d68f}.time-content-scroll{flex:1;overflow-y:auto;padding:1rem 1.5rem;background:#f5f7fa}.page-actions{display:flex;gap:10px}.content-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.card-full{grid-column:1 / -1}.card-span-2{grid-column:span 2}.time-form{display:flex;flex-direction:column;gap:15px;margin-top:15px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;align-items:end}.form-row label{display:flex;flex-direction:column;gap:5px;font-size:14px;font-weight:500;color:#374151}.form-row input,.form-row textarea,.form-row select{padding:10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}.form-row input:focus,.form-row textarea:focus,.form-row select:focus{outline:none;border-color:#48bb78;box-shadow:0 0 0 3px #48bb781a}.checkbox-label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.form-actions{display:flex;gap:10px;margin-top:10px}.month-selector{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f9fafb;border-radius:8px;margin-bottom:20px;gap:15px}.month-selector button{background:#fff;border:1px solid #d1d5db;padding:10px 16px;border-radius:6px;cursor:pointer;transition:all .2s;min-width:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.month-selector button:hover{background:#f3f4f6;border-color:#48bb78}.month-selector button:active{transform:scale(.95)}.month-selector button i{font-size:16px;color:#48bb78}.month-selector span{font-size:18px;font-weight:600;color:#1f2937;flex-grow:1;text-align:center}.summary-stats{display:flex;flex-wrap:nowrap;gap:20px;justify-content:space-between}.summary-stat{display:flex;align-items:center;gap:12px;padding:15px 20px;background:#f9fafb;border-radius:8px;flex:1;min-width:0}.summary-stat i{font-size:28px;color:#48bb78;flex-shrink:0}.summary-stat>div{display:flex;flex-direction:column;gap:2px;min-width:0}.summary-stat .stat-label{font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.summary-stat .stat-value{font-size:24px;font-weight:700;color:#1f2937}@media(max-width:768px){.summary-stats{flex-direction:column}.summary-stat{flex:1 1 100%}}.table-responsive{overflow-x:auto;margin-top:15px}.notes-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-buttons{display:flex;gap:8px;justify-content:center}.btn-icon{padding:6px 10px;background:#f3f4f6;border:none;border-radius:6px;cursor:pointer;transition:all .2s;font-size:14px;color:#6b7280}.btn-icon:hover{background:#48bb78;color:#fff}.btn-icon.btn-danger:hover{background:#f56565}.timetracking-component .modal-overlay{position:fixed;inset:0;background:#00000080;z-index:9999;overflow-y:auto;display:flex;align-items:flex-start;padding:40px 0;pointer-events:auto}.timetracking-component .modal-content{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:calc(100vh - 80px);margin:0 auto;overflow-y:auto;box-shadow:0 20px 60px #0000004d;pointer-events:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e5e7eb}.modal-header h2{margin:0;font-size:20px;color:#1f2937;display:flex;align-items:center;gap:10px}.modal-close{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #e5e7eb}tr.needs-approval{background:#fffbeb!important;border-left:4px solid #f59e0b}tr.needs-approval:hover{background:#fef3c7!important}tr.selected-row{background:#e0f2fe!important;border-left:4px solid #0ea5e9}tr.selected-row:hover{background:#bae6fd!important}tr.selected-row.needs-approval{background:linear-gradient(90deg,#e0f2fe,#fffbeb)!important;border-left:4px solid #f59e0b}.btn-icon.btn-success{background:#48bb78;color:#fff}.btn-icon.btn-success:hover{background:#38a169;transform:scale(1.05)}@media(max-width:768px){.page-header{flex-direction:column;align-items:stretch}.page-actions{flex-direction:column}.content-grid,.form-row,.summary-stats{grid-template-columns:1fr}}.pto-system{padding:20px;max-width:1400px;margin:0 auto}.card-featured{background:linear-gradient(180deg,#2d3748,#1a202c);color:#e2e8f0;border:2px solid #48bb78;box-shadow:0 4px 20px #48bb7826}.card-featured h3{color:#e2e8f0}.card-featured h3 i{color:#48bb78}.pto-balance-display{display:flex;flex-direction:column;gap:20px}.balance-main{text-align:center;padding:30px;background:#ffffff26;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.balance-label{display:block;font-size:16px;margin-bottom:10px;opacity:.9}.balance-value{display:block;font-size:64px;font-weight:700;line-height:1;margin-bottom:5px;text-shadow:0 2px 8px rgba(0,0,0,.2)}.balance-unit{display:block;font-size:18px;opacity:.9}.balance-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.info-item{display:flex;flex-direction:column;gap:5px;padding:15px;background:#ffffff1a;border-radius:8px}.info-label{font-size:13px;opacity:.8}.info-value{font-size:16px;font-weight:600}.pto-note{display:flex;gap:12px;padding:15px;background:#ffffff1a;border-radius:8px;margin-top:20px}.pto-note i{font-size:20px;flex-shrink:0;margin-top:2px}.pto-note p{margin:0;font-size:14px;line-height:1.6;opacity:.9}.pto-form{display:flex;flex-direction:column;gap:15px;margin-top:15px}.holidays-list{display:flex;flex-direction:column;gap:12px;margin-top:15px}.holiday-item{display:flex;align-items:center;gap:15px;padding:15px;background:#f9fafb;border-radius:8px;transition:all .2s}.holiday-item.upcoming{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b}.holiday-item.past{opacity:.6}.holiday-icon{font-size:24px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:50%}.holiday-details{flex:1;display:flex;flex-direction:column;gap:4px}.holiday-name{font-size:16px;font-weight:600;color:#1f2937}.holiday-date{font-size:14px;color:#6b7280}.holiday-hours{font-size:18px;font-weight:700;color:#48bb78}.badge-vacation{background:#dbeafe;color:#1e40af}.badge-sick{background:#fef3c7;color:#92400e}.badge-personal{background:#e9d5ff;color:#6b21a8}@media(max-width:768px){.balance-value{font-size:48px}.balance-info{grid-template-columns:1fr}.holidays-list{gap:8px}.holiday-item{padding:12px}}.time-adjustments{padding:2rem;width:100%;box-sizing:border-box}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h2{color:#2c3e50;font-size:1.8rem;font-weight:600}.adjustment-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:2px solid #e0e0e0}.adjustment-tabs button{background:none;border:none;padding:1rem 1.5rem;font-size:1rem;color:#666;cursor:pointer;position:relative;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.adjustment-tabs button:hover{color:#27ae60}.adjustment-tabs button.active{color:#27ae60;font-weight:600}.adjustment-tabs button.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:linear-gradient(90deg,#27ae60,#2ecc71);border-radius:3px 3px 0 0}.adjustment-tabs .badge{background:#27ae60;color:#fff;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:700}.adjustment-form{display:flex;flex-direction:column;gap:1.2rem}.adjustment-form label{display:flex;flex-direction:column;gap:.4rem;color:#555;font-weight:500;font-size:.95rem}.adjustment-form input,.adjustment-form textarea{padding:.8rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .3s ease}.adjustment-form input:focus,.adjustment-form textarea:focus{outline:none;border-color:#27ae60;box-shadow:0 0 0 3px #27ae601a}.data-table{width:100%;border-collapse:collapse}.data-table thead{background:linear-gradient(135deg,#f5f5f5,#e8e8e8);border-bottom:2px solid #27ae60}.data-table th{padding:1rem;text-align:left;font-weight:600;color:#2c3e50;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.data-table td{padding:1rem;border-bottom:1px solid #e0e0e0;color:#555}.data-table tbody tr:hover{background:#27ae600d}.data-table .highlight{background:#27ae6014;font-weight:600;color:#27ae60}.data-table .text-center{text-align:center;color:#999;font-style:italic}.badge{display:inline-block;padding:.3rem .8rem;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-success{background:#27ae60;color:#fff}.badge-warning{background:#f39c12;color:#fff}.badge-danger{background:#e74c3c;color:#fff}.action-buttons{display:flex;gap:.5rem}.btn{padding:.7rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;box-shadow:0 4px 12px #27ae604d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #27ae6066}.btn-sm{padding:.5rem 1rem;font-size:.85rem}.btn-success{background:#27ae60;color:#fff}.btn-success:hover{background:#229954}.btn-danger{background:#e74c3c;color:#fff}.btn-danger:hover{background:#c0392b}@media(max-width:768px){.time-adjustments{padding:1rem}.form-row{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.adjustment-tabs{flex-direction:column;border-bottom:none}.data-table{font-size:.85rem}.data-table th,.data-table td{padding:.6rem}}.schedule-page{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;box-sizing:border-box;overflow:hidden}.schedule-page .page-header-sticky{flex-shrink:0;background:#1e293b;color:#fff;padding:.75rem 1.5rem;border-bottom:1px solid #334155;display:flex;justify-content:space-between;align-items:center}.schedule-page .page-header-sticky h2{color:#fff;font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:.5rem;margin:0}.schedule-page .page-header-sticky h2 i{color:#00d68f}.schedule-page .page-header-sticky .subtitle{color:#fff9;font-size:.8rem;margin-top:.15rem}.schedule-page .sched-toolbar{flex-shrink:0;display:flex;gap:1.5rem;padding:.75rem 1.5rem;background:#f8fafc;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:center}.schedule-content-scroll{flex:1;overflow-y:auto;padding:1rem 1.5rem;background:#f5f7fa}.view-toggle{display:flex;gap:.5rem}.view-toggle button{background:#fff;border:2px solid #e0e0e0;padding:.55rem 1.1rem;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.4rem;font-size:.95rem;color:#666}.view-toggle button:hover{border-color:#27ae60;color:#27ae60}.view-toggle button.active{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border-color:#27ae60}.sched-nav{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem}.nav-btn{background:#fff;border:2px solid #e0e0e0;padding:.45rem .75rem;border-radius:8px;cursor:pointer;font-size:.95rem;color:#555;transition:all .2s}.nav-btn:hover{border-color:#27ae60;color:#27ae60}.today-btn{font-weight:600;padding:.45rem 1rem}.nav-label{margin-left:.75rem;font-size:1.15rem;font-weight:600;color:#2c3e50}.card{background:#fff;border-radius:12px;padding:1.5rem 2rem;box-shadow:0 2px 8px #00000014;margin-bottom:1.5rem}.card h3{color:#2c3e50;font-size:1.2rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.schedule-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.5rem}.summary-item{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:1rem;background:linear-gradient(135deg,#f5f5f5,#eaeaea);border-radius:12px;border:2px solid #27ae60}.summary-item i{font-size:1.6rem;color:#27ae60}.summary-item .label{color:#666;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.summary-item .value{color:#2c3e50;font-size:1.5rem;font-weight:700}.week-table-wrap{overflow-x:auto;margin-bottom:1.5rem}.week-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014}.week-table thead th{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;padding:.75rem .5rem;text-align:center;font-weight:600;font-size:.9rem;border-right:1px solid rgba(255,255,255,.15)}.week-table thead th:last-child{border-right:none}.week-table thead th.today-col{background:linear-gradient(135deg,#1e8449,#239b56);box-shadow:inset 0 -3px #f1c40f}.th-day{display:block;font-size:.85rem}.th-date{display:block;font-size:1.1rem;font-weight:700}.week-table tbody td{padding:.4rem;border-bottom:1px solid #f0f0f0;border-right:1px solid #f0f0f0;vertical-align:top}.week-table tbody td:last-child{border-right:none}.week-table tbody tr:last-child td{border-bottom:none}.week-table tbody td.today-col{background:#27ae600a}.name-col{min-width:130px;white-space:nowrap}.emp-name{font-weight:600;color:#2c3e50;padding:.6rem .75rem!important;vertical-align:middle!important}.total-col{min-width:70px;text-align:center}.total-val{font-weight:700;color:#27ae60;font-size:1rem;vertical-align:middle!important}.sched-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.6rem .4rem;border-radius:8px;text-align:center;min-height:52px;transition:all .2s}.sched-cell.working{background:linear-gradient(135deg,#eafaf1,#d5f5e3);border:1px solid #a9dfbf}.sched-cell.working.is-today{background:linear-gradient(135deg,#d5f5e3,#abebc6);border-color:#27ae60;box-shadow:0 0 0 2px #27ae6033}.sched-cell.day-off{background:linear-gradient(135deg,#f5f5f5,#ebebeb);border:1px solid #ddd;color:#999;font-size:.8rem}.sched-cell.day-off.is-today{border-color:#bbb}.sched-cell.day-off i{font-size:1rem;opacity:.5}.cell-time{font-size:.8rem;font-weight:500;color:#2c3e50}.cell-hours{font-size:.75rem;font-weight:700;color:#27ae60}.month-grid-wrap{margin-bottom:1.5rem}.month-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014;table-layout:fixed}.month-table thead th{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;padding:.6rem .3rem;text-align:center;font-weight:600;font-size:.85rem;border-right:1px solid rgba(255,255,255,.15)}.month-table thead th:last-child{border-right:none}.month-table tbody td{padding:0;border-bottom:1px solid #f0f0f0;border-right:1px solid #f0f0f0;vertical-align:top;height:70px}.month-table tbody td:last-child{border-right:none}.month-table tbody tr:last-child td{border-bottom:none}.empty-cell{background:#fafafa}.month-cell{padding:.3rem .25rem!important;text-align:center;transition:all .2s}.month-cell.is-today{background:#27ae6014;box-shadow:inset 0 0 0 2px #27ae60}.month-cell.day-off-cell{background:#f8f8f8}.month-date-num{display:block;font-weight:700;font-size:.85rem;color:#2c3e50;margin-bottom:.15rem}.day-off-cell .month-date-num{color:#aaa}.month-shift{display:block;font-size:.7rem;color:#27ae60;font-weight:500}.month-off{display:block;font-size:.7rem;color:#bbb}.month-off i{font-size:.65rem;margin-right:2px}.team-month-wrap{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem}.team-month-card h3{margin-bottom:.5rem}.team-month-summary{display:flex;gap:1.5rem;flex-wrap:wrap;margin-bottom:1rem;font-size:.9rem;color:#555}.team-month-summary span{padding:.3rem .8rem;background:#eafaf1;border-radius:6px;border:1px solid #a9dfbf}.month-table.mini tbody td{height:50px}.month-shift-sm{display:block;font-size:.6rem;line-height:1.3;color:#27ae60;font-weight:500}.month-off-sm{display:block;font-size:.65rem;color:#bbb}.info-box li{padding:.6rem .75rem;border-bottom:1px solid #e0e0e0;color:#555;font-size:.95rem}@media(max-width:768px){.schedule-page{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.sched-toolbar{flex-direction:column}.schedule-summary{grid-template-columns:1fr}.team-month-summary{flex-direction:column;gap:.5rem}}.payroll-page{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;box-sizing:border-box;overflow:hidden}.payroll-page .page-header-sticky{flex-shrink:0;background:#1e293b;color:#fff;padding:.75rem 1.5rem;border-bottom:1px solid #334155;display:flex;justify-content:space-between;align-items:center;gap:1rem}.payroll-page .page-header-sticky h2{color:#fff;font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:.5rem;margin:0}.payroll-page .page-header-sticky h2 i{color:#00d68f}.payroll-page .page-header-sticky .subtitle{color:#fff9;font-size:.8rem;margin-top:.15rem}.payroll-page .control-bar{flex-shrink:0;display:flex;gap:1.5rem;padding:.75rem 1.5rem;background:#f8fafc;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:center}.payroll-content-scroll{flex:1;overflow-y:auto;padding:1rem 1.5rem;background:#f5f7fa}.view-toggle,.period-selector{display:flex;gap:.5rem}.view-toggle button,.period-selector button{background:#fff;border:2px solid #e0e0e0;padding:.8rem 1.2rem;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#666}.view-toggle button:hover,.period-selector button:hover{border-color:#27ae60;color:#27ae60}.view-toggle button.active,.period-selector button.active{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border-color:#27ae60}.card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem}.card h3{color:#2c3e50;font-size:1.3rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.card h3 i{color:#27ae60}.payroll-summary{border:2px solid #27ae60}.period-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.period-header h3{margin-bottom:0}.pay-rate{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;padding:.6rem 1.2rem;border-radius:8px;font-weight:600;font-size:1.1rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.summary-card{background:linear-gradient(135deg,#f9f9f9,#f0f0f0);border:2px solid #e0e0e0;border-radius:12px;padding:1.5rem;display:flex;gap:1rem;transition:all .3s ease}.summary-card:hover{transform:translateY(-4px);box-shadow:0 6px 16px #00000026}.summary-card.overtime{border-color:#f39c12}.summary-card.pto{border-color:#3498db}.summary-card.total{border-color:#27ae60;background:linear-gradient(135deg,#27ae601a,#2ecc711a)}.summary-icon{display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:linear-gradient(135deg,#27ae60,#2ecc71);border-radius:12px;flex-shrink:0}.summary-card.overtime .summary-icon{background:linear-gradient(135deg,#f39c12,#f1c40f)}.summary-card.pto .summary-icon{background:linear-gradient(135deg,#3498db,#5dade2)}.summary-card.total .summary-icon{background:linear-gradient(135deg,#27ae60,#2ecc71)}.summary-icon i{font-size:1.8rem;color:#fff}.summary-content{display:flex;flex-direction:column;gap:.25rem;flex:1}.summary-content .label{color:#666;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.summary-content .value{color:#2c3e50;font-size:1.1rem;font-weight:600}.summary-content .amount{color:#27ae60;font-size:1.3rem;font-weight:700}.summary-content .amount.gross{font-size:1.6rem}.table-responsive{overflow-x:auto}.payroll-table{width:100%;border-collapse:collapse}.payroll-table thead{background:linear-gradient(135deg,#f5f5f5,#e8e8e8);border-bottom:2px solid #27ae60}.payroll-table th{padding:1rem;text-align:left;font-weight:600;color:#2c3e50;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.payroll-table td{padding:1rem;border-bottom:1px solid #e0e0e0;color:#555}.payroll-table tbody tr:hover{background:#27ae600d}.payroll-table tfoot{background:linear-gradient(135deg,#f5f5f5,#e8e8e8);border-top:3px solid #27ae60;font-weight:700}.payroll-table tfoot td{padding:1.2rem 1rem}.payroll-table .email{color:#999;font-size:.85rem}.payroll-table .overtime{color:#f39c12;font-weight:600}.payroll-table .pto{color:#3498db;font-weight:600}.payroll-table .gross{color:#27ae60;font-weight:700;font-size:1.1rem}.payroll-table .text-center{text-align:center;color:#999;font-style:italic}.info-box{background:linear-gradient(135deg,#f9f9f9,#f0f0f0);border:2px solid #27ae60}.info-box ul{list-style:none;padding:0;margin:0}.info-box li{padding:.75rem;border-bottom:1px solid #e0e0e0;color:#555}.info-box li:last-child{border-bottom:none}.info-box strong{color:#27ae60}.loading{text-align:center;padding:3rem;color:#999;font-size:1.1rem}@media(max-width:768px){.payroll-page{padding:1rem}.control-bar{flex-direction:column;gap:1rem}.view-toggle,.period-selector{flex-direction:column}.period-header{flex-direction:column;align-items:flex-start;gap:1rem}.summary-grid{grid-template-columns:1fr}.payroll-table{font-size:.85rem}.payroll-table th,.payroll-table td{padding:.6rem}}.payroll-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:payroll-modal-fadeIn .2s ease-out}@keyframes payroll-modal-fadeIn{0%{opacity:0}to{opacity:1}}.payroll-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;animation:payroll-modal-slideIn .2s ease-out}@keyframes payroll-modal-slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.payroll-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e0e0e0;background:#f8f9fa;border-radius:12px 12px 0 0}.payroll-modal-header h3{margin:0;color:#2c3e50;font-size:1.2rem;display:flex;align-items:center;gap:.5rem}.payroll-modal-header h3 i{color:#27ae60}.payroll-modal-close{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:0;line-height:1;transition:color .2s}.payroll-modal-close:hover{color:#e74c3c}.payroll-modal-body{padding:1.5rem}.payroll-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e0e0e0;background:#f8f9fa;border-radius:0 0 12px 12px}.aam-time{display:flex;flex-direction:column;width:100%;flex:1;min-height:0;overflow:hidden}.aam-time-header{flex-shrink:0;padding:.75rem 1.5rem;background:#1e293b;border-bottom:1px solid #334155}.aam-time-header h1{color:#fff;font-size:1.25rem;font-weight:600;margin:0;display:flex;align-items:center;gap:.5rem}.aam-time-header h1 i{color:#00d68f}.aam-time-header .subtitle{color:#fff9;font-size:.8rem;margin:.15rem 0 0}.aam-time-tabs{flex-shrink:0;display:flex;gap:0;background:#fff;border-bottom:1px solid #e5e7eb;overflow-x:auto}.tab-btn{flex:1;min-width:120px;background:#fff;border:none;border-bottom:2px solid transparent;padding:.75rem 1rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.9rem;font-weight:500;color:#64748b}.tab-btn:hover{background:#f8fafc;color:#00a86b}.tab-btn.active{color:#00a86b;background:#f0fdf4;border-bottom-color:#00a86b;font-weight:600}.tab-btn.active:after{display:none}.tab-btn i{font-size:1rem}.tab-btn.active i{animation:none}@keyframes tab-icon-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.aam-time-content{flex:1;overflow-y:auto;background:#f5f7fa}.aam-time-content>div{padding:0!important}.aam-time-content .page-header{display:none}.aam-time-content .card{border-radius:0;box-shadow:none;border:none;border-bottom:1px solid #e0e0e0}@media(max-width:768px){.aam-time-header{padding:1.5rem 1rem}.aam-time-header h1{font-size:1.6rem}.tab-btn{min-width:100px;padding:1rem .75rem;font-size:.85rem}.tab-btn span{display:none}.tab-btn i{font-size:1.4rem}}.data-import{width:100%;padding:2rem;box-sizing:border-box}.import-header{text-align:center;margin-bottom:2rem}.import-header h2{font-size:2rem;color:#1e40af;margin-bottom:.5rem}.import-header .subtitle{color:#6b7280;font-size:1.1rem}.import-instructions{background:#fff;padding:1.5rem;border-radius:8px;border:2px solid #e5e7eb;margin-bottom:2rem}.import-instructions h3{margin-top:0;color:#1f2937}.import-instructions ol{margin:1rem 0;padding-left:1.5rem}.import-instructions li{margin:.5rem 0;line-height:1.6}.import-instructions code{background:#f3f4f6;padding:.25rem .5rem;border-radius:4px;font-family:Courier New,monospace;color:#dc2626}.import-input-section{background:#fff;padding:1.5rem;border-radius:8px;border:2px solid #e5e7eb;margin-bottom:2rem}.import-input-section h3{margin-top:0;color:#1f2937}.import-input-section input[type=file]{padding:.5rem;border:2px dashed #d1d5db;border-radius:8px;width:100%;cursor:pointer}.import-input-section input[type=file]:hover{border-color:#3b82f6;background:#f0f9ff}.import-actions{text-align:center;margin:2rem 0}.btn-primary{background:#2563eb;color:#fff;border:none;padding:1rem 2rem;font-size:16px;font-weight:700;border-radius:8px;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:#1d4ed8;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.btn-primary:disabled{background:#d1d5db;cursor:not-allowed}.results-summary p{margin:.5rem 0;font-size:1.1rem}.errors-section{background:#fef2f2;padding:1rem;border-radius:8px;border:1px solid #fca5a5}.errors-section ul{margin:.5rem 0 0;padding-left:1.5rem}.errors-section li{margin:.25rem 0;color:#991b1b}.payroll-data-report{padding:2rem;max-width:1200px;margin:0 auto}.security-warning{background:#c0392b;color:#fff;padding:1rem;text-align:center;font-weight:700;font-size:1.1rem;margin-bottom:2rem;border-radius:8px;box-shadow:0 4px 6px #c0392b4d}.access-denied{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.access-denied-icon{font-size:4rem;margin-bottom:1rem}.access-denied h2{color:#c0392b;margin-bottom:1rem}.warning-text{color:#e74c3c;font-weight:600;margin-top:1rem}.report-header{text-align:center;margin-bottom:3rem}.report-header h1{color:#2c3e50;margin-bottom:.5rem}.report-header p{color:#7f8c8d;font-size:1.1rem}.section{background:#fff;padding:2rem;margin-bottom:2rem;border-radius:12px;box-shadow:0 2px 8px #0000001a}.section h2{color:#2c3e50;margin-bottom:1.5rem;font-size:1.4rem}.report-type-options{display:flex;flex-direction:column;gap:1rem}.report-type-options label{display:flex;align-items:flex-start;padding:1.25rem;border:2px solid #ecf0f1;border-radius:8px;cursor:pointer;transition:all .2s}.report-type-options label:hover{border-color:#3498db;background:#f8f9fa}.report-type-options label.active{border-color:#c0392b;background:#fef5f5}.report-type-options input[type=radio]{margin-right:1rem;margin-top:.25rem}.option-content{flex:1}.option-content strong{display:block;color:#2c3e50;margin-bottom:.25rem;font-size:1.1rem}.option-content small{color:#7f8c8d;font-size:.9rem}.quick-date-buttons{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.btn-secondary{padding:.75rem 1.5rem;background:#3498db;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:background .2s}.btn-secondary:hover{background:#2980b9}.date-inputs{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.input-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#2c3e50}.input-group input[type=date]{width:100%;padding:.75rem;border:2px solid #ecf0f1;border-radius:6px;font-size:1rem}.input-group input[type=date]:focus{outline:none;border-color:#3498db}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.select-actions{display:flex;gap:1rem}.btn-link{background:none;border:none;color:#3498db;cursor:pointer;font-weight:500;padding:.5rem 1rem;text-decoration:underline}.btn-link:hover{color:#2980b9}.employee-list{max-height:400px;overflow-y:auto;border:2px solid #ecf0f1;border-radius:8px;padding:1rem}.employee-checkbox{display:flex;align-items:flex-start;padding:1rem;border-bottom:1px solid #ecf0f1;cursor:pointer;transition:background .2s}.employee-checkbox:last-child{border-bottom:none}.employee-checkbox:hover{background:#f8f9fa}.employee-checkbox input[type=checkbox]{margin-right:1rem;margin-top:.25rem}.employee-info{flex:1}.employee-info strong{color:#2c3e50;font-size:1.05rem}.legal-name{color:#7f8c8d;font-size:.9rem;margin-left:.5rem}.employee-details{display:flex;gap:1rem;margin-top:.5rem;font-size:.9rem;color:#7f8c8d;flex-wrap:wrap}.status-badge,.role-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.role-badge.superadmin{background:#c0392b;color:#fff}.role-badge.admin{background:#f39c12;color:#fff}.role-badge.agent{background:#3498db;color:#fff}.selection-summary{margin-top:1rem;padding:1rem;background:#f8f9fa;border-radius:6px;text-align:center;font-weight:500;color:#2c3e50}.generate-section{text-align:center;margin:2rem 0}.btn-generate{padding:1.25rem 3rem;background:#c0392b;color:#fff;border:none;border-radius:8px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 6px #c0392b4d;display:inline-flex;align-items:center;gap:.75rem}.btn-generate:hover:not(:disabled){background:#a93226;transform:translateY(-2px);box-shadow:0 6px 8px #c0392b66}.btn-generate:disabled{background:#95a5a6;cursor:not-allowed;box-shadow:none}.spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .8s linear infinite}.security-notice{background:#fff3cd;border:2px solid #ffc107;border-radius:8px;padding:1.5rem;margin-top:2rem}.security-notice h3{color:#856404;margin-bottom:1rem;font-size:1.1rem}.security-notice ul{margin:0;padding-left:1.5rem;color:#856404}.security-notice li{margin-bottom:.5rem}.loading{text-align:center;padding:3rem;color:#7f8c8d;font-size:1.1rem}@media(max-width:768px){.payroll-data-report{padding:1rem}.date-inputs{grid-template-columns:1fr}.quick-date-buttons{flex-direction:column}.btn-generate{width:100%;padding:1rem 2rem}}.cum-overlay{position:fixed;inset:0;background:#00000080;z-index:9000;animation:cum-fadeIn .2s ease-out}@keyframes cum-fadeIn{0%{opacity:0}to{opacity:1}}.cum-drawer{position:fixed;top:0;right:0;width:580px;max-width:95vw;height:100vh;background:#fff;box-shadow:-8px 0 40px #0003;z-index:9001;display:flex;flex-direction:column;animation:cum-slideIn .3s cubic-bezier(.16,1,.3,1)}@keyframes cum-slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.cum-header{background:linear-gradient(135deg,#1e293b,#0f172a);padding:1.25rem 1.5rem;flex-shrink:0;border-bottom:3px solid #00a86b}.cum-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.cum-header-info h2{color:#fff;font-size:1.2rem;font-weight:700;margin:0 0 .25rem;display:flex;align-items:center;gap:.5rem}.cum-header-info h2 i{color:#00d68f}.cum-header-info .cum-client-meta{color:#fff9;font-size:.82rem;display:flex;gap:1rem;flex-wrap:wrap}.cum-header-info .cum-client-meta span{display:flex;align-items:center;gap:.3rem}.cum-close-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;width:36px;height:36px;border-radius:8px;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.cum-close-btn:hover{background:#fff3;border-color:#fff6}.cum-actions-bar{display:flex;gap:.5rem;padding:.75rem 1.5rem;background:#f8fafc;border-bottom:1px solid #e5e7eb;flex-shrink:0;flex-wrap:wrap;align-items:center}.cum-actions-bar .cum-btn{padding:.5rem .9rem;font-size:.82rem;border-radius:6px;font-weight:600;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;transition:all .15s ease;white-space:nowrap;border:none}.cum-btn-primary{background:linear-gradient(135deg,#00a86b,#008f5b);color:#fff;box-shadow:0 2px 6px #00a86b4d}.cum-btn-primary:hover{background:linear-gradient(135deg,#00c17d,#00a86b);transform:translateY(-1px);box-shadow:0 4px 12px #00a86b66}.cum-btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db!important}.cum-btn-secondary:hover{background:#f3f4f6;border-color:#9ca3af!important}.cum-btn-danger{background:#ef4444;color:#fff}.cum-btn-danger:hover{background:#dc2626}.cum-user-count{margin-left:auto;color:#6b7280;font-size:.82rem;font-weight:500}.cum-user-list{flex:1;overflow-y:auto;padding:1rem 1.5rem}.cum-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center}.cum-empty-state .cum-empty-icon{width:80px;height:80px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin-bottom:1rem;border:2px dashed #86efac}.cum-empty-state h3{color:#1f2937;font-size:1.1rem;margin:0 0 .5rem}.cum-empty-state p{color:#6b7280;font-size:.9rem;margin:0 0 1.25rem;max-width:320px}.cum-user-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1rem 1.25rem;margin-bottom:.75rem;transition:all .15s ease;position:relative}.cum-user-card:hover{border-color:#00a86b;box-shadow:0 2px 12px #00a86b1a}.cum-user-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.cum-user-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#00a86b,#059669);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;flex-shrink:0}.cum-user-info{flex:1;min-width:0}.cum-user-name{font-weight:600;color:#1f2937;font-size:.95rem;margin:0;display:flex;align-items:center;gap:.4rem}.cum-user-email{color:#6b7280;font-size:.82rem;margin:.1rem 0 0;word-break:break-all}.cum-user-badges{display:flex;gap:.4rem;margin-top:.4rem;flex-wrap:wrap}.cum-badge{padding:.15rem .5rem;border-radius:12px;font-size:.72rem;font-weight:600;letter-spacing:.02em}.cum-badge-verified{background:#dcfce7;color:#15803d}.cum-badge-unverified{background:#fef3c7;color:#92400e}.cum-badge-mfa{background:#dbeafe;color:#1d4ed8}.cum-badge-no-mfa{background:#fce7f3;color:#9d174d}.cum-badge-active{background:#d1fae5;color:#065f46}.cum-badge-inactive{background:#fee2e2;color:#991b1b}.cum-badge-access{background:#f3e8ff;color:#6b21a8}.cum-user-card-actions{display:flex;gap:.35rem;flex-shrink:0}.cum-icon-btn{width:32px;height:32px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;font-size:.82rem}.cum-icon-btn:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db}.cum-icon-btn.danger:hover{background:#fef2f2;color:#dc2626;border-color:#fca5a5}.cum-user-meta{display:flex;gap:1rem;margin-top:.6rem;padding-top:.5rem;border-top:1px solid #f3f4f6;color:#9ca3af;font-size:.75rem}.cum-user-meta span{display:flex;align-items:center;gap:.3rem}.cum-multi-client-section{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #f3f4f6}.cum-multi-client-label{font-size:.72rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.3rem}.cum-client-chips{display:flex;gap:.3rem;flex-wrap:wrap}.cum-client-chip{padding:.15rem .5rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;font-size:.72rem;color:#166534;font-weight:500}.cum-client-chip.current{background:#dbeafe;border-color:#93c5fd;color:#1e40af;font-weight:600}.cum-add-form-overlay{position:fixed;inset:0;background:#00000080;z-index:9100;display:flex;align-items:center;justify-content:center;animation:cum-fadeIn .15s ease-out}.cum-add-form{background:#fff;border-radius:16px;width:500px;max-width:90vw;max-height:85vh;overflow-y:auto;box-shadow:0 25px 60px #0000004d;animation:cum-modalPop .25s cubic-bezier(.16,1,.3,1)}@keyframes cum-modalPop{0%{transform:scale(.95) translateY(10px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.cum-add-form-header{padding:1.25rem 1.5rem;background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:16px 16px 0 0;display:flex;justify-content:space-between;align-items:center}.cum-add-form-header h3{color:#fff;font-size:1.05rem;font-weight:600;margin:0;display:flex;align-items:center;gap:.5rem}.cum-add-form-header h3 i{color:#00d68f}.cum-add-form-body{padding:1.5rem}.cum-form-group{margin-bottom:1.15rem}.cum-form-group label{display:block;font-size:.82rem;font-weight:600;color:#374151;margin-bottom:.35rem}.cum-form-group label .required{color:#ef4444}.cum-form-group input,.cum-form-group select{width:100%;padding:.65rem .9rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;transition:all .15s ease;box-sizing:border-box}.cum-form-group input:focus,.cum-form-group select:focus{outline:none;border-color:#00a86b;box-shadow:0 0 0 3px #00a86b1a}.cum-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.cum-form-hint{font-size:.75rem;color:#9ca3af;margin-top:.25rem}.cum-form-footer{padding:1rem 1.5rem;background:#f8fafc;border-top:1px solid #e5e7eb;border-radius:0 0 16px 16px;display:flex;justify-content:flex-end;gap:.75rem}.cum-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}.cum-success-banner{background:linear-gradient(135deg,#059669,#047857);color:#fff;padding:.75rem 1.25rem;border-radius:8px;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem;animation:cum-slideDown .3s ease-out;font-size:.88rem;font-weight:500}@keyframes cum-slideDown{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.cum-existing-notice{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:10px;padding:1rem 1.25rem;margin-bottom:1rem;animation:cum-slideDown .3s ease-out}.cum-existing-notice h4{color:#92400e;font-size:.9rem;margin:0 0 .5rem;display:flex;align-items:center;gap:.4rem}.cum-existing-notice p{color:#78350f;font-size:.82rem;margin:0 0 .75rem}.cum-existing-clients{display:flex;gap:.3rem;flex-wrap:wrap;margin-bottom:.75rem}.cum-add-access-btn{background:#f59e0b;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.82rem;cursor:pointer;transition:all .15s ease}.cum-add-access-btn:hover{background:#d97706}.cum-mgmt-drawer{position:fixed;top:0;right:0;width:480px;max-width:90vw;height:100vh;background:#fff;box-shadow:-8px 0 40px #00000040;z-index:9200;display:flex;flex-direction:column;animation:cum-slideIn .3s cubic-bezier(.16,1,.3,1)}.cum-mgmt-header{background:linear-gradient(135deg,#7c3aed,#5b21b6);padding:1.25rem 1.5rem;flex-shrink:0}.cum-mgmt-header h3{color:#fff;font-size:1.05rem;font-weight:700;margin:0 0 .15rem;display:flex;align-items:center;gap:.5rem}.cum-mgmt-header .cum-mgmt-email{color:#ffffffb3;font-size:.82rem}.cum-mgmt-body{flex:1;overflow-y:auto;padding:1.25rem 1.5rem}.cum-mgmt-section-title{font-size:.78rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .75rem}.cum-mgmt-client-item{display:flex;align-items:center;justify-content:space-between;padding:.65rem .85rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.5rem;transition:all .15s ease}.cum-mgmt-client-item:hover{border-color:#a78bfa}.cum-mgmt-client-name{font-weight:600;font-size:.88rem;color:#1f2937}.cum-mgmt-client-code{font-size:.75rem;color:#9ca3af}.cum-mgmt-remove-btn{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:.88rem;padding:.3rem;border-radius:4px;transition:all .15s ease}.cum-mgmt-remove-btn:hover{color:#ef4444;background:#fef2f2}.cum-mgmt-add-section{margin-top:1.25rem;padding-top:1rem;border-top:1px solid #e5e7eb}.cum-mgmt-search{width:100%;padding:.55rem .85rem .55rem 2.2rem;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;margin-bottom:.5rem;box-sizing:border-box}.cum-mgmt-search:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.cum-mgmt-add-list{max-height:250px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px}.cum-mgmt-add-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background .1s ease}.cum-mgmt-add-item:last-child{border-bottom:none}.cum-mgmt-add-item:hover{background:#f5f3ff}.cum-mgmt-add-item .add-label{font-size:.82rem;color:#374151}.cum-mgmt-add-item .add-code{font-size:.72rem;color:#9ca3af}.cum-mgmt-add-item .add-btn{background:#7c3aed;color:#fff;border:none;padding:.25rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s ease}.cum-mgmt-add-item .add-btn:hover{background:#6d28d9}.cum-mgmt-footer{padding:.75rem 1.5rem;background:#f8fafc;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.cum-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:.75rem}.cum-loading .cum-spinner-lg{width:40px;height:40px;border:3px solid #e5e7eb;border-top:3px solid #00a86b;border-radius:50%;animation:spin .8s linear infinite}.cum-loading p{color:#6b7280;font-size:.88rem}.cum-confirm-overlay{position:fixed;inset:0;background:#00000080;z-index:9300;display:flex;align-items:center;justify-content:center;animation:cum-fadeIn .15s ease-out}.cum-confirm-modal{background:#fff;border-radius:12px;padding:1.5rem;width:400px;max-width:90vw;box-shadow:0 20px 50px #0000004d;animation:cum-modalPop .2s ease-out}.cum-confirm-modal h4{color:#dc2626;font-size:1rem;margin:0 0 .5rem;display:flex;align-items:center;gap:.5rem}.cum-confirm-modal p{color:#4b5563;font-size:.88rem;margin:0 0 1.25rem;line-height:1.5}.cum-confirm-actions{display:flex;gap:.75rem;justify-content:flex-end}@media(max-width:640px){.cum-drawer,.cum-mgmt-drawer{width:100vw}.cum-form-row{grid-template-columns:1fr}}.admin-panel{padding:20px;width:100%;box-sizing:border-box}.access-denied{text-align:center;padding:60px 20px;color:#6b7280}.access-denied i{font-size:64px;color:#d1d5db;margin-bottom:20px}.access-denied h2{margin:20px 0 10px;color:#1f2937}.admin-tabs{display:flex;gap:10px;margin-bottom:30px;flex-wrap:wrap}.admin-tabs button{padding:12px 24px;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;color:#6b7280;transition:all .2s;display:flex;align-items:center;gap:8px}.admin-tabs button:hover{border-color:#48bb78;color:#48bb78;transform:translateY(-2px)}.admin-tabs button.active{background:linear-gradient(135deg,#48bb78,#38a169);border-color:#48bb78;color:#fff;box-shadow:0 4px 12px #48bb784d}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.search-input{padding:10px 15px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;min-width:250px;transition:border-color .2s}.search-input:focus{outline:none;border-color:#48bb78;box-shadow:0 0 0 3px #48bb781a}.date-range-picker{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.date-range-picker input[type=date]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.date-range-picker span{color:#6b7280;font-size:14px}.performance-table{font-size:13px}.performance-table th{font-size:12px}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-weight:600;font-size:13px;text-transform:capitalize}.badge-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 2px 8px #ef44444d}.badge-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 2px 8px #f59e0b4d}.badge-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 2px 8px #3b82f64d}.badge-info{background:linear-gradient(135deg,#14b8a6,#0d9488);color:#fff;box-shadow:0 2px 8px #14b8a64d}.badge-secondary{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff;box-shadow:0 2px 8px #6b72804d}.badge-success{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;box-shadow:0 2px 8px #48bb784d}.score-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-weight:700;font-size:14px}.score-excellent{background:#d1fae5;color:#065f46}.score-good{background:#dbeafe;color:#1e40af}.score-fair{background:#fef3c7;color:#92400e}.score-poor{background:#fee2e2;color:#991b1b}.recommendation-badge{display:inline-block;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600}.rec-excellent{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;box-shadow:0 2px 8px #48bb784d}.rec-good{background:#dbeafe;color:#1e40af}.rec-fair{background:#fef3c7;color:#92400e}.rec-poor{background:#fee2e2;color:#991b1b}.badge-tier1,.badge-tier2,.badge-tier3{background:#e5e7eb;color:#1f2937;font-weight:600}.btn-sm{padding:6px 12px;font-size:13px}.action-buttons{display:flex;gap:6px;justify-content:center}@media(max-width:768px){.admin-tabs{flex-direction:column}.admin-tabs button{width:100%;justify-content:center}.card-header{flex-direction:column;align-items:stretch}.search-input{width:100%;min-width:auto}.date-range-picker{flex-direction:column;align-items:stretch}.date-range-picker input[type=date]{width:100%}}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;overflow-y:scroll}.modal-content{background:#fff;border-radius:12px;padding:30px;max-width:600px;width:100%;max-height:calc(100vh - 80px);margin:40px auto;overflow-y:auto;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;position:relative}.modal-content form{display:flex;flex-direction:column;flex:1;min-height:0}.modal-content .form-grid{overflow-y:auto;padding-right:10px}.modal-content .modal-actions{position:sticky;bottom:0;background:#fff;padding-top:20px;margin-top:20px;border-top:2px solid #e5e7eb;z-index:10}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #e5e7eb}.modal-header h3{margin:0;font-size:24px;color:#1f2937;display:flex;align-items:center;gap:10px}.btn-close{background:none;border:none;font-size:32px;cursor:pointer;color:#9ca3af;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.btn-close:hover{color:#1f2937}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:25px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#374151;font-size:14px}.form-group input,.form-group select{padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#48bb78;box-shadow:0 0 0 3px #48bb781a}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid #e5e7eb}.btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.btn-primary{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;box-shadow:0 4px 12px #48bb784d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #48bb7866}.btn-secondary{background:#e5e7eb;color:#4b5563}.btn-secondary:hover{background:#d1d5db}.action-buttons{display:flex;gap:8px;align-items:center}.btn-icon{background:none;border:none;padding:8px;cursor:pointer;color:#6b7280;font-size:16px;transition:color .2s,transform .2s;border-radius:6px}.btn-icon:hover{color:#48bb78;background:#48bb781a;transform:scale(1.1)}.btn-icon.btn-danger:hover{color:#ef4444;background:#ef44441a}@media(max-width:768px){.form-grid{grid-template-columns:1fr}.modal-content{padding:20px}.modal-actions{flex-direction:column}.btn{width:100%;justify-content:center}}.admin-modal-overlay{position:fixed;inset:0;background:#0f172a8c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;z-index:10000;overflow-y:auto;padding:3vh 1rem;animation:admin-modal-fadeIn .2s ease-out}@keyframes admin-modal-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes admin-modal-slideIn{0%{transform:translateY(-16px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.admin-modal-content{background:#fff;border-radius:16px;box-shadow:0 24px 64px #00000040,0 0 0 1px #0000000d;max-width:820px;width:100%;max-height:94vh;display:flex;flex-direction:column;animation:admin-modal-slideIn .25s ease-out;overflow:hidden}.admin-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem;background:linear-gradient(135deg,#1e293b,#334155);color:#fff;flex-shrink:0;border-bottom:none;margin-bottom:0}.admin-modal-header h3{margin:0;font-size:1.2rem;font-weight:700;color:#fff;display:flex;align-items:center;gap:10px;letter-spacing:.01em}.admin-modal-close{background:#ffffff1f;border:none;font-size:1.4rem;cursor:pointer;color:#fff;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s;line-height:1}.admin-modal-close:hover{background:#ef4444a6}.admin-modal-content form{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;padding:0}.admin-modal-content .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem 1.5rem;padding:1.5rem 1.75rem 1rem}.admin-modal-content .form-group{display:flex;flex-direction:column;gap:.35rem}.admin-modal-content .form-group label{font-weight:600;font-size:.82rem;color:#475569;text-transform:uppercase;letter-spacing:.04em}.admin-modal-content .form-group input,.admin-modal-content .form-group select,.admin-modal-content .form-group textarea{padding:.6rem .85rem;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.92rem;color:#1e293b;background:#f8fafc;transition:border-color .15s,box-shadow .15s,background .15s}.admin-modal-content .form-group input:focus,.admin-modal-content .form-group select:focus,.admin-modal-content .form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f;background:#fff}.admin-modal-content .form-group input:read-only{background:#f1f5f9;color:#64748b;cursor:not-allowed}.admin-modal-content .form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2364748b' viewBox='0 0 16 16'%3E%3Cpath d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.25rem}.admin-modal-content .form-group textarea{resize:vertical;min-height:60px}.admin-modal-actions{position:sticky;bottom:0;background:#fff;padding:1rem 1.75rem;border-top:1px solid #e2e8f0;z-index:10;display:flex;gap:.75rem;justify-content:flex-end;flex-shrink:0}.admin-modal-actions .btn{padding:.6rem 1.35rem;font-size:.88rem;border-radius:8px;font-weight:600}.admin-modal-actions .btn-secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.admin-modal-actions .btn-secondary:hover{background:#e2e8f0}.admin-modal-actions .btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;box-shadow:0 2px 8px #2563eb40}.admin-modal-actions .btn-primary:hover:not(:disabled){box-shadow:0 4px 14px #2563eb59;transform:translateY(-1px)}@media(max-width:640px){.admin-modal-content .form-grid{grid-template-columns:1fr;padding:1rem}.admin-modal-header{padding:1rem 1.25rem}.admin-modal-actions{padding:.75rem 1rem}}.client-form-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:linear-gradient(135deg,#0009,#00281ebf);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:999999;display:flex;align-items:flex-start;justify-content:center;padding:2vh 20px;box-sizing:border-box;isolation:isolate;overflow-y:auto;animation:fadeInOverlay .25s ease-out}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}@keyframes slideUpContent{0%{opacity:0;transform:translateY(30px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.client-form-content{background:#fff;border-radius:16px;box-shadow:0 25px 80px #00000040;max-height:none;width:95%;max-width:1100px;overflow:visible;display:flex;flex-direction:column;position:relative;margin:2vh auto;animation:slideUpContent .25s ease-out}.client-form-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem;background:linear-gradient(135deg,#00a86b,#008f5b);color:#fff;border-radius:16px 16px 0 0;position:sticky;top:0;z-index:10}.client-form-header h2{margin:0;font-size:1.35rem;font-weight:700}.client-form-close{background:#fff3;border:none;width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;font-size:1.4rem;transition:all .15s ease;line-height:1}.client-form-close:hover{background:#ffffff59;transform:scale(1.05)}.client-form{padding:1.75rem 2rem 2rem;overflow-y:auto;max-height:calc(92vh - 80px);scroll-behavior:smooth}.form-section{margin-bottom:1.75rem;padding:1.5rem 1.75rem;background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000a}.form-section:hover{box-shadow:0 2px 8px #00a86b0f;border-color:#00a86b33}.form-section:last-of-type{margin-bottom:0}.form-section h3{margin:0 0 1.25rem;color:#00a86b;font-size:1rem;font-weight:700;display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem 1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem;min-width:0}.form-group.span-2{grid-column:span 2}.form-group.span-3{grid-column:span 3}@media(max-width:900px){.form-grid{grid-template-columns:repeat(2,1fr)}.form-group.span-3{grid-column:span 2}}@media(max-width:600px){.form-grid{grid-template-columns:1fr}.form-group.span-2,.form-group.span-3{grid-column:1}}.form-group label{font-weight:600;color:#4b5563;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.form-group input,.form-group select,.form-group textarea{padding:.65rem .9rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;font-family:inherit;transition:all .15s ease;background:#fff;color:#1f2937;width:100%;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#00a86b;box-shadow:0 0 0 3px #00a86b1f;background:#fff}.form-group input:disabled{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#6b7280;cursor:not-allowed;border-color:#d1d5db}.form-group input::placeholder{color:#9ca3af;font-weight:400}.form-group textarea{resize:vertical;min-height:90px;line-height:1.5}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M2 4.5l5 5 5-5' fill='none' stroke='%2300a86b' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;padding-right:2.5rem}.checkbox-label{display:flex;align-items:center;gap:.85rem;cursor:pointer;padding:.9rem 1.25rem;background:linear-gradient(135deg,#fff,#f0fdf4);border-radius:12px;border:2px solid #e5e7eb;transition:all .25s ease;-webkit-user-select:none;user-select:none}.checkbox-label:hover{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#00a86b;transform:translateY(-1px);box-shadow:0 4px 12px #00a86b1f}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#00a86b;flex-shrink:0}.checkbox-label span{font-weight:600;color:#374151;font-size:.95rem}.checkbox-label input:checked~span{color:#00a86b}.form-group small.muted{display:block;margin-top:.35rem;font-size:.8rem;color:#6b7280;font-style:italic;line-height:1.5}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem 2.25rem;background:linear-gradient(180deg,#f8faf9,#f0f2f1);border-top:1px solid rgba(0,0,0,.06);border-radius:0 0 20px 20px;position:sticky;bottom:0;margin:0 -2.25rem -2.25rem}.btn{padding:.8rem 2rem;border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .25s ease;letter-spacing:.01em}.btn-primary{background:linear-gradient(135deg,#00a86b,#00916a,#007a5a);color:#fff;box-shadow:0 4px 14px #00a86b59,0 2px 4px #00a86b33}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#00c17d,#00a86b,#008c5a);box-shadow:0 6px 20px #00a86b66,0 3px 6px #00a86b40;transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{background:linear-gradient(135deg,#fff,#f3f4f6);color:#4b5563;border:2px solid #d1d5db}.btn-secondary:hover{background:linear-gradient(135deg,#f9fafb,#e5e7eb);border-color:#9ca3af;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;border:none;box-shadow:0 2px 8px #dc262640}.btn-danger:hover{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #dc262659;transform:translateY(-1px)}.contracts-dropzone{border:2px dashed #d1d5db;border-radius:14px;padding:2rem;text-align:center;transition:all .25s ease;background:linear-gradient(135deg,#fafbfc,#f3f4f6);cursor:pointer;position:relative}.contracts-dropzone:hover,.contracts-dropzone.drag-over{border-color:#00a86b;background:linear-gradient(135deg,#ecfdf5,#d1fae5);transform:scale(1.01)}.contracts-dropzone.drag-over{border-style:solid;box-shadow:0 0 0 4px #00a86b26}.dropzone-icon{font-size:2.5rem;margin-bottom:.75rem;display:block}.dropzone-text{color:#4b5563;font-size:.95rem;margin:0}.dropzone-hint{color:#9ca3af;font-size:.8rem;margin-top:.5rem}.contracts-list{margin-top:1.25rem;display:flex;flex-direction:column;gap:.75rem}.contract-item{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#fff,#f8faf9);border:1px solid #e5e7eb;border-radius:10px;padding:.9rem 1.1rem;transition:all .2s ease}.contract-item:hover{border-color:#00a86b;box-shadow:0 2px 8px #00a86b1a}.contract-info{display:flex;align-items:center;gap:.85rem;flex:1;min-width:0}.contract-icon{font-size:1.5rem;flex-shrink:0}.contract-details{min-width:0}.contract-name{font-weight:600;color:#1f2937;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.contract-meta{font-size:.78rem;color:#6b7280;margin-top:.2rem}.contract-actions{display:flex;gap:.5rem}.contract-btn{padding:.45rem .75rem;border-radius:6px;border:none;cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s ease}.contract-btn-view{background:#e0f2fe;color:#0369a1}.contract-btn-view:hover{background:#bae6fd}.contract-btn-delete{background:#fee2e2;color:#b91c1c}.contract-btn-delete:hover{background:#fecaca}.uploading-indicator{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1.25rem;color:#00a86b;font-weight:600}.uploading-spinner{width:20px;height:20px;border:3px solid #e5e7eb;border-top-color:#00a86b;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:900px){.form-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.form-grid{grid-template-columns:1fr}.client-form{padding:1.25rem 1rem}.client-form-header{padding:1rem 1.25rem}.client-form-header h2{font-size:1.2rem}.form-section{padding:1.25rem}.form-actions{padding:1.25rem;margin:0 -1rem -1.25rem}.contracts-dropzone{padding:1.5rem}.contract-name{max-width:150px}}.address-modal-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.address-modal-content{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;width:90%;max-width:500px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:1}.address-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.address-modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.address-modal-close{background:none;border:none;font-size:28px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px}.address-modal-close:hover{background:#e5e7eb;color:#111827}.address-modal-body{padding:20px;overflow-y:auto}.address-preview{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:20px;margin-bottom:20px}.preview-label{font-size:.85rem;color:#6c757d;margin-bottom:10px;font-weight:600}.address-text{font-family:Courier New,monospace;font-size:1rem;line-height:1.6;margin:0;white-space:pre-wrap;color:#212529}.modal-actions{display:flex;gap:12px;justify-content:center}.btn-copy,.btn-print{padding:12px 24px;border:none;border-radius:6px;font-size:1rem;cursor:pointer;transition:all .2s;font-weight:500}.btn-copy{background:#0d6efd;color:#fff}.btn-copy:hover{background:#0b5ed7;transform:translateY(-1px)}.btn-print{background:#198754;color:#fff}.btn-print:hover{background:#157347;transform:translateY(-1px)}.print-only{display:none}@media print{@page{size:8.5in 11in;margin:0}.no-print,.modal-overlay,.modal-content,.address-label-modal,body>div:not(.print-only){display:none!important}html,body{width:8.5in;height:11in;margin:0;padding:0;overflow:hidden}.print-only{display:block!important;position:absolute!important;top:0!important;left:0!important;width:8.5in!important;height:11in!important;margin:0!important;padding:0!important;overflow:hidden!important}.envelope-layout{position:relative!important;width:8.5in!important;height:11in!important;page-break-inside:avoid!important;page-break-after:avoid!important;page-break-before:avoid!important}}.return-address{font-family:Arial,sans-serif;font-size:11pt;line-height:1.3;color:#333}.company-logo{font-weight:700;font-size:16pt;color:#2c5f2d;margin-bottom:2px}.company-name{font-weight:600;font-size:11pt;margin-bottom:4px}.company-hours{font-size:9pt;margin-top:2px}.company-email{font-size:9pt}.recipient-address{font-family:Arial,sans-serif;font-size:13pt;line-height:1.4;color:#000}.recipient-name{font-weight:600;font-size:13pt}.recipient-business{font-size:12pt}.page-center-text{font-family:Arial,sans-serif;font-size:11pt;color:#999;letter-spacing:.5px}.footer-disclaimer{font-family:Arial,sans-serif;font-size:9pt;font-weight:600;color:#000;line-height:1.3}@page{margin:0!important;padding:0!important;size:letter!important}*{page-break-inside:avoid!important;page-break-after:avoid!important;page-break-before:avoid!important}} .envelope-btn{background:#0d6efd;color:#fff;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:1.1rem;transition:all .2s;display:inline-flex;align-items:center;gap:6px}.envelope-btn:hover{background:#0b5ed7;transform:translateY(-1px)}.envelope-btn:active{transform:translateY(0)}.bulk-label-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.bulk-label-content{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;width:700px;max-width:90vw;height:80vh;max-height:800px;display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:1}.bulk-label-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;flex-shrink:0}.bulk-label-header h2{margin:0;font-size:1.25rem;font-weight:600}.bulk-label-close{background:#fff3;border:none;font-size:24px;line-height:1;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.bulk-label-close:hover{background:#ffffff4d}.bulk-label-body{display:flex;flex-direction:column;gap:1rem;flex:1;overflow:hidden;padding:1rem}.bulk-label-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e5e7eb;flex-shrink:0}.selection-controls{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f5f5f5;border-radius:6px;flex-shrink:0}.left-controls{display:flex;align-items:center;gap:.75rem}.use-last-selection{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.95rem;margin:0}.use-last-selection input[type=checkbox]{cursor:pointer;width:18px;height:18px}.selection-count{font-weight:600;color:#2563eb;font-size:.95rem}.btn-select-all,.btn-clear-all{padding:.4rem .75rem;border:none;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-select-all{background:#2563eb;color:#fff}.btn-select-all:hover{background:#1d4ed8}.btn-clear-all{background:#e5e7eb;color:#374151}.btn-clear-all:hover{background:#d1d5db}.client-list{flex:1;overflow-y:auto;border:1px solid #e5e7eb;border-radius:6px;padding:.5rem;background:#fff}.list-item{margin-bottom:.5rem}.group-item{border:1px solid #d1d5db;border-radius:6px;background:#fafafa;padding:.5rem}.group-header{display:flex;justify-content:space-between;align-items:center}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.25rem;margin:0;flex:1}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px;flex-shrink:0}.group-name{font-weight:600;font-size:1rem;color:#1f2937}.expand-btn{background:none;border:none;cursor:pointer;padding:.25rem .5rem;color:#6b7280;font-size:1rem;transition:color .2s;flex-shrink:0}.expand-btn:hover{color:#1f2937}.arrow{display:inline-block;transition:transform .2s}.arrow.expanded{transform:rotate(180deg)}.group-clients{margin-top:.5rem;margin-left:1.5rem;padding-left:1rem;border-left:2px solid #e5e7eb}.client-label{padding:.35rem .25rem;border-radius:4px;transition:background .15s}.client-label:hover{background:#f3f4f6}.client-name{font-size:.9rem;color:#374151}.client-item{padding:.35rem .5rem;border-radius:4px;transition:background .15s}.client-item:hover{background:#f9fafb}.bulk-label-actions .btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.bulk-label-actions .btn-primary{background:#2563eb;color:#fff}.bulk-label-actions .btn-primary:hover:not(:disabled){background:#1d4ed8}.bulk-label-actions .btn-primary:disabled{background:#93c5fd;cursor:not-allowed;opacity:.6}.bulk-label-actions .btn-secondary{background:#f3f4f6;color:#374151}.bulk-label-actions .btn-secondary:hover{background:#e5e7eb}.client-list::-webkit-scrollbar{width:8px}.client-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.client-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.client-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.quick-label-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.quick-label-modal{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;width:90%;max-width:500px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.quick-label-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.quick-label-header h2{margin:0;font-size:1.25rem;font-weight:600}.quick-label-close{background:#fff3;border:none;font-size:24px;line-height:1;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px}.quick-label-close:hover{background:#ffffff4d}.quick-label-body{padding:20px;overflow-y:auto}.quick-label-form{display:flex;flex-direction:column;gap:16px}.quick-label-form .form-group{display:flex;flex-direction:column;gap:6px}.quick-label-form label{font-size:.85rem;font-weight:600;color:#374151}.quick-label-form input{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.quick-label-form input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.quick-label-form input::placeholder{color:#9ca3af}.quick-label-preview{margin-top:20px;padding:16px;background:#f3f4f6;border-radius:8px;border:1px solid #e5e7eb}.quick-label-preview .preview-label{font-size:.8rem;font-weight:600;color:#6b7280;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.quick-label-preview .address-text{font-family:Courier New,monospace;font-size:.95rem;line-height:1.6;margin:0;white-space:pre-wrap;color:#111827}.quick-label-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.quick-label-actions button{padding:10px 16px;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;flex:1;justify-content:center;min-width:100px}.quick-label-actions button:disabled{opacity:.5;cursor:not-allowed}.quick-label-actions .btn-secondary{background:#e5e7eb;color:#374151}.quick-label-actions .btn-secondary:hover:not(:disabled){background:#d1d5db}.quick-label-actions .btn-copy{background:#3b82f6;color:#fff}.quick-label-actions .btn-copy:hover:not(:disabled){background:#2563eb}.quick-label-actions .btn-print{background:#10b981;color:#fff}.quick-label-actions .btn-print:hover:not(:disabled){background:#059669}.quick-label-actions .btn-print-next{background:#8b5cf6;color:#fff}.quick-label-actions .btn-print-next:hover:not(:disabled){background:#7c3aed}.groups-modal-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.groups-modal-content{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;width:900px;max-width:90vw;height:85vh;max-height:900px;display:flex;flex-direction:column;overflow:hidden}.groups-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.groups-modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.groups-modal-close{background:none;border:none;font-size:28px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px}.groups-modal-close:hover{background:#e5e7eb;color:#111827}.groups-modal-body{flex:1;overflow-y:auto;padding:1.5rem}.groups-modal-footer{padding:16px 20px;border-top:1px solid #e5e7eb;background:#f9fafb;display:flex;justify-content:flex-end;gap:10px}.groups-manager-modal{width:900px;max-width:90vw;height:85vh;max-height:900px;display:flex;flex-direction:column}.groups-manager-modal .modal-body{flex:1;overflow-y:auto;padding:1.5rem}.loading-state,.empty-state{text-align:center;padding:3rem;color:#6b7280}.groups-list{display:flex;flex-direction:column;gap:1.5rem}.group-card{border:1px solid #e5e7eb;border-radius:8px;background:#fff;overflow:hidden}.group-view{padding:1.5rem}.group-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.group-header h3{margin:0 0 .25rem;font-size:1.25rem;color:#1f2937}.group-id{display:inline-block;font-size:.85rem;color:#6b7280;background:#f3f4f6;padding:.25rem .5rem;border-radius:4px;margin-right:.5rem}.client-count{display:inline-block;font-size:.85rem;color:#2563eb;background:#dbeafe;padding:.25rem .5rem;border-radius:4px;font-weight:500}.group-address{color:#374151;line-height:1.5;padding:1rem;background:#f9fafb;border-radius:6px}.group-address div{margin:.15rem 0}.group-details{padding:1rem;background:#f9fafb;border-radius:6px}.group-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e5e7eb}.meta-item{font-size:.85rem;color:#64748b}.meta-item strong{color:#00a86b}.group-edit-form{padding:1.5rem;background:#fafafa}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.form-header h3{margin:0;font-size:1.25rem;color:#1f2937}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:500;color:#374151}.form-group input{padding:.625rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:border-color .2s}.form-group input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.cascade-notice{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:8px;color:#92400e;font-size:.85rem;font-weight:500;margin-top:1rem}.cascade-notice i{color:#f59e0b}.group-clients-section{margin-top:1.25rem;padding-top:1rem;border-top:1px solid #e5e7eb}.group-clients-section h4{margin:0 0 .75rem;font-size:.95rem;font-weight:600;color:#374151}.group-clients-list{max-height:200px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:6px;background:#f9fafb}.group-client-row{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;border-bottom:1px solid #e5e7eb}.group-client-row:last-child{border-bottom:none}.group-client-code{font-weight:600;color:#1f2937;min-width:80px}.group-client-name{flex:1;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-danger{background:#dc2626;color:#fff;padding:.25rem .5rem;font-size:.75rem}.btn-danger:hover{background:#b91c1c}.btn-small{padding:.25rem .5rem;font-size:.75rem}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e5e7eb}.btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:#2563eb;color:#fff}.btn-secondary:hover{background:#e5e7eb}.modal-footer{padding:1rem 1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.groups-manager-modal .modal-body::-webkit-scrollbar{width:8px}.groups-manager-modal .modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.groups-manager-modal .modal-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.groups-manager-modal .modal-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.contract-modal-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.contract-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:calc(100vh - 80px);width:95%;max-width:700px;overflow:hidden;display:flex;flex-direction:column}.contract-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e0e0e0;background:linear-gradient(135deg,#00a86b,#008c5a);color:#fff}.contract-modal-header h2{margin:0;font-size:1.5rem;font-weight:600}.contract-modal-close{background:#fff3;border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;font-size:1.5rem;transition:all .2s}.contract-modal-close:hover{background:#ffffff4d}.contract-modal-body{padding:0;overflow-y:auto;max-height:calc(80vh - 160px)}.contract-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #e5e7eb;background:#f9fafb}.contract-generator{max-width:700px}.contract-preview{padding:20px}.contract-preview h3{margin:0 0 15px;color:#1f2937;font-size:18px}.details-table{width:100%;border-collapse:collapse;margin-bottom:20px}.details-table td{padding:10px;border-bottom:1px solid #e5e7eb}.details-table td:first-child{width:180px;color:#6b7280}.details-table td:last-child{color:#1f2937;font-weight:500}.contract-note{background:#f0f9ff;border:1px solid #bfdbfe;border-radius:8px;padding:15px;margin-top:20px}.contract-note p{margin:0 0 10px;color:#1e40af;font-weight:600}.contract-note ul{margin:0;padding-left:20px;color:#1f2937}.contract-note li{margin:5px 0}.contract-modal-footer .btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.contract-modal-footer .btn-primary{background:linear-gradient(135deg,#00a86b,#008c5a);color:#fff}.contract-modal-footer .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#008c5a,#007349);box-shadow:0 4px 12px #00a86b4d}.contract-modal-footer .btn-primary:disabled{opacity:.6;cursor:not-allowed}.contract-modal-footer .btn-secondary{background:#f5f5f5;color:#666}.contract-modal-footer .btn-secondary:hover{background:#e0e0e0}.ach-section-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:achFadeIn .2s ease-out}@keyframes achFadeIn{0%{opacity:0}to{opacity:1}}.ach-section-content{background:#fff;border-radius:16px;width:100%;max-width:600px;box-shadow:0 25px 80px #00000080;animation:achSlideUp .3s ease-out;overflow:hidden;max-height:90vh;display:flex;flex-direction:column}@keyframes achSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.ach-section-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#1e5631,#2d7a45);color:#fff}.ach-section-header.denied{background:linear-gradient(135deg,#c0392b,#922b21)}.ach-section-header h2{margin:0;font-size:1.25rem;font-weight:600}.ach-section-close{background:#ffffff26;border:none;color:#fff;font-size:1.5rem;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}.ach-section-close:hover{background:#ffffff40;transform:scale(1.1)}.ach-denied-body{padding:2rem;text-align:center}.denied-icon{font-size:4rem;margin-bottom:1rem}.ach-denied-body h3{margin:0 0 .5rem;color:#c0392b}.ach-denied-body p{color:#666;margin-bottom:1.5rem}.btn-close-denied{padding:.75rem 2rem;background:#e74c3c;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-close-denied:hover{background:#c0392b}.ach-pin-body{padding:2rem;text-align:center}.pin-lock-icon{font-size:4rem;margin-bottom:1rem}.ach-pin-body h3{margin:0 0 .5rem;color:#2c3e50}.ach-pin-body p{color:#666;margin-bottom:1.5rem;line-height:1.5}.pin-input{width:150px;height:60px;font-size:2rem;text-align:center;letter-spacing:.5rem;border:2px solid #ddd;border-radius:12px;outline:none;transition:all .2s}.pin-input:focus{border-color:#1e5631;box-shadow:0 0 0 3px #1e563126}.pin-error{color:#e74c3c;font-size:.9rem;font-weight:500}.btn-unlock{padding:.75rem 2rem;background:linear-gradient(135deg,#1e5631,#2d7a45);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-unlock:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #1e563166}.ach-client-info{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background:#f8f9fa;border-bottom:1px solid #e9ecef}.client-badge{background:#1e5631;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.client-name{font-weight:600;color:#2c3e50}.ach-form-body{padding:1.5rem;overflow-y:auto;flex:1}.enrollment-toggle{margin-bottom:1.5rem;padding:1rem;background:#f0f7ff;border-radius:10px;border:1px solid #d0e3ff}.toggle-label{display:flex;align-items:center;gap:.75rem;cursor:pointer}.toggle-label input{display:none}.toggle-switch{width:50px;height:26px;background:#ccc;border-radius:13px;position:relative;transition:all .3s}.toggle-switch:after{content:"";position:absolute;width:22px;height:22px;background:#fff;border-radius:50%;top:2px;left:2px;transition:all .3s;box-shadow:0 2px 4px #0003}.toggle-label input:checked+.toggle-switch{background:#27ae60}.toggle-label input:checked+.toggle-switch:after{left:26px}.toggle-text{font-weight:600;color:#2c3e50}.ach-form-section{margin-bottom:1.5rem}.ach-form-section h3{font-size:1rem;color:#2c3e50;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #e9ecef}.ach-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.ach-field{display:flex;flex-direction:column;gap:.25rem}.ach-field.full{grid-column:1 / -1}.ach-field label{font-size:.8rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.3px}.ach-field input,.ach-field select{padding:.6rem .75rem;border:1px solid #ddd;border-radius:8px;font-size:.95rem;transition:all .2s}.ach-field input:focus,.ach-field select:focus{border-color:#1e5631;box-shadow:0 0 0 3px #1e56311a;outline:none}.ach-field small{font-size:.75rem;color:#888}.secure-input-wrapper{display:flex;align-items:center;gap:.5rem}.secure-input-wrapper input{flex:1;font-family:monospace}.toggle-visibility{background:#f0f0f0;border:1px solid #ddd;border-radius:6px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:1rem}.toggle-visibility:hover{background:#e0e0e0}.security-notice{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#e8f5e9;border-radius:8px;border:1px solid #c8e6c9;margin-top:1rem}.notice-icon{font-size:1.25rem}.notice-text{font-size:.8rem;color:#2e7d32;line-height:1.4}.ach-form-actions{display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem;background:#f8f9fa;border-top:1px solid #e9ecef}.btn-save{padding:.75rem 1.75rem;border:none;background:linear-gradient(135deg,#1e5631,#2d7a45);color:#fff;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #1e563166}.btn-save:disabled{opacity:.7;cursor:not-allowed}@media(max-width:600px){.ach-form-grid{grid-template-columns:1fr}.ach-field.full{grid-column:1}}.ach-dropzone{border:2px dashed #b0bec5;border-radius:10px;padding:28px 20px;text-align:center;cursor:pointer;transition:all .25s ease;background:#fafbfc;margin-bottom:10px}.ach-dropzone:hover{border-color:#2d7a45;background:#f0f7f2}.ach-dropzone.drag-over{border-color:#1e5631;background:#e3f2e7;box-shadow:0 0 0 3px #1e563126}.ach-dropzone.uploading{opacity:.6;pointer-events:none}.dropzone-inner{display:flex;flex-direction:column;align-items:center;gap:4px}.dropzone-icon{font-size:2rem}.dropzone-icon.spin{animation:achSpin 1s linear infinite}@keyframes achSpin{to{transform:rotate(360deg)}}.dropzone-text{font-size:.9rem;font-weight:600;color:#333}.dropzone-subtext{font-size:.75rem;color:#888}.ach-docs-list{display:flex;flex-direction:column;gap:4px}.ach-doc-row{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;background:#f8f9fa;border:1px solid #e9ecef;transition:background .15s}.ach-doc-row:hover{background:#edf4f0}.ach-doc-name{flex:1;display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font-size:.85rem;font-weight:500;color:#1565c0;text-align:left;padding:0;min-width:0}.ach-doc-name:hover{text-decoration:underline}.doc-icon{font-size:1.1rem;flex-shrink:0}.doc-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-meta{font-size:.72rem;color:#888;white-space:nowrap;flex-shrink:0}.doc-delete{background:none;border:none;cursor:pointer;font-size:1rem;padding:2px;opacity:.5;transition:opacity .15s;flex-shrink:0}.doc-delete:hover{opacity:1}.ach-doc-viewer-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:20000;animation:achFadeIn .15s ease-out}.ach-doc-viewer{width:90vw;height:90vh;background:#fff;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080}.ach-doc-viewer-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:linear-gradient(135deg,#1e5631,#2d7a45);color:#fff;gap:12px}.viewer-title{font-weight:600;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.viewer-actions{display:flex;gap:8px;flex-shrink:0}.viewer-btn{padding:5px 14px;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;border:none;transition:all .15s;text-decoration:none;display:inline-flex;align-items:center;gap:4px}.viewer-btn.print{background:#fff3;color:#fff}.viewer-btn.print:hover{background:#ffffff59}.viewer-btn.download{background:#fff3;color:#fff}.viewer-btn.download:hover{background:#ffffff59}.viewer-btn.close{background:#ffffff26;color:#fff;font-size:1.3rem;padding:2px 10px;line-height:1}.viewer-btn.close:hover{background:#f006}.ach-doc-viewer-body{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;background:#eee}.ach-form-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .2s ease-out}.ach-form-modal-content{background:#fff;border-radius:16px;width:100%;max-width:500px;box-shadow:0 25px 80px #0006;animation:slideUp .3s ease-out;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.ach-form-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#2c5aa0,#1e3a6e);color:#fff}.ach-form-modal-header h2{margin:0;font-size:1.25rem;font-weight:600}.ach-form-modal-close{background:#ffffff26;border:none;color:#fff;font-size:1.5rem;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}.ach-form-modal-close:hover{background:#ffffff40;transform:scale(1.1)}.ach-form-modal-body{padding:1.5rem}.preview-info{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#f0f7ff;border-radius:12px;margin-bottom:1.25rem}.preview-icon{font-size:2.5rem;flex-shrink:0}.preview-text h3{margin:0 0 .5rem;font-size:1rem;color:#2c3e50}.preview-text p{margin:0;font-size:.875rem;color:#666;line-height:1.5}.form-features{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.5rem}.feature{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;background:#f8f9fa;border-radius:8px;font-size:.8rem;color:#444}.feature-icon{font-size:1rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.btn-cancel{padding:.75rem 1.5rem;border:1px solid #ddd;background:#fff;color:#666;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#f5f5f5;border-color:#ccc}.btn-print{padding:.75rem 1.75rem;border:none;background:linear-gradient(135deg,#2c5aa0,#1e3a6e);color:#fff;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-print:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #2c5aa066}.btn-print:disabled{opacity:.7;cursor:not-allowed}.ach-batch-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ach-batch-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.ach-batch-modal.access-denied,.ach-batch-modal.pin-screen{width:400px}.ach-batch-modal.main-modal{width:900px;max-width:95vw}.ach-batch-modal.preview-modal{width:800px;max-width:95vw;max-height:85vh}.ach-batch-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff}.ach-batch-header.denied{background:linear-gradient(135deg,#d32f2f,#b71c1c)}.ach-batch-header h2{margin:0;font-size:1.3rem;font-weight:600}.close-btn{background:#fff3;border:none;color:#fff;width:36px;height:36px;border-radius:50%;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.pin-body,.denied-body{padding:2rem;text-align:center}.pin-lock-icon,.denied-icon{font-size:4rem;margin-bottom:1rem}.pin-body h3,.denied-body h3{margin:0 0 .5rem;color:#1a1a2e}.pin-body p,.denied-body p{color:#666;margin-bottom:1.5rem}.pin-form{display:flex;flex-direction:column;align-items:center;gap:1rem}.pin-input{width:140px;height:50px;font-size:2rem;text-align:center;letter-spacing:.5rem;border:2px solid #ddd;border-radius:8px;outline:none}.pin-input:focus{border-color:#2e7d32}.pin-error{color:#d32f2f;font-size:.9rem}.btn-unlock,.btn-close{padding:.75rem 2rem;font-size:1rem;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.btn-unlock{background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff}.btn-unlock:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #2e7d324d}.btn-unlock:disabled{opacity:.5;cursor:not-allowed}.btn-close{background:#e0e0e0;color:#333}.btn-close:hover{background:#ccc}.batch-body{padding:1.5rem;overflow-y:auto;flex:1}.loading-state,.empty-state{text-align:center;padding:3rem 1rem}.spinner{width:40px;height:40px;border:4px solid #e0e0e0;border-top-color:#2e7d32;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem;color:#1a1a2e}.empty-state p{color:#666;margin:.5rem 0}.batch-settings{display:flex;gap:1.5rem;padding:1rem;background:#f5f5f5;border-radius:8px;margin-bottom:1.5rem}.setting-row{display:flex;align-items:center;gap:.75rem}.setting-row label{font-weight:600;color:#555;white-space:nowrap}.setting-row input{padding:.5rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem}.setting-row input:focus{outline:none;border-color:#2e7d32}.entries-list{border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;max-height:400px;overflow-y:auto}.entries-header{display:grid;grid-template-columns:2fr 1.5fr 1fr 120px;gap:1rem;padding:.75rem 1rem;background:#2e7d32;color:#fff;font-weight:600;font-size:.9rem;position:sticky;top:0}.entry-row{display:grid;grid-template-columns:2fr 1.5fr 1fr 120px;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid #f0f0f0;align-items:center;transition:background .2s}.entry-row:hover{background:#f9f9f9}.entry-row.has-amount{background:#e8f5e9}.entry-row.has-amount:hover{background:#c8e6c9}.col-client strong{display:block;color:#1a1a2e}.col-client .client-code{font-size:.8rem;color:#888;font-family:monospace}.col-bank,.col-routing{color:#666;font-size:.9rem}.col-amount{display:flex;align-items:center;gap:4px}.dollar-sign{color:#2e7d32;font-weight:600}.amount-input{width:90px;padding:.4rem .5rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;text-align:right}.amount-input:focus{outline:none;border-color:#2e7d32;background:#fff}.batch-summary{display:flex;justify-content:flex-end;gap:2rem;padding:1rem;margin-top:1rem;background:#f5f5f5;border-radius:8px}.summary-row{display:flex;gap:.5rem;align-items:center}.summary-row span{color:#666}.summary-row strong{color:#1a1a2e;font-size:1.1rem}.summary-row.total strong{color:#2e7d32;font-size:1.3rem}.batch-actions{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e0e0e0}.format-buttons{display:flex;gap:1rem}.btn-generate{flex:1;padding:1rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.btn-generate.nacha{background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff}.btn-generate.nacha:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #2e7d324d}.btn-generate.csv{background:linear-gradient(135deg,#1976d2,#0d47a1);color:#fff}.btn-generate.csv:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #1976d24d}.btn-generate:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.preview-buttons{display:flex;gap:1rem;justify-content:center}.btn-preview{padding:.5rem 1rem;font-size:.9rem;background:transparent;border:1px solid #ccc;border-radius:6px;color:#666;cursor:pointer;transition:all .2s}.btn-preview:hover:not(:disabled){background:#f5f5f5;border-color:#999}.btn-preview:disabled{opacity:.5;cursor:not-allowed}.preview-body{padding:1.5rem;display:flex;flex-direction:column;gap:1rem;max-height:calc(85vh - 80px)}.file-preview{background:#1a1a2e;color:#4caf50;padding:1rem;border-radius:8px;font-family:Courier New,monospace;font-size:.75rem;overflow:auto;max-height:400px;white-space:pre;line-height:1.4}.preview-actions{display:flex;justify-content:space-between}.btn-secondary{padding:.75rem 1.5rem;background:#e0e0e0;border:none;border-radius:6px;cursor:pointer;font-size:1rem}.btn-secondary:hover{background:#ccc}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #2e7d324d}.clients-container{display:flex;flex-direction:column;width:100%;flex:1;min-height:0;box-sizing:border-box;background:#f5f7fa;overflow:hidden}.page-header-sticky{flex-shrink:0;background:#1e293b;padding:.75rem 1.5rem;margin:0;border-bottom:1px solid #334155}.page-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.header-left h1{margin:0;font-size:1.25rem;font-weight:600;color:#fff;display:flex;align-items:center;gap:.5rem}.header-left h1 i{color:#00d68f}.header-left .subtitle{margin:0;font-size:.8rem;color:#fff9}.header-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.header-actions .btn{padding:.5rem .9rem;font-size:.82rem;border-radius:6px;font-weight:600;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;transition:all .15s ease;white-space:nowrap}.header-actions .btn-primary{background:linear-gradient(135deg,#00a86b,#008f5b);color:#fff;border:none;box-shadow:0 2px 6px #00a86b4d}.header-actions .btn-primary:hover{background:linear-gradient(135deg,#00c17d,#00a86b);transform:translateY(-1px);box-shadow:0 4px 12px #00a86b66}.header-actions .btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.header-actions .btn-secondary:hover{background:#fff3;border-color:#ffffff59}.header-actions .btn-success{background:linear-gradient(135deg,#059669,#047857);color:#fff;border:none}.header-actions .btn-success:hover{background:linear-gradient(135deg,#10b981,#059669)}.filter-bar{display:flex;gap:1rem;padding:.75rem 1.5rem;background:#f8fafc;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;flex-shrink:0;align-items:center}.view-toggle{display:flex;gap:2px;margin-left:auto}.view-btn{background:#fff;border:1px solid #d1d5db;padding:.5rem .75rem;cursor:pointer;color:#6b7280;transition:all .15s ease}.view-btn:first-child{border-radius:6px 0 0 6px}.view-btn:last-child{border-radius:0 6px 6px 0}.view-btn:not(:first-child){border-left:none}.view-btn:hover{background:#f3f4f6;color:#00a86b}.view-btn.active{background:#00a86b;border-color:#00a86b;color:#fff}.search-box{flex:1;min-width:280px;position:relative}.search-box i{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af}.search-box input{width:100%;padding:.65rem 1rem .65rem 2.5rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;box-sizing:border-box;background:#f9fafb}.search-box input:focus{outline:none;border-color:#00a86b;box-shadow:0 0 0 3px #00a86b1a;background:#fff}.status-filter{display:flex;align-items:center;gap:.5rem}.status-filter label{font-weight:500;color:#4b5563;font-size:.9rem}.status-filter select{padding:.65rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;background:#f9fafb;cursor:pointer}.status-filter select:focus{outline:none;border-color:#00a86b}.page-content-scroll{flex:1;overflow-y:auto;padding:1rem 1.5rem;background:#f5f7fa}.clients-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:50vh;gap:1rem}.spinner{width:50px;height:50px;border:4px solid #e0e0e0;border-top:4px solid #00a86b;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem}.client-card{display:flex;flex-direction:column;min-height:260px;background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;transition:all .2s ease;overflow:hidden;border:1px solid #e5e7eb;cursor:pointer}.client-card:hover{box-shadow:0 4px 16px #00a86b1f;transform:translateY(-2px);border-color:#00a86b}.client-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.25rem;border-bottom:1px solid #f0f0f0;gap:.5rem}.client-info{flex:1;min-width:0}.client-info h3{margin:0 0 .35rem;font-size:1.05rem;font-weight:600;color:#1f2937;line-height:1.3}.client-name2{font-size:.88rem;color:#6b7280;margin-bottom:.4rem;font-style:italic}.client-code{display:inline-block;padding:.2rem .5rem;background:linear-gradient(135deg,#f0f4f3,#e8ebe9);border-radius:4px;font-size:.78rem;font-weight:600;color:#00a86b;font-family:monospace}.needs-contract-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:4px;font-size:.68rem;font-weight:600;color:#b45309;text-transform:uppercase;white-space:nowrap}.client-address-display{padding:.6rem 1.25rem;background:linear-gradient(135deg,#f8faf9,#f0f3f1);border-left:3px solid #00a86b;font-size:.85rem;line-height:1.4;color:#4b5563}.client-address-display div{margin:0;padding:.05rem 0}.client-actions{display:flex;gap:.35rem;flex-shrink:0}.btn-icon{background:linear-gradient(135deg,#f8f9fa,#f0f1f3);border:1px solid #e5e7eb;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .15s ease;font-size:.85rem}.btn-icon:hover{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#00a86b;border-color:#00a86b}.btn-icon.btn-danger:hover{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#dc2626;border-color:#dc2626}.client-card-body{flex:1;padding:.75rem 1.25rem;display:flex;flex-direction:column;gap:.4rem}.client-detail{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#4b5563}.client-detail i{width:14px;color:#9ca3af;font-size:.8rem}.client-detail a{color:#00a86b;text-decoration:none}.client-detail a:hover{text-decoration:underline}.client-card-footer{margin-top:auto;padding:.65rem 1rem;background:#f1f5f9;display:flex;justify-content:space-between;align-items:center;gap:.5rem;border-top:1px solid #e5e7eb}.commission-rate{display:flex;flex-direction:column;gap:.1rem}.commission-rate strong{font-size:1.1rem;font-weight:700;color:#00a86b}.commission-rate .label{font-size:.65rem;color:#9ca3af;text-transform:uppercase;font-weight:600;letter-spacing:.04em}.status-badge{padding:.35rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;background:#e8f5e9;color:#2e7d32}.empty-state{grid-column:1 / -1;text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.empty-state .btn{margin-top:1rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary:hover{background:linear-gradient(135deg,#008c5a,#007349);box-shadow:0 4px 12px #00a86b4d}.btn-secondary{background:#6c757d;color:#fff}.header-actions{display:flex;gap:.75rem}.import-dialog{max-width:500px;width:90%}.import-instructions{text-align:center;color:#666;margin-bottom:2rem;line-height:1.6}.import-actions{display:flex;flex-direction:column;gap:1rem;align-items:center}.btn-large{padding:1rem 2rem;font-size:1.05rem;width:100%;max-width:350px;justify-content:center}.divider{color:#999;font-weight:500;padding:.5rem 0;position:relative;width:100%;text-align:center}.divider:before,.divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:#ddd}.divider:before{left:0}.divider:after{right:0}.file-upload-btn{position:relative;overflow:hidden}.file-upload-btn input[type=file]{display:none}.file-upload-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.clients-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column}.search-box{width:100%}}.settings-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:settings-modal-fadeIn .2s ease-out}@keyframes settings-modal-fadeIn{0%{opacity:0}to{opacity:1}}.settings-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;animation:settings-modal-slideIn .2s ease-out}@keyframes settings-modal-slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.settings-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e0e0e0;background:#f8f9fa;border-radius:12px 12px 0 0}.settings-modal-header h2{margin:0;color:#2c3e50;font-size:1.3rem;display:flex;align-items:center;gap:.5rem}.settings-modal-header h2 i{color:#3b82f6}.settings-modal-close{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:0;line-height:1;transition:color .2s}.settings-modal-close:hover{color:#e74c3c}.settings-modal-body{padding:2rem}.import-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:import-modal-fadeIn .2s ease-out}@keyframes import-modal-fadeIn{0%{opacity:0}to{opacity:1}}.import-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;animation:import-modal-slideIn .2s ease-out}@keyframes import-modal-slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.import-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e0e0e0;background:#f8f9fa;border-radius:12px 12px 0 0}.import-modal-header h2{margin:0;color:#2c3e50;font-size:1.2rem;display:flex;align-items:center;gap:.5rem}.import-modal-header h2 i{color:#10b981}.import-modal-close{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:0;line-height:1;transition:color .2s}.import-modal-close:hover{color:#e74c3c}.import-modal-body{padding:2rem}.btn-icon.ach-enrolled{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border:2px solid #4caf50;position:relative}.btn-icon.ach-enrolled:after{content:"✓";position:absolute;bottom:-2px;right:-2px;background:#4caf50;color:#fff;font-size:.6rem;width:12px;height:12px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700}.ach-select-checkbox{width:18px;height:18px;margin-right:12px;cursor:pointer;accent-color:#2e7d32;flex-shrink:0}.client-card.selected-for-ach{border:2px solid #2e7d32;background:#f1f8e9;box-shadow:0 0 0 3px #2e7d3226}.client-card.selected-for-ach .client-card-header{background:linear-gradient(135deg,#e8f5e9,#c8e6c9)}.btn-success{background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff;border:none}.btn-success:hover{background:linear-gradient(135deg,#388e3c,#2e7d32);transform:translateY(-1px);box-shadow:0 4px 12px #2e7d324d}.clients-list{background:#fff;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb}.clients-list-header{display:grid;grid-template-columns:100px 1fr 180px 100px 80px 120px 100px;gap:1rem;padding:.75rem 1rem;background:#f1f5f9;font-weight:600;font-size:.75rem;text-transform:uppercase;color:#64748b;border-bottom:1px solid #e5e7eb}.clients-list-row{display:grid;grid-template-columns:100px 1fr 180px 100px 80px 120px 100px;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;align-items:center;font-size:.85rem;transition:background .15s}.clients-list-row:hover{background:#f8fafc}.clients-list-row:last-child{border-bottom:none}.list-client-name{font-weight:600;color:#1f2937}.list-client-code{font-family:monospace;font-size:.8rem;color:#00a86b;background:#f0fdf4;padding:.2rem .4rem;border-radius:4px}.list-actions{display:flex;gap:.25rem}.list-actions .btn-icon{width:26px;height:26px;font-size:.75rem}.clients-groups{display:flex;flex-direction:column;gap:1rem}.client-group-card{background:#fff;border-radius:10px;border:1px solid #e5e7eb;overflow:hidden}.group-header{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);cursor:pointer;transition:background .15s}.group-header:hover{background:linear-gradient(135deg,#e2e8f0,#cbd5e1)}.group-header-left{display:flex;align-items:center;gap:.75rem}.group-header-left i{color:#64748b;transition:transform .2s}.group-header.expanded i.fa-chevron-right{transform:rotate(90deg)}.group-name{font-weight:600;color:#1e293b;font-size:.95rem}.group-count{background:#00a86b;color:#fff;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:600}.group-clients{display:none;padding:1rem;background:#fafbfc;border-top:1px solid #e5e7eb}.group-clients.expanded{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.ungrouped-section{margin-top:1.5rem}.ungrouped-header{font-size:.85rem;font-weight:600;color:#64748b;margin-bottom:.75rem;padding-left:.5rem;border-left:3px solid #cbd5e1}.clients-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;padding:1rem}.client-group-deck{position:relative}.deck-wrapper{position:relative;cursor:pointer;padding-bottom:8px}.deck-shadow{position:absolute;top:calc(var(--shadow-index) * 4px);left:calc(var(--shadow-index) * 2px);right:calc(var(--shadow-index) * -2px);height:100%;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 3px #0000000f;z-index:calc(1 + var(--shadow-index))}.deck-main-card{position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 4px 12px #00000014;z-index:10;transition:all .2s ease;overflow:hidden}.deck-wrapper:hover .deck-main-card{border-color:#00a86b;box-shadow:0 6px 20px #00a86b26;transform:translateY(-2px)}.deck-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#1e293b,#334155);color:#fff;min-height:56px}.deck-badge{background:#00a86b;color:#fff;font-size:.85rem;font-weight:700;padding:.3rem .6rem;border-radius:6px;min-width:2rem;text-align:center;flex-shrink:0}.deck-group-name{flex:1;margin:0;font-size:1.25rem;font-weight:800;color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.5),0 0 8px rgba(255,255,255,.3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:1!important;letter-spacing:.5px}.deck-chevron{opacity:.8;font-size:.9rem;color:#fff;flex-shrink:0}.deck-preview{padding:1rem 1.25rem;border-bottom:1px solid #f0f0f0}.deck-address{display:flex;flex-direction:column;gap:.15rem;font-size:.85rem;color:#64748b;margin-bottom:.75rem}.deck-stats{display:flex;gap:1rem}.deck-stat{font-size:.85rem;color:#64748b}.deck-stat strong{color:#00a86b}.deck-footer{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;background:#f8fafc}.btn-edit-group{display:flex;align-items:center;gap:.4rem;padding:.4rem .75rem;background:#00a86b;color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-edit-group:hover{background:#009060;transform:scale(1.02)}.deck-client-list{font-size:.75rem;color:#94a3b8;font-family:monospace}.deck-expanded-clients{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;margin-top:1rem;padding:1rem;background:#f5f7fa;border-radius:10px;border:1px dashed #cbd5e1}.client-group-deck.expanded .deck-wrapper{margin-bottom:.5rem}.ungrouped-divider{display:flex;align-items:center;gap:1rem;margin:1.5rem 1rem 1rem;color:#64748b;font-size:.85rem;font-weight:600}.ungrouped-divider:before,.ungrouped-divider:after{content:"";flex:1;height:1px;background:#cbd5e1}.invoice-form-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.invoice-form-content{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;width:95%;max-width:1100px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:1}.invoice-form-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#00a86b,#008c5a);color:#fff;flex-shrink:0}.invoice-form-header h2{margin:0;font-size:1.25rem;font-weight:600}.invoice-form-close{background:#fff3;border:none;font-size:24px;line-height:1;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.invoice-form-close:hover{background:#ffffff4d}.invoice-form-modal{width:95%;max-width:1100px;max-height:90vh}.invoice-form{padding:2rem;overflow-y:auto;max-height:calc(90vh - 80px)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.quick-add-buttons{display:flex;gap:.5rem}.btn-small{padding:.5rem 1rem;font-size:.85rem}.line-items-table{overflow-x:auto;margin-bottom:1.5rem}.line-items-table table{width:100%;border-collapse:collapse;background:#fff}.line-items-table th{background:#f9fafb;padding:.75rem;text-align:left;font-weight:600;color:#666;font-size:.85rem;border-bottom:2px solid #e0e0e0}.line-items-table td{padding:.75rem;border-bottom:1px solid #f0f0f0}.line-items-table input,.line-items-table select{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.line-items-table input:focus,.line-items-table select:focus{outline:none;border-color:#00a86b}.line-items-table .text-right input{text-align:right}.empty-message{padding:2rem!important;color:#999;font-style:italic}.invoice-totals{display:flex;flex-direction:column;align-items:flex-end;gap:.75rem;padding:1.5rem;background:#f9fafb;border-radius:8px;margin-top:1rem}.total-row{display:grid;grid-template-columns:150px 150px;gap:2rem;font-size:1rem}.total-row.grand-total{font-size:1.25rem;font-weight:700;color:#00a86b;padding-top:.75rem;border-top:2px solid #e0e0e0}.total-row span:last-child{text-align:right}@media(max-width:768px){.invoice-form{padding:1.5rem}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.quick-add-buttons{flex-wrap:wrap;width:100%}.quick-add-buttons .btn{flex:1;min-width:140px}.line-items-table{overflow-x:scroll}.line-items-table table{min-width:700px}.total-row{grid-template-columns:120px 120px;gap:1rem}}.invoice-preview-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.invoice-preview-content{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;width:95%;max-width:900px;max-height:95vh;display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:1}.invoice-preview-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#00a86b,#008c5a);color:#fff;flex-shrink:0;gap:1rem}.invoice-preview-header h2{margin:0;font-size:1.25rem;font-weight:600}.invoice-preview-close{background:#fff3;border:none;font-size:24px;line-height:1;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.invoice-preview-close:hover{background:#ffffff4d}.invoice-preview-modal{width:95%;max-width:900px;max-height:95vh}.invoice-preview-modal .modal-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.header-actions{display:flex;gap:.5rem;align-items:center}.preview-container{padding:2rem;overflow-y:auto;max-height:calc(95vh - 80px);background:#f5f7fa}.invoice-document{background:#fff;padding:3rem;max-width:800px;margin:0 auto;box-shadow:0 4px 12px #0000001a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.invoice-header{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding-bottom:2rem;border-bottom:3px solid #00a86b;margin-bottom:2rem}.company-branding{display:flex;flex-direction:column;gap:1rem}.company-logo{max-width:200px;max-height:80px;object-fit:contain;margin-bottom:.5rem}.company-info h1{margin:0 0 .5rem;color:#00a86b;font-size:1.5rem;font-weight:700;letter-spacing:.5px}.company-info p{margin:.2rem 0;color:#666;line-height:1.4;font-size:.9rem}.invoice-meta{text-align:right}.invoice-meta h2{margin:0 0 1rem;color:#1a1a1a;font-size:2rem;font-weight:700}.invoice-meta p{margin:.5rem 0;color:#333}.invoice-billing{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem;padding:1.5rem;background:#f9fafb;border-radius:8px}.bill-to h3,.billing-period h3{margin:0 0 .75rem;color:#00a86b;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.bill-to p,.billing-period p{margin:.25rem 0;color:#333;line-height:1.5}.invoice-table{width:100%;border-collapse:collapse;margin-bottom:2rem}.invoice-table thead{background:#f9fafb;border-bottom:2px solid #e0e0e0}.invoice-table th{padding:1rem;text-align:left;font-weight:600;color:#666;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.invoice-table td{padding:.75rem 1rem;border-bottom:1px solid #f0f0f0;color:#333}.invoice-table tbody tr:last-child td{border-bottom:2px solid #e0e0e0}.invoice-table tfoot td{padding:.75rem 1rem;border-bottom:none}.subtotal-row td,.tax-row td{color:#666;font-size:.95rem}.total-row td{color:#00a86b;font-size:1.1rem;font-weight:700;padding-top:1rem}.payment-row td{color:#666;font-size:.95rem}.balance-row td{color:#1a1a1a;font-size:1.1rem;font-weight:700;padding-top:.5rem;border-top:2px solid #e0e0e0}.payment-instructions{margin:2rem 0;padding:1.5rem;background:#f9fafb;border-left:4px solid #00a86b;border-radius:4px}.payment-instructions h3{margin:0 0 1rem;color:#00a86b;font-size:1rem}.payment-instructions p{margin:.5rem 0;color:#333;line-height:1.6}.due-notice{margin-top:1rem!important;padding-top:1rem;border-top:1px solid #e0e0e0;font-weight:500;color:#1a1a1a!important}.invoice-notes{margin-top:1.5rem;padding:1rem;background:#f9fafb;border-left:4px solid #4a90e2;border-radius:4px}.invoice-notes p{margin:.5rem 0}.invoice-footer{text-align:center;padding-top:2rem;border-top:2px solid #e0e0e0;margin-top:2rem}.invoice-footer p{margin:.5rem 0;color:#666}.footer-contact{font-size:.9rem;color:#00a86b!important;font-weight:500}.small-text{font-size:.85rem;color:#999!important}@media print{.preview-container{padding:0;background:#fff}.invoice-document{box-shadow:none;padding:2rem}}@media(max-width:768px){.invoice-document{padding:1.5rem}.invoice-header,.invoice-billing{grid-template-columns:1fr;gap:1.5rem}.invoice-meta{text-align:left}.header-actions{flex-wrap:wrap}.header-actions .btn{font-size:.85rem;padding:.6rem 1rem}}.payment-modal-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.payment-modal-content{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;width:600px;max-width:95%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:1}.payment-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex-shrink:0}.payment-modal-header h2{margin:0;font-size:1.25rem;font-weight:600}.payment-modal-close{background:#fff3;border:none;font-size:24px;line-height:1;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.payment-modal-close:hover{background:#ffffff4d}.payment-modal-body{padding:24px;overflow-y:auto;flex:1}.payment-modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f8f9fa;flex-shrink:0}.payment-modal{width:600px;max-height:90vh}.invoice-summary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.invoice-summary h3{margin:0 0 1rem;font-size:1.3rem;font-weight:600}.summary-grid{display:grid;gap:1rem}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#ffffff1a;border-radius:6px}.summary-item.balance{background:#fff3;border:2px solid rgba(255,255,255,.3);font-weight:600;font-size:1.1rem}.summary-item .label{font-size:.95rem;opacity:.9}.summary-item .value{font-size:1.2rem;font-weight:700}.summary-item .value.paid{color:#a8e6cf}.form-section{margin-bottom:1.5rem}.form-section h4{font-size:1rem;color:#2c3e50;margin-bottom:1rem;font-weight:600;border-bottom:2px solid #e0e0e0;padding-bottom:.5rem}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.form-group input,.form-group select,.form-group textarea{padding:.7rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;font-family:inherit;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e21a}.form-group textarea{resize:vertical;min-height:80px}.amount-input-wrapper{position:relative;display:flex;gap:.5rem;align-items:center}.currency-symbol{position:absolute;left:.7rem;font-size:1.1rem;color:#666;font-weight:600;pointer-events:none}.amount-input{flex:1;padding-left:2rem!important;font-size:1.1rem!important;font-weight:600}.quick-fill-btn{padding:.7rem 1rem;background:#4a90e2;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.quick-fill-btn:hover{background:#357abd;transform:translateY(-1px)}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding-top:1.5rem;border-top:1px solid #e0e0e0;margin-top:1.5rem}.primary-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #667eea4d}.primary-button:disabled{opacity:.6;cursor:not-allowed}.secondary-button{background:#e0e0e0;color:#333;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.secondary-button:hover{background:#d0d0d0}.auto-invoice-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.auto-invoice-content{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;width:900px;max-width:95%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:1}.auto-invoice-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#00a86b,#008c5a);color:#fff;flex-shrink:0}.auto-invoice-header h2{margin:0;font-size:1.25rem;font-weight:600}.auto-invoice-close{background:#fff3;border:none;font-size:24px;line-height:1;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.auto-invoice-close:hover{background:#ffffff4d}.auto-invoice-body{padding:24px;overflow-y:auto;flex:1}.auto-invoice-modal{width:900px;max-height:90vh}.form-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e0e0e0}.form-section:last-of-type{border-bottom:none}.form-section h3{font-size:1.1rem;color:#2c3e50;margin-bottom:1rem;font-weight:600}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.form-row:last-child{margin-bottom:0}.form-group label{font-size:.9rem;color:#555;margin-bottom:.4rem;font-weight:500}.form-group input,.form-group select{padding:.6rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#4a90e2}.form-group input[type=number]{text-align:right}.invoice-preview-section{margin-top:2rem;padding-top:2rem;border-top:2px solid #4a90e2}.invoice-preview-section h3{font-size:1.2rem;color:#2c3e50;margin-bottom:1rem}.preview-box{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:1.5rem}.preview-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #ddd}.preview-header strong{font-size:1.2rem;color:#2c3e50;display:block;margin-bottom:.5rem}.preview-header p{color:#666;margin:0}.preview-table{width:100%;border-collapse:collapse;margin-bottom:1.5rem;background:#fff}.preview-table th{background:#34495e;color:#fff;padding:.75rem;text-align:left;font-weight:600;font-size:.9rem}.preview-table td{padding:.75rem;border-bottom:1px solid #e0e0e0}.preview-table tbody tr:hover{background:#f8f9fa}.preview-table tfoot td{border-top:2px solid #34495e;padding:.75rem;font-size:1rem}.preview-table .total-amount{background:#e8f5e9;color:#2e7d32;font-size:1.1rem}.preview-stats{background:#fff;border-radius:6px;padding:1rem;border-left:4px solid #4a90e2}.preview-stats p{margin:0 0 .5rem;font-weight:600;color:#2c3e50}.preview-stats ul{margin:0;padding-left:1.5rem;list-style-type:disc}.preview-stats li{color:#555;margin-bottom:.3rem}.success-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 4px 6px #667eea4d}.success-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #667eea66}.success-button:disabled{opacity:.6;cursor:not-allowed}.import-wizard-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.import-wizard-content{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;max-width:800px;width:95%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:1}.import-wizard-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;flex-shrink:0}.import-wizard-header h2{margin:0;font-size:1.25rem;font-weight:600}.import-wizard-close{background:#fff3;border:none;font-size:24px;line-height:1;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s}.import-wizard-close:hover{background:#ffffff4d}.invoice-import-wizard{max-width:800px;max-height:90vh;overflow-y:auto}.wizard-steps{display:flex;justify-content:space-between;padding:20px;border-bottom:1px solid #e0e0e0;margin-bottom:20px}.wizard-step{display:flex;align-items:center;gap:10px;flex:1;position:relative;opacity:.4}.wizard-step.active{opacity:1}.wizard-step.completed .step-number{background:#4caf50;color:#fff}.wizard-step:not(:last-child):after{content:"";position:absolute;left:calc(100% - 20px);top:15px;width:calc(100% - 40px);height:2px;background:#e0e0e0;z-index:-1}.step-number{width:30px;height:30px;border-radius:50%;background:#e0e0e0;display:flex;align-items:center;justify-content:center;font-weight:700}.wizard-step.active .step-number{background:#2196f3;color:#fff}.step-label{font-weight:500}.wizard-content{padding:20px}.wizard-content h3{margin-top:0;color:#333}.wizard-content p{color:#666;margin-bottom:20px}.file-upload-area{text-align:center;padding:40px;border:2px dashed #ccc;border-radius:8px;margin:20px 0;background:#f9f9f9}.file-upload-area label{cursor:pointer;margin:0}.file-name{margin-top:15px;color:#4caf50;font-weight:500}.error-list{background:#fff3cd;border:1px solid #ffc107;border-radius:4px;padding:15px;margin:20px 0;max-height:200px;overflow-y:auto}.error-list h4{margin-top:0;color:#856404}.error-item{padding:5px 0;color:#856404;font-size:.9em}.invoice-preview-list{max-height:400px;overflow-y:auto;border:1px solid #e0e0e0;border-radius:4px;margin:20px 0}.invoice-preview-item{padding:15px;border-bottom:1px solid #f0f0f0}.invoice-preview-item:last-child{border-bottom:none}.invoice-preview-details{color:#666;font-size:.9em;margin-top:5px}.preview-more{padding:15px;text-align:center;color:#666;font-style:italic}.wizard-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:20px;border-top:1px solid #e0e0e0}.badge{display:inline-block;padding:2px 8px;background:#2196f3;color:#fff;border-radius:12px;font-size:.85em;margin-left:8px}.invoice-archive-overlay{position:fixed;inset:0;z-index:1000;background:#00000073;display:flex;justify-content:flex-end;animation:fadeIn .2s ease}.invoice-archive-panel{width:680px;max-width:90vw;height:100vh;background:#f8f9fb;display:flex;flex-direction:column;box-shadow:-4px 0 24px #00000026;animation:slideIn .25s ease}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.archive-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff}.archive-header-left{display:flex;align-items:center;gap:10px}.archive-header-left i{font-size:1.3rem}.archive-header h2{margin:0;font-size:1.2rem;font-weight:600}.archive-close-btn{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s}.archive-close-btn:hover{background:#ffffff26}.archive-body{flex:1;overflow-y:auto;padding:1.25rem}.archive-loading,.archive-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:.75rem;color:#888}.archive-empty i{font-size:3rem;color:#ccc}.archive-empty h3{margin:0;color:#555}.archive-empty p{font-size:.9rem;text-align:center;max-width:320px}.archive-list{display:flex;flex-direction:column;gap:12px}.archive-card{background:#fff;border-radius:10px;box-shadow:0 1px 4px #0000000f;overflow:hidden;transition:box-shadow .2s}.archive-card:hover{box-shadow:0 3px 12px #0000001a}.archive-card.expanded{box-shadow:0 3px 12px #0000001f}.archive-card-header{padding:14px 18px;cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:12px;transition:background .15s}.archive-card-header:hover{background:#f5f6fa}.archive-card-title{display:flex;align-items:center;gap:10px;flex:1;min-width:200px}.archive-card-title i{font-size:1.1rem;color:#667eea}.archive-card-title strong{display:block;font-size:.95rem;color:#1a1a1a}.archive-card-title small{display:block;font-size:.78rem;color:#888;margin-top:2px}.archive-card-stats{display:flex;flex-wrap:wrap;gap:10px}.archive-stat{display:inline-flex;align-items:center;gap:5px;font-size:.82rem;color:#555;background:#f0f1f5;padding:3px 10px;border-radius:12px}.archive-stat.commission{background:#e8f5e9;color:#2e7d32}.archive-stat.net-due{background:#e3f2fd;color:#1565c0}.archive-card-meta{display:flex;align-items:center;gap:10px;font-size:.78rem}.archive-timestamp{color:#999;display:flex;align-items:center;gap:4px}.archive-source{padding:2px 8px;border-radius:8px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.archive-source.firestore{background:#e8eaf6;color:#3f51b5}.archive-source.local{background:#fff3e0;color:#e65100}.expand-icon{color:#bbb;margin-left:6px;transition:transform .2s}.archive-card-body{padding:0 18px 16px;border-top:1px solid #f0f0f0;animation:expandIn .2s ease}@keyframes expandIn{0%{opacity:0;max-height:0}to{opacity:1;max-height:800px}}.archive-detail-row{display:flex;justify-content:space-between;padding:8px 0;font-size:.88rem;border-bottom:1px solid #f5f5f5}.archive-detail-row span{color:#777}.archive-invoices-table{margin-top:10px;max-height:360px;overflow-y:auto;border:1px solid #eee;border-radius:8px}.archive-invoices-table table{width:100%;border-collapse:collapse;font-size:.85rem}.archive-invoices-table thead{background:#f9fafb;position:sticky;top:0}.archive-invoices-table th{padding:8px 12px;text-align:left;font-weight:600;color:#666;font-size:.78rem;text-transform:uppercase}.archive-invoices-table td{padding:8px 12px;border-top:1px solid #f5f5f5}.archive-invoices-table tr:hover{background:#f9fafb}.btn-sm{padding:5px 12px;font-size:.82rem;border-radius:5px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.btn-outline-danger{background:none;border:1px solid #ef5350;color:#ef5350;transition:all .2s}.btn-outline-danger:hover{background:#ffebee}.active-run-panel{padding:16px 20px;margin:12px 0;background:linear-gradient(135deg,#d4edda,#c3e6cb);border:1px solid #28a745;border-radius:10px;font-size:14px}.active-run-header{display:flex;align-items:center;gap:12px;margin-bottom:4px}.active-run-header i.fa-check-circle{color:#28a745;font-size:20px}.active-run-header .run-summary{flex:1}.active-run-actions{display:flex;gap:8px;margin-left:auto}.close-period-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;background:linear-gradient(135deg,#e53935,#c62828);color:#fff;border:none;border-radius:6px;font-weight:600;font-size:12px;cursor:pointer;transition:all .2s}.close-period-btn:hover{box-shadow:0 2px 8px #e5393566}.hide-banner-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;background:#00000014;color:#333;border:none;border-radius:6px;font-weight:500;font-size:12px;cursor:pointer;transition:all .2s}.hide-banner-btn:hover{background:#00000024}.active-run-downloads{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.download-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;color:#fff;border-radius:6px;text-decoration:none;font-weight:600;font-size:12px;transition:all .2s}.download-chip:hover{filter:brightness(1.1);box-shadow:0 2px 8px #0003}.download-chip.packet{background:#28a745}.download-chip.checks{background:#1976d2}.download-chip.payments{background:#6a1b9a}.download-chip.qb-csv{background:#e65100}.download-chip.record20{background:#455a64}.active-run-collapsed{padding:10px 18px;margin:12px 0;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border:1px solid #66bb6a;border-radius:8px;display:flex;align-items:center;gap:10px;font-size:13px;cursor:pointer;transition:background .2s}.active-run-collapsed:hover{background:linear-gradient(135deg,#c8e6c9,#a5d6a7)}.active-run-collapsed i{color:#2e7d32}@media(max-width:768px){.invoice-archive-panel{width:100vw;max-width:100vw}.archive-card-header{flex-direction:column;align-items:flex-start}.archive-card-stats{flex-direction:column}}.archive-documents{margin:12px 0 8px;padding:12px 14px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:10px}.archive-download-chips{display:flex;flex-wrap:wrap;gap:8px}.archive-download-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;color:#fff;border-radius:7px;text-decoration:none;font-weight:600;font-size:.78rem;transition:all .2s;cursor:pointer}.archive-download-chip:hover{filter:brightness(1.12);box-shadow:0 3px 10px #0000002e;transform:translateY(-1px)}.archive-download-chip.packet{background:linear-gradient(135deg,#16a34a,#15803d)}.archive-download-chip.checks{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.archive-download-chip.payments{background:linear-gradient(135deg,#7c3aed,#6d28d9)}.archive-download-chip.qb{background:linear-gradient(135deg,#ea580c,#c2410c)}.archive-download-chip.r20{background:linear-gradient(135deg,#475569,#334155)}.invoice-detail-panel{width:100%;height:100%;background:#f5f7fa;display:flex;flex-direction:column;overflow:hidden}.idp-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:#1e293b;border-bottom:1px solid #334155;flex-shrink:0}.idp-header-left{display:flex;align-items:center;gap:16px}.idp-back-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:6px 12px;cursor:pointer;font-size:14px;color:#fff;transition:all .2s}.idp-back-btn:hover{background:#fff3;color:#fff}.idp-title-block h2{margin:0 0 2px;font-size:1.1rem;color:#fff;font-weight:600}.idp-client-label{font-size:.8rem;color:#fff9}.idp-header-right{display:flex;align-items:center;gap:12px}.idp-unsaved-badge{background:#fff3e0;color:#ef6c00;font-size:.8rem;padding:4px 10px;border-radius:12px;font-weight:600}.idp-save-msg{font-size:.85rem;font-weight:600;padding:4px 10px;border-radius:6px}.idp-save-msg.success{background:#e8f5e9;color:#2e7d32}.idp-save-msg.error{background:#ffebee;color:#c62828}.idp-save-btn{padding:8px 20px!important;font-weight:600!important}.idp-tabs{display:flex;background:#fff;border-bottom:1px solid #e5e7eb;padding:0 24px;flex-shrink:0}.idp-tab-content{flex:1;overflow-y:auto;background:#f5f7fa}.idp-tab{background:none;border:none;padding:.75rem 1rem;font-size:.9rem;font-weight:500;color:#666;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s;display:flex;align-items:center;gap:8px}.idp-tab:hover{color:#333;background:#f9f9f9}.idp-tab.active{color:#667eea;border-bottom-color:#667eea;font-weight:600}.idp-tab-badge{background:#667eea;color:#fff;font-size:.7rem;padding:2px 7px;border-radius:10px;font-weight:700}.idp-details-tab{padding:24px;max-width:1200px;width:100%;margin:0 auto}.idp-field-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:24px}.idp-field label{display:block;font-size:.8rem;font-weight:600;color:#555;margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}.idp-input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:.9rem;transition:border-color .2s;box-sizing:border-box}.idp-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea26}.idp-input.disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.idp-source-data{background:#f8f9ff;border:1px solid #e0e4f5;border-radius:10px;padding:16px 20px;margin-bottom:24px}.idp-source-data h4{margin:0 0 12px;color:#667eea;font-size:.95rem}.idp-source-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px 24px}.idp-source-grid>div{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.idp-source-grid .lbl{font-size:.8rem;color:#888;font-weight:500}.idp-source-grid .highlight{font-weight:700;color:#2e7d32}.idp-source-grid .tag-100{background:#e8f5e9;color:#2e7d32;font-size:.75rem;padding:2px 8px;border-radius:8px;font-weight:600}.idp-line-items{background:#fff;border:1px solid #e0e0e0;border-radius:10px;overflow:hidden}.idp-section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e0e0e0}.idp-section-header h4{margin:0;font-size:.95rem;color:#333}.btn-sm{padding:4px 12px!important;font-size:.8rem!important}.idp-line-table{width:100%;border-collapse:collapse}.idp-line-table thead{background:#f5f6f8}.idp-line-table th{padding:10px 12px;font-size:.78rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.3px;text-align:left;border-bottom:1px solid #e0e0e0}.idp-line-table td{padding:8px 12px;border-bottom:1px solid #f0f0f0;vertical-align:middle}.idp-cell-input{width:100%;padding:6px 8px;border:1px solid #e0e0e0;border-radius:4px;font-size:.9rem;box-sizing:border-box}.idp-cell-input:focus{border-color:#667eea;outline:none}.amount-cell{font-family:Courier New,monospace;font-weight:600;text-align:right;white-space:nowrap}.empty-line-items{text-align:center;padding:24px!important;color:#aaa;font-style:italic}.totals-row td{padding:8px 12px;border-bottom:none}.balance-row td{padding-top:12px;border-top:2px solid #e0e0e0}.balance-positive{color:#c62828}.balance-zero{color:#2e7d32}.idp-packet-tab{flex:1;display:flex;flex-direction:column;min-height:0}.idp-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:60px;color:#888;font-size:1rem}.idp-packet-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;color:#aaa;text-align:center}.idp-packet-empty i{font-size:3rem;margin-bottom:12px}.idp-packet-layout{display:flex;flex:1;min-height:600px}.idp-page-sidebar{width:200px;min-width:200px;background:#fff;border-right:1px solid #e0e0e0;overflow-y:auto;padding:8px}.idp-page-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 12px;border-bottom:1px solid #eee;margin-bottom:8px;font-size:.85rem}.idp-page-thumb{border:2px solid #e0e0e0;border-radius:6px;margin-bottom:8px;cursor:pointer;overflow:hidden;transition:all .2s}.idp-page-thumb:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea26}.idp-page-thumb.selected{border-color:#667eea;box-shadow:0 0 0 2px #667eea4d}.idp-page-thumb img{width:100%;display:block;border-bottom:1px solid #eee}.idp-thumb-placeholder{width:100%;height:120px;background:#f5f5f5;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#ccc}.idp-thumb-label{padding:4px 8px;font-size:.75rem;color:#666;display:flex;align-items:center;justify-content:space-between;background:#fafafa}.idp-overlay-badge{background:#667eea;color:#fff;font-size:.65rem;padding:1px 6px;border-radius:8px;display:flex;align-items:center;gap:3px}.idp-page-viewer{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#e8e8e8}.idp-no-page-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;color:#aaa;gap:12px}.idp-no-page-selected i{font-size:2rem}.page-editor{display:flex;flex-direction:column;flex:1;overflow:hidden}.pe-toolbar{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#fff;border-bottom:1px solid #ddd;flex-shrink:0}.pe-tool-group{display:flex;gap:2px;background:#f0f0f0;border-radius:6px;padding:2px}.pe-tool-btn{background:none;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:14px;color:#555;transition:all .15s}.pe-tool-btn:hover{background:#e0e0e0}.pe-tool-btn.active{background:#667eea;color:#fff;box-shadow:0 1px 3px #00000026}.pe-text-options{display:flex;align-items:center;gap:6px;padding-left:8px;border-left:1px solid #ddd}.pe-size-input{width:50px;padding:4px 6px;border:1px solid #ddd;border-radius:4px;font-size:.85rem;text-align:center}.pe-label{font-size:.8rem;color:#888}.pe-color-input{width:30px;height:26px;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:1px}.pe-page-label{margin-left:auto;font-size:.85rem;color:#888;font-weight:500}.pe-edit-count{font-size:.75rem;background:#fff3e0;color:#ef6c00;padding:3px 8px;border-radius:10px;font-weight:600}.pe-canvas-area{flex:1;overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:20px}.pe-page-image-container{position:relative;background:#fff;box-shadow:0 2px 12px #00000026;max-width:100%;border-radius:2px}.pe-page-image{display:block;max-width:100%;max-height:80vh;-webkit-user-select:none;user-select:none}.pe-page-placeholder{width:600px;height:780px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ccc;gap:12px;font-size:1.1rem}.pe-page-placeholder i{font-size:3rem}.pe-overlay{position:absolute;cursor:pointer;transition:box-shadow .15s}.pe-overlay.text{white-space:nowrap;pointer-events:auto;font-family:Arial,sans-serif;font-weight:500}.pe-overlay.whiteout{pointer-events:auto;border:1px dashed #ccc;box-shadow:0 0 3px #00000014}.pe-overlay.selected{outline:2px solid #667eea;outline-offset:2px}.pe-overlay-delete{position:absolute;top:-10px;right:-10px;width:20px;height:20px;background:#f44336;color:#fff;border:none;border-radius:50%;font-size:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 4px #0003}.pe-text-input-popup{position:absolute;display:flex;gap:4px;z-index:20;transform:translate(-4px,-14px)}.pe-text-field{padding:4px 8px;border:2px solid #667eea;border-radius:4px;font-size:.9rem;min-width:180px;outline:none;box-shadow:0 2px 8px #667eea40}.pe-text-confirm,.pe-text-cancel{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;border-radius:4px;cursor:pointer;font-size:12px}.pe-text-confirm{background:#4caf50;color:#fff}.pe-text-cancel{background:#f44336;color:#fff}.invoices-container{display:flex;flex-direction:column;width:100%;flex:1;min-height:0;box-sizing:border-box;background:#f5f7fa;overflow:hidden}.invoices-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:50vh;gap:1rem}.invoices-container .page-header{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:.75rem 1.5rem;background:#1e293b;border-bottom:1px solid #334155}.invoices-container .header-left h1{margin:0;font-size:1.25rem;font-weight:600;color:#fff;display:flex;align-items:center;gap:.5rem}.invoices-container .header-left h1 i{color:#00d68f}.invoices-container .header-left .subtitle{margin:.15rem 0 0;font-size:.8rem;color:#ffffffb3}.invoices-container .header-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.invoices-container .header-actions .btn{padding:.5rem .9rem;font-size:.82rem;border-radius:6px;font-weight:600;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;transition:all .15s ease;white-space:nowrap}.invoices-content-scroll{flex:1;overflow-y:auto;background:#f5f7fa;padding:1rem 1.5rem}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.summary-card{background:#fff;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 2px 8px #00000014}.summary-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.summary-icon.total{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.summary-icon.paid{background:linear-gradient(135deg,#00a86b,#008c5a);color:#fff}.summary-icon.outstanding{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.btn-success{background:linear-gradient(135deg,#00a86b,#008c5a);color:#fff}.btn-success:hover{box-shadow:0 4px 12px #00a86b4d}.btn-icon.btn-success{color:#00a86b;background:none;border:none;padding:.5rem;cursor:pointer;transition:all .2s}.btn-icon.btn-success:hover{color:#008c5a;background:#e8f5e9}.summary-content{display:flex;flex-direction:column;gap:.25rem}.summary-label{font-size:.85rem;color:#999;text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:1.5rem;font-weight:700;color:#1a1a1a}.invoices-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.invoices-table{width:100%;border-collapse:collapse}.invoices-table thead{background:#f9fafb;border-bottom:2px solid #e0e0e0}.invoices-table th{padding:1rem;text-align:left;font-weight:600;color:#666;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.column-filter-row{background:#f3f4f6;border-bottom:2px solid #e5e7eb}.column-filter-row th{padding:4px 6px 6px;text-transform:none;letter-spacing:normal;vertical-align:middle}.col-filter-input{width:100%;padding:5px 7px;border:1px solid #d1d5db;border-radius:5px;font-size:.78rem;color:#1f2937;background:#fff;outline:none;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.col-filter-input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea26}.col-filter-input::placeholder{color:#9ca3af;font-weight:400}.col-filter-input.num{width:60px;text-align:right}.col-filter-range{display:flex;gap:3px;align-items:center}select.col-filter-input{padding:5px 4px;cursor:pointer;font-size:.76rem}.col-filter-clear{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:1rem;padding:4px;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center}.col-filter-clear:hover{color:#ef4444;background:#fef2f2}.invoices-table td{padding:1rem;border-bottom:1px solid #f0f0f0}.invoices-table tbody tr:hover{background:#f9fafb}.text-right{text-align:right}.text-center{text-align:center}.client-info{display:flex;flex-direction:column;gap:.25rem}.client-name{font-weight:500;color:#1a1a1a}.client-code{font-size:.85rem;color:#999;font-family:Courier New,monospace}.period-cell small{color:#666;white-space:nowrap}.balance-due{color:#f5576c}.status-badge{display:inline-block;padding:.4rem .8rem;border-radius:20px;font-size:.85rem;font-weight:500}.status-draft{background:#e3f2fd;color:#1976d2}.status-sent{background:#fff3e0;color:#f57c00}.status-paid{background:#e8f5e9;color:#2e7d32}.status-overdue{background:#ffebee;color:#c62828}.status-cancelled{background:#f5f5f5;color:#757575}.action-buttons{display:flex;gap:.5rem;justify-content:center}.btn-icon{background:none;border:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer;color:#666;transition:all .2s}.btn-icon:hover{background:#f5f5f5;color:#00a86b}.btn-icon.btn-danger:hover{background:#ffebee;color:#d32f2f}.empty-state{text-align:center;padding:4rem 2rem}.empty-state i{font-size:4rem;color:#ddd;margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem;color:#333}.empty-state p{color:#666;margin-bottom:1.5rem}.bulk-actions-bar{background:#2196f3;color:#fff;padding:1rem 1.5rem;border-radius:8px;display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.selected-count{font-weight:600;margin-right:auto}.bulk-actions-bar .btn{color:#fff;border-color:#fff}.bulk-actions-bar .btn:hover{background:#fff3}.checkbox-cell{width:40px;text-align:center}.checkbox-cell input[type=checkbox]{cursor:pointer;width:18px;height:18px}.client-filter-input,.date-filter-input{padding:.5rem 1rem;border:1px solid #e0e0e0;border-radius:6px;font-size:.9rem}.client-filter-input{width:200px}.date-filter-input{width:150px}@media(max-width:1200px){.invoices-table{font-size:.9rem}.invoices-table th,.invoices-table td{padding:.75rem .5rem}}@media(max-width:768px){.summary-cards{grid-template-columns:1fr}.filter-bar{flex-direction:column}.invoices-table-container{overflow-x:auto}.invoices-table{min-width:900px}}.clickable-row{cursor:pointer;transition:background .15s ease}.clickable-row:hover{background:#667eea14!important}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 15px #0003;width:90%;max-width:600px;padding:20px;position:relative}.modal-close{position:absolute;top:10px;right:10px;background:none;border:none;font-size:1.5rem;cursor:pointer}.accounts-container{display:flex;flex-direction:column;width:100%;max-width:100%;margin:0;padding:0;flex:1;min-height:0;box-sizing:border-box;overflow:hidden}.accounts-header{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background:#1e293b;border-bottom:1px solid #334155}.header-title{display:flex;flex-direction:column;gap:.15rem;z-index:1}.accounts-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#f8fafc;letter-spacing:-.02em}.account-count{font-size:.8rem;color:#94a3b8;font-weight:500}.btn-upload-accounts{padding:.6rem 1.25rem;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #22c55e4d;z-index:1}.btn-upload-accounts:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px);box-shadow:0 4px 16px #22c55e66}.accounts-filters{flex-shrink:0;display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;padding:1rem 1.25rem;background:#fff;border:1px solid #e2e8f0;border-top:none;box-shadow:0 1px 3px #0000000a}.search-container{display:flex;gap:.5rem;flex:1;min-width:320px}.search-field-selector{border:1px solid #e2e8f0;background:#f8fafc;color:#334155;font-size:.85rem;transition:all .2s}.search-field-selector:focus{outline:none;border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1f}.search-input{flex:1;padding:.65rem 1rem;border:1px solid #e2e8f0;border-radius:10px;font-size:.95rem;color:#1e293b;background:#f8fafc;transition:all .2s}.search-input:focus{outline:none;border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1f;background:#fff}.search-input::placeholder{color:#94a3b8}.btn-search{padding:.65rem 1.5rem;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);white-space:nowrap;box-shadow:0 2px 8px #22c55e4d;letter-spacing:.01em}.btn-search:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px);box-shadow:0 4px 16px #22c55e66}.client-filter,.status-filter{padding:.65rem 1rem;border:1px solid #e2e8f0;border-radius:10px;font-size:.9rem;color:#334155;background:#f8fafc;cursor:pointer;transition:all .2s;min-width:160px}.client-filter:focus,.status-filter:focus{outline:none;border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1f}.type-filter{padding:.65rem 1rem;border:1px solid #e2e8f0;border-radius:10px;font-size:.9rem;min-width:170px;cursor:pointer;transition:all .2s;color:#334155;background:#f8fafc}.accounts-content-scroll{flex:1;overflow-y:auto;background:#fff;border-radius:0 0 12px 12px;border:1px solid #e2e8f0;border-top:none}.accounts-list{flex:1;overflow-y:auto;padding:1rem}.account-type-pills{display:flex;gap:.35rem;background:#f1f5f9;padding:.3rem;border-radius:10px;border:1px solid #e2e8f0}.account-type-pill{display:flex;align-items:center;gap:.3rem;padding:.4rem .85rem;border-radius:8px;cursor:pointer;font-size:.82rem;font-weight:500;color:#64748b;background:transparent;border:none;transition:all .2s;white-space:nowrap}.account-type-pill:hover{color:#334155;background:#fff9}.account-type-pill.active{background:#fff;color:#1e293b;font-weight:600;box-shadow:0 1px 3px #00000014}.account-type-pill.active-header{background:#fff7ed;color:#c2410c;box-shadow:0 1px 3px #c2410c1f}.account-type-pill.active-trailer{background:#f0fdf4;color:#15803d;box-shadow:0 1px 3px #15803d1f}.accounts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1rem}.account-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.25rem;transition:all .25s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:hidden}.account-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#6366f1,#8b5cf6);opacity:0;transition:opacity .25s}.account-card:hover{border-color:#c7d2fe;box-shadow:0 4px 20px #6366f11a;transform:translateY(-2px)}.account-card:hover:before{opacity:1}.account-card.selected{border-color:#22c55e;box-shadow:0 0 0 2px #22c55e33,0 4px 20px #22c55e1f}.account-card.selected:before{opacity:1}.account-card.header-account{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fbbf24}.account-card.header-account:before{background:linear-gradient(90deg,#f59e0b,#d97706);opacity:1}.account-card.header-account:hover{box-shadow:0 4px 20px #f59e0b2e;border-color:#f59e0b}.account-card.trailer-account{background:#fff;border:1px solid #e2e8f0}.account-card.trailer-account:before{background:linear-gradient(90deg,#22c55e,#16a34a);opacity:0}.account-card.trailer-account:hover{box-shadow:0 4px 20px #22c55e1a}.account-card.trailer-account:hover:before{opacity:1}.header-badge{display:inline-flex;align-items:center;gap:.25rem;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:.2rem .6rem;border-radius:6px;font-size:.65rem;font-weight:700;margin-right:.5rem;text-transform:uppercase;letter-spacing:.8px;box-shadow:0 1px 3px #f59e0b4d}.accounts-container .account-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:.6rem .85rem;border-bottom:none;background:linear-gradient(135deg,#1e293b,#334155);color:#fff;border-radius:10px}.accounts-container .account-header h3{margin:0;font-size:1.05rem;color:#fff;flex:1;font-weight:600}.accounts-container .account-name{color:#fff;font-weight:600;font-size:.95rem}.accounts-container .account-status{color:#fff;background:#ffffff2e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:.2rem .65rem;border-radius:20px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.status-badge{padding:.2rem .65rem;border-radius:20px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.status-active{background:#dcfce7;color:#15803d}.status-pending{background:#fff7ed;color:#c2410c}.status-inactive{background:#fef2f2;color:#b91c1c}.account-details{margin-bottom:.75rem}.detail-row{display:flex;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid #f1f5f9}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#64748b;font-size:.82rem;font-weight:500}.detail-row .value{color:#1e293b;font-weight:600;font-size:.88rem}.detail-row.eviction-available{background:#fffbeb;padding:.5rem .75rem;border-radius:8px;margin-top:.5rem;border:1px solid #fde68a}.detail-row.eviction-active{background:#fef2f2;padding:.5rem .75rem;border-radius:8px;margin-top:.5rem;border-left:3px solid #dc2626}.detail-row.eviction-active .label,.detail-row.eviction-active .value{color:#dc2626;font-weight:600}.account-id{font-family:SF Mono,Fira Code,Courier New,monospace;font-size:.82rem;color:#64748b}.detail-row.eviction-available .label,.detail-row.eviction-available .value{color:#c2410c;font-weight:600}.balance{font-size:1.05rem;font-weight:700;color:#059669}.btn-eviction-continue{flex:1;padding:.6rem 1rem;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.85rem}.btn-eviction-continue:hover{background:linear-gradient(135deg,#ea580c,#c2410c);transform:translateY(-1px)}.load-more-container{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin:2rem 0;padding:2rem;background:#f8fafc;border-radius:14px;border:1px dashed #cbd5e1}.btn-load-more{padding:.85rem 2rem;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);min-width:280px;box-shadow:0 2px 8px #22c55e4d}.btn-load-more:hover:not(:disabled){background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-2px);box-shadow:0 6px 20px #22c55e66}.btn-load-more:disabled{background:#cbd5e1;cursor:not-allowed;transform:none;box-shadow:none}.account-actions{display:flex;gap:.75rem}.btn-primary,.btn-eviction{flex:1;padding:.6rem 1rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.88rem}.btn-primary{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.btn-primary:hover{box-shadow:0 4px 12px #22c55e4d;transform:translateY(-1px)}.btn-eviction{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff}.btn-eviction:hover{box-shadow:0 4px 12px #dc26264d;transform:translateY(-1px)}.empty-state{text-align:center;padding:4rem 2rem;color:#64748b}.empty-state-icon{width:120px;height:120px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem}.empty-state h3{font-size:1.25rem;color:#334155;margin:0 0 .5rem;font-weight:600}.empty-state p{font-size:1rem;margin-bottom:.25rem;color:#64748b}.search-prompt{text-align:center;padding:3.5rem 2rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:16px;border:2px dashed #cbd5e1;margin:1rem 0;position:relative;overflow:hidden}.search-prompt:before{content:"";position:absolute;top:-30%;left:50%;transform:translate(-50%);width:400px;height:400px;background:radial-gradient(circle,rgba(34,197,94,.06) 0%,transparent 70%);pointer-events:none}.search-prompt-icon{font-size:3.5rem;margin-bottom:.75rem;filter:grayscale(.3)}.search-prompt h3{margin:0 0 .75rem;font-size:1.3rem;color:#1e293b;font-weight:600}.search-prompt p{margin:.35rem 0;font-size:1rem;color:#64748b}.search-prompt .muted{font-size:.9rem;color:#94a3b8;font-style:italic}.btn-start-eviction{width:100%;padding:.55rem 1rem;background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.82rem;cursor:pointer;transition:all .2s;margin-top:.5rem}.btn-start-eviction:hover{transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}.eviction-modal{max-width:1200px;width:95vw;max-height:90vh;overflow-y:auto}.eviction-form{padding:1.5rem}.step-progress{margin-bottom:2rem;padding:1.5rem;background:#f5f5f5;border-radius:12px}.steps{display:flex;justify-content:space-between;position:relative}.step{flex:1;text-align:center;position:relative;padding:0 1rem}.step:before{content:"";position:absolute;top:20px;left:50%;right:-50%;height:2px;background:#ddd;z-index:0}.step:last-child:before{display:none}.step.completed:before{background:#4caf50}.step-number{width:40px;height:40px;border-radius:50%;background:#fff;border:2px solid #ddd;display:flex;align-items:center;justify-content:center;margin:0 auto .5rem;font-weight:700;position:relative;z-index:1}.step.active .step-number{background:#1976d2;color:#fff;border-color:#1976d2}.step.completed .step-number{background:#4caf50;color:#fff;border-color:#4caf50}.step-title{font-size:.85rem;color:#666;font-weight:500}.step.active .step-title{color:#1976d2;font-weight:700}.eviction-types{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.radio-card{display:block;padding:1.5rem;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s ease}.radio-card:hover{border-color:#1976d2;background:#f5f9ff}.radio-card input[type=radio]{margin-right:.75rem}.radio-card input[type=radio]:checked~.radio-content{color:#1976d2}.radio-card:has(input:checked){border-color:#1976d2;background:#e3f2fd}.radio-content{display:inline-block}.radio-content strong{display:block;margin-bottom:.25rem;font-size:1.1rem}.radio-content small{display:block;color:#666;font-size:.85rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:1rem}.form-group label{margin-bottom:.5rem;font-weight:600;color:#333;font-size:.9rem}.form-group input,.form-group textarea,.form-group select{padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.form-group .muted{margin-top:.25rem;font-size:.8rem;color:#666}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:600}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.document-buttons{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.btn-document{padding:1rem 1.5rem;background:#8b0000;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-document:hover:not(:disabled){background:#a00000;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.btn-document:disabled{background:#ccc;cursor:not-allowed}.checklist{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.checklist-item{background:#f9f9f9;padding:1.5rem;border-radius:8px;border-left:4px solid #1976d2}.checklist-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.checklist-header strong{color:#1a1a1a;font-size:1.05rem}.timeline{background:#e3f2fd;color:#1976d2;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.checklist-description{color:#555;margin-bottom:1rem;line-height:1.6}.checklist-documents{background:#fff;padding:1rem;border-radius:6px}.checklist-documents strong{color:#1976d2;display:block;margin-bottom:.5rem}.checklist-documents ul{margin:0;padding-left:1.5rem}.checklist-documents li{margin-bottom:.25rem;color:#555}.accounts-container .modal-overlay{position:fixed;inset:0;background:#00000080;z-index:999999!important;display:flex;align-items:center;justify-content:center}.accounts-container .modal-content{position:relative;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:900px;max-width:90vw;height:600px;max-height:90vh;overflow-y:scroll;overflow-x:hidden;z-index:1000001}.accounts-container .modal-content *{transition:none!important;animation:none!important;cursor:default!important;transform:none!important}.accounts-container .modal-content button,.accounts-container .modal-content input,.accounts-container .modal-content select,.accounts-container .modal-content textarea{cursor:pointer!important}.accounts-container .modal-content input[type=text],.accounts-container .modal-content input[type=file],.accounts-container .modal-content textarea{cursor:text!important}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e0e0e0;background:#f8f9fa;border-radius:12px 12px 0 0;height:80px;min-height:80px;max-height:80px;flex-shrink:0;z-index:1000000;position:relative}.modal-header h2{margin:0;font-size:1.8rem;color:#1a1a1a;line-height:1.2;height:auto}.close-btn{background:none;border:none;font-size:2rem;color:#666;padding:.5rem .75rem;line-height:1;width:44px;height:44px;flex-shrink:0}.close-btn:hover{color:#d32f2f}.upload-modal-body{padding:3rem;display:flex;flex-direction:column;gap:2rem;flex:1;overflow-y:auto}.muted{color:#666;font-size:1.1rem;margin:0}.file-input{display:block;width:100%;padding:2.5rem;border:3px dashed #1976d2;border-radius:12px;cursor:pointer;background:#f5f9ff;font-size:1.2rem;transition:all .2s;text-align:center;font-weight:600}.file-input:hover:not(:disabled){background:#e3f2fd;border-color:#1565c0;transform:scale(1.01);pointer-events:auto}.file-input:disabled{opacity:.5;cursor:not-allowed;pointer-events:auto}.file-info{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#e8f5e9;border-radius:12px;border:2px solid #4caf50;font-size:1.1rem}.file-size{color:#666;font-size:.9rem;margin-left:auto}.btn-upload-now{padding:1.5rem 2.5rem;background:#4caf50;color:#fff;border:none;border-radius:12px;font-weight:700;font-size:1.3rem;cursor:pointer;transition:all .2s ease;width:100%;pointer-events:auto}.btn-upload-now:hover:not(:disabled){background:#388e3c;transform:translateY(-3px);box-shadow:0 6px 20px #4caf5066;pointer-events:auto}.btn-upload-now:disabled{background:#ccc;cursor:not-allowed;transform:none;pointer-events:auto}.progress-bar{width:100%;height:12px;background:#e0e0e0;border-radius:6px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#81c784);transition:width .3s ease}.trailers-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:trailers-modal-fadeIn .2s ease-out}@keyframes trailers-modal-fadeIn{0%{opacity:0}to{opacity:1}}.trailers-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:900px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:trailers-modal-slideIn .2s ease-out}@keyframes trailers-modal-slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.trailers-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e0e0e0;flex-shrink:0}.trailers-modal-header h2{margin:0;font-size:1.3rem;display:flex;align-items:center;gap:.5rem}.trailers-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;transition:color .2s}.trailers-modal-close:hover{color:#e74c3c}.trailers-modal{max-width:900px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.trailers-modal .modal-header,.trailers-modal .header-summary{flex-shrink:0}.trailers-modal .trailers-list{flex:1;overflow-y:auto}.trailer-item{transition:all .2s ease!important}.trailer-item:hover{background:#f8f9fa!important}.upload-instructions{background:#f5f5f5;padding:1.5rem;border-radius:12px;font-size:1.05rem;line-height:2;color:#555;border-left:5px solid #2196f3}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e0e0e0}.btn-secondary{padding:.75rem 1.5rem;background:#f5f5f5;color:#333;border:1px solid #ddd;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:#e0e0e0}.upload-section-inline{background:linear-gradient(135deg,#f8fafc,#f0fdf4);border:1px solid #86efac;border-radius:14px;padding:1.5rem;margin-bottom:1.25rem;box-shadow:0 2px 8px #22c55e14}.upload-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #bbf7d0}.upload-section-header h3{margin:0;font-size:1.25rem;color:#15803d;font-weight:700}.tie-series-box{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);padding:1.25rem;border-radius:8px;border:2px solid #9c27b0;margin-bottom:1.25rem}.tie-series-box h4{margin:0 0 .5rem;color:#7b1fa2;font-size:1.1rem}.tie-series-controls{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-top:.75rem}.btn-tie-series{background:linear-gradient(135deg,#7b1fa2,#9c27b0);color:#fff;border:none;padding:.6rem 1.25rem;border-radius:6px;font-weight:600;cursor:pointer}.btn-tie-series:disabled{opacity:.5;cursor:not-allowed}.upload-main-box{background:#fff;padding:1.25rem;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000a}.upload-main-box h4{margin:0 0 .5rem;color:#1e293b;font-size:1.05rem;font-weight:600}.file-input-inline{display:block;width:100%;padding:1rem;border:2px dashed #22c55e;border-radius:10px;cursor:pointer;background:#f0fdf4;font-size:.95rem;margin:.75rem 0;transition:all .2s;color:#15803d}.file-input-inline:hover:not(:disabled){background:#dcfce7;border-color:#16a34a}.file-info-inline{padding:.75rem;background:#f0fdf4;border-radius:8px;border:1px solid #86efac;margin-bottom:.75rem;font-size:.9rem;color:#15803d}.file-name{color:#7b1fa2;font-weight:600}.upload-requirements{background:#f8fafc;padding:.75rem;border-radius:8px;font-size:.85rem;color:#64748b;margin-top:.75rem;border-left:3px solid #22c55e}.loading-pulse{animation:loadPulse 1.5s ease-in-out infinite;color:#22c55e}@keyframes loadPulse{0%,to{opacity:1}50%{opacity:.4}}.search-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1.5rem}.search-loading h3{margin:0;font-size:1.2rem;font-weight:600;color:#1e293b}.search-loading p{margin:0;font-size:.95rem;color:#64748b}.search-loading-spinner{position:relative;width:56px;height:56px}.spinner-ring{position:absolute;inset:0;border-radius:50%;border:3px solid transparent;animation:spinRing 1.2s cubic-bezier(.5,0,.5,1) infinite}.spinner-ring:nth-child(1){border-top-color:#22c55e;animation-delay:-.3s}.spinner-ring:nth-child(2){border-top-color:#16a34a;animation-delay:-.15s;inset:4px}.spinner-ring:nth-child(3){border-top-color:#86efac;inset:8px}@keyframes spinRing{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.search-hero{display:flex;flex-direction:column;align-items:center;gap:.75rem;position:relative;z-index:1}.search-hero-glow{position:absolute;top:-40px;left:50%;transform:translate(-50%);width:200px;height:200px;background:radial-gradient(circle,rgba(34,197,94,.1) 0%,transparent 70%);pointer-events:none;animation:heroGlow 3s ease-in-out infinite}@keyframes heroGlow{0%,to{opacity:.7;transform:translate(-50%) scale(1)}50%{opacity:1;transform:translate(-50%) scale(1.15)}}.search-hero-icon{display:flex;align-items:center;justify-content:center;width:96px;height:96px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:50%;border:2px solid #bbf7d0;box-shadow:0 4px 16px #22c55e1f;margin-bottom:.5rem}.search-hero-icon svg{width:48px;height:48px}.search-hero h3{margin:0;font-size:1.4rem;font-weight:700;color:#1e293b;letter-spacing:-.02em}.search-hero p{margin:0;font-size:1rem;color:#64748b}.search-hero-hints{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:.5rem}.hint-chip{display:inline-flex;align-items:center;padding:.35rem .85rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:20px;font-size:.8rem;font-weight:500;color:#15803d;transition:all .2s}.hint-chip:hover{background:#dcfce7;border-color:#86efac;transform:translateY(-1px)}.search-hero-tip{margin:.5rem 0 0;font-size:.85rem;color:#94a3b8;font-style:italic}@media(max-width:768px){.accounts-container{padding:1rem}.accounts-header{flex-direction:column;gap:.75rem;padding:1rem}.accounts-header h2{font-size:1.25rem}.accounts-filters{flex-direction:column;padding:.75rem}.search-container{min-width:unset;flex-direction:column}.client-filter,.status-filter{min-width:unset;width:100%}.account-type-pills{width:100%;justify-content:center}.account-card{padding:1rem}}.client-portal .client-portal-header{background:linear-gradient(135deg,#064e3b,#065f46 40%,#047857);border-bottom:none;padding:1rem 1.75rem}.client-portal .client-portal-header h2{font-size:1.35rem;font-weight:700;letter-spacing:-.03em;background:linear-gradient(135deg,#ecfdf5,#a7f3d0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.client-portal .client-portal-header .account-count{color:#6ee7b7}.client-portal-search{padding:1.25rem 1.5rem 1rem;background:linear-gradient(180deg,#f0fdf4,#fff);border-bottom:1px solid #dcfce7}.client-search-bar{display:flex;align-items:center;background:#fff;border:2px solid #d1fae5;border-radius:14px;padding:.25rem .25rem .25rem 1rem;gap:.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 12px #10b9810f}.client-search-bar:focus-within{border-color:#10b981;box-shadow:0 0 0 4px #10b9811a,0 4px 20px #10b9811f}.client-search-icon{color:#6ee7b7;flex-shrink:0;display:flex;align-items:center}.client-search-bar:focus-within .client-search-icon{color:#10b981}.client-search-input{flex:1;border:none;outline:none;font-size:1rem;color:#1e293b;background:transparent;padding:.7rem 0;font-weight:500}.client-search-input::placeholder{color:#94a3b8;font-weight:400}.client-search-btn{padding:.65rem 1.75rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:11px;font-weight:700;font-size:.92rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);letter-spacing:.02em;white-space:nowrap}.client-search-btn:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 16px #05966959}.client-search-filters{display:flex;align-items:center;gap:.75rem;margin-top:.85rem;flex-wrap:wrap}.client-portal-filter{padding:.5rem 1rem;border:1px solid #d1fae5;border-radius:10px;font-size:.85rem;color:#334155;background:#fff;cursor:pointer;transition:all .2s;font-weight:500}.client-portal-filter:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.client-result-count{font-size:.82rem;color:#059669;font-weight:600;padding:.4rem .85rem;background:#ecfdf5;border-radius:20px;border:1px solid #a7f3d0}.client-portal-content{flex:1;overflow-y:auto;background:#f8fafb}.client-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 2rem;gap:1.25rem}.client-loading p{color:#64748b;font-size:.95rem;font-weight:500}.client-loading-dots{display:flex;gap:.5rem}.client-loading-dots span{width:10px;height:10px;border-radius:50%;background:#10b981;animation:clientDotBounce 1.4s ease-in-out infinite}.client-loading-dots span:nth-child(2){animation-delay:.16s}.client-loading-dots span:nth-child(3){animation-delay:.32s}@keyframes clientDotBounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.client-welcome{display:flex;flex-direction:column;align-items:center;text-align:center;padding:4rem 2rem 5rem;position:relative;overflow:hidden}.client-welcome-glow{position:absolute;top:-60px;left:50%;transform:translate(-50%);width:400px;height:400px;background:radial-gradient(circle,rgba(16,185,129,.08) 0%,transparent 70%);pointer-events:none;animation:clientWelcomeGlow 4s ease-in-out infinite}@keyframes clientWelcomeGlow{0%,to{opacity:.6;transform:translate(-50%) scale(1)}50%{opacity:1;transform:translate(-50%) scale(1.2)}}.client-welcome-icon{width:110px;height:110px;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-radius:28px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;border:2px solid #a7f3d0;box-shadow:0 8px 32px #10b9811f;position:relative;z-index:1}.client-welcome h2{margin:0 0 .5rem;font-size:1.65rem;font-weight:800;color:#064e3b;letter-spacing:-.03em;position:relative;z-index:1}.client-welcome>p{margin:0 0 1.25rem;font-size:1.05rem;color:#64748b;max-width:480px;line-height:1.6;position:relative;z-index:1}.client-welcome-chips{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;position:relative;z-index:1}.client-chip{display:inline-flex;align-items:center;padding:.4rem 1rem;background:#fff;border:1px solid #d1fae5;border-radius:24px;font-size:.82rem;font-weight:600;color:#059669;transition:all .2s;box-shadow:0 1px 4px #0000000a}.client-chip:hover{background:#ecfdf5;border-color:#6ee7b7;transform:translateY(-2px);box-shadow:0 4px 12px #10b9811f}.client-welcome-sub{margin:1.25rem 0 0;font-size:.88rem;color:#94a3b8;font-style:italic;position:relative;z-index:1}.client-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 2rem;text-align:center}.client-empty-icon{margin-bottom:1.25rem}.client-empty h3{margin:0 0 .5rem;font-size:1.2rem;color:#334155;font-weight:700}.client-empty p{margin:0;color:#64748b;font-size:.95rem}.client-results-layout{display:flex;gap:0;min-height:100%}.client-results-layout .client-accounts-list{grid-template-columns:1fr}.client-accounts-list{flex:1;overflow-y:auto;padding:1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.75rem;align-content:start}.client-account-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:0;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000a}.client-account-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#10b981;border-radius:16px 0 0 16px;opacity:0;transition:opacity .25s}.client-account-card:hover{border-color:#86efac;box-shadow:0 8px 25px #10b9811f,0 2px 8px #0000000a;transform:translateY(-2px)}.client-account-card:hover:before{opacity:1}.client-account-card.selected{border-color:#10b981;background:linear-gradient(135deg,#f0fdf4,#fff);box-shadow:0 0 0 3px #10b9811f,0 8px 25px #10b9811a}.client-account-card.selected:before{opacity:1;background:#059669;width:5px}.client-account-card.status-closed,.client-account-card.status-paid{opacity:.7}.client-account-card.status-closed:before,.client-account-card.status-paid:before{background:#94a3b8}.client-card-top{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.15rem .5rem;gap:.75rem}.client-card-name{font-weight:700;font-size:1.02rem;color:#0f172a;letter-spacing:-.02em;line-height:1.3}.client-status-badge{padding:.22rem .7rem;border-radius:20px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;flex-shrink:0;white-space:nowrap}.client-status-badge.active{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.client-status-badge.paid{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.client-status-badge.closed{background:#f1f5f9;color:#64748b;border:1px solid #cbd5e1}.client-card-details{padding:0 1.15rem .35rem}.client-card-row{display:flex;justify-content:space-between;align-items:center;padding:.22rem 0}.client-card-label{font-size:.76rem;color:#94a3b8;font-weight:500}.client-card-value{font-size:.85rem;color:#334155;font-weight:600}.client-card-value.mono{font-family:SF Mono,Fira Code,monospace;font-size:.8rem;color:#64748b}.client-card-balance{font-size:1.05rem;font-weight:800;color:#059669}.client-card-balance.zero{color:#94a3b8;font-weight:600}.client-card-arrow{display:flex;align-items:center;justify-content:center;padding:.6rem 1.15rem;border-top:1px solid #f1f5f9;color:#cbd5e1;transition:all .25s;margin-top:auto;background:linear-gradient(180deg,transparent 0%,#fafffe 100%)}.client-account-card:hover .client-card-arrow{color:#10b981;background:linear-gradient(180deg,transparent 0%,#f0fdf4 100%)}.client-account-card .client-card-arrow svg{transition:transform .25s}.client-account-card:hover .client-card-arrow svg{transform:translate(3px)}.client-detail-panel{flex:1;background:#fff;border-left:1px solid #e2e8f0;overflow-y:auto;max-height:calc(100vh - 200px);animation:clientPanelSlide .3s cubic-bezier(.4,0,.2,1)}@keyframes clientPanelSlide{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.client-detail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.client-detail-loading p{color:#64748b;font-size:.9rem}.client-detail-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:2px solid #f0fdf4;background:linear-gradient(135deg,#f0fdf4,#fff);position:sticky;top:0;z-index:10}.client-detail-header h3{margin:0;font-size:1.1rem;font-weight:700;color:#064e3b}.client-detail-close{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.35rem;border-radius:8px;transition:all .2s;display:flex;align-items:center}.client-detail-close:hover{background:#fee2e2;color:#ef4444}.client-detail-section{padding:1.25rem 1.5rem;border-bottom:1px solid #f1f5f9}.client-detail-name{font-size:1.2rem;font-weight:800;color:#1e293b;margin-bottom:.75rem;letter-spacing:-.02em}.client-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.client-detail-item{display:flex;flex-direction:column;gap:.15rem}.client-detail-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;font-weight:600}.client-detail-value{font-size:.9rem;color:#1e293b;font-weight:600}.client-financial h4{margin:0 0 .85rem;font-size:.9rem;font-weight:700;color:#064e3b;text-transform:uppercase;letter-spacing:.3px}.client-balance-grid{background:#f8fafb;border-radius:10px;overflow:hidden}.client-balance-row{display:flex;justify-content:space-between;padding:.6rem 1rem;font-size:.88rem;border-bottom:1px solid #e2e8f0}.client-balance-row:last-child{border-bottom:none}.client-balance-row span:first-child{color:#475569;font-weight:500}.client-balance-row span:last-child{color:#1e293b;font-weight:600;font-family:SF Mono,Fira Code,monospace}.client-balance-row.muted span:first-child{color:#94a3b8}.client-balance-row.muted span:last-child{color:#94a3b8}.client-balance-total{display:flex;justify-content:space-between;padding:.85rem 1rem;background:linear-gradient(135deg,#064e3b,#059669);border-radius:0 0 10px 10px}.client-balance-total span:first-child{color:#a7f3d0;font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.client-balance-total span:last-child{color:#fff;font-weight:800;font-size:1.15rem;font-family:SF Mono,Fira Code,monospace}.client-file-info h4{margin:0 0 .65rem;font-size:.85rem;font-weight:700;color:#92400e;text-transform:uppercase;letter-spacing:.3px}.client-file-card{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fde68a;border-radius:10px;padding:.85rem 1rem}.client-file-row{display:flex;justify-content:space-between;padding:.3rem 0}.client-file-row .client-detail-label{color:#92400e}.client-file-row .client-detail-value{color:#78350f}.client-related h4{margin:0 0 .75rem;font-size:.85rem;font-weight:700;color:#1e293b}.client-related-list{display:flex;flex-direction:column;gap:.4rem}.client-related-item{display:flex;justify-content:space-between;align-items:center;padding:.65rem .85rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;cursor:pointer;transition:all .2s}.client-related-item:hover{background:#f0fdf4;border-color:#a7f3d0}.client-related-item.inactive{opacity:.5}.client-related-name{font-weight:600;font-size:.88rem;color:#1e293b}.client-related-meta{display:flex;align-items:center;gap:1rem;font-size:.8rem}.client-related-meta span:first-child{color:#94a3b8;font-family:SF Mono,Fira Code,monospace;font-size:.75rem}.client-related-balance{font-weight:700;color:#059669}.client-related-balance.zero{color:#94a3b8}.client-show-more{background:none;border:1px dashed #d1fae5;border-radius:8px;padding:.5rem;color:#059669;font-weight:600;font-size:.82rem;cursor:pointer;transition:all .2s;text-align:center}.client-show-more:hover{background:#ecfdf5;border-color:#10b981}.client-related-total{display:flex;justify-content:space-between;margin-top:.75rem;padding:.75rem 1rem;background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border-radius:8px;border:1px solid #a7f3d0}.client-related-total span:first-child{font-weight:700;color:#064e3b;font-size:.88rem}.client-related-total span:last-child{font-weight:800;color:#059669;font-size:1.05rem;font-family:SF Mono,Fira Code,monospace}@media(max-width:768px){.client-portal-search{padding:.85rem 1rem}.client-search-bar{flex-direction:column;padding:.75rem;gap:.5rem}.client-search-icon{display:none}.client-search-input{width:100%}.client-search-btn{width:100%;padding:.75rem}.client-results-layout{flex-direction:column}.client-accounts-list{flex:none!important}.client-detail-panel{border-left:none;border-top:2px solid #d1fae5;max-height:none}.client-welcome h2{font-size:1.3rem}.client-welcome-chips{gap:.35rem}.client-chip{font-size:.75rem;padding:.3rem .75rem}.client-detail-grid{grid-template-columns:1fr}}.database-viewer{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;background:#f5f7fa}.db-header{flex-shrink:0;background:#1e293b;color:#fff;padding:.75rem 1.5rem;border-bottom:1px solid #334155}.db-header .db-title h1{margin:0;font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.db-header .db-title h1 i{color:#00d68f}.db-header .subtitle{margin:.15rem 0 0;color:#fff9;font-size:.8rem}font-size: .95rem; } .db-tabs{display:flex;gap:4px;padding:0 24px;background:linear-gradient(135deg,#1a237e,#3949ab);overflow-x:auto}.db-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#ffffff1a;border:none;border-radius:8px 8px 0 0;color:#ffffffb3;font-size:.9rem;cursor:pointer;transition:all .2s;white-space:nowrap}.db-tab:hover{background:#fff3;color:#fff}.db-tab.active{background:#f8f9fa;color:#1a237e;font-weight:600}.db-tab i{font-size:.85rem}.db-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-bottom:1px solid #e0e0e0;gap:16px;flex-wrap:wrap}.toolbar-left{display:flex;gap:12px;flex:1;min-width:300px}.search-box{display:flex;align-items:center;gap:10px;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:8px;padding:8px 14px;flex:1;max-width:400px}.search-box i{color:#666}.search-box input{border:none;background:none;outline:none;flex:1;font-size:.95rem}.column-select{padding:8px 14px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;font-size:.9rem;cursor:pointer;min-width:150px}.toolbar-right{display:flex;align-items:center;gap:12px}.record-count{color:#666;font-size:.85rem;padding:6px 12px;background:#f0f0f0;border-radius:20px}.btn-columns,.btn-export,.btn-refresh{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;font-size:.85rem;cursor:pointer;transition:all .2s}.btn-columns:hover,.btn-export:hover,.btn-refresh:hover{background:#f5f5f5;border-color:#1a237e;color:#1a237e}.btn-refresh:disabled{opacity:.6;cursor:not-allowed}.column-picker{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin:0 24px 16px;padding:16px;box-shadow:0 4px 12px #0000001a}.column-picker-header{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #eee}.column-picker-header span{font-weight:600;flex:1}.column-picker-header button{padding:6px 12px;border:1px solid #1a237e;border-radius:4px;background:#fff;color:#1a237e;font-size:.8rem;cursor:pointer}.column-picker-header button:hover{background:#1a237e;color:#fff}.column-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;max-height:200px;overflow-y:auto}.column-checkbox{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:4px;cursor:pointer;font-size:.85rem;transition:background .2s}.column-checkbox:hover{background:#f0f0f0}.column-checkbox input{accent-color:#1a237e}.column-checkbox span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-table-container{flex:1;overflow:auto;margin:0 24px 16px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;color:#666;gap:16px}.loading-state i,.empty-state i{font-size:3rem;opacity:.5}.db-table{width:100%;border-collapse:collapse;font-size:.85rem}.db-table thead{position:sticky;top:0;z-index:10}.db-table th{background:#1a237e;color:#fff;padding:12px 14px;text-align:left;font-weight:600;white-space:nowrap;border-right:1px solid rgba(255,255,255,.1)}.db-table th:last-child{border-right:none}.db-table th.row-num,.db-table td.row-num{width:50px;text-align:center;background:#f5f5f5;color:#999;font-size:.8rem}.db-table th.row-num{background:#3949ab}.db-table tbody tr{transition:background .15s}.db-table tbody tr:nth-child(2n){background:#fafafa}.db-table tbody tr:hover{background:#e3f2fd}.db-table td{padding:10px 14px;border-bottom:1px solid #eee;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.load-more{padding:20px;text-align:center;border-top:1px solid #eee}.load-more button{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;background:#1a237e;color:#fff;border:none;border-radius:8px;font-size:.9rem;cursor:pointer;transition:all .2s}.load-more button:hover:not(:disabled){background:#3949ab}.load-more button:disabled{opacity:.7;cursor:not-allowed}.db-footer{display:flex;justify-content:center;gap:32px;padding:12px 24px;background:#fff;border-top:1px solid #e0e0e0}.db-footer .stat{display:flex;align-items:center;gap:8px;color:#666;font-size:.85rem}.db-footer .stat i{color:#1a237e}.db-pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:#fff;border-top:1px solid #e0e0e0;gap:16px;flex-wrap:wrap}.pagination-info{color:#666;font-size:.85rem;min-width:180px}.pagination-controls{display:flex;align-items:center;gap:4px}.page-btn{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 10px;border:1px solid #e0e0e0;border-radius:6px;background:#fff;color:#333;font-size:.85rem;cursor:pointer;transition:all .15s}.page-btn:hover:not(:disabled){background:#f5f5f5;border-color:#1a237e;color:#1a237e}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-btn.active{background:#1a237e;border-color:#1a237e;color:#fff;font-weight:600}.page-ellipsis{padding:0 8px;color:#999}.pagination-jump{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#666}.pagination-jump input{width:60px;padding:6px 10px;border:1px solid #e0e0e0;border-radius:6px;font-size:.85rem;text-align:center;background:#fff;color:#333}.pagination-jump input:focus{outline:none;border-color:#1a237e;color:#333}@media(max-width:768px){.db-header{padding:16px}.db-toolbar{padding:12px 16px}.toolbar-left{min-width:100%}.toolbar-right{width:100%;justify-content:flex-end}.db-table-container{margin:0 12px 12px}.db-tabs{padding:0 12px}.db-tab{padding:10px 14px;font-size:.8rem}.db-footer{flex-wrap:wrap;gap:16px}.db-pagination{flex-direction:column;gap:12px;padding:12px 16px}.pagination-info{text-align:center;width:100%}.pagination-controls{flex-wrap:wrap;justify-content:center}}.account-upload-container{max-width:1000px;margin:0 auto;padding:2rem}.upload-header{text-align:center;margin-bottom:3rem}.upload-header h2{font-size:2rem;margin-bottom:.5rem;color:#1a1a1a}.tie-series-section{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);padding:1.5rem;border-radius:12px;border:2px solid #9c27b0;margin-bottom:2rem}.tie-series-section h3{margin:0 0 .5rem;color:#7b1fa2;font-size:1.3rem}.tie-series-section .muted{margin-bottom:1rem}.tie-series-upload{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.btn-import-tie-series{background:linear-gradient(135deg,#7b1fa2,#9c27b0);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-import-tie-series:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #7b1fa24d}.btn-import-tie-series:disabled{opacity:.5;cursor:not-allowed}.upload-steps{display:flex;flex-direction:column;gap:2rem;margin-bottom:3rem}.upload-step{display:flex;gap:1.5rem;align-items:flex-start}.step-number{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#1976d2;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem}.step-content{flex:1;background:#fff;padding:1.5rem;border-radius:12px;border:2px solid #e0e0e0}.step-content h3{margin:0 0 1rem;color:#1a1a1a;font-size:1.2rem}.file-input{display:block;width:100%;padding:.75rem;border:2px dashed #1976d2;border-radius:8px;cursor:pointer;background:#f5f9ff}.file-input:hover{background:#e3f2fd}.file-info{display:flex;align-items:center;gap:.75rem;margin-top:1rem;padding:1rem;background:#e8f5e9;border-radius:8px;border:1px solid #4caf50}.file-info i{color:#4caf50;font-size:1.5rem}.file-size{color:#666;font-size:.9rem}.btn-parse,.btn-upload{padding:1rem 2rem;border:none;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease}.btn-parse{background:#1976d2;color:#fff}.btn-parse:hover:not(:disabled){background:#1565c0;transform:translateY(-2px);box-shadow:0 4px 12px #1976d24d}.btn-upload{background:#4caf50;color:#fff}.btn-upload:hover:not(:disabled){background:#388e3c;transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.btn-parse:disabled,.btn-upload:disabled{background:#ccc;cursor:not-allowed;transform:none}.parse-results{margin-top:1rem}.parse-results .success{color:#2e7d32;font-weight:600;margin-bottom:1rem}.sample-preview{background:#f9f9f9;padding:1rem;border-radius:8px;border:1px solid #e0e0e0}.sample-preview strong{display:block;margin-bottom:.75rem;color:#666}.sample-account{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#fff;border-radius:6px;margin-bottom:.5rem;border:1px solid #e0e0e0}.debtor-name{font-weight:600;color:#1a1a1a;flex:2}.client-code{font-family:Courier New,monospace;color:#666;flex:1}.balance{font-weight:700;color:#c62828;flex:1;text-align:right}.progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-top:1rem}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);transition:width .3s ease}.errors-section{background:#ffebee;padding:1.5rem;border-radius:12px;border:2px solid #ef5350;margin-bottom:2rem}.errors-section h3{margin:0 0 1rem;color:#c62828}.error-list{max-height:300px;overflow-y:auto}.error-item{padding:.5rem 0;border-bottom:1px solid #ffcdd2;color:#c62828;font-size:.9rem}.error-item:last-child{border-bottom:none}.error-item.muted{color:#666;font-style:italic}.upload-instructions{background:#f5f5f5;padding:2rem;border-radius:12px;border:1px solid #e0e0e0}.upload-instructions h3{margin:0 0 1rem;color:#1a1a1a}.upload-instructions ul{margin:0;padding-left:1.5rem}.upload-instructions li{margin-bottom:.75rem;line-height:1.6;color:#555}.upload-instructions strong{color:#1a1a1a}@media(max-width:768px){.upload-step{flex-direction:column}.sample-account{flex-direction:column;align-items:flex-start;gap:.5rem}.balance{text-align:left}}.workcard-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:999999!important;padding:20px}.workcard-modal{background:#fff;border-radius:12px;width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d;position:relative}.workcard-header{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:24px 30px!important;background:linear-gradient(135deg,#667eea,#764ba2)!important;color:#fff!important;border-radius:12px 12px 0 0!important}.workcard-header-left{display:flex;align-items:center;gap:15px}.workcard-header h2{margin:0!important;font-size:24px!important;font-weight:600!important}.account-type-indicator{display:inline-block;padding:6px 12px;border-radius:15px;font-weight:600;font-size:12px;white-space:nowrap}.account-type-indicator.header{background:#ffc107;color:#000}.account-type-indicator.trailer{background:#28a745;color:#fff}.account-type-indicator.orphan{background:#dc3545;color:#fff}.workcard-close{background:#fff3;border:none;color:#fff;font-size:18px;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:600}.workcard-close:hover{background:#ffffff4d;filter:brightness(.95)}.workcard-content{padding:30px;overflow-y:auto;flex:1}.workcard-section{background:#f8f9fa;border-radius:8px;padding:20px;margin-bottom:20px}.workcard-section h3{margin:0 0 16px;color:#333;font-size:18px;font-weight:600}.workcard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.workcard-field{display:flex;justify-content:space-between;align-items:baseline;padding:10px 0;border-bottom:1px solid #e0e0e0}.workcard-field:last-child{border-bottom:none}.workcard-field label{font-weight:600;color:#555;font-size:13px}.workcard-field span{color:#333;font-size:14px;text-align:right}.workcard-field.highlight{background:#fff3e0;padding:12px;border-radius:6px;border-bottom:none}.workcard-field .amount{font-weight:600;color:#2e7d32}.workcard-field .amount.danger{color:#c62828}.status-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;background:#e3f2fd;color:#1976d2}.header-metrics{background:#fff3cd!important;border:2px solid #ffc107}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.metric-box{text-align:center}.metric-icon{font-size:24px;margin-bottom:8px}.metric-value{font-size:18px;font-weight:700;color:#333;margin-bottom:4px}.metric-label{font-size:11px;color:#666;text-transform:uppercase}.header-info-section h3{color:#28a745}.header-info-card{background:#d4edda;border:2px solid #28a745;border-radius:8px;padding:15px}.header-info-card.clickable:hover{background:#c3e6cb;box-shadow:0 4px 12px #28a74533}.header-info-number{font-size:16px;font-weight:700;color:#155724;margin-bottom:5px}.header-info-name{font-size:14px;color:#155724;margin-bottom:3px}.header-info-client,.header-info-status{font-size:12px;color:#155724;opacity:.9}.trailers-list{display:flex;flex-direction:column;gap:10px}.trailer-card{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:15px}.trailer-card.clickable{cursor:pointer;transition:filter .1s ease}.trailer-card.clickable:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:none!important;filter:brightness(.98)}.trailer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.trailer-number{font-weight:700;color:#333;font-size:13px}.trailer-status{font-size:11px;color:#666}.trailer-balance{font-weight:700;color:#28a745;font-size:13px}.trailer-financials{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 20px;margin-top:10px}.trailer-metric{display:flex;justify-content:space-between;font-size:11px}.trailer-metric.highlight{font-weight:700;font-size:12px;border-top:1px solid #e0e0e0;padding-top:8px;margin-top:4px;grid-column:1 / -1}.trailer-metric-label{color:#666}.trailer-metric-value{color:#333;font-weight:500}.trailer-card.small .trailer-header{margin-bottom:0}.expand-btn{width:100%;padding:12px;background:#667eea;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;margin-top:10px}.expand-btn:hover{filter:brightness(.95)}.clickable{cursor:pointer!important}.workcard-loading{padding:60px;text-align:center;font-size:16px;color:#666}@media(max-width:768px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.trailer-financials{grid-template-columns:1fr}}.worklist-page{display:flex;flex-direction:column;flex:1;min-height:0;padding:0;overflow:hidden}.worklist-page h1{display:none}.worklist-overlay{background:transparent;display:flex;flex-direction:column;height:100%}.worklist-container{background:#fff;border-radius:0;width:100%;max-width:100%;margin:0;height:100%;display:flex;flex-direction:column;box-shadow:none;position:relative}.worklist-header{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px 12px 0 0;z-index:999;position:relative}.worklist-header-left{display:flex;align-items:center;gap:20px}.worklist-header h2{margin:0;font-size:24px;font-weight:600}.worklist-load-controls{display:flex;gap:10px}.worklist-select{padding:8px 12px;border-radius:6px;border:none;background:#fff;color:#333;font-size:13px;min-width:260px;cursor:pointer}.load-btn{padding:8px 20px;background:#fff;color:#667eea;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:13px}.load-btn:hover{filter:brightness(.95)}.worklist-close{padding:8px 16px;background:#fff3;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:14px}.worklist-close:hover{background:#ffffff4d}.worklist-main{display:flex;flex:1;overflow:hidden}.worklist-filters{width:350px;background:#f8f9fa;border-right:1px solid #dee2e6;display:flex;flex-direction:column;overflow:hidden}.worklist-filters h3{margin:0;padding:20px;font-size:18px;font-weight:600;color:#333;background:#fff;border-bottom:1px solid #dee2e6}.filters-scroll{flex:1;overflow-y:auto;padding:15px}.filter-section{background:#fff;border-radius:8px;margin-bottom:10px;overflow:hidden}.filter-header{background:#e7f0ff;padding:10px 15px;font-weight:600;font-size:13px;color:#333}.filter-content{padding:10px}.radio-label,.checkbox-label{display:flex;align-items:center;gap:8px;padding:5px 10px;font-size:12px;cursor:pointer}.checkbox-label.exclude{color:#dc3545}.radio-label:hover,.checkbox-label:hover{background:#f8f9fa;border-radius:4px}.client-selection{margin-top:10px;border:1px solid #dee2e6;border-radius:6px;padding:10px;background:#fafafa}.search-input{width:100%;padding:8px;border:1px solid #ced4da;border-radius:4px;font-size:12px;margin-bottom:10px}.checkbox-list{max-height:200px;overflow-y:auto;background:#fff;border:1px solid #dee2e6;border-radius:4px;padding:5px}.divider{height:2px;background:#dee2e6;margin:10px 0}.apply-filters-btn{margin:15px 20px;padding:12px;background:#28a745;color:#fff;border:none;border-radius:6px;font-weight:600;font-size:14px;cursor:pointer}.apply-filters-btn:hover{filter:brightness(.95)}.apply-filters-btn:disabled{background:#6c757d;cursor:not-allowed}.worklist-accounts{flex:1;display:flex;flex-direction:column;overflow:hidden}.accounts-header{padding:20px;background:#fff;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;align-items:center}.counts{display:flex;gap:20px}.count-item{font-size:13px;color:#666;font-weight:500}.count-item.total{font-size:14px;font-weight:600;color:#333}.actions{display:flex;gap:10px}.action-btn{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;font-weight:600;font-size:13px;cursor:pointer}.action-btn:hover{filter:brightness(.95)}.action-btn.success{background:#28a745}.accounts-list{flex:1;overflow-y:auto;background:#f8f9fa}.no-accounts{padding:60px 20px;text-align:center;color:#666;font-style:italic}.account-row{display:grid;grid-template-columns:40px 120px 2fr 100px 80px 80px 100px 60px;gap:10px;padding:12px 20px;background:#fff;border-bottom:1px solid #e0e0e0;align-items:center;font-size:12px}.account-row.header-row{background:#f8f9fa;font-weight:600;color:#333;position:sticky;top:0;z-index:10;border-bottom:2px solid #dee2e6}.account-row:hover:not(.header-row){background:#f0f8ff}.account-number.clickable{color:#667eea;cursor:pointer;font-weight:600}.account-number.clickable:hover{text-decoration:underline}.balance{text-align:right;font-weight:500}.type-badge{text-align:center;font-size:16px}.type-badge.header{color:#ffc107}.type-badge.trailer{color:#28a745}@media(max-width:1200px){.worklist-filters{width:300px}.account-row{grid-template-columns:40px 100px 2fr 80px 70px 70px 90px 50px;font-size:11px}}@media(max-width:900px){.worklist-container{max-width:95vw}.worklist-main{flex-direction:column}.worklist-filters{width:100%;max-height:40vh;border-right:none;border-bottom:1px solid #dee2e6}}.workcard-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000000;padding:20px}.workcard-container{background:#fff;border-radius:12px;max-width:1200px;width:95%;max-height:90vh;overflow:auto;position:relative;box-shadow:0 10px 40px #0000004d}.workcard-close{position:absolute;top:10px;right:10px;padding:8px 16px;background:#dc3545;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;z-index:10}.workcard-close:hover{background:#c82333}.sop-overlay{position:fixed;inset:0;z-index:99999;background:#020617d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;animation:sopFadeIn .3s ease}@keyframes sopFadeIn{0%{opacity:0}to{opacity:1}}.sop-drawer{width:min(820px,94vw);max-height:90vh;background:linear-gradient(145deg,#0f172a,#1e293b);border:1px solid rgba(56,189,248,.15);border-radius:20px;box-shadow:0 0 0 1px #38bdf814,0 24px 80px #0009,0 0 120px #38bdf80d;display:flex;flex-direction:column;overflow:hidden;animation:sopSlideUp .35s cubic-bezier(.16,1,.3,1)}@keyframes sopSlideUp{0%{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.sop-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px 20px;border-bottom:1px solid rgba(56,189,248,.1);background:linear-gradient(135deg,#38bdf80f,#8b5cf60a)}.sop-header-left{display:flex;align-items:center;gap:16px}.sop-icon-ring{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#38bdf8,#818cf8);display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;box-shadow:0 4px 16px #38bdf840}.sop-title{margin:0;font-size:1.25rem;font-weight:700;color:#f1f5f9;letter-spacing:-.3px}.sop-subtitle{font-size:.82rem;color:#64748b;margin-top:2px;display:block}.sop-admin-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;font-size:.75rem;font-weight:600;color:#fbbf24;background:#fbbf241a;border:1px solid rgba(251,191,36,.2);border-radius:8px}.sop-body{flex:1;overflow-y:auto;padding:24px 28px}.sop-body::-webkit-scrollbar{width:6px}.sop-body::-webkit-scrollbar-thumb{background:#64748b4d;border-radius:3px}.sop-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 0;color:#64748b;font-size:.95rem}.sop-spinner{width:32px;height:32px;border:3px solid rgba(56,189,248,.15);border-top-color:#38bdf8;border-radius:50%;animation:sopSpin .8s linear infinite}@keyframes sopSpin{to{transform:rotate(360deg)}}.sop-empty{text-align:center;padding:50px 20px;color:#475569}.sop-empty i{font-size:3rem;margin-bottom:16px;color:#334155}.sop-empty h3{font-size:1.1rem;color:#94a3b8;margin:0 0 8px}.sop-empty p{font-size:.9rem;margin:0}.sop-section{background:#1e293b99;border:1px solid rgba(71,85,105,.25);border-radius:14px;padding:0;margin-bottom:16px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.sop-section:hover{border-color:#38bdf833;box-shadow:0 2px 12px #38bdf80d}.sop-section-header{display:flex;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid rgba(71,85,105,.15);background:#0f172a66}.sop-section-number{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,#38bdf8,#6366f1);color:#fff;font-size:.85rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sop-section-title{margin:0;flex:1;font-size:1rem;font-weight:600;color:#e2e8f0}.sop-section-controls{display:flex;gap:4px}.sop-ctrl-btn{background:none;border:1px solid rgba(71,85,105,.3);color:#64748b;width:30px;height:30px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.7rem;cursor:pointer;transition:all .15s}.sop-ctrl-btn:hover{color:#38bdf8;border-color:#38bdf866;background:#38bdf80d}.sop-ctrl-delete:hover{color:#f87171!important;border-color:#f8717166!important;background:#f871710d!important}.sop-section-body{padding:16px 20px;color:#cbd5e1;font-size:.92rem;line-height:1.7}.sop-section-body p{margin:0 0 6px}.sop-section-body p:last-child{margin-bottom:0}.sop-edit-form{padding:20px}.sop-edit-title{width:100%;padding:10px 14px;background:#0f172ab3;border:1px solid rgba(71,85,105,.4);border-radius:10px;color:#f1f5f9;font-size:1rem;font-weight:600;margin-bottom:12px;box-sizing:border-box;outline:none;transition:border-color .2s}.sop-edit-title:focus{border-color:#38bdf8}.sop-edit-body{width:100%;padding:12px 14px;background:#0f172ab3;border:1px solid rgba(71,85,105,.4);border-radius:10px;color:#cbd5e1;font-size:.92rem;line-height:1.6;resize:vertical;min-height:120px;font-family:inherit;box-sizing:border-box;outline:none;transition:border-color .2s}.sop-edit-body:focus{border-color:#38bdf8}.sop-edit-actions{display:flex;gap:8px;margin-top:12px}.sop-btn{padding:8px 18px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;border:none;display:inline-flex;align-items:center;gap:6px;transition:all .2s}.sop-btn-save{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:0 2px 8px #22c55e4d}.sop-btn-save:hover{transform:translateY(-1px);box-shadow:0 4px 14px #22c55e66}.sop-btn-save:disabled{opacity:.5;cursor:not-allowed;transform:none}.sop-btn-cancel{background:#4755694d;color:#94a3b8;border:1px solid rgba(71,85,105,.4)}.sop-btn-cancel:hover{color:#e2e8f0;border-color:#64748b80}.sop-add-area{margin-top:8px}.sop-add-btn{width:100%;padding:16px;background:none;border:2px dashed rgba(56,189,248,.2);border-radius:14px;color:#38bdf8;font-size:.95rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.sop-add-btn:hover{background:#38bdf80a;border-color:#38bdf859}.sop-add-form{border:2px solid rgba(56,189,248,.2);border-radius:14px;background:#0f172a80}.sop-footer{padding:18px 28px 22px;border-top:1px solid rgba(56,189,248,.1);background:#0f172a99;display:flex;flex-direction:column;align-items:center;gap:16px}.sop-ack-row{display:flex;align-items:center}.sop-checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.9rem;color:#94a3b8;-webkit-user-select:none;user-select:none}.sop-checkbox-label input[type=checkbox]{display:none}.sop-checkmark{width:20px;height:20px;border-radius:6px;border:2px solid rgba(71,85,105,.5);background:#0f172a99;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.sop-checkbox-label input[type=checkbox]:checked+.sop-checkmark{background:linear-gradient(135deg,#38bdf8,#6366f1);border-color:transparent}.sop-checkbox-label input[type=checkbox]:checked+.sop-checkmark:after{content:"✓";color:#fff;font-size:13px;font-weight:700}.sop-close-btn{width:100%;max-width:340px;padding:14px 24px;border-radius:12px;border:none;font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .25s;color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 20px #22c55e59;letter-spacing:.3px}.sop-close-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 32px #22c55e73}.sop-close-btn:disabled{background:#4755694d;color:#475569;box-shadow:none;cursor:not-allowed}@media(max-width:640px){.sop-drawer{width:100vw;max-height:100vh;border-radius:0}.sop-header,.sop-body{padding:16px 18px}.sop-footer{padding:14px 18px}.sop-icon-ring{width:40px;height:40px;font-size:17px;border-radius:10px}.sop-title{font-size:1.05rem}}.payment-receipt-page{--pr-primary: #1a73e8;--pr-primary-dark: #1557b0;--pr-primary-light: #e8f0fe;--pr-success: #1e8e3e;--pr-success-dark: #137333;--pr-success-light: #e6f4ea;--pr-danger: #d93025;--pr-danger-light: #fce8e6;--pr-warning: #f9ab00;--pr-warning-light: #fef7e0;--pr-purple: #7c3aed;--pr-purple-light: #f3e8ff;--pr-orange: #ea580c;--pr-orange-light: #fff7ed;--pr-surface: #ffffff;--pr-surface-hover: #f8fafc;--pr-bg: #f1f3f5;--pr-border: #e2e8f0;--pr-border-focus: #1a73e8;--pr-text: #1e293b;--pr-text-secondary: #64748b;--pr-text-muted: #94a3b8;--pr-radius-sm: 6px;--pr-radius: 10px;--pr-radius-lg: 14px;--pr-radius-xl: 18px;--pr-shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--pr-shadow: 0 4px 16px rgba(0,0,0,.06), 0 1px 3px rgba(0,0,0,.04);--pr-shadow-lg: 0 12px 40px rgba(0,0,0,.08), 0 4px 12px rgba(0,0,0,.04);--pr-shadow-focus: 0 0 0 3px rgba(26,115,232,.15);--pr-transition: .2s cubic-bezier(.4, 0, .2, 1)}.payment-receipt-page{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--pr-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.batch-content-scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:0;display:flex;flex-direction:column;min-height:0}.payment-receipt-page>.page-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background:#1e293b;color:#fff;margin-bottom:0;flex-shrink:0;border-bottom:1px solid #334155}.header-content h2,.header-left h2{margin:0;font-size:1.35rem;font-weight:700;letter-spacing:-.025em;color:#fff;display:flex;align-items:center;gap:.5rem}.header-content .subtitle{margin:.2rem 0 0;opacity:.7;font-size:.85rem;font-weight:400}.header-left{display:flex;align-items:center;gap:.75rem}.header-actions{display:flex;align-items:center;gap:.5rem}.close-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#fff;font-size:1.5rem;width:38px;height:38px;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--pr-transition)}.close-btn:hover{background:#ffffff26;border-color:#fff3;transform:scale(1.05)}.btn-history{padding:.45rem .85rem;background:#ffffff14;color:#ffffffe6;border:1px solid rgba(255,255,255,.12);border-radius:8px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all var(--pr-transition);white-space:nowrap}.btn-history:hover{background:#ffffff26;color:#fff;border-color:#ffffff40}.btn-revalidate{padding:.45rem .85rem;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all var(--pr-transition);white-space:nowrap}.btn-revalidate:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d}.btn-revalidate:disabled{opacity:.4;cursor:not-allowed}.btn-new-batch{padding:.45rem .85rem;background:#fffffff2;color:#1e293b;border:none;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all var(--pr-transition);white-space:nowrap}.btn-new-batch:hover{background:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.auto-save-status{font-size:.75rem;padding:.3rem .65rem;border-radius:20px;font-weight:500;letter-spacing:-.01em;white-space:nowrap}.auto-save-status.saving{background:#ffffff1f;color:#ffffffd9}.auto-save-status.saved{background:#1e8e3e40;color:#86efac}.auto-save-status.error{background:#d930254d;color:#fca5a5}.batch-landing-page{display:grid;grid-template-columns:1fr 380px;gap:1.5rem;padding:1.5rem;min-height:480px;max-width:1200px;margin:0 auto}.batch-landing-left,.batch-landing-right{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 1px 4px #0000000d;border:1px solid #e2e8f0}.batch-panel-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.batch-panel-header .panel-icon{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#1e293b,#475569);display:flex;align-items:center;justify-content:center;font-size:1rem}.batch-panel-header h3{font-size:1.15rem;font-weight:700;color:#1e293b;margin:0;letter-spacing:-.02em}.panel-subtitle{color:#64748b;font-size:.85rem;margin:0 0 1.25rem}.batch-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.batch-type-btn{display:flex;flex-direction:column;align-items:center;padding:1rem .75rem;background:var(--btn-bg);border:1.5px solid var(--btn-border);border-radius:12px;cursor:pointer;transition:all .2s ease;position:relative}.batch-type-btn:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0000001a;border-color:var(--btn-color)}.batch-type-btn .type-icon{font-size:1.5rem;margin-bottom:.4rem}.batch-type-btn .type-label{font-weight:700;font-size:.85rem;letter-spacing:-.01em}.batch-type-btn .type-desc{font-size:.68rem;color:#64748b;margin-top:.15rem}.btn-back-to-batches{padding:.45rem .85rem;background:#ffffff14;color:#ffffffe6;border:1px solid rgba(255,255,255,.12);border-radius:8px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all var(--pr-transition);white-space:nowrap}.btn-back-to-batches:hover{background:#ffffff26;color:#fff;border-color:#ffffff40}.batch-filter-toggle{display:flex;margin-left:auto;background:#f1f5f9;border-radius:8px;padding:2px}.batch-filter-toggle button{padding:.35rem .75rem;border:none;background:transparent;font-size:.75rem;font-weight:600;color:#64748b;border-radius:6px;cursor:pointer;transition:all .15s ease}.batch-filter-toggle button.active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #00000014}.saved-batches-list{max-height:400px;overflow-y:auto;margin-top:1rem}.no-batches-msg{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;text-align:center}.no-batches-msg .empty-icon{font-size:2rem;opacity:.5;margin-bottom:.5rem}.no-batches-msg p{margin:0;font-weight:600;color:#64748b}.no-batches-msg .empty-hint{font-size:.8rem;color:#94a3b8;margin-top:.25rem}.batch-group{margin-bottom:1rem}.batch-group-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.5rem 0;margin:0;border-bottom:1px solid #e2e8f0}.batch-group-title.draft{color:#ea580c}.batch-group-title.completed{color:#16a34a}.saved-batch-item{display:flex;align-items:center;gap:.75rem;padding:.65rem .5rem;border-radius:8px;transition:background .15s ease}.saved-batch-item:hover{background:#f8fafc}.saved-batch-item.current{background:#eff6ff;border:1px solid #bfdbfe}.saved-batch-item.locked{opacity:.6}.batch-item-main{flex:1;min-width:0}.batch-item-top{display:flex;align-items:center;gap:.5rem;margin-bottom:.2rem}.batch-rpt{font-size:.7rem;font-weight:700;color:#6366f1;background:#eef2ff;padding:.15rem .4rem;border-radius:4px}.batch-mode-badge{font-size:.85rem}.batch-date{font-size:.72rem;color:#94a3b8}.lock-badge{font-size:.7rem}.batch-item-details{display:flex;gap:.75rem;font-size:.75rem;color:#64748b}.batch-amount{font-weight:600;color:#1e293b}.batch-item-actions{display:flex;gap:.35rem}.btn-batch-load,.btn-batch-complete,.btn-batch-delete{width:28px;height:28px;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.75rem;transition:all .15s ease}.btn-batch-load{background:#1e293b;color:#fff}.btn-batch-load:hover{background:#0f172a}.btn-batch-complete{background:#dcfce7;color:#16a34a}.btn-batch-complete:hover{background:#bbf7d0}.btn-batch-delete{background:#fee2e2;color:#dc2626}.btn-batch-delete:hover{background:#fecaca}.locked-by{font-size:.7rem;color:#94a3b8;font-style:italic}.receipt-content{padding:1.5rem 2rem;max-width:1400px;margin:0 auto}.alert{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.15rem;border-radius:var(--pr-radius);margin-bottom:1rem;font-weight:500;font-size:.9rem;border:1px solid transparent}.alert button{margin-left:auto;background:none;border:none;font-size:1.1rem;cursor:pointer;opacity:.6;transition:opacity var(--pr-transition)}.alert button:hover{opacity:1}.alert-error{background:var(--pr-danger-light);color:var(--pr-danger);border-color:#fecdd3}.alert-success{background:var(--pr-success-light);color:var(--pr-success);border-color:#bbf7d0}.search-section,.form-section,.entries-section{background:var(--pr-surface);border-radius:var(--pr-radius-lg);padding:1.5rem;margin-bottom:1rem;box-shadow:var(--pr-shadow-sm);border:1px solid var(--pr-border);transition:box-shadow var(--pr-transition)}.search-section:hover,.form-section:hover{box-shadow:var(--pr-shadow)}.search-section h3,.form-section h3,.entries-section h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--pr-text);display:flex;align-items:center;gap:.5rem;letter-spacing:-.01em}.lookup-section{background:var(--pr-surface);border-radius:var(--pr-radius-lg);padding:1rem 1.25rem;margin-bottom:1rem;box-shadow:var(--pr-shadow-sm);border:1px solid var(--pr-border)}.lookup-section label{font-weight:600;font-size:.85rem;color:var(--pr-text);letter-spacing:-.01em}.lookup-input{width:100%;padding:.75rem 1rem;border:2px solid var(--pr-border);border-radius:var(--pr-radius);font-size:.95rem;transition:all var(--pr-transition);background:var(--pr-surface);color:var(--pr-text);margin-top:.4rem;box-sizing:border-box}.lookup-input:focus{outline:none;border-color:var(--pr-primary);box-shadow:var(--pr-shadow-focus)}.lookup-input::placeholder{color:var(--pr-text-muted)}.search-row{display:flex;gap:.75rem}.search-input{flex:1;padding:.75rem 1rem;border:2px solid var(--pr-border);border-radius:var(--pr-radius);font-size:.95rem;transition:all var(--pr-transition);color:var(--pr-text)}.search-input:focus{outline:none;border-color:var(--pr-primary);box-shadow:var(--pr-shadow-focus)}.btn-search{padding:.75rem 1.5rem;background:var(--pr-primary);color:#fff;border:none;border-radius:var(--pr-radius);font-weight:600;cursor:pointer;transition:all var(--pr-transition);white-space:nowrap}.btn-search:hover:not(:disabled){background:var(--pr-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #1a73e840}.btn-search:disabled{background:#cbd5e1;cursor:not-allowed}.mini-workcard{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #86efac;border-radius:var(--pr-radius);padding:.85rem 1rem;margin-top:.75rem;margin-bottom:.75rem}.mini-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem;flex-wrap:wrap}.mini-row:last-child{margin-bottom:0}.mini-label{font-weight:600;color:var(--pr-success-dark);font-size:.8rem;min-width:fit-content;text-transform:uppercase;letter-spacing:.02em}.mini-value{color:#166534;font-size:.9rem;margin-right:1.25rem}.mini-row:first-child .mini-value{font-weight:700;font-size:.95rem;color:#14532d}.search-results{margin-top:.75rem;border:1px solid var(--pr-border);border-radius:var(--pr-radius);max-height:300px;overflow-y:auto;background:var(--pr-surface);box-shadow:var(--pr-shadow)}.results-count{padding:.5rem 1rem;margin:0;background:#f8fafc;font-size:.8rem;color:var(--pr-text-secondary);border-bottom:1px solid var(--pr-border);font-weight:500}.result-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:all var(--pr-transition)}.result-item:last-child{border-bottom:none}.result-item:hover{background:var(--pr-primary-light)}.result-main{display:flex;gap:1rem;align-items:center}.account-number{font-weight:700;color:var(--pr-primary);min-width:100px;font-family:SF Mono,Cascadia Code,Consolas,monospace;font-size:.85rem}.account-name{color:var(--pr-text)}.result-details{display:flex;gap:1rem;align-items:center}.account-balance{font-weight:600;color:var(--pr-success);font-family:SF Mono,Cascadia Code,Consolas,monospace}.account-status{font-size:.7rem;padding:.2rem .5rem;border-radius:20px;text-transform:uppercase;font-weight:700;letter-spacing:.04em}.status-active{background:var(--pr-success-light);color:var(--pr-success)}.status-closed{background:#f1f5f9;color:#64748b}.selected-account{display:flex;align-items:center;justify-content:space-between;margin-top:.75rem;padding:.85rem 1rem;background:linear-gradient(135deg,var(--pr-primary-light) 0%,#dbeafe 100%);border:1px solid #93c5fd;border-radius:var(--pr-radius)}.account-badge{display:flex;align-items:center;gap:.85rem}.badge-icon{width:36px;height:36px;background:var(--pr-primary);color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem}.badge-content{display:flex;flex-direction:column}.badge-content strong{font-size:1rem;color:var(--pr-primary)}.badge-content span{color:var(--pr-text-secondary);font-size:.85rem}.badge-balance{font-size:1.15rem;font-weight:700;color:var(--pr-success);margin-left:1rem;font-family:SF Mono,Cascadia Code,Consolas,monospace}.btn-clear{padding:.4rem .85rem;background:var(--pr-surface);color:var(--pr-text-secondary);border:1px solid var(--pr-border);border-radius:var(--pr-radius-sm);font-weight:500;font-size:.85rem;cursor:pointer;transition:all var(--pr-transition)}.btn-clear:hover{background:var(--pr-danger-light);color:var(--pr-danger);border-color:#fecdd3}.entry-form{background:var(--pr-surface);border-radius:var(--pr-radius-lg);padding:1rem 1.25rem;margin-bottom:1rem;box-shadow:var(--pr-shadow-sm);border:1px solid var(--pr-border)}.payment-receipt-page .form-row{display:grid;grid-template-columns:130px 130px 1fr 110px 120px 120px auto;gap:.65rem;align-items:end}.payment-receipt-page .form-field{display:flex;flex-direction:column;gap:.3rem}.payment-receipt-page .form-field label{font-size:.7rem;font-weight:600;color:var(--pr-text-secondary);text-transform:uppercase;letter-spacing:.05em}.payment-receipt-page .form-field input,.payment-receipt-page .form-field select{padding:.55rem .75rem;border:2px solid var(--pr-border);border-radius:var(--pr-radius-sm);font-size:.9rem;transition:all var(--pr-transition);background:var(--pr-surface);color:var(--pr-text);width:100%;box-sizing:border-box}.payment-receipt-page .form-field input:focus,.payment-receipt-page .form-field select:focus{outline:none;border-color:var(--pr-primary);box-shadow:var(--pr-shadow-focus)}.payment-receipt-page .form-field input::placeholder{color:var(--pr-text-muted);font-weight:400}.payment-receipt-page .form-field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;padding-right:2rem}.payment-receipt-page .form-field select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231a73e8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-group label{font-weight:600;font-size:.75rem;color:var(--pr-text-secondary);margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.04em}.form-group input,.form-group select{padding:.65rem .85rem;border:2px solid var(--pr-border);border-radius:var(--pr-radius-sm);font-size:.9rem;transition:all var(--pr-transition);color:var(--pr-text)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--pr-primary);box-shadow:var(--pr-shadow-focus)}.form-group input:disabled,.form-group select:disabled{background:#f8fafc;cursor:not-allowed;opacity:.6}.amount-input{font-weight:600;font-size:1rem!important;text-align:right;font-family:SF Mono,Cascadia Code,Consolas,monospace}.form-actions{display:flex;gap:.65rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--pr-border)}.form-actions-field{display:flex;flex-direction:column;justify-content:flex-end}.form-buttons{display:flex;gap:.5rem}.btn-add{padding:.65rem 1.25rem;background:var(--pr-primary);color:#fff;border:none;border-radius:var(--pr-radius);font-weight:600;font-size:.95rem;cursor:pointer;transition:all var(--pr-transition)}.btn-add:hover:not(:disabled){background:var(--pr-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #1a73e840}.btn-add:disabled{background:#cbd5e1;cursor:not-allowed}.btn-cancel{padding:.65rem 1.25rem;background:var(--pr-surface);color:var(--pr-danger);border:1px solid var(--pr-danger);border-radius:var(--pr-radius);font-weight:600;cursor:pointer;transition:all var(--pr-transition)}.btn-cancel:hover{background:var(--pr-danger);color:#fff}.btn-add-entry{padding:.55rem 1rem;background:var(--pr-primary);color:#fff;border:none;border-radius:var(--pr-radius-sm);font-weight:600;font-size:.85rem;cursor:pointer;transition:all var(--pr-transition);white-space:nowrap}.btn-add-entry:hover{background:var(--pr-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #1a73e840}.btn-add-entry.editing{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.btn-add-entry.editing:hover{filter:brightness(1.08)}.btn-cancel-edit{padding:.55rem 1rem;background:#64748b;color:#fff;border:none;border-radius:var(--pr-radius-sm);font-weight:600;font-size:.85rem;cursor:pointer;transition:all var(--pr-transition);white-space:nowrap}.btn-cancel-edit:hover{background:#475569}.editing-indicator{background:var(--pr-warning-light);border:1px solid #fde68a;border-radius:var(--pr-radius-sm);padding:.65rem 1rem;margin-top:.75rem;color:#92400e;font-weight:500;font-size:.85rem;display:flex;align-items:center;gap:.5rem}.entries-panel{display:flex;flex-direction:column;flex:1;min-height:0;margin-top:.75rem}.entries-list{margin:0;border:1px solid var(--pr-border);border-radius:var(--pr-radius-lg) var(--pr-radius-lg) 0 0;overflow-y:auto;flex:1;min-height:120px;background:var(--pr-surface);box-shadow:var(--pr-shadow-sm)}.entries-header{display:grid;grid-template-columns:26px 24px 1fr .7fr .7fr 1fr .7fr .7fr .8fr 30px;gap:10px;padding:.65rem 1rem;background:linear-gradient(135deg,#0f172a,#1e293b);color:#ffffffe6;font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;position:sticky;top:0;z-index:2}.entry-row{display:grid;grid-template-columns:26px 24px 1fr .7fr .7fr 1fr .7fr .7fr .8fr 30px;gap:10px;padding:.65rem 1rem;border-bottom:1px solid #f1f5f9;align-items:center;transition:all var(--pr-transition);cursor:pointer}.entry-row:last-child{border-bottom:none}.entry-row:hover{background:#f8fafc}.entry-row.editing{background:var(--pr-warning-light);border-left:3px solid var(--pr-warning);cursor:default}.entry-row.expanded{background:#f0f4ff;border-bottom:none}.entry-expanded-panel{animation:slideDown .2s cubic-bezier(.4,0,.2,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.entry-row span{font-size:.85rem;color:var(--pr-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry-row button{background:transparent;color:var(--pr-text-muted);border:none;border-radius:var(--pr-radius-sm);padding:4px;cursor:pointer;font-size:.9rem;transition:all var(--pr-transition);display:flex;align-items:center;justify-content:center}.entry-row button:hover{background:var(--pr-danger-light);color:var(--pr-danger)}.entries-table{border:1px solid var(--pr-border);border-radius:var(--pr-radius);overflow:hidden}.table-header{display:grid;grid-template-columns:1.5fr .8fr 1fr 1fr 1fr 1fr .6fr;gap:.5rem;padding:.65rem 1rem;background:linear-gradient(135deg,#0f172a,#1e293b);color:#ffffffe6;font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.table-row{display:grid;grid-template-columns:1.5fr .8fr 1fr 1fr 1fr 1fr .6fr;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;align-items:center;transition:all var(--pr-transition)}.table-row:last-child{border-bottom:none}.table-row:hover{background:#f8fafc}.table-row.editing{background:var(--pr-warning-light);border-left:3px solid var(--pr-warning)}.table-row span{font-size:.9rem;color:var(--pr-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-account{display:flex;flex-direction:column}.cell-account strong{color:var(--pr-primary)}.cell-account small{font-size:.75rem;color:var(--pr-text-secondary)}.cell-amount{font-weight:600;color:var(--pr-success)!important;font-family:SF Mono,Cascadia Code,Consolas,monospace}.cell-actions{display:flex;gap:.25rem}.btn-edit,.btn-delete{background:none;border:none;cursor:pointer;font-size:.95rem;padding:.25rem;border-radius:var(--pr-radius-sm);transition:all var(--pr-transition)}.btn-edit:hover{background:var(--pr-primary-light)}.btn-delete:hover{background:var(--pr-danger-light)}.totals-section{margin-top:1.25rem;padding-top:1.25rem;border-top:2px solid var(--pr-border)}.totals-by-agency{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.agency-total{display:flex;gap:.75rem;padding:.65rem .85rem;background:#f8fafc;border-radius:var(--pr-radius);align-items:center;border:1px solid var(--pr-border)}.agency-name{font-weight:700;color:var(--pr-primary);min-width:80px}.agency-count{color:var(--pr-text-secondary);font-size:.85rem}.agency-amount{font-weight:600;color:var(--pr-text);font-family:SF Mono,Cascadia Code,Consolas,monospace}.total-section{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:linear-gradient(135deg,#0f172a,#1e293b);border-radius:0 0 var(--pr-radius-lg) var(--pr-radius-lg);margin:0;box-shadow:var(--pr-shadow);flex-shrink:0}.total-label{font-size:1rem;font-weight:600;color:#ffffffd9}.total-amount{font-size:1.6rem;font-weight:800;color:#4ade80;font-family:SF Mono,Cascadia Code,Consolas,monospace;letter-spacing:-.02em}.grand-total{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#0f172a,#1e293b);border-radius:var(--pr-radius);font-size:1.05rem;font-weight:600;color:#fff}.overpayment-section{background:#fef2f2;border:1px solid #fecdd3;border-radius:var(--pr-radius);padding:1rem;margin-top:.75rem}.overpayment-alert{color:var(--pr-danger);font-weight:600;font-size:.9rem;margin-bottom:.75rem}.overpayment-fields{display:flex;gap:.75rem;flex-wrap:wrap}.overpayment-badge{margin-left:.25rem;font-size:.75rem}.overpayments-summary{background:var(--pr-warning-light);border:1px solid #fde68a;border-radius:var(--pr-radius);padding:1rem;margin:.75rem 0 0;flex-shrink:0}.overpayments-summary h4{margin:0 0 .5rem;font-size:.95rem;color:#92400e}.overpayment-item{display:flex;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid rgba(245,158,11,.15);font-size:.85rem}.overpayment-item:last-child{border-bottom:none}.overpayment-detail{color:#92400e;font-weight:500}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.75rem;flex-shrink:0;padding-bottom:1rem}.page-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1.25rem 2rem;background:var(--pr-surface);border-top:1px solid var(--pr-border);margin:0 -2rem -2rem}.btn-primary,.btn-secondary{padding:.7rem 1.75rem;border-radius:var(--pr-radius);font-size:.9rem;font-weight:600;cursor:pointer;transition:all var(--pr-transition);letter-spacing:-.01em}.btn-primary{background:var(--pr-primary);color:#fff;border:none}.btn-primary:hover:not(:disabled){background:var(--pr-primary-dark);transform:translateY(-1px);box-shadow:0 6px 20px #1a73e840}.btn-primary:disabled{background:#cbd5e1;cursor:not-allowed}.btn-secondary{background:var(--pr-surface);color:var(--pr-text-secondary);border:1px solid var(--pr-border)}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1;color:var(--pr-text)}.btn-print{padding:.7rem 1.75rem;background:#475569;color:#fff;border:none;border-radius:var(--pr-radius);font-weight:600;cursor:pointer;transition:all var(--pr-transition)}.btn-print:hover{background:#334155;transform:translateY(-1px)}.btn-deposit-slips{padding:.7rem 1.75rem;background:linear-gradient(135deg,#1e40af,#1d4ed8);color:#fff;border:none;border-radius:var(--pr-radius);font-weight:600;cursor:pointer;transition:all var(--pr-transition)}.btn-deposit-slips:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 12px #1d4ed84d}.btn-post{padding:.7rem 1.75rem;background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;border:none;border-radius:var(--pr-radius);font-weight:600;cursor:pointer;font-size:.9rem;transition:all var(--pr-transition)}.btn-post:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}.btn-post.btn-posted{background:linear-gradient(135deg,var(--pr-success) 0%,var(--pr-success-dark) 100%)}.btn-post.btn-posted:hover{box-shadow:0 4px 12px #1e8e3e4d}.summary-content{padding:2rem;background:var(--pr-surface)}.summary-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--pr-border)}.summary-header h2{margin:0;color:var(--pr-text);font-size:1.6rem;letter-spacing:-.025em}.summary-date{margin:.5rem 0 0;color:var(--pr-text-secondary);font-size:.95rem}.summary-user{margin:.2rem 0 0;color:var(--pr-text-muted);font-size:.85rem}.summary-section{margin-bottom:1.5rem}.summary-section h3{font-size:1.1rem;font-weight:600;color:var(--pr-text);margin:1.25rem 0 .75rem;letter-spacing:-.01em}.summary-row{display:grid;grid-template-columns:180px 1fr 150px;gap:1rem;padding:.85rem 1rem;background:#f8fafc;border-radius:var(--pr-radius-sm);margin-bottom:.35rem;align-items:center}.summary-agency{font-weight:600;color:var(--pr-text)}.summary-count{color:var(--pr-text-secondary);font-size:.85rem}.summary-total{font-weight:600;text-align:right;color:var(--pr-success);font-family:SF Mono,Cascadia Code,Consolas,monospace}.agency-summary{margin-bottom:1.5rem}.agency-summary h3{margin:0 0 .75rem;color:var(--pr-text);font-size:1.05rem}.summary-agency-row{display:grid;grid-template-columns:150px 1fr 150px;gap:1rem;padding:.85rem 1rem;background:#f8fafc;border-radius:var(--pr-radius-sm);margin-bottom:.35rem;align-items:center}.summary-agency-name{font-weight:700;color:var(--pr-primary);font-size:1rem}.summary-agency-count{color:var(--pr-text-secondary)}.summary-agency-total{font-weight:600;font-size:1.05rem;text-align:right;color:var(--pr-success);font-family:SF Mono,Cascadia Code,Consolas,monospace}.summary-grand-total{display:grid;grid-template-columns:180px 1fr 150px;gap:1rem;padding:1.15rem 1.25rem;background:linear-gradient(135deg,#0f172a,#1e293b);border-radius:var(--pr-radius);margin-top:.75rem;font-weight:700;font-size:1.05rem;color:#ffffffe6;box-shadow:var(--pr-shadow)}.grand-total-amount{font-size:1.35rem;color:#4ade80;text-align:right;font-family:SF Mono,Cascadia Code,Consolas,monospace}.detail-section{margin-bottom:1.5rem}.detail-section h3{margin:0 0 .75rem;color:var(--pr-text)}.detail-table{width:100%;border-collapse:collapse;border:1px solid var(--pr-border);border-radius:var(--pr-radius);overflow:hidden}.detail-table th,.detail-table td{padding:.65rem 1rem;text-align:left;border-bottom:1px solid #f1f5f9}.detail-table th{background:linear-gradient(135deg,#0f172a,#1e293b);color:#ffffffe6;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.detail-table tbody tr:nth-child(2n){background:#fafbfc}.detail-table tbody tr:hover{background:#f0f4ff}.detail-table .amount-cell{font-weight:600;color:var(--pr-success);text-align:right;font-family:SF Mono,Cascadia Code,Consolas,monospace}.detail-table tfoot{background:#f8fafc;border-top:2px solid var(--pr-border)}.detail-table tfoot td{font-weight:700}.summary-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1.5rem;border-top:1px solid var(--pr-border)}.btn-export-only{background:linear-gradient(135deg,#1e40af,#1d4ed8);color:#fff;border:none;padding:.7rem 1.5rem;border-radius:var(--pr-radius);font-weight:600;cursor:pointer;transition:all var(--pr-transition)}.btn-export-only:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 4px 12px #1d4ed84d}.btn-export-only:disabled{opacity:.5;cursor:not-allowed}@media print{body *{visibility:hidden}.print-area,.print-area *{visibility:visible!important}.print-area{position:absolute;left:0;top:0;width:100%}.page-header,.no-print,.summary-actions,.close-btn{display:none!important}.summary-content{padding:0}.summary-header{margin-bottom:1.5rem}.detail-table th,.entries-header{background:#1e293b!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{size:landscape;margin:.5in}}@media(max-width:1024px){.payment-receipt-page .form-row{grid-template-columns:1fr 1fr;gap:.5rem}.table-header,.table-row{grid-template-columns:1fr;gap:.25rem}.table-header{display:none}.table-row{padding:.85rem;margin-bottom:.5rem;border:1px solid var(--pr-border);border-radius:var(--pr-radius);background:var(--pr-surface)}.table-row span:before{content:attr(data-label);font-weight:600;font-size:.7rem;color:var(--pr-text-secondary);text-transform:uppercase;margin-right:.5rem;letter-spacing:.04em}}@media(max-width:640px){.page-header{padding:.85rem 1rem}.header-content h2,.header-left h2{font-size:1.1rem}.receipt-content{padding:.75rem}.search-row{flex-direction:column}.payment-receipt-page .form-row,.form-grid{grid-template-columns:1fr}.page-actions,.modal-actions{flex-direction:column;padding:.85rem}.btn-primary,.btn-secondary{width:100%;text-align:center}}.batch-drawer-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;animation:drawerFadeIn .2s ease}@keyframes drawerFadeIn{0%{opacity:0}to{opacity:1}}@keyframes drawerSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.batch-drawer{position:fixed;top:0;right:0;width:440px;max-width:92vw;height:100vh;background:#fff;box-shadow:-8px 0 40px #00000026;z-index:9999;display:flex;flex-direction:column;animation:drawerSlideIn .25s cubic-bezier(.4,0,.2,1);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;color:#1e293b}.batch-filter-tabs{display:flex;gap:0;border-bottom:1px solid #e2e8f0;flex-shrink:0}.batch-filter-tab{flex:1;padding:10px 0;border:none;cursor:pointer;background:transparent;color:#64748b;font-weight:400;font-size:.85rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.batch-filter-tab:hover{background:#f1f5f9;color:#334155}.batch-filter-tab.active{background:#1a73e8;color:#fff;font-weight:600}.batch-drawer-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;flex-shrink:0}.batch-drawer-header h3{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.01em}.batch-drawer-body{flex:1;overflow-y:auto;padding:.75rem}.close-panel-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#fff;font-size:1.3rem;width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1)}.close-panel-btn:hover{background:#fff3}.batch-sections{overflow-y:auto;max-height:calc(100vh - 200px);padding:.5rem}.batch-section{margin-bottom:1rem}.section-title{font-size:.8rem;font-weight:600;padding:.5rem .75rem;margin:0 0 .5rem;border-radius:6px;letter-spacing:.02em}.section-title.draft-title{background:#fef7e0;color:#92400e;border-left:3px solid #f9ab00}.section-title.completed-title{background:#e6f4ea;color:#137333;border-left:3px solid #1e8e3e}.batch-list{display:flex;flex-direction:column;gap:.4rem}.batch-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem .85rem;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0;transition:all .2s cubic-bezier(.4,0,.2,1)}.batch-item:hover{background:#f1f5f9;border-color:#cbd5e1}.batch-item.draft{border-left:3px solid #f9ab00}.batch-item.completed{border-left:3px solid #1e8e3e}.batch-item.current{background:#e8f0fe;border-color:#93c5fd}.batch-info{display:flex;flex-direction:column;gap:.2rem}.batch-date{font-weight:600;color:#1e293b;font-size:.9rem}.batch-status{display:inline-block;padding:.15rem .45rem;border-radius:20px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;width:fit-content}.batch-status.draft{background:#fef7e0;color:#92400e}.batch-status.completed{background:#e6f4ea;color:#137333}.batch-details{font-size:.8rem;color:#475569}.batch-user{font-size:.7rem;color:#94a3b8}.batch-actions{display:flex;gap:.4rem;align-items:center}.btn-load{padding:.35rem .75rem;background:#1a73e8;color:#fff;border:none;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-load:hover:not(:disabled){background:#1557b0}.btn-load:disabled{background:#1e8e3e;cursor:default}.btn-delete-batch{padding:.35rem .5rem;background:transparent;border:none;font-size:.95rem;cursor:pointer;opacity:.5;transition:opacity .2s cubic-bezier(.4,0,.2,1)}.btn-delete-batch:hover{opacity:1}.btn-complete-batch{padding:.35rem .65rem;background:#1e8e3e;color:#fff;border:none;border-radius:6px;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.btn-complete-batch:hover{background:#137333}.batch-mode-tag{display:inline-block;padding:.1rem .4rem;background:#e8f0fe;color:#1a73e8;border-radius:20px;font-size:.68rem;font-weight:600;width:fit-content;letter-spacing:.02em}.batch-report-number{display:block;font-size:.88rem;font-weight:700;color:#1565c0;letter-spacing:.03em;margin-bottom:1px}.batch-item.completed .batch-report-number{color:#2e7d32}.batch-type-label{display:block;font-size:.72rem;font-weight:600;color:#546e7a;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.no-batches{text-align:center;padding:2rem 1rem;color:#94a3b8;font-size:.9rem}.empty-state{text-align:center;padding:3rem 1rem;color:var(--pr-text-muted)}.empty-state p:first-child{font-size:1.05rem;margin-bottom:.4rem;color:var(--pr-text-secondary)}.empty-state .hint{font-size:.85rem}.print-header{text-align:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--pr-border)}.print-header h2{margin:0;font-size:1.5rem;color:var(--pr-text);letter-spacing:-.025em}.print-date{margin:.35rem 0 0;color:var(--pr-text-secondary);font-size:.9rem}.summary-detail,.print-detail{margin-bottom:1.5rem}.entry-row.selected{background:#e3f2fd!important;border-left:3px solid #1e88e5}.entry-row.selected:hover{background:#bbdefb!important}.bulk-action-toolbar{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;background:linear-gradient(135deg,#1565c0,#1976d2);border-radius:8px;margin:.5rem 0;box-shadow:0 2px 8px #1565c04d;animation:slideDown .2s ease}.bulk-action-info{display:flex;align-items:center;gap:.4rem;color:#fffffff2;font-size:.85rem;font-weight:500}.bulk-count{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:#fff3;border-radius:50%;font-weight:700;font-size:.85rem}.bulk-action-buttons{display:flex;gap:.4rem}.bulk-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .75rem;border:none;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.bulk-btn:disabled{opacity:.5;cursor:not-allowed}.bulk-btn-move{background:#fffffff2;color:#1565c0}.bulk-btn-move:hover:not(:disabled){background:#fff;box-shadow:0 2px 6px #00000026}.bulk-btn-delete{background:#ef5350;color:#fff}.bulk-btn-delete:hover:not(:disabled){background:#d32f2f;box-shadow:0 2px 6px #d32f2f4d}.bulk-btn-clear{background:#ffffff26;color:#ffffffe6}.bulk-btn-clear:hover:not(:disabled){background:#ffffff40}.bulk-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .15s ease}.bulk-modal{background:#fff;border-radius:12px;padding:1.5rem;width:min(420px,90vw);box-shadow:0 20px 60px #00000040;animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.bulk-modal h3{margin:0 0 .75rem;font-size:1.1rem;color:#1565c0}.bulk-modal-body p{margin:.4rem 0;font-size:.88rem;color:#333}.bulk-modal-details{background:#f5f7fa;border-radius:8px;padding:.6rem .8rem;margin:.6rem 0}.bulk-modal-details .detail-row{display:flex;justify-content:space-between;padding:.25rem 0;font-size:.82rem;color:#555}.bulk-modal-details .detail-row strong{color:#1a1a1a}.bulk-modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem;padding-top:.75rem;border-top:1px solid #eee}.bulk-modal-actions .bulk-btn-move{padding:.45rem 1rem;font-size:.85rem}.bulk-modal-actions .bulk-btn-clear{background:#eee;color:#555;padding:.45rem 1rem;font-size:.85rem}.bulk-modal-actions .bulk-btn-clear:hover:not(:disabled){background:#ddd}.notification-bell{position:relative;background:none;border:none;color:#fff;font-size:1.3rem;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s;display:flex;align-items:center;justify-content:center;width:42px;height:42px}.notification-bell:hover{background:#ffffff26}.notification-bell.has-unread i{animation:bellRing 2s ease-in-out infinite}@keyframes bellRing{0%,90%,to{transform:rotate(0)}92%{transform:rotate(8deg)}94%{transform:rotate(-8deg)}96%{transform:rotate(6deg)}98%{transform:rotate(-4deg)}}.notification-badge{position:absolute;top:2px;right:2px;background:#ff1744;color:#fff;font-size:.65rem;font-weight:700;min-width:18px;height:18px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid #1b5e20;animation:badgePulse 2s ease-in-out infinite}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.notification-dropdown-overlay{position:fixed;inset:0;z-index:9998}.notification-dropdown{position:fixed;top:70px;right:20px;width:400px;max-height:520px;background:#fff;border-radius:16px;box-shadow:0 12px 48px #0000002e,0 0 0 1px #0000000d;z-index:9999;overflow:hidden;animation:dropdownSlide .25s ease-out}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.notif-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f0f0f0;background:linear-gradient(135deg,#fafafa,#f5f5f5)}.notif-dropdown-header h3{margin:0;font-size:1rem;font-weight:700;color:#2c3e50;display:flex;align-items:center;gap:.5rem}.notif-dropdown-header h3 i{color:#2e7d32}.btn-mark-all{background:none;border:none;color:#2e7d32;font-size:.78rem;font-weight:600;cursor:pointer;padding:.3rem .6rem;border-radius:6px;transition:all .2s;font-family:inherit}.btn-mark-all:hover{background:#2e7d321a}.notif-dropdown-list{max-height:380px;overflow-y:auto}.notif-item{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1.25rem;border:none;background:#fff;width:100%;text-align:left;cursor:pointer;transition:background .15s;font-family:inherit;border-bottom:1px solid #f5f5f5;position:relative}.notif-item:hover{background:#f8faf8}.notif-item.unread{background:#2e7d3208}.notif-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.85rem;flex-shrink:0}.notif-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.notif-title{font-size:.85rem;font-weight:600;color:#2c3e50;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-message{font-size:.78rem;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-time{font-size:.7rem;color:#bbb}.notif-dot{width:8px;height:8px;border-radius:50%;background:#2e7d32;flex-shrink:0;margin-top:.35rem}.notif-empty{display:flex;flex-direction:column;align-items:center;padding:3rem 1rem;color:#ccc}.notif-empty i{font-size:2.5rem;color:#4caf50;margin-bottom:.75rem}.notif-empty p{color:#999;font-size:.9rem}.notif-dropdown-footer{border-top:1px solid #f0f0f0;padding:.75rem;text-align:center}.notif-dropdown-footer button{background:none;border:none;color:#2e7d32;font-weight:600;font-size:.85rem;cursor:pointer;padding:.4rem 1rem;border-radius:8px;transition:all .2s;font-family:inherit}.notif-dropdown-footer button:hover{background:#2e7d3214}.client-notifications-page{padding:2rem;width:100%;box-sizing:border-box}.notifications-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.notifications-header h1{color:#2c3e50;font-size:2rem;font-weight:700;margin:0 0 .3rem;display:flex;align-items:center;gap:.75rem}.notifications-header h1 i{color:#2e7d32}.notifications-subtitle{color:#888;font-size:.95rem}.btn-mark-all-page{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;background:#2e7d32;color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-mark-all-page:hover{background:#1b5e20;transform:translateY(-1px);box-shadow:0 4px 12px #2e7d324d}.notifications-filter-bar{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.notif-filter-btn{padding:.5rem 1.1rem;border:2px solid #e0e0e0;border-radius:22px;background:#fff;color:#666;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}.notif-filter-btn:hover{border-color:#2e7d32;color:#2e7d32}.notif-filter-btn.active{background:#2e7d32;border-color:#2e7d32;color:#fff}.notifications-list{display:flex;flex-direction:column;gap:.75rem}.notification-card{display:flex;align-items:flex-start;gap:1.25rem;padding:1.25rem 1.5rem;background:#fff;border:2px solid #f0f0f0;border-radius:14px;cursor:pointer;transition:all .2s;width:100%;text-align:left;font-family:inherit;position:relative}.notification-card:hover{border-color:#d0d0d0;transform:translateY(-2px);box-shadow:0 6px 20px #0000000f}.notification-card.unread{border-left:4px solid #2e7d32;background:#2e7d3205}.notification-card-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.1rem;flex-shrink:0}.notification-card-body{flex:1;min-width:0}.notification-card-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.35rem}.notification-card-title{font-size:.95rem;font-weight:700;color:#2c3e50}.notification-card-time{font-size:.75rem;color:#bbb;white-space:nowrap}.notification-card-message{font-size:.88rem;color:#666;margin:0 0 .5rem;line-height:1.5}.notification-card-meta{display:flex;align-items:center;gap:1rem}.notification-type-badge{display:inline-block;padding:.2rem .65rem;border-radius:10px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.notification-type-badge.payment{background:#2e7d321a;color:#2e7d32}.notification-type-badge.document{background:#f57c001a;color:#f57c00}.notification-type-badge.account{background:#1976d21a;color:#1976d2}.notification-type-badge.message{background:#7b1fa21a;color:#7b1fa2}.notification-type-badge.system{background:#455a641a;color:#455a64}.notification-type-badge.court{background:#c628281a;color:#c62828}.notification-link-hint{font-size:.72rem;color:#aaa}.notification-unread-indicator{width:10px;height:10px;border-radius:50%;background:#2e7d32;flex-shrink:0;margin-top:.4rem;box-shadow:0 0 8px #2e7d3266}.notifications-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:4rem;color:#999;font-size:1rem}.notifications-empty{display:flex;flex-direction:column;align-items:center;padding:4rem 2rem;text-align:center}.notifications-empty i{font-size:3.5rem;color:#4caf50;margin-bottom:1rem}.notifications-empty h3{color:#2c3e50;margin:0 0 .5rem}.notifications-empty p{color:#999;font-size:.95rem}@media(max-width:768px){.notification-dropdown{width:calc(100vw - 2rem);right:1rem}.client-notifications-page{padding:1rem}.notifications-header{flex-direction:column;align-items:flex-start;gap:1rem}.notifications-filter-bar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:.5rem}.notification-card{flex-direction:column;gap:.75rem}.notification-card-top{flex-direction:column;align-items:flex-start;gap:.25rem}}.client-portal-header{background:linear-gradient(135deg,#2e7d32,#1b5e20);padding:2rem;margin-bottom:2rem;border-radius:12px;box-shadow:0 4px 6px #0000001a}.client-header-content{display:flex;align-items:center;gap:2rem;max-width:1200px;margin:0 auto}.client-header-actions{flex-shrink:0;margin-left:auto}.client-logo-container{flex-shrink:0}.client-logo{max-width:120px;max-height:120px;object-fit:contain;background:#fff;padding:12px;border-radius:12px;box-shadow:0 2px 8px #00000026}.client-info{flex:1;color:#fff}.client-portal-title{font-size:2rem;font-weight:700;margin:0 0 .75rem;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2)}.client-subtitle{font-size:1.1rem;margin:0;opacity:.95}.client-contact-info{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.95rem;margin-top:.5rem}.client-website,.client-phone,.client-email{color:#fff;text-decoration:none;opacity:.95;transition:opacity .2s}.client-website:hover{opacity:1;text-decoration:underline}@media(max-width:768px){.client-header-content{flex-direction:column;text-align:center;gap:1rem}.client-portal-title{font-size:1.5rem}.client-contact-info{flex-direction:column;gap:.5rem;align-items:center}}.paywire-payment{max-width:640px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.payment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.payment-header h3{margin:0;font-size:1.4rem;color:#1e293b}.security-badge{display:flex;align-items:center;gap:6px;padding:4px 10px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:20px;font-size:.78rem;color:#065f46;font-weight:500}.payment-error{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.88rem;margin-bottom:16px}.payment-error button{background:none;border:none;font-size:1.2rem;color:#991b1b;cursor:pointer;padding:0 4px}.payment-mode-toggle{display:flex;gap:0;background:#f1f5f9;border-radius:10px;padding:4px;margin-bottom:20px}.payment-mode-toggle button{flex:1;padding:10px 16px;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;background:transparent;color:#64748b;transition:all .2s}.payment-mode-toggle button.active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #0000001a}.form-section{margin-bottom:14px}.form-section-group{margin-bottom:20px;padding:16px;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0}.form-section-group h4{margin:0 0 14px;font-size:.95rem;color:#334155}.form-section-group .optional{font-weight:400;font-size:.78rem;color:#94a3b8}.form-label{display:block;margin-bottom:5px;font-size:.85rem;font-weight:500;color:#475569}.required{color:#ef4444}.form-input,.form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;color:#1e293b;background:#fff;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.form-input:focus,.form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-row{display:flex;gap:12px}.form-section.half,.form-section.third{flex:1}.amount-input-group{position:relative;display:flex;align-items:center}.currency-prefix{position:absolute;left:12px;font-size:1rem;font-weight:500;color:#64748b}.amount-input{padding-left:26px!important;font-size:1.1rem!important;font-weight:600!important}.field-error{display:block;margin-top:4px;font-size:.78rem;color:#ef4444}.field-hint{display:block;margin-top:4px;font-size:.78rem;color:#059669}.plan-options{margin-bottom:16px;padding:16px;background:#eff6ff;border-radius:10px;border:1px solid #bfdbfe}.plan-summary{margin-top:14px;padding:14px;background:#fff;border-radius:8px;border:1px solid #dbeafe}.plan-summary h4{margin:0 0 10px;font-size:.88rem;color:#1e40af}.plan-detail{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:.85rem;color:#475569}.plan-detail.total{border-top:1px solid #e2e8f0;margin-top:4px;padding-top:8px;font-weight:600;color:#1e293b}.plan-amount{font-weight:600;color:#1e40af}.security-notice{display:flex;align-items:flex-start;gap:10px;padding:14px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;margin-bottom:14px}.security-notice .lock-icon{font-size:1.2rem;flex-shrink:0;margin-top:2px}.security-notice strong{display:block;font-size:.85rem;color:#166534;margin-bottom:3px}.security-notice p{margin:0;font-size:.8rem;color:#15803d;line-height:1.4}.payment-disclaimer{margin-bottom:16px}.payment-disclaimer p{margin:0;font-size:.78rem;color:#94a3b8;line-height:1.5}.btn-proceed{display:block;width:100%;padding:14px 20px;border:none;border-radius:10px;font-size:1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #2563eb4d}.btn-proceed:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 12px #2563eb66;transform:translateY(-1px)}.btn-proceed:disabled{background:#94a3b8;cursor:not-allowed;box-shadow:none}.payment-processing{text-align:center;padding:60px 20px}.payment-processing h3{margin:20px 0 8px;color:#1e293b}.payment-processing p{color:#64748b;font-size:.9rem;margin:0 0 24px}.spinner-lg{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto}.payment-result{text-align:center;padding:40px 20px}.result-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 16px;font-weight:700}.payment-result.success .result-icon{background:#dcfce7;color:#16a34a}.payment-result.declined .result-icon{background:#fef2f2;color:#dc2626}.payment-result.error .result-icon{background:#fef3c7;color:#d97706}.payment-result h3{margin:0 0 16px}.payment-result.success h3{color:#16a34a}.payment-result.declined h3{color:#dc2626}.payment-result.error h3{color:#d97706}.result-details{margin:16px 0 24px;font-size:.9rem;color:#475569}.result-details p{margin:0 0 8px}.confirmation{display:flex;justify-content:center;gap:8px;padding:6px 0;font-size:.9rem}.confirmation .label{color:#64748b}.confirmation .value{font-weight:600;color:#1e293b}.receipt-note{margin-top:12px!important;font-size:.82rem!important;color:#6b7280!important;font-style:italic}.decline-reason{font-weight:500;color:#991b1b!important}.result-actions{margin-top:20px}.btn-primary{padding:10px 28px;border:none;border-radius:8px;font-size:.92rem;font-weight:500;color:#fff;background:#2563eb;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#1d4ed8}.active-plans{margin-top:28px;padding-top:20px;border-top:1px solid #e2e8f0}.active-plans h4{margin:0 0 12px;font-size:.95rem;color:#334155}.plan-card{padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px}.plan-info{display:flex;align-items:center;gap:10px;font-size:.88rem;color:#334155}.plan-badge{padding:2px 8px;border-radius:12px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.plan-badge.active{background:#dcfce7;color:#166534}.plan-meta{display:flex;gap:16px;margin-top:6px;font-size:.78rem;color:#94a3b8}@media(max-width:640px){.form-row{flex-direction:column;gap:0}.payment-header{flex-direction:column;align-items:flex-start;gap:8px}}.debtor-portal{max-width:1200px;margin:0 auto;padding:1.5rem}.debtor-header{text-align:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.debtor-header h2{margin:0 0 .5rem;color:#1a237e;font-size:1.8rem}.welcome-text{color:#666;margin:0}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.summary-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:12px;display:flex;flex-direction:column;box-shadow:0 4px 15px #0000001a}.summary-card.balance{background:linear-gradient(135deg,#f093fb,#f5576c)}.summary-card.accounts{background:linear-gradient(135deg,#4facfe,#00f2fe)}.summary-card.payments{background:linear-gradient(135deg,#43e97b,#38f9d7)}.summary-card.messages{background:linear-gradient(135deg,#fa709a,#fee140)}.summary-card .label{font-size:.85rem;opacity:.9;margin-bottom:.5rem}.summary-card .value{font-size:1.8rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.summary-card .badge{font-size:.75rem;background:#ffffff4d;padding:.25rem .5rem;border-radius:12px}.error-banner{background:#ffebee;color:#c62828;padding:1rem;border-radius:8px;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center;border-left:4px solid #c62828}.error-banner button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#c62828}.portal-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #e0e0e0;padding-bottom:0;flex-wrap:wrap}.portal-tabs button{padding:.75rem 1.5rem;border:none;background:none;color:#666;font-size:1rem;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s;display:flex;align-items:center;gap:.5rem}.portal-tabs button:hover{color:#1a237e;background:#f5f5f5}.portal-tabs button.active{color:#1a237e;border-bottom-color:#1a237e;font-weight:600}.tab-badge{background:#f44336;color:#fff;font-size:.7rem;padding:.15rem .4rem;border-radius:10px;font-weight:600}.tab-content{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;min-height:400px}.tab-content h3{margin:0 0 1.5rem;color:#333;font-size:1.3rem}.empty-state{text-align:center;padding:3rem;color:#666}.empty-state p{margin:.5rem 0}.empty-state .muted{font-size:.9rem;color:#999}.accounts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.account-card{background:#f8f9fa;border-radius:12px;overflow:hidden;border:1px solid #e0e0e0;transition:box-shadow .2s}.account-card:hover{box-shadow:0 4px 20px #0000001a}.account-header{background:linear-gradient(135deg,#1a237e,#3949ab);color:#fff;padding:1rem 1.25rem;display:flex;justify-content:space-between;align-items:center}.account-number{font-weight:600;font-size:1.1rem}.status-badge{font-size:.75rem;padding:.25rem .75rem;border-radius:20px;font-weight:600;text-transform:uppercase}.status-badge.active,.status-badge.open{background:#4caf5033;color:#2e7d32}.status-badge.paid,.status-badge.completed{background:#2196f333;color:#1565c0}.status-badge.pending{background:#ff980033;color:#ef6c00}.status-badge.closed{background:#9e9e9e33;color:#616161}.account-body{padding:1.25rem}.account-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #eee}.account-row:last-child{border-bottom:none}.account-row.highlight{background:#fff3e0;margin:.5rem -1.25rem;padding:.75rem 1.25rem}.account-row .label{color:#666;font-size:.9rem}.account-row .value{font-weight:500;color:#333}.account-row .value.balance{color:#d32f2f;font-size:1.2rem;font-weight:700}.account-actions{padding:1rem 1.25rem;border-top:1px solid #e0e0e0;background:#fafafa}.btn-pay{width:100%;padding:.75rem;background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-pay:hover{transform:translateY(-2px);box-shadow:0 4px 15px #4caf5066}.payments-table{width:100%;border-collapse:collapse}.payments-table th{text-align:left;padding:1rem;background:#f5f5f5;color:#333;font-weight:600;border-bottom:2px solid #e0e0e0}.payments-table td{padding:1rem;border-bottom:1px solid #eee}.payments-table .amount{font-weight:600;color:#2e7d32}.payments-table .confirmation{font-family:monospace;font-size:.85rem;color:#666}.payment-form{max-width:500px}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#333}.form-group select,.form-group input{width:100%;padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .2s}.form-group select:focus,.form-group input:focus{outline:none;border-color:#1a237e}.amount-input{position:relative;display:flex;align-items:center}.currency-symbol{position:absolute;left:1rem;color:#666;font-size:1.1rem}.amount-input input{padding-left:2rem}.payment-methods{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.method-btn{padding:1.5rem;border:2px solid #e0e0e0;border-radius:12px;background:#fff;font-size:1rem;cursor:pointer;transition:all .2s}.method-btn:hover{border-color:#1a237e;background:#f5f5ff}.method-btn.selected{border-color:#1a237e;background:#e8eaf6;font-weight:600}.payment-disclaimer{background:#fff8e1;padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem;color:#666;border-left:4px solid #ffc107}.btn-submit-payment{width:100%;padding:1rem;background:linear-gradient(135deg,#1a237e,#3949ab);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-submit-payment:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #1a237e66}.btn-submit-payment:disabled{background:#ccc;cursor:not-allowed}.message-composer{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e0e0e0}.message-composer textarea{width:100%;padding:1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;resize:vertical;min-height:100px;font-family:inherit}.message-composer textarea:focus{outline:none;border-color:#1a237e}.btn-send{margin-top:.75rem;padding:.75rem 2rem;background:linear-gradient(135deg,#1a237e,#3949ab);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer}.btn-send:disabled{background:#ccc;cursor:not-allowed}.messages-list{display:flex;flex-direction:column;gap:1rem}.message{padding:1rem;border-radius:12px;max-width:80%}.message.sent{background:#e3f2fd;align-self:flex-end;border-bottom-right-radius:4px}.message.received{background:#f5f5f5;align-self:flex-start;border-bottom-left-radius:4px}.message.unread{border-left:4px solid #1a237e}.message-header{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.85rem}.message-header .sender{font-weight:600;color:#333}.message-header .timestamp{color:#999}.message-content{color:#333;line-height:1.5}.portal-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid #e0e0e0;text-align:center}.portal-footer p{margin:.5rem 0;color:#666}.portal-footer .disclaimer{font-size:.8rem;color:#999;margin-top:1rem;padding:1rem;background:#f5f5f5;border-radius:8px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.spinner{width:50px;height:50px;border:4px solid #e0e0e0;border-top-color:#1a237e;border-radius:50%;animation:spin 1s linear infinite}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,#1a237e,#3949ab);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer}@media(max-width:768px){.summary-cards{grid-template-columns:repeat(2,1fr)}.portal-tabs{overflow-x:auto}.portal-tabs button{padding:.5rem 1rem;font-size:.9rem}.accounts-grid,.payment-methods{grid-template-columns:1fr}.message{max-width:90%}.payments-table{font-size:.85rem}.payments-table th,.payments-table td{padding:.75rem .5rem}}@media(max-width:480px){.summary-cards{grid-template-columns:1fr}.summary-card .value{font-size:1.5rem}}.payment-admin{max-width:1100px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.admin-header{margin-bottom:24px}.admin-header h2{margin:0 0 4px;font-size:1.5rem;color:#1e293b}.admin-subtitle{margin:0;font-size:.88rem;color:#64748b}.action-banner{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-radius:8px;font-size:.88rem;margin-bottom:16px}.action-banner.success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.action-banner.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.action-banner button{background:none;border:none;font-size:1.2rem;cursor:pointer;color:inherit}.admin-tabs{display:flex;gap:0;border-bottom:2px solid #e2e8f0;margin-bottom:20px}.admin-tabs button{padding:10px 20px;border:none;background:none;font-size:.9rem;font-weight:500;color:#64748b;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.admin-tabs button.active{color:#2563eb;border-bottom-color:#2563eb}.admin-tabs button:hover:not(.active){color:#334155}.search-form{padding:20px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:20px}.search-type-row{display:flex;align-items:center;gap:12px;margin-bottom:14px}.search-type-row label{font-weight:500;font-size:.88rem;color:#475569;white-space:nowrap}.search-select,.search-input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.88rem;color:#1e293b;background:#fff}.search-select:focus,.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.search-fields{margin-bottom:14px}.search-fields label{display:block;margin-bottom:4px;font-size:.82rem;font-weight:500;color:#475569}.search-fields input,.search-fields select{width:100%;box-sizing:border-box}.field-pair{display:flex;gap:12px}.field-pair>div{flex:1}.btn-search{padding:10px 24px;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-search:hover:not(:disabled){background:#1d4ed8}.btn-search:disabled{background:#94a3b8;cursor:not-allowed}.search-error{padding:10px 14px;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#9a3412;font-size:.85rem;margin-bottom:16px}.results-section{margin-top:20px}.results-section h4{margin:0 0 12px;font-size:.95rem;color:#334155}.results-table-wrapper{overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px}.results-table{width:100%;border-collapse:collapse;font-size:.84rem}.results-table th{text-align:left;padding:10px 12px;background:#f1f5f9;font-weight:600;color:#475569;border-bottom:1px solid #e2e8f0;white-space:nowrap}.results-table td{padding:8px 12px;border-bottom:1px solid #f1f5f9;color:#334155}.results-table tr:hover{background:#f8fafc}.results-table .amount{font-weight:600;color:#059669}.results-table .mono{font-family:Cascadia Code,Fira Code,monospace;font-size:.8rem}.type-badge{padding:2px 8px;border-radius:10px;font-size:.72rem;font-weight:600;background:#f1f5f9;color:#475569}.status-badge{padding:2px 8px;border-radius:10px;font-size:.72rem;font-weight:600;text-transform:capitalize}.status-badge.approved{background:#dcfce7;color:#166534}.status-badge.declined{background:#fef2f2;color:#991b1b}.status-badge.voided{background:#f5f5f5;color:#737373}.action-cell{display:flex;gap:6px;flex-wrap:nowrap}.btn-action{padding:4px 10px;border:1px solid;border-radius:4px;font-size:.72rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s}.btn-action.void{border-color:#fca5a5;color:#dc2626;background:#fef2f2}.btn-action.void:hover:not(:disabled){background:#fee2e2}.btn-action.credit{border-color:#fcd34d;color:#b45309;background:#fffbeb}.btn-action.credit:hover:not(:disabled){background:#fef3c7}.btn-action.receipt{border-color:#93c5fd;color:#2563eb;background:#eff6ff}.btn-action.receipt:hover:not(:disabled){background:#dbeafe}.btn-action:disabled{opacity:.5;cursor:not-allowed}.batch-form{display:flex;align-items:flex-end;gap:12px;padding:20px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:20px}.batch-form label{display:block;margin-bottom:4px;font-size:.82rem;font-weight:500;color:#475569}.batch-results{margin-top:20px}.batch-results h4{margin:0 0 14px;font-size:.95rem;color:#334155}.batch-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:16px}.batch-card{padding:16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;text-align:center}.batch-label{display:block;font-size:.78rem;color:#64748b;margin-bottom:6px}.batch-value{display:block;font-size:1.3rem;font-weight:700;color:#1e293b}.batch-raw{margin-top:12px}.batch-raw summary{cursor:pointer;font-size:.82rem;color:#64748b}.batch-raw pre{padding:12px;background:#f1f5f9;border-radius:6px;font-size:.78rem;overflow-x:auto}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:480px;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;font-size:1.1rem;color:#1e293b}.modal-close{background:none;border:none;font-size:1.4rem;color:#94a3b8;cursor:pointer}.modal-body{padding:20px}.modal-detail{display:flex;justify-content:space-between;padding:6px 0;font-size:.88rem}.modal-detail .label{color:#64748b}.modal-detail .value{font-weight:500;color:#1e293b}.warning-box{margin-top:16px;padding:12px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;font-size:.84rem;color:#991b1b;line-height:1.5}.credit-amount-field{margin-top:16px}.credit-amount-field label{display:block;font-size:.85rem;font-weight:500;color:#475569;margin-bottom:6px}.credit-amount-field .amount-input-group{position:relative;display:flex;align-items:center}.credit-amount-field .currency-prefix{position:absolute;left:12px;color:#64748b;font-weight:500}.credit-amount-field .form-input{width:100%;padding:10px 12px 10px 26px;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;box-sizing:border-box}.credit-amount-field .field-hint{display:block;margin-top:4px;font-size:.78rem;color:#6b7280}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid #e2e8f0}.btn-cancel{padding:8px 20px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#475569;font-size:.88rem;cursor:pointer}.btn-confirm{padding:8px 20px;border:none;border-radius:6px;font-size:.88rem;font-weight:500;color:#fff;cursor:pointer}.btn-confirm.void{background:#dc2626}.btn-confirm.void:hover{background:#b91c1c}.btn-confirm.credit{background:#d97706}.btn-confirm.credit:hover{background:#b45309}.btn-confirm:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.search-form,.batch-form{padding:14px}.field-pair{flex-direction:column}.batch-form{flex-direction:column;align-items:stretch}.action-cell{flex-direction:column}}.reporting-container{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.reporting-header{flex-shrink:0;padding:.75rem 1.5rem;background:#1e293b;border-bottom:1px solid #334155}.reporting-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#fff}.reporting-header h2 i{color:#00d68f}.reporting-header .subtitle{margin:.15rem 0 0;color:#fff9;font-size:.8rem}.reporting-content-scroll{flex:1;overflow-y:auto;padding:1rem 1.5rem;background:#f5f7fa}.report-selection{margin-bottom:2rem}.report-selection h3{margin:0 0 1rem;color:#495057;font-size:1.1rem}.report-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.report-card{background:#fff;border:2px solid #e9ecef;border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .2s ease;display:flex;gap:1rem;position:relative}.report-card:hover:not(.coming-soon){border-color:#3498db;box-shadow:0 4px 12px #3498db26;transform:translateY(-2px)}.report-card.selected{border-color:#2980b9;background:linear-gradient(135deg,#f8fbff,#eef6ff);box-shadow:0 4px 16px #3498db33}.report-card.coming-soon{opacity:.6;cursor:not-allowed}.report-icon{font-size:2.5rem;flex-shrink:0}.report-info h4{margin:0 0 .5rem;color:#2c3e50;font-size:1.1rem}.report-info p{margin:0;color:#6c757d;font-size:.85rem;line-height:1.4}.client-groups{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:.5rem}.group-badge{background:#e7f3ff;color:#2980b9;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.coming-soon-badge{position:absolute;top:.75rem;right:.75rem;background:#6c757d;color:#fff;padding:.2rem .6rem;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase}.report-config{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:1.5rem;margin-bottom:2rem}.report-config h3{margin:0 0 1.5rem;color:#2c3e50;font-size:1.3rem;padding-bottom:1rem;border-bottom:1px solid #e9ecef}.config-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #f1f3f5}.config-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.config-section h4{margin:0 0 .5rem;color:#495057;font-size:1rem}.help-text{color:#6c757d;font-size:.9rem;margin:0 0 1rem}.city-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1rem}.city-option{background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;padding:1rem;cursor:pointer;transition:all .2s ease}.city-option:hover{border-color:#667eea;background:#fafbff}.city-option.selected{border-color:#667eea;background:linear-gradient(135deg,#f0f4ff,#e8edff);box-shadow:0 2px 8px #667eea33}.city-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.city-header .city-icon{font-size:1.5rem}.city-header strong{font-size:1.1rem;color:#2c3e50}.city-header .check-mark{margin-left:auto;color:#28a745;font-weight:700;font-size:1.2rem}.city-desc{margin:0 0 .75rem;color:#6c757d;font-size:.85rem}.city-groups{display:flex;flex-wrap:wrap;gap:.4rem}.date-range-inputs{display:flex;gap:2rem;margin-top:1rem;flex-wrap:wrap}.date-field{display:flex;flex-direction:column;gap:.5rem}.date-field label{font-weight:600;color:#495057;font-size:.9rem}.date-field input[type=date]{padding:.75rem 1rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:all .2s ease;min-width:180px}.date-field input[type=date]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.date-field input[type=date]:hover{border-color:#adb5bd}.report-subtitle{color:#6c757d;font-size:.95rem;margin:-.5rem 0 1.5rem}.file-upload-area{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.btn-upload{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-upload:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.file-info{display:flex;flex-direction:column;gap:.25rem}.file-name{color:#28a745;font-weight:600}.file-rows{color:#6c757d;font-size:.85rem}.preview-table{margin-top:1.5rem;background:#f8f9fa;border-radius:8px;padding:1rem}.preview-table h5{margin:0 0 .75rem;color:#495057;font-size:.9rem}.preview-table table{width:100%;border-collapse:collapse;font-size:.85rem}.preview-table th,.preview-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #dee2e6}.preview-table th{background:#e9ecef;font-weight:600;color:#495057}.btn-primary{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #3498db66}.btn-large{padding:1rem 2rem;font-size:1.1rem}.btn-success{background:linear-gradient(135deg,#28a745,#218838);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-success:hover{transform:translateY(-2px);box-shadow:0 4px 12px #28a74566}.btn-info{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-info:hover{transform:translateY(-2px);box-shadow:0 4px 12px #17a2b866}.btn-secondary{background:#6c757d;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:#5a6268}.loading-status{display:flex;align-items:center;gap:1rem;margin-top:1rem;color:#6c757d}.spinner{width:24px;height:24px;border:3px solid #e9ecef;border-top-color:#3498db;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.report-results{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:1.5rem}.report-results h3{margin:0 0 1.5rem;color:#2c3e50;font-size:1.3rem;padding-bottom:1rem;border-bottom:1px solid #e9ecef}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card{background:#f8f9fa;border-radius:10px;padding:1.25rem;text-align:center;border-left:4px solid #dee2e6}.summary-card.match{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-left-color:#28a745}.summary-card.mismatch{background:linear-gradient(135deg,#fff3cd,#ffeeba);border-left-color:#ffc107}.summary-card.positive{background:linear-gradient(135deg,#d1ecf1,#bee5eb);border-left-color:#17a2b8}.summary-card.negative{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border-left-color:#dc3545}.card-value{font-size:2.5rem;font-weight:700;color:#2c3e50;line-height:1}.card-label{font-size:.85rem;color:#495057;margin-top:.5rem}.balance-summary{background:#f8f9fa;border-radius:10px;padding:1.25rem;margin-bottom:1.5rem}.balance-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #e9ecef;font-size:1rem}.balance-row:last-child{border-bottom:none}.balance-row.total{font-weight:700;font-size:1.1rem;background:#e9ecef;margin:.5rem -1.25rem -1.25rem;padding:1rem 1.25rem;border-radius:0 0 10px 10px}.balance-row.total.positive{background:#d4edda}.balance-row.total.negative{background:#f8d7da}.balance-row .amount{font-family:SF Mono,Monaco,Consolas,monospace;font-weight:600}.action-buttons{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.results-table-container{margin-top:1.5rem}.results-table-container h4{margin:0 0 1rem;color:#495057}.results-table{width:100%;border-collapse:collapse;font-size:.85rem}.results-table th,.results-table td{padding:.75rem;text-align:left;border-bottom:1px solid #e9ecef}.results-table th{background:#f1f3f5;font-weight:600;color:#495057;position:sticky;top:0}.results-table tbody tr:hover{background:#f8f9fa}.results-table .amount{font-family:SF Mono,Monaco,Consolas,monospace;text-align:right}.results-table .amount.positive{color:#28a745}.results-table .amount.negative{color:#dc3545}.results-table .status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;white-space:nowrap}.results-table .account-list{font-size:.8rem;color:#6c757d;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.more-notice{text-align:center;color:#6c757d;font-size:.9rem;margin-top:1rem;font-style:italic}.results-table tr.status-match td:first-child{border-left:3px solid #28a745}.results-table tr.status-positive td:first-child{border-left:3px solid #17a2b8}.results-table tr.status-negative td:first-child{border-left:3px solid #dc3545}.results-table tr.status-missing-ours td:first-child{border-left:3px solid #6c757d}.results-table tr.status-missing-theirs td:first-child{border-left:3px solid #ffc107}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.modal-content.email-preview{max-width:850px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e9ecef;background:#f8f9fa}.modal-header h3{margin:0;color:#2c3e50}.btn-close{background:none;border:none;font-size:1.5rem;color:#6c757d;cursor:pointer;padding:.25rem .5rem;line-height:1}.btn-close:hover{color:#dc3545}.modal-body{flex:1;overflow:auto;padding:0}.email-frame{padding:0;min-height:400px}.email-frame .header{border-radius:0}.modal-footer{display:flex;gap:1rem;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid #e9ecef;background:#f8f9fa}@media(max-width:768px){.reporting-container{padding:1rem}.report-cards{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}.action-buttons{flex-direction:column}.action-buttons button{width:100%}.results-table-container{overflow-x:auto}.modal-overlay{padding:1rem}}.email-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:2rem;animation:email-modal-fadeIn .2s ease-out}@keyframes email-modal-fadeIn{0%{opacity:0}to{opacity:1}}.email-modal-content{background:#fff;border-radius:12px;max-width:850px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:email-modal-slideIn .2s ease-out}@keyframes email-modal-slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.email-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e9ecef;background:#f8f9fa;border-radius:12px 12px 0 0}.email-modal-header h3{margin:0;color:#2c3e50;font-size:1.25rem}.email-modal-close{background:none;border:none;font-size:1.5rem;color:#6c757d;cursor:pointer;padding:.25rem .5rem;line-height:1;transition:color .2s}.email-modal-close:hover{color:#dc3545}.email-modal-body{flex:1;overflow:auto;padding:0}.email-modal-footer{display:flex;gap:1rem;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid #e9ecef;background:#f8f9fa;border-radius:0 0 12px 12px}.credit-reporting{padding:20px}.credit-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.credit-header h2{margin:0;color:#1f2937;font-size:1.75rem}.credit-actions{display:flex;gap:12px}.credit-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;text-align:center;border-left:4px solid #6b7280}.stat-card.reported{border-left-color:#10b981}.stat-card.pending{border-left-color:#f59e0b}.stat-card.not-reported{border-left-color:#ef4444}.stat-value{font-size:2rem;font-weight:700;color:#1f2937}.stat-label{font-size:.875rem;color:#6b7280;margin-top:4px}.credit-filters{display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap}.search-box{flex:1;min-width:300px;position:relative}.search-box i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#9ca3af}.search-box input{width:100%;padding:12px 12px 12px 42px;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem}.search-box input:focus{outline:none;border-color:#00a86b;box-shadow:0 0 0 3px #00a86b1a}.filter-buttons{display:flex;gap:8px}.filter-buttons button{padding:10px 16px;border:1px solid #e5e7eb;background:#fff;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s}.filter-buttons button:hover{background:#f9fafb}.filter-buttons button.active{background:#00a86b;color:#fff;border-color:#00a86b}.credit-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.credit-table{width:100%;border-collapse:collapse}.credit-table th{background:#f9fafb;padding:14px 16px;text-align:left;font-weight:600;color:#374151;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e5e7eb}.credit-table td{padding:14px 16px;border-bottom:1px solid #f3f4f6;color:#1f2937}.credit-table tbody tr:hover{background:#f9fafb}.credit-table .account-number{font-family:monospace;font-weight:600}.credit-table .balance{font-weight:600;color:#059669}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:500}.status-badge.reported{background:#d1fae5;color:#065f46}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.not-reporting{background:#f3f4f6;color:#6b7280}.btn-sm{padding:6px 12px;font-size:.85rem}.no-results{padding:40px;text-align:center;color:#6b7280}.credit-modal-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#0009;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;isolation:isolate}.credit-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:calc(100vh - 80px);width:95%;max-width:600px;overflow:hidden;display:flex;flex-direction:column}.credit-modal-content.large{max-width:1000px}.credit-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e0e0e0;background:linear-gradient(135deg,#00a86b,#008c5a);color:#fff}.credit-modal-header h2{margin:0;font-size:1.5rem;font-weight:600}.credit-modal-close{background:#fff3;border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;font-size:1.5rem;transition:all .2s}.credit-modal-close:hover{background:#ffffff4d}.credit-modal-body{padding:24px;overflow-y:auto;max-height:calc(80vh - 160px)}.credit-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb;background:#f9fafb}.config-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #e5e7eb}.config-section:last-child{border-bottom:none;margin-bottom:0}.config-section h3{margin:0 0 16px;color:#1f2937;font-size:1.1rem;font-weight:600}.config-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.config-field{display:flex;flex-direction:column;gap:6px}.config-field label{font-size:.85rem;font-weight:500;color:#374151}.config-field input,.config-field select{padding:10px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:.95rem}.config-field input:focus,.config-field select:focus{outline:none;border-color:#00a86b;box-shadow:0 0 0 3px #00a86b1a}.config-field input:disabled{background:#f3f4f6;cursor:not-allowed}.config-field.checkbox{flex-direction:row;align-items:center}.config-field.checkbox label{display:flex;align-items:center;gap:8px;cursor:pointer}.config-field.checkbox input[type=checkbox]{width:18px;height:18px;accent-color:#00a86b}.consumer-record{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:16px}.consumer-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.consumer-seq{background:#00a86b;color:#fff;padding:4px 10px;border-radius:4px;font-size:.8rem;font-weight:600}.consumer-name{font-weight:600;color:#1f2937}.consumer-grid{grid-template-columns:repeat(4,1fr)}.add-consumer{margin-top:8px}.report-options{display:flex;flex-direction:column;gap:24px}.report-summary{background:#f0f9ff;border:1px solid #bfdbfe;border-radius:8px;padding:16px}.report-summary h4{margin:0 0 8px;color:#1e40af}.report-summary p{margin:0;color:#1f2937}.report-formats h4{margin:0 0 12px;color:#1f2937}.format-buttons{display:flex;gap:12px;flex-wrap:wrap}.btn{padding:10px 20px;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px}.btn-primary{background:linear-gradient(135deg,#00a86b,#008c5a);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#008c5a,#007349);box-shadow:0 4px 12px #00a86b4d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:60px;color:#6b7280;font-size:1.1rem}@media(max-width:1024px){.credit-stats,.config-grid,.consumer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.credit-stats{grid-template-columns:1fr}.credit-filters{flex-direction:column}.filter-buttons{flex-wrap:wrap}.config-grid,.consumer-grid{grid-template-columns:1fr}.credit-table-container{overflow-x:auto}}.documents-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding:1rem 1.5rem;background:#f5f7fa;box-sizing:border-box}.documents-page h2{margin:0 0 .15rem;font-size:1.25rem;font-weight:600;color:#1a1a1a;flex-shrink:0}.documents-page h2 i{color:#00d68f}.documents-subtitle{color:#666;margin:0 0 .75rem;font-size:.8rem;flex-shrink:0}.doc-scroll-wrapper{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.doc-lookup-section{margin-bottom:16px;flex-shrink:0}.doc-lookup-row{display:flex;gap:10px;align-items:center}.doc-lookup-input{flex:1;max-width:340px;padding:10px 14px;font-size:1rem;border:2px solid #ccc;border-radius:8px;outline:none;transition:border-color .2s}.doc-lookup-input:focus{border-color:#00783c}.doc-lookup-btn{padding:10px 20px;font-size:.95rem;font-weight:600;color:#fff;background:#00783c;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.doc-lookup-btn:hover:not(:disabled){background:#005a2d}.doc-lookup-btn:disabled{opacity:.5;cursor:not-allowed}.doc-reset-btn{padding:10px 16px;font-size:.9rem;color:#666;background:#f0f0f0;border:1px solid #ddd;border-radius:8px;cursor:pointer}.doc-reset-btn:hover{background:#e0e0e0}.doc-error{margin-top:10px;padding:10px 14px;background:#fef2f2;color:#b91c1c;border:1px solid #fca5a5;border-radius:8px;font-size:.9rem}.doc-account-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:16px 20px;box-shadow:0 2px 8px #0000000f;margin-bottom:16px;flex-shrink:0}.doc-account-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #eee}.doc-acct-number{font-size:1.3rem;font-weight:700;color:#1a1a1a;font-family:Courier New,monospace;letter-spacing:.5px}.doc-acct-balance{font-size:1.1rem;font-weight:600;color:#333;padding:4px 14px;background:#f0fdf4;border-radius:20px}.doc-acct-balance.zero{color:#999;background:#f5f5f5}.doc-account-details{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px;font-size:.85rem;color:#444}.doc-account-details strong{color:#222}.doc-type-section{margin-bottom:18px}.doc-type-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.doc-type-header h3{margin:0;font-size:1.05rem;color:#333}.doc-type-actions{display:flex;gap:8px}.doc-link-btn{background:none;border:none;color:#00783c;font-size:.85rem;cursor:pointer;text-decoration:underline;padding:2px 6px}.doc-link-btn:hover{color:#005a2d}.doc-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:10px}.doc-type-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;background:#fafafa;border:2px solid #ddd;border-radius:10px;cursor:pointer;transition:all .15s;text-align:center}.doc-type-card:hover{border-color:#00783c;background:#f0fdf4}.doc-type-card.selected{border-color:#00783c;background:#ecfdf5;box-shadow:0 0 0 2px #00783c26}.doc-type-icon{font-size:1.5rem}.doc-type-label{font-weight:700;font-size:.95rem;color:#1a1a1a}.doc-type-desc{font-size:.72rem;color:#888;line-height:1.2}.doc-overpay-row{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:.95rem;color:#333}.doc-overpay-row label{font-weight:600}.doc-overpay-input{width:120px;padding:8px 10px;font-size:.95rem;border:2px solid #ccc;border-radius:6px;outline:none}.doc-overpay-input:focus{border-color:#00783c}.doc-motion-inputs{margin-top:16px;padding:16px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.doc-input-row{display:flex;align-items:center;gap:12px;font-size:.95rem;color:#333}.doc-input-row label{font-weight:600;min-width:180px}.doc-date-input{padding:8px 12px;font-size:.95rem;border:2px solid #ccc;border-radius:6px;outline:none;min-width:160px}.doc-date-input:focus{border-color:#00783c}.doc-date-preview{margin-top:12px;padding:10px 14px;background:#e8f5e9;border-radius:6px;font-size:.9rem;color:#2e7d32}.doc-type-hint{font-size:.85rem;color:#666;margin:4px 0 12px}.doc-generate-btns{display:flex;gap:12px;margin-top:16px}.doc-generate-btn{flex:1;padding:14px;font-size:1.05rem;font-weight:700;color:#fff;border:none;border-radius:10px;cursor:pointer;transition:background .2s}.doc-generate-word{background:#1976d2}.doc-generate-word:hover:not(:disabled){background:#1565c0}.doc-generate-pdf{background:#d32f2f}.doc-generate-pdf:hover:not(:disabled){background:#c62828}.doc-generate-btn:hover:not(:disabled){background:#005a2d}.doc-generate-btn:disabled{opacity:.45;cursor:not-allowed}.doc-results{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f}.doc-results h3{margin:0 0 14px;font-size:1.05rem;color:#333}.doc-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.doc-result-card{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;cursor:pointer;transition:all .15s;text-align:left}.doc-result-card:hover:not(.disabled){background:#dcfce7;border-color:#22c55e}.doc-result-card.disabled{background:#f9fafb;border-color:#e5e7eb;cursor:not-allowed;opacity:.6}.doc-result-icon{font-size:1.4rem;flex-shrink:0}.doc-result-label{flex:1;font-size:.9rem;font-weight:600;color:#1a1a1a}.doc-result-action{font-size:.8rem;color:#00783c;font-weight:600;white-space:nowrap}.doc-result-card.disabled .doc-result-action{color:#999}.doc-action-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;background:#fff;border:2px solid #22c55e;border-radius:6px;color:#16a34a;font-weight:600;font-size:.78rem;cursor:pointer;transition:all .15s}.doc-action-btn:hover{background:#16a34a;color:#fff}.doc-action-btn.secondary{border-color:#bbb;color:#666;font-weight:500}.doc-action-btn.secondary:hover{background:#666;color:#fff}.doc-tabs{display:flex;gap:0;margin-bottom:16px;border-bottom:2px solid #e0e0e0;flex-shrink:0;background:#f5f7fa;position:sticky;top:0;z-index:5}.doc-tab{padding:12px 24px;font-size:.95rem;font-weight:600;color:#666;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:all .15s;margin-bottom:-2px}.doc-tab:hover{color:#333;background:#f5f5f5}.doc-tab.active{color:#00783c;border-bottom-color:#00783c}.doc-tab-count{display:inline-block;padding:1px 8px;font-size:.75rem;font-weight:700;background:#e0e0e0;color:#555;border-radius:10px;margin-left:6px}.doc-tab.active .doc-tab-count{background:#dcfce7;color:#166534}.doc-template-section{margin-bottom:20px}.doc-template-toolbar{display:flex;gap:10px;margin-bottom:12px}.doc-template-search{flex:1;padding:10px 14px;font-size:.95rem;border:2px solid #ccc;border-radius:8px;outline:none;transition:border-color .2s}.doc-template-search:focus{border-color:#00783c}.doc-category-select{padding:10px 14px;font-size:.9rem;border:2px solid #ccc;border-radius:8px;background:#fff;cursor:pointer;min-width:180px}.doc-category-select:focus{border-color:#00783c;outline:none}.doc-template-count{font-size:.82rem;color:#888;margin-bottom:16px}.doc-template-group{margin-bottom:18px}.doc-group-heading{margin:0 0 8px;font-size:.95rem;color:#333;border-bottom:1px solid #eee;padding-bottom:6px}.doc-group-count{font-weight:400;color:#999;font-size:.82rem}.doc-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.doc-template-list{max-height:400px;overflow-y:auto;padding-right:8px}.doc-template-card{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .12s;text-align:left}.doc-template-card:hover{background:#f0fdf4;border-color:#86efac;box-shadow:0 1px 4px #00783c1a}.doc-tmpl-icon{font-size:1.2rem;flex-shrink:0}.doc-tmpl-code{font-weight:700;font-size:.82rem;color:#00783c;font-family:Courier New,monospace;flex-shrink:0;min-width:48px}.doc-tmpl-name{font-size:.82rem;color:#444;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-no-results{padding:40px 20px;text-align:center;color:#888;font-size:.95rem}.doc-merge-panel{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f}.doc-merge-header{margin-bottom:18px}.doc-back-btn{background:none;border:none;color:#00783c;font-size:.88rem;cursor:pointer;padding:4px 0;margin-bottom:10px;font-weight:600}.doc-back-btn:hover{text-decoration:underline}.doc-merge-title{display:flex;align-items:center;gap:12px}.doc-merge-icon{font-size:2rem}.doc-merge-title h3{margin:0;font-size:1.15rem;color:#1a1a1a}.doc-merge-code{font-size:.82rem;color:#888;font-family:Courier New,monospace}.doc-field-editor{margin-bottom:20px}.doc-field-editor h4{margin:0 0 4px;font-size:.95rem;color:#333}.doc-field-hint{font-size:.82rem;color:#888;margin:0 0 12px}.doc-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;max-height:280px;overflow-y:auto;padding-right:8px}.doc-field-row{display:flex;align-items:center;gap:8px;padding:4px 0}.doc-field-row.overridden .doc-field-input{border-color:#f59e0b;background:#fffbeb}.doc-field-label{flex:0 0 200px;font-size:.82rem;color:#555;display:flex;align-items:center;gap:6px}.doc-field-code{font-family:Courier New,monospace;font-size:.72rem;color:#999;background:#f0f0f0;padding:1px 4px;border-radius:3px}.doc-field-input{flex:1;padding:5px 8px;font-size:.85rem;border:1px solid #ddd;border-radius:5px;outline:none;transition:border-color .15s;min-width:0}.doc-field-input:focus{border-color:#00783c}.doc-quickdoc-section{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f}.doc-scroll-wrapper::-webkit-scrollbar,.doc-template-list::-webkit-scrollbar,.doc-field-grid::-webkit-scrollbar{width:8px}.doc-scroll-wrapper::-webkit-scrollbar-track,.doc-template-list::-webkit-scrollbar-track,.doc-field-grid::-webkit-scrollbar-track{background:#f0f0f0;border-radius:4px}.doc-scroll-wrapper::-webkit-scrollbar-thumb,.doc-template-list::-webkit-scrollbar-thumb,.doc-field-grid::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.doc-scroll-wrapper::-webkit-scrollbar-thumb:hover,.doc-template-list::-webkit-scrollbar-thumb:hover,.doc-field-grid::-webkit-scrollbar-thumb:hover{background:#aaa}.status-indicator-container{position:fixed;top:8px;left:60px;z-index:10000;display:flex;flex-direction:row;gap:8px;flex-wrap:wrap}.status-indicator{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600;box-shadow:0 2px 8px #00000040;animation:fadeIn .3s ease-out;white-space:nowrap}@keyframes fadeIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.status-indicator.status-bank-on{background:linear-gradient(90deg,#dc3545,#c82333);color:#fff}.status-indicator.status-dayend-on{background:linear-gradient(90deg,#fd7e14,#e76f00);color:#fff}.status-indicator.status-bank-off{background:linear-gradient(90deg,#28a745,#218838);color:#fff}.status-indicator.status-dayend-off{background:linear-gradient(90deg,#17a2b8,#138496);color:#fff}.status-indicator .status-icon{font-size:14px}.status-indicator .status-name{font-weight:700}.status-indicator .status-action{font-weight:400;opacity:.9}.status-indicator.status-my-active{animation:fadeIn .3s ease-out,pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 2px 8px #00000040}50%{box-shadow:0 2px 12px #0006}}.status-dismiss{background:#ffffff40;border:none;color:#fff;font-size:14px;font-weight:700;width:20px;height:20px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-left:4px;transition:background .2s;line-height:1}.status-dismiss:hover{background:#fff6}.client-reports{padding:2rem;width:100%;box-sizing:border-box}.reports-header{margin-bottom:2rem}.reports-title-row h1{color:#2c3e50;font-size:2rem;font-weight:700;margin:0 0 .5rem;display:flex;align-items:center;gap:.75rem}.reports-title-row h1 i{color:#2e7d32}.reports-subtitle{color:#666;font-size:1rem}.report-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem}.report-type-card{display:flex;align-items:center;gap:1.25rem;padding:1.5rem;background:#fff;border:2px solid #e8e8e8;border-radius:14px;cursor:pointer;transition:all .3s ease;text-align:left;font-family:inherit;width:100%}.report-type-card:hover{border-color:#2e7d32;transform:translateY(-3px);box-shadow:0 8px 24px #2e7d321f}.report-type-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;flex-shrink:0}.report-type-info{flex:1}.report-type-info h3{color:#2c3e50;font-size:1.05rem;font-weight:700;margin:0 0 .35rem}.report-type-info p{color:#888;font-size:.85rem;margin:0;line-height:1.4}.report-arrow{color:#ccc;font-size:1rem;transition:all .3s}.report-type-card:hover .report-arrow{color:#2e7d32;transform:translate(4px)}.report-workspace{background:#fff;border-radius:16px;box-shadow:0 2px 12px #0000000f;overflow:hidden}.report-toolbar{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#fafafa,#f5f5f5);border-bottom:1px solid #eee}.btn-back{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #ddd;border-radius:8px;color:#555;cursor:pointer;font-family:inherit;font-size:.85rem;transition:all .2s}.btn-back:hover{border-color:#2e7d32;color:#2e7d32}.report-active-title{flex:1;font-size:1.2rem;font-weight:700;color:#2c3e50;margin:0;display:flex;align-items:center;gap:.5rem}.report-active-title i{color:#2e7d32}.report-actions{display:flex;gap:.75rem}.btn-export{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .2s}.btn-export.pdf{background:linear-gradient(135deg,#c62828,#d32f2f)}.btn-export.pdf:hover:not(:disabled){background:linear-gradient(135deg,#b71c1c,#c62828);transform:translateY(-1px);box-shadow:0 4px 12px #c628284d}.btn-export.csv{background:linear-gradient(135deg,#2e7d32,#388e3c)}.btn-export.csv:hover:not(:disabled){background:linear-gradient(135deg,#1b5e20,#2e7d32);transform:translateY(-1px);box-shadow:0 4px 12px #2e7d324d}.btn-export:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.report-filters{padding:1.25rem 1.5rem;border-bottom:1px solid #f0f0f0}.filter-group label{display:block;font-size:.8rem;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.6rem}.filter-pills{display:flex;gap:.5rem;flex-wrap:wrap}.pill{padding:.45rem 1rem;border:2px solid #e0e0e0;border-radius:20px;background:#fff;color:#555;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}.pill:hover{border-color:#2e7d32;color:#2e7d32}.pill.active{background:#2e7d32;border-color:#2e7d32;color:#fff}.custom-date-range{display:flex;align-items:center;gap:.75rem;margin-top:.75rem}.custom-date-range input{padding:.5rem .75rem;border:2px solid #e0e0e0;border-radius:8px;font-size:.85rem;font-family:inherit}.custom-date-range span{color:#999;font-size:.85rem}.report-preview{padding:1.5rem}.preview-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.preview-stat{background:linear-gradient(135deg,#f8faf8,#f0f5f0);border-left:4px solid #2e7d32;border-radius:10px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.3rem}.preview-stat-label{font-size:.78rem;color:#888;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.preview-stat-value{font-size:1.1rem;font-weight:700;color:#2c3e50}.preview-table-container{border:1px solid #e8e8e8;border-radius:10px;overflow:hidden}.preview-table{width:100%;border-collapse:collapse}.preview-table thead{background:linear-gradient(135deg,#2e7d32,#388e3c)}.preview-table th{padding:.85rem 1rem;text-align:left;color:#fff;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.preview-table td{padding:.75rem 1rem;border-bottom:1px solid #f0f0f0;font-size:.88rem;color:#444}.preview-table tbody tr:nth-child(2n){background:#fafafa}.preview-table tbody tr:hover{background:#2e7d320a}.preview-note{text-align:center;color:#999;font-size:.82rem;padding:.75rem;border-top:1px solid #f0f0f0;margin:0;font-style:italic}.report-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:4rem;color:#999;font-size:1rem}.report-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:#ccc}.report-empty i{font-size:3rem;margin-bottom:1rem}.report-empty p{font-size:1rem;color:#999}@media(max-width:768px){.client-reports{padding:1rem}.report-type-grid{grid-template-columns:1fr}.report-toolbar{flex-wrap:wrap}.report-actions{width:100%;justify-content:flex-end}.preview-stats-grid{grid-template-columns:1fr}.filter-pills{flex-direction:column}}.client-messaging{padding:0;width:100%;box-sizing:border-box;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.messaging-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-shrink:0}.messaging-header h1{color:#2c3e50;font-size:2rem;font-weight:700;margin:0 0 .3rem;display:flex;align-items:center;gap:.75rem}.messaging-header h1 i{color:#7b1fa2}.messaging-subtitle{color:#888;font-size:.95rem}.unread-indicator{color:#c62828;font-weight:600}.btn-new-ticket{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.5rem;background:linear-gradient(135deg,#7b1fa2,#9c27b0);color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-new-ticket:hover{background:linear-gradient(135deg,#6a1b9a,#8e24aa);transform:translateY(-2px);box-shadow:0 6px 20px #7b1fa24d}.messaging-layout{display:grid;grid-template-columns:360px 1fr;gap:0;flex:1;min-height:0;border:1px solid #e8e8e8;border-radius:16px;overflow:hidden;background:#fff}.ticket-list-panel{border-right:1px solid #e8e8e8;display:flex;flex-direction:column;background:#fafafa}.ticket-list-filters{display:flex;gap:.25rem;padding:.75rem;border-bottom:1px solid #eee;background:#fff}.ticket-filter-btn{flex:1;padding:.45rem .5rem;border:none;border-radius:8px;background:transparent;color:#888;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.ticket-filter-btn:hover{background:#f0f0f0}.ticket-filter-btn.active{background:#7b1fa2;color:#fff}.ticket-list{flex:1;overflow-y:auto}.ticket-item{display:flex;flex-direction:column;gap:.4rem;padding:1rem;border:none;background:#fff;width:100%;text-align:left;cursor:pointer;transition:all .15s;font-family:inherit;border-bottom:1px solid #f0f0f0;position:relative}.ticket-item:hover{background:#f8f8f8}.ticket-item.selected{background:#7b1fa20f;border-left:3px solid #7b1fa2}.ticket-item.has-unread{background:#7b1fa208}.ticket-item-header{display:flex;justify-content:space-between;align-items:center}.ticket-item-subject{font-size:.9rem;font-weight:600;color:#2c3e50;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;margin-right:.5rem}.ticket-item-time{font-size:.7rem;color:#bbb;white-space:nowrap}.ticket-item-preview{font-size:.8rem;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ticket-item-meta{display:flex;align-items:center;gap:.5rem}.ticket-status-pill{display:inline-block;padding:.15rem .5rem;border-radius:8px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.ticket-priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ticket-category{font-size:.7rem;color:#aaa}.ticket-unread-dot{position:absolute;top:50%;right:12px;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background:#7b1fa2}.ticket-list-loading,.ticket-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;color:#ccc}.ticket-list-empty i{font-size:2.5rem;margin-bottom:.75rem}.ticket-list-empty p{color:#999}.thread-panel{display:flex;flex-direction:column;min-height:0}.thread-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ccc}.thread-empty i{font-size:3.5rem;margin-bottom:1rem;color:#ddd}.thread-empty h3{color:#999;margin:0 0 .5rem}.thread-empty p{color:#bbb}.thread-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid #eee;background:linear-gradient(135deg,#fafafa,#f5f5f5)}.thread-header-info h3{margin:0 0 .4rem;font-size:1.05rem;color:#2c3e50}.thread-header-meta{display:flex;align-items:center;gap:.75rem}.thread-category,.thread-assigned{font-size:.78rem;color:#888;display:flex;align-items:center;gap:.3rem}.btn-back-mobile{display:none;background:none;border:1px solid #ddd;border-radius:8px;padding:.5rem .75rem;color:#555;cursor:pointer}.thread-messages{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;background:#f9f9fb}.message-bubble{max-width:70%;padding:.85rem 1.15rem;border-radius:16px;position:relative}.message-bubble.sent{align-self:flex-end;background:linear-gradient(135deg,#7b1fa2,#9c27b0);color:#fff;border-bottom-right-radius:4px}.message-bubble.received{align-self:flex-start;background:#fff;border:1px solid #e8e8e8;color:#333;border-bottom-left-radius:4px}.message-sender{font-size:.7rem;font-weight:700;margin-bottom:.3rem;opacity:.8}.message-bubble.received .message-sender{color:#7b1fa2}.message-text{font-size:.9rem;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.message-attachment{display:inline-flex;align-items:center;gap:.4rem;margin-top:.5rem;padding:.35rem .75rem;background:#fff3;border-radius:8px;font-size:.78rem;color:inherit;text-decoration:none}.message-bubble.received .message-attachment{background:#7b1fa214;color:#7b1fa2}.message-time{font-size:.65rem;opacity:.6;margin-top:.4rem;text-align:right}.thread-loading,.thread-no-messages{text-align:center;padding:2rem;color:#999}.thread-input{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #eee;background:#fff;align-items:flex-end}.thread-input textarea{flex:1;padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:12px;resize:none;font-family:inherit;font-size:.9rem;line-height:1.4;transition:border-color .2s}.thread-input textarea:focus{outline:none;border-color:#7b1fa2}.btn-send{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#7b1fa2,#9c27b0);border:none;color:#fff;font-size:1.1rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-send:hover:not(:disabled){background:linear-gradient(135deg,#6a1b9a,#8e24aa);transform:scale(1.05)}.btn-send:disabled{opacity:.4;cursor:not-allowed}.new-ticket-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.new-ticket-modal{background:#fff;border-radius:20px;width:560px;max-width:95vw;max-height:90vh;overflow-y:auto;box-shadow:0 24px 60px #0003;animation:modalSlide .3s ease-out}@keyframes modalSlide{0%{transform:translateY(20px) scale(.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.new-ticket-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #eee}.new-ticket-header h2{margin:0;font-size:1.3rem;color:#2c3e50;display:flex;align-items:center;gap:.6rem}.new-ticket-header h2 i{color:#7b1fa2}.btn-close-modal{background:none;border:none;font-size:1.2rem;color:#999;cursor:pointer;padding:.4rem;border-radius:8px;transition:all .2s}.btn-close-modal:hover{background:#f0f0f0;color:#555}.new-ticket-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{font-size:.82rem;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.3px}.form-group input,.form-group select,.form-group textarea{padding:.65rem .85rem;border:2px solid #e0e0e0;border-radius:10px;font-size:.9rem;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#7b1fa2}.form-group textarea{resize:vertical;line-height:1.5}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.new-ticket-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #eee;background:#fafafa;border-radius:0 0 20px 20px}.btn-cancel{padding:.6rem 1.25rem;background:#fff;border:2px solid #e0e0e0;border-radius:10px;color:#666;font-family:inherit;font-size:.85rem;cursor:pointer;transition:all .2s}.btn-cancel:hover{border-color:#999}.btn-create-ticket{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.5rem;background:linear-gradient(135deg,#7b1fa2,#9c27b0);color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-create-ticket:hover:not(:disabled){background:linear-gradient(135deg,#6a1b9a,#8e24aa);box-shadow:0 4px 12px #7b1fa24d}.btn-create-ticket:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.client-messaging{padding:1rem;height:calc(100vh - 140px)}.messaging-layout{grid-template-columns:1fr}.ticket-list-panel{border-right:none;border-bottom:1px solid #eee;max-height:40vh}.btn-back-mobile{display:block}.message-bubble{max-width:85%}.messaging-header{flex-direction:column;align-items:flex-start;gap:1rem}}.client-remittance{padding:2rem;width:100%;box-sizing:border-box}.remittance-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.remittance-header h1{color:#2c3e50;font-size:2rem;font-weight:700;margin:0 0 .3rem;display:flex;align-items:center;gap:.75rem}.remittance-header h1 i{color:#2e7d32}.remittance-subtitle{color:#888;font-size:.95rem}.btn-export-remittance{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.5rem;background:linear-gradient(135deg,#c62828,#d32f2f);color:#fff;border:none;border-radius:10px;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-export-remittance:hover:not(:disabled){background:linear-gradient(135deg,#b71c1c,#c62828);transform:translateY(-2px);box-shadow:0 6px 20px #c6282840}.btn-export-remittance:disabled{opacity:.5;cursor:not-allowed}.remittance-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem}.remittance-summary-card{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:#fff;border-radius:14px;border:2px solid #f0f0f0;box-shadow:0 2px 8px #0000000a;transition:all .3s}.remittance-summary-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #00000014}.rsc-icon{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:#fff;flex-shrink:0}.remittance-summary-card.gross .rsc-icon{background:linear-gradient(135deg,#1976d2,#42a5f5)}.remittance-summary-card.commission .rsc-icon{background:linear-gradient(135deg,#f57c00,#ffb74d)}.remittance-summary-card.net .rsc-icon{background:linear-gradient(135deg,#2e7d32,#66bb6a)}.remittance-summary-card.count .rsc-icon{background:linear-gradient(135deg,#7b1fa2,#ba68c8)}.rsc-info{display:flex;flex-direction:column}.rsc-label{font-size:.75rem;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.5px}.rsc-value{font-size:1.35rem;font-weight:700;color:#2c3e50}.rsc-sub{font-size:.75rem;color:#aaa}.remittance-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.remittance-view-toggle{display:flex;background:#f0f0f0;border-radius:10px;padding:3px}.toggle-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 1.1rem;border:none;border-radius:8px;background:transparent;color:#888;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s}.toggle-btn.active{background:#fff;color:#2e7d32;box-shadow:0 2px 6px #0000001a}.remittance-date-pills{display:flex;gap:.4rem}.rdate-pill{padding:.4rem .9rem;border:2px solid #e0e0e0;border-radius:18px;background:#fff;color:#666;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.rdate-pill:hover{border-color:#2e7d32;color:#2e7d32}.rdate-pill.active{background:#2e7d32;border-color:#2e7d32;color:#fff}.remittance-batches{display:flex;flex-direction:column;gap:.75rem}.batch-card{display:flex;align-items:center;gap:1.5rem;padding:1.25rem 1.5rem;background:#fff;border:2px solid #f0f0f0;border-radius:14px;cursor:pointer;transition:all .2s;width:100%;text-align:left;font-family:inherit}.batch-card:hover{border-color:#2e7d32;transform:translateY(-2px);box-shadow:0 6px 20px #2e7d321a}.batch-card-left{flex:1}.batch-month-badge{font-size:1.05rem;font-weight:700;color:#2c3e50;display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.batch-month-badge i{color:#2e7d32}.batch-count{font-size:.8rem;color:#999}.batch-card-right{text-align:right}.batch-gross{display:block;font-size:1.15rem;font-weight:700;color:#2c3e50}.batch-net{display:block;font-size:.78rem;color:#2e7d32;font-weight:600}.batch-arrow{color:#ccc;transition:transform .2s}.batch-card:hover .batch-arrow{color:#2e7d32;transform:translate(4px)}.detail-header{display:flex;align-items:center;gap:1rem;padding:1rem 0;margin-bottom:1rem}.btn-back-batch{display:flex;align-items:center;gap:.5rem;padding:.45rem .9rem;background:#fff;border:1px solid #ddd;border-radius:8px;color:#555;cursor:pointer;font-family:inherit;font-size:.82rem;transition:all .2s}.btn-back-batch:hover{border-color:#2e7d32;color:#2e7d32}.detail-header h3{flex:1;margin:0;font-size:1.1rem;color:#2c3e50}.btn-export-batch{display:flex;align-items:center;gap:.4rem;padding:.45rem .9rem;background:#2e7d32;color:#fff;border:none;border-radius:8px;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-export-batch:hover:not(:disabled){background:#1b5e20}.remittance-table-container{background:#fff;border:1px solid #e8e8e8;border-radius:14px;overflow:hidden}.remittance-table{width:100%;border-collapse:collapse}.remittance-table thead{background:linear-gradient(135deg,#2e7d32,#388e3c)}.remittance-table th{padding:.85rem 1rem;text-align:left;color:#fff;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.remittance-table td{padding:.75rem 1rem;border-bottom:1px solid #f0f0f0;font-size:.88rem;color:#444}.remittance-table tbody tr:nth-child(2n){background:#fafafa}.remittance-table tbody tr:hover{background:#2e7d320a}.remittance-table tfoot{background:linear-gradient(135deg,#f5f5f5,#eee)}.remittance-table tfoot td{border-top:2px solid #2e7d32;font-weight:700;color:#2c3e50}.text-right{text-align:right!important}.debtor-cell{font-weight:600;color:#2c3e50!important}.commission-cell{color:#f57c00!important}.net-cell{color:#2e7d32!important;font-weight:600}.method-badge{display:inline-block;padding:.15rem .5rem;background:#1976d214;color:#1976d2;border-radius:6px;font-size:.72rem;font-weight:600}.remittance-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:4rem;color:#999}.remittance-empty{display:flex;flex-direction:column;align-items:center;padding:4rem 2rem;text-align:center}.remittance-empty i{font-size:3.5rem;color:#ddd;margin-bottom:1rem}.remittance-empty h3{color:#2c3e50;margin:0 0 .5rem}.remittance-empty p{color:#999}@media(max-width:768px){.client-remittance{padding:1rem}.remittance-header{flex-direction:column;align-items:flex-start;gap:1rem}.remittance-summary-grid{grid-template-columns:repeat(2,1fr)}.remittance-controls{flex-direction:column}.remittance-table-container{overflow-x:auto}.detail-header{flex-wrap:wrap}}.client-activity-feed{max-width:1100px;margin:0 auto;padding:32px 24px}.activity-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.activity-header h1{font-size:1.6rem;font-weight:700;color:#1a1a2e;margin:0;display:flex;align-items:center;gap:12px}.activity-header h1 i{color:#1976d2;font-size:1.3rem}.activity-subtitle{color:#666;font-size:.92rem;margin-top:4px;display:block}.btn-refresh-activity{background:#f0f4ff;color:#1976d2;border:1px solid #c8d8f0;border-radius:8px;padding:8px 18px;font-size:.88rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.btn-refresh-activity:hover:not(:disabled){background:#1976d2;color:#fff}.btn-refresh-activity:disabled{opacity:.6;cursor:not-allowed}.activity-stats-bar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.activity-stat-chip{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#f5f7fa;border-radius:20px;font-size:.85rem;font-weight:600;color:#555;border:1px solid #e8eaf0}.activity-stat-chip i{font-size:.8rem}.activity-stat-chip.payment{color:#2e7d32;background:#2e7d320f;border-color:#2e7d3226}.activity-stat-chip.update{color:#f57c00;background:#f57c000f;border-color:#f57c0026}.activity-stat-chip.document{color:#7b1fa2;background:#7b1fa20f;border-color:#7b1fa226}.activity-filters{background:#fff;border-radius:12px;padding:16px 20px;box-shadow:0 1px 4px #0000000f;margin-bottom:24px;border:1px solid #eef0f4}.activity-search{position:relative;margin-bottom:14px}.activity-search i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#999;font-size:.9rem}.activity-search input{width:100%;padding:10px 14px 10px 40px;border:1.5px solid #e0e4ea;border-radius:8px;font-size:.92rem;outline:none;transition:border-color .2s;box-sizing:border-box}.activity-search input:focus{border-color:#1976d2;box-shadow:0 0 0 3px #1976d214}.activity-filter-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.activity-type-pills{display:flex;gap:6px;flex-wrap:wrap}.activity-pill{padding:6px 14px;border:1px solid #dfe3ea;background:#f8f9fb;border-radius:16px;font-size:.8rem;font-weight:500;color:#555;cursor:pointer;transition:all .2s ease;white-space:nowrap}.activity-pill:hover{background:#eef2ff;border-color:#c0ccf0}.activity-pill.active{background:#1976d2;color:#fff;border-color:#1976d2}.activity-date-pills{display:flex;gap:4px}.adate-pill{padding:5px 12px;border:1px solid #dfe3ea;background:#f8f9fb;border-radius:6px;font-size:.78rem;font-weight:600;color:#666;cursor:pointer;transition:all .15s ease}.adate-pill:hover{background:#eef2ff}.adate-pill.active{background:#1a1a2e;color:#fff;border-color:#1a1a2e}.activity-loading{text-align:center;padding:60px 20px;color:#888;font-size:1rem}.activity-loading i{margin-right:10px;color:#1976d2}.activity-empty{text-align:center;padding:80px 20px;color:#999}.activity-empty i{font-size:3rem;color:#d0d5e0;margin-bottom:16px;display:block}.activity-empty h3{color:#555;font-size:1.15rem;margin:0 0 8px}.activity-empty p{color:#888;font-size:.92rem;margin:0}.activity-timeline{position:relative}.activity-date-group{margin-bottom:28px}.activity-date-label{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#1976d2;margin-bottom:14px;padding-left:36px}.activity-item{display:flex;gap:0;margin-bottom:2px;position:relative}.activity-timeline-line{width:36px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;position:relative}.activity-timeline-line:after{content:"";position:absolute;top:18px;bottom:-2px;width:2px;background:#e8ecf0;left:50%;transform:translate(-50%)}.activity-item:last-child .activity-timeline-line:after{display:none}.activity-dot{width:12px;height:12px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 2px currentColor;z-index:1;margin-top:6px;flex-shrink:0}.activity-card{flex:1;background:#fff;border-radius:10px;padding:14px 18px;box-shadow:0 1px 3px #0000000d;border:1px solid #eef0f4;border-left:3px solid #ccc;margin-bottom:8px;transition:all .2s ease}.activity-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.activity-card-header{display:flex;align-items:center;gap:12px;margin-bottom:6px}.activity-card-icon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0}.activity-card-title-row{flex:1;display:flex;align-items:center;justify-content:space-between;gap:10px}.activity-card-title{font-weight:600;font-size:.92rem;color:#1a1a2e}.activity-card-time{font-size:.78rem;color:#999;white-space:nowrap;flex-shrink:0}.activity-card-description{color:#555;font-size:.88rem;margin:0 0 10px;line-height:1.5;padding-left:46px}.activity-card-tags{display:flex;flex-wrap:wrap;gap:6px;padding-left:46px}.activity-tag{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:12px;background:#f5f7fa;font-size:.76rem;font-weight:500;color:#666;border:1px solid #eaecf0}.activity-tag i{font-size:.7rem;opacity:.7}.activity-tag.amount{background:#2e7d320f;color:#2e7d32;border-color:#2e7d3226;font-weight:600}.activity-tag.agent{background:#1976d20f;color:#1565c0;border-color:#1976d21f}@media(max-width:768px){.client-activity-feed{padding:20px 16px}.activity-header{flex-direction:column;gap:12px}.activity-header h1{font-size:1.3rem}.activity-filter-row{flex-direction:column;align-items:flex-start}.activity-card-description,.activity-card-tags{padding-left:0}.activity-card-title-row{flex-direction:column;align-items:flex-start;gap:2px}.activity-stats-bar{flex-direction:column}}
