html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:clamp(14px,10.445px + 1.111vw,16px)}body,html{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fafafa;color:#52525b;font-family:Poppins,sans-serif;margin:0}body>#root{height:100%}h1{font-size:1.6em}h2{font-size:1.4em}h3{font-size:1.2em}h4{font-size:1.1em}.link,a{color:#6c3cd9;cursor:pointer}.link.focus,.link:active,.link:hover,a.focus,a:active,a:hover{color:#ac91ea}.link:visited,a:visited{color:#6c3cd9}.link.confirm,a.confirm{color:#1a9a49}.link.danger,a.danger{color:#ef4444}hr{border:.2em solid #ccc}hr.dashed{border-style:dashed;border-width:.1em}.uppercase{text-transform:uppercase}.underline{text-decoration:underline}.icon{transition:all .3s ease-in-out}.icon.rotated{-webkit-transform:rotate(180deg);transform:rotate(180deg)}form .form-control{margin-bottom:1em}form .form-control>label{display:block;font-weight:500}form .form-control>input,form .form-control>select{box-sizing:border-box;display:block;font-size:1.2em;padding:.2em .4em;width:100%}button{background-color:#bbf351;border:none;border-radius:12px;box-shadow:0 2px 8px rgba(187,243,81,.3);color:#27272b;cursor:pointer;font-size:1.2em;font-weight:700;padding:.6em 1em;text-transform:uppercase;transition:all .2s ease}button:hover:not(:disabled){background-color:#9ad040;box-shadow:0 4px 12px rgba(187,243,81,.4);-webkit-transform:translateY(-1px);transform:translateY(-1px)}button:active:not(:disabled){-webkit-transform:translateY(0);transform:translateY(0)}button:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}button.small{border-radius:8px;font-size:1em;font-weight:600;padding:.3em .5em}button.secondary{background-color:transparent;border:2px solid #6c3cd9;box-shadow:none;color:#6c3cd9}button.secondary:hover:not(:disabled){background-color:#ddd6fe;box-shadow:none}button.confirm{background-color:#22c55e;box-shadow:0 2px 8px rgba(34,197,94,.3);color:#fff}button.confirm:hover:not(:disabled){background-color:#1a9a49;box-shadow:0 4px 12px rgba(34,197,94,.4)}button.danger{background-color:#ef4444;box-shadow:0 2px 8px rgba(239,68,68,.3);color:#fff}button.danger:hover:not(:disabled){background-color:#dc2626;box-shadow:0 4px 12px rgba(239,68,68,.4)}.tabs{border-bottom:2px solid #e4e4e7;list-style:none;margin:0 -1em 1em;padding:0 1em;position:relative}.tabs>li{background-color:transparent;border:none;border-bottom:2px solid transparent;color:#71717a;cursor:pointer;display:inline-block;margin:0 .2em -2px 0;padding:.5em 1em;transition:all .2s ease}.tabs>li:hover{color:#6c3cd9}.tabs>li.active{background-color:transparent;border-bottom:2px solid #6c3cd9;color:#6c3cd9;cursor:default;font-weight:700}.card{background-color:#fff;border:1px solid #e4e4e7;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.08);cursor:pointer;display:block;margin-bottom:.5em;transition:all .2s ease}.card:hover{box-shadow:0 4px 12px rgba(0,0,0,.12);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.card.ok{border-left:4px solid #22c55e}.card.ok>div.bottom{background-color:#d5f8e2}.card.warn{border-left:4px solid #f97316}.card.warn>div.bottom{background-color:#fef0e7}.card>div{padding:1em;pointer-events:none}.card>div.bottom{background-color:#fafafa;border-bottom-left-radius:12px;border-bottom-right-radius:12px;padding:.5em 1em}.card>div .number{background-color:#27272b;border-radius:100%;color:#fff;display:inline-block;font-size:.9em;font-weight:700;line-height:1;margin-right:.5em;padding:.2em 0;text-align:center;width:1.5em}.card>div .number.storage{background-color:#6c3cd9;color:#fff}.card>div .stop-type{border-radius:4px;color:#6c3cd9;float:right;font-size:.8em;font-weight:600;line-height:2;padding:.15em .5em;text-transform:uppercase}.card>div .stop-type.collection{background-color:rgba(59,130,246,.12);color:#3b82f6}.card>div .stop-type.delivery{background-color:rgba(34,197,94,.12);color:#17843f}.card>div .postcode{float:right}.card>div .postcode>.icon{font-size:.8em;margin-right:.3em}#root{background-color:#fafafa;height:100%;height:100dvh;-webkit-user-select:none;user-select:none;width:100%}.scanner-root{box-shadow:0 0 24px rgba(0,0,0,.12);height:100%;margin:auto;max-width:500px}.scanner-root>main{box-sizing:border-box;height:100%;padding:calc(3em + env(safe-area-inset-top, 0px)) 0 0;touch-action:pan-y;transition:all .3s ease-in-out}.scanner-root>main.hide{opacity:0;pointer-events:none}.scanner-root>main>div{background-color:#fafafa;box-sizing:border-box;height:100%;overflow-y:scroll;padding:1em 1em calc(5.5em + env(safe-area-inset-bottom, 0px))}.scanner-root>main>div::-webkit-scrollbar{display:none}@media(min-width:800px){.scanner-root{max-width:700px}}#home{grid-gap:1em;display:grid;grid-template-columns:1fr;position:relative;width:100%}#home .loading-overlay{align-items:center;background:hsla(0,0%,100%,.8);border-radius:16px;bottom:0;color:#6c3cd9;display:flex;font-weight:500;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}#home>a{background:linear-gradient(135deg,#fff,#fafafa);border:1px solid #e4e4e7;border-radius:16px;box-shadow:0 2px 8px rgba(0,0,0,.08);box-sizing:border-box;color:#52525b;padding:1.25em;text-decoration:none;transition:all .2s ease}#home>a:hover{border-color:#ddd6fe;box-shadow:0 4px 16px rgba(0,0,0,.12);-webkit-transform:translateY(-2px);transform:translateY(-2px)}#home>a>h4{color:#6c3cd9;font-size:1.1em;font-weight:600;margin:0 0 .75em;text-transform:capitalize}#home>a>div{grid-gap:.75em;display:grid;grid-template-columns:1fr 1fr}#home>a>div>div{background:hsla(0,0%,100%,.6);border:1px solid #e4e4e7;border-radius:12px;padding:.75em .5em;text-align:center;transition:all .2s ease}#home>a>div>div:hover{background:hsla(0,0%,100%,.9);border-color:#d4d4d8}#home>a>div>div u{color:#6c3cd9;display:block;font-size:.75em;font-weight:600;letter-spacing:.75px;margin-bottom:.35em;text-decoration:none;text-transform:uppercase}#home>a>div .numbers{background-color:rgba(0,0,0,.04);border-radius:8px;color:#52525b;display:inline-block;font-size:2em;font-weight:700;margin-top:.2em;min-width:3em;padding:.3em .5em;transition:all .2s ease}#home>a>div .numbers.ok{background-color:rgba(34,197,94,.15);color:#17843f}#home>a>div .numbers.warn{background-color:rgba(249,115,22,.15);color:#d65b06}#home>a>div .numbers.error{background-color:rgba(239,68,68,.12);color:#ed2d2d}.warehouse-dashboard-layout{background-color:#f4f4f5;color:#27272b;display:flex;flex-direction:column;font-family:Plus Jakarta Sans,sans-serif;height:100%;overflow-x:hidden;width:100%}.warehouse-dashboard-layout *{box-sizing:border-box}.warehouse-dashboard-layout .dashboard-header{align-items:center;background:linear-gradient(90deg,#0b1120,#162033);color:#fff;display:flex;flex-shrink:0;gap:8px;height:56px;padding:0 24px}.warehouse-dashboard-layout .dashboard-header .header-left{align-items:center;display:flex;flex-shrink:0;gap:10px}.warehouse-dashboard-layout .dashboard-header .header-left img.logo{-webkit-filter:brightness(0) invert(1);filter:brightness(0) invert(1);height:36px;width:36px}.warehouse-dashboard-layout .dashboard-header .header-left .header-title{font-size:1rem;font-weight:600;letter-spacing:.5px;margin:0;white-space:nowrap}.warehouse-dashboard-layout .dashboard-header .mobile-menu-btn{display:none}.warehouse-dashboard-layout .dashboard-header .header-nav{-ms-overflow-style:none;align-items:center;display:flex;gap:2px;height:100%;margin:0 auto;overflow-x:auto;scrollbar-width:none}.warehouse-dashboard-layout .dashboard-header .header-nav::-webkit-scrollbar{display:none}.warehouse-dashboard-layout .dashboard-header .header-nav .nav-tab{align-items:center;background:transparent;border:none;border-bottom:2px solid transparent;box-shadow:none;color:hsla(0,0%,100%,.6);cursor:pointer;display:flex;font-size:.82rem;font-weight:500;gap:6px;height:100%;padding:0 14px;text-transform:none;transition:all .2s ease;white-space:nowrap}.warehouse-dashboard-layout .dashboard-header .header-nav .nav-tab .nav-icon{align-items:center;display:flex;font-size:1rem}.warehouse-dashboard-layout .dashboard-header .header-nav .nav-tab:hover{background:hsla(0,0%,100%,.06);box-shadow:none;color:#fff;-webkit-transform:none;transform:none}.warehouse-dashboard-layout .dashboard-header .header-nav .nav-tab.active{border-bottom-color:#38bdf8;color:#fff}.warehouse-dashboard-layout .dashboard-header .header-nav .nav-tab.active .nav-icon{color:#38bdf8}.warehouse-dashboard-layout .dashboard-header .header-right{align-items:center;display:flex;flex-shrink:0;gap:8px}.warehouse-dashboard-layout .dashboard-header .header-right .header-link{align-items:center;background:hsla(0,0%,100%,.06);border:none;border-radius:6px;box-shadow:none;color:hsla(0,0%,100%,.6);cursor:pointer;display:flex;font-size:1.1rem;height:32px;justify-content:center;padding:0;text-transform:none;transition:all .2s ease;width:32px}.warehouse-dashboard-layout .dashboard-header .header-right .header-link:hover{background:hsla(0,0%,100%,.12);box-shadow:none;color:#fff;-webkit-transform:none;transform:none}.warehouse-dashboard-layout .dashboard-header .header-right .header-link.logout:hover{background:rgba(239,68,68,.15);color:#ef4444}.warehouse-dashboard-layout .dashboard-header .header-right .header-link.scanner-link{gap:6px;padding:0 10px;width:auto}.warehouse-dashboard-layout .dashboard-header .header-right .header-link.scanner-link .link-label{font-size:.78rem;font-weight:500;white-space:nowrap}.warehouse-dashboard-layout .dashboard-header .header-right .header-user{align-items:center;display:flex;gap:8px;margin:0 4px}.warehouse-dashboard-layout .dashboard-header .header-right .header-user .avatar{align-items:center;background:#38bdf8;border-radius:8px;color:#0b1120;display:flex;flex-shrink:0;font-size:.75rem;font-weight:700;height:30px;justify-content:center;width:30px}.warehouse-dashboard-layout .dashboard-header .header-right .header-user .user-name{font-size:.8rem;font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1024px){.warehouse-dashboard-layout .dashboard-header .header-nav .nav-tab .nav-label{display:none}.warehouse-dashboard-layout .dashboard-header .header-nav .nav-tab{padding:0 10px}.warehouse-dashboard-layout .dashboard-header .header-right .scanner-link .link-label{display:none}.warehouse-dashboard-layout .dashboard-header .header-right .scanner-link{padding:0;width:32px}}.warehouse-dashboard-layout .dashboard-content{display:flex;flex:1 1;flex-direction:column;min-width:0}.warehouse-dashboard-layout .dashboard-content .dashboard-scroll-area{flex:1 1;overflow-y:auto;padding:24px}.warehouse-dashboard-layout .dashboard-content .dashboard-scroll-area .dashboard-grid{display:flex;flex-direction:column;gap:24px;margin:0 auto;max-width:1400px}.warehouse-dashboard-layout .panel-loading{color:#71717a;font-size:.9rem;padding:40px;text-align:center}.warehouse-dashboard-layout .api-error-banner{background:rgba(245,158,11,.1);border-bottom:1px solid rgba(245,158,11,.2);color:#b45309;font-size:.82rem;font-weight:500;padding:8px 24px}.warehouse-dashboard-layout .dashboard-panel{background:#fff;border:1px solid #e4e4e7;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .3s ease}.warehouse-dashboard-layout .dashboard-panel:hover{box-shadow:0 8px 25px rgba(0,0,0,.08),0 4px 10px rgba(0,0,0,.04)}.warehouse-dashboard-layout .dashboard-panel .panel-header{align-items:center;background:#fafafa;border-bottom:1px solid #f4f4f5;display:flex;justify-content:space-between;padding:16px 24px;position:relative}.warehouse-dashboard-layout .dashboard-panel .panel-header:before{background:linear-gradient(90deg,#1e3a8a,#38bdf8);content:"";height:3px;left:0;position:absolute;right:0;top:0}.warehouse-dashboard-layout .dashboard-panel .panel-header h3{align-items:center;color:#0f1b2d;display:flex;font-size:1.1rem;font-weight:600;gap:8px;margin:0}.warehouse-dashboard-layout .dashboard-panel .panel-header .header-actions{align-items:center;display:flex;gap:12px}.warehouse-dashboard-layout .dashboard-panel .panel-header .header-actions .date-display{color:#71717a;font-size:.85rem;font-weight:500}.warehouse-dashboard-layout .dashboard-panel .panel-header .header-actions .icon-btn{background:#fff;border:1px solid #e4e4e7;border-radius:6px;box-shadow:none;font-size:.9rem;padding:4px 8px}.warehouse-dashboard-layout .dashboard-panel .panel-header .header-actions .icon-btn:hover{background:#fafafa}.warehouse-dashboard-layout .stats-card{background:#fff;border:1px solid #e4e4e7;border-radius:10px;display:flex;flex-direction:column;padding:20px}.warehouse-dashboard-layout .stats-card .stats-title{color:#71717a;font-size:.85rem;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.warehouse-dashboard-layout .stats-card .stats-value{align-items:baseline;display:flex;gap:8px}.warehouse-dashboard-layout .stats-card .stats-value .main-value{color:#0f1b2d;font-size:2rem;font-weight:700}.warehouse-dashboard-layout .stats-card .stats-value .sub-value{color:#71717a;font-size:.9rem;font-weight:500}.warehouse-dashboard-layout .stats-card.color-success .main-value{color:#22c55e}.warehouse-dashboard-layout .stats-card.color-warning .main-value{color:#f97316}.warehouse-dashboard-layout .stats-card.color-danger .main-value{color:#ef4444}.warehouse-dashboard-layout .overview-panel{background:transparent;border:none;box-shadow:none;display:flex;flex-direction:column;gap:32px;padding:24px}.warehouse-dashboard-layout .overview-panel:hover{box-shadow:none}.warehouse-dashboard-layout .overview-panel .stats-date-filter{align-items:center;background:#fff;border:1px solid #e4e4e7;border-radius:10px;display:flex;justify-content:space-between;padding:12px 20px}.warehouse-dashboard-layout .overview-panel .stats-date-filter .filter-row{align-items:center;display:flex;gap:10px}.warehouse-dashboard-layout .overview-panel .stats-date-filter .filter-row label{color:#71717a;font-size:.85rem;font-weight:500}.warehouse-dashboard-layout .overview-panel .stats-date-filter .filter-row input[type=date]{border:1px solid #d4d4d8;border-radius:6px;color:#0f1b2d;font-family:inherit;font-size:.85rem;font-weight:500;padding:6px 10px}.warehouse-dashboard-layout .overview-panel .stats-date-filter .filter-row input[type=date]:focus{border-color:#3b82f6;outline:none}.warehouse-dashboard-layout .overview-panel .stats-date-filter .range-label{color:#71717a;font-size:.85rem;font-weight:500}.warehouse-dashboard-layout .overview-panel .top-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group{background:#fff;border:1px solid #e4e4e7;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.02);overflow:hidden}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group h4{color:#fff;font-size:.85rem;letter-spacing:.5px;margin:0;padding:12px 16px;text-transform:uppercase}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group.inbound-orders h4{background:#1e3a8a}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group.inbound-boxes h4{background:#3b82f6}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group.outbound-orders h4{background:#f59e0b}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group.outbound-boxes h4{background:#ef4444}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group .stat-group-content{align-items:center;display:flex;padding:16px 0}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group .stat-group-content .stat-item{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:4px}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group .stat-group-content .stat-item.single{padding:8px 0}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group .stat-group-content .stat-item .value{color:#0f1b2d;font-size:1.8rem;font-weight:700}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group .stat-group-content .stat-item .label{color:#71717a;font-size:.75rem;font-weight:500}.warehouse-dashboard-layout .overview-panel .top-stats .stat-group .stat-group-content .divider{background:#e4e4e7;height:30px;width:1px}.warehouse-dashboard-layout .overview-panel .chart-section{background:#fff;border:1px solid #e4e4e7;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.02);padding:24px}.warehouse-dashboard-layout .overview-panel .chart-section .chart-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px}.warehouse-dashboard-layout .overview-panel .chart-section .chart-header h4{color:#0f1b2d;font-size:1.1rem;margin:0 0 4px}.warehouse-dashboard-layout .overview-panel .chart-section .chart-header .subtitle{color:#71717a;font-size:.85rem}.warehouse-dashboard-layout .overview-panel .chart-section .chart-header .chart-date-filter{align-items:center;display:flex;gap:8px}.warehouse-dashboard-layout .overview-panel .chart-section .chart-header .chart-date-filter label{color:#71717a;font-size:.8rem;font-weight:500}.warehouse-dashboard-layout .overview-panel .chart-section .chart-header .chart-date-filter input[type=date]{border:1px solid #d4d4d8;border-radius:6px;color:#0f1b2d;font-family:inherit;font-size:.8rem;font-weight:500;padding:5px 8px}.warehouse-dashboard-layout .overview-panel .chart-section .chart-header .chart-date-filter input[type=date]:focus{border-color:#3b82f6;outline:none}.warehouse-dashboard-layout .overview-panel .kpi-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}.warehouse-dashboard-layout .filter-bar{align-items:center;background:#fff;border-bottom:1px solid #f4f4f5;display:flex;justify-content:space-between;padding:16px 24px}.warehouse-dashboard-layout .filter-bar .filters-left{align-items:center;display:flex;gap:20px}.warehouse-dashboard-layout .filter-bar .search-input input{border:1px solid #d4d4d8;border-radius:6px;font-family:inherit;font-size:.9rem;padding:8px 12px;width:250px}.warehouse-dashboard-layout .filter-bar .search-input input:focus{border-color:#9ad040;outline:none}.warehouse-dashboard-layout .filter-bar .filter-select{align-items:center;display:flex;gap:8px}.warehouse-dashboard-layout .filter-bar .filter-select label{color:#71717a;font-size:.85rem;font-weight:500}.warehouse-dashboard-layout .filter-bar .filter-select select{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%230F1B2D%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");background-position:right 10px top 50%;background-repeat:no-repeat;background-size:10px auto;border:1px solid #d4d4d8;border-radius:6px;color:#0f1b2d;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;padding:6px 32px 6px 12px}.warehouse-dashboard-layout .filter-bar .filter-select select:focus{border-color:#9ad040;outline:none}.warehouse-dashboard-layout .data-table-container{flex:1 1;overflow-x:auto}.warehouse-dashboard-layout .data-table-container .data-table{border-collapse:collapse;font-size:.9rem;width:100%}.warehouse-dashboard-layout .data-table-container .data-table td,.warehouse-dashboard-layout .data-table-container .data-table th{border-bottom:1px solid #f4f4f5;padding:12px 24px;text-align:left}.warehouse-dashboard-layout .data-table-container .data-table th{background:#fafafa;color:#71717a;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.warehouse-dashboard-layout .data-table-container .data-table td{color:#0f1b2d;font-weight:500}.warehouse-dashboard-layout .data-table-container .data-table tbody tr:hover{background:#fafafa}.warehouse-dashboard-layout .data-table-container .data-table .empty-state{color:#71717a;font-style:italic;padding:40px;text-align:center}.warehouse-dashboard-layout .data-table-container .data-table .emphasis-col-cell{background:rgba(59,130,246,.04)}.warehouse-dashboard-layout .emphasis-col{color:#1e3a8a;font-weight:700}.warehouse-dashboard-layout .status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.8rem;font-weight:600;gap:6px;padding:4px 10px}.warehouse-dashboard-layout .status-badge .dot{border-radius:50%;height:6px;width:6px}.warehouse-dashboard-layout .status-badge.status-neutral{background:#f4f4f5;color:#52525b}.warehouse-dashboard-layout .status-badge.status-neutral .dot{background:#71717a}.warehouse-dashboard-layout .status-badge.status-success{background:rgba(34,197,94,.1);color:#17843f}.warehouse-dashboard-layout .status-badge.status-success .dot{background:#22c55e}.warehouse-dashboard-layout .status-badge.status-warning{background:rgba(245,158,11,.1);color:#be5105}.warehouse-dashboard-layout .status-badge.status-warning .dot{background:#f97316}.warehouse-dashboard-layout .status-badge.status-danger{background:rgba(239,68,68,.1);color:#eb1515}.warehouse-dashboard-layout .status-badge.status-danger .dot{background:#ef4444}.warehouse-dashboard-layout .tabular-panel .report-issue-bar{align-items:center;background:#fafafa;border-top:1px solid #e4e4e7;color:#71717a;display:flex;font-size:.85rem;gap:12px;padding:12px 24px}.warehouse-dashboard-layout .tabular-panel .report-issue-bar .text-btn{background:none;border:none;box-shadow:none;color:#0f1b2d;cursor:pointer;font-size:.85rem;font-weight:600;padding:0;text-transform:none}.warehouse-dashboard-layout .tabular-panel .report-issue-bar .text-btn:hover{color:#9ad040;text-decoration:underline}.warehouse-dashboard-layout .tabular-panel .report-issue-bar .sep{color:#d4d4d8}.warehouse-dashboard-layout .tabular-panel .summary-bar{align-items:center;display:flex;justify-content:space-between;padding:16px 24px}.warehouse-dashboard-layout .tabular-panel .summary-bar.bg-navy{background:linear-gradient(135deg,#0f1b2d,#1e3a5f)}.warehouse-dashboard-layout .tabular-panel .summary-bar.text-white{color:#fff}.warehouse-dashboard-layout .tabular-panel .summary-bar .summary-stats{display:flex;gap:24px}.warehouse-dashboard-layout .tabular-panel .summary-bar .summary-stats .stat{color:hsla(0,0%,100%,.7);font-size:.9rem;font-weight:500}.warehouse-dashboard-layout .tabular-panel .summary-bar .summary-stats .stat .val{color:#fff;font-size:1.2rem;font-weight:700;margin-right:6px}.warehouse-dashboard-layout .tabular-panel .summary-bar .action-btn{border-radius:6px;font-size:.9rem;padding:8px 24px}.warehouse-dashboard-layout .tabular-panel .summary-bar .action-btn.bg-blue{background:#3b82f6;color:#fff}.warehouse-dashboard-layout .tabular-panel .summary-bar .action-btn.bg-blue:hover{background:#2563eb}.warehouse-dashboard-layout .storage-panel .storage-filters{align-items:center;border-bottom:1px solid #f4f4f5;display:flex;justify-content:space-between;padding:16px 24px}.warehouse-dashboard-layout .storage-panel .storage-filters .filter-select{align-items:center;display:flex;gap:8px}.warehouse-dashboard-layout .storage-panel .storage-filters .filter-select label{color:#71717a;font-size:.85rem;font-weight:500}.warehouse-dashboard-layout .storage-panel .storage-filters .filter-select select{border:1px solid #d4d4d8;border-radius:6px;font-family:inherit;font-weight:500;padding:6px 32px 6px 12px}.warehouse-dashboard-layout .storage-panel .storage-filters .date-range-display{color:#71717a;font-size:.85rem}.warehouse-dashboard-layout .storage-panel .storage-banner{align-items:center;background:linear-gradient(135deg,#1e3a8a,#3b82f6);border-radius:8px;color:#fff;display:flex;gap:16px;margin:24px 24px 0;padding:16px 24px}.warehouse-dashboard-layout .storage-panel .storage-banner .label{font-size:1.1rem;font-weight:500;opacity:.9}.warehouse-dashboard-layout .storage-panel .storage-banner .value{font-size:2rem;font-weight:700}.warehouse-dashboard-layout .storage-panel .chart-section{padding:24px}.warehouse-dashboard-layout .invoice-panel .invoice-filters{border-bottom:1px solid #f4f4f5;padding:16px 24px}.warehouse-dashboard-layout .invoice-panel .invoice-filters .full-width-select{border:1px solid #d4d4d8;border-radius:6px;font-family:inherit;font-size:1rem;font-weight:500;padding:10px 12px;width:100%}.warehouse-dashboard-layout .invoice-panel .invoice-items{display:flex;flex-direction:column;gap:16px;padding:24px}.warehouse-dashboard-layout .invoice-panel .invoice-items .invoice-row{align-items:center;display:flex;font-size:.95rem}.warehouse-dashboard-layout .invoice-panel .invoice-items .invoice-row .item-label{color:#0f1b2d;flex:2 1;font-weight:600}.warehouse-dashboard-layout .invoice-panel .invoice-items .invoice-row .item-rate{color:#71717a;flex:1 1;font-size:.85rem}.warehouse-dashboard-layout .invoice-panel .invoice-items .invoice-row .item-amount{color:#0f1b2d;flex:1 1;font-weight:700;text-align:right}.warehouse-dashboard-layout .invoice-panel .invoice-items .invoice-row.vat-row .item-label{color:#71717a;font-weight:500}.warehouse-dashboard-layout .invoice-panel .invoice-items .invoice-row.total-row{font-size:1.2rem;margin-top:8px}.warehouse-dashboard-layout .invoice-panel .invoice-items .invoice-row.total-row .item-label{color:#71717a;font-weight:600}.warehouse-dashboard-layout .invoice-panel .invoice-items .invoice-row.total-row .item-amount{font-size:1.5rem}.warehouse-dashboard-layout .invoice-panel .invoice-items .invoice-divider{background:#e4e4e7;height:1px;margin:8px 0}.warehouse-dashboard-layout .invoice-panel .invoice-actions{padding:0 24px 24px}.warehouse-dashboard-layout .invoice-panel .invoice-actions .full-width{border-radius:8px;font-size:1rem;padding:12px;width:100%}.warehouse-dashboard-layout .invoice-panel .invoice-actions .full-width.bg-navy{background:#3b82f6;color:#fff}.warehouse-dashboard-layout .invoice-panel .invoice-actions .full-width.bg-navy:hover{background:#2563eb}.warehouse-dashboard-layout .box-history-panel .date-col .sub-date{color:#71717a;font-size:.8rem;margin-top:2px}.warehouse-dashboard-layout .kb-panel .kb-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;padding:24px}.warehouse-dashboard-layout .kb-panel .kb-grid .kb-card{background:#1e3a8a;border-radius:8px;box-shadow:0 4px 6px rgba(30,58,138,.2);color:#fff;font-size:1rem;font-weight:600;padding:24px 16px;text-align:center;text-decoration:none;transition:background .2s,-webkit-transform .2s;transition:transform .2s,background .2s;transition:transform .2s,background .2s,-webkit-transform .2s}.warehouse-dashboard-layout .kb-panel .kb-grid .kb-card:hover{background:#1e40af;-webkit-transform:translateY(-2px);transform:translateY(-2px)}.warehouse-dashboard-layout .svg-chart-container{position:relative;width:100%}.warehouse-dashboard-layout .svg-chart-container.bar-chart{overflow-x:auto;overflow-y:hidden;padding-bottom:20px}.warehouse-dashboard-layout .svg-chart-container.bar-chart svg{display:block;min-width:500px}.warehouse-dashboard-layout .svg-chart-container.line-chart svg{display:block;overflow:visible}.warehouse-dashboard-layout .svg-chart-container .chart-legend{display:flex;gap:16px;position:absolute;right:0;top:-40px}.warehouse-dashboard-layout .svg-chart-container .chart-legend .legend-item{align-items:center;color:#71717a;display:flex;font-size:.85rem;font-weight:500;gap:6px}.warehouse-dashboard-layout .svg-chart-container .chart-legend .legend-item .swatch{border-radius:2px;height:12px;width:12px}.warehouse-dashboard-layout .svg-chart-container .chart-legend .legend-item .swatch.bg-navy{background:#0f1b2d}.warehouse-dashboard-layout .svg-chart-container .chart-legend .legend-item .swatch.bg-blue{background:#38bdf8}.warehouse-dashboard-layout .dashboard-sidebar{display:none;inset:0;pointer-events:none;position:fixed;z-index:60}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-panel{background:linear-gradient(180deg,#0b1120,#162033);box-sizing:border-box;color:#fff;display:flex;flex-direction:column;height:100%;left:0;max-width:320px;padding-bottom:env(safe-area-inset-bottom,0);padding-top:env(safe-area-inset-top,0);position:absolute;top:0;-webkit-transform:translateX(-100%);transform:translateX(-100%);transition:-webkit-transform .25s cubic-bezier(.4,0,.2,1);transition:transform .25s cubic-bezier(.4,0,.2,1);transition:transform .25s cubic-bezier(.4,0,.2,1),-webkit-transform .25s cubic-bezier(.4,0,.2,1);width:80%;z-index:1}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-backdrop{background:rgba(0,0,0,.5);inset:0;opacity:0;position:absolute;transition:opacity .25s ease}.warehouse-dashboard-layout .dashboard-sidebar.open{pointer-events:auto}.warehouse-dashboard-layout .dashboard-sidebar.open .sidebar-panel{-webkit-transform:translateX(0);transform:translateX(0)}.warehouse-dashboard-layout .dashboard-sidebar.open .sidebar-backdrop{opacity:1}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-header{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;gap:10px;padding:16px 16px 12px}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-header .sidebar-logo{-webkit-filter:brightness(0) invert(1);filter:brightness(0) invert(1);height:32px;width:32px}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-header .sidebar-title{flex:1 1;font-size:1rem;font-weight:600}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-header .sidebar-close{align-items:center;background:hsla(0,0%,100%,.1);border:none;border-radius:8px;color:hsla(0,0%,100%,.7);cursor:pointer;display:flex;font-size:1.1rem;height:32px;justify-content:center;padding:0;width:32px}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-header .sidebar-close:hover{background:hsla(0,0%,100%,.15);color:#fff}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-nav{flex:1 1;overflow-y:auto;padding:8px 0}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-item{align-items:center;background:transparent;border:none;border-left:3px solid transparent;color:hsla(0,0%,100%,.7);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:12px;padding:12px 16px;text-align:left;transition:all .15s ease;width:100%}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-item .sidebar-icon{align-items:center;background:hsla(0,0%,100%,.06);border-radius:8px;display:flex;flex-shrink:0;font-size:1rem;height:32px;justify-content:center;width:32px}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-item:hover{background:hsla(0,0%,100%,.06);color:#fff}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-item.active{background:rgba(56,189,248,.08);border-left-color:#38bdf8;color:#38bdf8}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-item.active .sidebar-icon{background:rgba(56,189,248,.15);color:#38bdf8}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-item.logout:hover,.warehouse-dashboard-layout .dashboard-sidebar .sidebar-item.logout:hover .sidebar-icon{color:#ef4444}.warehouse-dashboard-layout .dashboard-sidebar .sidebar-footer{border-top:1px solid hsla(0,0%,100%,.1);padding:8px 0}@media(max-width:768px){.warehouse-dashboard-layout .dashboard-header{padding:0 12px}.warehouse-dashboard-layout .dashboard-header .mobile-menu-btn{align-items:center;background:hsla(0,0%,100%,.08);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.25rem;height:36px;justify-content:center;padding:0;width:36px}.warehouse-dashboard-layout .dashboard-header .header-nav,.warehouse-dashboard-layout .dashboard-header .header-right .header-link:not(.logout),.warehouse-dashboard-layout .dashboard-header .header-right .header-user .user-name{display:none}.warehouse-dashboard-layout .dashboard-sidebar{display:block}.warehouse-dashboard-layout .dashboard-content .dashboard-scroll-area{padding:16px}.warehouse-dashboard-layout .dashboard-content .dashboard-scroll-area .dashboard-grid{gap:16px}.warehouse-dashboard-layout .top-stats{gap:12px;grid-template-columns:repeat(2,1fr)}.warehouse-dashboard-layout .kpi-grid{gap:12px;grid-template-columns:1fr}.warehouse-dashboard-layout .kb-grid{grid-template-columns:1fr}.warehouse-dashboard-layout .svg-chart-container{overflow-x:auto}.warehouse-dashboard-layout .dashboard-panel .panel-header{padding:12px 16px}.warehouse-dashboard-layout .stats-card{padding:14px}.warehouse-dashboard-layout .stats-date-filter{flex-wrap:wrap;gap:8px}}@media(max-width:480px){.warehouse-dashboard-layout .top-stats{grid-template-columns:1fr}}.partner-dashboard-layout{background-color:#f4f4f5;color:#27272b;display:flex;flex-direction:column;font-family:Plus Jakarta Sans,sans-serif;height:100%;overflow-x:hidden;width:100%}.partner-dashboard-layout *{box-sizing:border-box}.partner-dashboard-layout .dashboard-header{align-items:center;background:linear-gradient(90deg,#0b1120,#162033);color:#fff;display:flex;flex-shrink:0;gap:8px;height:56px;padding:0 24px}.partner-dashboard-layout .dashboard-header .header-left{align-items:center;display:flex;flex-shrink:0;gap:10px}.partner-dashboard-layout .dashboard-header .header-left img.logo{-webkit-filter:brightness(0) invert(1);filter:brightness(0) invert(1);height:36px;width:36px}.partner-dashboard-layout .dashboard-header .header-left .header-title{font-size:1rem;font-weight:600;letter-spacing:.5px;margin:0;white-space:nowrap}.partner-dashboard-layout .dashboard-header .mobile-menu-btn{display:none}.partner-dashboard-layout .dashboard-header .header-nav{-ms-overflow-style:none;align-items:center;display:flex;gap:2px;height:100%;margin:0 auto;overflow-x:auto;scrollbar-width:none}.partner-dashboard-layout .dashboard-header .header-nav::-webkit-scrollbar{display:none}.partner-dashboard-layout .dashboard-header .header-nav .nav-tab{align-items:center;background:transparent;border:none;border-bottom:2px solid transparent;box-shadow:none;color:hsla(0,0%,100%,.6);cursor:pointer;display:flex;font-size:.82rem;font-weight:500;gap:6px;height:100%;padding:0 14px;text-transform:none;transition:all .2s ease;white-space:nowrap}.partner-dashboard-layout .dashboard-header .header-nav .nav-tab .nav-icon{align-items:center;display:flex;font-size:1rem}.partner-dashboard-layout .dashboard-header .header-nav .nav-tab:hover{background:hsla(0,0%,100%,.06);box-shadow:none;color:#fff;-webkit-transform:none;transform:none}.partner-dashboard-layout .dashboard-header .header-nav .nav-tab.active{border-bottom-color:#38bdf8;color:#fff}.partner-dashboard-layout .dashboard-header .header-nav .nav-tab.active .nav-icon{color:#38bdf8}.partner-dashboard-layout .dashboard-header .header-right{align-items:center;display:flex;flex-shrink:0;gap:8px}.partner-dashboard-layout .dashboard-header .header-right .header-link{align-items:center;background:hsla(0,0%,100%,.06);border:none;border-radius:6px;box-shadow:none;color:hsla(0,0%,100%,.6);cursor:pointer;display:flex;font-size:1.1rem;height:32px;justify-content:center;padding:0;text-transform:none;transition:all .2s ease;width:32px}.partner-dashboard-layout .dashboard-header .header-right .header-link:hover{background:hsla(0,0%,100%,.12);box-shadow:none;color:#fff;-webkit-transform:none;transform:none}.partner-dashboard-layout .dashboard-header .header-right .header-link.logout:hover{background:rgba(239,68,68,.15);color:#ef4444}.partner-dashboard-layout .dashboard-header .header-right .header-link.scanner-link{gap:6px;padding:0 10px;width:auto}.partner-dashboard-layout .dashboard-header .header-right .header-link.scanner-link .link-label{font-size:.78rem;font-weight:500;white-space:nowrap}.partner-dashboard-layout .dashboard-header .header-right .header-user{align-items:center;display:flex;gap:8px;margin:0 4px}.partner-dashboard-layout .dashboard-header .header-right .header-user .avatar{align-items:center;background:#38bdf8;border-radius:8px;color:#0b1120;display:flex;flex-shrink:0;font-size:.75rem;font-weight:700;height:30px;justify-content:center;width:30px}.partner-dashboard-layout .dashboard-header .header-right .header-user .user-name{font-size:.8rem;font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1024px){.partner-dashboard-layout .dashboard-header .header-nav .nav-tab .nav-label{display:none}.partner-dashboard-layout .dashboard-header .header-nav .nav-tab{padding:0 10px}.partner-dashboard-layout .dashboard-header .header-right .scanner-link .link-label{display:none}.partner-dashboard-layout .dashboard-header .header-right .scanner-link{padding:0;width:32px}}.partner-dashboard-layout .dashboard-content{display:flex;flex:1 1;flex-direction:column;min-width:0}.partner-dashboard-layout .dashboard-content .dashboard-scroll-area{flex:1 1;overflow-y:auto;padding:24px}.partner-dashboard-layout .dashboard-content .dashboard-scroll-area .dashboard-grid{display:flex;flex-direction:column;gap:24px;margin:0 auto;max-width:1400px}.partner-dashboard-layout .dashboard-panel{background:#fff;border:1px solid #e4e4e7;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .3s ease}.partner-dashboard-layout .dashboard-panel:hover{box-shadow:0 8px 25px rgba(0,0,0,.08),0 4px 10px rgba(0,0,0,.04)}.partner-dashboard-layout .dashboard-panel .panel-header{align-items:center;background:#fafafa;border-bottom:1px solid #f4f4f5;display:flex;justify-content:space-between;padding:16px 24px;position:relative}.partner-dashboard-layout .dashboard-panel .panel-header:before{background:linear-gradient(90deg,#1e3a8a,#38bdf8);content:"";height:3px;left:0;position:absolute;right:0;top:0}.partner-dashboard-layout .dashboard-panel .panel-header h3{align-items:center;color:#0f1b2d;display:flex;font-size:1.1rem;font-weight:600;gap:8px;margin:0}.partner-dashboard-layout .dashboard-panel .panel-header .header-subtitle{color:#71717a;font-size:.85rem}.partner-dashboard-layout .dashboard-panel .panel-header .header-actions{align-items:center;display:flex;gap:12px}.partner-dashboard-layout .dashboard-panel .panel-header .coming-soon-badge{background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:20px;color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.partner-dashboard-layout .dashboard-panel .panel-header .upload-btn{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:6px;padding:8px 16px;transition:background .2s}.partner-dashboard-layout .dashboard-panel .panel-header .upload-btn:hover{background:#2563eb}.partner-dashboard-layout .dashboard-panel .panel-body{padding:0}.partner-dashboard-layout .panel-loading{color:#71717a;font-size:.9rem;padding:40px;text-align:center}.partner-dashboard-layout .api-error-banner{background:rgba(245,158,11,.1);border-bottom:1px solid rgba(245,158,11,.2);color:#b45309;font-size:.82rem;font-weight:500;padding:8px 24px}.partner-dashboard-layout .toggle-label{align-items:center;color:#71717a;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:6px}.partner-dashboard-layout .toggle-label input[type=checkbox]{cursor:pointer;height:16px;width:16px}.partner-dashboard-layout .date-range-bar{align-items:center;background:#fff;border-bottom:1px solid #f4f4f5;display:flex;gap:10px;padding:12px 24px}.partner-dashboard-layout .date-range-bar label{color:#71717a;font-size:.85rem;font-weight:500}.partner-dashboard-layout .date-range-bar input[type=date]{border:1px solid #d4d4d8;border-radius:6px;color:#0f1b2d;font-family:inherit;font-size:.85rem;font-weight:500;padding:6px 10px}.partner-dashboard-layout .date-range-bar input[type=date]:focus{border-color:#3b82f6;outline:none}.partner-dashboard-layout .summary-bar{align-items:center;background:linear-gradient(135deg,#0f1b2d,#1e3a5f);color:#fff;display:flex;gap:24px;padding:14px 24px}.partner-dashboard-layout .summary-bar .stat{color:hsla(0,0%,100%,.7);font-size:.9rem;font-weight:500}.partner-dashboard-layout .summary-bar .stat strong{color:#fff;font-size:1.1rem;font-weight:700;margin-right:4px}.partner-dashboard-layout .emphasis-col{color:#1e3a8a;font-weight:700}.partner-dashboard-layout .data-table-container{flex:1 1;overflow-x:auto}.partner-dashboard-layout .data-table-container .data-table{border-collapse:collapse;font-size:.85rem;width:100%}.partner-dashboard-layout .data-table-container .data-table td,.partner-dashboard-layout .data-table-container .data-table th{border-bottom:1px solid #f4f4f5;padding:10px 16px;text-align:left;white-space:nowrap}.partner-dashboard-layout .data-table-container .data-table th{background:#fafafa;color:#71717a;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.partner-dashboard-layout .data-table-container .data-table td{color:#0f1b2d;font-weight:500}.partner-dashboard-layout .data-table-container .data-table tbody tr:hover{background:#fafafa}.partner-dashboard-layout .data-table-container .data-table .emphasis-col-cell{background:rgba(59,130,246,.04)}.partner-dashboard-layout .data-table-container .data-table .empty-state{color:#71717a;font-style:italic;padding:40px;text-align:center}.partner-dashboard-layout .status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.75rem;font-weight:600;gap:6px;padding:3px 8px}.partner-dashboard-layout .status-badge .dot{border-radius:50%;height:5px;width:5px}.partner-dashboard-layout .status-badge.status-neutral{background:#f4f4f5;color:#52525b}.partner-dashboard-layout .status-badge.status-neutral .dot{background:#71717a}.partner-dashboard-layout .status-badge.status-success{background:rgba(34,197,94,.1);color:#17843f}.partner-dashboard-layout .status-badge.status-success .dot{background:#22c55e}.partner-dashboard-layout .status-badge.status-warning{background:rgba(245,158,11,.1);color:#be5105}.partner-dashboard-layout .status-badge.status-warning .dot{background:#f97316}.partner-dashboard-layout .status-badge.status-danger{background:rgba(239,68,68,.1);color:#eb1515}.partner-dashboard-layout .status-badge.status-danger .dot{background:#ef4444}.partner-dashboard-layout .forecast-grid-wrapper{position:relative}.partner-dashboard-layout .forecast-grid{overflow-x:auto;padding:0}.partner-dashboard-layout .forecast-grid table{border-collapse:collapse;font-size:.85rem;min-width:100%;width:-webkit-max-content;width:max-content}.partner-dashboard-layout .forecast-grid table td,.partner-dashboard-layout .forecast-grid table th{border-bottom:1px solid #f4f4f5;border-right:1px solid #f4f4f5;padding:10px 14px;text-align:center;white-space:nowrap}.partner-dashboard-layout .forecast-grid table .sticky-col{background:#fff;border-right:2px solid #e4e4e7;left:0;min-width:160px;position:-webkit-sticky;position:sticky;text-align:left;z-index:2}.partner-dashboard-layout .forecast-grid table thead th{background:#fafafa;color:#71717a;font-weight:600}.partner-dashboard-layout .forecast-grid table thead th.sticky-col{background:#fafafa}.partner-dashboard-layout .forecast-grid table thead th .col-header{align-items:center;display:flex;flex-direction:column;gap:2px}.partner-dashboard-layout .forecast-grid table thead th .col-header .day-name{color:#71717a;font-size:.75rem}.partner-dashboard-layout .forecast-grid table thead th .col-header .date{color:#0f1b2d;font-size:.85rem;font-weight:700}.partner-dashboard-layout .forecast-grid table tbody .row-label{color:#0f1b2d;font-size:.85rem;font-weight:600}.partner-dashboard-layout .forecast-grid table tbody .cell{color:#0f1b2d;cursor:pointer;font-weight:600;transition:background .15s}.partner-dashboard-layout .forecast-grid table tbody .cell:hover{background:rgba(59,130,246,.08)}.partner-dashboard-layout .forecast-grid table tbody .collections-row .cell,.partner-dashboard-layout .forecast-grid table tbody .collections-row .row-label{color:#1e3a8a}.partner-dashboard-layout .forecast-grid table tbody .returns-row .cell{color:#f59e0b}.partner-dashboard-layout .forecast-grid table tbody .returns-row .row-label{color:#b45309}.partner-dashboard-layout .forecast-popover{background:#fff;border:1px solid #e4e4e7;border-radius:10px;box-shadow:0 12px 40px rgba(0,0,0,.15);max-width:500px;min-width:380px;overflow:hidden;position:fixed;z-index:100}.partner-dashboard-layout .forecast-popover .popover-header{align-items:center;background:#0f1b2d;color:#fff;display:flex;justify-content:space-between;padding:12px 16px}.partner-dashboard-layout .forecast-popover .popover-header strong{font-size:.9rem}.partner-dashboard-layout .forecast-popover .popover-header .popover-date{font-size:.8rem;opacity:.7}.partner-dashboard-layout .forecast-popover .popover-body{max-height:250px;overflow-y:auto;padding:0}.partner-dashboard-layout .forecast-popover .popover-body .no-data{color:#71717a;padding:20px;text-align:center}.partner-dashboard-layout .forecast-popover .popover-table{border-collapse:collapse;font-size:.8rem;width:100%}.partner-dashboard-layout .forecast-popover .popover-table td,.partner-dashboard-layout .forecast-popover .popover-table th{border-bottom:1px solid #f4f4f5;padding:8px 12px;text-align:left}.partner-dashboard-layout .forecast-popover .popover-table th{background:#fafafa;color:#71717a;font-size:.75rem;font-weight:600;text-transform:uppercase}.partner-dashboard-layout .forecast-popover .popover-table td{color:#0f1b2d;font-weight:500}.partner-dashboard-layout .route-planning-panel .day-tabs{background:#fff;border-bottom:1px solid #e4e4e7;display:flex;padding:0 24px}.partner-dashboard-layout .route-planning-panel .day-tabs .day-tab{align-items:center;background:transparent;border:none;border-bottom:3px solid transparent;box-shadow:none;color:#71717a;cursor:pointer;display:flex;flex-direction:column;font-size:.9rem;font-weight:500;gap:2px;padding:12px 20px;transition:all .2s}.partner-dashboard-layout .route-planning-panel .day-tabs .day-tab .tab-day{font-size:.85rem;font-weight:600}.partner-dashboard-layout .route-planning-panel .day-tabs .day-tab .tab-date{font-size:.75rem}.partner-dashboard-layout .route-planning-panel .day-tabs .day-tab .lock-badge{background:#e4e4e7;border-radius:8px;color:#71717a;font-size:.65rem;margin-top:2px;padding:1px 6px}.partner-dashboard-layout .route-planning-panel .day-tabs .day-tab:hover{background:#fafafa;color:#0f1b2d}.partner-dashboard-layout .route-planning-panel .day-tabs .day-tab.active{border-bottom-color:#3b82f6;color:#1e3a8a}.partner-dashboard-layout .route-plan-table-container{overflow-x:auto}.partner-dashboard-layout .route-plan-table-container .route-plan-table{border-collapse:collapse;font-size:.85rem;width:100%}.partner-dashboard-layout .route-plan-table-container .route-plan-table td,.partner-dashboard-layout .route-plan-table-container .route-plan-table th{border-bottom:1px solid #f4f4f5;padding:10px 16px;text-align:left}.partner-dashboard-layout .route-plan-table-container .route-plan-table th{background:#fafafa;color:#71717a;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.partner-dashboard-layout .route-plan-table-container .route-plan-table td{color:#0f1b2d;font-weight:500}.partner-dashboard-layout .route-plan-table-container .route-plan-table tbody tr{transition:background .15s}.partner-dashboard-layout .route-plan-table-container .route-plan-table tbody tr:hover{background:#fafafa}.partner-dashboard-layout .route-plan-table-container .route-plan-table tbody tr.confirmed{background:rgba(34,197,94,.04)}.partner-dashboard-layout .route-plan-table-container .route-plan-table .type-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:700;padding:3px 10px}.partner-dashboard-layout .route-plan-table-container .route-plan-table .type-badge.type-C{background:rgba(30,58,138,.1);color:#1e3a8a}.partner-dashboard-layout .route-plan-table-container .route-plan-table .type-badge.type-R{background:rgba(245,158,11,.1);color:#b45309}.partner-dashboard-layout .route-plan-table-container .route-plan-table input[type=time],.partner-dashboard-layout .route-plan-table-container .route-plan-table select{border:1px solid #d4d4d8;border-radius:4px;color:#0f1b2d;font-family:inherit;font-size:.85rem;font-weight:500;padding:4px 8px}.partner-dashboard-layout .route-plan-table-container .route-plan-table input[type=time]:focus,.partner-dashboard-layout .route-plan-table-container .route-plan-table select:focus{border-color:#3b82f6;outline:none}.partner-dashboard-layout .route-plan-table-container .route-plan-table input[type=checkbox]{cursor:pointer;height:16px;width:16px}.partner-dashboard-layout .invoices-panel .week-selector{align-items:center;border-bottom:1px solid #f4f4f5;display:flex;gap:12px;padding:16px 24px}.partner-dashboard-layout .invoices-panel .week-selector label{color:#71717a;font-size:.85rem;font-weight:500}.partner-dashboard-layout .invoices-panel .week-selector select{border:1px solid #d4d4d8;border-radius:6px;color:#0f1b2d;flex:1 1;font-family:inherit;font-size:.9rem;font-weight:500;padding:8px 12px}.partner-dashboard-layout .invoice-breakdown{padding:24px}.partner-dashboard-layout .invoice-breakdown .invoice-courier{color:#71717a;font-size:.9rem;margin-bottom:20px}.partner-dashboard-layout .invoice-breakdown .invoice-courier strong{color:#0f1b2d}.partner-dashboard-layout .invoice-breakdown .invoice-lines{display:flex;flex-direction:column;gap:12px}.partner-dashboard-layout .invoice-breakdown .invoice-line{align-items:center;display:flex;font-size:.9rem}.partner-dashboard-layout .invoice-breakdown .invoice-line .line-label{color:#0f1b2d;flex:2 1;font-weight:600}.partner-dashboard-layout .invoice-breakdown .invoice-line .line-detail{color:#71717a;flex:2 1;font-size:.8rem}.partner-dashboard-layout .invoice-breakdown .invoice-line .line-amount{color:#0f1b2d;flex:1 1;font-weight:700;text-align:right}.partner-dashboard-layout .invoice-breakdown .invoice-line.min-charge .line-label{color:#f59e0b}.partner-dashboard-layout .invoice-breakdown .invoice-line.subtotal-line{margin-top:4px}.partner-dashboard-layout .invoice-breakdown .invoice-line.subtotal-line .line-label{color:#71717a}.partner-dashboard-layout .invoice-breakdown .invoice-line.vat-line .line-label{color:#71717a;font-weight:500}.partner-dashboard-layout .invoice-breakdown .invoice-line.total-line{font-size:1.2rem;margin-top:4px}.partner-dashboard-layout .invoice-breakdown .invoice-line.total-line .line-label{font-weight:700}.partner-dashboard-layout .invoice-breakdown .invoice-line.total-line .line-amount{color:#1e3a8a;font-size:1.4rem}.partner-dashboard-layout .invoice-breakdown .invoice-divider{background:#e4e4e7;height:1px;margin:16px 0}.partner-dashboard-layout .invoice-breakdown .generate-invoice-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:20px;padding:12px;transition:background .2s;width:100%}.partner-dashboard-layout .invoice-breakdown .generate-invoice-btn:hover{background:#2563eb}.partner-dashboard-layout .sla-panel .sla-body{padding:24px}.partner-dashboard-layout .sla-panel .sla-intro{color:#71717a;font-size:.9rem;margin:0 0 16px}.partner-dashboard-layout .sla-panel .sla-list{display:flex;flex-direction:column;gap:16px;list-style:none;margin:0;padding:0}.partner-dashboard-layout .sla-panel .sla-list li{background:#fafafa;border-left:3px solid #38bdf8;border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:14px 18px}.partner-dashboard-layout .sla-panel .sla-list li strong{color:#0f1b2d;font-size:.95rem}.partner-dashboard-layout .sla-panel .sla-list li span{color:#71717a;font-size:.8rem}.partner-dashboard-layout .filter-bar{align-items:center;background:#fff;border-bottom:1px solid #f4f4f5;display:flex;justify-content:space-between;padding:12px 24px}.partner-dashboard-layout .filter-bar .filters-left{align-items:center;display:flex;gap:16px}.partner-dashboard-layout .filter-bar .filter-select{align-items:center;display:flex;gap:8px}.partner-dashboard-layout .filter-bar .filter-select label{color:#71717a;font-size:.85rem;font-weight:500}.partner-dashboard-layout .filter-bar .filter-select select{background:#fff;border:1px solid #d4d4d8;border-radius:6px;color:#0f1b2d;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:500;padding:6px 32px 6px 12px}.partner-dashboard-layout .dashboard-sidebar{display:none;inset:0;pointer-events:none;position:fixed;z-index:60}.partner-dashboard-layout .dashboard-sidebar .sidebar-panel{background:linear-gradient(180deg,#0b1120,#162033);box-sizing:border-box;color:#fff;display:flex;flex-direction:column;height:100%;left:0;max-width:320px;padding-bottom:env(safe-area-inset-bottom,0);padding-top:env(safe-area-inset-top,0);position:absolute;top:0;-webkit-transform:translateX(-100%);transform:translateX(-100%);transition:-webkit-transform .25s cubic-bezier(.4,0,.2,1);transition:transform .25s cubic-bezier(.4,0,.2,1);transition:transform .25s cubic-bezier(.4,0,.2,1),-webkit-transform .25s cubic-bezier(.4,0,.2,1);width:80%;z-index:1}.partner-dashboard-layout .dashboard-sidebar .sidebar-backdrop{background:rgba(0,0,0,.5);inset:0;opacity:0;position:absolute;transition:opacity .25s ease}.partner-dashboard-layout .dashboard-sidebar.open{pointer-events:auto}.partner-dashboard-layout .dashboard-sidebar.open .sidebar-panel{-webkit-transform:translateX(0);transform:translateX(0)}.partner-dashboard-layout .dashboard-sidebar.open .sidebar-backdrop{opacity:1}.partner-dashboard-layout .dashboard-sidebar .sidebar-header{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.1);display:flex;gap:10px;padding:16px 16px 12px}.partner-dashboard-layout .dashboard-sidebar .sidebar-header .sidebar-logo{-webkit-filter:brightness(0) invert(1);filter:brightness(0) invert(1);height:32px;width:32px}.partner-dashboard-layout .dashboard-sidebar .sidebar-header .sidebar-title{flex:1 1;font-size:1rem;font-weight:600}.partner-dashboard-layout .dashboard-sidebar .sidebar-header .sidebar-close{align-items:center;background:hsla(0,0%,100%,.1);border:none;border-radius:8px;color:hsla(0,0%,100%,.7);cursor:pointer;display:flex;font-size:1.1rem;height:32px;justify-content:center;padding:0;width:32px}.partner-dashboard-layout .dashboard-sidebar .sidebar-header .sidebar-close:hover{background:hsla(0,0%,100%,.15);color:#fff}.partner-dashboard-layout .dashboard-sidebar .sidebar-nav{flex:1 1;overflow-y:auto;padding:8px 0}.partner-dashboard-layout .dashboard-sidebar .sidebar-item{align-items:center;background:transparent;border:none;border-left:3px solid transparent;color:hsla(0,0%,100%,.7);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:12px;padding:12px 16px;text-align:left;transition:all .15s ease;width:100%}.partner-dashboard-layout .dashboard-sidebar .sidebar-item .sidebar-icon{align-items:center;background:hsla(0,0%,100%,.06);border-radius:8px;display:flex;flex-shrink:0;font-size:1rem;height:32px;justify-content:center;width:32px}.partner-dashboard-layout .dashboard-sidebar .sidebar-item:hover{background:hsla(0,0%,100%,.06);color:#fff}.partner-dashboard-layout .dashboard-sidebar .sidebar-item.active{background:rgba(56,189,248,.08);border-left-color:#38bdf8;color:#38bdf8}.partner-dashboard-layout .dashboard-sidebar .sidebar-item.active .sidebar-icon{background:rgba(56,189,248,.15);color:#38bdf8}.partner-dashboard-layout .dashboard-sidebar .sidebar-item.logout:hover,.partner-dashboard-layout .dashboard-sidebar .sidebar-item.logout:hover .sidebar-icon{color:#ef4444}.partner-dashboard-layout .dashboard-sidebar .sidebar-footer{border-top:1px solid hsla(0,0%,100%,.1);padding:8px 0}@media(max-width:768px){.partner-dashboard-layout .dashboard-header{padding:0 12px}.partner-dashboard-layout .dashboard-header .mobile-menu-btn{align-items:center;background:hsla(0,0%,100%,.08);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.25rem;height:36px;justify-content:center;padding:0;width:36px}.partner-dashboard-layout .dashboard-header .header-nav,.partner-dashboard-layout .dashboard-header .header-right .header-link:not(.logout),.partner-dashboard-layout .dashboard-header .header-right .header-user .user-name{display:none}.partner-dashboard-layout .dashboard-sidebar{display:block}.partner-dashboard-layout .dashboard-content .dashboard-scroll-area{padding:16px}.partner-dashboard-layout .dashboard-content .dashboard-scroll-area .dashboard-grid{gap:16px}.partner-dashboard-layout .dashboard-panel .panel-header{padding:12px 16px}.partner-dashboard-layout .date-range-bar{flex-wrap:wrap;gap:8px;padding:10px 16px}.partner-dashboard-layout .filter-bar{flex-wrap:wrap;padding:8px 16px}.partner-dashboard-layout .invoice-lines{flex-direction:column}}.order-card .order-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5em}.order-card .order-header .order-id{color:#27272b;font-weight:500}.order-card .order-header .order-type-badge{border-radius:4px;font-size:.65em;font-weight:700;letter-spacing:.05em;padding:.2em .5em;text-transform:uppercase}.order-card .order-header .order-type-badge.collection{background-color:rgba(59,130,246,.15);color:#3b82f6}.order-card .order-header .order-type-badge.delivery{background-color:rgba(34,197,94,.15);color:#17843f}.order-card .order-header .order-type-badge.awaiting-load{background-color:rgba(249,115,22,.15);color:#f97316}.order-card .order-header .order-type-badge.not-ready{background-color:rgba(239,68,68,.12);color:#ef4444}.order-card .order-header .order-type-badge.in-warehouse{background-color:rgba(59,130,246,.15);color:#3b82f6}.order-card .order-header .university-badge{color:#71717a;font-size:.7em;font-style:italic}.order-card .order-details{border-top:1px solid #f4f4f5;padding:.75em 1em}.order-card .order-details .customer-name{color:#27272b;font-size:1.05em;font-weight:600;margin-bottom:.5em}.order-card .order-details .address-line,.order-card .order-details .phone-line{align-items:flex-start;color:#52525b;display:flex;font-size:.9em;gap:.5em;margin-bottom:.35em}.order-card .order-details .address-line .icon,.order-card .order-details .phone-line .icon{color:#71717a;flex-shrink:0;font-size:.85em;margin-top:.15em}.order-card .order-details .address-line span,.order-card .order-details .phone-line span{line-height:1.4}.order-card .bottom{align-items:center;display:flex;flex-wrap:wrap;gap:1em}.order-card .bottom .box-count{align-items:center;color:#52525b;display:flex;font-size:.9em;gap:.35em}.order-card .bottom .box-count .icon{color:#71717a;font-size:.8em}.order-card .bottom .box-count strong{color:#27272b}.order-card .bottom .box-count .completed-indicator{align-items:center;color:#22c55e;display:flex;font-weight:600;gap:.2em;margin-left:.5em}.order-card .bottom .box-count .completed-indicator .icon-small{font-size:.75em}.order-card .bottom .readiness-message{align-items:center;color:#71717a;display:flex;font-size:.8em;font-style:italic;font-weight:500;gap:.35em}.order-card .bottom .readiness-message .icon{color:#d4d4d8;font-size:.75em}.order-card .bottom .pending-warehouse{align-items:center;color:#3b82f6;display:flex;font-size:.8em;font-weight:500;gap:.35em}.order-card .bottom .pending-warehouse .icon{font-size:.8em}.order-card .bottom .time-slot{align-items:center;color:#6c3cd9;display:flex;font-size:.9em;font-weight:500;gap:.35em}.order-card .bottom .time-slot .icon{font-size:.8em}.order-card .bottom .status{border-radius:4px;font-size:.8em;font-weight:600;margin-left:auto;padding:.25em .6em}.order-card .bottom .status.status-pending{background-color:#e4e4e7;color:#52525b}.order-card .bottom .status.status-progress{background-color:#fff;color:#3b82f6}.order-card .bottom .status.status-ready{-webkit-animation:pulse-ready 2s infinite;animation:pulse-ready 2s infinite;background-color:#fdfcfe;color:#6c3cd9}.order-card .bottom .status.status-complete{background-color:#d5f8e2;color:#22c55e}.order-card .bottom .postcode{display:none}.order-card.ok{background-color:#e2faeb;border-left:4px solid #22c55e;opacity:.55;order:999}.order-card.warn{border-left:4px solid #3b82f6}.order-card.ready{background-color:#fff;border-left:4px solid #6c3cd9}.order-card.blocked{border-left:4px solid #d4d4d8;opacity:.85}.order-card.failed{border-left:4px solid #ef4444}.order-card .failed-indicator{align-items:center;color:#ef4444;display:flex;font-size:.85em;font-weight:600;gap:.2em;margin-left:.5em}.order-card .failed-indicator .icon-small{font-size:.75em}.order-card .status-failed{background-color:#fff;color:#ef4444}.order-card .status-blocked{background-color:#f4f4f5;color:#71717a}@-webkit-keyframes pulse-ready{0%,to{opacity:1}50%{opacity:.7}}@keyframes pulse-ready{0%,to{opacity:1}50%{opacity:.7}}.action-bar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:hsla(0,0%,100%,.95);border-top:1px solid #e4e4e7;bottom:0;box-shadow:0 -4px 20px rgba(0,0,0,.08);display:flex;gap:.75rem;left:0;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom, 0px));position:fixed;right:0;z-index:100}.action-bar .btn-action{align-items:center;background-color:#f4f4f5;border:none;border-radius:10px;color:#52525b;cursor:pointer;display:flex;flex:1 1;font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;padding:.875rem 1rem;transition:all .2s ease}.action-bar .btn-action:disabled{cursor:not-allowed;opacity:.4}.action-bar .btn-action:not(:disabled):hover{background-color:#e4e4e7}.action-bar .btn-action:not(:disabled):active{-webkit-transform:scale(.98);transform:scale(.98)}.action-bar .btn-action.primary{background:linear-gradient(135deg,#6c3cd9,#5727c6);box-shadow:0 4px 12px rgba(108,60,217,.3);color:#fff}.action-bar .btn-action.primary:not(:disabled):hover{box-shadow:0 6px 16px rgba(108,60,217,.4)}.action-bar .btn-action.active{background-color:rgba(108,60,217,.1);border:2px solid #6c3cd9;color:#6c3cd9}.action-bar .btn-action.secondary{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px rgba(239,68,68,.3);color:#fff}.action-bar .btn-action.secondary:not(:disabled):hover{box-shadow:0 6px 16px rgba(239,68,68,.4)}.action-bar .btn-action svg{font-size:1.1rem}.action-bar.color-warn .btn-action.primary{background:linear-gradient(135deg,#f97316,#e05f06);box-shadow:0 4px 12px rgba(249,115,22,.3)}.action-bar.color-warn .btn-action.primary:not(:disabled):hover{box-shadow:0 6px 16px rgba(249,115,22,.4)}.action-bar.color-warn-active .btn-action.active{background-color:rgba(249,115,22,.1);border:2px solid #f97316;color:#f97316}section:has(.order-card){display:flex;flex-direction:column}.page-date-header{align-items:center;background-color:#fafafa;border:1px solid #e4e4e7;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.5em;padding:.75em 1em}.page-date-header .date-label{color:#6c3cd9;font-size:.9em;font-weight:600}.page-date-header .date-value{color:#27272b;font-size:.95em;font-weight:500}.stop-filter-bar{display:flex;gap:.4em;padding:0 0 .75em}.stop-filter-bar .filter-pill{background:#fafafa;border:1px solid #e4e4e7;border-radius:20px;color:#52525b;cursor:pointer;flex:1 1;font-size:.75em;font-weight:600;min-width:0;overflow:hidden;padding:.45em .5em;text-align:center;text-overflow:ellipsis;transition:all .15s ease;white-space:nowrap}.stop-filter-bar .filter-pill.active{background:#6c3cd9;border-color:#6c3cd9;color:#fff}.stop-filter-bar .filter-pill:not(.active):active{background:#e4e4e7}.manual-order-bar{background:rgba(59,130,246,.08);border:1px solid rgba(59,130,246,.2);border-radius:8px;justify-content:space-between;margin-bottom:.5em;padding:.5em 1em}.manual-order-bar,.manual-order-bar button{align-items:center;color:#3b82f6;display:flex;font-size:.85em;font-weight:600}.manual-order-bar button{background:#fff;border:1px solid #3b82f6;border-radius:6px;cursor:pointer;gap:.4em;padding:.4em .8em}.manual-order-bar button:active{background:rgba(59,130,246,.1)}.drag-handle{align-items:center;bottom:0;color:#d4d4d8;cursor:grab;display:flex;justify-content:center;left:0;pointer-events:auto;position:absolute;top:0;touch-action:none;width:2em;z-index:2}.drag-handle:active{color:#6c3cd9;cursor:grabbing}section:has(.drag-handle) .order-card{padding-left:2em}.warehouse-info-card{align-items:center;background:#fafafa;border:1px solid #e4e4e7;border-radius:8px;display:flex;gap:.75em;margin-bottom:.75em;padding:.75em 1em}.warehouse-info-card .warehouse-icon{color:#6c3cd9;flex-shrink:0;font-size:1.1em}.warehouse-info-card .warehouse-details{display:flex;flex-direction:column;gap:.1em}.warehouse-info-card .warehouse-details strong{color:#27272b;font-size:.9em}.warehouse-info-card .warehouse-details span{color:#71717a;font-size:.8em}.section-divider{color:#6c3cd9;font-size:.8em;font-weight:700;letter-spacing:.05em;margin:0;padding:.75em 0 .25em;text-transform:uppercase}.section-divider.return{color:#f59e0b;margin-top:.5em}.route-map-section{padding:.5em 0}.route-map-section .route-summary{align-items:center;background:#fafafa;border:1px solid #e4e4e7;border-radius:8px;color:#27272b;display:flex;font-size:.95em;font-weight:600;gap:.5em;margin-bottom:.75em;padding:.75em 1em}.route-map-section .route-summary .route-icon{color:#6c3cd9}.route-map-section .route-map-embed{border:1px solid #e4e4e7;border-radius:10px;margin-bottom:.75em;overflow:hidden;width:100%}.route-map-section .route-map-embed iframe{border:0;display:block;height:280px;width:100%}.route-map-section .route-actions{display:flex;gap:.5em;margin-bottom:1em}.route-map-section .maps-button{align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:.95em;font-weight:600;gap:.5em;justify-content:center;padding:.85em 1em}.route-map-section .maps-button.navigate{background:#22c55e}.route-map-section .maps-button.overview{background:#6c3cd9}.route-map-section .maps-button:active{opacity:.85}.route-map-section .route-warning{align-items:center;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;color:#92400e;display:flex;font-size:.9em;gap:.5em;margin-bottom:1em;padding:.75em 1em}.route-map-section .route-stop-list{list-style:none;margin:0;padding:0}.route-map-section .route-stop-list .route-stop-item{align-items:flex-start;border-bottom:1px solid #e4e4e7;display:flex;gap:.75em;padding:.75em 0}.route-map-section .route-stop-list .route-stop-item:last-child{border-bottom:none}.route-map-section .route-stop-list .route-stop-item .stop-number{align-items:center;background:#6c3cd9;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.85em;font-weight:700;height:28px;justify-content:center;min-width:28px}.route-map-section .route-stop-list .route-stop-item .stop-number.return{background:#f59e0b}.route-map-section .route-stop-list .route-stop-item.return-stop{border-bottom-color:rgba(245,158,11,.2)}.route-map-section .route-stop-list .route-stop-item .stop-details{display:flex;flex-direction:column;gap:.15em}.route-map-section .route-stop-list .route-stop-item .stop-details .stop-type{color:#71717a;font-size:.75em;font-weight:600;text-transform:uppercase}.route-map-section .route-stop-list .route-stop-item .stop-details .stop-type.return{color:#f59e0b}.route-map-section .route-stop-list .route-stop-item .stop-details .stop-address{color:#27272b;font-size:.9em}.route-map-section .route-stop-list .route-stop-item .stop-details .stop-customer{color:#71717a;font-size:.85em}.accordion{margin-bottom:.5em}.accordion>h3{align-items:center;background-color:#f4f4f5;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin:0;padding:.875em 1em;position:relative;transition:background-color .15s ease}.accordion>h3:hover{background-color:#e4e4e7}.accordion>h3>span{pointer-events:none}.accordion>h3>span:first-child{color:#27272b;font-weight:600}.accordion>h3>span.extra{align-items:center;display:flex;margin-left:auto;margin-right:.75em}.accordion>h3>span.extra>span{background-color:#6c3cd9;border-radius:12px;color:#fff;font-size:.75em;font-weight:600;padding:.25em .6em;white-space:nowrap}.accordion>h3>span.extra>.icon{font-size:1.1em}.accordion>h3>span.extra>.icon.ok{color:#22c55e}.accordion>h3>.icon{color:#71717a;flex-shrink:0;transition:color .15s ease,-webkit-transform .3s ease;transition:transform .3s ease,color .15s ease;transition:transform .3s ease,color .15s ease,-webkit-transform .3s ease}.accordion>h3>.icon.rotated{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.accordion>h3:hover>.icon{color:#6c3cd9}.accordion>div{max-height:0;opacity:0;overflow:hidden;pointer-events:none;transition:max-height .3s ease-in-out,opacity .3s ease-in-out}.accordion>div.shown{margin-bottom:2em;margin-top:.75em;max-height:1000px;opacity:1;pointer-events:all;transition:max-height .3s ease-in-out .3s,opacity .3s ease-in-out .3s}.box-id-fallback{font-style:italic}.action-message{font-size:1.2em;text-align:center;-webkit-user-select:none;user-select:none}.action-message>strong{margin-left:.2em}.location{background-color:#fff;border:2px dashed #d4d4d8;border-radius:12px;color:#71717a;font-size:1.5em;margin:.2em 0 .5em;padding:1em;text-align:center;transition:all .2s ease;-webkit-user-select:none;user-select:none}.location.scanned{background-color:rgba(34,197,94,.15);border-color:#22c55e;border-style:solid;color:#17843f;font-size:1.5em;font-weight:700}.location.manual-mode{-webkit-animation:pulse-border 2s infinite;animation:pulse-border 2s infinite;border-color:#6c3cd9;border-style:dashed;cursor:pointer}.location.manual-mode:active{background-color:rgba(108,60,217,.1);-webkit-transform:scale(.98);transform:scale(.98)}.box-list>.box{background-color:#fff;border:1px solid #e4e4e7;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.08);margin:.5em 0;padding:1em;position:relative;transition:all .2s ease}.box-list>.box.actionable{border-left:4px solid #6c3cd9}.box-list>.box.pending{background-color:rgba(249,115,22,.03);border-left:4px solid #f97316;opacity:.7}.box-list>.box.completed{background-color:rgba(34,197,94,.08);border-left:4px solid #22c55e;opacity:.6}.box-list>.box.scanned{background-color:rgba(34,197,94,.12);border-color:#22c55e;border-left-width:4px;opacity:.85;pointer-events:none}.box-list>.box.scanned .barcode{opacity:.6}.box-list>.box.newly-added{background-color:rgba(108,60,217,.08);border-left:4px solid #6c3cd9}.box-list>.box.moved{background-color:rgba(34,197,94,.1);border-color:#22c55e;border-left-width:4px}.box-list>.box.tappable{box-shadow:0 0 0 2px rgba(108,60,217,.3),0 2px 8px rgba(108,60,217,.15);cursor:pointer}.box-list>.box.tappable:after{background-color:rgba(108,60,217,.1);border-radius:4px;color:#6c3cd9;content:"TAP";font-size:.7em;font-weight:600;padding:.3em .6em;position:absolute;right:1em;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.box-list>.box.tappable:active{background-color:rgba(108,60,217,.08);-webkit-transform:scale(.98);transform:scale(.98)}.box-list>.box>.scanned-overlay{align-items:center;display:flex;gap:.4em;justify-content:center;margin-bottom:.4em}.box-list>.box>.scanned-overlay .scanned-check{color:#22c55e;font-size:1.2em}.box-list>.box>.scanned-overlay .scanned-label{color:#1a9a49;font-size:.75em;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.box-list>.box>.barcode{color:#52525b;font-size:2.2em;font-weight:700;pointer-events:none;text-align:center;transition:opacity .2s ease;-webkit-user-select:none;user-select:none}.box-list>.box>.barcode>.suffix{color:#6c3cd9;margin-left:.2em}.box-list>.box>.barcode>.box-id-fallback{color:#71717a;font-size:.8em;font-style:italic}.box-list>.box>.status-badge{align-items:flex-start;display:flex;flex-direction:column;gap:.15em;left:.5em;position:absolute;top:.5em}.box-list>.box>.status-badge .status-code{background-color:#27272b;border-radius:3px;color:#fff;font-size:.6em;font-weight:700;letter-spacing:.03em;padding:.1em .35em}.box-list>.box>.status-badge .status-name{color:#27272b;font-size:.3em;font-weight:700}.box-list>.box>.status-badge.wcac .status-code,.box-list>.box>.status-badge.wcfc .status-code{background-color:#3b82f6}.box-list>.box>.status-badge.itkk .status-code,.box-list>.box>.status-badge.ittc .status-code,.box-list>.box>.status-badge.ittkkfr .status-code{background-color:#6c3cd9}.box-list>.box>.status-badge.wkkdo .status-code,.box-list>.box>.status-badge.wkkho .status-code,.box-list>.box>.status-badge.wkkp .status-code,.box-list>.box>.status-badge.wkks .status-code,.box-list>.box>.status-badge.wkku .status-code{background-color:#f97316}.box-list>.box>.status-badge.completed .status-code,.box-list>.box>.status-badge.wc .status-code{background-color:#22c55e}.box-list>.box>.status-badge.completed .status-name{color:#17843f}.box-list>.box>.current-location{color:#71717a;font-size:1.2em;text-align:center}.box-list>.box.has-actions{align-items:center;display:flex;gap:.6em;padding:.85em}.box-list>.box.has-actions>.status-badge{flex-shrink:0;order:-1;position:static}.box-list>.box.has-actions>.status-badge .status-code{border-radius:6px;font-size:.7em;letter-spacing:.04em;padding:.2em .5em}.box-list>.box.has-actions>.barcode{flex:1 1;font-size:1.6em;min-width:0;overflow:hidden;text-align:left}.box-list>.box.has-actions>.box-quick-actions{display:flex;flex-shrink:0;gap:.4em;order:2}.box-list>.box.has-actions>.box-quick-actions .btn-action-fail,.box-list>.box.has-actions>.box-quick-actions .btn-action-remove{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;height:2.5em;justify-content:center;min-height:40px;min-width:40px;padding:0;transition:all .15s ease;width:2.5em}.box-list>.box.has-actions>.box-quick-actions .btn-action-fail svg,.box-list>.box.has-actions>.box-quick-actions .btn-action-remove svg{font-size:1em}.box-list>.box.has-actions>.box-quick-actions .btn-action-fail{background:rgba(249,115,22,.1);color:#f97316}.box-list>.box.has-actions>.box-quick-actions .btn-action-fail:active{background:rgba(249,115,22,.25)}.box-list>.box.has-actions>.box-quick-actions .btn-action-remove{background:rgba(239,68,68,.1);color:#ef4444}.box-list>.box.has-actions>.box-quick-actions .btn-action-remove:active{background:rgba(239,68,68,.25)}.box-list>.box.has-actions.tappable:after{content:none}.box-list.manual-mode{position:relative}.box-list.manual-mode:before{background-color:rgba(108,60,217,.1);border-radius:8px;color:#6c3cd9;content:"MANUAL MODE";display:block;font-size:.75em;font-weight:600;letter-spacing:.05em;margin-bottom:.5em;padding:.5em;text-align:center}.box-list .completed-section{background-color:rgba(34,197,94,.05);border:1px solid rgba(34,197,94,.2);border-radius:12px;margin-top:1.5em;padding:1em}.box-list .completed-section .section-header{align-items:center;color:#22c55e;display:flex;font-size:.85em;font-weight:700;letter-spacing:.05em;padding-bottom:.5em;text-transform:uppercase}.box-list .completed-section .section-header:before{content:"✓";font-size:1.2em;margin-right:.4em}.box-list .completed-section .box.completed{background-color:rgba(34,197,94,.12);border-color:rgba(34,197,94,.4);margin:.4em 0;opacity:.9;padding:.8em}.box-list .completed-section .box.completed .barcode{color:#17843f;font-size:1.6em}.box-list .completed-section .box.completed .barcode>.suffix{color:#0f582a}@-webkit-keyframes pulse-border{0%,to{border-color:#6c3cd9}50%{border-color:rgba(108,60,217,.4)}}@keyframes pulse-border{0%,to{border-color:#6c3cd9}50%{border-color:rgba(108,60,217,.4)}}.address{color:#52525b;font-size:.95rem;line-height:1.6;margin-bottom:1em}.address>div:first-child{color:#27272b;font-weight:600}.address>.contact-links{border-top:1px solid #e4e4e7;display:flex;flex-wrap:wrap;gap:1.25em;margin-top:.75em;padding-top:.75em}.address>.contact-links a{align-items:center;background-color:#f4f4f5;border-radius:6px;color:#6c3cd9;display:inline-flex;font-size:.875rem;font-weight:500;padding:.4em .75em;text-decoration:none;transition:all .15s ease}.address>.contact-links a:hover{background-color:#6c3cd9;color:#fff}.address>.contact-links a .icon{font-size:.8em;margin-right:.5em}#signature-container{position:relative}#signature-container #signature-canvas{background-color:#fff;border:1px solid #ccc;box-shadow:inset 0 0 20px #e7e7e7;height:12em;touch-action:none;-webkit-user-select:none;user-select:none;width:100%}#signature-container button{line-height:1;position:absolute;right:.4em;top:.5em}#signature-container hr{bottom:3em;left:3em;position:absolute;right:3em}.photo-capture{width:100%}.photo-capture.idle{align-items:center;display:flex;flex-direction:column;gap:.5rem}.photo-capture.camera-active{align-items:center;aspect-ratio:4/3;background:#000;border-radius:12px;display:flex;justify-content:center;max-height:35vh;max-height:35dvh;overflow:hidden;position:relative}.photo-capture .camera-viewfinder{display:block;height:100%;object-fit:cover;width:100%}.photo-capture .camera-controls{align-items:center;background:linear-gradient(0deg,rgba(0,0,0,.6),transparent);bottom:0;display:flex;gap:clamp(1rem,4vw,2rem);justify-content:center;left:0;padding:1rem;position:absolute;right:0}.photo-capture .btn-capture{align-items:center;background-color:#fff;border:3px solid hsla(0,0%,100%,.8);border-radius:50%;box-shadow:0 4px 16px rgba(0,0,0,.4);color:#27272b;cursor:pointer;display:flex;font-size:1.5rem;height:4rem;justify-content:center;transition:-webkit-transform .1s ease;transition:transform .1s ease;transition:transform .1s ease,-webkit-transform .1s ease;width:4rem}.photo-capture .btn-capture:active{-webkit-transform:scale(.9);transform:scale(.9)}.photo-capture .btn-cancel-camera{align-items:center;background-color:hsla(0,0%,100%,.2);border:1px solid hsla(0,0%,100%,.4);border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:2.5rem;justify-content:center;min-height:44px;min-width:44px;transition:background-color .2s ease;width:2.5rem}.photo-capture .btn-cancel-camera:active,.photo-capture .btn-cancel-camera:hover{background-color:hsla(0,0%,100%,.35)}.photo-capture .photo-preview{border:2px solid #22c55e;border-radius:12px;overflow:hidden;width:100%}.photo-capture .photo-preview img{display:block;max-height:min(240px,35dvh);object-fit:cover;width:100%}.photo-capture .photo-preview .preview-actions{background-color:#fafafa;display:flex;gap:.5rem;padding:.75rem}.photo-capture .photo-preview .preview-actions button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:.85rem;font-weight:600;gap:.4rem;justify-content:center;padding:.6rem;transition:all .2s ease}.photo-capture .photo-preview .preview-actions .btn-retake{background-color:#e4e4e7;color:#52525b}.photo-capture .photo-preview .preview-actions .btn-retake:hover{background-color:#d4d4d8}.photo-capture .photo-preview .preview-actions .btn-confirm-photo{background-color:#22c55e;color:#fff}.photo-capture .photo-preview .preview-actions .btn-confirm-photo:hover{background-color:#1ca24d}.photo-capture .btn-open-camera{align-items:center;background-color:#fafafa;border:2px dashed #d4d4d8;border-radius:10px;color:#52525b;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.6rem;justify-content:center;padding:.85rem 1rem;transition:all .2s ease;width:100%}.photo-capture .btn-open-camera svg{color:#6c3cd9;font-size:1.2rem}.photo-capture .btn-open-camera .required-star{color:#ef4444}.photo-capture .btn-open-camera:active,.photo-capture .btn-open-camera:hover{background-color:rgba(108,60,217,.05);border-color:#6c3cd9}.photo-capture .btn-skip-photo{background:none;border:none;color:#71717a;cursor:pointer;font-size:.8rem;padding:.25rem;text-decoration:underline}.photo-capture .photo-error{color:#ef4444;font-size:.8rem;margin:0;text-align:center}.order-details-content .detail-row{align-items:flex-start;border-bottom:1px solid #f4f4f5;display:flex;gap:.75em;padding:.75em 0}.order-details-content .detail-row:last-of-type{border-bottom:none}.order-details-content .detail-row .detail-icon{color:#6c3cd9;flex-shrink:0;height:1.25em;margin-top:.1em;width:1.25em}.order-details-content .detail-row .detail-info{display:flex;flex-direction:column;gap:.15em}.order-details-content .detail-row .detail-info .detail-label{color:#71717a;font-size:.8em;letter-spacing:.03em;text-transform:uppercase}.order-details-content .detail-row .detail-info .detail-value{color:#27272b;font-size:1em;font-weight:500}.order-details-content .detail-row .detail-info .phone-link{color:#6c3cd9;text-decoration:none}.order-details-content .detail-row .detail-info .phone-link:hover{text-decoration:underline}.order-details-content .detail-row .detail-info .fallback-hint{color:#71717a;display:block;font-size:.75em;font-style:italic;margin-top:.15em}.order-details-content .eta-row .detail-value{color:#6c3cd9;font-weight:600}.order-details-content .address-section{border-top:1px solid #e4e4e7;margin-top:1em;padding-top:1em}.order-details-content .pending-warehouse-row{background:rgba(59,130,246,.08);border-bottom:none!important;border-radius:8px;margin-top:.5em;padding:.75em 1em!important}.order-details-content .pending-warehouse-row .detail-icon.warning{color:#3b82f6}.order-details-content .pending-warehouse-row .detail-info .detail-value.warning{color:#f97316;font-weight:600}.order-details-content .pending-warehouse-row .detail-info .detail-label{color:#71717a;font-size:.75em;margin-top:.25em}.delivery-blocked-banner{align-items:flex-start;background:rgba(239,68,68,.07);border:1px solid rgba(239,68,68,.18);border-radius:10px;display:flex;gap:1em;margin-bottom:1em;padding:1.25em}.delivery-blocked-banner .banner-icon,.delivery-blocked-banner .notice-icon{color:#ef4444;flex-shrink:0;font-size:1.5em;margin-top:.1em}.delivery-blocked-banner .banner-content,.delivery-blocked-banner .notice-text{display:flex;flex-direction:column;gap:.35em}.delivery-blocked-banner .banner-content strong,.delivery-blocked-banner .notice-text strong{color:#ef4444;font-size:1em;font-weight:600}.delivery-blocked-banner .banner-content p,.delivery-blocked-banner .notice-text p{color:#71717a;font-size:.9em;line-height:1.4;margin:0}.delivery-blocked-banner .banner-content .banner-detail{color:#52525b;font-size:.85em;font-weight:500}.box-breakdown-row .detail-info .detail-value.breakdown{color:#71717a;font-size:.9em;font-weight:400}.btn-back-to-route{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;background:none;border:1px solid #e4e4e7;border-radius:6px;color:#6c3cd9;cursor:pointer;display:inline-flex;font-size:.9em;font-weight:600;gap:.4em;margin-bottom:.75em;padding:.5em .75em;transition:all .15s ease}.btn-back-to-route svg{font-size:.85em}.btn-back-to-route:active{background:#f4f4f5;-webkit-transform:scale(.97);transform:scale(.97)}h1{margin-bottom:.25em}h2.uppercase{color:#6c3cd9;font-size:.9em;font-weight:600;margin-bottom:1em;text-transform:uppercase}.failed-collection-section{border-top:1px solid #e4e4e7;margin-top:1.5em;padding-top:1em}.failed-collection-section .btn-failed-collection{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;cursor:pointer;display:flex;font-size:.95em;font-weight:600;gap:.5em;justify-content:center;padding:.875em 1.25em;transition:all .2s ease;width:100%}.failed-collection-section .btn-failed-collection svg{font-size:1em}.failed-collection-section .btn-failed-collection:hover{background:#fee2e2;border-color:#f87171}.failed-collection-section .btn-failed-collection:active{background:#fecaca}.failed-delivery-section{border-top:1px solid #e4e4e7;margin-top:1.5em;padding-top:1em}.failed-delivery-section .btn-failed-delivery{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;cursor:pointer;display:flex;font-size:.95em;font-weight:600;gap:.5em;justify-content:center;padding:.875em 1.25em;transition:all .2s ease;width:100%}.failed-delivery-section .btn-failed-delivery svg{font-size:1em}.failed-delivery-section .btn-failed-delivery:hover{background:#fee2e2;border-color:#f87171}.failed-delivery-section .btn-failed-delivery:active{background:#fecaca}.load-required-notice{align-items:flex-start;background:rgba(59,130,246,.07);border:1px solid rgba(59,130,246,.18);border-radius:10px;display:flex;gap:1em;margin:.5em 0 1em;padding:1.25em}.load-required-notice .banner-icon,.load-required-notice .notice-icon{color:#3b82f6;flex-shrink:0;font-size:1.5em;margin-top:.1em}.load-required-notice .banner-content,.load-required-notice .notice-text{display:flex;flex-direction:column;gap:.35em}.load-required-notice .banner-content strong,.load-required-notice .notice-text strong{color:#3b82f6;font-size:1em;font-weight:600}.load-required-notice .banner-content p,.load-required-notice .notice-text p{color:#71717a;font-size:.9em;line-height:1.4;margin:0}.load-required-notice .notice-text .loading-steps{align-items:center;background:rgba(59,130,246,.06);border-radius:6px;color:#52525b;display:flex;font-size:.85em;gap:.5em;padding:.5em .75em}.load-required-notice .notice-text .loading-steps .step-arrow{color:#3b82f6;font-weight:700}.load-required-notice .notice-text .notice-detail{color:#71717a!important;font-size:.8em!important}.load-required-notice .notice-text .btn-go-load{align-items:center;align-self:flex-start;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.95em;font-weight:600;gap:.5em;margin-top:.75em;padding:.75em 1.25em;transition:all .2s ease}.load-required-notice .notice-text .btn-go-load:hover{background:#1469f4}.load-required-notice .notice-text .btn-go-load:active{background:#0b5fe9}.pending-warehouse-notice{align-items:flex-start;background:rgba(59,130,246,.07);border:1px solid rgba(59,130,246,.18);border-radius:10px;display:flex;gap:1em;margin:.5em 0;padding:1.25em}.pending-warehouse-notice .banner-icon,.pending-warehouse-notice .notice-icon{color:#3b82f6;flex-shrink:0;font-size:1.5em;margin-top:.1em}.pending-warehouse-notice .banner-content,.pending-warehouse-notice .notice-text{display:flex;flex-direction:column;gap:.35em}.pending-warehouse-notice .banner-content strong,.pending-warehouse-notice .notice-text strong{color:#3b82f6;font-size:1em;font-weight:600}.pending-warehouse-notice .banner-content p,.pending-warehouse-notice .notice-text p{color:#71717a;font-size:.9em;line-height:1.4;margin:0}.waiting{color:#f97316;font-size:.85em;font-weight:500}.box-management-section{border-top:1px solid #e4e4e7;margin-top:1em;padding-top:1em}.box-management-section .btn-add-box{align-items:center;background:rgba(108,60,217,.08);border:1px dashed rgba(108,60,217,.4);border-radius:8px;color:#6c3cd9;cursor:pointer;display:flex;font-size:.9em;font-weight:600;gap:.5em;justify-content:center;padding:.75em 1em;transition:all .2s ease;width:100%}.box-management-section .btn-add-box svg{font-size:.85em}.box-management-section .btn-add-box:hover{background:rgba(108,60,217,.15);border-color:#6c3cd9}.box-management-section .btn-add-box:active{-webkit-transform:scale(.98);transform:scale(.98)}.box-management-section .removable-boxes{display:flex;flex-direction:column;gap:.5em;margin-top:.75em}.box-management-section .removable-boxes .removable-box-item{align-items:center;background:#fafafa;border:1px solid #e4e4e7;border-radius:8px;display:flex;font-size:1em;gap:.75em;min-height:3em;padding:.75em 1em}.box-management-section .removable-boxes .removable-box-item .box-label{color:#52525b;flex:1 1;font-family:SF Mono,Monaco,monospace;font-size:1.1em;font-weight:600}.box-management-section .removable-boxes .removable-box-item .box-actions{display:flex;gap:.5em}.box-management-section .removable-boxes .removable-box-item .btn-fail-single-box,.box-management-section .removable-boxes .removable-box-item .btn-remove-box{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;background:transparent;border:none;border-radius:8px;cursor:pointer;display:flex;height:2.75em;justify-content:center;padding:0;transition:all .15s ease;width:2.75em}.box-management-section .removable-boxes .removable-box-item .btn-fail-single-box svg,.box-management-section .removable-boxes .removable-box-item .btn-remove-box svg{font-size:1.1em}.box-management-section .removable-boxes .removable-box-item .btn-fail-single-box{background:rgba(249,115,22,.08);color:#f97316}.box-management-section .removable-boxes .removable-box-item .btn-fail-single-box:active,.box-management-section .removable-boxes .removable-box-item .btn-fail-single-box:hover{background:rgba(249,115,22,.2);color:#d65b06}.box-management-section .removable-boxes .removable-box-item .btn-remove-box{background:rgba(239,68,68,.08);color:#ef4444}.box-management-section .removable-boxes .removable-box-item .btn-remove-box:active,.box-management-section .removable-boxes .removable-box-item .btn-remove-box:hover{background:rgba(239,68,68,.2);color:#eb1515}.add-box-modal{align-items:center;display:flex;inset:0;justify-content:center;padding:calc(1em + env(safe-area-inset-top, 0px)) 1em calc(1em + env(safe-area-inset-bottom, 0px));position:fixed;z-index:1000}.add-box-modal .modal-backdrop{background:rgba(0,0,0,.5);inset:0;position:absolute}.add-box-modal .modal-content{-webkit-overflow-scrolling:touch;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);max-height:80vh;max-height:80dvh;max-width:400px;overflow-y:auto;overscroll-behavior:contain;padding:1.5em;position:relative;width:100%}.add-box-modal .modal-content h3{color:#27272b;font-size:1.25em;font-weight:600;margin:0 0 .5em}.add-box-modal .modal-content p{color:#71717a;font-size:.9em;margin:0 0 1em}.add-box-modal .modal-content .input-group{margin-bottom:1.5em}.add-box-modal .modal-content .input-group label{color:#71717a;display:block;font-size:.85em;font-weight:500;margin-bottom:.4em}.add-box-modal .modal-content .input-group input{border:1px solid #d4d4d8;border-radius:8px;box-sizing:border-box;color:#27272b;font-size:1em;padding:.75em 1em;transition:border-color .15s ease;width:100%}.add-box-modal .modal-content .input-group input:focus{border-color:#6c3cd9;box-shadow:0 0 0 3px rgba(108,60,217,.1);outline:none}.add-box-modal .modal-content .input-group input::-webkit-input-placeholder{color:#d4d4d8}.add-box-modal .modal-content .input-group input::placeholder{color:#d4d4d8}.add-box-modal .modal-content .modal-actions{display:flex;gap:.75em}.add-box-modal .modal-content .modal-actions button{border-radius:8px;cursor:pointer;flex:1 1;font-size:.95em;font-weight:600;padding:.75em 1em;transition:all .2s ease}.add-box-modal .modal-content .modal-actions .btn-cancel{background:#f4f4f5;border:1px solid #e4e4e7;color:#52525b}.add-box-modal .modal-content .modal-actions .btn-cancel:hover{background:#e4e4e7}.add-box-modal .modal-content .modal-actions .btn-confirm-add{background:#6c3cd9;border:1px solid #6c3cd9;color:#fff}.add-box-modal .modal-content .modal-actions .btn-confirm-add:hover{background:#5727c6;border-color:#5727c6}.add-box-modal .modal-content .modal-actions .btn-confirm{background:#dc2626;border:1px solid #dc2626;color:#fff}.add-box-modal .modal-content .modal-actions .btn-confirm:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.failed-collection-modal,.failed-delivery-modal,.remove-box-modal{align-items:flex-end;display:flex;inset:0;justify-content:center;padding:0;position:fixed;z-index:1000}.failed-collection-modal .modal-backdrop,.failed-delivery-modal .modal-backdrop,.remove-box-modal .modal-backdrop{background:rgba(0,0,0,.5);inset:0;position:absolute}.failed-collection-modal .modal-content,.failed-delivery-modal .modal-content,.remove-box-modal .modal-content{-webkit-overflow-scrolling:touch;background:#fff;border-radius:12px 12px 0 0;box-shadow:0 -10px 25px -5px rgba(0,0,0,.1);max-height:85vh;max-height:85dvh;max-width:100%;overflow-y:auto;overscroll-behavior:contain;padding:1.5em 1.5em calc(1.5em + env(safe-area-inset-bottom, 0px));position:relative;width:100%}.failed-collection-modal .modal-content h3,.failed-delivery-modal .modal-content h3,.remove-box-modal .modal-content h3{color:#27272b;font-size:1.25em;font-weight:600;margin:0 0 .5em}.failed-collection-modal .modal-content p,.failed-delivery-modal .modal-content p,.remove-box-modal .modal-content p{color:#71717a;font-size:.9em;margin:0 0 1em}.failed-collection-modal .modal-content .reason-prompt,.failed-delivery-modal .modal-content .reason-prompt,.remove-box-modal .modal-content .reason-prompt{color:#52525b;font-weight:500;margin-top:.5em}.failed-collection-modal .modal-content .reason-list,.failed-delivery-modal .modal-content .reason-list,.remove-box-modal .modal-content .reason-list{display:flex;flex-direction:column;gap:.75em;margin-bottom:1.5em}.failed-collection-modal .modal-content .reason-list .reason-option,.failed-delivery-modal .modal-content .reason-list .reason-option,.remove-box-modal .modal-content .reason-list .reason-option{align-items:center;background:#fafafa;border-radius:8px;cursor:pointer;display:flex;gap:.75em;padding:.75em 1em;transition:background .2s ease}.failed-collection-modal .modal-content .reason-list .reason-option:hover,.failed-delivery-modal .modal-content .reason-list .reason-option:hover,.remove-box-modal .modal-content .reason-list .reason-option:hover{background:#f4f4f5}.failed-collection-modal .modal-content .reason-list .reason-option input[type=radio],.failed-delivery-modal .modal-content .reason-list .reason-option input[type=radio],.remove-box-modal .modal-content .reason-list .reason-option input[type=radio]{accent-color:#dc2626;height:1.125em;width:1.125em}.failed-collection-modal .modal-content .reason-list .reason-option span,.failed-delivery-modal .modal-content .reason-list .reason-option span,.remove-box-modal .modal-content .reason-list .reason-option span{color:#27272b;font-size:.95em}.failed-collection-modal .modal-content .modal-photo-section,.failed-delivery-modal .modal-content .modal-photo-section,.remove-box-modal .modal-content .modal-photo-section{background:#fafafa;border:1px solid #e4e4e7;border-radius:8px;margin-bottom:1em;padding:.75em}.failed-collection-modal .modal-content .modal-photo-section .reason-prompt,.failed-delivery-modal .modal-content .modal-photo-section .reason-prompt,.remove-box-modal .modal-content .modal-photo-section .reason-prompt{align-items:center;display:flex;font-size:.85em;gap:.4em;margin-top:0}.failed-collection-modal .modal-content .modal-photo-section .modal-photo-preview img,.failed-delivery-modal .modal-content .modal-photo-section .modal-photo-preview img,.remove-box-modal .modal-content .modal-photo-section .modal-photo-preview img{border-radius:6px;margin-bottom:.5em;max-height:140px;object-fit:cover;width:100%}.failed-collection-modal .modal-content .modal-photo-section .modal-photo-preview .btn-retake-modal,.failed-delivery-modal .modal-content .modal-photo-section .modal-photo-preview .btn-retake-modal,.remove-box-modal .modal-content .modal-photo-section .modal-photo-preview .btn-retake-modal{background:none;border:1px solid #d4d4d8;border-radius:6px;color:#52525b;cursor:pointer;font-size:.8em;padding:.3em .75em}.failed-collection-modal .modal-content .modal-actions,.failed-delivery-modal .modal-content .modal-actions,.remove-box-modal .modal-content .modal-actions{background:#fff;bottom:0;display:flex;gap:.75em;margin-top:.5em;padding-top:.75em;position:-webkit-sticky;position:sticky}.failed-collection-modal .modal-content .modal-actions button,.failed-delivery-modal .modal-content .modal-actions button,.remove-box-modal .modal-content .modal-actions button{border-radius:8px;cursor:pointer;flex:1 1;font-size:.95em;font-weight:600;padding:.75em 1em;transition:all .2s ease}.failed-collection-modal .modal-content .modal-actions .btn-cancel,.failed-delivery-modal .modal-content .modal-actions .btn-cancel,.remove-box-modal .modal-content .modal-actions .btn-cancel{background:#f4f4f5;border:1px solid #e4e4e7;color:#52525b}.failed-collection-modal .modal-content .modal-actions .btn-cancel:hover,.failed-delivery-modal .modal-content .modal-actions .btn-cancel:hover,.remove-box-modal .modal-content .modal-actions .btn-cancel:hover{background:#e4e4e7}.failed-collection-modal .modal-content .modal-actions .btn-confirm,.failed-delivery-modal .modal-content .modal-actions .btn-confirm,.remove-box-modal .modal-content .modal-actions .btn-confirm{background:#dc2626;border:1px solid #dc2626;color:#fff}.failed-collection-modal .modal-content .modal-actions .btn-confirm:hover:not(:disabled),.failed-delivery-modal .modal-content .modal-actions .btn-confirm:hover:not(:disabled),.remove-box-modal .modal-content .modal-actions .btn-confirm:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.failed-collection-modal .modal-content .modal-actions .btn-confirm:disabled,.failed-delivery-modal .modal-content .modal-actions .btn-confirm:disabled,.remove-box-modal .modal-content .modal-actions .btn-confirm:disabled{cursor:not-allowed;opacity:.5}.revert-modal{align-items:center;display:flex;inset:0;justify-content:center;padding:calc(1em + env(safe-area-inset-top, 0px)) 1em calc(1em + env(safe-area-inset-bottom, 0px));position:fixed;z-index:1000}.revert-modal .modal-backdrop{background:rgba(0,0,0,.5);inset:0;position:absolute}.revert-modal .modal-content{-webkit-overflow-scrolling:touch;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);max-height:80vh;max-height:80dvh;max-width:400px;overflow-y:auto;overscroll-behavior:contain;padding:1.5em;position:relative;width:100%}.revert-modal .modal-content h3{font-size:1.1em;font-weight:600;margin:0 0 .5em}.revert-modal .modal-content p{color:#71717a;font-size:.9em}.revert-modal .modal-content .modal-actions{display:flex;gap:.75em;margin-top:1.25em}.revert-modal .modal-content .modal-actions button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:.95em;font-weight:600;gap:.4em;justify-content:center;padding:.75em 1em}.revert-modal .modal-content .modal-actions .btn-cancel{background:#f4f4f5;border:1px solid #e4e4e7;color:#52525b}.revert-modal .modal-content .modal-actions .btn-confirm{background:#22c55e;color:#fff}.revert-modal .modal-content .modal-actions .btn-confirm:hover{background:#1ca24d}.revert-section{background:rgba(249,115,22,.05);border:1px solid rgba(249,115,22,.2);border-radius:8px;margin:.75em 0;padding:.75em}.revert-section .revert-section-label{color:#71717a;font-size:.75em;font-weight:600;letter-spacing:.03em;margin:0 0 .5em;text-transform:uppercase}.revert-section .revert-box-item{align-items:center;display:flex;gap:.5em;justify-content:space-between;padding:.4em 0}.revert-section .revert-box-item .box-label{font-family:SF Mono,monospace;font-size:.9em;font-weight:600}.revert-section .revert-box-item .box-label.wcfc{color:#3b82f6}.revert-section .revert-box-item .box-label.ittkkfr{color:#f97316}.revert-section .revert-box-item .btn-revert-box{align-items:center;background:rgba(34,197,94,.08);border:1px solid #22c55e;border-radius:6px;color:#1a9a49;cursor:pointer;display:flex;font-size:.8em;font-weight:600;gap:.35em;padding:.35em .75em;transition:all .2s ease;white-space:nowrap}.revert-section .revert-box-item .btn-revert-box:hover{background:#22c55e;color:#fff}.photo-proof-section{padding:.5em 0}.photo-proof-section .photo-proof-hint{color:#71717a;font-size:.85em;margin-bottom:.75em}.photo-proof-section .photo-proof-preview img{border-radius:10px;margin-bottom:.5em;max-height:200px;object-fit:cover;width:100%}.photo-proof-section .photo-proof-preview .btn-retake-proof{background:none;border:1px solid #d4d4d8;border-radius:6px;color:#52525b;cursor:pointer;font-size:.85em;padding:.4em 1em}.existing-signature{padding:.5em 0}.existing-signature .signature-submitted-hint{color:#71717a;font-size:.85em;margin-bottom:.75em}.existing-signature .signature-image{background:#fff;border:1px solid #e4e4e7;border-radius:10px;max-height:180px;object-fit:contain;width:100%}.existing-signature .signature-load-error{border:1px dashed #e4e4e7;border-radius:10px;color:#71717a;font-size:.85em;font-style:italic;padding:1em;text-align:center}.all-failed-notice{align-items:flex-start;background:rgba(239,68,68,.07);border:1px solid rgba(239,68,68,.18);border-radius:10px;display:flex;gap:1em;margin:.5em 0;padding:1.25em}.all-failed-notice .banner-icon,.all-failed-notice .notice-icon{color:#ef4444;flex-shrink:0;font-size:1.5em;margin-top:.1em}.all-failed-notice .banner-content,.all-failed-notice .notice-text{display:flex;flex-direction:column;gap:.35em}.all-failed-notice .banner-content strong,.all-failed-notice .notice-text strong{color:#ef4444;font-size:1em;font-weight:600}.all-failed-notice .banner-content p,.all-failed-notice .notice-text p{color:#71717a;font-size:.9em;line-height:1.4;margin:0}.failed-text{color:#ef4444;font-size:.85em;font-weight:600}.section-badge-done{align-items:center;background:rgba(34,197,94,.1);border-radius:4px;color:#22c55e;display:inline-flex;font-size:.7em;font-weight:700;gap:.3em;letter-spacing:.03em;padding:.2em .5em;text-transform:uppercase}.help-text{background:#fafafa;border-left:3px solid #6c3cd9;border-radius:6px;color:#71717a;font-size:.9em;margin:.5em 0 1em;padding:.75em 1em}.load-group{margin-bottom:1em}.load-group .load-group-header{align-items:center;background:#fafafa;border:1px solid #e4e4e7;border-radius:6px;display:flex;gap:.75em;margin-bottom:.5em;padding:.6em .75em}.load-group .load-group-header .load-group-order{color:#6c3cd9;font-size:.8em;font-weight:700;text-transform:uppercase;white-space:nowrap}.load-group .load-group-header .load-group-customer{color:#27272b;font-size:.9em;font-weight:500}.warehouse-incoming{display:flex;flex-direction:column;min-height:100%;padding-bottom:5rem}.warehouse-incoming .page-header{align-items:center;background:linear-gradient(135deg,#6c3cd9,#5023b5);border-radius:12px;box-shadow:0 4px 20px rgba(108,60,217,.25);display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem}.warehouse-incoming .page-header .header-content{align-items:center;display:flex;gap:.75rem}.warehouse-incoming .page-header .header-content .header-icon{color:#bbf351;-webkit-filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));font-size:1.75rem}.warehouse-incoming .page-header .header-content .header-text h1{color:#fff;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;margin:0}.warehouse-incoming .page-header .header-content .header-text .date{color:hsla(0,0%,100%,.85);font-size:.75rem;font-weight:500}.warehouse-incoming .page-header .btn-refresh{align-items:center;background-color:hsla(0,0%,100%,.2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:2.5rem;justify-content:center;transition:all .2s ease;width:2.5rem}.warehouse-incoming .page-header .btn-refresh:active,.warehouse-incoming .page-header .btn-refresh:hover{background-color:hsla(0,0%,100%,.3);-webkit-transform:rotate(180deg);transform:rotate(180deg)}.warehouse-incoming .filter-bar{margin-bottom:.75rem}.warehouse-incoming .filter-bar .btn-filter-toggle{align-items:center;background-color:#fff;border:1px solid #e4e4e7;border-radius:20px;color:#52525b;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:600;gap:.4rem;padding:.5rem .875rem;position:relative;transition:all .2s ease}.warehouse-incoming .filter-bar .btn-filter-toggle svg{font-size:.7rem}.warehouse-incoming .filter-bar .btn-filter-toggle.active{background-color:#f4f4f5;border-color:#6c3cd9;color:#6c3cd9}.warehouse-incoming .filter-bar .btn-filter-toggle.has-filters .filter-badge{background-color:#6c3cd9;border-radius:50%;height:8px;position:absolute;right:-2px;top:-2px;width:8px}.warehouse-incoming .filter-bar .filter-controls{background-color:#fff;border:1px solid #e4e4e7;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.06);display:flex;flex-direction:column;gap:.625rem;margin-top:.625rem;padding:.875rem}.warehouse-incoming .filter-bar .filter-controls .filter-field{display:flex;flex-direction:column;gap:.25rem}.warehouse-incoming .filter-bar .filter-controls .filter-field label{color:#71717a;font-size:.65rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.warehouse-incoming .filter-bar .filter-controls .filter-field input[type=date],.warehouse-incoming .filter-bar .filter-controls .filter-field select{-webkit-appearance:none;background-color:#fafafa;border:1px solid #e4e4e7;border-radius:8px;color:#27272b;font-size:.85rem;font-weight:500;outline:none;padding:.5rem .625rem;transition:border-color .2s ease}.warehouse-incoming .filter-bar .filter-controls .filter-field input[type=date]:focus,.warehouse-incoming .filter-bar .filter-controls .filter-field select:focus{border-color:#6c3cd9}.warehouse-incoming .filter-bar .filter-controls .btn-clear-filters{align-items:center;align-self:flex-start;background-color:rgba(239,68,68,.08);border:none;border-radius:6px;color:#ef4444;cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:600;gap:.35rem;justify-content:center;padding:.45rem .75rem;transition:background-color .2s ease}.warehouse-incoming .filter-bar .filter-controls .btn-clear-filters svg{font-size:.65rem}.warehouse-incoming .filter-bar .filter-controls .btn-clear-filters:active{background-color:rgba(239,68,68,.15)}.warehouse-incoming .summary-strip{display:flex;gap:.5rem;margin-bottom:1rem}.warehouse-incoming .summary-strip .summary-item{background-color:#f4f4f5;border:1px solid #e4e4e7;border-radius:10px;flex:1 1;padding:.75rem;text-align:center}.warehouse-incoming .summary-strip .summary-item .label{color:#71717a;display:block;font-size:.65rem;font-weight:600;letter-spacing:.05em;margin-bottom:.25rem;text-transform:uppercase}.warehouse-incoming .summary-strip .summary-item .value{color:#27272b;font-size:1.5rem;font-weight:700}.warehouse-incoming .summary-strip .summary-item .sub-label{color:#71717a;display:block;font-size:.6rem;margin-top:.15rem}.warehouse-incoming .summary-strip .summary-item.receive{background:linear-gradient(135deg,rgba(108,60,217,.08),rgba(108,60,217,.03));border-color:rgba(108,60,217,.2)}.warehouse-incoming .summary-strip .summary-item.receive .value{color:#6c3cd9}.warehouse-incoming .summary-strip .summary-item.store{background:linear-gradient(135deg,rgba(249,115,22,.08),rgba(249,115,22,.03));border-color:rgba(249,115,22,.2)}.warehouse-incoming .summary-strip .summary-item.store .value{color:#f97316}.warehouse-incoming .workflow-sections{display:flex;flex:1 1;flex-direction:column;gap:.75rem}.warehouse-incoming .workflow-section{background-color:#fff;border:1px solid #e4e4e7;border-radius:12px;cursor:pointer;overflow:hidden;transition:all .3s ease}.warehouse-incoming .workflow-section.expanded{box-shadow:0 4px 16px rgba(0,0,0,.08)}.warehouse-incoming .workflow-section.complete{opacity:.6}.warehouse-incoming .workflow-section.complete .section-header{background:linear-gradient(135deg,rgba(34,197,94,.08),rgba(34,197,94,.03))}.warehouse-incoming .workflow-section .section-header{align-items:center;display:flex;gap:.75rem;padding:1rem;transition:background-color .2s ease}.warehouse-incoming .workflow-section .section-header:hover{background-color:#fafafa}.warehouse-incoming .workflow-section .section-header .section-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;font-size:1.2rem;height:2.75rem;justify-content:center;width:2.75rem}.warehouse-incoming .workflow-section .section-header .section-icon.receive{background:linear-gradient(135deg,#6c3cd9,#5325bd);color:#fff}.warehouse-incoming .workflow-section .section-header .section-icon.store{background:linear-gradient(135deg,#f97316,#d65b06);color:#fff}.warehouse-incoming .workflow-section .section-header .section-info{flex:1 1}.warehouse-incoming .workflow-section .section-header .section-info h3{color:#27272b;font-size:1rem;font-weight:600;margin:0}.warehouse-incoming .workflow-section .section-header .section-info .status-text{color:#71717a;font-family:SF Mono,Monaco,monospace;font-size:.7rem;font-weight:500}.warehouse-incoming .workflow-section .section-header .section-progress .count{align-items:center;background-color:#6c3cd9;border-radius:50%;color:#fff;display:flex;font-size:.9rem;font-weight:700;height:2rem;justify-content:center;width:2rem}.warehouse-incoming .workflow-section .section-header .section-progress .complete-icon{color:#22c55e;font-size:1.25rem}.warehouse-incoming .workflow-section .section-content{border-top:1px solid #f4f4f5;cursor:default;padding:.5rem 1rem 1rem}.warehouse-incoming .workflow-section .section-content .box-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.warehouse-incoming .workflow-section .section-content .box-item{background-color:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:.75rem;transition:all .2s ease}.warehouse-incoming .workflow-section .section-content .box-item.scanned{background-color:rgba(34,197,94,.12);border-color:rgba(34,197,94,.4)}.warehouse-incoming .workflow-section .section-content .box-item.scanned .barcode .suffix{color:#17843f}.warehouse-incoming .workflow-section .section-content .box-item.tappable{border-color:#6c3cd9;box-shadow:0 0 0 2px rgba(108,60,217,.15);cursor:pointer}.warehouse-incoming .workflow-section .section-content .box-item.tappable:active{background-color:rgba(108,60,217,.05);-webkit-transform:scale(.98);transform:scale(.98)}.warehouse-incoming .workflow-section .section-content .box-item .barcode{font-family:SF Mono,Monaco,monospace;font-size:.85rem;font-weight:600;margin-bottom:.35rem;text-align:center}.warehouse-incoming .workflow-section .section-content .box-item .barcode .prefix{color:#71717a}.warehouse-incoming .workflow-section .section-content .box-item .barcode .suffix{color:#6c3cd9;font-weight:700}.warehouse-incoming .workflow-section .section-content .box-item .barcode .box-id,.warehouse-incoming .workflow-section .section-content .box-item .barcode .box-id-fallback{color:#71717a;font-style:italic}.warehouse-incoming .workflow-section .section-content .box-item .status-badge{border-radius:4px;font-size:.55rem;font-weight:600;letter-spacing:.03em;padding:.2rem .4rem;text-align:center;text-transform:uppercase}.warehouse-incoming .workflow-section .section-content .box-item .status-badge.scanned-badge{background-color:rgba(34,197,94,.15);color:#17843f;font-weight:700}.warehouse-incoming .workflow-section .section-content .box-item .status-badge.itkk{background-color:rgba(108,60,217,.1);color:#6c3cd9}.warehouse-incoming .workflow-section .section-content .box-item .status-badge.wkku{background-color:rgba(249,115,22,.1);color:#d65b06}.warehouse-incoming .workflow-section .section-content .order-group{background-color:#fff;border:1px solid #e4e4e7;border-radius:10px;cursor:pointer;margin-bottom:.75rem;overflow:hidden;transition:all .2s ease}.warehouse-incoming .workflow-section .section-content .order-group.selected{border-color:#6c3cd9;box-shadow:0 0 0 2px rgba(108,60,217,.2)}.warehouse-incoming .workflow-section .section-content .order-group.selected .order-group-header{background-color:rgba(108,60,217,.06)}.warehouse-incoming .workflow-section .section-content .order-group .selected-badge{background:#6c3cd9;border-radius:4px;color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.03em;margin-left:.75rem;padding:.2em .5em;text-transform:uppercase}.warehouse-incoming .workflow-section .section-content .order-group:last-child{margin-bottom:0}.warehouse-incoming .workflow-section .section-content .order-group .order-group-header{align-items:center;background-color:#fafafa;border-bottom:1px solid #e4e4e7;display:flex;justify-content:space-between;padding:.6rem .75rem}.warehouse-incoming .workflow-section .section-content .order-group .order-group-header .customer-name{color:#27272b;font-size:.8rem;font-weight:600}.warehouse-incoming .workflow-section .section-content .order-group .order-group-header .group-meta{align-items:center;color:#71717a;display:flex;font-size:.65rem;gap:.5rem}.warehouse-incoming .workflow-section .section-content .order-group .order-group-header .group-meta svg{font-size:.55rem}.warehouse-incoming .workflow-section .section-content .order-group .order-group-header .group-meta .box-count{background-color:#e4e4e7;border-radius:4px;font-weight:600;padding:.15rem .4rem;white-space:nowrap}.warehouse-incoming .workflow-section .section-content .order-group .box-grid{padding:.5rem}.warehouse-incoming .workflow-section .section-content .order-group.completed-group{opacity:.5;pointer-events:none}.warehouse-incoming .workflow-section .section-content .order-group.completed-group .order-group-header{background-color:rgba(34,197,94,.06)}.warehouse-incoming .workflow-section .section-content .completed-divider{align-items:center;color:#22c55e;display:flex;font-size:.7rem;font-weight:600;gap:.4rem;letter-spacing:.04em;margin:.25rem 0;padding:.5rem 0;text-transform:uppercase}.warehouse-incoming .workflow-section .section-content .completed-divider svg{font-size:.6rem}.warehouse-incoming .workflow-section .section-content .box-item .status-badge.wkks{background-color:rgba(34,197,94,.1);color:#1a9a49}.warehouse-incoming .empty-state{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:3rem 1rem;text-align:center}.warehouse-incoming .empty-state .empty-icon{color:#d4d4d8;font-size:3rem;margin-bottom:1rem}.warehouse-incoming .empty-state p{color:#71717a;font-size:1rem;margin:0}.warehouse-incoming .selected-order-bar{align-items:center;background:rgba(108,60,217,.08);border:1px solid rgba(108,60,217,.25);border-radius:8px;color:#6c3cd9;display:flex;font-size:.85rem;font-weight:600;justify-content:space-between;margin-bottom:.5rem;padding:.6rem 1rem}.warehouse-incoming .selected-order-bar button{align-items:center;background:none;border:1px solid rgba(108,60,217,.3);border-radius:4px;color:#6c3cd9;cursor:pointer;display:flex;font-size:.8em;font-weight:600;gap:.3em;padding:.3em .6em}.location-modal{align-items:center;display:flex;inset:0;justify-content:center;padding:calc(1em + env(safe-area-inset-top, 0px)) 1em calc(1em + env(safe-area-inset-bottom, 0px));position:fixed;z-index:1000}.location-modal .modal-backdrop{background:rgba(0,0,0,.5);inset:0;position:absolute}.location-modal .modal-content{-webkit-overflow-scrolling:touch;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);max-height:80vh;max-height:80dvh;max-width:400px;overflow-y:auto;overscroll-behavior:contain;padding:1.5em;position:relative;width:100%}.location-modal .modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.location-modal .modal-content{border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.2)}.location-modal .modal-content h3{color:#27272b;font-size:1.1em;margin:0 0 .5em}.location-modal .modal-content p{color:#52525b;font-size:.9em;margin:0 0 1em}.location-modal .modal-content .location-input{border:2px solid #e4e4e7;border-radius:8px;box-sizing:border-box;font-size:.95em;outline:none;padding:.75em 1em;transition:border-color .2s;width:100%}.location-modal .modal-content .location-input:focus{border-color:#6c3cd9}.location-modal .modal-content .location-hint{color:#71717a;display:block;font-size:.75em;font-style:italic;margin-top:.4em}.location-modal .modal-content .modal-actions{grid-gap:.75em;display:grid;gap:.75em;grid-template-columns:1fr 1fr;margin-top:1.25em}.location-modal .modal-content .modal-actions button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.9em;font-weight:600;gap:.4em;justify-content:center;padding:.75em}.location-modal .modal-content .modal-actions .btn-skip{background:#e4e4e7;color:#52525b}.location-modal .modal-content .modal-actions .btn-confirm{background:#22c55e;color:#fff}.warehouse-dispatch{display:flex;flex-direction:column;min-height:100%;padding-bottom:5rem}.warehouse-dispatch .page-header{align-items:center;background:linear-gradient(135deg,#f97316,#cd5705);border-radius:12px;box-shadow:0 4px 20px rgba(249,115,22,.25);display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem}.warehouse-dispatch .page-header .header-content{align-items:center;display:flex;gap:.75rem}.warehouse-dispatch .page-header .header-content .header-icon{color:#fff;-webkit-filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));font-size:1.75rem}.warehouse-dispatch .page-header .header-content .header-text h1{color:#fff;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;margin:0}.warehouse-dispatch .page-header .header-content .header-text .date{color:hsla(0,0%,100%,.85);font-size:.75rem;font-weight:500}.warehouse-dispatch .page-header .btn-refresh{align-items:center;background-color:hsla(0,0%,100%,.2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:2.5rem;justify-content:center;transition:all .2s ease;width:2.5rem}.warehouse-dispatch .page-header .btn-refresh:active,.warehouse-dispatch .page-header .btn-refresh:hover{background-color:hsla(0,0%,100%,.3);-webkit-transform:rotate(180deg);transform:rotate(180deg)}.warehouse-dispatch .filter-bar{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.warehouse-dispatch .filter-bar .btn-filter-toggle{align-items:center;align-self:flex-start;background-color:#f4f4f5;border:1px solid #e4e4e7;border-radius:8px;color:#52525b;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.6rem 1rem;position:relative;transition:all .2s ease}.warehouse-dispatch .filter-bar .btn-filter-toggle.active{background-color:rgba(249,115,22,.08);border-color:#f97316;color:#f97316}.warehouse-dispatch .filter-bar .btn-filter-toggle.has-filters{border-color:#f97316}.warehouse-dispatch .filter-bar .btn-filter-toggle .filter-badge{background-color:#f97316;border-radius:50%;height:.5rem;position:absolute;right:.35rem;top:.35rem;width:.5rem}.warehouse-dispatch .filter-bar .filter-controls{background-color:#fafafa;border:1px solid #e4e4e7;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;padding:.75rem}.warehouse-dispatch .filter-bar .filter-controls .filter-field{display:flex;flex-direction:column;gap:.25rem}.warehouse-dispatch .filter-bar .filter-controls .filter-field label{color:#71717a;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.warehouse-dispatch .filter-bar .filter-controls .filter-field input,.warehouse-dispatch .filter-bar .filter-controls .filter-field select{background-color:#fff;border:1px solid #e4e4e7;border-radius:6px;color:#52525b;font-size:.9rem;padding:.5rem .75rem}.warehouse-dispatch .filter-bar .filter-controls .filter-field input:focus,.warehouse-dispatch .filter-bar .filter-controls .filter-field select:focus{border-color:#f97316;outline:none}.warehouse-dispatch .filter-bar .filter-controls .btn-clear-filters{align-items:center;align-self:flex-start;background:none;border:1px solid #e4e4e7;border-radius:6px;color:#71717a;cursor:pointer;display:flex;font-size:.85rem;gap:.4rem;padding:.5rem .75rem}.warehouse-dispatch .filter-bar .filter-controls .btn-clear-filters:hover{border-color:#ef4444;color:#ef4444}.warehouse-dispatch .summary-strip{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem}.warehouse-dispatch .summary-strip .summary-item{background-color:#f4f4f5;border:1px solid #e4e4e7;border-radius:8px;flex:1 1;min-width:calc(50% - .35rem);padding:.6rem .5rem;text-align:center}.warehouse-dispatch .summary-strip .summary-item .label{color:#71717a;display:block;font-size:.65rem;font-weight:600;letter-spacing:.05em;margin-bottom:.15rem;text-transform:uppercase}.warehouse-dispatch .summary-strip .summary-item .value{color:#27272b;font-size:1.25rem;font-weight:700}.warehouse-dispatch .summary-strip .summary-item.pick{background:linear-gradient(135deg,rgba(59,130,246,.08),rgba(59,130,246,.03));border-color:rgba(59,130,246,.2)}.warehouse-dispatch .summary-strip .summary-item.pick .value{color:#3b82f6}.warehouse-dispatch .summary-strip .summary-item.holdout{background:linear-gradient(135deg,rgba(108,60,217,.08),rgba(108,60,217,.03));border-color:rgba(108,60,217,.2)}.warehouse-dispatch .summary-strip .summary-item.holdout .value{color:#6c3cd9}.warehouse-dispatch .summary-strip .summary-item.load{background:linear-gradient(135deg,rgba(34,197,94,.08),rgba(34,197,94,.03));border-color:rgba(34,197,94,.2)}.warehouse-dispatch .summary-strip .summary-item.load .value{color:#22c55e}.warehouse-dispatch .workflow-sections{display:flex;flex:1 1;flex-direction:column;gap:.75rem}.warehouse-dispatch .workflow-section{background-color:#fff;border:1px solid #e4e4e7;border-radius:12px;cursor:pointer;overflow:hidden;transition:all .3s ease}.warehouse-dispatch .workflow-section.expanded{box-shadow:0 4px 16px rgba(0,0,0,.08)}.warehouse-dispatch .workflow-section.complete{opacity:.5}.warehouse-dispatch .workflow-section.complete .section-header{background:linear-gradient(135deg,rgba(34,197,94,.08),rgba(34,197,94,.03))}.warehouse-dispatch .workflow-section .section-header{align-items:center;display:flex;gap:.75rem;padding:1rem;transition:background-color .2s ease}.warehouse-dispatch .workflow-section .section-header:hover{background-color:#fafafa}.warehouse-dispatch .workflow-section .section-header .section-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;font-size:1.2rem;height:2.75rem;justify-content:center;width:2.75rem}.warehouse-dispatch .workflow-section .section-header .section-icon.pick{background:linear-gradient(135deg,#3b82f6,#0b63f3);color:#fff}.warehouse-dispatch .workflow-section .section-header .section-icon.holdout{background:linear-gradient(135deg,#6c3cd9,#5325bd);color:#fff}.warehouse-dispatch .workflow-section .section-header .section-icon.load{background:linear-gradient(135deg,#22c55e,#1a9a49);color:#fff}.warehouse-dispatch .workflow-section .section-header .section-info{flex:1 1}.warehouse-dispatch .workflow-section .section-header .section-info h3{color:#27272b;font-size:1rem;font-weight:600;margin:0}.warehouse-dispatch .workflow-section .section-header .section-info .status-text{color:#71717a;font-family:SF Mono,Monaco,monospace;font-size:.7rem;font-weight:500}.warehouse-dispatch .workflow-section .section-header .section-progress .count{align-items:center;background-color:#f97316;border-radius:50%;color:#fff;display:flex;font-size:.9rem;font-weight:700;height:2rem;justify-content:center;width:2rem}.warehouse-dispatch .workflow-section .section-header .section-progress .complete-icon{color:#22c55e;font-size:1.25rem}.warehouse-dispatch .workflow-section .section-content{border-top:1px solid #f4f4f5;cursor:default;padding:.5rem 1rem 1rem}.warehouse-dispatch .workflow-section .section-content .box-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.warehouse-dispatch .workflow-section .section-content .box-item{background-color:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:.75rem;transition:all .2s ease}.warehouse-dispatch .workflow-section .section-content .box-item.scanned{background-color:rgba(34,197,94,.12);border-color:rgba(34,197,94,.4)}.warehouse-dispatch .workflow-section .section-content .box-item.scanned .barcode .suffix{color:#17843f}.warehouse-dispatch .workflow-section .section-content .box-item.tappable{border-color:#f97316;box-shadow:0 0 0 2px rgba(249,115,22,.15);cursor:pointer}.warehouse-dispatch .workflow-section .section-content .box-item.tappable:active{background-color:rgba(249,115,22,.05);-webkit-transform:scale(.98);transform:scale(.98)}.warehouse-dispatch .workflow-section .section-content .box-item .barcode{font-family:SF Mono,Monaco,monospace;font-size:.85rem;font-weight:600;margin-bottom:.35rem;text-align:center}.warehouse-dispatch .workflow-section .section-content .box-item .barcode .prefix{color:#71717a}.warehouse-dispatch .workflow-section .section-content .box-item .barcode .suffix{color:#f97316;font-weight:700}.warehouse-dispatch .workflow-section .section-content .box-item .barcode .box-id,.warehouse-dispatch .workflow-section .section-content .box-item .barcode .box-id-fallback{color:#71717a;font-style:italic}.warehouse-dispatch .workflow-section .section-content .box-item .status-badge{border-radius:4px;font-size:.55rem;font-weight:600;letter-spacing:.03em;padding:.2rem .4rem;text-align:center;text-transform:uppercase}.warehouse-dispatch .workflow-section .section-content .box-item .status-badge.scanned-badge{background-color:rgba(34,197,94,.15);color:#17843f;font-weight:700}.warehouse-dispatch .workflow-section .section-content .box-item .status-badge.wkkdo,.warehouse-dispatch .workflow-section .section-content .box-item .status-badge.wkks{background-color:rgba(59,130,246,.1);color:#3b82f6}.warehouse-dispatch .workflow-section .section-content .box-item .status-badge.wkkp{background-color:rgba(108,60,217,.1);color:#6c3cd9}.warehouse-dispatch .workflow-section .section-content .box-item .status-badge.wkkho{background-color:rgba(34,197,94,.1);color:#1a9a49}.warehouse-dispatch .workflow-section .section-content .box-item .location-hint{color:#71717a;font-size:.6rem;font-weight:500;margin-top:.25rem;text-align:center}.warehouse-dispatch .workflow-section .section-content .box-item.read-only{background-color:rgba(34,197,94,.04);border-color:rgba(34,197,94,.3);opacity:.8}.warehouse-dispatch .workflow-section .section-content .box-item.read-only .barcode .suffix{color:#1a9a49}.warehouse-dispatch .workflow-section .section-content .order-group{background-color:#fff;border:1px solid #e4e4e7;border-radius:10px;cursor:pointer;margin-bottom:.75rem;overflow:hidden;transition:all .2s ease}.warehouse-dispatch .workflow-section .section-content .order-group.selected{border-color:#f97316;box-shadow:0 0 0 2px rgba(249,115,22,.2)}.warehouse-dispatch .workflow-section .section-content .order-group.selected .order-group-header{background-color:rgba(249,115,22,.06)}.warehouse-dispatch .workflow-section .section-content .order-group .selected-badge{background:#f97316;border-radius:4px;color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.03em;margin-left:.75rem;padding:.2em .5em;text-transform:uppercase}.warehouse-dispatch .workflow-section .section-content .order-group:last-child{margin-bottom:0}.warehouse-dispatch .workflow-section .section-content .order-group .order-group-header{align-items:center;background-color:#fafafa;border-bottom:1px solid #e4e4e7;display:flex;justify-content:space-between;padding:.6rem .75rem}.warehouse-dispatch .workflow-section .section-content .order-group .order-group-header .customer-name{color:#27272b;font-size:.8rem;font-weight:600}.warehouse-dispatch .workflow-section .section-content .order-group .order-group-header .group-meta{align-items:center;color:#71717a;display:flex;font-size:.65rem;gap:.5rem}.warehouse-dispatch .workflow-section .section-content .order-group .order-group-header .group-meta svg{font-size:.55rem}.warehouse-dispatch .workflow-section .section-content .order-group .order-group-header .group-meta .box-count{background-color:#e4e4e7;border-radius:4px;font-weight:600;padding:.15rem .4rem;white-space:nowrap}.warehouse-dispatch .workflow-section .section-content .order-group .box-grid{padding:.5rem}.warehouse-dispatch .workflow-section .section-content .order-group.completed-group{opacity:.5;pointer-events:none}.warehouse-dispatch .workflow-section .section-content .order-group.completed-group .order-group-header{background-color:rgba(34,197,94,.06)}.warehouse-dispatch .workflow-section .section-content .completed-divider{align-items:center;color:#22c55e;display:flex;font-size:.7rem;font-weight:600;gap:.4rem;letter-spacing:.04em;margin:.25rem 0;padding:.5rem 0;text-transform:uppercase}.warehouse-dispatch .workflow-section .section-content .completed-divider svg{font-size:.6rem}.warehouse-dispatch .workflow-section .section-content .box-item .status-badge.ittc{background-color:rgba(34,197,94,.1);color:#1a9a49}.warehouse-dispatch .workflow-section .section-content .read-only-note{background:rgba(34,197,94,.06);border-left:3px solid #22c55e;border-radius:6px;color:#71717a;font-size:.75rem;font-style:italic;margin:0 0 .5rem;padding:.4rem .6rem}.warehouse-dispatch .read-only-section .section-header{opacity:.85}.warehouse-dispatch .returns-banner{align-items:flex-start;background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.18);border-left:3px solid #f59e0b;border-radius:8px;display:flex;gap:.75rem;margin:0 .5rem .5rem;padding:.75rem 1rem}.warehouse-dispatch .returns-banner .returns-icon{color:#f59e0b;flex-shrink:0;font-size:1.2rem;margin-top:.15rem}.warehouse-dispatch .returns-banner .returns-text{display:flex;flex-direction:column;gap:.2rem}.warehouse-dispatch .returns-banner .returns-text strong{color:#27272b;font-size:.85rem}.warehouse-dispatch .returns-banner .returns-text span{color:#71717a;font-size:.75rem}.warehouse-dispatch .dpd-order{border-color:rgba(220,0,50,.18)}.warehouse-dispatch .dpd-order .order-group-header{background:linear-gradient(135deg,rgba(220,0,50,.04),transparent 60%);border-bottom-color:rgba(220,0,50,.12)}.warehouse-dispatch .order-group-title{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.warehouse-dispatch .dpd-tag{align-items:center;border-radius:5px;display:inline-flex;font-size:.6rem;font-weight:700;line-height:1;overflow:hidden;vertical-align:middle}.warehouse-dispatch .dpd-tag .dpd-tag-logo{background-color:#dc0032;color:#fff;letter-spacing:.06em;padding:.2rem .4rem}.warehouse-dispatch .dpd-tag .dpd-tag-status{font-weight:600;padding:.2rem .45rem}.warehouse-dispatch .dpd-tag .dpd-tag-status.tracking-collected{background-color:rgba(59,130,246,.12);color:#3b82f6}.warehouse-dispatch .dpd-tag .dpd-tag-status.tracking-in_transit{background-color:rgba(245,158,11,.14);color:#cf8508}.warehouse-dispatch .dpd-tag .dpd-tag-status.tracking-out_for_delivery{background-color:rgba(34,197,94,.12);color:#1a9a49}.warehouse-dispatch .dpd-tag .dpd-tag-status.tracking-delivered{background-color:rgba(34,197,94,.16);color:#17843f}.warehouse-dispatch .dpd-tag .dpd-tag-status.tracking-failed{background-color:rgba(239,68,68,.12);color:#ef4444}.warehouse-dispatch .btn-advance-order{align-items:center;background:linear-gradient(135deg,rgba(220,0,50,.06),rgba(220,0,50,.02));border:none;border-bottom:1px solid rgba(220,0,50,.1);color:#dc0032;cursor:pointer;display:flex;font-size:.8rem;font-weight:600;gap:.4rem;justify-content:center;padding:.55rem .75rem;transition:all .2s ease;width:100%}.warehouse-dispatch .btn-advance-order svg{font-size:.65rem}.warehouse-dispatch .btn-advance-order:hover:not(:disabled){background:linear-gradient(135deg,rgba(220,0,50,.12),rgba(220,0,50,.05))}.warehouse-dispatch .btn-advance-order:active:not(:disabled){background:linear-gradient(135deg,rgba(220,0,50,.16),rgba(220,0,50,.08))}.warehouse-dispatch .btn-advance-order:disabled{cursor:not-allowed;opacity:.6}.warehouse-dispatch .btn-advance-order .spin{-webkit-animation:spin .8s linear infinite;animation:spin .8s linear infinite}.warehouse-dispatch .delivery-type-toggle{border:1px solid #e4e4e7;border-radius:6px;display:flex;overflow:hidden}.warehouse-dispatch .delivery-type-toggle .toggle-btn{background:#fff;border:none;color:#71717a;cursor:pointer;flex:1 1;font-size:.8rem;font-weight:500;padding:.45rem .5rem;transition:all .15s ease}.warehouse-dispatch .delivery-type-toggle .toggle-btn+.toggle-btn{border-left:1px solid #e4e4e7}.warehouse-dispatch .delivery-type-toggle .toggle-btn.active{background-color:rgba(249,115,22,.1);color:#f97316;font-weight:600}.warehouse-dispatch .delivery-type-toggle .toggle-btn.dpd.active{background-color:rgba(220,0,50,.08);color:#dc0032}.warehouse-dispatch .empty-state{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:3rem 1rem;text-align:center}.warehouse-dispatch .empty-state .empty-icon{color:#d4d4d8;font-size:3rem;margin-bottom:1rem}.warehouse-dispatch .empty-state p{color:#71717a;font-size:1rem;margin:0}.warehouse-dispatch .selected-order-bar{align-items:center;background:rgba(249,115,22,.08);border:1px solid rgba(249,115,22,.25);border-radius:8px;color:#f97316;display:flex;font-size:.85rem;font-weight:600;justify-content:space-between;margin-bottom:.5rem;padding:.6rem 1rem}.warehouse-dispatch .selected-order-bar button{align-items:center;background:none;border:1px solid rgba(249,115,22,.3);border-radius:4px;color:#f97316;cursor:pointer;display:flex;font-size:.8em;font-weight:600;gap:.3em;padding:.3em .6em}#settings>.setting{grid-gap:1em;display:grid;grid-template-columns:2fr 3fr;padding-bottom:1em}#settings>.setting>div{display:inline-block}#settings>.setting>div>.link>.icon,#settings>.setting>div>.link>span{pointer-events:none}#settings>.setting .icon{display:inline-block;margin-right:.5em;margin-top:.25em;vertical-align:top}#settings>.setting .form-control{grid-gap:.5em;display:grid;grid-template-columns:3fr 1em}#settings .permissions-section{border-top:1px solid #e4e4e7;margin-top:1.5em;padding-top:1.5em}#settings .permissions-section h3{color:#27272b;font-size:1em;font-weight:600;margin:0 0 .75em}#settings .permissions-section .ios-pwa-note{align-items:flex-start;background:rgba(59,130,246,.08);border-radius:8px;color:#3b82f6;display:flex;font-size:.8em;gap:.5em;line-height:1.4;margin-bottom:1em;padding:.75em}#settings .permissions-section .permission-row{align-items:center;border-bottom:1px solid #f4f4f5;display:flex;gap:.75em;padding:.75em 0}#settings .permissions-section .permission-row:last-child{border-bottom:none}#settings .permissions-section .permission-row .perm-type-icon{color:#71717a;flex-shrink:0;font-size:1.1em}#settings .permissions-section .permission-row .perm-info{display:flex;flex:1 1;flex-direction:column;gap:.15em}#settings .permissions-section .permission-row .perm-info .perm-label{color:#27272b;font-size:.9em;font-weight:600}#settings .permissions-section .permission-row .perm-info .perm-guidance{color:#71717a;font-size:.75em}#settings .permissions-section .permission-row .perm-icon{flex-shrink:0;font-size:1.1em}#settings .permissions-section .permission-row .perm-icon.granted{color:#22c55e}#settings .permissions-section .permission-row .perm-icon.denied{color:#ef4444}#settings .permissions-section .permission-row .perm-icon.prompt{color:#f97316}#settings .permissions-section .permission-row .perm-icon.unknown{color:#71717a}.connectivity{bottom:calc(70px + env(safe-area-inset-bottom, 0px));left:0;padding:0 1rem;position:fixed;right:0;z-index:100}.connectivity .connectivity-status{align-items:center;border-radius:8px;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1rem}.connectivity .connectivity-status svg{font-size:1rem}.connectivity .offline-banner{background-color:#fef3c7;border:1px solid #fcd34d;color:#92400e}.connectivity .offline-banner svg{color:#f59e0b}.connectivity .online-indicator{background-color:#d1fae5;border:1px solid #6ee7b7;color:#065f46}.connectivity .online-indicator svg{color:#10b981}.connectivity .connectivity-queue{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:rgba(221,214,254,.3);border:1px solid #ddd6fe;border-radius:12px;color:#6c3cd9;display:flex;justify-content:space-between;margin-top:.5rem;padding:.75rem 1rem}.connectivity .connectivity-queue .queue-count{font-size:.875rem;font-weight:500}.connectivity .connectivity-queue .sync-button{align-items:center;background-color:#6c3cd9;border:none;border-radius:8px;box-shadow:0 2px 8px rgba(108,60,217,.3);color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.connectivity .connectivity-queue .sync-button:hover:not(:disabled){background-color:#8b5cf6;box-shadow:0 4px 12px rgba(108,60,217,.4);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.connectivity .connectivity-queue .sync-button:disabled{cursor:not-allowed;opacity:.7}.connectivity .connectivity-queue .sync-button svg{font-size:.875rem}.connectivity .connectivity-queue .sync-button svg.spinning{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}.connectivity.offline .offline-banner{-webkit-animation:pulse 2s infinite;animation:pulse 2s infinite}@-webkit-keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}#loading{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);height:100%;left:0;position:fixed;top:0;transition:opacity .25s ease-in-out;width:100%;z-index:2}#loading.hide{opacity:0;pointer-events:none}#loading>.inner{align-items:center;background-color:rgba(39,39,43,.7);box-sizing:border-box;color:#fff;display:flex;flex-direction:column;font-size:1em;gap:1.25em;height:100%;justify-content:center;margin:0 auto;overflow-x:hidden;padding:calc(2em + env(safe-area-inset-top, 0px)) 2em calc(2em + env(safe-area-inset-bottom, 0px));position:relative;text-align:center;width:100%}.loading-spinner{-webkit-animation:spin .8s linear infinite;animation:spin .8s linear infinite;border:3px solid hsla(0,0%,100%,.15);border-radius:50%;border-top-color:#bbf351;height:2.5em;width:2.5em}.loading-text{color:hsla(0,0%,100%,.85);font-size:.95em;font-weight:500;letter-spacing:.02em}#message{pointer-events:none;position:fixed;z-index:2}#message.toast{left:0;padding-top:env(safe-area-inset-top,0);right:0;top:0}#message.toast>.inner{cursor:pointer;margin:0 auto;padding:.75em 1em;pointer-events:auto}#message.toast>.inner>.modal{grid-gap:.5em;align-items:center;background:#fff;border:1px solid #e4e4e7;border-radius:14px;box-shadow:0 4px 20px rgba(0,0,0,.12);display:grid;gap:.5em;grid-template-columns:auto 1.5em;margin:0 auto;max-width:500px;padding:.875em 1.25em}#message.toast>.inner>.modal span{font-size:.9375rem;font-weight:500;line-height:1.4}#message.toast>.inner{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);transition:opacity .2s ease-out,-webkit-transform .25s ease-out;transition:transform .25s ease-out,opacity .2s ease-out;transition:transform .25s ease-out,opacity .2s ease-out,-webkit-transform .25s ease-out}#message.blocking{align-items:flex-start;display:flex;inset:0;justify-content:center;padding-top:calc(3em + env(safe-area-inset-top, 0px))}#message.blocking>.backdrop{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background-color:rgba(0,0,0,.5);inset:0;pointer-events:auto;position:absolute;transition:opacity .25s ease-out}#message.blocking>.inner{cursor:pointer;padding:.75em 1em;pointer-events:auto;position:relative;width:100%}#message.blocking>.inner>.modal{grid-gap:.5em;align-items:center;background:#fff;border:1px solid #e4e4e7;border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.2);display:grid;gap:.5em;grid-template-columns:auto 1.5em;margin:0 auto;max-width:500px;padding:1.25em}#message.blocking>.inner>.modal span{font-size:1rem;font-weight:500;line-height:1.5}#message.hide{opacity:0;pointer-events:none!important;transition:opacity .2s ease-out}#message.hide>.backdrop{opacity:0}#message.hide>.inner{display:none}#message .inner.error{color:#ef4444}#message .inner.ok{color:#22c55e}#message .inner.warn{color:#f97316}#dialog{align-items:center;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:calc(1.5rem + env(safe-area-inset-top, 0px)) 1.5rem calc(1.5rem + env(safe-area-inset-bottom, 0px));position:fixed;z-index:100}#dialog.hide{pointer-events:none}#dialog.hide .backdrop{opacity:0}#dialog.hide .modal{opacity:0;-webkit-transform:scale(.9) translateY(20px);transform:scale(.9) translateY(20px)}#dialog .backdrop{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:linear-gradient(135deg,rgba(24,24,27,.7),rgba(39,39,43,.85));inset:0;position:absolute;transition:opacity .25s ease-out}#dialog .modal{-webkit-overflow-scrolling:touch;background:linear-gradient(180deg,#fff,#fafafa);border-radius:20px;box-shadow:0 0 0 1px rgba(0,0,0,.04),0 4px 6px -1px rgba(0,0,0,.1),0 20px 40px -8px rgba(0,0,0,.25);max-height:80vh;max-height:80dvh;max-width:340px;overflow-y:auto;overflow:hidden;position:relative;transition:opacity .3s cubic-bezier(.34,1.56,.64,1),-webkit-transform .3s cubic-bezier(.34,1.56,.64,1);transition:opacity .3s cubic-bezier(.34,1.56,.64,1),transform .3s cubic-bezier(.34,1.56,.64,1);transition:opacity .3s cubic-bezier(.34,1.56,.64,1),transform .3s cubic-bezier(.34,1.56,.64,1),-webkit-transform .3s cubic-bezier(.34,1.56,.64,1);width:100%}#dialog .modal .modal-icon{align-items:center;background:linear-gradient(135deg,#ddd6fe,#e9e5fe);border-radius:50%;display:flex;height:56px;justify-content:center;margin:1.75rem auto 1rem;width:56px}#dialog .modal .modal-icon svg{color:#6c3cd9;height:28px;width:28px}#dialog .modal .modal-content{padding:0 1.5rem;text-align:center}#dialog .modal .modal-content .modal-title{color:#27272b;font-size:1.25rem;font-weight:700;letter-spacing:-.01em;margin:0 0 .5rem}#dialog .modal .modal-content .modal-text{color:#52525b;font-size:1rem;font-weight:500;line-height:1.5;margin:0 0 1.5rem}#dialog .modal .modal-actions{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;padding:0 1.5rem 1.5rem}#dialog .modal .modal-actions button{border:none;border-radius:12px;cursor:pointer;font-size:.9375rem;font-weight:600;padding:.875rem 1.25rem;text-transform:none;transition:all .2s ease}#dialog .modal .modal-actions button:active{-webkit-transform:scale(.97);transform:scale(.97)}#dialog .modal .modal-actions .btn-cancel{background:#f4f4f5;box-shadow:inset 0 0 0 1px #e4e4e7;color:#52525b}#dialog .modal .modal-actions .btn-cancel:hover{background:#e4e4e7}#dialog .modal .modal-actions .btn-confirm{background:linear-gradient(135deg,#6c3cd9,#8b5cf6);box-shadow:0 2px 8px rgba(108,60,217,.35),inset 0 1px 0 hsla(0,0%,100%,.15);color:#fff}#dialog .modal .modal-actions .btn-confirm:hover{box-shadow:0 4px 16px rgba(108,60,217,.45),inset 0 1px 0 hsla(0,0%,100%,.15);-webkit-transform:translateY(-1px);transform:translateY(-1px)}#menu{height:100%;left:0;position:fixed;top:0;touch-action:none;width:100%;z-index:60}#menu.hide{pointer-events:none}#menu.hide>.inner>.panel{-webkit-transform:translateX(-100%);transform:translateX(-100%);transition:-webkit-transform .25s cubic-bezier(.4,0,.2,1) .05s;transition:transform .25s cubic-bezier(.4,0,.2,1) .05s;transition:transform .25s cubic-bezier(.4,0,.2,1) .05s,-webkit-transform .25s cubic-bezier(.4,0,.2,1) .05s}#menu.hide>.inner>.screen{opacity:0;transition:opacity .2s ease}#menu>.inner{height:100%;margin:0 auto;overflow-x:hidden;position:relative;width:100%}#menu>.inner>.panel{background:#fff;box-shadow:4px 0 24px rgba(0,0,0,.12);box-sizing:border-box;display:flex;flex-direction:column;height:100%;left:0;max-width:320px;padding-bottom:env(safe-area-inset-bottom,0);padding-top:env(safe-area-inset-top,0);position:absolute;transition:-webkit-transform .25s cubic-bezier(.4,0,.2,1);transition:transform .25s cubic-bezier(.4,0,.2,1);transition:transform .25s cubic-bezier(.4,0,.2,1),-webkit-transform .25s cubic-bezier(.4,0,.2,1);width:80%;z-index:1}#menu>.inner>.screen{background-color:rgba(0,0,0,.4);cursor:pointer;height:100%;left:0;opacity:1;position:absolute;top:0;transition:opacity .25s ease .05s;width:100%;z-index:0}#menu .close-btn{align-items:center;background:#f4f4f5;border:none;border-radius:10px;box-shadow:none;color:#52525b;cursor:pointer;display:flex;font-size:.9rem;height:36px;justify-content:center;padding:0;position:absolute;right:12px;text-transform:none;top:calc(12px + env(safe-area-inset-top, 0px));transition:all .2s ease;width:36px}#menu .close-btn:hover{background:#e4e4e7;box-shadow:none;color:#27272b;-webkit-transform:none;transform:none}#menu .user-section{margin-top:.25rem;padding:1.25rem 1.25rem 1rem}#menu .user-section .user-avatar{align-items:center;background:linear-gradient(135deg,#6c3cd9,#8b5cf6);border-radius:12px;color:#fff;display:flex;font-size:.95rem;font-weight:700;height:44px;justify-content:center;letter-spacing:.5px;margin-bottom:.75rem;width:44px}#menu .user-section .user-details{display:flex;flex-direction:column;gap:2px;margin-bottom:.5rem}#menu .user-section .user-details .user-name{color:#27272b;font-size:1rem;font-weight:600}#menu .user-section .user-details .user-role{color:#71717a;font-size:.8rem;font-weight:500}#menu .user-section .partner-badge{background:#ddd6fe;border-radius:6px;color:#6c3cd9;display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.3px;padding:.25rem .6rem;text-transform:uppercase}#menu .menu-nav{border-top:1px solid #f4f4f5;flex:1 1;overflow-y:auto;padding:.5rem 0}#menu .menu-nav .nav-section{padding:.25rem 0}#menu .menu-nav .nav-section:not(:last-child){border-bottom:1px solid #f4f4f5;margin-bottom:.25rem;padding-bottom:.5rem}#menu .menu-nav .nav-section .section-label{color:#71717a;display:block;font-size:.65rem;font-weight:700;letter-spacing:.8px;padding:.5rem 1.25rem .25rem;text-transform:uppercase}#menu .menu-nav .nav-section ul{list-style:none;margin:0;padding:0}#menu .menu-item{border-left:3px solid transparent;color:#52525b;font-size:.9rem;font-weight:500;gap:12px;padding:.7rem 1.25rem;text-decoration:none}#menu .menu-item,#menu .menu-item .menu-icon{align-items:center;display:flex;transition:all .15s ease}#menu .menu-item .menu-icon{background:#fafafa;border-radius:8px;color:#71717a;flex-shrink:0;font-size:1rem;height:32px;justify-content:center;width:32px}#menu .menu-item .menu-label{line-height:1.2}#menu .menu-item:hover{background:#fafafa;color:#27272b}#menu .menu-item:hover .menu-icon{background:#f4f4f5;color:#6c3cd9}#menu .menu-item.active{background:rgba(108,60,217,.04);border-left-color:#6c3cd9;color:#6c3cd9}#menu .menu-item.active .menu-icon{background:#ddd6fe;color:#6c3cd9}#menu .menu-footer{border-top:1px solid #f4f4f5;padding:.75rem 1.25rem}#menu .menu-footer .logout-btn{align-items:center;background:transparent;border:1.5px solid #e4e4e7;border-radius:10px;box-shadow:none;color:#71717a;cursor:pointer;display:flex;font-family:inherit;font-size:.85rem;font-weight:600;gap:8px;justify-content:center;padding:.6rem;text-transform:none;transition:all .2s ease;width:100%}#menu .menu-footer .logout-btn svg{font-size:1rem}#menu .menu-footer .logout-btn:hover{background:rgba(239,68,68,.04);border-color:#ef4444;box-shadow:none;color:#ef4444;-webkit-transform:none;transform:none}.ocr-capture{background-color:#f4f4f5;display:flex;flex-direction:column;height:100%;left:0;position:absolute;top:0;width:100%;z-index:10}.ocr-capture .ocr-header{align-items:center;background-color:#6c3cd9;color:#fff;display:flex;justify-content:space-between;padding:.75em 1em}.ocr-capture .ocr-header h3{font-size:1.1em;font-weight:600;margin:0}.ocr-capture .ocr-header .close-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:1.5em;line-height:1;opacity:.8;padding:0 .25em}.ocr-capture .ocr-header .close-btn:hover{opacity:1}.ocr-capture .permission-denied,.ocr-capture .permission-prompt{color:#27272b;font-size:.9em;padding:1em;text-align:center}.ocr-capture .permission-denied p,.ocr-capture .permission-prompt p{margin:.25em 0}.ocr-capture .permission-denied .hint,.ocr-capture .permission-prompt .hint{color:#71717a;font-size:.8em}.ocr-capture .permission-prompt{background:rgba(59,130,246,.08);border-bottom:1px solid rgba(59,130,246,.2)}.ocr-capture .permission-denied{background:rgba(239,68,68,.08);border-bottom:1px solid rgba(239,68,68,.2);color:#ef4444}.ocr-capture .ocr-video-container{background-color:#27272b;height:clamp(150px,30dvh,250px);overflow:hidden;position:relative;width:100%}.ocr-capture .ocr-video-container video{height:100%;object-fit:cover;width:100%}.ocr-capture .ocr-video-container .capture-guide{align-items:center;display:flex;height:100%;justify-content:center;left:0;pointer-events:none;position:absolute;top:0;width:100%}.ocr-capture .ocr-video-container .capture-guide .guide-frame{background-color:rgba(187,243,81,.05);border:2px dashed rgba(187,243,81,.7);border-radius:8px;height:60%;width:70%}.ocr-capture .ocr-video-container .no-camera{align-items:center;background-color:#18181b;color:#71717a;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.ocr-capture .ocr-video-container .no-camera p{margin:0}.ocr-capture .ocr-feedback{background-color:#fafafa;flex:1 1;overflow-y:auto;padding:1em}.ocr-capture .ocr-feedback .ocr-instructions{padding:1em;text-align:center}.ocr-capture .ocr-feedback .ocr-instructions p{color:#52525b;margin:.5em 0}.ocr-capture .ocr-feedback .ocr-instructions .hint{color:#71717a;font-size:.9em}.ocr-capture .ocr-feedback .ocr-instructions .brightness-warn{color:#f97316;font-size:.85em;font-weight:600;margin-top:.5em}.ocr-capture .ocr-feedback .ocr-status{align-items:center;display:flex;flex-direction:column;padding:1.5em;text-align:center}.ocr-capture .ocr-feedback .ocr-status .spinner{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite;border:3px solid #e4e4e7;border-radius:50%;border-top-color:#6c3cd9;height:40px;width:40px}.ocr-capture .ocr-feedback .ocr-status .icon{font-size:2.5em;margin-bottom:.25em}.ocr-capture .ocr-feedback .ocr-status p{color:#52525b;margin:.5em 0}.ocr-capture .ocr-feedback .ocr-status .subtitle{color:#71717a;font-size:.9em}.ocr-capture .ocr-feedback .ocr-status.queued .icon{color:#3b82f6}.ocr-capture .ocr-feedback .ocr-status.error .icon{color:#f97316}.ocr-capture .ocr-feedback .ocr-status.error .extracted-text{background-color:#f4f4f5;border-radius:4px;margin-top:.5em;max-width:100%;overflow:hidden;padding:.5em}.ocr-capture .ocr-feedback .ocr-status.error .extracted-text small{color:#71717a;font-family:monospace;word-break:break-all}.ocr-capture .ocr-feedback .ocr-status button{margin-top:1em}.ocr-capture .ocr-feedback .ocr-results h4{color:#52525b;font-size:1em;margin:0 0 .75em;text-align:center}.ocr-capture .ocr-feedback .ocr-results .matches-list{display:flex;flex-direction:column;gap:.5em;margin-bottom:1em}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item{align-items:center;background-color:#fff;border:2px solid #e4e4e7;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:.75em 1em;transition:all .2s ease}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item:hover{border-color:#8b5cf6}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item.selected{background-color:#ddd6fe;border-color:#6c3cd9}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item.exact{border-color:#22c55e}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item.exact.selected{background-color:rgba(34,197,94,.1)}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item .match-barcode{font-family:monospace;font-size:1.1em}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item .match-barcode .prefix{color:#71717a}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item .match-barcode .suffix{color:#27272b;font-weight:700}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item .match-info{align-items:flex-end;display:flex;flex-direction:column;gap:.125em}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item .match-info .confidence{border-radius:4px;font-size:.85em;font-weight:600;padding:.125em .5em}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item .match-info .confidence.high{background-color:rgba(34,197,94,.1);color:#22c55e}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item .match-info .confidence.medium{background-color:rgba(249,115,22,.1);color:#f97316}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item .match-info .confidence.low{background-color:rgba(239,68,68,.1);color:#ef4444}.ocr-capture .ocr-feedback .ocr-results .matches-list .match-item .match-info .edit-distance{color:#71717a;font-size:.75em}.ocr-capture .ocr-feedback .ocr-results .confirm-btn{background-color:#22c55e;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1em;font-weight:700;margin-bottom:.5em;padding:.75em;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:1}.ocr-capture .ocr-feedback .ocr-results .confirm-btn:hover{background-color:#1eaf54}.ocr-capture .ocr-feedback .ocr-results .secondary{width:100%}.ocr-capture .ocr-actions{background-color:#f4f4f5;display:flex;flex-direction:column;gap:.5em;padding:1em}.ocr-capture .ocr-actions .capture-btn{background-color:#6c3cd9;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1em;font-weight:600;padding:.875em;width:100%}.ocr-capture .ocr-actions .capture-btn:hover:not(:disabled){background-color:#8b5cf6}.ocr-capture .ocr-actions .capture-btn:disabled{cursor:not-allowed;opacity:.6}.ocr-capture .ocr-actions .cancel-btn{background-color:transparent;border:1px solid #d4d4d8;border-radius:8px;color:#52525b;cursor:pointer;font-weight:500;padding:.75em;width:100%}.ocr-capture .ocr-actions .cancel-btn:hover{background-color:#e4e4e7}.ocr-capture .ocr-info{background-color:#f4f4f5;border-top:1px solid #e4e4e7;padding:.5em 1em;text-align:center}.ocr-capture .ocr-info small{color:#71717a}.ocr-capture button.secondary{background-color:#fff;border:1px solid #d4d4d8;border-radius:6px;color:#52525b;cursor:pointer;font-weight:500;padding:.625em 1.25em}.ocr-capture button.secondary:hover{background-color:#f4f4f5}@-webkit-keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.camera-permission-modal{align-items:center;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:calc(1.5rem + env(safe-area-inset-top, 0px)) 1.5rem calc(1.5rem + env(safe-area-inset-bottom, 0px));position:fixed;z-index:210}.camera-permission-modal .backdrop{-webkit-animation:fadeIn .25s ease-out;animation:fadeIn .25s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:linear-gradient(135deg,rgba(24,24,27,.7),rgba(39,39,43,.85));inset:0;position:absolute}.camera-permission-modal .modal{-webkit-overflow-scrolling:touch;-webkit-animation:modalIn .3s cubic-bezier(.34,1.56,.64,1);animation:modalIn .3s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(180deg,#fff,#fafafa);border-radius:20px;box-shadow:0 0 0 1px rgba(0,0,0,.04),0 4px 6px -1px rgba(0,0,0,.1),0 20px 40px -8px rgba(0,0,0,.25);max-height:80vh;max-height:80dvh;max-width:360px;overflow-y:auto;overflow:hidden;position:relative;width:100%}.camera-permission-modal .modal .modal-icon{align-items:center;border-radius:50%;display:flex;height:56px;justify-content:center;margin:1.75rem auto 1rem;width:56px}.camera-permission-modal .modal .modal-icon.blocked{background:linear-gradient(135deg,#fee2e2,#fecaca)}.camera-permission-modal .modal .modal-icon.blocked svg{color:#ef4444;height:26px;width:26px}.camera-permission-modal .modal .modal-content{padding:0 1.5rem;text-align:center}.camera-permission-modal .modal .modal-content .modal-title{color:#27272b;font-size:1.25rem;font-weight:700;letter-spacing:-.01em;margin:0 0 .5rem}.camera-permission-modal .modal .modal-content .modal-subtitle{color:#52525b;font-size:.9375rem;font-weight:500;line-height:1.5;margin:0 0 1rem}.camera-permission-modal .modal .modal-content .modal-steps{list-style:decimal;margin:0 0 1.5rem;padding-left:1.25rem;text-align:left}.camera-permission-modal .modal .modal-content .modal-steps li{color:#27272b;font-size:.875rem;font-weight:500;line-height:1.6;margin-bottom:.375rem}.camera-permission-modal .modal .modal-content .modal-steps li:last-child{margin-bottom:0}.camera-permission-modal .modal .modal-actions{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;padding:0 1.5rem 1.5rem}.camera-permission-modal .modal .modal-actions button{border:none;border-radius:12px;cursor:pointer;font-size:.9375rem;font-weight:600;padding:.875rem 1.25rem;text-transform:none;transition:all .2s ease}.camera-permission-modal .modal .modal-actions button:active{-webkit-transform:scale(.97);transform:scale(.97)}.camera-permission-modal .modal .modal-actions .btn-dismiss{background:#f4f4f5;box-shadow:inset 0 0 0 1px #e4e4e7;color:#52525b}.camera-permission-modal .modal .modal-actions .btn-dismiss:hover{background:#e4e4e7}.camera-permission-modal .modal .modal-actions .btn-reload{background:linear-gradient(135deg,#6c3cd9,#8b5cf6);box-shadow:0 2px 8px rgba(108,60,217,.35),inset 0 1px 0 hsla(0,0%,100%,.15);color:#fff}.camera-permission-modal .modal .modal-actions .btn-reload:hover{box-shadow:0 4px 16px rgba(108,60,217,.45),inset 0 1px 0 hsla(0,0%,100%,.15);-webkit-transform:translateY(-1px);transform:translateY(-1px)}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes modalIn{0%{opacity:0;-webkit-transform:scale(.9) translateY(20px);transform:scale(.9) translateY(20px)}to{opacity:1;-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes modalIn{0%{opacity:0;-webkit-transform:scale(.9) translateY(20px);transform:scale(.9) translateY(20px)}to{opacity:1;-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}#reader{height:100%;opacity:0;pointer-events:none;position:absolute;transition:all .3s ease-in-out;width:100%;z-index:200}#reader.shown{opacity:1;pointer-events:all}#reader>.inner{background-color:#f4f4f5;box-sizing:border-box;display:grid;grid-template-rows:clamp(160px,35dvh,280px) 1fr 3em;height:100%;margin:0 auto;overflow:hidden;position:relative;width:100%}#reader>.inner>#quagga{border-bottom:3px solid #bbf351;height:100%}#reader>.inner>#quagga video{height:100%;width:100%}#reader>.inner>#quagga canvas{display:none}#reader>.inner>.feedback{background-color:#fafafa;min-height:0;overflow-y:scroll;padding-bottom:4em;padding-left:1em;padding-right:1em;text-align:center;touch-action:pan-y}#reader>.inner>.feedback>.title{background:linear-gradient(180deg,#f4f4f5 0,#fafafa)}#reader>.inner>.feedback>.title>h3{color:#6c3cd9;font-weight:600;margin-bottom:.5em;margin-top:1em}#reader>.inner>.feedback>.scan-progress-summary{background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.3);border-radius:10px;color:#17843f;font-size:1.1em;font-weight:600;margin:.5em 0;padding:.75em 1em}#reader>.inner>.feedback>.scan-progress-summary .scanned-count{font-size:1.4em;font-weight:700}#reader>.inner>.feedback>.scan-progress-summary .scanned-label{font-weight:500}#reader>.inner>.feedback>.message{-webkit-animation:messageFadeIn .25s ease-out;animation:messageFadeIn .25s ease-out;border-radius:8px;font-weight:500;margin:.5em 0;padding:.75em 1em}#reader>.inner>.feedback>.message.ok{background-color:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.3);color:#1a9a49}#reader>.inner>.feedback>.message.warn{background-color:rgba(249,115,22,.15);border:1px solid rgba(249,115,22,.3);color:#ef6606}#reader>.inner>.feedback>.message.error{background-color:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3);color:#ef4444}@-webkit-keyframes messageFadeIn{0%{opacity:0;-webkit-transform:translateY(-4px);transform:translateY(-4px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes messageFadeIn{0%{opacity:0;-webkit-transform:translateY(-4px);transform:translateY(-4px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}#reader>.inner>.reader-actions{bottom:0;box-sizing:border-box;left:0;padding-bottom:env(safe-area-inset-bottom,0);position:fixed;right:0;width:100%;z-index:201}@-webkit-keyframes cardEntrance{0%{opacity:0;-webkit-transform:scale(.96) translateY(20px);transform:scale(.96) translateY(20px)}to{opacity:1;-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes cardEntrance{0%{opacity:0;-webkit-transform:scale(.96) translateY(20px);transform:scale(.96) translateY(20px)}to{opacity:1;-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@-webkit-keyframes slideInUp{0%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes heroFadeIn{0%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes heroFadeIn{0%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}#login{align-items:center;background:linear-gradient(135deg,#27272b,#18181b);box-sizing:border-box;display:flex;inset:0;justify-content:center;position:fixed;transition:opacity .3s ease-in-out;z-index:1}#login.hide{opacity:0;pointer-events:none}#login.hide .login-card{opacity:0;-webkit-transform:scale(.95) translateY(20px);transform:scale(.95) translateY(20px)}#login .login-container{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:center;padding:calc(1.5rem + env(safe-area-inset-top, 0px)) 1.5rem calc(1.5rem + env(safe-area-inset-bottom, 0px));width:100%}#login .login-hero{display:none}#login .login-card{-webkit-animation:cardEntrance .5s cubic-bezier(.34,1.56,.64,1) forwards;animation:cardEntrance .5s cubic-bezier(.34,1.56,.64,1) forwards;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:linear-gradient(180deg,hsla(0,0%,100%,.08),hsla(0,0%,100%,.04));border:1px solid hsla(0,0%,100%,.1);border-radius:20px;box-shadow:0 0 0 1px hsla(0,0%,100%,.05),0 4px 6px -1px rgba(0,0,0,.2),0 20px 40px -8px rgba(0,0,0,.4);box-sizing:border-box;max-width:420px;padding:2.5rem 2rem 2rem;position:relative;transition:opacity .3s cubic-bezier(.34,1.56,.64,1),-webkit-transform .3s cubic-bezier(.34,1.56,.64,1);transition:opacity .3s cubic-bezier(.34,1.56,.64,1),transform .3s cubic-bezier(.34,1.56,.64,1);transition:opacity .3s cubic-bezier(.34,1.56,.64,1),transform .3s cubic-bezier(.34,1.56,.64,1),-webkit-transform .3s cubic-bezier(.34,1.56,.64,1);width:100%}#login .login-card:before{background:linear-gradient(90deg,transparent,#bbf351,transparent);border-radius:0 0 3px 3px;content:"";height:3px;left:50%;position:absolute;top:0;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:60px}#login .login-brand{margin-bottom:1.5rem;text-align:center}#login .login-brand>img{-webkit-filter:brightness(1.2) drop-shadow(0 4px 12px rgba(187,243,81,.15));filter:brightness(1.2) drop-shadow(0 4px 12px rgba(187,243,81,.15));margin-bottom:-1rem;width:180px}#login .login-brand>h1{color:#bbf351;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;margin:0 0 .25rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}#login .login-brand>h2{color:#71717a;font-size:.9375rem;font-weight:500;margin:0}#login .mode-toggle-wrapper{margin-bottom:1.5rem}#login .mode-toggle-wrapper .mode-hint{align-items:center;color:hsla(0,0%,100%,.3);display:flex;font-size:.75rem;font-weight:400;gap:.4rem;margin:.5rem 0 0;max-height:0;opacity:0;overflow:hidden;padding:0;transition:opacity .25s ease,max-height .25s ease}#login .mode-toggle-wrapper .mode-hint svg{flex-shrink:0;font-size:.7rem}#login .mode-toggle-wrapper .mode-hint.visible{max-height:2rem;opacity:1}#login .mode-toggle{background:hsla(0,0%,100%,.04);border:1px solid hsla(0,0%,100%,.08);border-radius:12px;display:flex;gap:8px;padding:4px}#login .mode-toggle .mode-option{align-items:center;background:transparent;border:1.5px solid transparent;border-radius:10px;box-shadow:none;color:hsla(0,0%,100%,.45);cursor:pointer;display:flex;flex:1 1;font-family:inherit;font-size:.875rem;font-weight:600;gap:10px;justify-content:center;padding:.7rem .75rem;text-transform:none;transition:all .25s ease}#login .mode-toggle .mode-option>svg{flex-shrink:0;font-size:1.2rem}#login .mode-toggle .mode-option .mode-text{display:flex;flex-direction:column;gap:1px;text-align:left}#login .mode-toggle .mode-option .mode-text .mode-label{font-size:.85rem;font-weight:600;line-height:1.2}#login .mode-toggle .mode-option .mode-text .mode-desc{font-size:.7rem;font-weight:400;line-height:1.2;opacity:.7}#login .mode-toggle .mode-option:hover{background:hsla(0,0%,100%,.04);color:hsla(0,0%,100%,.7)}#login .mode-toggle .mode-option.active{background:rgba(187,243,81,.08);border-color:rgba(187,243,81,.3);box-shadow:0 2px 8px rgba(0,0,0,.2),0 0 0 1px rgba(187,243,81,.1);color:#fff}#login .mode-toggle .mode-option.active .mode-label,#login .mode-toggle .mode-option.active>svg{color:#bbf351}#login form .form-control{margin-bottom:1.25rem}#login form .form-control>label{align-items:center;color:hsla(0,0%,100%,.7);display:flex;font-size:.875rem;font-weight:600;justify-content:space-between;margin-bottom:.5rem}#login form .input-wrapper{position:relative}#login form .input-wrapper .input-icon{color:hsla(0,0%,100%,.3);font-size:.875rem;left:1rem;pointer-events:none;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);transition:color .2s ease}#login form .input-wrapper:focus-within .input-icon{color:#bbf351}#login form .input-wrapper input{background:hsla(0,0%,100%,.06);border:1.5px solid hsla(0,0%,100%,.12);border-radius:12px;box-sizing:border-box;color:#fff;display:block;font-family:inherit;font-size:1rem;outline:none;padding:.875rem 1rem .875rem 2.75rem;transition:all .2s ease;width:100%}#login form .input-wrapper input::-webkit-input-placeholder{color:hsla(0,0%,100%,.3)}#login form .input-wrapper input::placeholder{color:hsla(0,0%,100%,.3)}#login form .input-wrapper input:hover{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.2)}#login form .input-wrapper input:focus{background:hsla(0,0%,100%,.08);border-color:#bbf351;box-shadow:0 0 0 3px rgba(187,243,81,.15)}#login form .input-wrapper input:-webkit-autofill,#login form .input-wrapper input:-webkit-autofill:focus,#login form .input-wrapper input:-webkit-autofill:hover{-webkit-text-fill-color:#fff;-webkit-box-shadow:inset 0 0 0 1000px rgba(39,39,43,.99);-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}#login form .show-password{align-items:center;color:hsla(0,0%,100%,.5);cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:500;gap:.35rem;transition:color .2s ease;-webkit-user-select:none;user-select:none}#login form .show-password:hover{color:#bbf351}#login form .show-password svg{font-size:.75rem}#login form button[type=submit]{margin-top:.5rem;padding:.875rem 1.25rem;width:100%}#login .forgot-password{font-size:.875rem;margin:1.25rem 0 0;text-align:center}#login .forgot-password .link{color:hsla(0,0%,100%,.5);transition:color .2s ease}#login .forgot-password .link:hover{color:#bbf351}#login .offline-warning{-webkit-animation:slideInUp .3s ease-out forwards;animation:slideInUp .3s ease-out forwards;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:hsla(48,96%,89%,.1);border:1px solid rgba(249,115,22,.4);border-radius:12px;margin-top:1.25rem;padding:.875rem 1rem}#login .offline-warning p{align-items:center;color:#f97316;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;margin:0}#login .offline-warning p svg{flex-shrink:0;font-size:1rem}@media(min-width:800px){#login .login-container{padding:0}#login .login-hero{align-items:center;background:linear-gradient(160deg,#0b1120,#162033 50%,#1a2744);display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:50%}#login .login-hero:before{background-image:linear-gradient(hsla(0,0%,100%,.03) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.03) 1px,transparent 0);background-size:40px 40px;content:"";inset:0;position:absolute}#login .login-hero:after{background:radial-gradient(circle,rgba(187,243,81,.08) 0,transparent 70%);bottom:-20%;content:"";height:60%;left:-10%;pointer-events:none;position:absolute;width:60%}#login .login-hero .hero-content{-webkit-animation:heroFadeIn .6s ease-out .2s both;animation:heroFadeIn .6s ease-out .2s both;max-width:440px;padding:3rem;position:relative;z-index:1}#login .login-hero .hero-content .hero-logo{-webkit-filter:brightness(1.2) drop-shadow(0 8px 24px rgba(187,243,81,.25));filter:brightness(1.2) drop-shadow(0 8px 24px rgba(187,243,81,.25));margin-bottom:1rem;width:120px}#login .login-hero .hero-content>h1{color:#fff;font-size:2rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .5rem}#login .login-hero .hero-content .hero-tagline{color:hsla(0,0%,100%,.5);font-size:1.05rem;font-weight:400;line-height:1.5;margin:0 0 2.5rem}#login .login-hero .hero-content .hero-features{display:flex;flex-direction:column;gap:1.25rem}#login .login-hero .hero-content .hero-features .feature{align-items:flex-start;display:flex;gap:14px}#login .login-hero .hero-content .hero-features .feature>svg{color:#bbf351;flex-shrink:0;font-size:1.3rem;margin-top:2px}#login .login-hero .hero-content .hero-features .feature>div{display:flex;flex-direction:column;gap:2px}#login .login-hero .hero-content .hero-features .feature>div strong{color:#fff;font-size:.9rem;font-weight:600}#login .login-hero .hero-content .hero-features .feature>div span{color:hsla(0,0%,100%,.45);font-size:.8rem;font-weight:400;line-height:1.4}#login .login-card{align-items:center;background:linear-gradient(180deg,hsla(0,0%,100%,.06),hsla(0,0%,100%,.03));border:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;height:100%;justify-content:center;max-width:none;padding:3rem clamp(2rem,5vw,4rem);width:50%}#login .login-card:before{display:none}#login .login-card .login-brand{max-width:380px;width:100%}#login .login-card .login-brand>img{display:none}#login .login-card .login-brand>h1{font-size:1.75rem}#login .login-card .login-brand>h2{font-size:1rem}#login .login-card .forgot-password,#login .login-card .mode-toggle-wrapper,#login .login-card .offline-warning,#login .login-card form{max-width:380px;width:100%}}header{background:linear-gradient(135deg,#27272b,#18181b);box-shadow:0 2px 12px rgba(0,0,0,.2);height:calc(3em + env(safe-area-inset-top, 0px));left:0;position:fixed;top:0;width:100%;z-index:50}header>.inner{align-items:center;box-sizing:border-box;display:flex;height:100%;margin:0 auto;max-width:500px;padding:env(safe-area-inset-top,0) .75em 0;width:100%}@media(min-width:800px){header>.inner{max-width:700px}}header>.inner>.menu-toggle{align-items:center;background:none;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.15em;justify-content:center;margin-right:.5em;padding:.4em;transition:background-color .2s ease}header>.inner>.menu-toggle:hover{background-color:hsla(0,0%,100%,.1)}header>.inner>.menu-toggle:active{background-color:hsla(0,0%,100%,.15)}header>.inner>.breadcrumbs{align-items:center;display:flex;flex:1 1;font-size:.9em;gap:.4em;min-width:0}header>.inner>.breadcrumbs>a{color:hsla(0,0%,100%,.6);flex-shrink:0;text-decoration:none;transition:color .2s ease;white-space:nowrap}header>.inner>.breadcrumbs>a:hover{color:hsla(0,0%,100%,.85)}header>.inner>.breadcrumbs>.separator{color:hsla(0,0%,100%,.4);flex-shrink:0;font-size:.55em}header>.inner>.breadcrumbs>.current{color:#fff;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}header>.inner>img{-webkit-filter:brightness(1.2);filter:brightness(1.2);flex-shrink:0;height:1.4em;margin-left:.75em}.dashboard-root{height:100vh;height:100dvh;width:100%}
/*# sourceMappingURL=main.f80418d2.css.map*/