*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body{margin:0}h1,h2,h3,h4,h5,h6,p,dl,dd,figure,blockquote{margin:0}a{color:var(--c-primary);text-decoration:none}a:hover{text-decoration:underline}body{overflow-wrap:break-word}.row>*,.stack>*,.grid>*,.srow>*,.appt>*{min-width:0}body{font-family:var(--font);background:var(--c-bg);color:var(--c-ink);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}.rail{position:fixed;inset-block:0;inset-inline-start:0;width:var(--rail-w);z-index:50;background:var(--c-rail);display:flex;flex-direction:column;align-items:center;padding:var(--sp-4) 0;gap:var(--sp-1)}.rail::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 40% at 50% 0%,color-mix(in srgb,var(--c-accent) 26%,transparent),transparent 60%)}.rail-logo{margin-bottom:var(--sp-3);position:relative;z-index:1}.rail button,.rail a{width:46px;height:46px;border:0;background:transparent;border-radius:var(--r-md);cursor:pointer;display:grid;place-items:center;color:color-mix(in srgb,#fff 62%,var(--c-rail));transition:var(--t);position:relative;z-index:1;text-decoration:none}.rail button:hover,.rail a:hover{background:rgba(255,255,255,.09);color:#fff}.rail button[aria-current="true"],.rail a[aria-current="true"]{background:rgba(255,255,255,.13);color:#fff}.rail button[aria-current="true"]::before,.rail a[aria-current="true"]::before{content:'';position:absolute;inset-inline-start:-13px;top:11px;bottom:11px;width:3px;border-radius:3px;background:var(--c-accent)}.rail .tip{position:absolute;inset-inline-start:58px;background:var(--c-rail);color:#fff;font-size:12px;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:var(--t);z-index:2}.rail button:hover .tip{opacity:1}.rail-sep{flex:1}.app{margin-inline-start:var(--rail-w);min-height:100%;display:flex;flex-direction:column}.pagehead{background:var(--c-surface);border-bottom:1px solid var(--c-line);padding:16px clamp(16px,3vw,34px);display:flex;align-items:center;gap:var(--sp-4);flex-wrap:wrap;position:sticky;top:0;z-index:30}.pagehead h1{font-size:20px;font-weight:700;letter-spacing:-.02em}.pagehead p{font-size:13px;color:var(--c-ink-3);margin-top:1px}main{flex:1;padding:clamp(18px,3vw,30px) clamp(16px,3vw,34px)}.wrap{max-width:1240px}.card{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--sh-1)}.card-tint{background:var(--c-surface-2);box-shadow:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);font:inherit;font-weight:600;font-size:14px;border:1px solid transparent;padding:var(--sp-2) var(--sp-4);border-radius:var(--r-md);cursor:pointer;text-decoration:none;transition:var(--t)}.btn:disabled{opacity:.42;cursor:not-allowed}.portal-band{background:linear-gradient(180deg,var(--c-primary-soft),var(--c-surface) 70%);border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--sh-1)}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--sp-4)}.rowlink{cursor:pointer}.rowlink:hover{background:var(--c-surface-2)}.msg-why-row>td{padding-block:0;border:0}.msg-why-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease;font-size:13px;color:var(--c-danger)}.msg-why-row.is-open .msg-why-body{grid-template-rows:1fr}.msg-why-body>div{min-height:0;overflow:hidden}.msg-why-row.is-open>td{padding-block:var(--sp-2)}@media (prefers-reduced-motion:reduce){.msg-why-body{transition:none}}.btn.is-busy::before{content:"";width:14px;height:14px;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:btn-spin .6s linear infinite}a.btn.is-busy{pointer-events:none}.toggle.is-busy{opacity:.42;cursor:progress}@keyframes btn-spin{to{transform:rotate(360deg)}}@keyframes btn-busy-fade{to{opacity:.25}}@media (prefers-reduced-motion:reduce){.btn.is-busy::before{animation:btn-busy-fade 1.1s ease-in-out infinite alternate}}.btn svg{flex:none}.btn-primary{background:var(--c-primary);color:#fff}.btn-primary:not(:disabled):hover{background:var(--c-primary-600);box-shadow:var(--sh-3)}.btn-soft{background:var(--c-primary-soft);color:var(--c-primary-ink)}.btn-soft:not(:disabled):hover{background:var(--c-primary-soft-2)}.btn-ghost{background:var(--c-surface);border-color:var(--c-line-2);color:var(--c-ink)}.btn-ghost:hover{border-color:var(--c-primary);color:var(--c-primary)}.btn-quiet{background:transparent;color:var(--c-ink-2)}.btn-quiet:hover{background:var(--c-surface-2);color:var(--c-ink)}.btn-danger{background:var(--c-danger-soft);color:var(--c-danger)}.btn-danger:hover{background:var(--c-danger);color:#fff}.btn-sm{padding:var(--sp-2) var(--sp-3);font-size:13px}.btn-block{width:100%}.btn:focus-visible{outline:0;box-shadow:var(--ring)}.field{display:block;margin-bottom:var(--sp-4)}.field span{display:block;font-size:13px;font-weight:600;color:var(--c-ink-2);margin-bottom:var(--sp-1)}fieldset.field{border:0;padding:0;min-width:0}fieldset.field>legend{display:block;padding:0;font-size:13px;font-weight:600;color:var(--c-ink-2);margin-bottom:var(--sp-1)}.input{width:100%;font:inherit;font-size:14.5px;padding:var(--sp-2) var(--sp-3);color:var(--c-ink);background:var(--c-surface-2);border:1px solid var(--c-line-2);border-radius:var(--r-md);transition:var(--t)}.input::placeholder{color:var(--c-ink-3)}.input:focus{outline:0;border-color:var(--c-primary);background:#fff;box-shadow:var(--ring)}textarea.input{resize:vertical;min-height:78px}.field-pair.card{padding:var(--sp-3) var(--sp-4)}.field-pair.is-hidden-field{opacity:.55}.field-pair-label{max-width:260px}.wp-day.card{padding:var(--sp-3) var(--sp-4)}.wp-time{width:auto;min-width:118px}.wp-breaks:empty{display:none}.wp-break{padding-inline-start:var(--sp-3);border-inline-start:2px solid var(--c-line-2)}.richtext-toolbar{display:flex;gap:var(--sp-1);margin-bottom:var(--sp-1)}.richtext{min-height:160px;overflow-y:auto;cursor:text}.richtext:focus{outline:0;border-color:var(--c-primary);background:var(--c-surface);box-shadow:var(--ring)}.richtext p:not(:last-child){margin-bottom:var(--sp-2)}.richtext ul,.richtext ol{margin:0 0 var(--sp-2);padding-inline-start:var(--sp-5)}.badge{display:inline-flex;align-items:center;gap:var(--sp-1);font-size:12px;font-weight:600;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-sm)}.badge-primary{background:var(--c-primary-soft);color:var(--c-primary-ink)}.badge-ok{background:var(--c-ok-soft);color:color-mix(in srgb,var(--c-ok) 78%,#000)}.badge-warn{background:var(--c-warn-soft);color:var(--c-warn)}.badge-danger{background:var(--c-danger-soft);color:var(--c-danger)}.badge-mute{background:var(--c-mute);color:var(--c-ink-2)}.dot{width:6px;height:6px;border-radius:50%;background:currentColor}.h1{font-size:clamp(21px,2.5vw,28px);font-weight:700;letter-spacing:-.025em;line-height:1.25}.h2{font-size:18px;font-weight:700;letter-spacing:-.015em}.h3{font-size:15px;font-weight:600}.muted{color:var(--c-ink-2)}.dim{color:var(--c-ink-3);font-size:13px}.label{font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-ink-3)}.stack{display:flex;flex-direction:column}.row{display:flex;align-items:center}.gap-1{gap:var(--sp-1)}.gap-2{gap:var(--sp-2)}.gap-3{gap:var(--sp-3)}.gap-4{gap:var(--sp-4)}.between{justify-content:space-between}.wrapf{flex-wrap:wrap}.mt-2{margin-top:var(--sp-2)}.mt-3{margin-top:var(--sp-3)}.mt-4{margin-top:var(--sp-4)}.mt-5{margin-top:var(--sp-6)}.mb-3{margin-bottom:var(--sp-3)}.mb-4{margin-bottom:var(--sp-4)}.mb-5{margin-bottom:var(--sp-6)}.align-start{align-items:flex-start}.center{justify-content:center}.text-center{text-align:center}.text-end{text-align:end}.justify-end{justify-content:flex-end}.fs-14{font-size:14px}.max-w-360{max-width:360px}.field-inline{margin:0;max-width:320px;flex:1 1 220px}.card-notice-warn{border-inline-start:3px solid var(--c-warn)}.tone-ok{color:var(--c-ok)}.tone-warn{color:var(--c-warn)}.tone-danger{color:var(--c-danger)}.tone-ink-2{color:var(--c-ink-2)}.captcha-img{display:block;margin-bottom:8px;cursor:pointer;border-radius:var(--r-md)}.rail-logo-img{border-radius:8px;object-fit:cover}.ms-auto{margin-inline-start:auto}.auth-wrap{max-width:460px;margin:8vh auto 0;padding-inline:var(--sp-4)}.settings-nav-title{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--c-ink-3);padding-bottom:var(--sp-2);margin-bottom:var(--sp-2);border-bottom:1px solid var(--c-line)}.settings-nav-item{display:block;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);font-weight:600;color:var(--c-ink-2);text-decoration:none;transition:var(--t)}.settings-nav-item:hover{background:var(--c-surface-2);color:var(--c-primary);text-decoration:none}.settings-sidebar{flex:0 0 220px}.settings-content{flex:1 1 420px;min-width:280px}.iconbox.iconbox-sm{width:32px;height:32px}.input.invalid{border-color:var(--c-danger)}.avatar-primary{background:var(--c-primary)}.avatar-accent{background:var(--c-accent)}.avatar-ok{background:var(--c-ok)}.avatar-warn{background:var(--c-warn)}.avatar{width:38px;height:38px;flex:none;border-radius:var(--r-pill);display:grid;place-items:center;font-weight:700;font-size:12.5px;color:#fff}.emojibox{width:76px;height:76px;flex:none;margin-inline:auto;border-radius:var(--r-xl);display:grid;place-items:center;background:var(--c-primary-soft);font-size:36px;animation:hero-in .45s cubic-bezier(.2,.9,.3,1.25) both}.iconbox{width:38px;height:38px;flex:none;border-radius:var(--r-md);display:grid;place-items:center;background:var(--c-primary-soft);color:var(--c-primary)}.booklayout{display:grid;grid-template-columns:210px 1fr 292px;gap:var(--sp-5);align-items:start}.vsteps{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--sp-5) var(--sp-4);position:sticky;top:var(--pagehead-h);box-shadow:var(--sh-1)}.vstep{display:flex;gap:var(--sp-3);padding-bottom:var(--sp-5);position:relative}.vstep:last-child{padding-bottom:0}.vstep::after{content:'';position:absolute;inset-inline-start:12px;top:28px;bottom:2px;width:1.5px;background:var(--c-line-2)}.vstep:last-child::after{display:none}.vstep[data-done="true"]::after{background:var(--c-primary)}.vstep i{width:25px;height:25px;flex:none;border-radius:50%;background:var(--c-surface);border:1.5px solid var(--c-line-2);display:grid;place-items:center;font-size:11.5px;font-style:normal;font-weight:700;color:var(--c-ink-3);z-index:1;transition:var(--t)}.vstep[data-on="true"] i{border-color:var(--c-primary);color:var(--c-primary);box-shadow:var(--ring)}.vstep[data-done="true"] i{background:var(--c-primary);border-color:var(--c-primary);color:#fff}.vstep b{display:block;font-size:13.5px;font-weight:600;color:var(--c-ink-3)}.vstep[data-on="true"] b,.vstep[data-done="true"] b{color:var(--c-ink)}.vstep small{display:block;font-size:12px;color:var(--c-primary);margin-top:1px}.summary{position:sticky;top:var(--pagehead-h);border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--c-line);background:var(--c-surface);box-shadow:var(--sh-2);align-self:start}.summary-top{background:var(--grad);color:#fff;padding:var(--sp-3) var(--sp-4)}.summary-top .label{color:rgba(255,255,255,.85)}.summary-body{padding:var(--sp-1) var(--sp-4) var(--sp-3)}.summary-body:empty{display:none}.srow{display:flex;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px dashed var(--c-line)}.srow:last-child{border-bottom:0}.srow dt{font-size:12.5px;color:var(--c-ink-3)}.srow dd{font-size:13.5px;font-weight:600;text-align:end}.stotal{display:flex;justify-content:space-between;align-items:baseline;padding:var(--sp-3) var(--sp-4) var(--sp-3);border-top:1px solid var(--c-line-2)}.stotal b{font-size:22px;font-weight:700;letter-spacing:-.03em;color:var(--c-primary)}.summary-hint{padding:var(--sp-3) var(--sp-4) var(--sp-3);font-size:12.5px;color:var(--c-ink-3)}.summary-note{margin:0 var(--sp-4) var(--sp-3);padding:var(--sp-2) var(--sp-2);background:var(--c-accent-soft);border-radius:var(--r-sm);color:var(--c-accent-ink);font-size:12.5px;display:flex;gap:var(--sp-2);align-items:flex-start}.grid{display:grid;gap:var(--sp-3)}.grid-3{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.optrow{display:flex;align-items:center;gap:var(--sp-3);width:100%;text-align:start;font:inherit;color:var(--c-ink);background:var(--c-surface);border:1px solid var(--c-line-2);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);cursor:pointer;transition:var(--t)}.optrow:hover{border-color:var(--c-primary);background:var(--c-surface-2)}.optrow[aria-pressed="true"]{border-color:var(--c-primary);background:var(--c-primary-soft);box-shadow:var(--ring)}.optrow .radio{width:17px;height:17px;flex:none;border-radius:50%;border:1.5px solid var(--c-line-2);display:grid;place-items:center;transition:var(--t)}.optrow[aria-pressed="true"] .radio{border-color:var(--c-primary)}.optrow[aria-pressed="true"] .radio::after{content:'';width:8px;height:8px;border-radius:50%;background:var(--c-primary)}.optrow h4{font-size:14.5px;font-weight:600}.tile{text-align:start;font:inherit;color:var(--c-ink);background:var(--c-surface);border:1px solid var(--c-line-2);border-radius:var(--r-md);padding:var(--sp-4);cursor:pointer;transition:var(--t)}.tile:hover{border-color:var(--c-primary);transform:translateY(-2px);box-shadow:var(--sh-2)}.tile[aria-pressed="true"]{border-color:var(--c-primary);background:var(--c-primary-soft)}.tile h4{font-size:14.5px;font-weight:600;margin-bottom:2px}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-2)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--sp-1)}.cal-dow{text-align:center;font-size:11px;font-weight:600;color:var(--c-ink-3);padding-bottom:var(--sp-1)}.cal-day{aspect-ratio:1;border:1px solid transparent;background:transparent;font:inherit;font-size:14px;font-weight:500;border-radius:var(--r-sm);cursor:pointer;color:var(--c-ink);transition:var(--t);display:grid;place-items:center;position:relative}.cal-day:hover:not(:disabled){background:var(--c-primary-soft);color:var(--c-primary-ink)}.cal-day:disabled{color:var(--c-ink-3);opacity:.4;cursor:not-allowed}.cal-day[aria-pressed="true"]{background:var(--c-primary);color:#fff;box-shadow:var(--sh-3)}.cal-day.has::after{content:'';position:absolute;bottom:5px;width:4px;height:4px;border-radius:50%;background:var(--c-accent)}.cal-day[aria-pressed="true"].has::after{background:#fff}.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--sp-2)}.slot{font:inherit;font-size:14px;font-weight:500;padding:var(--sp-2) var(--sp-1);border-radius:var(--r-md);cursor:pointer;background:var(--c-surface);border:1px solid var(--c-line-2);color:var(--c-ink);transition:var(--t)}.slot:hover{border-color:var(--c-primary);color:var(--c-primary)}.slot[aria-pressed="true"]{background:var(--c-primary);border-color:var(--c-primary);color:#fff}.profile{position:sticky;top:var(--pagehead-h)}.statrow{display:flex;justify-content:space-between;padding:var(--sp-2) 0;border-bottom:1px solid var(--c-line);font-size:14px}.statrow:last-child{border:0}.appt{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--sp-4) var(--sp-4);display:flex;gap:var(--sp-4);align-items:flex-start;transition:var(--t);position:relative;overflow:hidden}.appt::before{content:'';position:absolute;inset-inline-start:0;top:0;bottom:0;width:3px;background:var(--c-primary)}.appt[data-status="done"]::before{background:var(--c-line-2)}.appt[data-status="cancelled"]::before{background:var(--c-danger)}.appt[data-status="cancelled"]{background:var(--c-surface-2);opacity:.82}.appt:hover{box-shadow:var(--sh-2);transform:translateY(-1px)}.appt-when{flex:none;width:54px;text-align:center;background:var(--c-primary-soft);border-radius:var(--r-sm);padding:var(--sp-2) 2px}.appt-when b{display:block;font-size:19px;font-weight:700;line-height:1.15;color:var(--c-primary-ink)}.appt-when span{font-size:11px;color:var(--c-primary-ink);opacity:.8}.appt[data-status="done"] .appt-when,.appt[data-status="cancelled"] .appt-when{background:var(--c-mute)}.appt[data-status="done"] .appt-when b,.appt[data-status="cancelled"] .appt-when b{color:var(--c-ink-2)}.seg{display:inline-flex;background:var(--c-mute);border-radius:var(--r-md);padding:var(--sp-1)}.seg button{border:0;background:transparent;font:inherit;font-size:13.5px;font-weight:600;color:var(--c-ink-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-sm);cursor:pointer;transition:var(--t);white-space:nowrap}.seg button[aria-selected="true"]{background:var(--c-surface);color:var(--c-primary-ink);box-shadow:var(--sh-1)}.subnav{display:flex;gap:2px;border-bottom:1px solid var(--c-line);margin:-4px 0 var(--sp-5);overflow-x:auto;scrollbar-width:none}.subnav::-webkit-scrollbar{display:none}.subnav a{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);font-size:14px;font-weight:600;cursor:pointer;color:var(--c-ink-3);border-bottom:2px solid transparent;margin-bottom:-1px;transition:var(--t);white-space:nowrap;text-decoration:none}.subnav a:hover{color:var(--c-ink)}.subnav a[aria-current="true"]{color:var(--c-primary);border-bottom-color:var(--c-primary)}.kpi{padding:var(--sp-4) var(--sp-4)}.kpi .v{font-size:25px;font-weight:700;letter-spacing:-.03em;line-height:1.25}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:start;font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-ink-3);padding:var(--sp-2) var(--sp-3);background:var(--c-surface-2);border-bottom:1px solid var(--c-line)}td{padding:var(--sp-3) var(--sp-3);border-bottom:1px solid var(--c-line)}tbody tr{cursor:pointer;transition:var(--t)}tbody tr:hover{background:var(--c-surface-2)}tbody tr:last-child td{border-bottom:0}.toggle{position:relative;width:42px;height:24px;border-radius:var(--r-pill);background:var(--c-line-2);border:0;cursor:pointer;transition:var(--t);flex:none}.toggle::after{content:'';position:absolute;top:3px;inset-inline-start:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:var(--sh-1);transition:var(--t)}.toggle[aria-pressed="true"]{background:var(--c-primary)}html[dir="rtl"] .icon-dir{transform:scaleX(-1)}.toggle[aria-pressed="true"]::after{transform:translateX(18px)}html[dir="rtl"] .toggle[aria-pressed="true"]::after{transform:translateX(-18px)}.bars{display:flex;align-items:flex-end;gap:clamp(6px,2vw,18px);height:150px;padding-top:var(--sp-1)}.bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:var(--sp-1)}.bar i{display:block;width:100%;max-width:52px;background:var(--grad);border-radius:var(--r-sm) var(--r-sm) 3px 3px;min-height:6px;transition:var(--t)}.bar:hover i{filter:brightness(1.08)}.barval{font-size:12px;font-weight:700;color:var(--c-primary-ink)}.barlbl{font-size:11.5px;color:var(--c-ink-3)}.cardstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--c-line);border:1px solid var(--c-line);border-radius:var(--r-md);overflow:hidden}.cardstats>div{background:var(--c-surface);padding:var(--sp-3) var(--sp-4)}.cardstats .v{font-size:23px;font-weight:700;letter-spacing:-.03em;line-height:1.3;margin-top:var(--sp-1)}.scrim{position:fixed;inset:0;z-index:80;background:color-mix(in srgb,var(--c-ink) 45%,transparent);backdrop-filter:blur(5px);display:grid;place-items:center;padding:var(--sp-5);animation:fade .16s}@keyframes fade{from{opacity:0}to{opacity:1}}.scrim>.modal{width:100%;max-width:430px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;background:var(--c-surface);border-radius:var(--r-xl);box-shadow:0 30px 62px -20px color-mix(in srgb,var(--c-ink) 45%,transparent);animation:rise .22s cubic-bezier(.34,1.2,.64,1)}.modal-body{overflow-y:auto;min-height:0;padding:var(--sp-6)}@keyframes rise{from{transform:translateY(14px) scale(.985);opacity:0}to{transform:none;opacity:1}}.emoji-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;font-size:20px;background:var(--c-surface);border:1px dashed var(--c-line-2);border-radius:var(--r-md);cursor:pointer}.emoji-btn:hover{border-color:var(--c-primary)}.emoji-picker-panel{margin:var(--sp-2) 0;padding:var(--sp-3);background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.emoji-picker-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1);margin-bottom:var(--sp-3)}.emoji-tab{padding:var(--sp-1) var(--sp-3);font-size:13px;background:var(--c-mute);border:1px solid transparent;border-radius:var(--r-md);color:var(--c-ink-2);cursor:pointer}.emoji-tab.is-active{background:var(--c-primary-soft);border-color:var(--c-primary);color:var(--c-primary)}.emoji-tab.emoji-clear{margin-inline-start:auto}.emoji-picker-body{max-height:220px;overflow-y:auto}.emoji-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:var(--sp-1)}.emoji-opt{display:flex;align-items:center;justify-content:center;height:36px;font-size:19px;background:transparent;border:1px solid transparent;border-radius:var(--r-md);cursor:pointer}.emoji-opt:hover{background:var(--c-mute);border-color:var(--c-line)}#toast{position:fixed;bottom:20px;inset-inline-start:calc(var(--rail-w) + 20px);z-index:100;display:flex;flex-direction:column;gap:var(--sp-2);pointer-events:none}.toast{background:var(--c-ink);color:#fff;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);font-size:14px;font-weight:500;box-shadow:var(--sh-3);animation:rise .2s cubic-bezier(.34,1.2,.64,1);display:flex;gap:var(--sp-2);align-items:center}.toast.ok{background:var(--c-ok)}.toast.bad{background:var(--c-danger)}.presets{display:grid;gap:var(--sp-2)}.preset{display:flex;align-items:center;gap:var(--sp-2);width:100%;text-align:start;font:inherit;font-size:13.5px;background:var(--c-surface);border:1px solid var(--c-line-2);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-3);cursor:pointer;transition:var(--t);color:var(--c-ink)}.preset:hover{border-color:var(--c-primary)}.preset[aria-pressed="true"]{border-color:var(--c-primary);background:var(--c-primary-soft)}.dots{display:flex;gap:var(--sp-1);flex:none}.dots i{width:13px;height:13px;border-radius:50%;display:block;background:var(--dot-color,currentColor)}.colorrow{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) 0;border-bottom:1px solid var(--c-line)}.colorrow:last-child{border:0}.colorrow label{flex:1;font-size:13.5px}.colorrow input[type="color"]{width:38px;height:28px;padding:0;border:1px solid var(--c-line-2);border-radius:var(--r-sm);background:none;cursor:pointer}.colorrow .hex{font-size:11.5px;color:var(--c-ink-3);width:64px;text-align:end;font-variant-numeric:tabular-nums}.emojigrid{display:grid;gap:var(--sp-1)}.emojirow{display:flex;align-items:center;gap:var(--sp-2)}.emojirow input{width:52px;flex:none;text-align:center;font-size:17px;padding:var(--sp-1) var(--sp-1);border:1px solid var(--c-line-2);border-radius:var(--r-sm);background:var(--c-surface-2);font-family:inherit;color:var(--c-ink)}.emojirow input:focus{outline:0;border-color:var(--c-primary);box-shadow:var(--ring)}.emojirow span{font-size:13px;color:var(--c-ink-2)}.grouphead{background:var(--c-surface-2);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-3);font-size:12px;font-weight:700;color:var(--c-ink-2);margin:var(--sp-3) 0 var(--sp-2);letter-spacing:.06em}.celebrate{width:86px;height:86px;margin:0 auto;border-radius:var(--r-pill);display:grid;place-items:center;font-size:38px;background:linear-gradient(135deg,var(--c-primary-soft),var(--c-accent-soft));position:relative;animation:pop .45s cubic-bezier(.34,1.5,.64,1)}.celebrate::before,.celebrate::after{content:'';position:absolute;inset:0;border-radius:var(--r-pill);border:1.5px solid var(--c-accent);opacity:0;animation:ripple 2.6s ease-out infinite}.celebrate::after{animation-delay:1.3s}@keyframes ripple{0%{transform:scale(1);opacity:.45}100%{transform:scale(1.55);opacity:0}}@keyframes pop{from{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.split-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);align-items:start}.split-cal{display:grid;grid-template-columns:minmax(230px,290px) 1fr;gap:var(--sp-6);align-items:start}.scrollx{overflow-x:auto;-webkit-overflow-scrolling:touch}.scrollx table{min-width:640px}.empty{text-align:center;padding:44px var(--sp-5);color:var(--c-ink-3)}.empty.is-loading{padding:var(--sp-5);opacity:.5}@media (max-width:1180px){.booklayout{grid-template-columns:200px 1fr}.summary{grid-column:1 / -1;order:-1;position:static}.summary-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0 var(--sp-5)}}@media (max-width:1000px){.booklayout{grid-template-columns:1fr}.vsteps{position:relative;padding:var(--sp-4) var(--sp-3) var(--sp-1);display:flex;gap:0;overflow:visible;box-shadow:none}.vstep{flex:1 1 0%;min-width:0;padding:0;flex-direction:column;align-items:center;gap:var(--sp-1);text-align:center}.vstep::after{inset-inline-start:50%;inset-inline-end:auto;top:11px;bottom:auto;width:100%;height:2px}.vstep b{display:none}.vstep[data-on="true"] b{display:block;font-size:12px;line-height:1.25}.vstep small{display:none}.profile{position:static}.split-2,.split-cal{grid-template-columns:1fr;gap:var(--sp-4)}}@media (max-height:700px){.wizard-actions{position:fixed;inset-inline:var(--rail-w) 0;bottom:0;z-index:40;margin:0;padding:12px clamp(16px,4vw,34px);background:var(--c-surface);border-top:1px solid var(--c-line);box-shadow:0 -6px 16px color-mix(in srgb,var(--c-ink) 8%,transparent)}#booking-stage{padding-bottom:116px}}@media (max-height:700px) and (max-width:640px){.wizard-actions{bottom:calc(60px + env(safe-area-inset-bottom))}}@media (max-width:640px){:root{--rail-w:0px}body{font-size:14.5px;padding-bottom:calc(64px + env(safe-area-inset-bottom))}.rail{inset-block:auto;bottom:0;inset-inline:0;width:auto;height:calc(60px + env(safe-area-inset-bottom));flex-direction:row;justify-content:space-around;padding:0 6px env(safe-area-inset-bottom);border-top:1px solid rgba(255,255,255,.08)}.rail-logo,.rail-sep{display:none}.rail button,.rail a{width:46px;height:44px;border-radius:var(--r-sm)}.rail button[aria-current="true"]::before,.rail a[aria-current="true"]::before{inset-inline:13px;top:-1px;bottom:auto;width:auto;height:3px}.rail .tip{display:none}.app{margin-inline-start:0}.pagehead{padding:var(--sp-3) var(--sp-4);gap:var(--sp-2)}.pagehead h1{font-size:17px}main{padding:var(--sp-4)}.card{padding:var(--sp-4)}.input{font-size:16px}.h1{font-size:20px}.h2{font-size:16.5px}.grid-3{grid-template-columns:1fr}.summary-body{grid-template-columns:1fr}.btn{width:100%;padding:var(--sp-3) var(--sp-4)}.wizard-actions .btn{width:auto;min-height:44px}.btn-sm,.seg button{width:auto;min-height:44px}.toggle::before{content:'';position:absolute;inset:-10px}.colorrow input[type="color"]{width:46px;height:44px}.emojirow input{min-height:44px}.slots{grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}.appt{flex-wrap:wrap;padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-4)}.appt .row.gap-2{width:100%}.appt .btn{flex:1}.modal-body{padding:var(--sp-5)}.seg{display:flex;max-width:100%;overflow-x:auto;scrollbar-width:none}.seg::-webkit-scrollbar{display:none}.seg button{flex:1 0 auto}#toast{inset-inline:16px;bottom:calc(74px + env(safe-area-inset-bottom))}.toast{width:100%}}.ldap-entry{max-height:200px;overflow:auto;margin:0;padding:var(--sp-2) var(--sp-3);background:var(--c-surface-2);border-radius:var(--r-md);font-size:12.5px}.split-crud{display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:var(--sp-5);align-items:start}.crud-item{display:block;width:100%;text-align:start;padding:var(--sp-2) var(--sp-3);border:0;border-radius:var(--r-md);background:transparent;cursor:pointer;font:inherit}.crud-item:hover{background:var(--c-surface-2)}.crud-item[aria-current="true"]{background:var(--c-primary-soft);color:var(--c-primary-ink)}.crud-item span{display:block}@media (max-width:1000px){.split-crud{grid-template-columns:1fr}}.integration-card{display:block;text-decoration:none;color:inherit;transition:var(--t)}.integration-card:hover{border-color:var(--c-primary);text-decoration:none}.menu{position:relative}.menu>summary{list-style:none;cursor:pointer}.menu>summary::-webkit-details-marker{display:none}.menu-items{position:absolute;inset-inline-end:0;top:calc(100% + 6px);z-index:40;min-width:200px;padding:var(--sp-1);border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface);box-shadow:var(--sh-2)}.menu-item{display:block;width:100%;padding:var(--sp-2) var(--sp-3);border:0;border-radius:var(--r-sm);background:none;color:var(--c-ink);font:inherit;text-align:start;cursor:pointer}.menu-item:hover{background:var(--c-primary-soft)}.evpop{position:absolute;z-index:50;width:min(340px,calc(100vw - 16px));max-height:70vh;overflow-y:auto}.evrows{display:grid;gap:var(--sp-1)}.evrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:var(--sp-2);font-size:13.5px}.evrow span{overflow-wrap:break-word;min-width:0}.evrow a{vertical-align:middle}.cust-results{max-height:220px;overflow-y:auto;margin-top:var(--sp-1);border:1px solid var(--c-line);border-radius:var(--r-md)}.cust-result{display:block;width:100%;min-height:44px;padding:var(--sp-2) var(--sp-3);border:0;background:none;color:var(--c-ink);font:inherit;text-align:start;cursor:pointer}.cust-result:hover{background:var(--c-primary-soft)}.toast-action{margin-inline-start:var(--sp-3);padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}.settings-nav-item[aria-current="page"]{background:var(--c-primary-soft);color:var(--c-primary-ink)}.crud-list-pane,.crud-detail-pane{min-width:0}.list-field-rows,.row-list-rows,.wp-exception-rows,.wpx-breaks{display:grid;gap:var(--sp-2);margin-bottom:var(--sp-2)}.list-field-row,.row-list-row,.wp-exception{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.row-list-head{display:flex;gap:var(--sp-2);font-size:12px;font-weight:600;color:var(--c-ink-3)}.row-list-row.is-boxed{border:1px solid var(--c-line);border-radius:var(--r-md);background:var(--c-surface-2);padding:var(--sp-3);align-items:flex-start}.row-list-row.is-boxed .input{flex:1 1 150px;min-width:0}.image-field-preview{display:block;max-width:100%;max-height:120px;border:1px solid var(--c-line);border-radius:var(--r-md)}.mb-2{margin-bottom:var(--sp-2)}.settings-nav{display:grid;gap:2px}@keyframes hero-in{from{opacity:0;transform:scale(.55) translateY(10px)}to{opacity:1;transform:none}}.list-field-emoji{width:68px;flex:none;text-align:center}