@import "./lot-geometry.css";
.admin-navigation { display:flex; gap:8px; border-bottom:1px solid var(--line); margin:0 0 30px; padding:0; overflow-x:auto; }
.admin-navigation a { padding:16px 20px; white-space:nowrap; text-decoration:none; font-size:14px; font-weight:650; border-bottom:3px solid transparent; color:var(--muted); }
.admin-navigation a[aria-current] { color:var(--blue); border-bottom-color:var(--blue); }
.admin-navigation a:hover { background:#eaf0f4; }
.shell:has(> .admin-navigation) { max-width:1360px; padding:0 32px 65px; }
.spot-detail-link { color:var(--blue); font-weight:700; text-decoration:none; }
.staff-page .spot-finder { display:flex; align-items:center; gap:14px; margin:0 0 18px; font-size:13px; }
.staff-page .spot-finder select { width:auto; min-width:200px; }
.staff-page .badge.muted { background:#edf0f2; color:#637386; }
.staff-page .badge.current,.staff-page .badge.prepaid { background:#e5effb; color:#194d91; }
.staff-page .badge.available { background:#eaf3df; color:#417025; }
.staff-page .badge.liened { background:#f9eeee; color:#6f2c2c; }
.staff-page { background:#f5f7f6; color:#122943; font-family:'Segoe UI',Arial,sans-serif; --panel:#fff; --brand-blue:#194d91; --brand-blue-dark:#12355f; --shadow:none; }
.staff-page .app-shell { max-width:1360px; padding:0 32px 60px; margin:auto; }
.staff-page .site-header { border:0; border-radius:16px; box-shadow:none; }
.staff-page .site-header a { color:white; }
.staff-page .site-header a.nav-pill { background:white; color:var(--blue); border-radius:30px; padding:13px 20px; }
.staff-page .topbar-session { border:0; padding:0; }
.staff-page #authSignOut { color:white; background:transparent; border:0; padding:9px 8px; font-size:13px; font-weight:400; }
.staff-page .staff-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:26px; }
.staff-page .staff-heading h1 { font-size:clamp(28px,3vw,40px); letter-spacing:-.035em; line-height:1.15; margin:6px 0 0; }
.staff-page .page-tools { border:0; padding:0; display:flex; gap:10px; }
.staff-page .icon-button { background:white; border:1px solid var(--line); color:var(--blue); box-shadow:none; }
.staff-page .workspace { margin:0; grid-template-columns:minmax(0,1fr) 340px; gap:24px; align-items:start; }
.staff-page .map-panel,.staff-page .details-panel,.staff-page .summary-card,.staff-page .report-panel,.staff-page .admin-panel,.staff-page .admin-action-card { border:1px solid var(--line); border-radius:14px; box-shadow:none; background:white; }
.staff-page .map-panel { padding:22px; }
.staff-page .map-toolbar { display:block; margin-bottom:18px; }
.staff-page .map-toolbar h2 { display:none; }
.staff-page .map-toolbar p { margin:0 0 14px; color:var(--muted); font-size:14px; }
.staff-page .legend { justify-content:flex-start; gap:12px; font-size:12px; }
.staff-page .lot-map { min-width:560px; min-height:720px; background:#f5f7f6; border:1px solid var(--line); border-radius:12px; box-shadow:none; }
.staff-page .lot-map::before { border:0; }
.staff-page .spot { border-radius:4px; min-height:0; font-size:11px; box-shadow:none; }
.staff-page .spot.selected { outline:3px solid var(--blue); outline-offset:2px; }
.staff-page .side-panel { gap:20px; }
.staff-page .summary-grid { gap:8px; }
.staff-page .summary-card { padding:15px 8px; }
.staff-page .summary-card span { font-size:27px; color:var(--blue); }
.staff-page .summary-card p { font-size:11px; }
.staff-page .details-panel { padding:22px; }
.staff-page .reports-shell,.staff-page .admin-shell { max-width:none; gap:20px; }
.staff-page .reports-toolbar { gap:8px; }
.staff-page .reports-toolbar button { background:white; border:1px solid var(--line); color:var(--muted); border-radius:24px; padding:11px 20px; }
.staff-page .reports-toolbar button.active { background:var(--navy); color:white; border-color:var(--navy); }
.staff-page .report-panel { padding:24px; }
.staff-page .report-heading { gap:20px; flex-wrap:wrap; }
.staff-page .report-body { border:1px solid var(--line); border-radius:8px; margin-top:16px; }
.staff-page table { font-size:13px; }
.staff-page th { background:#f2f5f6; color:#536578; font-size:12px; }
.staff-page td { padding:14px 12px; }
.staff-page tbody tr:hover { background:#f6f9fb; }
.staff-page input,.staff-page select,.staff-page textarea { border:1px solid #cdd7df; border-radius:7px; box-shadow:none; background:white; }
.staff-page button,.staff-page .button-link,.staff-page .admin-card-link { border-radius:7px; font-weight:600; box-shadow:none; }
.staff-page .admin-board { gap:20px; }
.staff-page .admin-action-card { padding:26px; grid-template-columns:48px minmax(0,1fr); align-items:start; min-height:210px; gap:18px; }
.staff-page .admin-action-card > button,.staff-page .admin-action-card > a,.staff-page .admin-action-card > form { grid-column:2; justify-self:start; }
.staff-page .admin-action-card h2 { font-size:20px; letter-spacing:-.02em; }
.staff-page .admin-action-card p:not(.eyebrow) { font-size:14px; line-height:1.6; }
.staff-page .admin-action-icon { width:46px; height:46px; border:0; background:#edf3f9; border-radius:12px; }
.staff-page .wide-action-card { grid-column:auto; }
.staff-page .modal-card,.staff-page dialog { border-radius:16px; border:1px solid var(--line); }
.staff-page .site-footer { margin:0 2vw 18px; }
.staff-page { scrollbar-gutter:stable; }
.staff-page.staff-modal-open { overflow:hidden; }
.staff-page *, .staff-page *::before, .staff-page *::after { box-sizing:border-box; }
.staff-page [hidden] { display:none!important; }
.staff-page button:disabled { cursor:not-allowed; opacity:.5; }
.staff-page button:focus-visible,.staff-page a:focus-visible,.staff-page input:focus-visible,.staff-page select:focus-visible,.staff-page summary:focus-visible { outline:3px solid #64a9f1; outline-offset:3px; }
.staff-page label { color:#43566b; font-weight:600; }
.staff-page h2 { font-size:22px; letter-spacing:-.025em; }
.staff-page h3 { font-size:16px; }
.staff-page .section-heading { margin-bottom:12px; }
.staff-page .eyebrow { margin-bottom:8px; }
.staff-page .modal { background:#10294366; overflow:hidden; padding:24px; z-index:60; }
.staff-page .modal-card { max-height:calc(100dvh - 48px); overflow:auto; overscroll-behavior:contain; }
.staff-page .modal-header, .staff-page .admin-history-panel > .admin-heading { position:sticky; top:0; background:white; z-index:6; padding:18px 20px; border-bottom:1px solid var(--line); margin:0 0 16px; }
.staff-page .modal-header h2, .staff-page .admin-heading h2 { margin:0; }
.staff-page .admin-history-card { overflow:hidden; }
.staff-page .admin-history-panel { padding:0; min-height:0; height:min(760px,calc(100dvh - 48px)); display:flex; flex-direction:column; }
.staff-page .history-admin-layout { grid-template-columns:260px minmax(0,1fr); border:0; padding:0 20px 20px; margin:0; min-height:0; flex:1; overflow:hidden; }
.staff-page .history-admin-list,.staff-page .history-admin-editor { overflow:auto; overscroll-behavior:contain; padding-right:8px; }
.staff-page .history-admin-list { display:flex; flex-direction:column; }
.staff-page .customer-history-list { min-height:0; max-height:none; }
.staff-page .history-admin-editor > .section-heading:first-of-type { background:white; box-shadow:none; border:0; border-bottom:1px solid var(--line); border-radius:0; padding:8px 0 12px; margin:0; }
.staff-page .history-rental-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.staff-page .history-rental-card { background:#f8fafb; padding:16px; }
.staff-page .email-recipient-group { padding:16px; }
.staff-page .notice-customer { flex-direction:row; justify-content:flex-start; }
.staff-page .report-column-list label { flex-direction:row; justify-content:flex-start; padding:9px 0; }
.staff-page input[type="checkbox"] { width:18px; height:18px; padding:0; accent-color:var(--blue); }
.staff-page dialog.email-preview { width:min(800px,calc(100vw - 40px)); max-width:none; height:min(850px,calc(100dvh - 40px)); max-height:calc(100dvh - 40px); padding:20px; overflow:hidden; }
.staff-page dialog.email-preview[open] { display:flex; flex-direction:column; gap:10px; }
.staff-page .email-preview iframe { flex:1; min-height:0; height:auto; margin:0; }
.staff-page .email-preview p { margin:0; font-size:13px; line-height:1.5; }
.staff-page .email-preview .email-tabs { margin:0; flex-shrink:0; }
.staff-page .report-sidebar { border-radius:0; }
.staff-page .report-table { white-space:normal; }
.staff-page .report-tools { min-width:0; }
.staff-page .report-heading { align-items:center; }
.staff-page .map-panel,.staff-page .side-panel { min-width:0; }
.staff-page .lot-map { min-height:560px; aspect-ratio:1.08; }
.staff-page .side-panel { position:sticky; top:16px; }
.staff-page .details-panel { max-height:calc(100dvh - 155px); overflow:auto; overscroll-behavior:contain; }
.staff-page .detail-grid { grid-template-columns:1fr; gap:0; }
.staff-page .detail-item { border:0; border-bottom:1px solid #edf0f2; border-radius:0; padding:10px 0; background:transparent; }
.staff-page .detail-item.wide { grid-column:auto; }
.staff-page .detail-item strong { overflow-wrap:anywhere; }
.staff-page .legend span { background:transparent; border:0; padding:0; }
.staff-page .map-toolbar { margin-bottom:12px; }
.staff-page .map-toolbar p { display:none; }
.staff-page .spot-finder { flex-direction:row; }
.staff-page .spot-disclosure { border-bottom:1px solid var(--line); padding:12px 0; }
.staff-page .spot-disclosure summary { cursor:pointer; color:var(--blue); font-size:13px; font-weight:650; }
.staff-page .detail-item { overflow-wrap:anywhere; }
.staff-page .detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 12px; }
.staff-page .detail-grid > :first-child { grid-column:1/-1; font-weight:650; font-size:17px; }
.staff-page .history-status { padding:10px 20px; margin:0; font-size:13px; color:var(--blue); background:#eef3f9; }
.staff-page .history-status.overdue { color:#a52a24; background:#fcecea; }
.staff-page .history-admin-editor,.staff-page .history-rental-list,.staff-page .history-rental-card { grid-template-columns:minmax(0,1fr); }
.staff-page .history-admin-editor * { min-width:0; }
.staff-page .history-admin-editor input,.staff-page .history-admin-editor select,.staff-page .history-admin-editor textarea { width:100%; }
.staff-page .history-payment-edit-form { grid-template-columns:repeat(2,minmax(0,1fr)); }
.staff-page .history-admin-editor .section-heading { flex-wrap:wrap; background:white; }
.staff-page .history-rental-details summary { font-weight:600; }
.staff-page .page-tools { flex-wrap:nowrap; }
.staff-page .help-dialog p { color:var(--muted); line-height:1.6; }
@media(max-width:700px) { .staff-page .staff-heading { flex-wrap:wrap; gap:16px; } .staff-page .staff-heading > :first-child { flex:1; min-width:180px; } .staff-page .history-rental-summary-grid,.staff-page .history-payment-edit-form { grid-template-columns:minmax(0,1fr); } .staff-page .history-admin-layout { grid-template-columns:minmax(0,1fr); } }
.staff-page .search-overlay { background:#10294366; }
.staff-page .search-panel { border-radius:14px; }
.staff-page .search-panel h2 { font-size:13px; text-transform:none; margin:16px 4px 10px; }
@media(max-width:1100px) { .staff-page .side-panel { position:static; } .staff-page .details-panel { max-height:none; } }
@media(max-width:700px) { .staff-page .modal { padding:8px; } .staff-page .modal-card { max-height:calc(100dvh - 16px); } .staff-page .history-admin-panel { height:calc(100dvh - 16px); } .staff-page .history-admin-layout { grid-template-columns:1fr; overflow:auto; } .staff-page .history-admin-list { max-height:220px; overflow:auto; } .staff-page .history-admin-editor { overflow:visible; } .staff-page .report-tools { width:100%; justify-content:flex-start; } .staff-page .report-tools input[type="search"] { width:100%; } .staff-page .site-footer { flex-direction:column; } }
@media(max-width:1100px) { .staff-page .workspace { grid-template-columns:minmax(0,1fr); } .staff-page .side-panel { display:grid; grid-template-columns:1fr 2fr; align-items:start; } }
@media(max-width:700px) { .staff-page .app-shell { padding:0 16px 35px; } .admin-navigation a { padding:15px 12px; } .staff-page .staff-heading { align-items:flex-start; } .staff-page .brand span { display:none; } .staff-page .site-header { padding:16px; gap:12px; } .staff-page .site-header nav { gap:12px; } .staff-page .admin-board,.staff-page .side-panel { display:grid; grid-template-columns:1fr; } .staff-page .report-panel,.staff-page .map-panel { padding:16px; } .staff-page .admin-action-card { padding:20px; } }

/* Keep management views aligned with the full-width site shell. */
.shell:has(> .admin-navigation),.staff-page .app-shell { max-width:none; width:auto; margin:0 2vw; padding:24px 24px 60px; }
.staff-page .workspace { max-width:none; grid-template-columns:minmax(0,1fr) minmax(300px,380px); align-items:start; }
.staff-page .side-panel { position:sticky; top:18px; }
.staff-page .detail-grid { grid-template-columns:1fr; }
.staff-page .detail-item { overflow-wrap:anywhere; }
.staff-page .secondary-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:22px; }
.staff-page .secondary-actions button { min-height:44px; font-size:13px; }
.map-assignment-notice { background:#eaf3df; border:1px solid #c6dbae; border-radius:10px; padding:16px; margin-bottom:18px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.map-assignment-notice[hidden] { display:none; }
.map-assignment-notice p { margin:6px 0 0; }
.lot-map .spot.assignment-unavailable { background:#d7dcdf; border-color:#b9c2c9; color:#65717a; opacity:.55; cursor:default; }
.spot-info-dialog { width:min(650px,94vw); max-height:85vh; overflow:auto; border:1px solid #dce3e6; border-radius:14px; padding:24px; color:#122943; }
.spot-info-dialog::backdrop { background:#12294380; }
@media(max-width:1100px) {
  .staff-page .workspace { grid-template-columns:1fr; }
  .staff-page .side-panel { position:static; display:grid; grid-template-columns:1fr; }
}
@media(max-width:600px) {
  .shell:has(> .admin-navigation),.staff-page .app-shell { margin:0 10px; padding:20px 10px 40px; }
  .map-assignment-notice { flex-wrap:wrap; }
}
.staff-page .site-header.portal-header { min-height:78px; padding:8px max(3vw,24px); margin:10px 2vw; background:var(--blue); }
.staff-page .site-header #navigation { display:flex; align-items:center; gap:24px; }
.staff-page .site-header .brand { color:white; }
.staff-page .site-footer a { color:white; }
.staff-page .report-panel h2,.staff-page .admin-panel h2,.staff-page .details-panel h2 { color:#122943; font-size:22px; letter-spacing:-.025em; }
.staff-page .eyebrow { color:var(--blue); font-size:11px; font-weight:800; letter-spacing:.15em; }
.staff-page .report-tools input { min-height:44px; padding:11px 14px; }
.staff-page .ghost-button,.staff-page .secondary-button { background:white; border:1px solid var(--line); color:var(--blue); }
.staff-page dialog::backdrop { background:#12294380; }
.staff-page button:focus-visible,.staff-page a:focus-visible,.staff-page input:focus-visible,.staff-page select:focus-visible { outline:3px solid #5c9deb; outline-offset:3px; }
@media(max-width:1100px){.staff-page .site-header.portal-header{margin:8px 10px;padding:8px 16px;min-height:72px}.staff-page .site-header #navigation{display:none}.staff-page .site-header.menu-open #navigation{display:flex}}
