/* 2026-09-13: equal weeks, five bounded previews, explicit daily-list button.
   The day-management dialog and event data stay independent. */
:root {
  --cal-blue-bg:#e5f3ff; --cal-blue-ink:#006bb8;
  --cal-orange-bg:#fff1e1; --cal-orange-ink:#a65300;
  --cal-pink-bg:#ffe9ed; --cal-pink-ink:#c22246;
}
@media screen {
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard {
    min-width:0; max-width:100%; overflow:hidden;
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard :is(.cal-body,.cal-days-row) {
    display:grid; grid-template-columns:repeat(7,minmax(0,1fr)) !important; min-width:0; width:100%;
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-body {
    grid-auto-rows:160px !important; height:auto !important; min-height:0 !important;
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-cell {
    display:flex; flex-direction:column; position:relative; min-width:0; width:auto; height:160px !important;
    min-height:0 !important; aspect-ratio:auto !important; padding:10px !important; overflow:hidden; box-sizing:border-box;
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-cell::after { display:none !important; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-cell-head {
    display:flex; align-items:center; justify-content:space-between; gap:2px; min-width:0; height:30px; flex:0 0 30px;
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-day-more {
    display:flex; align-items:center; justify-content:center; flex:0 0 auto; width:48px; height:30px;
    padding:0; border:1px solid var(--ck-input-line); border-radius:6px; background:var(--ck-paper); color:var(--ck-text);
    cursor:pointer; box-shadow:0 1px 2px rgb(0 0 0 / 6%); font:500 11px/16px var(--ck-font); white-space:nowrap; letter-spacing:0;
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-day-more:hover { background:var(--ck-hover); border-color:var(--ck-muted); }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-day-more:active { transform:translateY(1px); }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-day-more:focus-visible { outline:2px solid var(--ck-text); outline-offset:2px; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-cell-events {
    display:flex; flex-direction:column; flex-shrink:0; gap:2px; width:100%; min-width:0; margin-top:auto;
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-event {
    --event-bg:var(--cal-blue-bg); --event-ink:var(--cal-blue-ink);
    white-space:nowrap !important; display:block !important; min-width:0; max-width:100%; width:100% !important;
    overflow:hidden !important; text-overflow:ellipsis !important; height:20px; max-height:20px; flex:0 0 20px; box-sizing:border-box;
    margin:0 !important; padding:2px 4px !important; border:0 !important; border-radius:4px !important;
    background:var(--event-bg) !important; color:var(--event-ink) !important; font:500 11px/16px var(--ck-font) !important;
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-event:is(.type-haccp,.type-etc,.type-alert-due) {
    --event-bg:var(--cal-orange-bg); --event-ink:var(--cal-orange-ink);
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-event:is(.type-warn,.type-alert-past) {
    --event-bg:var(--cal-pink-bg); --event-ink:var(--cal-pink-ink);
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-event-icon { display:none !important; }
  @media (max-width:768px) {
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-cell { padding:4px !important; }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-event { font-size:11px !important; padding-inline:3px !important; }
  }
  @media (max-width:480px) {
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-cell-head { height:42px; flex-basis:42px; display:block; }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-day-more { position:absolute; top:22px; right:3px; width:calc(100% - 6px); max-width:44px; height:24px; border-radius:4px; font-size:10px; }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell #content-home #mainCalCard .cal-date { font-size:12px !important; line-height:18px; height:18px; min-width:0; padding:0 !important; margin:0; }
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell #mainCalCard .cal-cell:focus-visible {
    outline: 2px solid var(--ck-text) !important; outline-offset: -3px !important;
  }
  /* Purchased modal 4057:415360, secondary sm 3287:429435, input 11351:120131.
     Functional adaptation: readable labels replace icon-only destructive actions. */
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit {
    display: flex; flex-direction: column;
    width: min(680px, calc(100vw - 32px)); max-width: 680px !important;
    max-height: calc(100dvh - 64px); border-radius: 16px !important; overflow: hidden;
  }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .ccp-modal-head { padding: 20px 24px; flex-shrink: 0; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .ccp-modal-close { flex: 0 0 36px; border: 0; background: transparent; cursor: pointer; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .ccp-modal-body { min-height: 0; padding: 24px !important; overflow-y: auto; overscroll-behavior: contain; scrollbar-color: var(--ck-input-line) transparent; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-date { font: 500 14px/20px var(--ck-font); color: var(--ck-muted); margin: 0 0 8px; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-list { gap: 0; padding: 0; margin: 0 0 24px; border: 0; max-height: min(28dvh, 280px); overflow-y: auto; overscroll-behavior: contain; scrollbar-color: var(--ck-input-line) transparent; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-list:focus-visible { outline: 2px solid var(--ck-text); outline-offset: 2px; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-row { display: grid; grid-template-columns: 20px minmax(0,1fr) auto; gap: 8px 12px; padding: 16px 0; align-items: start; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-row > div:not(.caldm-actions) { grid-column: 2 / -1; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-icon { grid-column: 1; grid-row: 1; padding-top: 2px; color: var(--ck-muted); }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-label { font: 500 14px/22px var(--ck-font); white-space: normal; overflow: visible; overflow-wrap: anywhere; letter-spacing: 0; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit :is(.caldm-cat,.caldm-time) { grid-column: 2; justify-self: start; font: 400 12px/18px var(--ck-font); color: var(--ck-muted); padding: 0; background: transparent; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-actions { grid-column: 3; grid-row: 2 / 4; display: flex; flex-wrap: wrap; gap: 8px; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-btn { width: auto; height: 40px; min-height: 40px; padding: 8px 12px; gap: 4px; font: 600 14px/20px var(--ck-font) !important; white-space: nowrap; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-btn span { padding-inline: 2px; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit :is(.caldm-btn,.caldm-icon,.caldm-type-icon) svg { width: 20px !important; height: 20px !important; min-width: 20px; flex: 0 0 20px; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-add { padding: 0; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-add-h { font: 600 16px/24px var(--ck-font); margin-bottom: 16px; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-types { gap: 8px 16px; margin-bottom: 20px; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-type { min-height: 36px; gap: 8px; font: 400 14px/20px var(--ck-font); }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-type input { width: 18px !important; height: 18px !important; min-width: 18px !important; min-height: 18px !important; flex: 0 0 18px; accent-color: var(--ck-ink); }
  body:not(.audit-mode-active):has(#page-user-main.customer-kit-shell #userModalOverlay[style*="display: flex"] .caldm-kit) #selobunFab { visibility: hidden; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-field-label { display: block; font: 500 14px/20px var(--ck-font); color: var(--ck-text); margin-bottom: 6px; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-input { min-height: 40px; margin-bottom: 16px; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-time-row { display: grid; grid-template-columns: auto minmax(0,200px) minmax(0,1fr); gap: 12px; margin: 0; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-time-row .caldm-input { min-width: 0; margin: 0; }
  body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-save { display: block; margin: 24px 0 0 auto; min-width: 88px; min-height: 40px; }
  @media (max-width: 768px) {
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .ccp-modal-body { padding: 16px !important; }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .ccp-modal-head { padding: 16px; }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-row { grid-template-columns: 20px minmax(0,1fr); }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-actions { grid-column: 2; grid-row: auto; }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit :is(.caldm-btn,.caldm-save,.caldm-type) { min-height: 44px; height: auto; }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-input { font-size: 16px; min-height: 44px; }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-time-row { grid-template-columns: auto minmax(0,1fr); }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell .caldm-kit .caldm-hint { grid-column: 2; }
    body:not(.audit-mode-active) #page-user-main.customer-kit-shell #mainCalCard .cal-cell { min-height: 44px !important; }
  }
}
