/* FOURMI THINK — Perfil Cliente (Minha FOURMI): pele Ameixa & Ouro.
   Escopo: #my-fourmi-workspace.is-client e #mf-sheet.is-client (classe posta por ClientUI.setup). */
.mf.is-client,.mf-sheet.is-client {
  --cl-plum:#2B1F3A; --cl-plum-2:#3A2A4E; --cl-gold:#D4A853; --cl-gold-2:#EBCB86; --cl-cream:#F7F2E6; --cl-paper:#FFFDF8;
  --cl-lav:#ECE4F3; --cl-lilac:#6C5A8A; --cl-green:#2F7A5B; --cl-green-soft:#E3F1EA; --cl-amber:#B5652A; --cl-amber-soft:#F8EADD;
  --cl-ink:#1E1828; --cl-muted:#6B6378; --cl-line:#E6DED0; --cl-red:#A23B3B;
  --cl-serif:Literata,Georgia,"Times New Roman",serif;
  --cl-shadow:0 10px 26px #2b1f3a1f; --cl-shadow-sm:0 4px 12px #2b1f3a14;
  --mf-cream:var(--cl-cream); --mf-paper:var(--cl-paper); --mf-deep:var(--cl-plum); --mf-ink:var(--cl-ink); --mf-gold:var(--cl-gold); --mf-gold-2:var(--cl-gold-2);
  --mf-teal:var(--cl-lilac); --mf-teal-soft:var(--cl-lav); --mf-line:var(--cl-line); --mf-muted:var(--cl-muted);
}
.mf.is-client { background:var(--cl-cream); color:var(--cl-ink); }
.mf.is-client > .mf-header { display:none; }
.mf.is-client .mf-main { position:relative; padding:0 0 96px; background:var(--cl-cream); }
.mf.is-client *,.mf-sheet.is-client * { box-sizing:border-box; }
.mf.is-client button,.mf-sheet.is-client button { font:inherit; cursor:pointer; -webkit-tap-highlight-color:transparent; }
.mf.is-client .hidden,.mf-sheet.is-client .hidden { display:none !important; }
.mf.is-client :focus-visible,.mf-sheet.is-client :focus-visible { outline:3px solid var(--cl-gold); outline-offset:2px; }
.cl-num { font-family:var(--cl-serif); font-weight:700; font-variant-numeric:tabular-nums; letter-spacing:-.01em; }

/* ---------- Barra de abas ---------- */
.mf.is-client .mf-nav { position:relative; z-index:3; background:var(--cl-paper); border-top:1px solid var(--cl-line); box-shadow:0 -6px 18px #2b1f3a0f; }
.mf.is-client .mf-nav-item { color:#8A8296; border-radius:14px; }
.mf.is-client .mf-nav-item.is-active,.mf.is-client .mf-nav-item[aria-current="page"] { background:transparent; color:var(--cl-plum); }
.mf.is-client .mf-nav-item.is-active::before,.mf.is-client .mf-nav-item[aria-current="page"]::before { content:""; position:absolute; top:-6px; left:calc(50% - 14px); width:28px; height:3px; border-radius:0 0 4px 4px; background:var(--cl-gold); }
.mf.is-client .mf-nav-item.is-active svg { stroke:var(--cl-plum); stroke-width:2.1; }
.mf.is-client .mf-badge { background:var(--cl-gold); color:var(--cl-plum); box-shadow:0 0 0 2px var(--cl-paper); }

/* ---------- Topo ameixa ---------- */
.cl-hero { position:relative; padding:calc(env(safe-area-inset-top,0px) + 16px) 18px 22px; background:radial-gradient(120% 90% at 100% 0%,#4a3763 0%,transparent 60%),linear-gradient(165deg,var(--cl-plum-2) 0%,var(--cl-plum) 70%); color:#F6F0FA; border-radius:0 0 28px 28px; }
.cl-hero.is-home { padding-bottom:74px; }
.cl-hero.is-agenda { padding-bottom:14px; }
.cl-hero-row { display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; }
.cl-hero-title { margin:0; min-width:0; font-family:var(--cl-serif); font-size:1.55rem; font-weight:700; line-height:1.15; color:#fff; overflow-wrap:anywhere; }
.cl-hero-brand { display:grid; min-width:0; }
.cl-hero-brand span { color:var(--cl-gold-2); font-size:.66rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.cl-hero-brand small { color:#D9CFE6; font-size:.82rem; overflow-wrap:anywhere; }
.cl-hero-tools { display:flex; align-items:center; gap:8px; flex:none; }
.cl-round { position:relative; display:inline-grid; place-items:center; width:44px; height:44px; flex:none; margin:0; padding:0; border:1px solid #ffffff2e; border-radius:50%; background:#ffffff14; color:#fff; }
.cl-round svg { fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.cl-round.is-small { width:36px; height:36px; }
.cl-round.is-light { border-color:#ffffff38; background:#ffffff1a; color:#fff; }
.cl-round:disabled { opacity:.35; cursor:default; }
.cl-round-dot { position:absolute; top:9px; right:10px; width:9px; height:9px; border-radius:50%; background:var(--cl-gold); box-shadow:0 0 0 2px var(--cl-plum); }
.cl-me-avatar { display:grid; place-items:center; width:44px; height:44px; margin:0; padding:0; border:2px solid #ebcb8680; border-radius:50%; background:var(--cl-gold); color:var(--cl-plum); font-weight:900; font-size:1rem; }
.cl-hello { display:flex; align-items:center; gap:8px; margin-top:18px; min-width:0; }
.cl-hello h1 { margin:0; min-width:0; font-family:var(--cl-serif); font-size:1.7rem; font-weight:700; line-height:1.15; color:#fff; overflow-wrap:anywhere; }
.cl-spark { flex:none; color:var(--cl-gold); }
.cl-hero-sub { margin:6px 0 0; color:#D9CFE6; font-size:.92rem; line-height:1.4; }
.cl-hero .cl-seg { background:#ffffff14; border-color:#ffffff24; }
.cl-hero .cl-seg button { color:#E6DCF0; }
.cl-hero .cl-seg button[aria-pressed="true"] { background:var(--cl-gold); color:var(--cl-plum); }

/* ---------- Corpo e blocos ---------- */
.cl-body { display:grid; gap:18px; padding:18px 16px 24px; min-width:0; }
.cl-float { position:relative; z-index:2; margin:-58px 16px 0; }
.cl-section { display:grid; gap:10px; min-width:0; }
.cl-section-head { display:flex; align-items:baseline; justify-content:space-between; gap:10px; }
.cl-section-head h2 { margin:0; font-family:var(--cl-serif); font-size:1.08rem; font-weight:700; color:var(--cl-plum); }
.cl-more { margin:0; padding:8px 2px; min-height:36px; border:0; background:none; color:var(--cl-lilac); font-size:.84rem; font-weight:700; }
.cl-card { display:block; width:100%; margin:0; padding:14px; border:1px solid var(--cl-line); border-radius:20px; background:var(--cl-paper); color:var(--cl-ink); text-align:left; box-shadow:var(--cl-shadow-sm); }
.cl-list { padding:4px 0; }
.cl-eyebrow { color:var(--cl-lilac); font-size:.68rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.cl-faint { color:var(--cl-muted); }
.cl-help { margin:0; color:var(--cl-muted); font-size:.8rem; line-height:1.45; }
.cl-sub { margin:14px 0 6px; color:var(--cl-plum); font-size:.82rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.cl-sub:first-child { margin-top:0; }
.cl-sub-row { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.cl-empty { display:grid; justify-items:start; gap:10px; padding:16px; border:1px dashed #D8CFC0; border-radius:18px; background:#FFFDF7; }
.cl-empty p { margin:0; color:var(--cl-muted); font-size:.88rem; line-height:1.45; }

/* ---------- Botões, chips ---------- */
.cl-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:46px; margin:0; padding:0 18px; border:1px solid transparent; border-radius:14px; background:var(--cl-lav); color:var(--cl-plum); font-size:.92rem; font-weight:800; line-height:1.15; text-align:center; text-decoration:none; transition:transform .15s ease,background .15s ease; }
.cl-btn:active { transform:scale(.98); }
.cl-btn svg { flex:none; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.cl-btn:disabled { opacity:.45; cursor:not-allowed; transform:none; }
.cl-btn.is-gold { background:var(--cl-gold); color:var(--cl-plum); box-shadow:0 6px 16px #d4a85340; }
.cl-btn.is-outline { border-color:#CFC4DB; background:transparent; color:var(--cl-plum); }
.cl-btn.is-plum { background:var(--cl-plum); color:#fff; }
.cl-btn.is-soft { background:var(--cl-lav); color:var(--cl-plum); }
.cl-btn.is-small { min-height:38px; padding:0 13px; border-radius:12px; font-size:.82rem; }
.cl-btn.is-block { display:flex; width:100%; }
.cl-btn.is-dashed { border:1.5px dashed #BDB0CC; background:transparent; color:var(--cl-plum); }
.cl-btn.is-danger-text { background:transparent; color:var(--cl-red); box-shadow:none; }
.cl-btn.is-danger-text.is-confirming { background:#F6E3E3; }
.cl-btn.is-ghost-light { border-color:#ffffff40; background:#ffffff14; color:#fff; }
.cl-chip { display:inline-flex; align-items:center; gap:4px; min-height:24px; padding:0 9px; border-radius:999px; background:var(--cl-lav); color:var(--cl-plum); font-size:.72rem; font-weight:800; white-space:nowrap; }
.cl-chip.is-ok { background:var(--cl-green-soft); color:var(--cl-green); }
.cl-chip.is-warn { background:var(--cl-amber-soft); color:var(--cl-amber); }
.cl-chip.is-muted { background:#EFEAE2; color:var(--cl-muted); }
.cl-chip.is-soft { background:#ffffff1f; color:#fff; }
.cl-soon { display:inline-flex; align-items:center; min-height:22px; padding:0 8px; border-radius:999px; background:#F3E6C7; color:#7A5A16; font-size:.68rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap; }
.cl-soon-box { display:flex; align-items:flex-start; gap:10px; margin-top:12px; padding:12px; border-radius:14px; background:#FBF4E4; color:#5E4A1E; font-size:.82rem; line-height:1.4; }

/* ---------- Próximo compromisso ---------- */
.cl-next { display:grid; gap:12px; padding:16px; border:1px solid #EADFC6; border-radius:24px; background:var(--cl-paper); box-shadow:var(--cl-shadow); }
.cl-next-top { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; }
.cl-next-main { display:flex; align-items:center; gap:14px; width:100%; margin:0; padding:0; border:0; background:none; color:inherit; text-align:left; }
.cl-timebox { display:grid; place-items:center; width:68px; height:62px; flex:none; border-radius:16px; background:var(--cl-plum); color:var(--cl-gold-2); font-family:var(--cl-serif); font-size:1.2rem; font-weight:700; font-variant-numeric:tabular-nums; }
.cl-next-text { display:grid; gap:2px; min-width:0; }
.cl-next-text strong { font-family:var(--cl-serif); font-size:1.12rem; color:var(--cl-plum); overflow-wrap:anywhere; }
.cl-next-text small { color:var(--cl-muted); font-size:.84rem; overflow-wrap:anywhere; }
.cl-next-actions { display:flex; gap:8px; flex-wrap:wrap; }
.cl-next-actions .cl-btn { flex:1 1 120px; }
.cl-next.is-booking .cl-timebox { background:var(--cl-lav); color:var(--cl-plum); }
.cl-next.is-empty { justify-items:start; }
.cl-next-empty { margin:0; color:var(--cl-muted); font-size:.9rem; line-height:1.45; }
.cl-next-empty strong { display:block; margin-bottom:2px; font-family:var(--cl-serif); font-size:1.1rem; color:var(--cl-plum); }
.cl-mini-link { display:inline-flex; align-items:center; gap:5px; min-height:32px; color:var(--cl-lilac); font-size:.82rem; font-weight:700; text-decoration:none; }
.cl-mini-link svg { fill:none; stroke:currentColor; stroke-width:2; }

/* ---------- Linhas / listas ---------- */
.cl-row { display:flex; align-items:center; gap:12px; width:100%; min-height:58px; margin:0; padding:10px 14px; border:0; border-bottom:1px solid #EFE8DC; background:transparent; color:var(--cl-ink); text-align:left; }
.cl-list > .cl-row:last-child,.cl-choice > .cl-row:last-child { border-bottom:0; }
.cl-row > svg:last-child { flex:none; color:#B4AABF; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.cl-row.is-static { cursor:default; }
.cl-row.is-unread .cl-row-text strong { color:var(--cl-plum); }
.cl-row[aria-pressed="true"] { background:#F7F1FB; }
.cl-row-icon { display:grid; place-items:center; width:40px; height:40px; flex:none; border-radius:13px; background:var(--cl-lav); color:var(--cl-plum); }
.cl-row-icon svg,.cl-nudge-icon svg,.cl-cat-icon svg,.cl-done-icon svg { fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.cl-row-icon.is-warn { background:var(--cl-amber-soft); color:var(--cl-amber); }
.cl-row-icon.is-ok { background:var(--cl-green-soft); color:var(--cl-green); }
.cl-row-icon.is-personal { background:#EEE7F6; color:var(--cl-lilac); }
.cl-row-icon.is-teacher { background:#E3F0E8; color:#1F5C43; }
.cl-row-icon.is-barber { background:#E4E8F2; color:#1C2B4A; }
.cl-row-text { display:grid; gap:2px; flex:1; min-width:0; }
.cl-row-text strong { font-size:.94rem; font-weight:700; overflow-wrap:anywhere; }
.cl-row-text small { color:var(--cl-muted); font-size:.8rem; line-height:1.35; overflow-wrap:anywhere; }
.cl-unread-dot { width:9px; height:9px; flex:none; border-radius:50%; background:var(--cl-gold); }
.cl-choice { display:grid; border:1px solid var(--cl-line); border-radius:20px; background:var(--cl-paper); overflow:hidden; }

/* ---------- Seu dia ---------- */
.cl-day { padding:4px 0; }
.cl-day-row { display:flex; align-items:center; gap:6px; padding-right:12px; border-bottom:1px solid #EFE8DC; }
.cl-day-row:last-child { border-bottom:0; }
.cl-day-open { display:flex; align-items:center; gap:10px; flex:1; min-width:0; min-height:58px; margin:0; padding:10px 4px 10px 14px; border:0; background:none; color:inherit; text-align:left; }
.cl-day-time { width:50px; flex:none; color:var(--cl-plum); font-size:.86rem; font-weight:800; font-variant-numeric:tabular-nums; }
.cl-dot { width:10px; height:10px; flex:none; border-radius:50%; background:var(--cl-plum); }
.cl-dot.is-booking { background:transparent; border:2px dashed var(--cl-amber); }
.cl-dot.is-personal { background:var(--cl-lilac); box-shadow:0 0 0 3px #6c5a8a26; }
.cl-dot.is-pro { background:var(--cl-gold); box-shadow:0 0 0 3px #d4a85333; }
.cl-day-title { display:grid; gap:1px; min-width:0; }
.cl-day-title strong { font-size:.93rem; overflow-wrap:anywhere; }
.cl-day-title small { color:var(--cl-muted); font-size:.78rem; overflow-wrap:anywhere; }
.cl-day-row.is-done .cl-day-title strong { color:var(--cl-muted); text-decoration:line-through; text-decoration-color:#B4AABF; }
.cl-day-row.is-missed .cl-day-title strong { color:var(--cl-muted); }
.cl-check { display:grid; place-items:center; width:44px; height:44px; flex:none; margin:0; padding:0; border:0; border-radius:50%; background:none; color:transparent; }
.cl-check svg { width:28px; height:28px; padding:5px; border:2px solid #C9BEDA; border-radius:50%; fill:none; stroke:currentColor; stroke-width:2.6; stroke-linecap:round; stroke-linejoin:round; transition:background .15s ease,border-color .15s ease; }
.cl-check.is-on { color:#fff; }
.cl-check.is-on svg { border-color:var(--cl-lilac); background:var(--cl-lilac); }
.cl-done-mark { display:grid; place-items:center; width:28px; height:28px; flex:none; border-radius:50%; background:var(--cl-green-soft); color:var(--cl-green); }
.cl-done-mark svg { fill:none; stroke:currentColor; stroke-width:2.6; stroke-linecap:round; stroke-linejoin:round; }

/* ---------- Lembretes (ritmo, pacote, avaliação) ---------- */
.cl-nudge { display:flex; align-items:center; gap:12px; padding:14px; border-radius:20px; background:linear-gradient(150deg,#F3ECF8,#EDE3F4); color:var(--cl-ink); }
.cl-nudge.is-soft { background:linear-gradient(150deg,#FBF3E1,#F6EAD0); }
.cl-nudge.is-flat { background:var(--cl-paper); border:1px solid var(--cl-line); }
.cl-nudge-icon { display:grid; place-items:center; width:44px; height:44px; flex:none; border-radius:14px; background:var(--cl-paper); color:var(--cl-plum); }
.cl-nudge-icon.is-gold { background:var(--cl-gold); color:var(--cl-plum); }
.cl-nudge-text { display:grid; gap:2px; flex:1; min-width:0; }
.cl-nudge-text strong { font-size:.9rem; line-height:1.3; overflow-wrap:anywhere; }
.cl-nudge-text small { color:var(--cl-muted); font-size:.78rem; overflow-wrap:anywhere; }
.cl-nudge > .cl-btn { flex:none; }
.cl-connect { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; align-items:start; }
.cl-connect strong { display:block; font-family:var(--cl-serif); color:var(--cl-plum); }
.cl-connect small { color:var(--cl-muted); font-size:.84rem; line-height:1.4; }
.cl-connect-actions { grid-column:1 / -1; display:flex; gap:8px; flex-wrap:wrap; }
.cl-connect-actions .cl-btn { flex:1 1 130px; }
.cl-wallet-mini { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.cl-wallet-mini > span { display:grid; gap:2px; min-width:0; }
.cl-wallet-mini > span + span { padding-left:12px; border-left:1px solid var(--cl-line); }
.cl-wallet-mini small { color:var(--cl-muted); font-size:.76rem; }
.cl-wallet-mini .cl-num { font-size:1.3rem; color:var(--cl-plum); }
.cl-num.is-warn { color:var(--cl-amber) !important; }
.cl-num.is-neg { color:#F2B5B5 !important; }
.cl-num.is-ok { color:var(--cl-green) !important; }
.cl-num.is-xl { font-size:2.3rem; line-height:1.05; color:#fff; }
.cl-num.is-sm { font-size:.98rem; color:var(--cl-plum); white-space:nowrap; }

/* ---------- Agenda ---------- */
.cl-strip { display:flex; align-items:center; gap:4px; margin-top:14px; }
.cl-strip-days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:3px; flex:1; min-width:0; }
.cl-strip-day { display:grid; justify-items:center; gap:1px; min-width:0; min-height:62px; margin:0; padding:6px 0 5px; border:0; border-radius:14px; background:transparent; color:#D9CFE6; }
.cl-strip-day span { font-size:.62rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.cl-strip-day b { font-family:var(--cl-serif); font-size:1.08rem; color:#fff; }
.cl-strip-day.is-today b { color:var(--cl-gold-2); }
.cl-strip-day.is-on { background:var(--cl-gold); color:var(--cl-plum); }
.cl-strip-day.is-on b { color:var(--cl-plum); }
.cl-strip-dots { display:flex; justify-content:center; gap:3px; min-height:6px; font-style:normal; }
.cl-strip-dots em { width:5px; height:5px; border-radius:50%; background:var(--cl-gold); }
.cl-strip-dots em.is-personal { background:#C7B6E2; }
.cl-strip-day.is-on .cl-strip-dots em { background:var(--cl-plum); }
.cl-month { padding:12px; border:1px solid var(--cl-line); border-radius:20px; background:var(--cl-paper); }
.cl-month-nav { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px; }
.cl-month-nav strong { font-family:var(--cl-serif); color:var(--cl-plum); }
.cl-month-nav .cl-round { border-color:var(--cl-line); background:var(--cl-lav); color:var(--cl-plum); }
.cl-month-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:2px; }
.cl-month-head { padding:4px 0; color:var(--cl-muted); font-size:.68rem; font-weight:800; text-align:center; text-transform:uppercase; }
.cl-month-day { display:grid; justify-items:center; align-content:center; gap:2px; min-height:44px; margin:0; padding:2px 0; border:0; border-radius:12px; background:none; color:var(--cl-ink); }
.cl-month-day b { font-size:.9rem; font-weight:700; }
.cl-month-day.is-today b { color:var(--cl-lilac); }
.cl-month-day.is-on { background:var(--cl-plum); color:#fff; }
.cl-month-day.is-on b { color:#fff; }
.cl-month-day.is-on .cl-strip-dots em { background:var(--cl-gold); }
.cl-filters { display:flex; gap:8px; overflow-x:auto; scrollbar-width:none; }
.cl-filters::-webkit-scrollbar { display:none; }
.cl-filter { flex:none; min-height:38px; margin:0; padding:0 14px; border:1px solid var(--cl-line); border-radius:999px; background:var(--cl-paper); color:var(--cl-muted); font-size:.84rem; font-weight:700; }
.cl-filter[aria-pressed="true"] { border-color:var(--cl-plum); background:var(--cl-plum); color:#fff; }
.cl-day-title-h { margin:0; font-family:var(--cl-serif); font-size:1.05rem; color:var(--cl-plum); }
.cl-tl { display:grid; gap:8px; }
.cl-tl-row { display:grid; grid-template-columns:48px minmax(0,1fr); gap:10px; align-items:start; }
.cl-tl-time { padding-top:12px; color:var(--cl-plum); font-size:.8rem; font-weight:800; font-variant-numeric:tabular-nums; }
.cl-tl-free { padding:9px 12px; border:1.5px dashed #D3C8E0; border-radius:14px; color:var(--cl-lilac); font-size:.8rem; font-weight:700; }
.cl-tl-card { display:flex; align-items:center; gap:4px; min-width:0; border:1px solid var(--cl-line); border-left:4px solid var(--cl-gold); border-radius:16px; background:var(--cl-paper); box-shadow:var(--cl-shadow-sm); }
.cl-tl-open { display:grid; gap:3px; flex:1; min-width:0; min-height:56px; margin:0; padding:11px 12px; border:0; background:none; color:inherit; text-align:left; }
.cl-tl-head { display:flex; align-items:baseline; justify-content:space-between; gap:8px; min-width:0; }
.cl-tl-head strong { font-size:.94rem; overflow-wrap:anywhere; }
.cl-tl-open small { color:var(--cl-muted); font-size:.78rem; overflow-wrap:anywhere; }
.cl-tl-tag { flex:none; padding:2px 8px; border-radius:999px; background:var(--cl-lav); color:var(--cl-plum); font-size:.7rem; font-weight:800; }
.cl-tl-card.is-personal { border-left-color:var(--cl-lilac); background:#FBF8FD; }
.cl-tl-card.is-personal .cl-check { margin-right:4px; }
.cl-tl-card.is-checked strong { color:var(--cl-muted); text-decoration:line-through; }
.cl-tl-card.is-booking { border-style:dashed; border-left:4px solid var(--cl-amber); }
.cl-tl-card.is-booking .cl-tl-tag { background:var(--cl-amber-soft); color:var(--cl-amber); }
.cl-tl-card.is-done { border-left-color:var(--cl-green); opacity:.85; }
.cl-tl-card.is-done .cl-tl-tag { background:var(--cl-green-soft); color:var(--cl-green); }
.cl-tl-card.is-missed { border-left-color:#B4AABF; opacity:.75; }
.cl-tl-card.is-dark { flex-direction:column; align-items:stretch; border:0; background:var(--cl-plum); color:#fff; box-shadow:var(--cl-shadow); }
.cl-tl-card.is-dark small { color:#D9CFE6; }
.cl-tl-card.is-dark .cl-tl-tag { background:#ffffff1f; color:var(--cl-gold-2); }
.cl-tl-actions { display:flex; gap:8px; padding:0 12px 12px; }
.cl-tl-actions .cl-btn { flex:1; }
.cl-week-day { display:grid; gap:8px; }
.cl-week-head { display:flex; align-items:baseline; justify-content:space-between; gap:8px; margin:0; padding:4px 2px; min-height:36px; border:0; background:none; color:var(--cl-plum); text-align:left; }
.cl-week-head strong { font-family:var(--cl-serif); font-size:1rem; }
.cl-week-head small { color:var(--cl-muted); font-size:.78rem; }
.cl-week-day.is-today .cl-week-head strong { color:var(--cl-lilac); }
.cl-fab { position:absolute; right:18px; bottom:84px; z-index:4; display:grid; place-items:center; width:58px; height:58px; margin:0; padding:0; border:0; border-radius:20px; background:var(--cl-gold); color:var(--cl-plum); box-shadow:0 12px 26px #2b1f3a40; }
.mf.is-client .mf-main:has(.cl-fab) { padding-bottom:110px; }
.cl-fab svg { fill:none; stroke:currentColor; stroke-width:2.4; stroke-linecap:round; }

/* ---------- Formulários ---------- */
.cl-form { display:grid; gap:12px; }
.cl-pills { display:flex; flex-wrap:wrap; gap:8px; }
.cl-pill { min-height:40px; margin:0; padding:0 14px; border:1px solid var(--cl-line); border-radius:999px; background:var(--cl-paper); color:var(--cl-ink); font-size:.84rem; font-weight:700; }
.cl-pill[aria-pressed="true"] { border-color:var(--cl-plum); background:var(--cl-plum); color:#fff; }
.cl-field { display:grid; gap:6px; min-width:0; color:var(--cl-plum); font-size:.8rem; font-weight:800; }
.cl-field input,.cl-field select,.cl-field textarea,.cl-search input { width:100%; min-height:48px; margin:0; padding:10px 13px; border:1px solid #DCD2C4; border-radius:14px; background:#fff; color:var(--cl-ink); font:inherit; font-size:16px; font-weight:500; }
.cl-field textarea { min-height:72px; resize:vertical; }
.cl-field input:focus,.cl-field select:focus,.cl-field textarea:focus,.cl-search input:focus { outline:none; border-color:var(--cl-lilac); box-shadow:0 0 0 3px #6c5a8a2e; }
.cl-field-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.cl-amount-field input { font-family:var(--cl-serif); font-size:1.4rem; font-weight:700; }
.cl-toggle { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:58px; padding:10px 0; border-bottom:1px solid #EFE8DC; }
.cl-toggle span { display:grid; gap:2px; min-width:0; }
.cl-toggle strong { font-size:.92rem; }
.cl-toggle small { color:var(--cl-muted); font-size:.78rem; line-height:1.35; }
.cl-toggle input { appearance:none; -webkit-appearance:none; position:relative; width:48px; height:28px; flex:none; margin:0; border-radius:999px; background:#D6CDE0; cursor:pointer; transition:background .2s ease; }
.cl-toggle input::after { content:""; position:absolute; top:3px; left:3px; width:22px; height:22px; border-radius:50%; background:#fff; box-shadow:0 1px 3px #0003; transition:transform .2s ease; }
.cl-toggle input:checked { background:var(--cl-plum); }
.cl-toggle input:checked::after { transform:translateX(20px); }
.cl-seg { display:inline-flex; gap:2px; padding:3px; border:1px solid var(--cl-line); border-radius:14px; background:#EFE8DC; }
.cl-seg button { min-height:34px; margin:0; padding:0 12px; border:0; border-radius:11px; background:transparent; color:var(--cl-muted); font-size:.8rem; font-weight:800; }
.cl-seg button[aria-pressed="true"] { background:var(--cl-plum); color:#fff; }
.cl-seg.is-block { display:grid; grid-auto-flow:column; grid-auto-columns:1fr; width:100%; }
.cl-seg.is-block button { min-height:40px; }
.mf-sheet.is-client .form-error:empty { display:none; }
.mf-sheet.is-client .form-error { margin:0; color:var(--cl-red); font-size:.84rem; font-weight:700; }

/* ---------- Carteira ---------- */
.cl-hero.is-wallet { display:grid; gap:14px; }
.cl-big { display:grid; gap:4px; }
.cl-big small { color:#D9CFE6; font-size:.84rem; }
.cl-budget { display:grid; gap:8px; }
.cl-budget-text,.cl-budget-set { justify-self:start; display:inline-flex; align-items:center; gap:6px; min-height:36px; margin:0; padding:0; border:0; background:none; color:#E6DCF0; font-size:.82rem; font-weight:600; text-align:left; }
.cl-budget-set { padding:0 12px; border:1px dashed #ffffff55; border-radius:999px; color:var(--cl-gold-2); font-weight:800; }
.cl-budget-set svg { fill:none; stroke:currentColor; stroke-width:2; }
.cl-bar { display:block; height:8px; border-radius:999px; background:#EDE6DA; overflow:hidden; }
.cl-bar > span { display:block; height:100%; border-radius:inherit; background:var(--cl-plum); transition:width .4s ease; }
.cl-bar.is-light { background:#ffffff26; }
.cl-bar > span.is-gold { background:var(--cl-gold); }
.cl-bar > span.is-plum { background:var(--cl-plum); }
.cl-bar > span.is-warn { background:#E08A4A; }
.cl-segbar { display:grid; gap:3px; }
.cl-segbar span { height:8px; border-radius:3px; background:#EDE6DA; }
.cl-segbar span.is-gold { background:var(--cl-gold); }
.cl-segbar span.is-plum { background:var(--cl-plum); }
.cl-grid2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.cl-tile { display:grid; gap:2px; min-width:0; margin:0; padding:12px 14px; border:1px solid #ffffff24; border-radius:16px; background:#ffffff12; color:#fff; text-align:left; }
.cl-tile small { color:#D9CFE6; font-size:.76rem; }
.cl-tile .cl-num { font-size:1.25rem; color:#fff; }
.cl-tile.is-warn .cl-num { color:#F3C08F; }
.cl-pack { display:grid; gap:6px; align-content:start; min-width:0; }
.cl-pack small { color:var(--cl-muted); font-size:.74rem; overflow-wrap:anywhere; }
.cl-pack .cl-num { font-size:1.5rem; color:var(--cl-plum); }
.cl-pack .cl-num span { font-family:Inter,ui-sans-serif,sans-serif; font-size:.8rem; font-weight:600; color:var(--cl-muted); }
.cl-barrow { display:grid; gap:7px; width:100%; margin:0; padding:12px 14px; border:0; border-bottom:1px solid #EFE8DC; background:none; color:inherit; text-align:left; }
.cl-list > .cl-barrow:last-child { border-bottom:0; }
.cl-barrow.is-static { cursor:default; }
.cl-barrow-top { display:flex; justify-content:space-between; gap:10px; font-size:.88rem; }
.cl-barrow-top span { min-width:0; overflow-wrap:anywhere; }
.cl-barrow-top b { flex:none; font-family:var(--cl-serif); color:var(--cl-plum); }
.cl-month-switch { display:flex; align-items:center; gap:6px; color:#fff; font-weight:700; font-size:.9rem; }
.cl-pay-box { display:grid; gap:6px; text-align:center; }
.cl-pay-box .cl-num { font-size:2rem; color:var(--cl-plum); }

/* ---------- Contratar ---------- */
.cl-search { position:relative; display:block; margin-top:14px; }
.cl-search svg { position:absolute; top:50%; left:14px; transform:translateY(-50%); color:var(--cl-muted); fill:none; stroke:currentColor; stroke-width:2; pointer-events:none; }
.cl-search input { padding-left:44px; border-color:transparent; border-radius:16px; }
.cl-cats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.cl-cat { display:grid; justify-items:center; gap:6px; min-width:0; margin:0; padding:10px 4px; border:1px solid var(--cl-line); border-radius:18px; background:var(--cl-paper); color:var(--cl-ink); font-size:.74rem; font-weight:700; text-align:center; overflow-wrap:anywhere; }
.cl-cat[aria-pressed="true"] { border-color:var(--cl-plum); box-shadow:0 0 0 2px var(--cl-plum) inset; }
.cl-cat-icon { display:grid; place-items:center; width:44px; height:44px; border-radius:14px; background:var(--cl-lav); color:var(--cl-plum); }
.cl-cat-icon.is-barber { background:#1C2B4A; color:var(--cl-gold); }
.cl-cat-icon.is-trainer { background:#2E2B2B; color:#E3A067; }
.cl-cat-icon.is-teacher { background:#1F5C43; color:var(--cl-gold-2); }
.cl-cat-icon.is-other { background:var(--cl-plum); color:var(--cl-gold); }
.cl-pro-line { display:flex; align-items:center; gap:10px; padding:10px 14px; border-bottom:1px solid #EFE8DC; }
.cl-list > .cl-pro-line:last-child { border-bottom:0; }
.cl-pro-open { display:flex; align-items:center; gap:12px; flex:1; min-width:0; min-height:48px; margin:0; padding:0; border:0; background:none; color:inherit; text-align:left; }
.cl-pro-open > span:last-child { display:grid; gap:2px; min-width:0; }
.cl-pro-open strong { display:flex; align-items:center; gap:4px; font-size:.94rem; overflow-wrap:anywhere; }
.cl-pro-open small { color:var(--cl-muted); font-size:.78rem; overflow-wrap:anywhere; }
.cl-fav-mark { flex:none; color:var(--cl-gold); fill:var(--cl-gold); }
.cl-note { display:flex; align-items:flex-start; gap:10px; color:var(--cl-muted); font-size:.84rem; line-height:1.45; }
.cl-note p { margin:0; }
.cl-note.is-soon { background:#FBF6EA; border-style:dashed; }
.cl-avatar { display:grid; place-items:center; width:44px; height:44px; flex:none; border-radius:50%; background:var(--cl-plum); color:var(--cl-gold); font-family:var(--cl-serif); font-weight:700; font-size:1.05rem; }
.cl-avatar.is-barber { background:#1C2B4A; color:#D4A853; }
.cl-avatar.is-trainer { background:#2E2B2B; color:#E3A067; }
.cl-avatar.is-other { background:var(--cl-plum); color:var(--cl-gold); }
.cl-avatar.is-teacher { background:#1F5C43; color:var(--cl-gold-2); }
.cl-avatar.is-big { width:84px; height:84px; font-size:2rem; border:3px solid var(--cl-paper); box-shadow:0 0 0 3px var(--cl-gold),var(--cl-shadow); }

/* ---------- Perfil do profissional (folha) ---------- */
.cl-pro { display:grid; gap:14px; padding-bottom:84px; }
.cl-pro-head { position:relative; display:grid; justify-items:center; gap:8px; margin:-4px -4px 0; padding:22px 16px 18px; border-radius:22px; background:linear-gradient(160deg,var(--cl-plum-2),var(--cl-plum)); color:#fff; text-align:center; }
.cl-pro-head.is-barber { background:linear-gradient(160deg,#24375C,#16223B); }
.cl-pro-head.is-trainer { background:linear-gradient(160deg,#3A3634,#211F1E); }
.cl-pro-head .cl-fav { position:absolute; top:12px; right:12px; }
.cl-fav svg { fill:none; }
.cl-fav.is-on { color:var(--cl-gold); }
.cl-fav.is-on svg { fill:var(--cl-gold); }
.cl-pro-id { display:grid; gap:3px; min-width:0; }
.cl-pro-id h3,.cl-pro-id strong { margin:0; font-family:var(--cl-serif); font-size:1.3rem; color:#fff; overflow-wrap:anywhere; }
.cl-pro-id small { color:#D9CFE6; font-size:.82rem; overflow-wrap:anywhere; }
.cl-star-inline { color:var(--cl-gold); fill:var(--cl-gold); vertical-align:-2px; }
.cl-pro-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
.cl-pro-head .cl-btn.is-soft { background:#ffffff1c; color:#fff; }
.cl-pro-card { display:grid; gap:8px; }
.cl-pref { display:grid; gap:6px; cursor:pointer; background:#FBF6EA; border-color:#EADFC6; }
.cl-pref-top { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.cl-pref-text { margin:0; color:var(--cl-ink); font-size:.88rem; line-height:1.45; overflow-wrap:anywhere; }
.cl-thumb { width:44px; height:44px; flex:none; border-radius:12px; object-fit:cover; }
.cl-sticky { position:sticky; bottom:0; z-index:2; display:flex; align-items:center; gap:10px; margin:0 -16px -16px; padding:12px 16px calc(env(safe-area-inset-bottom,0px) + 12px); border-top:1px solid var(--cl-line); background:#fffdf8f2; backdrop-filter:blur(8px); }
.cl-sticky .cl-btn { flex:1 1 0; min-width:0; padding:0 10px; }
.cl-sticky-text { display:grid; gap:1px; flex:1; min-width:0; }
.cl-sticky-text strong { font-size:.88rem; overflow-wrap:anywhere; }
.cl-sticky-text small { color:var(--cl-muted); font-size:.76rem; }
.cl-sticky-text + .cl-btn { flex:none; }

/* ---------- Pedir horário ---------- */
.cl-steps { display:flex; gap:6px; margin-bottom:4px; }
.cl-steps span { flex:1; height:4px; border-radius:999px; background:#E6DED0; }
.cl-steps span.is-on { background:var(--cl-gold); }
.cl-flow-pro { display:flex; align-items:center; gap:12px; }
.cl-flow-pro > span:last-child,.cl-flow-pro > div { display:grid; gap:2px; min-width:0; }
.cl-flow-pro small { color:var(--cl-muted); font-size:.78rem; }
.cl-inline-form { padding:12px; border:1px dashed #D3C8E0; border-radius:16px; }
.cl-days { display:flex; gap:8px; overflow-x:auto; padding:2px 2px 6px; scroll-snap-type:x mandatory; scrollbar-width:none; }
.cl-days::-webkit-scrollbar { display:none; }
.cl-dayb { display:grid; justify-items:center; gap:1px; flex:none; width:58px; min-height:66px; margin:0; padding:8px 0; border:1px solid var(--cl-line); border-radius:16px; background:var(--cl-paper); color:var(--cl-ink); scroll-snap-align:start; }
.cl-dayb span,.cl-dayb small { color:var(--cl-muted); font-size:.66rem; font-weight:700; text-transform:uppercase; }
.cl-dayb b { font-family:var(--cl-serif); font-size:1.15rem; }
.cl-dayb[aria-pressed="true"] { border-color:var(--cl-plum); background:var(--cl-plum); color:#fff; }
.cl-dayb[aria-pressed="true"] span,.cl-dayb[aria-pressed="true"] small { color:var(--cl-gold-2); }
.cl-slots { display:grid; grid-template-columns:repeat(auto-fill,minmax(76px,1fr)); gap:8px; }
.cl-slot { position:relative; min-height:44px; margin:0; padding:0 6px; border:1px solid var(--cl-line); border-radius:12px; background:var(--cl-paper); color:var(--cl-ink); font-weight:800; font-variant-numeric:tabular-nums; }
.cl-slot.is-usual { border-color:var(--cl-gold); }
.cl-slot.is-usual::after { content:""; position:absolute; top:5px; right:5px; width:6px; height:6px; border-radius:50%; background:var(--cl-gold); }
.cl-slot[aria-pressed="true"] { border-color:var(--cl-gold); background:var(--cl-gold); color:var(--cl-plum); }
.cl-usual { display:flex; align-items:center; gap:6px; color:#7A5A16; font-size:.8rem; font-weight:700; }
.cl-usual svg { fill:none; stroke:currentColor; stroke-width:2; }
.cl-time-other input { max-width:180px; }
.cl-done-box { display:grid; justify-items:center; gap:8px; padding:12px 4px; text-align:center; }
.cl-done-box h3,.cl-done-box strong { margin:0; font-family:var(--cl-serif); font-size:1.25rem; color:var(--cl-plum); }
.cl-done-box p { margin:0; color:var(--cl-muted); font-size:.88rem; line-height:1.45; }
.cl-done-icon { display:grid; place-items:center; width:68px; height:68px; border-radius:50%; background:var(--cl-gold); color:var(--cl-plum); box-shadow:0 0 0 8px #d4a85326; }

/* ---------- Depois do atendimento ---------- */
.cl-after-head { display:flex; align-items:center; gap:12px; }
.cl-after-head > span:last-child,.cl-after-head > div { display:grid; gap:2px; min-width:0; }
.cl-after-head small { color:var(--cl-muted); font-size:.8rem; }
.cl-stars { display:flex; justify-content:center; gap:6px; padding:6px 0; }
.cl-stars button { display:grid; place-items:center; width:48px; height:48px; margin:0; padding:0; border:0; background:none; color:#D6CDE0; }
.cl-stars button svg { width:34px; height:34px; fill:currentColor; stroke:none; transition:transform .15s ease; }
.cl-stars button.is-on { color:var(--cl-gold); }
.cl-stars button:active svg { transform:scale(1.15); }
.cl-photo { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.cl-photo img { width:72px; height:72px; border-radius:14px; object-fit:cover; }
.cl-photo label,.cl-photo .cl-btn { cursor:pointer; }
.cl-tips { display:flex; flex-wrap:wrap; gap:8px; }
.cl-tip-other input { max-width:160px; }
.cl-next-rhythm { display:grid; gap:10px; background:#F6F0FA; border-color:#E3D8EE; }
.cl-next-rhythm > div:last-child { display:flex; gap:8px; flex-wrap:wrap; }

/* ---------- Eu ---------- */
.cl-me-head { display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.cl-me-big { display:grid; place-items:center; width:64px; height:64px; flex:none; border-radius:50%; background:var(--cl-gold); color:var(--cl-plum); font-family:var(--cl-serif); font-size:1.7rem; font-weight:700; box-shadow:0 0 0 4px #ffffff1f; }
.cl-me-id { display:grid; gap:2px; flex:1; min-width:0; }
.cl-me-id h1 { margin:0; font-family:var(--cl-serif); font-size:1.4rem; color:#fff; overflow-wrap:anywhere; }
.cl-me-id small { color:var(--cl-gold-2); font-size:.86rem; font-weight:700; overflow-wrap:anywhere; }
.cl-week { display:grid; gap:12px; padding:16px; border-radius:22px; background:linear-gradient(160deg,#FBF3E1,#F3E6C9); color:var(--cl-ink); box-shadow:var(--cl-shadow-sm); }
.cl-week.is-retro { background:linear-gradient(160deg,var(--cl-plum-2),var(--cl-plum)); color:#fff; }
.cl-week.is-retro .cl-eyebrow { color:var(--cl-gold-2); }
.cl-week.is-retro .cl-num { color:#fff; }
.cl-week.is-retro small,.cl-week.is-retro .cl-week-note { color:#D9CFE6; }
.cl-week-top { display:flex; align-items:baseline; justify-content:space-between; gap:8px; flex-wrap:wrap; }
.cl-week-top small { color:#7A5A16; font-size:.72rem; }
.cl-week-head { font-family:var(--cl-serif); font-size:1.15rem; line-height:1.3; color:inherit; }
.cl-week > .cl-week-head { display:block; padding:0; min-height:0; }
.cl-week-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.cl-week-stats > div { display:grid; gap:2px; min-width:0; }
.cl-week-stats .cl-num { font-size:1.35rem; color:var(--cl-plum); }
.cl-week-stats small { color:var(--cl-muted); font-size:.72rem; line-height:1.3; overflow-wrap:anywhere; }
.cl-week-bars { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; height:76px; align-items:end; }
.cl-week-bars > div { display:grid; grid-template-rows:1fr auto; justify-items:center; gap:4px; height:100%; }
.cl-week-bars span { align-self:end; width:100%; max-width:26px; border-radius:6px 6px 3px 3px; background:#E6D7B5; }
.cl-week-bars span.is-on { background:var(--cl-plum); }
.cl-week-bars span.is-today { box-shadow:0 0 0 2px var(--cl-gold); }
.cl-week-bars small { color:var(--cl-muted); font-size:.66rem; font-weight:700; }
.cl-week-note { margin:0; color:var(--cl-muted); font-size:.86rem; line-height:1.45; }

/* ---------- Folha (bottom sheet) ---------- */
.mf-sheet.is-client { background:var(--cl-paper); color:var(--cl-ink); border-radius:26px 26px 20px 20px; box-shadow:0 -10px 40px #2b1f3a33; }
.mf-sheet.is-client::backdrop { background:#1e182899; backdrop-filter:blur(2px); }
.mf-sheet.is-client .mf-sheet-head h2 { font-family:var(--cl-serif); color:var(--cl-plum); }
.mf-sheet.is-client .mf-sheet-head .eyebrow { color:var(--cl-lilac); }
.mf-sheet.is-client .mf-sheet-back svg { stroke:var(--cl-plum); }
.mf-sheet.is-client .mf-sheet-body > * + * { margin-top:12px; }
.mf-sheet.is-client .mf-sheet-body > .cl-sub { margin-top:16px; }
.mf-sheet.is-client.is-pro-sheet .mf-sheet-body { padding-bottom:0; }
/* telas antigas abertas dentro da área cliente ganham a mesma pele */
.mf.is-client .primary-button,.mf-sheet.is-client .primary-button { border-color:var(--cl-gold); background:var(--cl-gold); color:var(--cl-plum); border-radius:14px; font-weight:800; }
.mf.is-client .secondary-button,.mf-sheet.is-client .secondary-button { border-color:#CFC4DB; background:transparent; color:var(--cl-plum); border-radius:14px; }
.mf-sheet.is-client .mf-detail { border-color:var(--cl-line); border-radius:18px; }
.mf-sheet.is-client .mf-field input,.mf-sheet.is-client .mf-field select,.mf-sheet.is-client .mf-field textarea { border-radius:14px; font-size:16px; }

.visually-hidden { position:absolute !important; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }

@media (max-width:360px){
  .cl-hero { padding-left:14px; padding-right:14px; }
  .cl-body { padding-left:12px; padding-right:12px; }
  .cl-float { margin-left:12px; margin-right:12px; }
  .cl-hello h1 { font-size:1.45rem; }
  .cl-num.is-xl { font-size:2rem; }
  .cl-cats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cl-cat { grid-auto-flow:column; justify-content:start; text-align:left; }
  .cl-cat-icon { width:36px; height:36px; }
  .cl-seg button { padding:0 9px; }
  .cl-tl-row { grid-template-columns:42px minmax(0,1fr); gap:8px; }
  .cl-week-stats .cl-num { font-size:1.15rem; }
}
@media (prefers-reduced-motion:reduce){
  .mf.is-client *,.mf-sheet.is-client * { transition:none !important; animation:none !important; }
}
body[data-area="my_fourmi"] #app-toast { background:var(--cl-plum,#2B1F3A); color:#fff; box-shadow:0 10px 26px #2b1f3a40; }
.cl-day-time { line-height:1.15; }
.cl-field input,.cl-field select { min-width:0; max-width:100%; }
.cl-field input[type="date"],.cl-field input[type="time"] { -webkit-appearance:none; appearance:none; display:block; }
.cl-field input::-webkit-date-and-time-value { text-align:left; }
.cl-note { flex-direction:column; gap:4px; }
.cl-note strong { color:var(--cl-plum); }
.cl-nudge.is-flat .cl-nudge-icon:not(.is-gold) { background:var(--cl-lav); }
.cl-days { flex:none; min-height:80px; }
.cl-filters { flex:none; min-height:40px; }
.cl-after-head { flex-direction:column; align-items:center; gap:4px; text-align:center; }
.cl-photo { padding:10px 12px; border:1px dashed #D3C8E0; border-radius:16px; }
.cl-photo small,.cl-toggle small { font-weight:500; }
.cl-toggle strong { font-family:Inter,ui-sans-serif,sans-serif; }
.cl-me-id { flex:1 1 calc(100% - 80px); }
.cl-me-head > .cl-btn { margin-left:78px; }
.mf-sheet.is-client .mf-link,.mf.is-client .mf-link { color:var(--cl-lilac); }
.cl-hero-title { overflow-wrap:normal; word-break:normal; }
.cl-hero.is-agenda .cl-hero-row,.cl-hero.is-wallet .cl-hero-row { flex-wrap:wrap; }
@media (max-width:360px){
  .cl-hero-title { font-size:1.3rem; }
  .mf.is-client .mf-nav-item { font-size:.6rem; }
}

/* ---------- Auditoria 2026-10-23 ---------- */
.cl-after-head > .cl-stars { display:flex; justify-content:center; gap:6px; }
.cl-tips { align-items:center; }
.cl-tips .cl-pill { white-space:nowrap; flex:none; }
.cl-tip-other { flex:1 1 110px; min-width:0; }
.cl-tip-other input { width:100%; max-width:none; }
.cl-tag { flex:none; padding:4px 10px; border-radius:999px; font-size:.75rem; font-weight:700; background:var(--cl-lav); color:var(--cl-plum); }
.cl-tag.is-ok { background:var(--cl-green-soft); color:var(--cl-green); }
.cl-row.is-done .cl-row-text strong { color:var(--cl-muted); }
.cl-btn.is-ghost { border-color:transparent; background:transparent; color:var(--cl-muted); }
.cl-share-preview { padding:14px 16px; background:#F6F0FA; border-color:#E3D8EE; color:var(--cl-plum); font-size:.95rem; line-height:1.5; white-space:pre-wrap; }
/* Remarcar (folha antiga do Minha FOURMI) em Ameixa & Ouro */
.mf-sheet.is-client .mf-slots { display:flex; flex-wrap:wrap; gap:8px; }
.mf-sheet.is-client .mf-slot { min-width:72px; padding:10px 14px; border:1px solid #D3C8E0; border-radius:999px; background:var(--cl-paper); color:var(--cl-plum); font-weight:700; font-variant-numeric:tabular-nums; }
.mf-sheet.is-client .mf-slot[aria-pressed="true"] { border-color:var(--cl-plum); background:var(--cl-plum); color:var(--cl-gold-2); }
.mf-sheet.is-client .mf-daynav { display:flex; align-items:center; gap:8px; }
.mf-sheet.is-client .mf-daynav label { flex:1; min-width:0; }
.mf-sheet.is-client .mf-daynav input { width:100%; border:1px solid #D3C8E0; border-radius:14px; padding:10px 12px; background:var(--cl-paper); color:var(--cl-plum); font-size:16px; }
.mf-sheet.is-client .mf-icon-btn { display:grid; place-items:center; width:42px; height:42px; flex:none; border:1px solid #D3C8E0; border-radius:50%; background:var(--cl-paper); color:var(--cl-plum); }
.mf-sheet.is-client .mf-icon-btn svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2; }
.mf-sheet.is-client .mf-icon-btn:disabled { opacity:.4; }
.mf-sheet.is-client .mf-note { padding:10px 14px; border-radius:14px; background:var(--cl-lav); color:var(--cl-plum); }
.mf-sheet.is-client .mf-sub { color:var(--cl-plum); font-family:var(--cl-serif); }
.cl-field-row:has(> .hidden) { grid-template-columns:1fr; }
.cl-month-head { text-transform:none; letter-spacing:0; }
