@import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@400;500;700;800&display=swap');
:root{--ink:#10251f;--muted:#6b7d77;--line:#dfe8e4;--bg:#f3f7f5;--white:#fff;--green:#075e48;--green2:#0f8a68;--red:#c33;--shadow:0 12px 35px rgba(22,65,52,.08)}*{box-sizing:border-box}body{margin:0;font-family:Tajawal,Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:16px}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:.72rem .85rem;background:#fff;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green2);box-shadow:0 0 0 3px rgba(15,138,104,.12)}label{display:grid;gap:.4rem;font-weight:600}label small,.muted{font-weight:400;color:var(--muted)}.app-shell{min-height:100vh}.sidebar{position:fixed;right:0;top:0;bottom:0;width:260px;background:#063d31;color:#fff;padding:24px 18px;display:flex;flex-direction:column;z-index:20}.logo{display:flex;align-items:center;gap:12px;padding:0 8px 25px;border-bottom:1px solid rgba(255,255,255,.12)}.logo span,.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#fff;color:var(--green);font-size:26px;font-weight:800}.logo b{font-size:18px}.sidebar nav{display:grid;gap:6px;margin-top:25px}.sidebar nav a{padding:12px 14px;border-radius:10px;color:#c9e1da;font-weight:500}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.12);color:#fff}.side-user{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:18px 8px 0;display:grid;gap:3px}.side-user small{color:#a8c8bf}.side-user a{color:#8ee1c8;margin-top:8px}.main{margin-right:260px;padding:28px 34px}.topbar{display:flex;align-items:center;gap:14px;margin-bottom:24px}.topbar h1{margin:0;font-size:28px}.topbar p{margin:3px 0 0;color:var(--muted)}.menu{display:none;border:0;background:#fff;border-radius:9px;padding:8px 11px}.stats{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:14px;margin-bottom:22px}.stats article{background:#fff;border:1px solid var(--line);border-top:4px solid var(--green);border-radius:14px;padding:18px;box-shadow:var(--shadow)}.stats span,.stats i{display:block;color:var(--muted);font-style:normal}.stats strong{display:block;font-size:34px;margin:4px 0}.stats i{font-size:13px}.stats .tone-gray{border-top-color:#82908c}.stats .tone-amber{border-top-color:#e5a100}.stats .tone-blue{border-top-color:#297ac2}.stats .tone-green{border-top-color:#18a06f}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow);margin-bottom:20px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.panel h2,.panel h3{margin:0}.panel-head p{margin:4px 0;color:var(--muted)}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.quick-grid a{border:1px solid var(--line);border-radius:13px;padding:20px;display:grid;gap:7px;transition:.2s}.quick-grid a:hover{border-color:var(--green2);transform:translateY(-2px)}.quick-grid span{color:var(--muted);font-size:14px}.btn{border:1px solid var(--line);background:#fff;border-radius:10px;padding:.68rem 1rem;cursor:pointer;font-weight:700;display:inline-flex;justify-content:center;align-items:center;gap:6px}.btn:hover{filter:brightness(.97)}.btn.primary{background:var(--green);color:#fff;border-color:var(--green)}.btn.success{background:#138a63;color:#fff;border-color:#138a63}.btn.small{padding:.4rem .7rem;font-size:13px}.btn.full{width:100%;margin-top:8px}.btn.huge{width:100%;font-size:18px;padding:16px;margin-top:16px}.btn:disabled{opacity:.65}.alert{padding:13px 16px;border-radius:11px;margin-bottom:18px;background:#e3f5ed;color:#09603f}.alert.danger{background:#fdeaea;color:#9c2424}.auth{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 80% 20%,#dff5eb,transparent 34%),#edf4f1;padding:20px}.auth-card{width:min(520px,100%);background:#fff;border:1px solid var(--line);box-shadow:0 24px 70px rgba(22,65,52,.14);border-radius:22px;padding:34px}.auth-card .brand-mark{background:var(--green);color:#fff}.auth-card h1{margin:18px 0 4px}.auth-card form{display:grid;gap:15px;margin-top:24px}.form-grid{grid-template-columns:1fr 1fr}.span2{grid-column:1/-1}.auth-card hr{border:0;border-top:1px solid var(--line);width:100%}.inline-form{display:grid;grid-template-columns:1.2fr 1fr 1fr .7fr auto;align-items:end;gap:12px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap}th,td{text-align:right;padding:13px 12px;border-bottom:1px solid #edf1ef}th{font-size:13px;color:var(--muted);background:#f7faf9}td small{display:block;color:var(--muted)}.actions{display:flex;gap:6px}.badge{display:inline-flex;padding:5px 9px;border-radius:99px;font-size:12px;font-weight:700}.badge.gray{background:#e9edeb;color:#4e5c57}.badge.amber{background:#fff0c7;color:#8b5f00}.badge.blue{background:#dcecff;color:#1f5e9a}.badge.green{background:#d9f4e7;color:#087348}.row-unassigned{background:#fafbfb}.row-assigned{background:#fffcf3}.row-completed{background:#f4f9ff}.row-delivered{background:#f4fcf8}.truncate{max-width:190px;overflow:hidden;text-overflow:ellipsis}.empty{text-align:center;color:var(--muted);padding:35px}.filters{display:grid;grid-template-columns:2fr 1fr auto auto;gap:10px;margin-bottom:15px}.bulkbar{display:flex;gap:10px;align-items:center;background:#edf7f3;border-radius:12px;padding:10px 12px;margin-bottom:10px}.bulkbar select{width:220px;margin-right:auto}.mapping{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.drop-form{display:grid;gap:15px}.dropzone{border:2px dashed #9cc8bb;border-radius:16px;padding:38px;text-align:center;cursor:pointer;display:grid;place-items:center;background:#f8fcfa}.dropzone input{display:none}.upload-icon{font-size:44px;color:var(--green2)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}dialog{border:0;border-radius:16px;padding:24px;box-shadow:0 25px 80px #0003;width:min(440px,90%)}dialog::backdrop{background:#10251f99}.management-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.process-shell{max-width:780px;margin:0 auto}.process-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.process-top h2{font-size:30px;margin:2px 0}.eyebrow{color:var(--muted)}.remaining{background:#fff;border-radius:14px;border:1px solid var(--line);padding:10px 16px;display:flex;align-items:center;gap:9px}.remaining strong{font-size:24px}.remaining span{color:var(--muted)}.order-card{background:#fff;border-radius:20px;border:1px solid var(--line);box-shadow:var(--shadow);padding:26px}.customer{display:flex;gap:14px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--line)}.avatar{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#dff3eb;color:var(--green);font-size:26px;font-weight:800}.customer small{color:var(--muted)}.customer h3{font-size:23px;margin:3px 0}.order-card dl{display:grid;grid-template-columns:1fr 2fr 1fr;gap:18px;margin:22px 0}.order-card dl div{background:#f7faf9;border-radius:12px;padding:14px}.order-card dt{color:var(--muted);font-size:13px}.order-card dd{font-weight:700;margin:5px 0 0}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact{border-radius:13px;padding:14px;display:flex;justify-content:center;align-items:center;gap:10px;color:#fff}.contact span{font-size:22px}.contact.call{background:#2375bd}.contact.whatsapp{background:#18a66f}.notes-label{margin-top:20px}.done-state{text-align:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:60px 30px}.done-state>div{margin:auto;width:80px;height:80px;border-radius:50%;display:grid;place-items:center;background:#dff5eb;color:#087348;font-size:38px}.done-state h2{font-size:27px}.done-state p{color:var(--muted)}
.btn.danger{background:#b93434;color:#fff;border-color:#b93434}.trash-note{background:#fff7dc;color:#745800;border:1px solid #f0d77a;border-radius:12px;padding:13px 15px;margin-bottom:16px}
@media(max-width:1100px){.stats{grid-template-columns:repeat(3,1fr)}.quick-grid{grid-template-columns:repeat(2,1fr)}.management-grid{grid-template-columns:1fr}.inline-form{grid-template-columns:1fr 1fr}.inline-form .btn{grid-column:1/-1}}
.category-filters{grid-template-columns:2fr 1fr 1fr auto auto}.phone-filters{grid-template-columns:2fr 1fr 1fr 1fr auto auto}.category-tag{display:inline-flex;background:#e4f3ee;color:#075e48;border-radius:8px;padding:4px 8px;font-size:13px;font-weight:700}.phone-row-invalid{background:#fff8e8!important}.phone-row-empty{background:#fff0f0!important}.phone-value{display:inline-flex;padding:4px 8px;border-radius:7px;font-weight:700}.phone-invalid{background:#ffe0a3;color:#815200}.phone-empty{background:#ffd6d6;color:#a12626}.phone-valid{color:#126d4e}.phone-warning{margin-top:3px!important;color:#a12626!important;font-weight:700}.import-summary{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:12px;background:#edf7f3;border-radius:12px;padding:14px;margin-bottom:20px}.import-summary b{font-size:20px}.import-summary span{background:#fff;border:1px solid #cfe5dd;padding:5px 9px;border-radius:8px}.import-summary small{color:var(--muted);line-height:1.7}
@media(max-width:760px){.sidebar{transform:translateX(100%);transition:.2s}.nav-open .sidebar{transform:none}.nav-open:after{content:'';position:fixed;inset:0;background:#0007;z-index:10}.nav-open .sidebar{z-index:30}.main{margin-right:0;padding:18px 14px}.menu{display:block}.topbar h1{font-size:23px}.stats{display:flex;overflow:auto;padding-bottom:6px}.stats article{min-width:155px}.quick-grid{grid-template-columns:1fr}.filters,.category-filters,.phone-filters{grid-template-columns:1fr 1fr}.filters input{grid-column:1/-1}.bulkbar{flex-wrap:wrap}.bulkbar select{width:100%;order:2}.mapping{grid-template-columns:1fr}.form-grid,.inline-form{grid-template-columns:1fr}.span2{grid-column:auto}.order-card{padding:18px}.order-card dl{grid-template-columns:1fr}.contact-actions{grid-template-columns:1fr}.auth-card{padding:25px 20px}.panel{padding:15px}.table-wrap{margin:0 -15px}.table-wrap table{min-width:800px}.import-summary{grid-template-columns:1fr 1fr}.import-summary small{grid-column:1/-1}}
