/* FOURMI THINK — Barbeiro: Catálogo de serviços e Horários de trabalho premium (barber-setup.js). Só no Barbeiro. */
:is(#catalog-setup-dialog,#working-hours-dialog){--bs-navy:#0d1b2e;--bs-navy2:#16263d;--bs-brass:#d4a853;--bs-brass2:#e8c77d;--bs-paper:#fffdf8;--bs-cream:#f5f1e8;--bs-ink:#14201b;--bs-muted:#5f6b66;--bs-line:#e7dfcd;--bs-green:#1f7a50}
#catalog-setup-dialog:not(.bcs-on) .bcs-head,#working-hours-dialog:not(.bwh-on) :is(#bwh-top,#bwh-summary,#bwh-presets){display:none!important}
:is(#catalog-setup-dialog.bcs-on,#working-hours-dialog.bwh-on) svg{flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* ---------- Catálogo ---------- */
#catalog-setup-dialog.bcs-on{width:min(560px,calc(100vw - 20px));max-height:calc(100dvh - 24px);padding:0;overflow:hidden;border:0;border-radius:28px;background:var(--bs-cream);box-shadow:0 30px 70px rgba(5,12,24,.45)}
#catalog-setup-dialog.bcs-on::backdrop{background:rgba(8,16,28,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
#catalog-setup-dialog.bcs-on .catalog-setup-shell{display:flex;flex-direction:column;max-height:calc(100dvh - 24px);padding:0;gap:0}
#catalog-setup-dialog.bcs-on .catalog-setup-shell>.dialog-heading,#catalog-setup-dialog.bcs-on .catalog-setup-shell>.dialog-heading+p,#catalog-setup-dialog.bcs-on .field-help{display:none}
.bcs-head{position:relative;flex:none;padding:22px 20px 14px;overflow:hidden;background:var(--bs-navy);color:#fffdf8}
.bcs-head:before{content:"";position:absolute;inset:0;background:radial-gradient(80% 120% at 100% 0,rgba(212,168,83,.28),transparent 60%);pointer-events:none}
.bcs-head>*{position:relative}
.bcs-mark{position:absolute;top:20px;right:20px;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(212,168,83,.55);border-radius:14px;color:var(--bs-brass)}
.bcs-mark svg{width:22px!important;height:22px!important}
.bcs-eyebrow{margin:0 0 4px;color:var(--bs-brass2);font-size:.68rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.bcs-title{margin:0;padding-right:52px;color:#fff;font-family:Literata,Georgia,"Iowan Old Style",serif;font-size:clamp(1.35rem,6vw,1.6rem);font-weight:700;line-height:1.15;text-wrap:balance}
.bcs-sub{margin:6px 0 0;color:rgba(255,253,248,.75);font-size:.86rem;line-height:1.45}
.bcs-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(212,168,83,.3)}
.bcs-bar span{color:var(--bs-brass2);font-size:.82rem;font-weight:850}
.bcs-toggle{min-height:34px;padding:0 13px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:transparent;color:#fffdf8;font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}
#catalog-setup-dialog.bcs-on .catalog-setup-list{flex:1;min-height:0;display:grid;gap:8px;margin:0;padding:14px 14px 10px;overflow:auto;border:0;outline:0;background:var(--bs-cream)}
#catalog-setup-dialog.bcs-on .catalog-template{position:relative;display:flex;align-items:center;gap:12px;min-height:64px;margin:0;padding:10px 10px 10px 12px;border:1.5px solid var(--bs-line);border-radius:18px;background:#fff;color:var(--bs-ink);cursor:pointer;transition:border-color .15s,background-color .15s}
#catalog-setup-dialog.bcs-on .catalog-template:has(input[type="checkbox"]:checked){border-color:var(--bs-navy);background:var(--bs-paper);box-shadow:0 6px 16px -10px rgba(13,27,46,.55)}
#catalog-setup-dialog.bcs-on .catalog-template input[type="checkbox"]{flex:none;appearance:none;-webkit-appearance:none;width:26px;height:26px;margin:0;border:2px solid #c9c0ad;border-radius:50%;background:#fff no-repeat center/14px;cursor:pointer}
#catalog-setup-dialog.bcs-on .catalog-template input[type="checkbox"]:checked{border-color:var(--bs-navy);background-color:var(--bs-navy);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8c77d' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E")}
#catalog-setup-dialog.bcs-on .catalog-template input[type="checkbox"]:focus-visible{outline:3px solid var(--bs-brass);outline-offset:2px}
#catalog-setup-dialog.bcs-on .catalog-template>span:not(.bcs-step){flex:1;min-width:0}
#catalog-setup-dialog.bcs-on .catalog-template strong{display:block;font-size:.95rem;font-weight:800;line-height:1.25;overflow-wrap:break-word;hyphens:auto}
#catalog-setup-dialog.bcs-on .catalog-template>span>small{display:none}
#catalog-setup-dialog.bcs-on .catalog-template:not(:has(input[type="checkbox"]:checked)) strong{color:#4b5752}
.bcs-step,#catalog-setup-dialog.bcs-on .catalog-template .bcs-step{display:flex;flex-direction:row;align-items:center;flex:none;gap:2px;padding:3px;border:1px solid var(--bs-line);border-radius:14px;background:var(--bs-cream)}
.bcs-btn{display:grid;place-items:center;width:32px;height:36px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--bs-navy);cursor:pointer}
.bcs-btn:active{background:#e9e1cf}
.bcs-btn:focus-visible{outline:3px solid var(--bs-brass);outline-offset:1px}
.bcs-input,#catalog-setup-dialog.bcs-on .catalog-template .bcs-input{display:flex;flex-direction:row;align-items:baseline;gap:2px}
#catalog-setup-dialog.bcs-on .bcs-input input{width:34px;min-height:0;height:36px;margin:0;padding:0;border:0;background:transparent;color:var(--bs-ink);font:inherit;font-size:1rem;font-weight:850;text-align:right;font-variant-numeric:tabular-nums;-moz-appearance:textfield;box-shadow:none}
#catalog-setup-dialog.bcs-on .bcs-input input::-webkit-inner-spin-button,#catalog-setup-dialog.bcs-on .bcs-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.bcs-input small{color:var(--bs-muted);font-size:.72rem;font-weight:750}
#catalog-setup-dialog.bcs-on #save-catalog-setup,#catalog-setup-dialog.bcs-on #skip-catalog-setup{flex:none;width:auto;margin:0 14px}
#catalog-setup-dialog.bcs-on #save-catalog-setup{min-height:54px;margin-top:10px;border:0;border-radius:16px;background:linear-gradient(180deg,#f4cb4c,#e1ad28);color:#1c1606;font-size:0;box-shadow:0 10px 22px -10px rgba(161,112,10,.7)}
#catalog-setup-dialog.bcs-on #save-catalog-setup::after{content:attr(data-bcs-label);font-size:1rem;font-weight:900}
#catalog-setup-dialog.bcs-on #save-catalog-setup.bcs-empty{background:#e6dfcf;color:#6b675e;box-shadow:none}
#catalog-setup-dialog.bcs-on #skip-catalog-setup{min-height:44px;margin-bottom:max(10px,env(safe-area-inset-bottom));color:var(--bs-muted);font-weight:800}

/* ---------- Horários de trabalho ---------- */
#working-hours-dialog.bwh-on .work-hours-sheet{background:var(--bs-cream)}
#working-hours-dialog.bwh-on .work-hours-header{background:var(--bs-navy);color:#fffdf8;border-bottom:0}
#working-hours-dialog.bwh-on .work-hours-handle{background:rgba(255,255,255,.35)}
#working-hours-dialog.bwh-on .work-hours-header .dialog-heading{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:10px}
#working-hours-dialog.bwh-on .work-hours-header .dialog-heading>*:not(.close-button){grid-column:1}
#working-hours-dialog.bwh-on .work-hours-header .close-button{grid-column:2;grid-row:1/4;background:rgba(255,255,255,.12);color:#fffdf8}
.bwh-eyebrow{margin:0;color:var(--bs-brass2);font-size:.68rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
#working-hours-dialog.bwh-on #working-hours-title{margin:2px 0 0;color:#fff;font-family:Literata,Georgia,"Iowan Old Style",serif;font-size:clamp(1.35rem,6vw,1.6rem);font-weight:700}
.bwh-summary{margin:4px 0 0;color:rgba(255,253,248,.78);font-size:.84rem;font-weight:700}
#working-hours-dialog.bwh-on #working-hours-form>.intro:first-child{display:none}
.bwh-presets{display:grid;gap:10px;margin:2px 0 16px;padding:14px;border:1px solid var(--bs-line);border-radius:20px;background:var(--bs-paper)}
.bwh-presets h3,#working-hours-dialog.bwh-on .work-hours-days-label{margin:0;color:#8a6a24;font-size:.7rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
#working-hours-dialog.bwh-on .work-hours-days-label{font-size:0;margin:4px 2px 8px}
#working-hours-dialog.bwh-on .work-hours-days-label::after{content:attr(data-bwh-text);font-size:.7rem}
.bwh-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.bwh-chip{display:grid;gap:1px;min-height:54px;padding:8px 6px;border:1.5px solid var(--bs-line);border-radius:14px;background:#fff;color:var(--bs-ink);font:inherit;text-align:center;cursor:pointer}
.bwh-chip b{font-size:.86rem;font-weight:850}.bwh-chip small{color:var(--bs-muted);font-size:.74rem;font-weight:700}
.bwh-chip[aria-pressed="true"]{border-color:var(--bs-navy);background:var(--bs-navy);color:#fffdf8}
.bwh-chip[aria-pressed="true"] small{color:var(--bs-brass2)}
.bwh-lunch{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 4px;border:0;background:none;color:var(--bs-ink);font:inherit;font-size:.88rem;font-weight:800;text-align:left;cursor:pointer}
.bwh-switch{position:relative;flex:none;width:44px;height:26px;border-radius:999px;background:#d8d1c2;transition:background-color .2s}
.bwh-switch:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s cubic-bezier(.23,1,.32,1)}
.bwh-lunch[aria-pressed="true"] .bwh-switch{background:var(--bs-green)}
.bwh-lunch[aria-pressed="true"] .bwh-switch:after{transform:translateX(18px)}
.bwh-help{margin:0;color:var(--bs-muted);font-size:.76rem;line-height:1.4}
:is(.bwh-chip,.bwh-lunch,.bcs-toggle):focus-visible{outline:3px solid var(--bs-brass);outline-offset:2px}

#working-hours-dialog.bwh-on .weekly-working-hours{display:grid;grid-template-columns:1fr;gap:8px}
#working-hours-dialog.bwh-on .working-day-card{display:grid;gap:8px;margin:0;padding:12px 14px;border:1px solid var(--bs-line);border-radius:18px;background:#fff}
#working-hours-dialog.bwh-on .working-day-card.is-closed{background:transparent;border-style:dashed}
#working-hours-dialog.bwh-on .working-day-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0}
#working-hours-dialog.bwh-on .working-day-heading strong{font-size:.95rem;font-weight:850;color:var(--bs-ink)}
#working-hours-dialog.bwh-on .working-day-card.is-closed .working-day-heading strong{color:var(--bs-muted)}
#working-hours-dialog.bwh-on .working-day-toggle{display:flex;align-items:center;gap:8px;margin:0;color:var(--bs-muted);font-size:.8rem;font-weight:800;cursor:pointer}
#working-hours-dialog.bwh-on .working-day-toggle span{order:-1}
#working-hours-dialog.bwh-on .working-day-toggle input{position:relative;flex:none;appearance:none;-webkit-appearance:none;width:44px;height:26px;margin:0;border:0;border-radius:999px;background:#d8d1c2;cursor:pointer;transition:background-color .2s}
#working-hours-dialog.bwh-on .working-day-toggle input:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s cubic-bezier(.23,1,.32,1)}
#working-hours-dialog.bwh-on .working-day-toggle input:checked{background:var(--bs-green)}
#working-hours-dialog.bwh-on .working-day-toggle input:checked:after{transform:translateX(18px)}
#working-hours-dialog.bwh-on .working-day-toggle input:focus-visible{outline:3px solid var(--bs-brass);outline-offset:2px}
#working-hours-dialog.bwh-on .working-periods{display:grid;gap:6px}
#working-hours-dialog.bwh-on .working-period-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) 36px;align-items:center;gap:6px}
#working-hours-dialog.bwh-on .working-period-row input[type="time"]{width:100%;min-width:0;min-height:44px;margin:0;padding:0 10px;border:1px solid var(--bs-line);border-radius:12px;background:var(--bs-cream);color:var(--bs-ink);font:inherit;font-size:.95rem;font-weight:800;font-variant-numeric:tabular-nums}
#working-hours-dialog.bwh-on .working-period-row>span{color:var(--bs-muted)}
#working-hours-dialog.bwh-on .remove-working-period{display:grid;place-items:center;width:36px;height:36px;min-height:0;margin:0;padding:0;border-radius:50%;background:#f3eee3;color:#8c4a3c;font-size:1.1rem;line-height:1}
#working-hours-dialog.bwh-on .add-working-period{justify-self:start;min-height:34px;margin:0;padding:0 2px;color:var(--bs-navy);font-size:.82rem;font-weight:850}
#working-hours-dialog.bwh-on .copy-working-hours{margin:16px 0 0;padding:14px;border:1px solid var(--bs-line);border-radius:20px;background:var(--bs-paper)}
#working-hours-dialog.bwh-on .copy-working-hours legend{padding:0 6px;color:#8a6a24;font-size:.7rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
#working-hours-dialog.bwh-on .copy-working-hours select,#working-hours-dialog.bwh-on #schedule-slot-interval{min-height:46px;border:1px solid var(--bs-line);border-radius:12px;background:#fff;font-size:.95rem}
#working-hours-dialog.bwh-on .weekday-chip.selected{border-color:var(--bs-navy);background:var(--bs-navy);color:#fffdf8}
#working-hours-dialog.bwh-on #apply-copied-hours{border-color:var(--bs-navy);color:var(--bs-navy)}
#working-hours-dialog.bwh-on .work-hours-footer{background:var(--bs-cream)}
#working-hours-dialog.bwh-on #save-working-hours{border:0;background:linear-gradient(180deg,#f4cb4c,#e1ad28);color:#1c1606;font-weight:900;box-shadow:0 10px 22px -10px rgba(161,112,10,.7)}
@media (prefers-reduced-motion:reduce){.bwh-switch,.bwh-switch:after,#working-hours-dialog.bwh-on .working-day-toggle input,#working-hours-dialog.bwh-on .working-day-toggle input:after{transition:none}}
@media (max-width:350px){.bwh-chips{grid-template-columns:1fr 1fr}.bwh-chip:last-child{grid-column:1/-1}#catalog-setup-dialog.bcs-on .catalog-template{gap:8px;padding:9px 8px 9px 10px}.bcs-btn{width:24px;height:34px}#catalog-setup-dialog.bcs-on .bcs-input input{width:26px;font-size:.92rem}.bcs-input small{display:none}#catalog-setup-dialog.bcs-on .catalog-template strong{font-size:.88rem}}
