/* Weinstube admin: bookings workspace. All rules are scoped so the customer view stays unchanged. */
body.admin-mode{zoom:1;background:#f4f7fb!important;padding-bottom:24px}
body.admin-mode main{width:min(1280px,calc(100% - 48px));max-width:none;margin:0 auto;padding:28px 0 48px}
body.admin-mode #adminView>.admin-home-link{margin:0 0 16px;padding:9px 13px;min-height:38px;border:1px solid #dce5f0!important;border-radius:9px;background:#fff!important;color:#50647f!important;box-shadow:0 3px 12px rgba(25,58,103,.05);font-size:.82rem}
body.admin-mode #adminView>.card{margin:0 0 18px;padding:24px;border:1px solid #dce5f0;border-radius:16px;background:#fff;box-shadow:0 8px 28px rgba(25,58,103,.07)}
body.admin-mode .admin-title{align-items:flex-start;margin-bottom:22px}
body.admin-mode .admin-brand{margin:0;color:#10264a!important;font:800 1.75rem/1.15 Inter,"Segoe UI",Arial,sans-serif;letter-spacing:-.035em}
body.admin-mode .admin-label{margin-top:7px;color:#7b8ba1;font-size:.68rem;letter-spacing:.2em}
body.admin-mode .admin-actions{align-items:center;gap:9px}
body.admin-mode .admin-actions>*{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border:1px solid #d7e2ef!important;border-radius:10px;background:#f7f9fc!important;color:#254363!important;box-shadow:none;font-size:.86rem;font-weight:800}
body.admin-mode #btnManualBooking{order:3;min-height:48px;padding:0 22px;border-color:#1465ee!important;background:#1465ee!important;color:#fff!important;box-shadow:0 9px 20px rgba(20,101,238,.25);font-size:.92rem}
body.admin-mode #btnManualBooking:hover{transform:translateY(-1px);box-shadow:0 12px 25px rgba(20,101,238,.32)}
body.admin-mode #btnCloseBookings{border-color:#efcbd0!important;background:#fff7f8!important;color:#b43848!important}
body.admin-mode .summary{gap:12px;background:transparent!important;box-shadow:none!important}
body.admin-mode .stat{position:relative;min-height:92px;padding:17px 18px 15px 64px;border:1px solid #dce5f0!important;border-radius:13px!important;text-align:left;box-shadow:none!important}
body.admin-mode .stat::before{position:absolute;left:17px;top:20px;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#edf4ff;color:#1465ee;font-size:1rem;font-weight:900}
body.admin-mode #summaryPending::before{content:'!';background:#fff5d8;color:#9a6a00}
body.admin-mode #summaryWeek::before{content:'7';background:#e7f7f0;color:#08734b}
body.admin-mode #summaryFuture::before{content:'›';font-size:1.45rem}
body.admin-mode .stat b{margin-bottom:3px;color:#10264a!important;font:800 1.65rem/1 Inter,"Segoe UI",Arial,sans-serif}
body.admin-mode .summary-card{color:#65758b;font-size:.82rem;font-weight:700}
body.admin-mode .summary-card:hover{border-color:#9bbcf0!important;background:#f8fbff!important;transform:translateY(-2px);box-shadow:0 8px 18px rgba(25,58,103,.08)!important}
body.admin-mode #adminView>.card>h3{margin:0 0 17px;color:#10264a!important;font-size:1.05rem;letter-spacing:-.01em}
body.admin-mode .empty{padding:25px;border:1px dashed #cbd8e8;border-radius:11px;background:#fafcff;color:#74859b!important}
body.admin-mode .pending-list{gap:9px}
body.admin-mode .pending-row{grid-template-columns:105px 75px minmax(150px,1.1fr) minmax(130px,.9fr) minmax(180px,1.3fr) auto;padding:13px 14px;border:1px solid #dce5f0!important;border-left:4px solid #e2a313!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}
body.admin-mode .pending-row:hover{background:#f8fbff!important;border-color:#aac5ed!important}
body.admin-mode .week-calendar{gap:9px}
body.admin-mode .week-day{min-height:140px;padding:12px;border:1px solid #dce5f0;border-radius:11px;background:#fff}
body.admin-mode .week-day:hover,body.admin-mode .month-day:hover:not(:disabled){border-color:#7ba8ed;background:#f7faff}
body.admin-mode .week-day.selected,body.admin-mode .month-day.selected{box-shadow:inset 0 0 0 2px #1465ee}
body.admin-mode .calendar-day-name{color:#50647f;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase}
body.admin-mode .calendar-day-date{color:#10264a;font-size:1rem}
body.admin-mode .calendar-times,body.admin-mode .booking-count{color:#1465ee}
body.admin-mode .month-toolbar{margin-bottom:18px}
body.admin-mode .month-day{min-height:86px;border:1px solid #dce5f0;border-radius:9px;background:#fff}
body.admin-mode .month-day.today{border-color:#1465ee}
body.admin-mode .booking-dot{background:#d94b5b;box-shadow:0 0 0 4px #fdecef}
body.admin-mode .table-controls{padding:14px;border:1px solid #e4ebf3;border-radius:12px;background:#f7f9fc}
body.admin-mode .control-row button,body.admin-mode #adminPickDate{min-height:38px;border:1px solid #d5e1ef!important;border-radius:8px;background:#fff!important;color:#315170!important}
body.admin-mode .control-row button.primary,body.admin-mode .control-row button.active{border-color:#1465ee!important;background:#1465ee!important;color:#fff!important}
body.admin-mode .tables{gap:8px}
body.admin-mode .table-row{padding:14px 16px;border:1px solid #cde9dc!important;border-left:5px solid #159a68!important;border-radius:11px!important;background:#f2fbf7!important;box-shadow:none!important}
body.admin-mode .table-row.busy{border-color:#f0d4d8!important;border-left-color:#d94b5b!important;background:#fff6f7!important}
body.admin-mode .table-name{color:#10264a;font-size:.98rem}
body.admin-mode .booking-customer{color:#10264a;letter-spacing:.015em}
body.admin-mode .booking-staff{padding:4px 8px;border-radius:999px;background:#eef3f8;color:#50647f}
body.admin-mode .table-availability{color:#08734b}
body.admin-mode .legend{justify-content:flex-end;margin:4px 1px 11px}
body.admin-mode .dot.green{background:#159a68}.admin-mode .dot.red{background:#d94b5b}
body.admin-mode .modalbg{background:rgba(8,29,58,.62);backdrop-filter:blur(3px)}
body.admin-mode .date-picker{z-index:120}
body.admin-mode .modal{border:1px solid #dce5f0;border-radius:16px;background:#fff;box-shadow:0 24px 65px rgba(8,29,58,.28)}
body.admin-mode .close{background:#edf4ff;color:#254363}
body.admin-mode .modal .primary{background:#1465ee!important;color:#fff!important}
body.admin-mode .date-picker-day.selected{background:#1465ee;color:#fff}

@media(min-width:761px){
  body.admin-mode:has(.admin-global-sidebar) main{width:min(1220px,calc(100% - 48px))}
}
@media(max-width:900px){
  body.admin-mode main{width:min(100% - 24px,760px);padding-top:16px}
  body.admin-mode .pending-row{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  body.admin-mode{padding-bottom:82px}
  body.admin-mode:has(#modalBg:not(.hidden)){overflow:hidden;padding-bottom:0}
  body.admin-mode:has(#modalBg:not(.hidden)) #btnManualBooking,
  body.admin-mode:has(#modalBg:not(.hidden)) .admin-global-mobilebar{display:none!important}
  body.admin-mode #modalBg{z-index:70;padding:8px;align-items:center}
  body.admin-mode #modalBg>.modal{max-height:calc(100dvh - 16px);padding:14px 14px 0;overscroll-behavior:contain}
  body.admin-mode #modalBg .modal-actions{position:sticky;bottom:0;z-index:5;display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:18px -14px 0;padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #dce5f0;background:#fff;box-shadow:0 -8px 22px rgba(16,45,87,.10)}
  body.admin-mode #modalBg .modal-actions>button{width:100%;min-height:50px;margin:0;font-weight:850}
  body.admin-mode #modalBg .modal-actions>button:only-child{grid-column:1/-1}
  body.admin-mode main{width:calc(100% - 20px);padding:12px 0 20px}
  body.admin-mode #adminView>.admin-home-link{display:none}
  body.admin-mode #adminView>.card{margin-bottom:12px;padding:15px;border-radius:14px}
  body.admin-mode .admin-title{margin-bottom:14px}
  body.admin-mode .admin-brand{font-size:1.35rem}
  body.admin-mode .admin-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:7px;margin-top:6px}
  body.admin-mode .admin-actions>*{width:100%;min-height:42px;padding:0 10px;font-size:.76rem}
  body.admin-mode #btnManualBooking{display:none!important}
  body.admin-mode .summary{grid-template-columns:repeat(3,1fr);gap:6px}
  body.admin-mode .stat{min-height:76px;padding:12px 6px;text-align:center}
  body.admin-mode .stat::before{display:none}
  body.admin-mode .stat b{font-size:1.35rem}
  body.admin-mode .summary-card{font-size:.7rem}
  body.admin-mode .pending-row{grid-template-columns:1fr;gap:7px;padding:12px}
  body.admin-mode .week-calendar{grid-template-columns:1fr}
  body.admin-mode .week-day{min-height:0}
  body.admin-mode .month-day,body.admin-mode .month-empty{min-height:58px}
  body.admin-mode .month-day{padding:6px;font-size:.75rem}
  body.admin-mode .table-controls{padding:10px}
  body.admin-mode .weekday-row{display:grid;grid-template-columns:repeat(3,1fr)}
  body.admin-mode .weekday-row button{min-width:0;font-size:.72rem;padding:7px 4px}
  body.admin-mode .table-row{display:block;padding:12px}
  body.admin-mode .booking-main{display:grid;gap:3px}
  body.admin-mode .booking-staff{margin:4px 0 0;width:max-content;white-space:normal}
  body.admin-mode .legend{justify-content:flex-start}
}
