:root{--purple-900:#26122a;--purple-800:#3a1f3f;--purple-700:#4a2750;--aubergine:#5a2d4f;--line:#d4af3738;--line-soft:#faf7f21a;--gold:#d4af37;--gold-soft:#d4af3724;--ivory:#faf7f2;--ivory-dim:#faf7f2ad;--ivory-faint:#faf7f273;--sage:#a9b59b;--danger:#e59a8f;--warning:#e8c46a;--info:#9fb7e0;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;--radius:14px;--nav-h:64px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--sans);color:var(--ivory);background:var(--purple-900);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.45}*{box-sizing:border-box}body{background:radial-gradient(ellipse at top, #5a2d4f8c, transparent 60%), var(--purple-900);background-attachment:fixed;min-height:100dvh;margin:0}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--serif);letter-spacing:.01em;margin:0;font-weight:600}h1{font-size:2rem;line-height:1.1}h2{font-size:1.45rem}h3{font-size:1.15rem}.shell{max-width:640px;padding:20px 16px calc(var(--nav-h) + 32px + env(safe-area-inset-bottom));margin:0 auto}.page-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:18px;display:flex}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:4px;font-size:.72rem}.muted{color:var(--ivory-dim)}.faint{color:var(--ivory-faint);font-size:.85rem}.stack{flex-direction:column;gap:12px;display:flex}.row{align-items:center;gap:10px;display:flex}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.section{margin-top:26px}.section>h2,.section>.row>h2{margin-bottom:10px}.nav{height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:10;background:#26122af0;justify-content:center;display:flex;position:fixed;inset:auto 0 0}.nav-inner{width:100%;max-width:640px;display:flex}.nav a{color:var(--ivory-faint);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:.72rem;display:flex}.nav a svg{width:22px;height:22px}.nav a.active{color:var(--gold)}.fab{right:max(16px,50vw - 304px);bottom:calc(var(--nav-h) + 16px + env(safe-area-inset-bottom));z-index:11;background:var(--gold);color:var(--purple-900);border-radius:999px;align-items:center;gap:6px;padding:13px 18px;font-weight:600;display:inline-flex;position:fixed;box-shadow:0 8px 24px #00000059}.card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,#5a2d4f8c,#3a1f3f8c);padding:16px}.card-link{transition:border-color .15s;display:block}.card-link:hover{border-color:var(--gold)}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.stat .label{color:var(--ivory-dim);font-size:.75rem}.stat .value{font-family:var(--serif);margin-top:4px;font-size:1.75rem;font-weight:600;line-height:1.15}.stat .value.gold{color:var(--gold)}.kv{grid-template-columns:auto 1fr;gap:8px 0;font-size:.93rem;display:grid}.kv dt{color:var(--ivory-dim)}.kv dd{text-align:right;margin:0;padding-left:16px}.kv .total dt,.kv .total dd{color:var(--ivory);border-top:1px solid var(--line-soft);padding-top:8px;font-weight:600}.divider{background:var(--line-soft);height:1px;margin:12px 0}.appt{grid-template-columns:62px 1fr;align-items:start;gap:12px;display:grid}.appt-time{font-family:var(--serif);color:var(--gold);font-size:1.25rem;font-weight:600;line-height:1.1}.appt-time small{font-family:var(--sans);color:var(--ivory-faint);margin-top:2px;font-size:.7rem;font-weight:400;display:block}.appt-title{font-weight:600}.free-block{border-radius:var(--radius);color:var(--sage);border:1px dashed #a9b59b8c;padding:10px 14px;font-size:.88rem}.badge{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:.72rem;font-weight:500;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge.neutral{color:var(--ivory-dim)}.badge.warning{color:var(--warning)}.badge.success{color:var(--sage)}.badge.gold{color:var(--gold)}.badge.danger{color:var(--danger)}.badge.info{color:var(--info)}label.field{color:var(--ivory-dim);flex-direction:column;gap:6px;font-size:.8rem;display:flex}input,select,textarea{font:inherit;color:var(--ivory);border:1px solid var(--line-soft);background:#26122ab3;border-radius:10px;width:100%;padding:11px 12px}input:focus,select:focus,textarea:focus{border-color:var(--gold);outline:none}textarea{resize:vertical;min-height:70px}.check{align-items:center;gap:10px;font-size:.93rem;display:flex}.check input{width:18px;height:18px;accent-color:var(--gold)}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.btn{font:inherit;border:1px solid var(--line);color:var(--ivory);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:11px 16px;font-size:.9rem;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover{border-color:var(--gold)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--gold);border-color:var(--gold);color:var(--purple-900)}.btn.primary:hover{background:#e0bf52}.btn.whatsapp{color:var(--sage);border-color:#a9b59b99}.btn.danger{color:var(--danger);border-color:#e59a8f80}.btn.block{width:100%}.btn.small{padding:7px 11px;font-size:.8rem}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{font:inherit;border:1px solid var(--line);color:var(--ivory);cursor:pointer;background:0 0;border-radius:999px;padding:8px 13px;font-size:.88rem}.chip.selected{background:var(--gold);border-color:var(--gold);color:var(--purple-900);font-weight:600}.days{grid-template-columns:auto repeat(7,minmax(0,1fr)) auto;align-items:center;gap:4px;display:grid}.day{font:inherit;color:var(--ivory-dim);cursor:pointer;text-transform:capitalize;background:0 0;border:1px solid #0000;border-radius:12px;flex-direction:column;align-items:center;padding:8px 0;font-size:.7rem;display:flex}.day strong{font-family:var(--serif);color:var(--ivory);font-size:1.3rem}.day.today strong{color:var(--gold)}.day.selected{border-color:var(--gold);background:var(--gold-soft)}.day .dot{background:0 0;border-radius:50%;width:5px;height:5px;margin-top:3px}.day .dot.on{background:var(--sage)}.icon-btn{font:inherit;color:var(--ivory-dim);cursor:pointer;background:0 0;border:none;padding:8px;font-size:1.1rem}.service-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.service-option{font:inherit;text-align:left;border:1px solid var(--line-soft);color:var(--ivory);cursor:pointer;background:#26122a80;border-radius:12px;padding:12px}.service-option.selected{border-color:var(--gold);background:var(--gold-soft)}.service-option .price{color:var(--gold);margin-top:4px;font-size:.82rem}.alert{color:var(--danger);background:#e59a8f14;border:1px solid #e59a8f73;border-radius:10px;padding:10px 12px;font-size:.88rem}.alert.warn{color:var(--warning);background:#e8c46a14;border-color:#e8c46a73}.empty{text-align:center;color:var(--ivory-faint);border:1px dashed var(--line-soft);border-radius:var(--radius);padding:26px 16px;font-size:.9rem}.sheet-backdrop{z-index:20;background:#0a040c99;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--purple-800);border:1px solid var(--line);width:100%;max-width:640px;max-height:88dvh;padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-bottom:none;border-radius:20px 20px 0 0;overflow-y:auto}.brand-mark{font-family:var(--serif);text-align:center}.brand-mark .mono{color:var(--gold);font-size:3.2rem;line-height:1}.brand-mark .name{letter-spacing:.2em;margin-top:8px;font-size:1.1rem}.brand-mark .sub{font-family:var(--sans);letter-spacing:.45em;color:var(--gold);margin-top:4px;font-size:.7rem}.center-screen{justify-content:center;align-items:center;min-height:100dvh;padding:24px 16px;display:flex}@media (width>=560px){.stat-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}}.chart{flex-direction:column;gap:10px;display:flex}.chart-svg{width:100%;height:auto;display:block;overflow:visible}.chart-svg .grid{stroke:var(--line-soft);stroke-width:1px}.chart-svg .baseline{stroke:#faf7f24d;stroke-width:1px}.chart-svg .axis{fill:var(--ivory-faint);font-size:11px;font-family:var(--sans)}.legend{color:var(--ivory-dim);flex-wrap:wrap;gap:14px;font-size:.8rem;display:flex}.legend-item{align-items:center;gap:6px;display:inline-flex}.swatch{vertical-align:middle;border-radius:3px;width:10px;height:10px;display:inline-block}.chart-tip{background:var(--purple-900);border:1px solid var(--line);pointer-events:none;border-radius:10px;flex-direction:column;gap:4px;min-width:170px;padding:8px 10px;font-size:.8rem;display:flex;position:absolute;top:0;transform:translate(-50%);box-shadow:0 6px 18px #00000059}.data-table{border-collapse:collapse;width:100%;font-size:.82rem}.data-table th,.data-table td{text-align:right;border-bottom:1px solid var(--line-soft);padding:6px 4px}.data-table th:first-child,.data-table td:first-child{text-align:left}.data-table th{color:var(--ivory-dim);font-weight:500}.rank{flex-direction:column;gap:12px;display:flex}.rank-label{font-size:.85rem}.rank-value{color:var(--ivory-dim);white-space:nowrap;font-size:.8rem}.rank-track{background:#faf7f20f;border-radius:4px;height:8px;margin-top:5px}.rank-bar{border-radius:4px;min-width:4px;height:100%}.ledger-row{border-bottom:1px solid var(--line-soft);grid-template-columns:1fr auto;gap:4px 12px;padding:10px 0;font-size:.88rem;display:grid}.ledger-row:last-child{border-bottom:none}.ledger-row .amount{text-align:right;white-space:nowrap;font-weight:600}.ledger-row .amount.in{color:var(--sage)}.ledger-row .amount.out{color:var(--ivory)}.ledger-row .amount.neutral{color:var(--ivory-faint)}.nav a{font-size:.68rem}.link-btn{font:inherit;color:var(--ivory-faint);cursor:pointer;background:0 0;border:none;padding:2px 0;font-size:.78rem;text-decoration:underline}.link-btn:hover{color:var(--ivory)}.session-dot{border:1.5px solid var(--gold);border-radius:50%;width:14px;height:14px;display:inline-block}.session-dot.done{background:var(--gold)}.session-row{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:9px 0;font-size:.9rem;display:flex}.session-row:last-child{border-bottom:none}.session-check{border:1.5px solid var(--ivory-faint);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.8rem;display:inline-flex}.session-check.done{background:var(--gold);border-color:var(--gold);color:var(--purple-900);font-weight:700}.tabs{border-bottom:1px solid var(--line-soft);gap:18px;margin-bottom:14px;display:flex}.tabs a{color:var(--ivory-faint);border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 0}.tabs a.active{color:var(--gold);border-color:var(--gold)}.chat{flex-direction:column;gap:10px;display:flex}.bubble{border-radius:14px;max-width:88%;padding:10px 12px;font-size:.9rem;line-height:1.4}.bubble.patient{background:#a9b59b2e;border:1px solid #a9b59b59;border-bottom-right-radius:4px;align-self:flex-end}.bubble.bot{border:1px solid var(--line);background:#26122acc;border-bottom-left-radius:4px;align-self:flex-start}.list-option{font:inherit;text-align:left;border:1px solid var(--line-soft);color:var(--ivory);cursor:pointer;background:#3a1f3f99;border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.list-option:hover{border-color:var(--gold)}.toast{left:50%;top:calc(12px + env(safe-area-inset-top));z-index:30;background:var(--purple-800);border:1px solid var(--gold);border-radius:14px;align-items:flex-start;gap:12px;width:min(600px,100vw - 24px);padding:12px 14px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #00000073}.notice{border-bottom:1px solid var(--line-soft);align-items:flex-start;gap:10px;padding:10px 0;font-size:.88rem;display:flex}.notice:last-child{border-bottom:none}.legal h1{font-size:1.9rem}.legal h2{color:var(--gold);margin-top:26px;margin-bottom:8px;font-size:1.25rem}.legal p,.legal li{color:var(--ivory-dim);font-size:.93rem;line-height:1.6}.legal ul{margin:8px 0;padding-left:20px}.legal a{color:var(--gold);text-decoration:underline}
