html{background:#f4f7f5}body,#root{min-height:100vh}:root{color:#18201c;font-synthesis:none;text-rendering:optimizelegibility;background:#f4f7f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 0 0,#2196531f,#0000 30rem),#f4f7f5;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}.center-screen,.login-page{place-items:center;min-height:100vh;padding:24px;display:grid}.center-screen{color:#627068;align-content:center;gap:12px}.loader{border:4px solid #d9e4dd;border-top-color:#167847;border-radius:50%;width:42px;height:42px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-card{background:#fffffff0;border:1px solid #1678471f;border-radius:28px;width:min(100%,430px);padding:34px;box-shadow:0 24px 70px #1638271f}.brand-mark{color:#fff;letter-spacing:-1px;background:#167847;border-radius:18px;place-items:center;width:58px;height:58px;margin-bottom:24px;font-size:20px;font-weight:900;display:grid}.eyebrow{color:#167847;letter-spacing:.12em;text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:800}h1,h2,h3,p{margin-top:0}h1{margin-bottom:6px;font-size:clamp(28px,5vw,42px);line-height:1}h2{margin-bottom:0;font-size:25px}.muted{color:#68756e}form{gap:18px;margin-top:30px;display:grid}label{color:#35433b;gap:8px;font-size:14px;font-weight:700;display:grid}input{color:#18201c;background:#fff;border:1px solid #ccd8d0;border-radius:14px;outline:none;width:100%;min-height:50px;padding:0 15px}input:focus{border-color:#167847;box-shadow:0 0 0 4px #1678471a}.primary-button,.secondary-button,.ghost-button,.route-button{border:0;border-radius:14px;justify-content:center;align-items:center;min-height:48px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.primary-button{color:#fff;background:#167847;box-shadow:0 10px 22px #1678472e}.secondary-button{color:#11663c;background:#e2f2e8}.ghost-button{color:#3d4d44;background:#fff;border:1px solid #d8e0db}.route-button{color:#26362d;background:#eff3f0}button:disabled{cursor:wait;opacity:.65}.app-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:34px 0 70px}.topbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:26px;display:flex}.topbar h1{margin-bottom:4px}.header-actions{gap:10px;display:flex}.alert{border-radius:14px;margin:16px 0;padding:14px 16px;font-weight:700}.alert.success{color:#12643b;background:#e3f5e9}.alert.error{color:#a52d2d;background:#fde8e8}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0 38px;display:grid}.summary-grid article{background:#fff;border:1px solid #e1e8e3;border-radius:22px;padding:24px;box-shadow:0 10px 35px #1f3a2b0f}.summary-grid strong{color:#167847;font-size:34px;display:block}.summary-grid span{color:#647069;font-weight:700}.section-header{justify-content:space-between;align-items:end;margin:28px 0 16px;display:flex}.orders-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.order-card{background:#fff;border:1px solid #dfe7e1;border-radius:24px;padding:22px;box-shadow:0 14px 36px #1b392812}.order-head{justify-content:space-between;align-items:start;gap:16px;display:flex}.order-head h3{margin-bottom:0;font-size:22px}.order-number{color:#167847;margin-bottom:5px;font-weight:900}.status{background:#edf1ee;border-radius:999px;flex:none;padding:8px 11px;font-size:12px;font-weight:900}.status-ready{color:#7a5400;background:#fff0c9}.status-out_for_delivery{color:#2657a5;background:#e3ecff}.status-delivered{color:#11623a;background:#ddf5e5}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0;display:grid}.info-grid div{min-width:0}.info-grid span{color:#7a867f;margin-bottom:4px;font-size:12px;font-weight:700;display:block}.info-grid strong,.info-grid a{color:#25352c;overflow-wrap:anywhere;font-size:14px}.delivery-meta{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.delivery-meta span{color:#526158;background:#f1f5f2;border-radius:10px;padding:7px 10px;font-size:12px;font-weight:700}.note-box{background:#fff8e7;border:1px solid #f5e2af;border-radius:14px;margin:16px 0;padding:14px}.note-box strong{color:#795b12;margin-bottom:5px;font-size:13px;display:block}.note-box p{color:#5b4a22;margin:0}.items-list{border-top:1px solid #edf1ee;border-bottom:1px solid #edf1ee;margin:18px 0}.item-row{justify-content:space-between;gap:16px;padding:12px 0;display:flex}.item-row+.item-row{border-top:1px solid #edf1ee}.item-row span{min-width:0}.item-row small{color:#7d8982;margin-top:3px;display:block}.card-actions{gap:10px;display:grid}.delivery-confirm{grid-template-columns:145px 1fr;gap:10px;display:grid}.delivery-confirm input{text-align:center;letter-spacing:.18em;font-size:18px;font-weight:900}.empty-state{text-align:center;background:#ffffffa6;border:1px dashed #cbd8d0;border-radius:24px;grid-column:1/-1;padding:52px 24px}.empty-state>span{color:#167847;background:#def3e5;border-radius:50%;place-items:center;width:54px;height:54px;margin:0 auto 16px;font-size:26px;font-weight:900;display:grid}.empty-state h3{margin-bottom:7px}.empty-state p{color:#6f7b74;margin-bottom:0}.delivered-section{margin-top:46px}.delivered-list{gap:10px;display:grid}.delivered-list article{background:#fff;border:1px solid #e1e8e3;border-radius:16px;justify-content:space-between;gap:18px;padding:16px 18px;display:flex}.delivered-list div{gap:3px;display:grid}.delivered-list div:last-child{text-align:right}.delivered-list span{color:#748078;font-size:13px}@media (width<=760px){.app-shell{width:min(100% - 22px,620px);padding-top:20px}.topbar{flex-direction:column;align-items:start}.header-actions{width:100%}.header-actions button{flex:1}.orders-grid{grid-template-columns:1fr}.summary-grid article{padding:18px}.info-grid,.delivery-confirm{grid-template-columns:1fr}.login-card{border-radius:22px;padding:26px 22px}}@media (width<=430px){.summary-grid{gap:10px}.summary-grid strong{font-size:28px}.summary-grid span{font-size:12px}.order-card{padding:18px}.order-head{align-items:flex-start}}
