:root{font-family:system-ui,-apple-system,sans-serif;color:#1a1a2e;background:#f4f5f7}*{box-sizing:border-box}body{margin:0}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center}.card{background:#fff;border-radius:10px;padding:24px;box-shadow:0 1px 4px #0000001f}.login-card{width:340px;display:flex;flex-direction:column;gap:12px}.remember-device{display:flex;align-items:center;gap:8px;font-size:14px;color:#333}.remember-device input{flex-shrink:0}.layout{display:flex;min-height:100vh}.sidebar{width:220px;background:#1a1a2e;color:#eee;padding:16px 0;flex-shrink:0}.sidebar h1{font-size:16px;padding:0 16px 12px;margin:0;border-bottom:1px solid #333}.sidebar nav{display:flex;flex-direction:column;margin-top:8px}.sidebar a{color:#ccc;text-decoration:none;padding:9px 16px;font-size:14px}.sidebar a.active,.sidebar a:hover{background:#2d2d4a;color:#fff}.sidebar .logout{margin-top:24px;padding:9px 16px;background:none;border:none;color:#f88;cursor:pointer;text-align:left;font-size:14px}.content{flex:1;padding:24px;max-width:1100px}h2{margin-top:0}table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}th,td{text-align:left;padding:9px 12px;border-bottom:1px solid #eee;font-size:14px}th{background:#fafafa;font-weight:600}tr:hover td{background:#f8f9ff}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:12px 0}label.field{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#444}input,select,textarea{padding:8px;border:1px solid #ccc;border-radius:6px;font:inherit;font-size:14px}textarea{resize:vertical}input[type=checkbox]{width:18px;height:18px}button.primary{background:#2f54eb;color:#fff;border:none;border-radius:6px;padding:9px 16px;font-size:14px;cursor:pointer}button.primary:hover{background:#1d39c4}button.ghost{background:none;border:1px solid #ccc;border-radius:6px;padding:6px 10px;font-size:13px;cursor:pointer}.error{color:#c0392b;font-size:14px}.success{padding:10px 12px;border-radius:6px;background:#e6f4ea;color:#1e7e34;font-size:14px}.field-help{color:#707070;font-size:12px;line-height:1.35}.muted{color:#888;font-size:13px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;background:#e6f4ea;color:#1e7e34}.badge.off{background:#fdecea;color:#c0392b}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.page-header p{max-width:680px;margin:-8px 0 0}.discount-shop-select{width:min(100%,360px);margin-bottom:16px}.discount-rule-list{display:grid;gap:14px}.discount-rule-card{padding:18px}.discount-rule-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.discount-rule-heading>div{display:flex;flex-direction:column;gap:3px}.discount-rule-heading strong{font-size:18px}.status-pill{display:inline-flex;padding:3px 9px;border-radius:999px;background:#eef0f4;color:#596273;font-size:12px;font-weight:700}.status-pill.status-active{background:#e6f4ea;color:#1e7e34}.discount-rule-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.checkbox-field{display:flex;align-items:center;gap:8px;font-size:14px}.pick-wrap{max-width:560px;margin:0 auto;padding:12px;display:flex;flex-direction:column;gap:10px}.pick-topbar{display:flex;align-items:center;gap:10px}.pick-topbar input{flex:1}.big-btn{display:block;background:#fff;border:1px solid #ddd;border-radius:10px;padding:18px 16px;font-size:17px;text-align:left;text-decoration:none;color:inherit;cursor:pointer;width:100%;box-sizing:border-box}.big-btn:active{background:#eef1ff}.filter-row{display:flex;gap:8px}.chip{border:1px solid #ccc;background:#fff;border-radius:16px;padding:6px 14px;font-size:14px;cursor:pointer}.chip-active{background:#2f54eb;color:#fff;border-color:#2f54eb}.order-card{display:flex;flex-direction:column;gap:2px;background:#fff;border-radius:10px;padding:12px 14px;text-decoration:none;color:inherit;border-left:5px solid #ccc}.order-card.cat-complete{border-left-color:#2e9e44}.order-card.cat-partial{border-left-color:#e6a817}.order-card.cat-blocked{border-left-color:#d0392e}.order-action-badge{display:flex;width:100%;align-items:center;gap:7px;margin:5px 0 3px;padding:7px 9px;border:1px solid #e6a817;border-radius:7px;background:#fff8e5;color:#805500;font-size:13px;font-weight:800}.order-action-badge:before{content:"!";display:inline-flex;width:18px;height:18px;flex:0 0 18px;align-items:center;justify-content:center;border-radius:50%;background:#e6a817;color:#fff;font-size:12px}.progress-bar{position:relative;background:#e3e5ea;border-radius:8px;height:26px;overflow:hidden}.progress-fill{background:#2e9e44;height:100%;transition:width .3s}.progress-bar span{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}.flash{padding:12px;border-radius:8px;font-size:16px;font-weight:600;text-align:center}.flash-ok{background:#e6f4ea;color:#1e7e34}.flash-warn{background:#fff6e0;color:#9a6d00}.flash-err{background:#fdecea;color:#c0392b}.scanner-box{background:#000;border-radius:10px;overflow:hidden;min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:8px}.scanner-video{width:100%;max-height:220px;object-fit:cover;border-radius:6px}.item-card{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:10px;padding:12px 14px;gap:10px}.item-done{opacity:.55}.item-main{display:flex;flex-direction:column;gap:2px;min-width:0}.item-qty{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.qty-open{font-size:20px;font-weight:700}.qty-done{font-size:20px;font-weight:700;color:#2e9e44}.ghost.small{padding:3px 8px;font-size:12px}.big-cta{padding:16px;font-size:17px;border-radius:10px;margin-top:8px}.big-cta:disabled{background:#aab3c5;cursor:default}.offline-banner{padding:12px;border-radius:8px;background:#7f1d1d;color:#fff;font-weight:700;text-align:center}.pack-actions-card{padding:16px;border:3px solid #e6a817;border-radius:12px;background:#fff8e5;box-shadow:0 4px 16px #80550024}.pack-actions-card.pack-actions-done{border-color:#2e9e44;background:#edf9f0}.pack-actions-title{display:flex;flex-direction:column;gap:3px}.pack-actions-title strong{font-size:20px}.pack-actions-title span{color:#805500;font-size:13px;font-weight:700}.pack-actions-card ul{display:grid;gap:10px;margin:14px 0 4px;padding:0;list-style:none}.pack-actions-card li{display:flex;flex-direction:column;gap:3px;padding:12px;border-radius:9px;background:#fff}.pack-actions-card li span{color:#805500;font-size:12px;font-weight:800;text-transform:uppercase}.pack-actions-card li strong{font-size:17px;line-height:1.35}.pack-actions-card .big-cta{width:100%}.pack-actions-blocked{margin:-3px 0 0;color:#805500;font-size:13px;font-weight:700;text-align:center}.scanner-status{color:#fff;margin:4px 0;font-weight:600}.item-image{width:64px;height:64px;flex:0 0 64px;border-radius:9px;object-fit:contain;background:#f5f5f5}.scan-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center;padding:12px;background:#0a1222a3}.scan-dialog{width:min(100%,520px);max-height:calc(100dvh - 24px);overflow-y:auto;padding:22px 18px calc(18px + env(safe-area-inset-bottom));border-radius:20px 20px 14px 14px;background:#fff;box-shadow:0 24px 60px #00000047}.scan-dialog h2{margin:4px 0;font-size:24px;line-height:1.15}.scan-dialog-kicker{color:#9b4f3f;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.scan-quantity-summary,.pack-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.pack-summary{grid-template-columns:repeat(2,1fr)}.scan-quantity-summary div,.pack-summary div{display:flex;min-width:0;flex-direction:column;gap:5px;padding:11px 8px;border-radius:10px;background:#f3f5f8;text-align:center}.scan-quantity-summary span,.pack-summary span{color:#667085;font-size:12px;line-height:1.2}.scan-quantity-summary strong,.pack-summary strong{font-size:24px}.scan-quantity-label{display:block;margin:4px 0 10px;font-size:16px;font-weight:700;text-align:center}.scan-quantity-control{display:grid;grid-template-columns:56px 1fr 56px;gap:10px;margin-bottom:12px}.scan-quantity-control input{width:100%;min-width:0;border:2px solid #9b4f3f;border-radius:12px;font-size:28px;font-weight:700;text-align:center}.quantity-step{min-height:56px;border:0;border-radius:12px;background:#edf0f4;color:#182230;font-size:30px}.scan-dialog .big-cta{width:100%}.scan-dialog-cancel{width:100%;margin-top:8px;padding:12px}.shipment-list{margin-top:12px}.shipment-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-top:10px;font-size:13px}.shipment-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.danger{color:#8b2f2f;border-color:#b98787}.resource-inactive{opacity:.72}.resource-inactive:hover{opacity:1}.resource-actions{display:flex;flex-wrap:wrap;gap:6px;min-width:190px}.password-change{margin-top:18px;padding-top:16px;border-top:1px solid #eee}.password-change-box{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid #dde1ea;border-radius:8px;background:#fafbff}.secret-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap}@media(max-width:640px){.page-header,.discount-rule-actions{align-items:stretch;flex-direction:column}.page-header button,.discount-rule-actions button{width:100%}.shipment-row{align-items:stretch;flex-direction:column}.shipment-actions{justify-content:flex-start}}@media(min-width:620px){.scan-dialog-backdrop{align-items:center}.scan-dialog{border-radius:20px}}.public-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f6f0e5;color:#2f251f}.public-card{width:min(620px,100%);padding:clamp(24px,5vw,48px);background:#fffaf1;border:1px solid #e7d8c4;border-radius:24px;box-shadow:0 18px 50px #4931231a}.public-card h1{margin:6px 0 16px;font-size:clamp(2rem,6vw,3.1rem);line-height:1.05;font-family:Georgia,serif;font-weight:500}.public-card p{font-size:1.05rem;line-height:1.65}.public-eyebrow{color:#844335;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:700}.public-form{display:grid;gap:18px;margin-top:26px}.public-form label{display:grid;gap:7px;font-weight:650}.public-form input:not([type=checkbox]){width:100%;padding:14px 15px;border:1px solid #bdae9c;border-radius:10px;background:#fff;color:inherit;font:inherit}.public-form input:focus{outline:3px solid rgba(132,67,53,.2);border-color:#844335}.public-form .public-consent{display:flex;align-items:flex-start;gap:10px;font-weight:500}.public-consent input{width:20px;height:20px;flex:0 0 auto}.public-primary{width:100%;padding:15px 20px;border:0;border-radius:999px;background:#844335;color:#fff;font:inherit;font-weight:700;cursor:pointer}.public-primary:disabled{opacity:.6;cursor:wait}.public-success,.public-error{padding:15px 17px;border-radius:12px;line-height:1.5}.public-success{background:#e8f4e9;color:#174a23}.public-error{background:#fff0ee;color:#8b2c20}.public-note{margin:20px 0 0;color:#73665b;font-size:.9rem!important}.withdrawal-list{display:grid;gap:14px}.withdrawal-admin-card{padding:18px;border:1px solid #ddd;border-left:5px solid #2e9e4b;border-radius:12px;background:#fff}.withdrawal-admin-card.needs-review{border-left-color:#c33b2c}.withdrawal-admin-card header{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.withdrawal-admin-card dl{display:grid;grid-template-columns:max-content 1fr;gap:5px 14px}.withdrawal-admin-card dt{color:#666}.withdrawal-admin-card dd{margin:0}
