/* PawPrint Command Center tenant theme layer.
   Intentionally scoped to the authenticated .shell so the PawPrint login page
   remains platform-branded and cannot be changed by tenant appearance settings. */

.shell {
  --primary: var(--tenant-primary, #2f80ed);
  --primary-dark: var(--tenant-primary-dark, #2468bd);
  --secondary: var(--tenant-secondary, #b8d5fb);
  --cream: var(--tenant-page-bg, #f7f3ef);
  --paper: var(--tenant-surface, #ffffff);
  --ink: var(--tenant-text, #172033);
  --muted: var(--tenant-muted, #6b7280);
  --border: var(--tenant-border, #e6eaf0);
  --shadow: var(--tenant-card-shadow, 0 14px 40px rgba(16,42,67,.08));
  --radius: var(--tenant-card-radius, 18px);
  --font-body: var(--tenant-font-body, "Poppins", sans-serif);
  --font-heading: var(--tenant-font-heading, "Cormorant Garamond", serif);

  min-height: 100vh;
  background: var(--tenant-page-bg, #f7f3ef);
  color: var(--tenant-text, #172033);
  font-family: var(--tenant-font-body, "Poppins", sans-serif);
}

.shell .sidebar {
  background: var(--tenant-sidebar-bg, #0b1f33) !important;
  color: var(--tenant-sidebar-text, #e8f1fb) !important;
}

.shell .brand p,
.shell .sidebar .user-pill,
.shell .sidebar-powered-by span {
  color: var(--tenant-sidebar-muted, #c7d4e3) !important;
}

.shell .nav button {
  color: var(--tenant-sidebar-text, #e8f1fb);
  border-radius: var(--tenant-button-radius, 12px);
}

.shell .nav button:hover,
.shell .nav button.is-active {
  background: var(--tenant-primary, #2f80ed) !important;
  color: var(--tenant-button-text, #fff) !important;
}

.shell .topbar,
.shell .command-header {
  background: var(--tenant-header-bg, rgba(255,255,255,.94)) !important;
  border-bottom-color: var(--tenant-header-border, #e6eaf0) !important;
}

.shell .content,
.shell .page,
.shell .main {
  color: var(--tenant-text, #172033);
}

.shell .stat-card,
.shell .panel,
.shell .detail-section-card,
.shell .decision-section,
.shell .operation-column,
.shell .week-day,
.shell .request-card,
.shell .capacity-card {
  background: var(--tenant-surface, #fff);
  border-color: var(--tenant-border, #e6eaf0);
  border-radius: var(--tenant-card-radius, 18px);
  box-shadow: var(--tenant-card-shadow, 0 14px 40px rgba(16,42,67,.08));
}

.shell .stat-card:hover,
.shell .request-card:hover,
.shell .request-card.is-selected {
  box-shadow: var(--tenant-hover-shadow, 0 22px 50px rgba(16,42,67,.13));
}

.shell .btn {
  border-radius: var(--tenant-button-radius, 12px);
}

.shell .btn-primary,
.shell .command-refresh {
  background: var(--tenant-primary, #2f80ed) !important;
  border-color: var(--tenant-primary, #2f80ed) !important;
  color: var(--tenant-button-text, #fff) !important;
}

.shell .input,
.shell .select,
.shell .textarea {
  border-color: var(--tenant-border, #e6eaf0);
  border-radius: var(--tenant-input-radius, 11px);
  color: var(--tenant-text, #172033);
}

.shell .input:focus,
.shell .select:focus,
.shell .textarea:focus {
  border-color: var(--tenant-primary, #2f80ed);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tenant-primary, #2f80ed) 14%, transparent);
}

.shell .request-number,
.shell .text-link,
.shell .operation-link,
.shell .eyebrow,
.shell .command-header-time {
  color: var(--tenant-primary, #2f80ed) !important;
}

html[data-tenant-sidebar="light"] .shell .sidebar {
  border-right: 1px solid var(--tenant-border, #e6eaf0);
}

html[data-tenant-sidebar="light"] .shell .nav button:not(.is-active) {
  color: var(--tenant-sidebar-text, #27384e) !important;
}

html[data-tenant-cards="outlined"] .shell .stat-card,
html[data-tenant-cards="outlined"] .shell .panel,
html[data-tenant-cards="outlined"] .shell .request-card,
html[data-tenant-cards="outlined"] .shell .capacity-card {
  box-shadow: none !important;
}

html[data-tenant-density="compact"] .shell .content {
  padding-top: 20px;
}

html[data-tenant-density="compact"] .shell .panel,
html[data-tenant-density="compact"] .shell .stat-card {
  padding: 16px;
}

/* Batch 002 — tenant Branding & Appearance settings */
.shell .settings-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.shell .settings-section-heading h3{margin:2px 0 4px}.shell .settings-section-heading p{margin:0;color:var(--muted)}.shell .branding-settings-panel,.shell .appearance-settings-panel{margin-top:0;margin-bottom:20px}.shell .branding-settings-grid{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:28px;align-items:start}.shell .branding-logo-editor{display:grid;gap:10px}.shell .branding-logo-preview{height:150px;border:1px dashed var(--tenant-border);border-radius:var(--tenant-card-radius);background:var(--tenant-page-bg);display:grid;place-items:center;overflow:hidden;font-size:32px;font-weight:700;color:var(--tenant-primary)}.shell .branding-logo-preview img{width:100%;height:100%;object-fit:contain;padding:18px}.shell .branding-logo-editor small{color:var(--muted);line-height:1.4}.shell .branding-fields{display:grid;gap:16px}.shell .theme-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.shell .theme-preset-card{position:relative;text-align:left;border:2px solid var(--tenant-border);background:var(--tenant-surface);border-radius:16px;padding:12px;cursor:pointer;color:var(--tenant-text);transition:.18s ease}.shell .theme-preset-card:hover{transform:translateY(-1px);box-shadow:var(--tenant-hover-shadow)}.shell .theme-preset-card.is-selected{border-color:var(--tenant-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--tenant-primary) 12%,transparent)}.shell .theme-preset-check{position:absolute;right:9px;top:9px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--tenant-primary);color:#fff;opacity:0;z-index:2}.shell .theme-preset-card.is-selected .theme-preset-check{opacity:1}.shell .theme-preset-check svg{width:15px}.shell .theme-preset-preview{height:88px;display:grid;grid-template-columns:27% 1fr;border-radius:10px;overflow:hidden;background:var(--preview-bg);margin-bottom:10px;border:1px solid rgba(0,0,0,.06)}.shell .theme-preview-sidebar{background:var(--preview-sidebar)}.shell .theme-preview-main{padding:12px;display:grid;gap:7px}.shell .theme-preview-main i{height:10px;width:45%;background:var(--preview-primary);border-radius:10px}.shell .theme-preview-main b,.shell .theme-preview-main em{display:block;background:#fff;border-radius:5px;box-shadow:0 2px 8px rgba(0,0,0,.08)}.shell .theme-preview-main b{height:20px}.shell .theme-preview-main em{height:12px;width:70%;border-left:5px solid var(--preview-accent)}.shell .theme-preset-card strong{display:block;font-size:14px}.shell .theme-preset-card small{display:block;color:var(--muted);line-height:1.35;margin-top:3px}.shell .appearance-current-pill{background:color-mix(in srgb,var(--tenant-primary) 10%,var(--tenant-surface));color:var(--tenant-primary);border:1px solid color-mix(in srgb,var(--tenant-primary) 24%,var(--tenant-border));padding:7px 11px;border-radius:999px;font-weight:600;white-space:nowrap}.shell .appearance-customize{margin-top:22px;padding-top:20px;border-top:1px solid var(--tenant-border);display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.shell .appearance-customize h4{margin:0 0 4px}.shell .appearance-customize p{margin:0;color:var(--muted)}.shell .appearance-color-grid{display:flex;gap:12px}.shell .color-field{display:grid;grid-template-columns:auto auto;align-items:center;gap:4px 8px;padding:9px 11px;border:1px solid var(--tenant-border);border-radius:12px}.shell .color-field span{grid-column:1/-1;font-size:12px;font-weight:600}.shell .color-field input{width:38px;height:32px;padding:0;border:0;background:none}.shell .color-field code{font-size:11px;color:var(--muted)}.shell .appearance-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.shell .appearance-save-note{display:flex;align-items:center;gap:7px;margin-top:14px}.shell .appearance-save-note svg{width:16px;color:var(--tenant-primary)}
@media(max-width:900px){.shell .theme-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shell .branding-settings-grid{grid-template-columns:1fr}.shell .branding-logo-editor{max-width:280px}.shell .appearance-customize{grid-template-columns:1fr}.shell .appearance-color-grid{justify-content:flex-start}}
@media(max-width:560px){.shell .theme-preset-grid{grid-template-columns:1fr}.shell .settings-section-heading{display:block}.shell .appearance-current-pill{display:inline-block;margin-top:10px}.shell .appearance-color-grid{display:grid;grid-template-columns:1fr 1fr}.shell .appearance-actions{display:grid}.shell .appearance-actions .btn{width:100%}}

/* ===== Batch 002B Theme Color Polish ===== */

/* Tenant-controlled interface colors */
.shell .command-header-label,
.shell .command-header-time,
.shell .text-link,
.shell .operation-copy em,
.shell .operation-link,
.shell .appearance-save-note svg {
  color: var(--tenant-primary) !important;
}

.shell .count-pill,
.shell .system-message-icon {
  background: color-mix(in srgb, var(--tenant-primary) 10%, var(--tenant-surface)) !important;
  color: var(--tenant-primary) !important;
}

.shell .btn-refresh,
.shell .command-refresh {
  background: var(--tenant-primary) !important;
  border-color: var(--tenant-primary) !important;
  color: var(--tenant-button-text) !important;
}

.shell .btn-refresh:hover,
.shell .command-refresh:hover {
  background: var(--tenant-primary-dark) !important;
  border-color: var(--tenant-primary-dark) !important;
  color: var(--tenant-button-text) !important;
}

.shell .calendar-toolbar .btn-ghost,
.shell .mobile-nav-toggle,
.shell .action-grid .btn-secondary {
  background: color-mix(in srgb, var(--tenant-primary) 9%, var(--tenant-surface)) !important;
  border-color: color-mix(in srgb, var(--tenant-primary) 28%, var(--tenant-border)) !important;
  color: var(--tenant-primary) !important;
}

.shell .calendar-toolbar .btn-ghost:hover {
  background: color-mix(in srgb, var(--tenant-primary) 15%, var(--tenant-surface)) !important;
  border-color: color-mix(in srgb, var(--tenant-primary) 44%, var(--tenant-border)) !important;
}

.shell .calendar-toolbar .btn-ghost svg,
.shell .mobile-nav-toggle svg {
  color: var(--tenant-primary) !important;
}

.shell .operational-stats .stat-total {
  border-top-color: var(--tenant-primary) !important;
}

.shell .operational-stats .stat-total .stat-value {
  color: var(--tenant-primary) !important;
}

.shell .operational-stats .stat-total .stat-icon {
  background: color-mix(in srgb, var(--tenant-primary) 10%, var(--tenant-surface)) !important;
  color: var(--tenant-primary) !important;
}

.shell .glance-bathing {
  background: color-mix(in srgb, var(--tenant-primary) 10%, var(--tenant-surface)) !important;
  color: var(--tenant-primary) !important;
}

.shell .glance-bar span {
  background: var(--tenant-primary) !important;
}

.shell .availability-snapshot {
  border-left-color: var(--tenant-primary) !important;
  background: linear-gradient(
    135deg,
    var(--tenant-surface),
    color-mix(in srgb, var(--tenant-primary) 4%, var(--tenant-surface))
  ) !important;
}

/* Independently customizable navigation */
.shell .sidebar {
  background: var(--tenant-sidebar-bg) !important;
  color: var(--tenant-sidebar-text) !important;
}

.shell .sidebar .brand h1,
.shell .sidebar .brand p,
.shell .sidebar .mobile-brand h1,
.shell .sidebar .mobile-brand p {
  color: var(--tenant-sidebar-text) !important;
}

.shell .sidebar .nav button:not(.is-active),
.shell .sidebar .nav button:not(.is-active) svg {
  color: var(--tenant-sidebar-text) !important;
}

.shell .sidebar .nav button.is-active {
  background: var(--tenant-primary) !important;
  color: var(--tenant-button-text) !important;
}

.shell .sidebar .sidebar-signout {
  color: var(--tenant-sidebar-text) !important;
  border-color: color-mix(in srgb, var(--tenant-sidebar-text) 42%, transparent) !important;
}

.shell .sidebar-powered-by {
  background: var(--tenant-sidebar-powered-bg) !important;
  border-top-color: color-mix(in srgb, var(--tenant-sidebar-text) 20%, transparent) !important;
  border-radius: 12px;
  padding: 12px 8px 8px !important;
}

.shell .sidebar-powered-by span {
  color: var(--tenant-sidebar-muted) !important;
}

.shell .sidebar-powered-by img {
  filter: var(--tenant-sidebar-logo-filter) !important;
  opacity: .96 !important;
}

/* Fixed semantic operational-status colors */
:root {
  --status-pending: #F97316;
  --status-approved: #22C55E;
  --status-waitlist: #D6A300;
  --status-declined: #C83D4B;
}

.shell .operational-stats .stat-pending {
  border-top-color: var(--status-pending) !important;
}
.shell .operational-stats .stat-pending .stat-value {
  color: var(--status-pending) !important;
}

.shell .operational-stats .stat-approved {
  border-top-color: var(--status-approved) !important;
}
.shell .operational-stats .stat-approved .stat-value {
  color: var(--status-approved) !important;
}

.shell .operational-stats .stat-waitlisted {
  border-top-color: var(--status-waitlist) !important;
}
.shell .operational-stats .stat-waitlisted .stat-value {
  color: var(--status-waitlist) !important;
}

.shell .badge-pending-review {
  background: #FFF0DC !important;
  color: #C94B00 !important;
  border-color: #FFD4AD !important;
}
.shell .badge-approved {
  background: #E5F7EB !important;
  color: #18743B !important;
}
.shell .badge-waitlist,
.shell .badge-waitlisted {
  background: #FFF4BF !important;
  color: #8A6500 !important;
}
.shell .badge-declined {
  background: #FDE8E9 !important;
  color: #A12832 !important;
}

.shell .request-card-pending-review::before {
  background: var(--status-pending) !important;
}
.shell .request-card-approved::before {
  background: var(--status-approved) !important;
}
.shell .request-card-waitlist::before,
.shell .request-card-waitlisted::before {
  background: var(--status-waitlist) !important;
}
.shell .request-card-declined::before {
  background: var(--status-declined) !important;
}

@media (max-width: 560px) {
  .shell .appearance-color-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ===== Batch 002C Final Color Architecture ===== */

.shell .command-header-time,
.shell .command-header-date,
.shell .command-header-label {
  color: var(--tenant-primary) !important;
}

/* Remove the old PawPrint-blue navigation glow. */
.shell .sidebar .nav button,
.shell .sidebar .nav button:hover,
.shell .sidebar .nav button.is-active {
  box-shadow: none !important;
}

.shell .sidebar .nav button:hover:not(.is-active) {
  background: color-mix(in srgb, var(--tenant-sidebar-text) 10%, transparent) !important;
  color: var(--tenant-sidebar-text) !important;
}

.shell .sidebar .nav button.is-active {
  background: var(--tenant-primary) !important;
  color: var(--tenant-button-text) !important;
}

/* Total Requests remains the PawPrint system blue. */
.shell .operational-stats .stat-total {
  border-top-color: #2F80ED !important;
}
.shell .operational-stats .stat-total .stat-value {
  color: #2F80ED !important;
}
.shell .operational-stats .stat-total .stat-icon {
  background: #E9F2FF !important;
  color: #2369BD !important;
}

/* Tenant-configurable service colors. */
.shell .operation-item.service-edge-boarding::before {
  background: var(--tenant-service-boarding) !important;
}
.shell .operation-item.service-edge-grooming::before {
  background: var(--tenant-service-grooming) !important;
}
.shell .operation-item.service-edge-bathing::before {
  background: var(--tenant-service-bathing) !important;
}

.shell .legend-dot.boarding {
  background: var(--tenant-service-boarding) !important;
}
.shell .legend-dot.grooming {
  background: var(--tenant-service-grooming) !important;
}
.shell .legend-dot.bathing {
  background: var(--tenant-service-bathing) !important;
}

.shell .event-boarding {
  background: color-mix(in srgb, var(--tenant-service-boarding) 13%, white) !important;
  color: var(--tenant-service-boarding-text) !important;
  border-left-color: var(--tenant-service-boarding) !important;
}
.shell .event-grooming {
  background: color-mix(in srgb, var(--tenant-service-grooming) 13%, white) !important;
  color: var(--tenant-service-grooming-text) !important;
  border-left-color: var(--tenant-service-grooming) !important;
}
.shell .event-bathing {
  background: color-mix(in srgb, var(--tenant-service-bathing) 13%, white) !important;
  color: var(--tenant-service-bathing-text) !important;
  border-left-color: var(--tenant-service-bathing) !important;
}

.shell .service-icon-boarding,
.shell .request-card-service-icon.service-icon-boarding {
  background: color-mix(in srgb, var(--tenant-service-boarding) 13%, white) !important;
  color: var(--tenant-service-boarding) !important;
}
.shell .service-icon-grooming,
.shell .request-card-service-icon.service-icon-grooming {
  background: color-mix(in srgb, var(--tenant-service-grooming) 13%, white) !important;
  color: var(--tenant-service-grooming) !important;
}
.shell .service-icon-bathing,
.shell .request-card-service-icon.service-icon-bathing {
  background: color-mix(in srgb, var(--tenant-service-bathing) 13%, white) !important;
  color: var(--tenant-service-bathing) !important;
}

.shell .glance-boarding {
  background: color-mix(in srgb, var(--tenant-service-boarding) 13%, white) !important;
  color: var(--tenant-service-boarding) !important;
}
.shell .glance-grooming {
  background: color-mix(in srgb, var(--tenant-service-grooming) 13%, white) !important;
  color: var(--tenant-service-grooming) !important;
}
.shell .glance-bathing {
  background: color-mix(in srgb, var(--tenant-service-bathing) 13%, white) !important;
  color: var(--tenant-service-bathing) !important;
}

.shell .glance-row:nth-child(1) .glance-bar span {
  background: var(--tenant-service-boarding) !important;
}
.shell .glance-row:nth-child(2) .glance-bar span {
  background: var(--tenant-service-grooming) !important;
}
.shell .glance-row:nth-child(3) .glance-bar span {
  background: var(--tenant-service-bathing) !important;
}

.shell .availability-snapshot.service-edge-boarding {
  border-left-color: var(--tenant-service-boarding) !important;
}
.shell .availability-snapshot.service-edge-grooming {
  border-left-color: var(--tenant-service-grooming) !important;
}
.shell .availability-snapshot.service-edge-bathing {
  border-left-color: var(--tenant-service-bathing) !important;
}

.shell .appearance-service-colors {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid var(--tenant-border);
}
.shell .appearance-service-colors h4 {
  margin: 0 0 4px;
}
.shell .appearance-service-colors p {
  margin: 0 0 12px;
  color: var(--tenant-muted);
  font-size: .82rem;
}
.shell .service-color-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

@media (max-width: 760px) {
  .shell .service-color-grid {
    grid-template-columns: 1fr;
  }
}


/* ===== Batch 002D Final Polish ===== */
.shell .command-header-time,
.shell .command-header-date {
  color: var(--tenant-sidebar-bg) !important;
}

.shell .sidebar-powered-by span {
  display: none !important;
}

.shell .sidebar-powered-by {
  min-height: 88px;
  padding: 12px 8px !important;
  display: grid !important;
  place-items: center !important;
}

.shell .sidebar-powered-by img {
  width: 148px !important;
  max-width: 88% !important;
  max-height: 70px !important;
  object-fit: contain !important;
}

.toast.toast-success {
  min-width: 320px;
  max-width: 440px;
  padding: 16px 18px;
  border-radius: 14px;
  background: #1F8A4C !important;
  border: 1px solid #176D3B !important;
  color: #FFFFFF !important;
  font-size: .82rem;
  font-weight: 700;
  box-shadow: 0 18px 44px rgba(22,101,52,.24);
}

.toast.toast-error {
  background: #B4232F !important;
  border-color: #8F1C26 !important;
  color: #FFFFFF !important;
}

.toast.toast-warning {
  background: #A66A00 !important;
  border-color: #825300 !important;
  color: #FFFFFF !important;
}

.branding-logo-crop-card {
  max-width: 680px;
}

.branding-logo-crop-card canvas {
  display: block;
  width: min(100%,560px);
  height: auto;
  aspect-ratio: 16 / 7;
  margin: 14px auto;
  border-radius: 16px;
  box-shadow: inset 0 0 0 4px rgba(255,255,255,.92), 0 0 0 1px #dce4ec;
  background: #eef2f6;
}

.branding-logo-crop-controls {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.branding-logo-crop-controls label {
  display: grid;
  grid-template-columns: 92px 1fr;
  align-items: center;
  gap: 10px;
  font-size: .72rem;
  font-weight: 700;
  color: #44546a;
}

.branding-logo-crop-controls input {
  width: 100%;
}

@media (max-width:700px) {
  .toast.toast-success,
  .toast.toast-error,
  .toast.toast-warning {
    min-width: 0 !important;
    max-width: none !important;
  }

  .branding-logo-crop-card {
    width: calc(100% - 18px) !important;
    max-height: 94vh !important;
  }

  .branding-logo-crop-controls label {
    grid-template-columns: 76px 1fr;
  }
}


/* ===== Batch 003 Blackout Dates ===== */
.blackout-panel{border:1px solid #D9DEE5!important;background:linear-gradient(180deg,#FFF 0%,#F8F9FA 100%)!important}
.blackout-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.blackout-heading h3{margin:2px 0 5px}.blackout-heading p:not(.eyebrow){margin:0;color:var(--tenant-muted)}
.blackout-badge,.blackout-status{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#E7E9EC;color:#4D5660;font-size:.68rem;font-weight:800;white-space:nowrap}
.blackout-badge{padding:8px 11px}.blackout-badge svg{width:15px;height:15px}
.blackout-form-grid{grid-template-columns:minmax(150px,.7fr) minmax(150px,.7fr) minmax(240px,1.6fr)}
.optional-label{color:var(--tenant-muted);font-weight:500}
.blackout-actions{display:flex;align-items:center;gap:14px;margin-top:14px;flex-wrap:wrap}.blackout-helper{color:var(--tenant-muted);font-size:.72rem}
.blackout-list{display:grid;gap:9px;margin-top:18px}
.blackout-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto 40px;align-items:center;gap:11px;padding:11px 12px;border:1px solid #D9DEE5;border-radius:13px;background:#FFF}
.blackout-item-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#ECEFF2;color:#5D6670}.blackout-item-icon svg{width:18px;height:18px}
.blackout-item-copy{display:grid;gap:2px}.blackout-item-copy strong{color:var(--tenant-text);font-size:.78rem}.blackout-item-copy span{color:var(--tenant-muted);font-size:.7rem}
.blackout-status{padding:6px 9px}.blackout-empty{min-height:58px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px dashed #CED4DA;border-radius:12px;color:#747D86;font-size:.74rem}
.calendar-day.is-blackout{background:#E9ECEF!important;border-color:#CED4DA!important}.calendar-day.is-blackout .calendar-date{color:#555E67!important}
.calendar-blackout{display:flex;align-items:center;gap:5px;margin:4px 0 7px;padding:5px 6px;border-radius:7px;background:#69727C;color:#FFF;font-size:.58rem;font-weight:800;line-height:1.15}
.calendar-blackout svg{flex:0 0 auto;width:12px;height:12px}.calendar-day.is-blackout .calendar-event{opacity:.88}
@media(max-width:760px){.blackout-heading{display:grid}.blackout-badge{justify-self:start}.blackout-form-grid{grid-template-columns:1fr}.blackout-item{grid-template-columns:38px minmax(0,1fr) 40px}.blackout-status{grid-column:2;justify-self:start}.blackout-delete{grid-column:3;grid-row:1/span 2}}

/* PawPrint sidebar footer logo — readability adjustment */
.shell .sidebar-powered-by {
  min-height: 104px !important;
  padding: 12px 6px !important;
}

.shell .sidebar-powered-by img {
  width: 180px !important;
  max-width: 94% !important;
  max-height: 84px !important;
  height: auto !important;
  object-fit: contain !important;
}

/* PawPrint sidebar footer — enlarge visible logo artwork */
.shell .sidebar-powered-by {
  min-height: 104px !important;
  padding: 8px 6px !important;
  overflow: hidden !important;
}

.shell .sidebar-powered-by img {
  width: 180px !important;
  max-width: none !important;
  max-height: none !important;
  height: auto !important;
  object-fit: contain !important;

  transform: scale(1.38) !important;
  transform-origin: center center !important;
}

/* PawPrint sidebar footer — final compact logo sizing */
.shell .sidebar-powered-by {
  min-height: 0 !important;
  height: 82px !important;
  padding: 6px 8px !important;
  margin-top: 14px !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
}

.shell .sidebar-powered-by img {
  display: block !important;
  width: 150px !important;
  max-width: 92% !important;
  max-height: none !important;
  height: auto !important;
  object-fit: contain !important;
  transform: scale(1.08) !important;
  transform-origin: center center !important;
}

/* Logo artwork already contains Powered By */
.shell .sidebar-powered-by span {
  display: none !important;
}

/* PawPrint sidebar footer — prevent logo clipping */
.shell .sidebar-powered-by {
  min-height: 0 !important;
  height: 82px !important;
  padding: 6px 8px !important;
  margin-top: 14px !important;
  display: grid !important;
  place-items: center !important;
  overflow: visible !important;
}

.shell .sidebar-powered-by img {
  display: block !important;
  width: 154px !important;
  max-width: none !important;
  max-height: none !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: scale(1.04) !important;
  transform-origin: center center !important;
}

/* PawPrint sidebar footer — final compact layout */
.shell .sidebar-footer {
  gap: 10px !important;
  padding-bottom: 8px !important;
}

.shell .sidebar-powered-by {
  width: 100% !important;
  height: 66px !important;
  min-height: 66px !important;
  margin-top: 0 !important;
  padding: 4px 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.shell .sidebar-powered-by img {
  display: block !important;
  width: 150px !important;
  height: auto !important;
  max-width: 94% !important;
  max-height: none !important;
  object-fit: contain !important;

  /* Zooms through transparent padding without making the card taller */
  transform: scale(1.12) !important;
  transform-origin: center center !important;
}

.shell .sidebar-powered-by span {
  display: none !important;
}

/* PawPrint sidebar footer — final alignment polish */
.shell .sidebar-powered-by {
  width: 100% !important;
  height: 72px !important;
  min-height: 72px !important;
  margin-top: 8px !important;
  padding: 6px 8px !important;
  overflow: hidden !important;
}

.shell .sidebar-powered-by img {
  width: 148px !important;
  max-width: 92% !important;
  height: auto !important;
  max-height: none !important;
  transform: scale(1.04) translateY(2px) !important;
  transform-origin: center center !important;
}

/* PawPrint footer logo — slightly smaller artwork only */
.shell .sidebar-powered-by img {
  width: 138px !important;
  max-width: 88% !important;
  height: auto !important;
  transform: scale(0.96) translateY(2px) !important;
  transform-origin: center center !important;
}

/* PawPrint sidebar footer — crop transparent PNG canvas correctly */
.shell .sidebar-powered-by {
  width: 100% !important;
  height: 72px !important;
  min-height: 72px !important;
  margin-top: 8px !important;
  padding: 0 8px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.shell .sidebar-powered-by img {
  display: block !important;

  /* Keep the original image proportions */
  width: 150px !important;
  height: 150px !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;

  /* Move the transparent top canvas out of view */
  transform: translateY(-24px) !important;
  transform-origin: center top !important;
}

.shell .sidebar-powered-by span {
  display: none !important;
}

/* PawPrint footer logo — final breathing room */
.shell .sidebar-powered-by img {
  width: 138px !important;
  height: 138px !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  transform: translateY(-20px) !important;
  transform-origin: center top !important;
}


/* PawPrint footer logo — final 128px sizing */
.shell .sidebar-powered-by img {
  width: 128px !important;
  height: 128px !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  transform: translateY(-15px) !important;
  transform-origin: center top !important;
}
