:root{--rose:#F7D9DD;--nude:#E7B8BE;--gold:#C9A06A;--gold-soft:#D4AF7F;--offwhite:#FDF9F8;--blush:#FBEFF1;--bg:#FBF1F2;--surface:#FFFFFF;--soft:#F8E4E7;--line:#F0D3D7;--ink:#5A343B;--muted:#9A747A;--accent:#A9616D;--accent-ink:#FFFFFF;--ok:#3E7F5C;--ok-bg:#E4F2EA;--warn:#97661E;--warn-bg:#FAEEDB;--bad:#AE3F49;--bad-bg:#F9E2E4;--shadow:0 1px 2px rgba(120,60,70,.05),0 8px 24px rgba(169,97,109,.1);--display:"Cormorant Garamond","Times New Roman",Georgia,serif;--body:"Jost",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--script:"Pinyon Script","Snell Roundhand","Brush Script MT",cursive;--r:20px;--side:250px;--ease:cubic-bezier(.22,.8,.24,1);color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html{color-scheme:light}body{margin:0}img{max-width:100%}body{background:var(--bg);color:var(--ink);font:15px/1.45 var(--body);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.num{font-variant-numeric:lining-nums tabular-nums}.day b,.appt .hr,.svc h3,h1.vt,.sheet h2,.view h2{font-variant-numeric:lining-nums}.app{max-width:560px;margin:0 auto;min-height:100vh;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg)}.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--bg);display:flex;align-items:center;gap:12px;padding-block:12px 10px}.mono{width:46px;height:46px;border-radius:50%;background:var(--surface);display:grid;place-items:center;flex:none;border:1px solid var(--line)}.mono img{height:32px;width:auto;max-width:100%}.brand{flex:1;min-width:0;line-height:1.1}.brand b{display:block;font:600 15px/1.2 var(--display);letter-spacing:.32em;text-transform:uppercase}.brand span{font-size:12px;color:var(--muted)}.icon-btn{position:relative;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;flex:none}.icon-btn svg{width:20px;height:20px}.badge{position:absolute;top:-3px;right:-3px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:var(--accent);color:var(--accent-ink);font-size:11px;font-weight:700;display:grid;place-items:center;border:2px solid var(--bg)}.proto{font-size:12.5px;color:var(--warn);background:var(--warn-bg);border-radius:10px;padding:8px 12px;margin-bottom:12px}h1.vt{font:600 32px/1.1 var(--display);margin:6px 0 4px;text-wrap:balance}.sub{color:var(--muted);margin:0 0 16px;font-size:14px}h2.st{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:22px 0 10px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.stack{display:flex;flex-direction:column;gap:10px}.grow{flex:1;min-width:0}.cols{display:block}.cols>*{min-width:0}.days{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:6px;scrollbar-width:none}.days::-webkit-scrollbar{display:none}.day{flex:none;width:54px;padding:8px 0;border-radius:14px;border:1px solid var(--line);background:var(--surface);text-align:center}.day small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.day b{font-size:18px;font-weight:600}.day.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.day.on small{color:inherit;opacity:.85}.day .dot{display:block;width:5px;height:5px;border-radius:50%;margin:3px auto 0;background:currentColor;opacity:.55}.day .dot.no{opacity:0}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 4px}.summary div{background:var(--soft);border-radius:12px;padding:10px 12px;min-width:0}.summary small{display:block;font-size:11px;color:var(--muted)}.summary b{font-size:17px}.appt{display:grid;grid-template-columns:56px 1fr;gap:12px;padding:14px}.appt .hr{font:600 21px/1 var(--display)}.appt .hr small{display:block;font:500 11px var(--body);color:var(--muted);margin-top:5px}.appt .who{border:0;background:none;padding:0;font-size:15px;font-weight:600;text-align:left;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}.appt p{margin:2px 0 0;color:var(--muted);font-size:13px}.appt .obs{margin-top:8px;font-size:13px;color:var(--ink);background:var(--soft);border-radius:10px;padding:7px 10px}.appt .obs b{font-weight:600;color:var(--muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase;margin-right:4px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.chip{font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:99px;background:var(--soft);color:var(--muted)}.chip.ok{background:var(--ok-bg);color:var(--ok)}.chip.warn{background:var(--warn-bg);color:var(--warn)}.chip.bad{background:var(--bad-bg);color:var(--bad)}.chip.acc{color:var(--accent)}.acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.btn{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:9px 14px;font-weight:600;font-size:14px}.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.sm{padding:6px 11px;font-size:13px;border-radius:10px}.btn.ghost{background:transparent}.btn.danger{color:var(--bad);border-color:var(--bad-bg);background:transparent}.btn.block{width:100%;padding:13px}.empty{padding:22px;text-align:center;color:var(--muted)}.empty b{display:block;font:600 21px var(--display);color:var(--ink);margin-bottom:4px}.li{display:flex;gap:12px;align-items:center;padding:12px 14px;border:0;border-top:1px solid var(--line);background:none;width:100%;text-align:left}.li:first-child{border-top:0}.li h3{margin:0;font-size:14.5px;font-weight:600}.li p{margin:2px 0 0;font-size:12.5px;color:var(--muted)}.li .pr{text-align:right;font-size:13.5px;font-weight:600;white-space:nowrap}.li .pr small{display:block;color:var(--gold);font-weight:600}.li.off h3,.li.off .pr{opacity:.45}.av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font:600 19px var(--display);background:var(--soft);color:var(--accent);flex:none}.seg{display:flex;background:var(--soft);border-radius:12px;padding:3px;gap:3px}.seg button,.seg label{flex:1;border:0;background:transparent;border-radius:10px;padding:8px 6px;font-weight:600;font-size:13px;color:var(--muted);text-align:center;cursor:pointer}.seg .on,.seg input:checked+span{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.seg label{padding:0;display:flex}.seg label span{flex:1;padding:8px 6px;border-radius:10px}.seg input{position:absolute;opacity:0;pointer-events:none}.bal{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.bal .card{padding:14px;min-width:0}.bal .cur{display:flex;justify-content:space-between;align-items:baseline}.bal .cur span{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600}.bal .cur i{font-style:normal;font:600 19px var(--display);color:var(--gold)}.bal .big{font-size:23px;font-weight:700;margin:6px 0 8px;letter-spacing:-.01em}.bal dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:2px 8px;font-size:12.5px}.bal dt{color:var(--muted)}.bal dd{margin:0;text-align:right}.conv{margin-top:10px;padding:12px 14px;font-size:13px;color:var(--muted);display:flex;gap:10px;align-items:center}.conv b{color:var(--ink)}.ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-weight:700;flex:none}.ic.in{background:var(--ok-bg);color:var(--ok)}.ic.out{background:var(--bad-bg);color:var(--bad)}.v{font-weight:700;white-space:nowrap}.v.in{color:var(--ok)}.v.out{color:var(--bad)}.li p.t{margin:0;font-size:14px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tbl{width:100%;border-collapse:collapse;font-size:13.5px}.tbl th{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600;text-align:right;padding:10px 14px 6px}.tbl th:first-child,.tbl td:first-child{text-align:left}.tbl td{padding:8px 14px;border-top:1px solid var(--line);text-align:right}.cat-h{display:flex;align-items:baseline;justify-content:space-between;margin:20px 0 8px}.cat-h h2{font:600 23px var(--display);margin:0}.cat-h span{font-size:12px;color:var(--muted)}.search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:0 12px;margin-bottom:12px}.search svg{width:18px;height:18px;color:var(--muted);flex:none}.search input,.field .search input{border:0;background:none;padding:11px 0;width:100%;min-width:0;outline:none;border-radius:0}.search:focus-within{border-color:var(--accent)}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:14px 0}.stats div{background:var(--soft);border-radius:12px;padding:10px 12px;min-width:0}.stats small{display:block;font-size:11px;color:var(--muted)}.stats b{font-size:16px}.tel{display:flex;align-items:center;gap:8px;font-size:14px}.tel span{-webkit-user-select:all;user-select:all}.ficha{white-space:pre-wrap;font-size:14px;background:var(--soft);border-radius:12px;padding:10px 12px;margin:0}.linkbar{display:flex;gap:8px;align-items:center;padding:10px 12px;font-size:13px}.linkbar code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,Menlo,monospace;font-size:12.5px;color:var(--accent)}.phone{margin:12px auto 0;max-width:420px;border-radius:26px;border:1px solid var(--line);overflow:hidden;background:var(--bg);box-shadow:var(--shadow)}.pub-hero{background:var(--soft);padding:18px 18px 16px;text-align:center;position:relative}.pub-hero img{width:150px;max-width:60%;height:auto;display:block;margin:6px auto 4px}.pub-hero p{margin:4px 0 0;font-size:13px;color:var(--muted)}.lang{position:absolute;top:12px;right:12px;display:flex;gap:2px;background:var(--surface);border-radius:99px;padding:2px;border:1px solid var(--line)}.lang button{border:0;background:none;font-size:11.5px;font-weight:700;padding:4px 9px;border-radius:99px;color:var(--muted)}.lang button.on{background:var(--accent);color:var(--accent-ink)}.pub-body{padding:16px}.steps{display:flex;gap:4px;margin-bottom:14px}.steps i{flex:1;height:3px;border-radius:3px;background:var(--line)}.steps i.on{background:var(--accent)}.pub-body h3{font:600 22px var(--display);margin:0 0 10px}.cats{display:flex;gap:6px;overflow-x:auto;margin-bottom:10px;scrollbar-width:none}.cats::-webkit-scrollbar{display:none}.cats button{flex:none;border:1px solid var(--line);background:var(--surface);border-radius:99px;padding:6px 12px;font-size:13px;font-weight:600;color:var(--muted)}.cats button.on{border-color:var(--accent);color:var(--accent)}.opt{display:flex;gap:10px;align-items:center;padding:12px 14px;width:100%;text-align:left;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.opt h4{margin:0;font-size:14.5px;font-weight:600}.opt p{margin:2px 0 0;font-size:12.5px;color:var(--muted)}.opt .pr{text-align:right;font-weight:600;font-size:13.5px;white-space:nowrap}.opt .pr small{display:block;color:var(--gold)}.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px}.slots button{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:9px 0;font-weight:600;font-size:14px}.slots button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.note{font-size:13px;background:var(--warn-bg);color:var(--warn);border-radius:12px;padding:10px 12px}.ok-big{text-align:center;padding:16px 4px}.ok-big .tick{width:56px;height:56px;border-radius:50%;background:var(--ok-bg);color:var(--ok);display:grid;place-items:center;margin:0 auto 10px;font-size:26px;font-weight:700}.field{display:flex;flex-direction:column;gap:5px}.field label,.field .lb{font-size:12.5px;font-weight:600;color:var(--muted)}.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:11px 12px;width:100%;min-width:0}.field textarea{resize:vertical;min-height:70px}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.two>*{min-width:0}.checks{display:flex;flex-wrap:wrap;gap:8px}.checks label{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;padding:8px 11px;font-size:13.5px;color:var(--ink);font-weight:500;background:var(--surface)}.switch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0}.switch span{font-size:14px}.switch small{display:block;color:var(--muted);font-size:12px}.switch input{width:22px;height:22px;accent-color:var(--accent);flex:none}.hint{font-size:12px;color:var(--muted);margin:0}.picked{display:flex;align-items:center;gap:10px;padding:10px 12px}.picked .grow b{display:block;font-size:14.5px}.picked .grow small{color:var(--muted)}.res{display:flex;flex-direction:column;margin-top:6px}.res:empty{display:none}.sheet-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:flex-end;justify-content:center}.sheet-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:#2814186b}.sheet{position:relative;width:100%;max-width:560px;max-height:88vh;overflow-y:auto;background:var(--bg);border-radius:22px 22px 0 0;padding-block:8px calc(18px + env(safe-area-inset-bottom,0px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));animation:up .22s ease-out}.sheet .grab{width:40px;height:4px;border-radius:4px;background:var(--line);margin:4px auto 10px}.sheet h2{font:600 26px/1.15 var(--display);margin:0 0 4px}.sheet form{display:flex;flex-direction:column;gap:12px;margin-top:10px}@keyframes up{0%{transform:translateY(40px);opacity:.5}to{transform:none;opacity:1}}.tabs{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.side-logo,.side-foot{display:none}.tabs .in{max-width:560px;margin:0 auto;display:grid;grid-template-columns:repeat(6,1fr)}.tabs .in button{border:0;background:none;padding:9px 0 10px;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10.5px;font-weight:600;color:var(--muted);min-width:0}.tabs svg{width:22px;height:22px;flex:none}.tabs .in button.on{color:var(--accent)}.fab{position:fixed;right:max(18px,calc(50% - 262px));bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:15;border:0;border-radius:99px;background:var(--accent);color:var(--accent-ink);font-weight:700;padding:13px 18px;box-shadow:0 8px 24px #9646554d}.toast{position:fixed;left:50%;bottom:calc(140px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:40;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:12px;font-size:14px;font-weight:600;max-width:calc(100% - 32px)}@media(min-width:960px){.tabs{top:0;right:auto;width:var(--side);border-top:0;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:28px 16px 20px}.side-logo{display:block;text-align:center;margin-bottom:22px}.side-logo img{width:150px;height:auto;max-width:100%}.tabs .in{display:flex;flex-direction:column;gap:2px;max-width:none;margin:0}.tabs .in button{flex-direction:row;gap:12px;padding:11px 14px;border-radius:12px;font-size:14.5px;justify-content:flex-start}.tabs .in button:hover,.tabs .in button.on{background:var(--soft)}.tabs svg{width:20px;height:20px}.side-foot{display:block;margin-top:auto;font-size:12px;color:var(--muted);padding:0 14px}.app{max-width:none;margin:0 0 0 var(--side);padding:0 40px 48px}.app>*{max-width:1120px}.top .mono{display:none}.top{padding-block:22px 12px}.brand b{font-size:13px}h1.vt{font-size:38px}.cols{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}.cols.even{grid-template-columns:1fr 1fr}.cols>aside{position:sticky;top:90px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;align-items:start}.fab{right:40px;bottom:32px}.toast{bottom:40px;left:calc(50% + var(--side) / 2)}.sheet-wrap{align-items:center}.sheet{border-radius:22px;max-height:86vh;padding:18px 26px 24px;max-width:520px}.sheet .grab{display:none}}@media(prefers-reduced-motion:reduce){.sheet{animation:none}}@media(max-width:380px){.bal{grid-template-columns:1fr}.summary b{font-size:15px}.tabs .in button{font-size:9.5px}}.auth{min-height:100vh;display:grid;place-items:center;padding-block:32px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.auth-card{width:100%;max-width:380px;padding:28px 22px;text-align:center}.auth-card img{width:150px;height:auto;margin:0 auto 8px;display:block}.auth-card h1{font:600 28px var(--display);margin:4px 0 2px}.auth-card form{display:flex;flex-direction:column;gap:12px;margin-top:18px;text-align:left}.auth-card .err{color:var(--bad);font-size:13px;margin:0}.linkish{border:0;background:none;color:var(--accent);font-weight:600;font-size:13.5px;padding:6px;text-decoration:underline;text-underline-offset:3px}.loading{min-height:60vh;display:grid;place-items:center;color:var(--muted)}.share{padding:16px;display:flex;flex-direction:column;gap:12px}.share .url{font:600 17px/1.3 var(--body);color:var(--accent);word-break:break-all;-webkit-user-select:all;user-select:all}.share pre{margin:0;white-space:pre-wrap;font:14px/1.5 var(--body);background:var(--soft);border-radius:12px;padding:12px}.pub{max-width:480px;margin:0 auto;min-height:100vh;padding-bottom:32px}.pub .pub-hero{border-radius:0 0 28px 28px;padding-top:22px}.pub .pub-body{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.pub-foot{text-align:center;font-size:12.5px;color:var(--muted);margin-top:24px;padding-inline:16px}.wa{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-weight:600;color:var(--ok);text-decoration:none;font-size:14px}.skeleton{height:62px;border-radius:14px;background:var(--soft);animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}
