.tlpoh [hidden] { display:none!important; }
.tlpoh,
.tlpoh * { box-sizing: border-box; }
.tlpoh { --tlpoh-accent:#1fa968; --tlpoh-ink:#14231b; --tlpoh-muted:#6b776f; --tlpoh-line:#dfe7e1; --tlpoh-soft:#f3f8f4; color:var(--tlpoh-ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.tlpoh-shell { width:min(1180px,calc(100% - 28px)); margin:28px auto; }
.tlpoh-brand { display:flex; align-items:center; gap:14px; margin-bottom:22px; }
.tlpoh-brand-mark { width:58px; height:58px; border-radius:18px; background:#fff; border:1px solid var(--tlpoh-line); display:grid; place-items:center; overflow:hidden; box-shadow:0 10px 30px rgba(20,35,27,.08); }
.tlpoh-brand-mark img { width:100%; height:100%; object-fit:contain; padding:7px; }
.tlpoh-brand-mark span { font-weight:900; color:var(--tlpoh-accent); }
.tlpoh-brand>div:last-child>span,.tlpoh-eyebrow { display:block; color:var(--tlpoh-accent); text-transform:uppercase; letter-spacing:.13em; font-size:11px; font-weight:800; }
.tlpoh-brand h2 { margin:3px 0 0; font-size:clamp(24px,3vw,38px); line-height:1.05; }
.tlpoh-loader { min-height:360px; display:grid; place-items:center; align-content:center; gap:15px; border:1px solid var(--tlpoh-line); border-radius:28px; background:#fff; }
.tlpoh-loader p,.tlpoh-detail-loading p { margin:0; color:var(--tlpoh-muted); font-weight:700; }
.tlpoh-spinner { width:34px; height:34px; border:3px solid #d9e8de; border-top-color:var(--tlpoh-accent); border-radius:50%; animation:tlpoh-spin .75s linear infinite; }
@keyframes tlpoh-spin { to { transform:rotate(360deg); } }
.tlpoh-login { min-height:500px; display:grid; place-items:center; padding:32px 0; border-radius:30px; background:radial-gradient(circle at top left,rgba(31,169,104,.17),transparent 42%),linear-gradient(140deg,#f2f9f4,#fff); border:1px solid var(--tlpoh-line); }
.tlpoh-login-card { width:min(490px,calc(100% - 30px)); background:#fff; padding:clamp(24px,5vw,42px); border-radius:26px; box-shadow:0 22px 70px rgba(20,35,27,.13); }
.tlpoh-login-card h3 { margin:8px 0 10px; font-size:clamp(25px,4vw,38px); line-height:1.08; }
.tlpoh-login-card>p { margin:0 0 24px; color:var(--tlpoh-muted); line-height:1.6; }
.tlpoh-login label,.tlpoh-filters label { display:grid; gap:7px; color:#4f5b53; font-size:12px; font-weight:800; }
.tlpoh input,.tlpoh select { width:100%; min-height:48px; padding:0 14px; border:1px solid #ccd8cf; border-radius:13px; background:#fff; color:var(--tlpoh-ink); font:inherit; outline:none; }
.tlpoh input:focus,.tlpoh select:focus { border-color:var(--tlpoh-accent); box-shadow:0 0 0 3px rgba(31,169,104,.14); }
.tlpoh-login input { min-height:58px; text-align:center; font-size:22px; font-weight:800; letter-spacing:.12em; }
.tlpoh button { font:inherit; cursor:pointer; }
.tlpoh-login button[type=submit],.tlpoh-filters button[type=submit] { width:100%; min-height:52px; margin-top:14px; padding:0 18px; display:flex; align-items:center; justify-content:space-between; border:0; border-radius:14px; background:var(--tlpoh-accent); color:#fff; font-weight:800; }
.tlpoh-login button:disabled,.tlpoh button:disabled { cursor:not-allowed; opacity:.55; }
.tlpoh-message { min-height:20px; margin-top:9px; color:#b42318; font-size:13px; font-weight:700; }
.tlpoh-dashboard-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:18px; padding:24px; border:1px solid var(--tlpoh-line); border-radius:24px; background:#fff; }
.tlpoh-dashboard-head h3 { margin:5px 0 4px; font-size:clamp(25px,4vw,38px); line-height:1.05; }
.tlpoh-dashboard-head p { margin:0; color:var(--tlpoh-muted); }
.tlpoh-head-actions { display:flex; gap:9px; flex-wrap:wrap; }
.tlpoh-secondary,.tlpoh-logout,.tlpoh-reset { min-height:42px; padding:0 15px; border:1px solid var(--tlpoh-line); border-radius:12px; background:#fff; color:var(--tlpoh-ink); font-weight:800; }
.tlpoh-logout { color:#a63a31; }
.tlpoh-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; margin-bottom:18px; }
.tlpoh-stat-card { min-height:120px; padding:21px; border:1px solid var(--tlpoh-line); border-radius:20px; background:linear-gradient(150deg,#fff,#f8fbf9); box-shadow:0 10px 28px rgba(20,35,27,.05); }
.tlpoh-stat-card span { display:block; color:var(--tlpoh-muted); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.tlpoh-stat-card strong { display:block; margin-top:18px; font-size:clamp(22px,3vw,32px); line-height:1; }
.tlpoh-filters { display:grid; grid-template-columns:1.5fr repeat(5,minmax(120px,1fr)); gap:11px; padding:18px; border:1px solid var(--tlpoh-line); border-radius:21px; background:#fff; }
.tlpoh-filter-actions { grid-column:1/-1; display:flex; justify-content:flex-end; gap:9px; }
.tlpoh-filter-actions button { width:auto; min-width:140px; margin:0; }
.tlpoh-results-message { min-height:42px; padding:15px 2px 8px; color:var(--tlpoh-muted); font-size:13px; font-weight:700; }
.tlpoh-orders { display:grid; gap:13px; }
.tlpoh-order-card { border:1px solid var(--tlpoh-line); border-radius:22px; background:#fff; overflow:hidden; box-shadow:0 10px 28px rgba(20,35,27,.045); }
.tlpoh-order-main { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding:20px 20px 12px; }
.tlpoh-order-title span { color:var(--tlpoh-muted); font-size:12px; font-weight:700; }
.tlpoh-order-title h4 { margin:4px 0 0; font-size:22px; }
.tlpoh-badge { display:inline-flex; align-items:center; min-height:30px; padding:0 11px; border-radius:999px; background:#eef3ef; color:#4c5a50; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.05em; white-space:nowrap; }
.tlpoh-badge--new,.tlpoh-badge--confirmed { background:#e9f4ff; color:#1766a3; }
.tlpoh-badge--preparing,.tlpoh-badge--ready,.tlpoh-badge--out-for-delivery { background:#fff4d9; color:#8b5b00; }
.tlpoh-badge--completed { background:#e7f8ed; color:#13753d; }
.tlpoh-badge--cancelled,.tlpoh-badge--refunded { background:#feebea; color:#b42318; }
.tlpoh-badge--awaiting_payment { background:#fff3cd; color:#765700; }
.tlpoh-badge--payment_expired,.tlpoh-badge--payment_failed { background:#feebea; color:#b42318; }
.tlpoh-order-info { display:grid; grid-template-columns:1.4fr 1.2fr .8fr .8fr; gap:10px; padding:0 20px 18px; }
.tlpoh-order-info>div { min-width:0; padding:13px; border-radius:14px; background:var(--tlpoh-soft); }
.tlpoh-order-info span { display:block; color:var(--tlpoh-muted); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.tlpoh-order-info strong { display:block; margin-top:5px; overflow-wrap:anywhere; }
.tlpoh-order-info small { display:block; margin-top:3px; color:var(--tlpoh-muted); }
.tlpoh-fee { width:max-content; padding:3px 7px; border-radius:999px; font-weight:800; }
.tlpoh-fee--pending { background:#fff1d6; color:#8c5b00!important; }
.tlpoh-fee--approved { background:#e8f3ff; color:#145e98!important; }
.tlpoh-fee--paid { background:#e5f6eb; color:#14743d!important; }
.tlpoh-fee--void { background:#f0f0f0; color:#666!important; }
.tlpoh-view { width:100%; min-height:50px; padding:0 20px; display:flex; align-items:center; justify-content:space-between; border:0; border-top:1px solid var(--tlpoh-line); background:#fbfdfb; color:var(--tlpoh-accent); font-weight:900; }
.tlpoh-view:hover { background:#f1f8f3; }
.tlpoh-pagination { display:flex; align-items:center; justify-content:center; gap:14px; padding:22px 0; }
.tlpoh-pagination button { min-height:42px; padding:0 16px; border:1px solid var(--tlpoh-line); border-radius:12px; background:#fff; font-weight:800; }
.tlpoh-pagination span { color:var(--tlpoh-muted); font-size:13px; font-weight:700; }
.tlpoh-empty { min-height:190px; display:grid; place-items:center; align-content:center; gap:10px; padding:24px; border:1px dashed #ccd8cf; border-radius:22px; color:var(--tlpoh-muted); text-align:center; background:#fff; }
.tlpoh-empty>span { font-size:34px; color:var(--tlpoh-accent); }
.tlpoh-modal[hidden] { display:none!important; }
.tlpoh-modal { position:fixed; inset:0; z-index:999999; display:grid; place-items:center; padding:18px; }
.tlpoh-modal-backdrop { position:absolute; inset:0; background:rgba(10,20,14,.72); backdrop-filter:blur(5px); }
.tlpoh-modal-card { position:relative; width:min(980px,100%); max-height:calc(100vh - 36px); overflow:auto; border-radius:26px; background:#f7faf8; box-shadow:0 30px 100px rgba(0,0,0,.3); }
.tlpoh-modal-close { position:sticky; top:14px; z-index:3; float:right; width:42px; height:42px; margin:14px 14px -56px 0; border:1px solid var(--tlpoh-line); border-radius:50%; background:#fff; color:#25352a; font-size:27px; line-height:1; box-shadow:0 5px 18px rgba(0,0,0,.08); }
body.tlpoh-modal-open { overflow:hidden; }
.tlpoh-modal-content { min-height:300px; }
.tlpoh-detail-loading { min-height:360px; display:grid; place-items:center; align-content:center; gap:14px; }
.tlpoh-detail { padding:clamp(20px,4vw,38px); }
.tlpoh-detail-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding-right:50px; margin-bottom:18px; }
.tlpoh-detail-head>div>span { color:var(--tlpoh-accent); text-transform:uppercase; letter-spacing:.11em; font-size:11px; font-weight:900; }
.tlpoh-detail-head h3 { margin:5px 0 3px; font-size:clamp(25px,4vw,38px); }
.tlpoh-detail-head p { margin:0; color:var(--tlpoh-muted); }
.tlpoh-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.tlpoh-detail-card,.tlpoh-detail-section { padding:20px; border:1px solid var(--tlpoh-line); border-radius:20px; background:#fff; }
.tlpoh-detail-card h4,.tlpoh-detail-section h4 { margin:0 0 13px; font-size:17px; }
.tlpoh-detail-row { display:flex; justify-content:space-between; gap:15px; padding:9px 0; border-bottom:1px solid #edf1ee; }
.tlpoh-detail-row:last-child { border-bottom:0; }
.tlpoh-detail-row span { color:var(--tlpoh-muted); font-size:13px; }
.tlpoh-detail-row strong { max-width:65%; text-align:right; overflow-wrap:anywhere; font-size:13px; }
.tlpoh-detail-section { margin-top:13px; }
.tlpoh-section-title { display:flex; justify-content:space-between; align-items:center; gap:15px; }
.tlpoh-section-title>span { color:var(--tlpoh-muted); font-size:13px; font-weight:700; }
.tlpoh-salads { display:grid; gap:12px; }
.tlpoh-salad-card { border:1px solid var(--tlpoh-line); border-radius:16px; overflow:hidden; }
.tlpoh-salad-head { display:flex; justify-content:space-between; gap:12px; padding:13px 15px; background:var(--tlpoh-soft); }
.tlpoh-salad-head>div { min-width:0; }
.tlpoh-salad-head span { font-weight:800; }
.tlpoh-salad-head small { display:block; margin-top:3px; color:var(--tlpoh-muted); font-size:11px; font-weight:700; }
.tlpoh-ingredient-list { padding:5px 15px; }
.tlpoh-ingredient { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding:11px 0; border-bottom:1px solid #edf1ee; }
.tlpoh-ingredient:last-child { border-bottom:0; }
.tlpoh-ingredient>div { min-width:0; }
.tlpoh-ingredient strong { display:inline; }
.tlpoh-ingredient small { display:block; margin-top:4px; color:var(--tlpoh-muted); line-height:1.45; }
.tlpoh-ingredient>span { white-space:nowrap; font-weight:800; }
.tlpoh-halal { display:inline-flex; margin-left:7px; padding:2px 6px; border-radius:999px; background:#e8f7ed; color:#14743d; font-size:10px; font-weight:900; text-transform:uppercase; }
.tlpoh-salad-nutrition { display:grid; gap:4px; padding:12px 15px; border-top:1px solid var(--tlpoh-line); background:#fbfdfb; }
.tlpoh-salad-nutrition b { font-size:12px; color:var(--tlpoh-accent); text-transform:uppercase; letter-spacing:.05em; }
.tlpoh-salad-nutrition span { font-size:13px; font-weight:700; }
.tlpoh-salad-nutrition small { color:var(--tlpoh-muted); }
.tlpoh-notes { margin-top:13px; }
.tlpoh-notes p { margin:0; color:#536158; line-height:1.6; }
.tlpoh-bottom-grid { margin-top:13px; }
.tlpoh-detail-total { display:flex; justify-content:space-between; align-items:center; margin-top:8px; padding-top:13px; border-top:2px solid var(--tlpoh-line); }
.tlpoh-detail-total strong { font-size:22px; color:var(--tlpoh-accent); }
.tlpoh.is-busy .tlpoh-orders { opacity:.55; pointer-events:none; }
.tlpoh-error { padding:18px; border:1px solid #f2b8b5; border-radius:14px; background:#fff0ef; color:#9b241b; }
@media (max-width:980px) {
  .tlpoh-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tlpoh-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tlpoh-search { grid-column:1/-1; }
  .tlpoh-order-info { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .tlpoh-shell { width:min(100% - 16px,1180px); margin:14px auto; }
  .tlpoh-brand { padding:0 5px; }
  .tlpoh-dashboard-head { flex-direction:column; padding:18px; }
  .tlpoh-head-actions { width:100%; }
  .tlpoh-head-actions button { flex:1; }
  .tlpoh-stats { gap:8px; }
  .tlpoh-stat-card { min-height:100px; padding:16px; }
  .tlpoh-stat-card strong { margin-top:13px; font-size:21px; }
  .tlpoh-filters { grid-template-columns:1fr; padding:13px; }
  .tlpoh-search,.tlpoh-filter-actions { grid-column:auto; }
  .tlpoh-filter-actions { display:grid; grid-template-columns:1fr 1fr; }
  .tlpoh-filter-actions button { min-width:0; }
  .tlpoh-order-main { padding:16px 16px 10px; }
  .tlpoh-order-title h4 { font-size:19px; }
  .tlpoh-order-info { grid-template-columns:1fr 1fr; padding:0 16px 15px; gap:7px; }
  .tlpoh-order-info>div { padding:10px; }
  .tlpoh-view { padding:0 16px; }
  .tlpoh-modal { padding:0; }
  .tlpoh-modal-card { width:100%; max-height:100vh; height:100vh; border-radius:0; }
  .tlpoh-detail { padding:18px 12px 30px; }
  .tlpoh-detail-head { flex-direction:column; padding-right:45px; }
  .tlpoh-detail-grid { grid-template-columns:1fr; }
  .tlpoh-detail-card,.tlpoh-detail-section { padding:15px; border-radius:16px; }
  .tlpoh-ingredient { gap:10px; }
  .tlpoh-ingredient>span { font-size:13px; }
  .tlpoh-detail-row strong { max-width:58%; }
}
