/* ORIGIN TEA V73 — polished black & white */
:root{
  --bg:#f4f4f3;--card:#fff;--text:#0f0f0f;--muted:#737373;--line:#e9e9e7;--soft:#f1f1ef;
  --r:18px;--r-sm:12px;--shadow:0 1px 2px rgba(0,0,0,.04),0 6px 20px rgba(0,0,0,.04);
}
html,body{overflow-x:hidden}
body{font-family:'Inter',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;letter-spacing:-.005em}

/* ---------- login ---------- */
.login{background:radial-gradient(120% 80% at 50% 0%,#262626 0%,#0a0a0a 60%)}
.login-card{border-radius:28px;padding:30px 24px 24px;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.login-logo{width:72px;height:72px;border-radius:18px}
.eyebrow{font-size:11px;letter-spacing:.32em;margin-top:14px}
.login-card h1{font-size:30px}
.v73clock{display:flex;flex-direction:column;align-items:center;margin:10px 0 2px}
.v73clock b{font-size:44px;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1}
.v73clock span{font-size:13px;color:var(--muted);margin-top:4px}
.pin{border:1.5px solid #e2e2e2;background:var(--soft);font-size:24px;letter-spacing:10px;padding:16px}
.pin:focus{border-color:#111;background:#fff}
.login-actions .btn.primary{border-radius:14px}
.login-actions .btn.secondary{border-radius:14px;background:#fff;border:1.5px solid #111}

/* ---------- header ---------- */
.header{background:rgba(255,255,255,.92)!important;backdrop-filter:saturate(1.4) blur(16px);border-bottom:1px solid var(--line)!important;padding:10px 62px 10px 62px!important;min-height:62px}
.brand{gap:10px;min-width:0}
.brand img{width:34px;height:34px;border-radius:10px}
.brand b{font-size:15px;white-space:nowrap}
.brand span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}
.header-right{display:flex;align-items:center;gap:6px;min-width:0}
.header select{border:1px solid var(--line);background:var(--soft);border-radius:10px;padding:7px 8px;font-size:13px;max-width:130px}
.v73single #outletSwitchV55 button{display:none!important}
.v73single #outletSwitchV55 select{appearance:none;-webkit-appearance:none;background:transparent;border:0;padding:0;font-weight:700;color:var(--muted);pointer-events:none;max-width:110px;text-overflow:ellipsis}
#outletSwitchV55{display:flex;align-items:center;gap:4px;min-width:0}
#outletSwitchV55 button{padding:6px 9px!important;border-radius:10px!important;background:var(--soft)!important;border:0!important}
.sync{font-size:10px!important;padding:4px 8px!important}
#originBackButtonV12,#notificationBell{width:40px!important;height:40px!important;padding:0!important;border-radius:999px!important;display:grid!important;place-items:center;background:#fff!important;color:#111!important;border:1px solid var(--line)!important;box-shadow:0 2px 10px rgba(0,0,0,.06)!important;top:11px!important}
#originBackButtonV12{left:12px!important}
#notificationBell{right:12px!important;position:fixed!important}
#notificationBell .v73count{position:absolute;top:-4px;right:-4px;background:#111;color:#fff;font-style:normal;font-size:10px;font-weight:800;min-width:18px;height:18px;border-radius:999px;display:grid;place-items:center;padding:0 4px;border:2px solid #fff}
body:has(#login:not(.hidden)) #notificationBell{display:none!important}

/* ---------- page ---------- */
main{padding:18px 16px 110px}
.page h2{font-size:26px;font-weight:800;letter-spacing:-.025em;margin:2px 0 14px}
.page h3,.section h3{font-size:17px;font-weight:750;letter-spacing:-.01em}
.sub,.muted{color:var(--muted)}
.section{margin-top:22px}

/* cards + lists */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:16px}
.list-item{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.metric{font-size:28px;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.label{font-size:12px;color:var(--muted);font-weight:600}
.grid{gap:10px}
.kpi-mini{border-radius:14px;border:1px solid var(--line);box-shadow:none}
.kpi-mini b{font-variant-numeric:tabular-nums}
.info{background:#fff;border:1px solid var(--line);border-left:4px solid #111;border-radius:12px;color:#222;line-height:1.45}
.v72card{border:1px solid #111;box-shadow:var(--shadow)}

/* buttons */
.btn{border-radius:12px;padding:11px 15px;font-weight:700;font-size:14px;transition:transform .08s ease,background .15s ease;cursor:pointer}
.btn.small,.small.btn{padding:7px 11px;font-size:12.5px;border-radius:10px}
.btn.primary,.primary{background:#111;color:#fff;border:1px solid #111}
.btn.secondary,.secondary{background:var(--soft);color:#111;border:1px solid transparent}
.btn.secondary:hover{background:#e8e8e6}
.btn.danger,.danger{background:#fff1f1;color:#b00020;border:1px solid transparent}
.btn:active{transform:scale(.97)}
.toolbar{gap:8px}
.action-row{gap:6px}

/* forms */
.field label{font-size:12px;font-weight:650;color:#555;margin-bottom:6px}
.field input,.field select,.field textarea{background:var(--soft);border:1px solid transparent;border-radius:12px;padding:12px;font-size:15px}
.field input:focus,.field select:focus,.field textarea:focus{background:#fff;border-color:#111;outline:none}
input:focus,select:focus,textarea:focus{outline:none}

/* modal sheet */
.modal{background:rgba(0,0,0,.45);backdrop-filter:blur(4px)}
.sheet{border-radius:26px 26px 0 0;padding:10px 18px 26px;box-shadow:0 -10px 40px rgba(0,0,0,.2)}
.sheet::before{content:'';display:block;width:40px;height:5px;border-radius:9px;background:#d9d9d9;margin:0 auto 10px}
.sheet-head{position:sticky;top:-10px;background:#fff;z-index:5;padding:6px 0 10px;margin-bottom:4px;border-bottom:1px solid var(--line)}
.sheet-head h3{font-size:18px;font-weight:800;letter-spacing:-.01em}
.sheet-head .icon{width:34px;height:34px;border-radius:999px;border:0;background:var(--soft);font-size:18px}

/* bottom bar */
nav.bottom{background:rgba(255,255,255,.94)!important;backdrop-filter:saturate(1.4) blur(16px);border-top:1px solid var(--line)!important;padding:6px 6px calc(8px + env(safe-area-inset-bottom))!important}
nav.bottom button{color:#8b8b8b;font-size:10.5px;font-weight:650;display:flex;flex-direction:column;align-items:center;gap:3px}
nav.bottom button span{display:grid!important;place-items:center;width:52px;height:30px;border-radius:999px;transition:background .15s ease}
nav.bottom button.active{color:#111}
nav.bottom button.active span{background:#111;color:#fff;transform:none}

/* ---------- home ---------- */
.v73hero{padding:4px 2px 16px}
.v73hero .v73date{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.v73hero h1{font-size:30px;font-weight:850;letter-spacing:-.035em;margin:4px 0 2px;line-height:1.1}
.v73hero .v73outlet{font-size:14px;color:var(--muted)}
.v73tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}
.v73tile{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 4px 10px;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:11.5px;font-weight:700;color:#111;box-shadow:0 1px 2px rgba(0,0,0,.03);cursor:pointer}
.v73tile span{width:40px;height:40px;border-radius:12px;background:#111;color:#fff;display:grid;place-items:center}
.v73tile span svg{width:20px;height:20px}
.v73tile:active{transform:scale(.96)}
.v73hide{display:none!important}
.v73chatcard{margin:0 0 14px!important}
.v73chatcard h3{margin:0 0 2px}
.v73h{font-size:18px!important;margin:22px 0 10px!important}
@media (max-width:360px){.v73tiles{grid-template-columns:repeat(3,1fr)}}

/* ---------- More ---------- */
.v73grid{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;overflow:visible!important}
.v73grid button{white-space:normal!important;text-align:left;background:#fff!important;border:1px solid var(--line)!important;border-radius:14px!important;padding:14px!important;font-weight:700}
.v73grid .v73leavebtn{background:#111!important;color:#fff!important;border-color:#111!important}
.v73rowcard{margin:0 0 10px!important}
.v73rowcard h3{margin:0 0 2px}

/* ---------- ordering fixes ---------- */
#dashboard.page.active{display:flex;flex-direction:column}
#dashboard > *{order:10}
#dashboard > #v73Hero{order:1}
#dashboard > #v73Tiles{order:2}
#dashboard > #v72LeaveHome{order:3}
#dashboard > #myScheduleHomeV39{order:4}
#dashboard > #chatHomeV41{order:5}
#chatHomeV41{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px 16px!important;box-shadow:var(--shadow);margin:0 0 14px!important}
#chatHomeV41 h3{margin:0 0 2px}
#admin.page.active{display:flex;flex-direction:column}
#admin > *{order:10}
#admin > h2{order:1}
#admin > .v73grid{order:2;margin-bottom:14px}
#admin > .v73rowcard{order:3}

/* header: sync badge becomes a small dot, single outlet hides the switcher */
.sync{font-size:0!important;width:9px;height:9px;padding:0!important;border-radius:999px!important;flex:0 0 9px;border:0!important}
.sync.saved{background:#111!important}
.sync.saving{background:#a3a3a3!important;animation:v73pulse 1s infinite}
.sync.offline{background:#b00020!important}
@keyframes v73pulse{50%{opacity:.3}}
.v73single #outletSwitchV55{display:none!important}
.brand span{max-width:160px}
.v73grid button{color:#111!important}
#outletSwitchV55 button{display:none!important}
.header-right{gap:8px}
.brand{flex:1 1 auto;overflow:hidden}
.brand b{overflow:hidden;text-overflow:ellipsis;display:block}
