:root{--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}body.ipad-page{overflow-x:hidden;min-height:100dvh}.ipad-shell{width:min(1440px,100%);margin:auto;padding:calc(14px + var(--safe-top)) 18px calc(18px + var(--safe-bottom))}.ipad-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.shift-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.touch{min-height:48px;padding:12px 17px;font-size:14px}.connection-pill{display:inline-flex;align-items:center;min-height:42px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:rgba(255,255,255,.035)}.connection-pill.online{color:#b8f3d9;border-color:rgba(54,211,153,.32);background:rgba(54,211,153,.08)}.connection-pill.offline{color:#ffd0d0;border-color:rgba(255,107,107,.3);background:rgba(255,107,107,.08)}.ipad-banner{padding:13px 16px;margin-bottom:14px;border:1px solid rgba(241,204,120,.35);border-radius:15px;background:rgba(214,168,77,.08);line-height:1.45}.ipad-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.ipad-summary article{border:1px solid var(--line);border-radius:17px;padding:14px 16px;background:rgba(17,36,58,.88)}.ipad-summary span{display:block;color:var(--muted);font-size:12px}.ipad-summary strong{display:block;margin-top:4px;font-size:24px}.ipad-workspace{display:grid;grid-template-columns:minmax(330px,.78fr) minmax(0,1.5fr);gap:14px;min-height:calc(100dvh - 190px)}.queue-panel,.customer-panel{border:1px solid var(--line);border-radius:20px;background:rgba(13,27,45,.96);overflow:hidden}.panel-title{display:flex;align-items:center;justify-content:space-between;padding:17px 18px;border-bottom:1px solid var(--line)}.panel-title h2{margin:3px 0 0;font-size:22px}.queue-list{display:grid;gap:10px;padding:12px;max-height:calc(100dvh - 290px);overflow:auto}.queue-card{width:100%;border:1px solid var(--line);border-radius:16px;padding:14px;text-align:left;color:var(--text);background:rgba(255,255,255,.035);cursor:pointer}.queue-card.active{border-color:rgba(241,204,120,.58);background:rgba(214,168,77,.1)}.queue-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.queue-card h3{margin:0;font-size:19px}.queue-card p{margin:6px 0 0;color:var(--muted)}.queue-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.queue-chip{padding:6px 9px;border-radius:999px;font-size:12px;background:rgba(255,255,255,.06)}.queue-chip.new{color:#ffe3a2}.queue-chip.returning{color:#b8f3d9}.empty-queue{padding:36px 20px;color:var(--muted);text-align:center}.customer-panel{padding:20px;overflow:auto;max-height:calc(100dvh - 190px)}.welcome-empty{min-height:460px;display:grid;place-items:center;align-content:center;text-align:center;color:var(--muted)}.welcome-icon{width:82px;height:82px;display:grid;place-items:center;border:1px solid rgba(241,204,120,.42);border-radius:24px;color:var(--gold2);font-size:24px;font-weight:900;background:rgba(214,168,77,.08)}.customer-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--line)}.customer-hero h2{font-size:32px;margin:5px 0}.plate-display{display:inline-flex;padding:8px 13px;border:3px solid #dce4ec;border-radius:8px;background:#f7f9fb;color:#111820;font-family:ui-monospace,monospace;font-size:18px;font-weight:900;letter-spacing:.12em}.wait-box{text-align:right}.wait-box span{display:block;color:var(--muted);font-size:12px}.wait-box strong{font-size:28px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin:16px 0}.detail{padding:13px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.03)}.detail small{display:block;color:var(--muted);margin-bottom:5px}.customer-actions{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.giant{min-height:58px;padding:15px 21px;font-size:17px}.ipad-form{display:grid;gap:12px;margin-top:15px}.ipad-form .form-row{grid-template-columns:1fr 1fr}.ipad-form textarea{width:100%;min-height:88px;padding:12px 13px;border-radius:11px;border:1px solid var(--line);background:rgba(255,255,255,.045);color:var(--text);font:inherit}.history{margin-top:18px}.history-list{display:grid;gap:8px}.history-item{padding:11px 13px;border-left:3px solid rgba(214,168,77,.5);background:rgba(255,255,255,.025);border-radius:0 10px 10px 0}.arrival-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;background:rgba(1,8,16,.78);backdrop-filter:blur(8px)}.arrival-modal[hidden]{display:none}.arrival-card{width:min(660px,100%);padding:30px;border:1px solid rgba(241,204,120,.44);border-radius:26px;background:#0d1b2d;text-align:center}.arrival-card h2{font-size:40px;margin:10px 0}.arrival-card p{font-size:20px;color:var(--muted);line-height:1.45}.arrival-badge{display:inline-flex;padding:8px 12px;border-radius:999px;color:#ffe4a8;background:rgba(214,168,77,.1)}.arrival-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}@media(max-width:900px){.ipad-workspace{grid-template-columns:1fr;min-height:auto}.queue-list,.customer-panel{max-height:none}.queue-list{grid-template-columns:repeat(2,1fr)}.ipad-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.ipad-topbar{align-items:flex-start}.shift-controls{justify-content:flex-start}.ipad-summary,.queue-list,.detail-grid,.ipad-form .form-row,.arrival-actions{grid-template-columns:1fr}.customer-hero{display:block}.wait-box{text-align:left;margin-top:12px}.customer-hero h2{font-size:27px}.arrival-card h2{font-size:30px}.arrival-card p{font-size:17px}}

/* Hidden iPad light theme. There is intentionally no visible theme control. */
html[data-theme="light"] body.ipad-page{background:#f4f7fb}
html[data-theme="light"] .queue-panel,
html[data-theme="light"] .customer-panel{background:rgba(255,255,255,.98);box-shadow:0 8px 28px rgba(15,23,42,.045)}
html[data-theme="light"] .ipad-summary article{background:#fff}
html[data-theme="light"] .queue-card{background:#fff;color:var(--text)}
html[data-theme="light"] .queue-card.active{border-color:rgba(156,109,20,.42);background:rgba(184,132,37,.075)}
html[data-theme="light"] .queue-chip{background:rgba(15,23,42,.055)}
html[data-theme="light"] .queue-chip.new{color:#8a6415}
html[data-theme="light"] .queue-chip.returning{color:#176f51}
html[data-theme="light"] .connection-pill{background:#fff}
html[data-theme="light"] .connection-pill.online{color:#176f51;background:rgba(21,135,95,.07);border-color:rgba(21,135,95,.24)}
html[data-theme="light"] .connection-pill.offline{color:#a33d3d;background:rgba(196,71,71,.07);border-color:rgba(196,71,71,.22)}
html[data-theme="light"] .ipad-banner{background:rgba(184,132,37,.07)}
html[data-theme="light"] .ipad-form textarea{background:#fff;color:var(--text)}
html[data-theme="light"] .arrival-modal{background:rgba(20,30,45,.42)}
html[data-theme="light"] .arrival-card{background:#fff;box-shadow:0 18px 60px rgba(15,23,42,.22)}
html[data-theme="light"] .arrival-badge{color:#805d16;background:rgba(184,132,37,.09)}

/* ODS iPad refinement */
.ipad-brand{gap:12px}.ipad-brand .mark{width:54px;height:48px;font-size:15px;letter-spacing:.02em}.brand-location{font-size:18px;font-weight:800;color:var(--text)}
.compact-summary{grid-template-columns:repeat(2,1fr)}
.welcome-empty{min-height:460px}.welcome-empty .welcome-icon{width:94px;height:94px;font-size:22px}
.ipad-form select{width:100%;padding:12px 13px;border-radius:11px;border:1px solid var(--line);background:#11243a;color:var(--text);font:inherit}
.profile-hint{padding:10px 12px;border:1px solid var(--line);border-radius:12px;color:var(--muted);font-size:12px;background:rgba(255,255,255,.025)}
.recommended{display:inline-flex;margin-left:5px;padding:2px 6px;border-radius:999px;font-size:10px;font-weight:800;color:#b8f3d9;background:rgba(54,211,153,.08)}
html[data-theme="light"] .ipad-form select{background:#fff;color:var(--text)}
html[data-theme="light"] .profile-hint{background:#f8fafc}
html[data-theme="light"] .recommended{color:#176f51;background:rgba(21,135,95,.08)}
html[data-theme="light"] .btn.primary{background:linear-gradient(135deg,#4f8fe8,#2f6fc8);color:#fff;border-color:rgba(47,111,200,.2);box-shadow:0 5px 16px rgba(47,111,200,.16)}
html[data-theme="light"] .btn.primary:hover{background:linear-gradient(135deg,#4384dd,#2865bd)}
html[data-theme="light"] .queue-card.active{border-color:rgba(52,119,201,.36);background:rgba(52,119,201,.07)}
html[data-theme="light"] .welcome-icon{color:#2f6fc8;border-color:rgba(52,119,201,.28);background:rgba(52,119,201,.06)}
@media(max-width:650px){.brand-location{font-size:16px}.compact-summary{grid-template-columns:repeat(2,1fr)}}

/* ODS iPad empty-state + Live Lane blue refinement */
.queue-panel .panel-title .eyebrow{color:var(--blue)}
.welcome-empty{gap:18px}
.welcome-message{max-width:460px;margin:0 auto;color:var(--muted);font-size:16px;line-height:1.55;font-weight:500}
html[data-theme="light"] .queue-panel .panel-title .eyebrow{color:var(--blue)}
@media(max-width:650px){.welcome-message{max-width:330px;font-size:15px}}

/* ODS required year / make / model selector */
.vehicle-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.vehicle-picker select:disabled{opacity:.62;cursor:wait}
@media(max-width:760px){.vehicle-picker{grid-template-columns:1fr}}


/* ODS iPad left queue / right customer layout */
.ipad-workspace.ipad-workspace-split{
  grid-template-columns:minmax(300px,.78fr) minmax(0,1.5fr);
  align-items:stretch;
  min-height:calc(100dvh - 104px);
}
.queue-column{
  min-width:0;
  min-height:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  gap:14px;
}
.queue-column .queue-summary{
  margin:0;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.queue-column .queue-summary article{
  min-width:0;
  padding:12px 14px;
  border-radius:16px;
}
.queue-column .queue-summary span{font-size:11px}
.queue-column .queue-summary strong{font-size:22px;margin-top:3px}
.queue-column .queue-panel{
  min-height:0;
  height:100%;
  display:flex;
  flex-direction:column;
}
.queue-column .queue-list{
  flex:1 1 auto;
  min-height:0;
  max-height:none;
  overflow:auto;
}
.ipad-workspace-split .customer-panel{
  min-width:0;
  min-height:0;
  height:100%;
  max-height:none;
}
.ipad-workspace-split .welcome-empty{
  min-height:100%;
  height:100%;
}

@media(max-width:900px){
  .ipad-workspace.ipad-workspace-split{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .queue-column{
    grid-template-rows:auto auto;
  }
  .queue-column .queue-panel,
  .ipad-workspace-split .customer-panel{
    height:auto;
  }
  .ipad-workspace-split .welcome-empty{
    min-height:460px;
    height:auto;
  }
}


/* ODS iPad native-feel no-zoom patch */
/* Keep normal vertical/horizontal scrolling, but do not allow pinch zoom. */
body.ipad-page{
  touch-action:pan-x pan-y;
  -ms-touch-action:pan-x pan-y;
}
/* Fast taps on controls should act like app controls, not browser double-tap zoom. */
body.ipad-page button,
body.ipad-page a,
body.ipad-page input,
body.ipad-page select,
body.ipad-page textarea,
body.ipad-page [role="button"]{
  touch-action:manipulation;
}
