:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-height:100vh;margin:0}.page-header{flex-direction:column;gap:2px;display:flex}.page-title{color:#071950;margin:0;font-size:1.35rem;font-weight:600}.page-subtitle{color:#94a3b8;margin:0;font-size:.88rem}.lang-select{font-family:Segoe UI,system-ui,-apple-system,sans-serif;position:relative}.lang-trigger{cursor:pointer;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:8px;padding:8px 12px;font-size:.9rem;transition:border-color .2s,background .2s;display:flex}.lang-trigger:hover{background:#f8fafc;border-color:#cbd5e1}.lang-flag{font-size:1.1rem;line-height:1}.lang-label{font-weight:500}.lang-chevron{color:#94a3b8;width:15px;height:15px;transition:transform .2s}.lang-chevron.open{transform:rotate(180deg)}.lang-menu{z-index:20;background:#fff;border:1px solid #e2e8f0;border-radius:10px;min-width:100%;margin:0;padding:6px;list-style:none;animation:.15s both lang-in;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px -8px #0f172a33}@keyframes lang-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lang-option{cursor:pointer;color:#0f172a;text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:.9rem;transition:background .15s;display:flex}.lang-option:hover{background:#f1f5f9}.lang-option.active{background:#eef2f9;font-weight:600}.layout{--navy:#071950;--app-bg:#f8fafc;grid-template-columns:18% auto;height:100vh;display:grid;overflow:hidden}.layout-left,.layout-body{border:1px solid #e2e8f0}.layout-left{grid-template-rows:116px 1fr;display:grid}.layout-left-top{border-bottom:1px solid #e2e8f0;justify-content:flex-start;align-items:center;padding:8px 10px;display:flex}.layout-logo{object-fit:contain;max-width:100%;height:100px}.sidebar-nav{flex-direction:column;gap:4px;padding:16px 20px;display:flex}.nav-link:first-child{margin-top:10px}.nav-link{color:#475569;border-radius:8px;align-items:center;gap:12px;padding:11px 14px;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.nav-link:hover{color:#0f172a;background:#f8fafc}.nav-link.active{background:var(--navy);color:#fff}.nav-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-icon svg{width:18px;height:18px}.layout-body{background:#fff;grid-template-rows:116px 1fr;display:grid;overflow:hidden}.layout-body-top{background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin:16px;padding:0 20px;display:flex}.topbar-heading{min-width:0}.topbar-heading .page-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.topbar-right{flex-shrink:0;align-items:center;gap:14px;display:flex}.topbar-profile{position:relative}.topbar-avatar{background:var(--navy);color:#fff;cursor:pointer;border:1px solid #e2e8f0;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;font-size:.95rem;font-weight:600;transition:opacity .15s;display:inline-flex}.topbar-avatar:hover{opacity:.85}.profile-menu{z-index:50;background:#fff;border:1px solid #e2e8f0;border-radius:12px;min-width:200px;padding:8px;animation:.15s both profile-in;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px -8px #0f172a38}@keyframes profile-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.profile-info{border-bottom:1px solid #eef1f5;flex-direction:column;gap:2px;padding:8px 10px 12px;display:flex}.profile-name{color:var(--navy);font-size:.95rem;font-weight:600}.profile-role{color:#94a3b8;font-size:.8rem}.profile-logout{color:#d72638;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;width:100%;margin-top:6px;padding:10px;font-size:.9rem;font-weight:600;transition:background .15s;display:flex}.profile-logout:hover{background:#d7263814}.profile-logout svg{width:17px;height:17px}.layout-body-bottom{background:#f9fafb;border-top:1px solid #e2e8f0;min-height:0;padding:32px;overflow-y:auto}.modal-overlay{z-index:999;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a80;justify-content:center;align-items:center;padding:20px;animation:.2s both modal-fade-in;display:flex;position:fixed;inset:0}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.modal-box{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:380px;padding:32px;animation:.25s cubic-bezier(.22,1,.36,1) both modal-in;box-shadow:0 20px 60px #0f172a2e}@keyframes modal-in{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:none}}.modal-icon{color:#d72638;background:#d726381a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;display:flex}.modal-icon svg{width:26px;height:26px}.modal-title{color:var(--navy);margin:0 0 8px;font-size:1.15rem;font-weight:700}.modal-text{color:#64748b;margin:0 0 24px;font-size:.9rem}.modal-actions{gap:10px;display:flex}.btn-cancel,.btn-confirm{cursor:pointer;border:none;border-radius:10px;flex:1;padding:11px;font-size:.9rem;font-weight:600;transition:background .15s}.btn-cancel{color:#475569;background:#f1f5f9}.btn-cancel:hover{background:#e2e8f0}.btn-confirm{color:#fff;background:#d72638}.btn-confirm:hover{background:#b91c2c}.hamburger-btn,.sidebar-backdrop{display:none}@media (width<=900px){.layout{grid-template-columns:1fr}.layout-left{z-index:300;background:#fff;width:260px;height:100vh;transition:transform .28s cubic-bezier(.22,1,.36,1);position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:0 10px 40px #0f172a2e}.layout-left.open{transform:translate(0)}.sidebar-backdrop{z-index:250;opacity:0;pointer-events:none;background:#0f172a73;transition:opacity .25s;display:block;position:fixed;inset:0}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.hamburger-btn{width:40px;height:40px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.hamburger-btn svg{width:20px;height:20px}.layout-body{grid-template-rows:72px 1fr}.layout-body-top{justify-content:space-between;gap:10px;margin:12px;padding:0 12px}.layout-body-bottom{padding:16px}.topbar-heading .page-title{font-size:1rem}.topbar-heading .page-subtitle{display:none}}.toast-container{z-index:1000;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%)}.toast{color:#0f172a;pointer-events:auto;background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:10px;min-width:260px;max-width:90vw;padding:12px 18px;font-size:.9rem;font-weight:500;animation:.28s cubic-bezier(.22,1,.36,1) both toast-drop;display:flex;box-shadow:0 12px 32px -8px #0f172a47}@keyframes toast-drop{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}.toast-icon{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.toast-icon svg{width:14px;height:14px}.toast-success .toast-icon{background:#16a34a}.toast-error .toast-icon{background:#d72638}.toast-message{line-height:1.3}.login-bg{--navy:#071950;--blue:#071950;--blue-light:#0f2a6b;--white:#fff;--card-bg:#fff;--card-bdr:#e2e8f0;--input-bg:#f8fafc;--input-bdr:#cbd5e1;--text-main:#0f172a;--text-label:#475569;--text-muted:#94a3b8;--error:#d72638;--radius:12px;--transition:.25s ease;--app-bg:#fff;background:var(--app-bg);flex-direction:column;width:100%;min-height:100vh;font-family:Segoe UI,system-ui,-apple-system,sans-serif;display:flex}.login-topbar{justify-content:flex-end;padding:20px 24px 0;display:flex}.login-center{flex:1;justify-content:center;align-items:center;padding:40px 24px;display:flex}.login-footer{text-align:center;color:var(--text-muted);letter-spacing:.02em;padding:16px 24px;font-size:.78rem}.login-card{border:1px solid var(--card-bdr);background:0 0;border-radius:20px;width:100%;max-width:420px;padding:48px 44px 44px;animation:.4s cubic-bezier(.22,1,.36,1) both card-in;position:relative}@keyframes card-in{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.login-logo-wrap{flex-direction:column;align-items:center;margin-bottom:36px;display:flex}.login-logo{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:180px;height:auto}.login-title{color:var(--navy);letter-spacing:.02em;margin-top:12px;font-size:1.5rem;font-weight:700}.login-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.float-label{color:var(--text-muted);background:var(--input-bg);pointer-events:none;transition:top var(--transition), left var(--transition), font-size var(--transition), color var(--transition);padding:0 4px;font-size:.95rem;position:absolute;top:50%;left:42px;transform:translateY(-50%)}.form-input:focus~.float-label,.form-input:not(:placeholder-shown)~.float-label{color:var(--blue);letter-spacing:.02em;font-size:.76rem;font-weight:600;top:0;left:12px}.form-input.is-error~.float-label{color:var(--error)}.input-wrap{align-items:center;display:flex;position:relative}.input-icon{pointer-events:none;color:var(--text-muted);transition:color var(--transition);align-items:center;display:flex;position:absolute;left:14px}.input-icon svg{width:17px;height:17px}.form-input{border:1.8px solid var(--input-bdr);border-radius:var(--radius);width:100%;color:var(--text-main);background:var(--input-bg);transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);outline:none;padding:13px 44px 13px 42px;font-size:.95rem}.form-input::placeholder{color:var(--text-muted);font-size:.9rem}.form-input:focus{border-color:var(--blue);box-shadow:0 0 0 4px #07195026,0 2px 8px #0719501a}.input-wrap:focus-within .input-icon{color:var(--blue)}.form-input.is-error{border-color:var(--error);box-shadow:0 0 0 4px #d726381a}.toggle-password{cursor:pointer;color:var(--text-muted);transition:color var(--transition);background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;display:flex;position:absolute;right:13px}.toggle-password:hover{color:var(--blue)}.toggle-password svg{width:18px;height:18px}.field-error{color:var(--error);min-height:16px;padding-left:2px;font-size:.78rem}.form-alert{border-radius:var(--radius);text-align:center;padding:12px 16px;font-size:.88rem;font-weight:500;animation:.2s both alert-in}@keyframes alert-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.form-alert.alert-error{color:var(--error);background:#fff0f1;border:1.5px solid #d7263840}.form-alert.alert-success{color:#16a34a;background:#efffef;border:1.5px solid #16a34a40}.btn-login{border-radius:var(--radius);background:linear-gradient(135deg, var(--blue) 0%, #04102f 100%);width:100%;color:var(--white);letter-spacing:.03em;cursor:pointer;transition:opacity var(--transition);border:none;justify-content:center;align-items:center;gap:10px;margin-top:4px;padding:14px;font-size:1rem;font-weight:700;display:flex;position:relative;overflow:hidden}.btn-login:after{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff12 0%,#0000 60%);position:absolute;inset:0}.btn-login:hover:not(:disabled){opacity:.9}.btn-login:active:not(:disabled){opacity:.8}.btn-login:disabled{opacity:.6;cursor:not-allowed}.btn-spinner{border:2.5px solid #ffffff59;border-top-color:var(--white);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;display:none}.btn-spinner.active{display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=480px){.login-card{padding:36px 24px 32px}.login-logo{width:150px}}.dashboard{--white:#fff;--border:#e2e8f0;--navy:#071950;--blue:#1a6fc4;--red:#d72638;--text-main:#0f172a;--text-muted:#94a3b8;--radius:12px;flex-direction:column;gap:24px;display:flex}.stats-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.stats-grid-secondary{grid-template-columns:repeat(4,1fr)}.stats-grid-secondary .stat-card{border-top:none;padding:9px 18px}.stats-grid-secondary .stat-top{margin-bottom:6px}.stats-grid-secondary .stat-value{min-height:1.3rem;font-size:1.2rem}.stat-card{background:var(--white);border-radius:var(--radius);cursor:default;border-top:3px solid #0000;padding:14px 20px 12px;transition:transform .22s,box-shadow .22s;box-shadow:0 2px 10px #0f172a12}.stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0f172a1f}.stat-revenue{border-top-color:var(--blue)}.stat-expense{border-top-color:var(--red)}.stat-income{border-top-color:#16a34a}.stat-boxes{border-top-color:#7c3aed}.stat-kg{border-top-color:#0891b2}.stat-arrived{border-top-color:#16a34a}.stat-onway{border-top-color:#d97706}.stat-top{align-items:center;gap:10px;margin-bottom:10px;display:flex}.stat-icon-wrap{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.stat-icon-wrap svg{width:18px;height:18px}.stat-revenue .stat-icon-wrap{color:var(--blue);background:#1a6fc41a}.stat-expense .stat-icon-wrap{color:var(--red);background:#d726381a}.stat-income .stat-icon-wrap{color:#16a34a;background:#16a34a1a}.stat-boxes .stat-icon-wrap{color:#7c3aed;background:#7c3aed1a}.stat-kg .stat-icon-wrap{color:#0891b2;background:#0891b21a}.stat-arrived .stat-icon-wrap{color:#16a34a;background:#16a34a1a}.stat-onway .stat-icon-wrap{color:#d97706;background:#d977061a}.stat-revenue{background:var(--navy);border-top-color:var(--navy)}.stat-expense{background:var(--red);border-top-color:var(--red)}.stat-income{background:#16a34a;border-top-color:#16a34a}.stat-revenue .stat-icon-wrap,.stat-expense .stat-icon-wrap,.stat-income .stat-icon-wrap{color:#fff;background:#ffffff26}.stat-revenue .stat-label,.stat-expense .stat-label,.stat-income .stat-label{color:#ffffffbf}.stat-revenue .stat-value,.stat-expense .stat-value,.stat-income .stat-value{color:#fff}.stat-revenue .stat-sub,.stat-expense .stat-sub,.stat-income .stat-sub{color:#ffffffb3}.stat-revenue .stat-skeleton,.stat-expense .stat-skeleton,.stat-income .stat-skeleton{background:linear-gradient(90deg,#ffffff26 25%,#ffffff4d 37%,#ffffff26 63%) 0 0/400% 100%}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}.stat-value{color:var(--text-main);letter-spacing:-.02em;min-height:1.4rem;margin:0 0 4px;font-size:1.3rem;font-weight:700}.stat-sub{color:var(--text-muted);margin:0;font-size:.75rem}.stat-skeleton{background:linear-gradient(90deg,#eef1f5 25%,#e2e8f0 37%,#eef1f5 63%) 0 0/400% 100%;border-radius:6px;width:60%;height:20px;animation:1.3s infinite stat-shimmer;display:inline-block}@keyframes stat-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.dash-recent{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.recent-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:0 2px 10px #0f172a12}.recent-header{border-bottom:1px solid var(--border);padding:16px 20px}.recent-title{color:var(--navy);margin:0;font-size:.95rem;font-weight:700}.recent-table-wrap{overflow-x:auto}.recent-table{border-collapse:collapse;width:100%;font-size:.85rem}.recent-table thead tr{border-bottom:1px solid var(--border);background:#f8fafc}.recent-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;padding:10px 16px;font-size:.72rem;font-weight:600}.recent-table tbody tr{border-bottom:1px solid #eef1f5}.recent-table tbody tr:last-child{border-bottom:none}.recent-table td{color:var(--text-main);white-space:nowrap;padding:11px 16px}.recent-table .box-ref{color:var(--blue);font-family:monospace;font-weight:700}.recent-empty{color:var(--text-muted);font-style:italic;text-align:center!important;padding:24px!important}@media (width<=1024px){.stats-grid,.stats-grid-secondary{grid-template-columns:repeat(2,1fr)}.dash-recent{grid-template-columns:1fr}}@media (width<=560px){.stats-grid,.stats-grid-secondary{grid-template-columns:1fr}}.skel{background:#e5e9f0;border-radius:6px;position:relative;overflow:hidden}.skel:after{content:"";background:linear-gradient(90deg,#0000,#ffffffb3,#0000);animation:1.3s ease-in-out infinite skel-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes skel-shimmer{to{transform:translate(100%)}}.skel-line{vertical-align:middle;height:12px;display:inline-block}.skel-num{border-radius:4px}.skel-check{border-radius:4px;width:16px;height:16px;display:inline-block}.skel-chip{border-radius:6px;width:72px;height:20px;display:inline-block}.skel-badge{border-radius:999px;width:66px;height:20px;display:inline-block}.skel-btn{border-radius:8px;width:30px;height:30px;display:inline-block}.skel-actions{gap:6px;display:inline-flex}.skel-row td{padding-top:15px;padding-bottom:15px}.skel-row .col-check{text-align:center}@media (prefers-reduced-motion:reduce){.skel:after{animation:none}}.datapage{--white:#fff;--bg:#f8fafc;--border:#e2e8f0;--navy:#0d1b3e;--blue:#1a6fc4;--blue-light:#2e8de8;--red:#d72638;--text-main:#0f172a;--text-muted:#94a3b8;--radius:12px;--transition:.25s ease;flex-direction:column;gap:20px;display:flex}.datapage .stat-row{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.datapage .stat-row--3{grid-template-columns:repeat(3,1fr)}.datapage .stat-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:16px;padding:20px;display:flex;box-shadow:0 1px 3px #0f172a0d}.datapage .stat-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.datapage .stat-icon svg{width:22px;height:22px}.datapage .stat-purple .stat-icon{color:#7c3aed;background:#7c3aed1f}.datapage .stat-amber .stat-icon{color:#d97706;background:#f59e0b1f}.datapage .stat-green .stat-icon{color:#059669;background:#10b9811f}.datapage .stat-body{flex-direction:column;gap:3px;display:flex}.datapage .stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.datapage .stat-value{color:var(--text-main);font-size:1.35rem;font-weight:700;line-height:1}.datapage .stat-sub{color:var(--text-muted);font-size:.75rem}.datapage .filter-bar{justify-content:space-between;align-items:center;gap:16px;display:flex}.datapage .filter-left{align-items:center;gap:20px;display:flex}.datapage .filter-right{align-items:center;gap:10px;display:flex}.datapage .search-wrap{align-items:center;display:flex;position:relative}.datapage .search-wrap--sm{flex-shrink:0;width:400px;min-width:200px;max-width:400px}.datapage .search-icon{color:var(--text-muted);pointer-events:none;align-items:center;display:flex;position:absolute;left:14px}.datapage .search-icon svg{width:16px;height:16px}.datapage .search-input{border:1px solid var(--border);background:var(--bg);width:100%;height:40px;color:var(--text-main);transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);border-radius:8px;outline:none;padding:0 38px;font-family:inherit;font-size:.88rem}.datapage .search-input::placeholder{color:var(--text-muted)}.datapage .search-input:focus{border-color:var(--blue);background:var(--white);box-shadow:0 0 0 3px #1a6fc41f}.datapage .search-clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;right:10px}.datapage .search-clear:hover{color:var(--red)}.datapage .search-clear svg{width:15px;height:15px}.datapage .filter-tabs{background:var(--bg);border:1px solid var(--border);border-radius:8px;gap:4px;padding:3px;display:flex}.datapage .filter-tab{color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:background var(--transition), color var(--transition);background:0 0;border:none;border-radius:6px;padding:6px 14px;font-size:.82rem;font-weight:500}.datapage .filter-tab:hover{color:var(--text-main)}.datapage .filter-tab.active{background:var(--white);color:var(--navy);font-weight:600;box-shadow:0 1px 2px #0f172a14}.datapage .btn-print-label,.datapage .btn-add-record{color:#fff;cursor:pointer;white-space:nowrap;transition:background var(--transition);border:none;border-radius:8px;flex-shrink:0;align-items:center;gap:7px;padding:9px 18px;font-size:.88rem;font-weight:600;display:flex}.datapage .btn-print-label{background:#0f766e}.datapage .btn-print-label:hover{background:#0d6460}.datapage .btn-add-record{background:var(--navy)}.datapage .btn-add-record:hover{background:#162d5c}.datapage .btn-print-label svg,.datapage .btn-add-record svg{width:16px;height:16px}.datapage .results-meta{color:var(--text-muted);font-size:.82rem}.datapage .filter-dropdown{position:relative}.datapage .filter-dropdown-trigger{background:var(--bg);border:1px solid var(--border);cursor:pointer;min-width:104px;height:40px;color:var(--text-main);transition:border-color var(--transition), background var(--transition);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-family:inherit;font-size:.88rem;display:flex}.datapage .filter-dropdown-trigger:hover{background:var(--white);border-color:#cbd5e1}.datapage .fd-chevron{width:15px;height:15px;color:var(--text-muted);transition:transform .2s}.datapage .fd-chevron.open{transform:rotate(180deg)}.datapage .filter-dropdown-menu{background:var(--white);border:1px solid var(--border);z-index:20;border-radius:10px;min-width:100%;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px -8px #0f172a33}.datapage .filter-dropdown-option{cursor:pointer;width:100%;color:var(--text-main);text-align:left;background:0 0;border:none;border-radius:7px;padding:8px 10px;font-size:.88rem;transition:background .15s;display:block}.datapage .filter-dropdown-option:hover{background:#f1f5f9}.datapage .filter-dropdown-option.active{color:var(--navy);background:#eef2f9;font-weight:600}.datapage .data-panel{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:16px;padding:16px;display:flex;overflow:hidden;box-shadow:0 1px 3px #0f172a0d}.datapage .table-wrap{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);-webkit-overflow-scrolling:touch;overflow:auto hidden;box-shadow:0 1px 3px #0f172a0d}.datapage .data-panel .table-wrap{box-shadow:none;border:none;border-top:1px solid var(--border);border-radius:0;margin:0 -16px}.datapage .table-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin:0 -16px -16px;padding:12px 16px;display:flex}.datapage .table-footer-info{color:var(--text-muted);font-size:.82rem}.datapage .pagination{align-items:center;gap:4px;display:flex}.datapage .page-btn{border:1px solid var(--border);background:var(--white);min-width:32px;height:32px;color:var(--text-main);cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition);border-radius:7px;justify-content:center;align-items:center;padding:0 6px;font-family:inherit;font-size:.85rem;display:inline-flex}.datapage .page-btn svg{width:15px;height:15px}.datapage .page-btn:hover:not(:disabled):not(.active){background:var(--bg);border-color:#cbd5e1}.datapage .page-btn.active{background:var(--navy);border-color:var(--navy);color:#fff;font-weight:600}.datapage .shipments-table{border-collapse:collapse;width:100%;min-width:750px;font-size:.875rem}.datapage .shipments-table thead tr{background:var(--bg);border-bottom:1px solid var(--border)}.datapage .shipments-table th{text-align:center;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:12px 16px;font-size:.75rem;font-weight:600}.datapage .shipments-table tbody tr{border-bottom:1px solid var(--border);transition:background var(--transition)}.datapage .shipments-table tbody tr:last-child{border-bottom:none}.datapage .shipments-table tbody tr:hover{background:#f8fafc}.datapage .shipments-table td{color:var(--text-main);vertical-align:middle;text-align:center;padding:13px 16px}.datapage .table-empty{color:var(--text-muted);font-style:italic;padding:32px!important}.datapage .box-ref{color:var(--blue);letter-spacing:.03em;font-family:monospace;font-size:.85rem;font-weight:700}.datapage .sender-line{padding:2px 0;line-height:1.4}.datapage .sender-line+.sender-line{border-top:1px dashed var(--border);margin-top:2px;padding-top:4px}.datapage .alloc-badge{color:#7c3aed;text-align:center;background:#7c3aed1a;border-radius:20px;min-width:32px;padding:2px 10px;font-size:.78rem;font-weight:700;display:inline-block}.datapage .badge-status{text-transform:capitalize;white-space:nowrap;border-radius:20px;align-items:center;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.datapage .badge-packed{color:#1a5fa0;background:#1a6fc41a}.datapage .badge-shipped{color:#059669;background:#10b9811a}.datapage .col-check{width:44px;text-align:center!important;padding:12px 8px!important}.datapage .row-checkbox{width:17px;height:17px;accent-color:var(--navy);cursor:pointer;flex-shrink:0}.datapage .shipments-table tbody tr.row-selected{background:#eff6ff}.datapage .shipments-table tbody tr.row-selected:hover{background:#dbeafe}.datapage .th-actions,.datapage .col-date{text-align:center}.datapage .row-actions{justify-content:center;align-items:center;gap:6px;display:flex}.datapage .btn-action{border:1px solid var(--border);background:var(--white);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.datapage .btn-action svg{width:15px;height:15px}.datapage .btn-action--print:hover{color:#059669;background:#10b98114;border-color:#059669}.datapage .btn-action--edit:hover{border-color:var(--blue);color:var(--blue);background:#1a6fc414}.datapage .btn-action--delete:hover{border-color:var(--red);color:var(--red);background:#d7263814}.datapage .pagination{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.datapage .page-btn{border:1px solid var(--border);background:var(--white);min-width:36px;height:36px;color:var(--text-main);cursor:pointer;transition:background var(--transition), color var(--transition), border-color var(--transition);border-radius:8px;justify-content:center;align-items:center;padding:0 10px;font-size:.85rem;font-weight:500;display:flex}.datapage .page-btn:hover:not(:disabled){background:var(--bg);border-color:var(--blue);color:var(--blue)}.datapage .page-btn.active{background:var(--navy);color:var(--white);border-color:var(--navy);font-weight:700}.datapage .page-btn:disabled{opacity:.4;cursor:not-allowed}.datapage .page-ellipsis{text-align:center;min-width:20px;color:var(--text-muted,#94a3b8);-webkit-user-select:none;user-select:none;font-weight:600}.datapage .page-footer{color:var(--text-muted);justify-content:center;margin-top:auto;padding:12px 0 4px;font-size:.78rem;display:flex}.datapage .page-footer p{margin:0}.datapage .batch-bar{background:var(--navy);color:#fff;z-index:9000;opacity:0;pointer-events:none;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;min-width:520px;padding:14px 20px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .25s;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)translateY(120px);box-shadow:0 12px 40px #0d1b3e73}.datapage .batch-bar.visible{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.datapage .batch-bar__info{align-items:center;gap:12px;display:flex}.datapage .batch-bar__icon{background:#ffffff1f;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.datapage .batch-bar__icon svg{width:18px;height:18px}.datapage .batch-bar__count{white-space:nowrap;font-size:.92rem;font-weight:600}.datapage .batch-bar__actions{align-items:center;gap:10px;display:flex}.datapage .batch-label-type{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;outline:none;height:38px;padding:0 12px;font-size:.84rem;font-weight:500}.datapage .batch-label-type option{background:var(--navy);color:#fff}.datapage .batch-bar__btn{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:7px;height:38px;padding:0 18px;font-size:.88rem;font-weight:600;transition:background .2s,transform .1s;display:flex}.datapage .batch-bar__btn svg{width:15px;height:15px}.datapage .batch-bar__btn--clear{color:#fff;background:#ffffff1f;border:1px solid #fff3}.datapage .batch-bar__btn--clear:hover{background:#ffffff38}.datapage .batch-bar__btn--print{color:#fff;background:#1a6fc4}.datapage .batch-bar__btn--print:hover{background:#1560a8}.datapage .batch-bar__btn--print:active{transform:scale(.97)}.datapage .wh-modal{text-align:left;background:var(--white);border-radius:16px;width:800px;max-width:calc(100vw - 40px);max-height:90vh;padding:32px;animation:.25s cubic-bezier(.22,1,.36,1) both modal-in;overflow-y:auto;box-shadow:0 20px 60px #0f172a2e}.datapage .modal-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.datapage .modal-header .modal-title{color:var(--navy);margin:0;font-size:1.2rem;font-weight:700}.datapage .modal-close{border:1px solid var(--border);width:34px;height:34px;color:var(--text-muted);cursor:pointer;transition:background var(--transition), color var(--transition);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:flex}.datapage .modal-close:hover{background:var(--bg);color:var(--text-main)}.datapage .modal-close svg{width:18px;height:18px}.datapage .form-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:8px;display:grid}.datapage .form-group{flex-direction:column;gap:8px;display:flex}.datapage .form-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:600}.datapage .form-input{border:1px solid var(--border);background:var(--bg);width:100%;height:42px;color:var(--text-main);transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);border-radius:10px;outline:none;padding:10px 14px;font-family:inherit;font-size:.9rem}.datapage .form-input::placeholder{color:var(--text-muted)}.datapage .form-input:focus{border-color:var(--blue);background:var(--white);box-shadow:0 0 0 3px #1a6fc41f}.datapage .form-select{cursor:pointer}.datapage .field-highlight{color:#d72638;font-weight:600}.datapage .form-section{margin-top:18px}.datapage .allocations-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.datapage .allocation-col-labels{grid-template-columns:1fr 1fr 1fr 120px 34px;gap:10px;margin-bottom:6px;display:grid}.datapage .allocation-col-labels span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding-left:2px;font-size:.72rem;font-weight:600}.datapage .allocation-row{grid-template-columns:1fr 1fr 1fr 120px 34px;align-items:center;gap:14px;margin-bottom:10px;display:grid}.datapage .btn-remove-sender{border:1px solid var(--border);background:var(--white);width:34px;height:42px;color:var(--text-muted);cursor:pointer;transition:background var(--transition), border-color var(--transition), color var(--transition);border-radius:7px;justify-content:center;align-items:center;display:flex}.datapage .btn-remove-sender:hover{border-color:var(--red);color:var(--red);background:#d7263814}.datapage .btn-remove-sender svg{width:14px;height:14px}.datapage .btn-add-sender{border:1px dashed var(--border);background:var(--bg);width:100%;color:var(--text-muted);cursor:pointer;transition:border-color var(--transition), color var(--transition), background var(--transition);border-radius:8px;justify-content:center;align-items:center;gap:6px;margin-top:4px;padding:8px 14px;font-size:.82rem;font-weight:600;display:flex}.datapage .btn-add-sender:hover{border-color:var(--blue);color:var(--blue);background:#1a6fc40a}.datapage .btn-add-sender svg{width:14px;height:14px}.datapage .form-error{min-height:18px;color:var(--red);margin:12px 0;font-size:.82rem}.datapage .modal-actions{gap:10px;margin-top:8px;display:flex}.datapage .btn-cancel,.datapage .btn-save{cursor:pointer;transition:background var(--transition);border-radius:10px;flex:1;padding:11px;font-size:.9rem;font-weight:600}.datapage .btn-cancel{border:1px solid var(--border);background:var(--bg);color:var(--text-main)}.datapage .btn-cancel:hover{background:var(--border)}.datapage .btn-save{background:var(--navy);color:var(--white);border:none}.datapage .btn-save:hover{background:#162d5c}@media (width<=1100px){.datapage .stat-row{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.datapage .form-grid,.datapage .allocation-row,.datapage .allocation-col-labels{grid-template-columns:1fr 1fr}.datapage .allocation-col-labels{display:none}}.datapage .confirm-box{text-align:center;background:var(--white);border-radius:16px;flex-direction:column;align-items:center;width:100%;max-width:420px;padding:32px 28px 28px;animation:.25s cubic-bezier(.22,1,.36,1) both modal-in;display:flex;box-shadow:0 20px 60px #0f172a2e}.datapage .modal-icon--red{width:52px;height:52px;color:var(--red);background:#d726381a;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.datapage .modal-icon--red svg{width:24px;height:24px}.datapage .modal-text{color:#64748b;margin:0 0 24px;font-size:.9rem}.datapage .btn-confirm{background:var(--red);color:#fff;cursor:pointer;transition:background var(--transition);border:none;border-radius:10px;flex:1;padding:11px;font-size:.9rem;font-weight:600}.datapage .btn-confirm:hover{background:#b91c2c}.datapage .wh-modal--print{grid-template-rows:auto 1fr auto;width:60%;max-width:none;height:70%;padding:0;display:grid;overflow:hidden}.datapage .print-header{background:#fff;flex-direction:column;justify-content:center;gap:16px;padding:22px 32px;display:flex}.datapage .print-header__top{justify-content:space-between;align-items:center;display:flex}.datapage .print-header__title{letter-spacing:.12em;text-transform:uppercase;color:#0f172a;margin:0;font-size:18px;font-weight:700}.datapage .print-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;font-size:1.2rem;line-height:1;transition:background .2s,color .2s;display:flex}.datapage .print-close:hover{color:#ef4444;background:#fee2e2}.datapage .print-header__controls{justify-content:center;align-items:center;gap:12px;display:flex}.datapage .print-search-wrap{position:relative}.datapage .print-input{border:1px solid var(--border);width:240px;height:45px;color:var(--text-main);transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);background:#f1f5f9;border-radius:8px;outline:none;margin-bottom:4px;padding:0 14px;font-size:.85rem}.datapage .print-input:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px #1a6fc41f}.datapage .print-input::placeholder{color:var(--text-muted)}.datapage .print-search-dropdown{z-index:1100;background:#fff;border-radius:8px;width:100%;max-height:200px;margin:0;padding:4px 0;list-style:none;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;box-shadow:0 8px 28px #0f172a2e}.datapage .print-search-dropdown li{color:#1e293b;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:9px 16px;font-size:.84rem;transition:background .13s;display:flex}.datapage .print-search-dropdown li:hover{background:#f1f5f9}.datapage .drop-ref{font-weight:600}.datapage .drop-type{text-transform:capitalize;border-radius:4px;padding:2px 8px;font-size:.72rem;font-weight:600}.datapage .drop-type--full{color:#1d4ed8;background:#dbeafe}.datapage .drop-type--shared{color:#92400e;background:#fef9c3}.datapage .print-search-empty{color:var(--text-muted);cursor:default;font-style:italic}.datapage .print-radio{border:1px solid var(--border);height:45px;color:var(--text-main);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);background:#f1f5f9;border-radius:8px;align-items:center;gap:7px;padding:0 18px;font-size:.85rem;display:inline-flex}.datapage .print-radio:has(input:checked){background:#eff6ff;border-color:#93c5fd;box-shadow:0 0 0 3px #93c5fd59}.datapage .print-radio input[type=radio]{accent-color:var(--blue)}.datapage .print-body{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f1f5f9;justify-content:center;align-items:center;padding:20px;display:flex;position:relative;overflow:hidden}.datapage .print-body-placeholder{color:var(--text-muted);pointer-events:none;font-size:.9rem;font-style:italic}.datapage .print-preview{transform-origin:0 0;color:#000;background:#fff;font-family:Arial,Helvetica,sans-serif;position:absolute}.datapage .print-footer{background:#fff;justify-content:center;align-items:center;gap:30px;padding:16px 32px;display:flex}.datapage .print-btn-cancel,.datapage .print-btn-print{border-radius:var(--radius);cursor:pointer;transition:background var(--transition);border:none;padding:11px 39px;font-size:.9rem;font-weight:600}.datapage .print-btn-cancel{background:var(--bg);color:var(--text-main);border:1px solid var(--border)}.datapage .print-btn-cancel:hover{background:var(--border)}.datapage .print-btn-print{background:var(--navy);color:#fff}.datapage .print-btn-print:hover{background:#162d5c}@media (width<=768px){.datapage .wh-modal--print{grid-template-rows:auto 1fr auto;width:calc(100vw - 24px);height:92vh}.datapage .print-header__controls{flex-direction:column;align-items:stretch;gap:10px}.datapage .print-search-wrap,.datapage .print-input{width:100%}.datapage .print-footer{flex-direction:column;gap:8px}.datapage .print-btn-cancel,.datapage .print-btn-print{width:100%}}.datapage .print-preview .label{background:#fff;grid-template-rows:repeat(2,1fr);gap:20px;width:1123px;height:794px;padding:18px;display:grid}.datapage .print-preview .label-top{background:#fff;grid-template-columns:40% 35% auto;gap:10px;display:grid}.datapage .print-preview .label-bottom{grid-template-rows:repeat(2,1fr);gap:10px;display:grid}.datapage .print-preview .top-left{flex-direction:column;justify-content:center;align-items:center;gap:6px;margin-left:20px;display:flex}.datapage .print-preview .top-left h1{text-align:center;margin-bottom:10px;font-family:Arial Black,Impact,sans-serif;font-size:40px;font-weight:900}.datapage .print-preview .ref-row{justify-content:center;align-items:center;gap:40px;margin-bottom:10px;display:flex}.datapage .print-preview .ref-row h1{margin-bottom:0;font-family:Arial Black,Impact,sans-serif;font-size:40px;font-weight:900}.datapage .print-preview .type-red{color:red}.datapage .print-preview .top-center{background:#f2f2f266;padding:10px}.datapage .print-preview .top-right{justify-content:center;align-items:center;display:flex}.datapage .print-preview .destination{color:#000;letter-spacing:.1em;font-family:Impact,Arial Black,sans-serif;font-size:150px;font-weight:900;transform:rotate(90deg)}.datapage .print-preview .receivers-table{border-collapse:collapse;background:#f2f2f2;border:1.5px solid #000;width:100%;height:100%}.datapage .print-preview .receivers-table tr{border-bottom:1.5px solid #000}.datapage .print-preview .receivers-table tr:last-child{border-bottom:none}.datapage .print-preview .receivers-table td{vertical-align:middle;padding:6px 12px;font-size:20px;font-weight:800}.datapage .print-preview .r-name{width:80%}.datapage .print-preview .r-qty{text-align:center;border-left:1.5px solid #000;width:20%;font-size:20px;font-weight:800}.datapage .print-preview .r-info{flex-direction:row;align-items:center;gap:10px;display:flex}.datapage .print-preview .r-name-text{font-size:20px;font-weight:800}.datapage .print-preview .r-phone-text{color:#444;font-size:20px;font-weight:800}.datapage .print-preview .bottom-top{background:red;position:relative}.datapage .print-preview .banner-red{background:#002060;width:95%;height:83%;position:absolute;top:0;right:0}.datapage .print-preview .banner-text{color:#fff;text-transform:uppercase;text-align:center;letter-spacing:.1em;justify-content:center;align-items:center;height:100%;margin:0;font-family:Impact,Arial Black,sans-serif;font-size:100px;font-weight:700;display:flex}.datapage .print-preview .bottom-bottom{grid-template-columns:80% auto;display:grid}.datapage .print-preview .bottom-left{flex-direction:column;justify-content:center;gap:10px;padding:10px 16px;display:flex}.datapage .print-preview .contact-title{color:red;font-family:Times New Roman,Times,serif;font-size:30px;font-weight:900}.datapage .print-preview .contact-addr{color:red;font-family:Times New Roman,Times,serif;font-size:20px;font-weight:900}@media (width<=768px){.datapage .stat-row--3{grid-template-columns:1fr}.warehouse .filter-tabs{flex:100%;width:100%}.warehouse .filter-tabs .filter-tab{text-align:center;flex:1}.warehouse .btn-print-label,.warehouse .btn-add-record{flex:1 1 0;justify-content:center}.datapage .filter-bar{flex-direction:column;align-items:stretch;gap:12px}.datapage .search-wrap--sm{width:100%;max-width:none}.datapage .filter-right{flex-wrap:wrap}.datapage .batch-bar{flex-direction:column;align-items:stretch;gap:12px;min-width:0;max-width:none;padding:12px 14px;bottom:16px;left:12px;right:12px;transform:translateY(160px)}.datapage .batch-bar.visible{transform:translateY(0)}.datapage .batch-bar__actions{flex-wrap:wrap;justify-content:stretch;gap:8px;width:100%}.datapage .batch-bar__actions>*{flex:auto;min-width:0}.datapage .batch-label-type{flex:100%}}:root{--bg:#f8fafc;--border:#e2e8f0;--navy:#0d1b3e;--blue:#1a6fc4;--blue-light:#2e8de8;--red:#d72638;--white:#fff;--text-main:#0f172a;--text-muted:#64748b;--accent:#0f766e;--radius:12px;--transition:.2s ease}.modal-box{background:var(--white);border-radius:16px;box-shadow:0 20px 60px #0f172a2e}.modal-box--wide{text-align:left;width:780px;max-width:92vw;max-height:90vh;padding:28px 32px;overflow-y:auto}@media (width<=640px){.modal-box--wide{width:calc(100vw - 24px);padding:20px 16px}}.mb-section{margin-bottom:16px}.mt-section{margin-top:14px}.mb-label{margin-bottom:8px}.toast{color:#fff;z-index:9999;opacity:0;pointer-events:none;background:#0f172a;border-radius:10px;align-items:center;gap:10px;padding:14px 20px;font-size:.88rem;font-weight:500;transition:opacity .3s,transform .3s;display:flex;position:fixed;bottom:32px;right:32px;transform:translateY(12px);box-shadow:0 8px 24px #0f172a40}.toast.visible{opacity:1;transform:translateY(0)}.toast svg{flex-shrink:0;width:18px;height:18px}.toast--error{background:#b91c1c}.stat-blue .stat-icon{color:#1a6fc4;background:#1a6fc41f}.badge-mode{letter-spacing:.02em;white-space:nowrap;border-radius:20px;align-items:center;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-mco{color:#0a9c88;background:#0db19c1a}.badge-air{color:#1a5fa0;background:#1a6fc41a}.badge-delivery{white-space:nowrap;border-radius:20px;align-items:center;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-airport{color:#7c3aed;background:#8b5cf61a}.badge-madina,.badge-on-the-way{color:#d97706;background:#f59e0b1a}.badge-arrived{color:#059669;background:#10b9811a}.badge-payment{white-space:nowrap;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.badge-not-paid{color:#991b1b;background:#fee2e2}.badge-partial-paid{color:#854d0e;background:#fef9c3}.badge-full-paid{color:#166534;background:#dcfce7}.shipments-table .col-date{white-space:nowrap;min-width:108px}.shipments-table .col-price{white-space:nowrap;min-width:120px}.shipments-table .col-cost{white-space:nowrap;min-width:140px}.shipments-table .col-receiver{white-space:nowrap;min-width:160px}.table-empty-cell,.table-loading td{text-align:center;color:#94a3b8;padding:24px}.table-error td{text-align:center;color:var(--red);padding:24px}.btn-print-groupage{color:var(--white);cursor:pointer;white-space:nowrap;transition:background var(--transition);background:#0f766e;border:none;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;padding:9px 12px;font-size:.88rem;font-weight:600;display:flex}.btn-print-groupage:hover{background:#0d5f59}.btn-print-groupage svg{width:16px;height:16px}.btn-customer-report{background:#2563eb}.btn-customer-report:hover{background:#1d4ed8}.date-filter-wrap{background:var(--bg);border:1px solid var(--border);border-radius:10px;align-items:center;gap:7px;height:38px;padding:0 12px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex;position:relative}.date-filter-icon{width:15px;height:15px;color:var(--blue);flex-shrink:0}.date-filter-input{cursor:pointer;width:130px;color:var(--text-main);background:0 0;border:none;outline:none;font-family:inherit;font-size:.82rem;font-weight:500}.date-filter-input::-webkit-calendar-picker-indicator{opacity:.65;cursor:pointer;filter:invert(35%)sepia(80%)saturate(600%)hue-rotate(190deg)}.date-filter-wrap:hover{border-color:var(--blue-light)}.date-filter-wrap:focus-within{border-color:var(--blue);background:var(--white);box-shadow:0 0 0 3px #1a6fc421}.date-clear{cursor:pointer;color:#94a3b8;background:0 0;border:none;align-items:center;padding:0 2px;font-size:1.05rem;line-height:1;transition:color .18s;display:flex}.date-clear:hover{color:var(--red)}.box-search-wrap{position:relative}.box-dropdown{background:var(--white);border:1px solid var(--border);z-index:200;border-radius:10px;max-height:220px;display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0f172a1f}.box-dropdown.open{display:block}.box-dropdown-item{cursor:pointer;justify-content:space-between;align-items:center;padding:10px 14px;font-size:.88rem;transition:background .15s;display:flex}.box-dropdown-item:hover{background:var(--bg)}.box-dropdown-item .box-ref{color:var(--navy);font-size:.9rem;font-weight:700}.box-dropdown-type{color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:2px 8px;font-size:.75rem;font-weight:600}.box-dropdown-empty{text-align:center;color:var(--text-muted);padding:14px;font-size:.85rem}.datapage .form-input.amount-input{color:#e53935;font-weight:600}input[type=date].form-input{appearance:none;align-items:center;line-height:normal;display:inline-flex}input[type=date].form-input::-webkit-datetime-edit{padding:0;line-height:normal}input[type=date].form-input::-webkit-date-and-time-value{text-align:left;margin:0}.field-highlight{color:#d72638;font-weight:600}.field-locked{color:#64748b!important;cursor:not-allowed!important;background:#f1f5f9!important;border-color:#cbd5e1!important}.receiver-row-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;grid-template-columns:1.8fr 1.2fr 1fr 1.1fr 1.2fr;gap:10px;padding:4px 12px;font-size:.75rem;font-weight:600;display:grid}.receiver-row{background:var(--bg);border:1px solid var(--border);border-radius:8px;grid-template-columns:1.8fr 1.2fr 1fr 1.1fr 1.2fr;align-items:center;gap:10px;margin-bottom:6px;padding:8px 12px;font-size:.85rem;display:grid}.receiver-row span{color:var(--text-main);word-break:break-word;font-weight:500}.receiver-row span.muted{color:var(--text-muted);font-size:.82rem}.receiver-row .receiver-total{color:var(--accent);word-break:break-all;font-size:.82rem;font-weight:600}.receiver-row .form-input{box-sizing:border-box;width:100%;min-width:0;height:36px;padding:0 10px;font-size:.85rem}.allocation-col-labels.edit-receiver-cols,.edit-receiver-row{grid-template-columns:.9fr .7fr 110px 120px 130px 34px}.allocation-col-labels.edit-receiver-cols{margin-bottom:10px}.edit-receiver-row{align-items:center;gap:10px;margin-bottom:10px;display:grid}.edit-receiver-row .form-input{margin:0}.view-meta{border-bottom:1px solid var(--border);grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:20px;padding-bottom:18px;display:grid}.view-field{flex-direction:column;gap:4px;display:flex}.view-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:600}.view-value{color:var(--text-main);font-size:.9rem;font-weight:600}.view-senders{margin-top:16px}.view-senders-table{border-collapse:collapse;width:100%;font-size:.85rem}.view-senders-table th{background:var(--bg);text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--border);padding:9px 14px;font-size:.72rem;font-weight:600}.view-senders-table td{border-bottom:1px solid var(--border);color:var(--text-main);padding:10px 14px;font-size:.88rem}.view-senders-table tr:last-child td{border-bottom:none}.view-senders-table tbody tr:hover{background:var(--bg)}.view-total-cost{color:var(--text-main);font-weight:700}.check-locked{color:#16a34a;opacity:.55;cursor:not-allowed;justify-content:center;align-items:center;display:inline-flex}.check-locked svg{width:16px;height:16px}.modal-icon--danger{color:var(--red);background:#d726381a}.modal-icon--success{color:#16a34a;background:#16a34a1a}.modal-icon--info{color:#1a6fc4;background:#1a6fc41a}.btn-confirm--success{background:#16a34a}.btn-confirm--success:hover{background:#128a3e}.btn-confirm--info{background:#1a6fc4}.btn-confirm--info:hover{background:#1560a8}.btn-confirm--success:disabled,.btn-confirm--info:disabled{opacity:.6;cursor:default}.batch-bar__btn--paid{color:#fff;background:#1a6fc4}.batch-bar__btn--paid:hover{background:#1560a8}.batch-bar__btn--both{color:#fff;background:#0d9488}.batch-bar__btn--both:hover{background:#0b7f75}.batch-bar__btn--paid:disabled,.batch-bar__btn--both:disabled{opacity:.6;cursor:default}.gp-overlay{justify-content:center;align-items:center}.gp-box{background:#fff;border-radius:16px;grid-template-rows:auto 1fr auto;width:60%;max-width:1100px;height:82%;display:grid;overflow:hidden;box-shadow:0 20px 60px #0f172a2e}.gp-header{border-bottom:1px solid var(--border);flex-direction:column;gap:12px;padding:14px 28px;display:flex}.gp-header-top{justify-content:space-between;align-items:center;display:flex}.gp-header-top h3{color:var(--text-main);font-size:1.1rem;font-weight:700}.gp-header-search{justify-content:center;align-items:center;gap:10px;display:flex}.gp-filter-tabs{border:1px solid var(--border);background:#f1f5f9;border-radius:8px;gap:3px;padding:3px;display:flex}.gp-filter-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px 14px;font-size:.8rem;font-weight:500}.gp-filter-tab.active{color:#002060;background:#fff;font-weight:700;box-shadow:0 1px 3px #0f172a1a}.gp-body{background:#f1f5f9;padding:14px;overflow-y:auto}.gp-body-top h1{text-align:center;color:#fff;letter-spacing:.1em;background:#002060;justify-content:center;align-items:center;width:40%;height:54px;margin:0 auto 14px;display:flex}.gp-info-table{border-collapse:collapse;margin:0 auto 16px}.gp-info-table td{white-space:nowrap;border:1px solid #000;height:34px;padding:2px 8px;font-size:.78rem}.gp-info-label{color:#fff;text-align:right;background:#002060;font-weight:600}.gp-info-value{color:#002060;text-align:left;background:#fff;width:160px;font-weight:900}.gp-info-red{color:red!important}.gp-table{border-collapse:collapse;border:2px solid #001540;width:100%;font-size:.83rem}.gp-table thead tr{color:#fff;background:#002060}.gp-table th{text-transform:uppercase;letter-spacing:.04em;text-align:center;border:1px solid #fff;padding:9px 8px;font-size:.72rem;font-weight:700}.gp-table td{text-align:center;background:#fff;border:1px solid #001540;padding:8px}.gp-table tbody tr:nth-child(2n) td{background:#f8fafc}.gp-footer{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:12px;padding:14px 20px;display:flex}.gp-btn-cancel{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text-main);cursor:pointer;padding:10px 24px;font-size:.9rem;font-weight:600}.gp-btn-download{border-radius:var(--radius);color:#fff;cursor:pointer;background:#0f766e;border:none;align-items:center;gap:7px;padding:10px 24px;font-size:.9rem;font-weight:600;display:flex}.gp-btn-download svg{width:16px;height:16px}.gp-search-wrap{position:relative}.gp-dropdown{border:1px solid var(--border);z-index:1100;background:#fff;border-radius:8px;width:100%;max-height:180px;margin:0;padding:4px 0;list-style:none;display:none;position:absolute;top:calc(100% + 5px);left:0;overflow-y:auto;box-shadow:0 8px 24px #0f172a1f}.gp-dropdown.visible{display:block}.gp-dropdown li{color:var(--text-main);cursor:pointer;text-align:left;padding:9px 16px;font-size:.85rem}.gp-dropdown li:hover{background:var(--bg)}.gp-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=768px){.shipment .filter-tabs{flex:100%;width:100%}.shipment .filter-tabs .filter-tab{text-align:center;flex:1}.shipment .btn-print-groupage,.shipment .btn-add-record{flex:1 1 0;justify-content:center}.gp-box{width:100%;max-width:none;height:88vh}.gp-header{gap:10px;padding:12px 16px}.gp-header-search{flex-direction:column;align-items:stretch;gap:8px}.gp-search-wrap{width:100%}.gp-filter-tabs{align-self:center}.gp-body{padding:10px}.gp-body-top h1{width:80%;height:44px;font-size:1.15rem}.gp-info-value{width:auto}.gp-table{min-width:560px}.gp-footer{gap:8px;padding:12px 14px}.gp-btn-cancel,.gp-btn-download{flex:1;justify-content:center}}.cust-pdf-frame{background:#fff;border:none;width:100%;height:72vh;display:block}.stat-red .stat-icon{color:#d72638;background:#d726381f}.badge-pending{color:#d97706;background:#f59e0b1a}.badge-partial{color:#1a6fc4;background:#1a6fc41f}.badge-paid{color:#059669;background:#10b9811a}.amount-red{color:var(--red);font-weight:700}.amount-due-text{color:var(--red);font-weight:600}.form-grid--2,.add-form-grid-2{grid-template-columns:repeat(2,1fr)!important}.add-form-grid-4{margin-top:20px;grid-template-columns:repeat(4,1fr)!important}@media (width<=768px){.add-form-grid-4{grid-template-columns:repeat(2,1fr)!important}}@media (width<=600px){.form-grid--2,.add-form-grid-2,.add-form-grid-4{grid-template-columns:1fr!important}}.form-label-row{justify-content:space-between;align-items:center;display:flex}.btn-full-pay{color:#16a34a;cursor:pointer;white-space:nowrap;letter-spacing:.02em;background:#f0fdf4;border:1.5px solid #16a34a;border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:.72rem;font-weight:700;transition:background .18s,color .18s,transform .12s;display:inline-flex}.btn-full-pay:hover{color:#fff;background:#16a34a;transform:scale(1.04)}.btn-full-pay:active{transform:scale(.97)}.btn-full-pay:disabled{opacity:.4;cursor:not-allowed;transform:none}.locked-input-wrap{position:relative}.locked-input-wrap .form-input{padding-right:36px}.locked-icon{color:var(--text-muted);pointer-events:none;display:none;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.locked-icon svg{width:15px;height:15px}.locked-input-wrap:hover .locked-icon{display:flex}.amount-exceed-warn{color:#dc2626;margin-top:5px;font-size:.74rem;font-weight:500}.form-input.input-error{background:#fff5f5!important;border-color:#dc2626!important}.customer-info-tab{background:#f0f7ff;border:1px solid #bfdbfe;border-radius:8px;flex-wrap:wrap;align-items:center;gap:24px;margin-top:14px;padding:10px 14px;display:flex}.customer-info-item{color:var(--navy);align-items:center;gap:6px;font-size:.8rem;font-weight:600;display:flex}.customer-info-item svg{stroke:#3b82f6;flex-shrink:0;width:14px;height:14px}.customer-info-label{color:#64748b;margin-right:2px;font-size:.72rem;font-weight:500}.balance-alert{background:#fff7ed;border:1.5px solid #fed7aa;border-radius:10px;align-items:center;gap:14px;padding:14px 18px;display:flex}.balance-alert-icon{color:#ea580c;background:#ffedd5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.balance-alert-icon svg{width:18px;height:18px}.balance-alert-body{flex-direction:column;gap:2px;display:flex}.balance-alert-label{color:#9a3412;text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.balance-alert-amount{color:#c2410c;font-size:1.25rem;font-weight:700}.shared-receivers-header,.shared-receiver-row{grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:10px;display:grid}.shared-receivers-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:4px 12px;font-size:.75rem;font-weight:600}.shared-receiver-row{background:var(--bg);border:1px solid var(--border);border-radius:8px;align-items:center;margin-bottom:6px;padding:8px 12px;font-size:.85rem}.shared-receiver-row span{color:var(--text-main);word-break:break-word;font-weight:500}.shared-receiver-row span.muted{color:var(--text-muted);font-size:.8rem;font-weight:400}.shared-receiver-row span.amount-due,.shared-receiver-row span.receiver-remaining{color:var(--red);font-weight:600}.shared-receiver-row .form-input{height:34px;margin:0;padding:5px 10px;font-size:.83rem}.btn-invoice{color:var(--white);cursor:pointer;white-space:nowrap;transition:background var(--transition);background:#0f766e;border:none;border-radius:8px;flex-shrink:0;align-items:center;gap:7px;padding:9px 18px;font-size:.88rem;font-weight:600;display:flex}.btn-invoice:hover{background:#0d6460}.btn-invoice svg{width:16px;height:16px}.modal-box--invoice{text-align:left;width:860px;max-width:92vw;max-height:90vh;padding:32px 36px;overflow-y:auto}.invoice-search-section{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.inv-dropdown-item{cursor:pointer;border-radius:6px;flex-direction:row;align-items:center;gap:20px;margin:1px 2px;padding:8px 12px;transition:background .15s;display:flex}.inv-dropdown-item:hover{background:var(--bg)}.inv-drop-name{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;max-width:55%;font-size:.85rem;font-weight:700;overflow:hidden}.inv-drop-sep{color:#cbd5e1;flex-shrink:0;font-size:.85rem}.inv-drop-phone{color:var(--text-main);white-space:nowrap;flex-shrink:0;font-size:.85rem;font-weight:600}.invoice-preview-area{background:var(--bg);border:1px solid var(--border);border-radius:12px;min-height:200px;margin-bottom:24px;overflow:hidden}.invoice-placeholder,.invoice-empty{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:56px 24px;display:flex}.invoice-placeholder svg{opacity:.35}.invoice-placeholder p,.invoice-empty p{font-size:.9rem}.inv-state{text-align:center;color:var(--text-muted);padding:48px}.inv-state--error{color:var(--red);padding:40px}.inv-card{background:#fff;padding:28px 32px}.inv-card-head{border-bottom:3px solid #002060;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding-bottom:14px;display:flex}.inv-logo{object-fit:contain;flex-shrink:0;width:110px;height:70px}.inv-footer{border-top:1px solid var(--border);text-align:left;flex-direction:column;align-items:flex-start;gap:3px;margin-top:22px;padding-top:14px;display:flex}.inv-company-name{color:#002060;letter-spacing:.04em;font-size:1rem;font-weight:900}.inv-company-addr{color:var(--text-muted);font-size:.74rem;line-height:1.4}.inv-title-block{text-align:right}.inv-title{color:#002060;letter-spacing:.08em;font-size:26px;font-weight:900}.inv-date-line{color:var(--text-muted);margin-top:4px;font-size:.78rem}.inv-customer-box{background:var(--bg);border-left:4px solid #002060;border-radius:0 8px 8px 0;margin-bottom:20px;padding:12px 16px}.inv-customer-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;font-size:.68rem;font-weight:700}.inv-customer-name{color:#002060;font-size:1.05rem;font-weight:800}.inv-customer-phone{color:var(--text-main);margin-top:2px;font-size:.82rem}.inv-table-wrap{margin-bottom:20px;overflow-x:auto}.inv-table{border-collapse:collapse;width:100%;font-size:.82rem}.inv-table thead tr,.inv-table tbody tr:nth-child(2n) td,.inv-customer-box,.inv-total-row,.inv-total-balance{-webkit-print-color-adjust:exact;print-color-adjust:exact}.inv-table thead tr{color:#fff;background:#002060}.inv-table th{text-transform:uppercase;letter-spacing:.04em;text-align:center;border:1px solid #1a3a7a;padding:8px 7px;font-size:.7rem;font-weight:700}.inv-table td{border:1px solid var(--border);text-align:center;vertical-align:middle;padding:7px 8px}.inv-table tbody tr:nth-child(2n) td{background:var(--bg)}.inv-box-ref{color:var(--navy);font-weight:700}.inv-balance-cell{color:var(--red);font-weight:700}.inv-totals{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.inv-total-row{background:var(--bg);min-width:340px;color:var(--text-main);border-radius:6px;justify-content:space-between;gap:48px;padding:7px 14px;font-size:.88rem;display:flex}.inv-total-row span:first-child{color:var(--text-muted);font-weight:500}.inv-total-row span:last-child{font-weight:700}.inv-total-balance{background:#002060;border-radius:8px;font-size:.92rem}.inv-total-balance span{color:#fff!important;font-weight:900!important}.btn-invoice-print{color:#fff;cursor:pointer;transition:background var(--transition);background:#0f766e;border:none;border-radius:8px;align-items:center;gap:7px;padding:10px 22px;font-size:.9rem;font-weight:600;display:flex}.btn-invoice-print:hover{background:#0d6460}.btn-invoice-print:disabled{opacity:.45;cursor:not-allowed}.btn-invoice-print svg{width:15px;height:15px}@media (width<=768px){.payment .filter-tabs{flex:100%;width:100%}.payment .filter-tabs .filter-tab{text-align:center;flex:1}.payment .btn-invoice,.payment .btn-add-record{flex:1 1 0;justify-content:center}.modal-box--invoice{width:96vw;max-width:96vw;padding:20px 16px}.inv-card{padding:16px 14px}.inv-card-head{flex-wrap:wrap;gap:10px}.inv-logo{width:84px;height:52px}.inv-title{font-size:22px}.inv-table{min-width:520px}.inv-totals{align-items:stretch;width:100%}.inv-total-row{gap:16px;width:100%;min-width:0}.modal-box--invoice .modal-actions{flex-direction:column-reverse}.modal-box--invoice .modal-actions>*{justify-content:center;width:100%}}.expense .form-grid{grid-template-columns:repeat(3,1fr)}@media (width<=600px){.expense .form-grid{grid-template-columns:1fr 1fr}}@media (width<=480px){.expense .form-grid{grid-template-columns:1fr}}.shipments-table .cell-amount{color:#dc2626;font-weight:600}.cell-transport{flex-wrap:wrap;justify-content:center;gap:4px;display:inline-flex}.desc-badge{white-space:nowrap;text-transform:capitalize;border-radius:20px;align-items:center;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.desc-shipping{color:#1a5fa0;background:#1a6fc41a}.desc-custom{color:#b45309;background:#f59e0b1a}.field-locked{color:#64748b!important;cursor:not-allowed!important;background:#f8fafc!important}.form-group--rmb .form-input{background:#fffbeb;border:1px solid #f59e0b;border-left-width:3px}.form-group--rmb .form-input:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b2e}.form-group--rmb .form-label{color:#b45309}.expense-type-hint{color:var(--text-muted);letter-spacing:.02em;margin-top:-2px;font-size:.74rem;font-weight:500}@media (width<=768px){.expense .filter-right{flex-direction:column;align-items:stretch;gap:10px}.expense .filter-tabs{width:100%}.expense .filter-tabs .filter-tab{text-align:center;flex:1}.expense .btn-add-record{justify-content:center;width:100%}}.role-badge{text-transform:capitalize;border-radius:20px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.role-admin{color:var(--navy);background:#0d1b3e1a}.role-manager{color:#7c3aed;background:#8b5cf61f}.role-warehouse{color:#b45309;background:#f59e0b1f}.role-finance{color:#059669;background:#10b9811f}.role-viewer{color:var(--text-muted);background:#64748b1f}.self-badge{color:var(--blue);background:#1a6fc41a;border-radius:20px;margin-left:8px;padding:3px 10px;font-size:.72rem;font-weight:600}.modal-box--form{text-align:left;width:90%;max-width:440px;max-height:90vh;padding:28px 32px;overflow-y:auto}.modal-box--form .form-group{margin-bottom:16px}.modal-box--form .form-error{margin:2px 0 0}.modal-box--form .modal-actions{justify-content:flex-end;margin-top:20px}.modal-box--form .btn-cancel,.modal-box--form .btn-save{flex:none;padding:10px 22px}@media (width<=768px){.users .filter-right{flex-direction:column;align-items:stretch;gap:10px}.users .filter-tabs{width:100%}.users .filter-tabs .filter-tab{text-align:center;flex:1}.users .btn-add-record{justify-content:center;width:100%}.users .shipments-table{min-width:0}}
