/* Screen-only control-panel refinement; print documents and tenant data are untouched. */
@media screen {
  #control-panel-modal[data-visual1102] { --cpv-soft:#f6f8fc; --cpv-line:#e3e9f2; --cpv-ink:#26354b; --cpv-muted:#68768a; }
  body.dark-mode #control-panel-modal[data-visual1102] { --cpv-soft:#172234; --cpv-line:#354359; --cpv-ink:#edf2fa; --cpv-muted:#b3bfd1; }
  #control-panel-modal :is(#cp-main,#cp-general,#cp-icons) .cp-section-title { margin:0 0 24px; padding-bottom:12px; font-size:25px; line-height:1.5; }
  #control-panel-modal :is(#cp-main,#cp-general,#cp-icons) .cp-card { border:1px solid var(--cpv-line); border-radius:18px; padding:22px; margin-bottom:18px; box-shadow:0 5px 20px #243b5c05; }
  #control-panel-modal :is(#cp-main,#cp-general,#cp-icons) .cp-desc { color:var(--cpv-muted); line-height:1.8; font-size:13px; margin:8px 0 16px; }
  #control-panel-modal :is(#cp-main,#cp-general,#cp-icons) :is(.form-control,.cp-input,.cp-select) { min-width:0; max-width:100%; border:1px solid var(--cpv-line); border-radius:11px; background:var(--cp-bg); color:var(--cpv-ink); box-shadow:none; min-height:44px; }
  #control-panel-modal :is(#cp-main,#cp-general,#cp-icons) :is(input,select,button,.theme-option):focus-visible { outline:3px solid color-mix(in srgb,var(--cp-primary) 40%,transparent); outline-offset:3px; }
  #control-panel-modal .cpv-heading { display:flex; align-items:center; gap:10px; color:var(--cpv-ink)!important; line-height:1.6; font-weight:700; }
  #control-panel-modal .cpv-symbol { display:inline-flex; flex:0 0 auto; align-items:center; justify-content:center; width:36px; height:36px; border-radius:11px; color:#3562ce; background:#ebf1ff; }
  #control-panel-modal .cpv-symbol svg { width:21px; height:21px; display:block; }
  #control-panel-modal .cpv-tone-violet { color:#8050cb; background:#f1ebff; }
  #control-panel-modal .cpv-tone-teal { color:#09897e; background:#e5f6f2; }
  #control-panel-modal .cpv-tone-green { color:#1d935d; background:#e8f7ed; }
  #control-panel-modal .cpv-tone-amber { color:#b37818; background:#fff3db; }
  body.dark-mode #control-panel-modal .cpv-symbol { background:#263859; color:#9cbcff; }
  body.dark-mode #control-panel-modal .cpv-tone-violet { background:#372b50; color:#c4a6ff; }
  body.dark-mode #control-panel-modal .cpv-tone-teal,body.dark-mode #control-panel-modal .cpv-tone-green { background:#193d3a; color:#78dcca; }
  body.dark-mode #control-panel-modal .cpv-tone-amber { background:#453822; color:#f5ce87; }
  #control-panel-modal #cp-main .cpv-accent-card { display:grid; grid-template-columns:minmax(0,1fr) 116px; column-gap:22px; align-items:center; }
  #control-panel-modal #cp-main .cpv-accent-card > .cp-label { grid-column:1; margin:0; }
  #control-panel-modal #cp-main .cpv-accent-card > .cp-desc { grid-column:1; margin:4px 46px 0 0; }
  #control-panel-modal #cp-main .cpv-accent-card > input[type=color] { grid-column:2; grid-row:1/3; width:116px; height:62px!important; padding:5px; cursor:pointer; }
  #control-panel-modal #cp-general .cpv-field-grid { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px!important; }
  #control-panel-modal #cp-general .cpv-field { min-width:0; }
  #control-panel-modal #cp-general .cpv-field > label { font-size:13px!important; margin:0 0 9px; }
  #control-panel-modal #cp-general .cpv-field .cpv-symbol { width:28px; height:28px; border-radius:8px; }
  #control-panel-modal #cp-general .cpv-field .cpv-symbol svg { width:17px; height:17px; }
  #control-panel-modal #cp-general .cpv-full-row { grid-column:1/-1; min-width:0; }
  #control-panel-modal #cp-general .cp-booking-week-v2063 { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; }
  #control-panel-modal #cp-general .cp-booking-duration-v2063 { flex-wrap:wrap; }
  #control-panel-modal #cp-general #cp-whatsapp-number { max-width:440px; }
  #control-panel-modal #cp-general .cp-whatsapp-save-btn { min-height:42px; color:#fff; background:#168860; border-color:transparent; box-shadow:none; }
  #control-panel-modal #cp-icons .cpv-category-filter { display:flex; align-items:center; justify-content:space-between; gap:18px; }
  #control-panel-modal #cp-icons .cpv-category-filter > label { margin:0; flex:1; }
  #control-panel-modal #cp-icons .cpv-category-filter > select { flex:1; width:auto; max-width:360px; font-size:13px; }
  #control-panel-modal #cp-icons .cpv-global-colors { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px!important; }
  #control-panel-modal #cp-icons .cpv-global-colors > div { min-width:0!important; }
  #control-panel-modal #cp-icons input[type=color] { padding:3px!important; border:1px solid var(--cpv-line)!important; border-radius:8px!important; cursor:pointer; }
  #control-panel-modal #cp-icons .cpv-global-colors input[type=color] { min-height:38px; }
  #control-panel-modal #cp-icons .cpv-global-colors button { min-width:36px; height:38px; padding:0; border-radius:9px; }
  #control-panel-modal #icon-management-list.cpv-icon-groups { display:block!important; }
  #control-panel-modal .cpv-icon-group { margin:0 0 28px; }
  #control-panel-modal .cpv-group-title { display:flex; align-items:center; gap:10px; font-size:16px; color:var(--cpv-ink); margin:0 0 14px; line-height:1.5; }
  #control-panel-modal .cpv-count { display:inline-flex; align-items:center; justify-content:center; min-width:28px; height:25px; padding:0 6px; border-radius:8px; background:var(--cpv-soft); border:1px solid var(--cpv-line); font-size:12px; color:var(--cpv-muted); }
  #control-panel-modal .cpv-icon-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; align-items:stretch; }
  #control-panel-modal .cpv-icon-grid .icon-mgmt-card { display:flex; flex-direction:column; align-items:stretch; min-width:0; margin:0; padding:12px 10px; gap:10px; border:1px solid var(--cpv-line); border-radius:15px; background:var(--cp-bg); box-shadow:0 4px 14px #1c355c04; }
  #control-panel-modal .cpv-icon-grid .icon-preview-box { width:52px; height:52px; align-self:center; border-radius:14px; border:1px solid var(--cpv-line); font-size:27px; }
  #control-panel-modal .cpv-icon-grid .icon-preview-box.cpv-light-ink { background-color:#34445d!important; }
  #control-panel-modal .cpv-icon-grid .icon-title { text-align:center; min-height:39px; margin:0 0 8px; font-size:12px; line-height:1.6; overflow-wrap:anywhere; display:flex; align-items:center; justify-content:center; }
  #control-panel-modal .cpv-icon-grid .icon-info { flex:1; min-width:0; }
  #control-panel-modal .cpv-icon-grid .icon-slug { display:none; }
  #control-panel-modal .cpv-color-row { display:flex; justify-content:center; gap:5px!important; }
  #control-panel-modal .cpv-color-row > span { width:38px!important; flex:1; font-size:10px!important; color:var(--cpv-muted); }
  #control-panel-modal .cpv-color-row input[type=color] { width:30px!important; height:28px!important; min-height:28px; flex:0 0 30px; }
  #control-panel-modal .cpv-color-row .btn-small-reset { width:28px; height:28px; flex:0 0 28px; border:1px solid var(--cpv-line); background:var(--cpv-soft); color:var(--cpv-muted)!important; font-size:12px; border-radius:7px; }
  #control-panel-modal .cpv-icon-grid .icon-actions { display:flex; flex-direction:row; gap:6px; margin-top:auto; }
  #control-panel-modal .cpv-icon-grid .btn-icon-upload { flex:1; min-width:0; min-height:34px; padding:6px; border-radius:9px; background:color-mix(in srgb,var(--cp-primary) 9%,var(--cp-bg)); color:var(--cp-primary); border:1px solid color-mix(in srgb,var(--cp-primary) 20%,var(--cpv-line)); font-weight:700; }
  #control-panel-modal .cpv-icon-grid .btn-icon-reset { width:34px; min-width:34px; min-height:34px; padding:0; border:1px solid var(--cpv-line); color:var(--cpv-muted); background:var(--cpv-soft); border-radius:9px; }
  @media(max-width:1199px) { #control-panel-modal .cpv-icon-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
  @media(max-width:900px) { #control-panel-modal .cpv-icon-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
  @media(max-width:640px) {
    #control-panel-modal #cp-general .cpv-field-grid { grid-template-columns:minmax(0,1fr); gap:16px!important; }
    #control-panel-modal #cp-general .cp-booking-bulk-times-v2063 { grid-template-columns:repeat(2,minmax(0,1fr)); }
    #control-panel-modal #cp-general .cp-booking-bulk-times-v2063 > div { min-width:0; }
    #control-panel-modal #cp-general .cp-booking-bulk-times-v2063 button { white-space:normal; }
    #control-panel-modal #cp-icons .cpv-category-filter { align-items:stretch; flex-direction:column; gap:12px; }
    #control-panel-modal #cp-icons .cpv-category-filter > select { max-width:none; width:100%; flex:auto; }
    #control-panel-modal #cp-icons .cpv-global-colors { grid-template-columns:1fr; gap:16px!important; }
    #control-panel-modal .cpv-icon-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    #control-panel-modal .cpv-icon-grid .icon-mgmt-card { padding:14px 11px; }
    #control-panel-modal .cpv-color-row input[type=color],#control-panel-modal .cpv-color-row .btn-small-reset { height:32px!important; }
    #control-panel-modal .cpv-icon-grid .btn-icon-upload,#control-panel-modal .cpv-icon-grid .btn-icon-reset { min-height:40px; }
    #control-panel-modal #cp-main .cpv-accent-card { grid-template-columns:minmax(0,1fr) 70px; gap:10px; }
    #control-panel-modal #cp-main .cpv-accent-card > input[type=color] { width:70px; height:58px!important; }
    #control-panel-modal #cp-main .cpv-accent-card > .cp-desc { margin-inline:0; }
    #control-panel-modal :is(#cp-main,#cp-general,#cp-icons) .cp-section-title { font-size:22px; margin-bottom:20px; }
  }
  @media(prefers-reduced-motion:reduce) { #control-panel-modal :is(#cp-main,#cp-general,#cp-icons) * { transition:none!important; animation:none!important; } }
}
