@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/manrope-cyrillic-Dvxsihut.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/manrope-latin-DHIcAJRg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--tap: 44px;--control-h: 40px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--radius-sm: 10px;--radius: 12px;--radius-md: 16px;--radius-lg: 18px;--radius-xl: 24px;--font-ui: "Manrope", "Segoe UI", system-ui, -apple-system, Arial, sans-serif;--sidebar-w: 280px;--ease-out: cubic-bezier(.23, 1, .32, 1);--dur-press: .12s;--dur-enter: .22s;--track-display: -.015em;--track-caps: .12em;--brand-tg: #229ed9;--brand-tg-hover: #1f8fc6;--brand-max: #5b3df5;--brand-max-hover: #4f33d9;--on-brand: #ffffff}:root,:root[data-theme=light]{color-scheme:light;--primary: #2563eb;--primary-hover: #3b82f6;--primary-press: #1d4ed8;--primary-deep: #1e40af;--primary-soft: rgba(37, 99, 235, .1);--primary-tint: rgba(37, 99, 235, .18);--on-primary: #ffffff;--bg: #f4f6f9;--surface: #ffffff;--surface-2: #f8f9fb;--sidebar: #ffffff;--sidebar-2: #f1f5f9;--sidebar-fg: #5f6b76;--sidebar-sec: #9aa5b1;--sidebar-line: #e9edf2;--fg: #1a1a1a;--fg-2: #5f6b76;--fg-3: #9aa5b1;--line: rgba(26, 26, 26, .12);--line-2: rgba(26, 26, 26, .08);--line-strong: #d5dbe2;--green: #16a34a;--green-soft: #dcfce7;--green-fg: #166534;--green-line: #bbf7d0;--red: #dc2626;--red-soft: #fee2e2;--red-fg: #991b1b;--err-line: #f5b8bb;--note-bg: #fdecec;--on-red: #ffffff;--yellow-soft: #fef9c3;--yellow-fg: #854d0e;--yellow-line: #fde68a;--gray-soft: #eef1f5;--gray-fg: #475569;--hover-soft: #f4f6f9;--out-soft: #e7f6e9;--out-fg: #14532d;--blur-veil: rgba(255, 255, 255, .3);--c-blue-soft: rgba(37, 99, 235, .14);--c-blue-line: rgba(37, 99, 235, .42);--c-blue-fg: #1e3a8a;--c-green-soft: rgba(22, 163, 74, .14);--c-green-line: rgba(22, 163, 74, .42);--c-green-fg: #14532d;--c-yellow-soft: rgba(217, 119, 6, .16);--c-yellow-line: rgba(217, 119, 6, .45);--c-yellow-fg: #7c4a03;--c-red-soft: rgba(220, 38, 38, .13);--c-red-line: rgba(220, 38, 38, .42);--c-red-fg: #7f1d1d;--c-violet-soft: rgba(124, 58, 237, .13);--c-violet-line: rgba(124, 58, 237, .42);--c-violet-fg: #4c1d95;--c-teal-soft: rgba(8, 145, 178, .14);--c-teal-line: rgba(8, 145, 178, .42);--c-teal-fg: #0e4f5e;--shadow-card: 0 1px 2px rgba(15, 23, 42, .04), 0 8px 30px rgba(15, 23, 42, .06);--shadow-lift: 0 8px 20px rgba(15, 23, 42, .1);--shadow-pop: 0 24px 70px rgba(15, 23, 42, .25);--focus-ring: 0 0 0 3px var(--primary-soft);--focus-line: var(--primary);--weekend-bg: #fff5f5;--weekend-fg: #b42318;--spinner-track: rgba(255, 255, 255, .35);--spinner-head: #ffffff;--dock-bg: rgba(255, 255, 255, .92);--scrim: rgba(16, 21, 26, .35)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--primary: #6ea8fe;--primary-hover: #8bb9ff;--primary-press: #5b96ec;--primary-deep: #bcd7ff;--primary-soft: rgba(110, 168, 254, .14);--primary-tint: rgba(110, 168, 254, .26);--on-primary: #0a0a0d;--bg: #0d0d0f;--surface: #1b1d22;--surface-2: #23262d;--sidebar: #15161a;--sidebar-2: #23262d;--sidebar-fg: #9aa3b2;--sidebar-sec: #5e6573;--sidebar-line: rgba(255, 255, 255, .08);--fg: #f5f7fb;--fg-2: #9aa3b2;--fg-3: #5e6573;--line: rgba(255, 255, 255, .1);--line-2: rgba(255, 255, 255, .06);--line-strong: rgba(255, 255, 255, .18);--green: #22c55e;--green-soft: rgba(34, 197, 94, .16);--green-fg: #86efac;--green-line: rgba(34, 197, 94, .38);--red: #ff7a7a;--red-soft: rgba(255, 122, 122, .16);--red-fg: #ffb4b4;--err-line: rgba(255, 122, 122, .4);--note-bg: rgba(255, 122, 122, .1);--on-red: #2a0b0b;--yellow-soft: rgba(217, 119, 6, .2);--yellow-fg: #fcd34d;--yellow-line: rgba(217, 119, 6, .45);--gray-soft: rgba(255, 255, 255, .08);--gray-fg: #c3cad4;--hover-soft: rgba(255, 255, 255, .05);--out-soft: rgba(34, 197, 94, .16);--out-fg: #bbf7d0;--blur-veil: rgba(13, 13, 15, .45);--c-blue-soft: rgba(110, 168, 254, .16);--c-blue-line: rgba(110, 168, 254, .45);--c-blue-fg: #bcd7ff;--c-green-soft: rgba(34, 197, 94, .16);--c-green-line: rgba(34, 197, 94, .45);--c-green-fg: #bbf7d0;--c-yellow-soft: rgba(217, 119, 6, .22);--c-yellow-line: rgba(234, 179, 8, .5);--c-yellow-fg: #fcd34d;--c-red-soft: rgba(255, 122, 122, .16);--c-red-line: rgba(255, 122, 122, .45);--c-red-fg: #ffb4b4;--c-violet-soft: rgba(167, 139, 250, .16);--c-violet-line: rgba(167, 139, 250, .45);--c-violet-fg: #ddd0ff;--c-teal-soft: rgba(34, 211, 238, .14);--c-teal-line: rgba(34, 211, 238, .42);--c-teal-fg: #a5e8f5;--shadow-card: 0 20px 60px rgba(0, 0, 0, .35);--shadow-lift: 0 10px 26px rgba(0, 0, 0, .45);--shadow-pop: 0 28px 80px rgba(0, 0, 0, .55);--focus-ring: 0 0 0 3px var(--primary-soft);--focus-line: var(--primary);--weekend-bg: rgba(255, 122, 122, .1);--weekend-fg: #ffb4b4;--spinner-track: rgba(10, 10, 13, .3);--spinner-head: #0a0a0d;--dock-bg: rgba(27, 29, 34, .92);--scrim: rgba(0, 0, 0, .6)}}:root[data-theme=dark]{color-scheme:dark;--primary: #6ea8fe;--primary-hover: #8bb9ff;--primary-press: #5b96ec;--primary-deep: #bcd7ff;--primary-soft: rgba(110, 168, 254, .14);--primary-tint: rgba(110, 168, 254, .26);--on-primary: #0a0a0d;--bg: #0d0d0f;--surface: #1b1d22;--surface-2: #23262d;--sidebar: #15161a;--sidebar-2: #23262d;--sidebar-fg: #9aa3b2;--sidebar-sec: #5e6573;--sidebar-line: rgba(255, 255, 255, .08);--fg: #f5f7fb;--fg-2: #9aa3b2;--fg-3: #5e6573;--line: rgba(255, 255, 255, .1);--line-2: rgba(255, 255, 255, .06);--line-strong: rgba(255, 255, 255, .18);--green: #22c55e;--green-soft: rgba(34, 197, 94, .16);--green-fg: #86efac;--green-line: rgba(34, 197, 94, .38);--red: #ff7a7a;--red-soft: rgba(255, 122, 122, .16);--red-fg: #ffb4b4;--err-line: rgba(255, 122, 122, .4);--note-bg: rgba(255, 122, 122, .1);--on-red: #2a0b0b;--yellow-soft: rgba(217, 119, 6, .2);--yellow-fg: #fcd34d;--yellow-line: rgba(217, 119, 6, .45);--gray-soft: rgba(255, 255, 255, .08);--gray-fg: #c3cad4;--hover-soft: rgba(255, 255, 255, .05);--out-soft: rgba(34, 197, 94, .16);--out-fg: #bbf7d0;--blur-veil: rgba(13, 13, 15, .45);--c-blue-soft: rgba(110, 168, 254, .16);--c-blue-line: rgba(110, 168, 254, .45);--c-blue-fg: #bcd7ff;--c-green-soft: rgba(34, 197, 94, .16);--c-green-line: rgba(34, 197, 94, .45);--c-green-fg: #bbf7d0;--c-yellow-soft: rgba(217, 119, 6, .22);--c-yellow-line: rgba(234, 179, 8, .5);--c-yellow-fg: #fcd34d;--c-red-soft: rgba(255, 122, 122, .16);--c-red-line: rgba(255, 122, 122, .45);--c-red-fg: #ffb4b4;--c-violet-soft: rgba(167, 139, 250, .16);--c-violet-line: rgba(167, 139, 250, .45);--c-violet-fg: #ddd0ff;--c-teal-soft: rgba(34, 211, 238, .14);--c-teal-line: rgba(34, 211, 238, .42);--c-teal-fg: #a5e8f5;--shadow-card: 0 20px 60px rgba(0, 0, 0, .35);--shadow-lift: 0 10px 26px rgba(0, 0, 0, .45);--shadow-pop: 0 28px 80px rgba(0, 0, 0, .55);--focus-ring: 0 0 0 3px var(--primary-soft);--focus-line: var(--primary);--weekend-bg: rgba(255, 122, 122, .1);--weekend-fg: #ffb4b4;--spinner-track: rgba(10, 10, 13, .3);--spinner-head: #0a0a0d;--dock-bg: rgba(27, 29, 34, .92);--scrim: rgba(0, 0, 0, .6)}:root{--st-pending-bg: var(--c-yellow-soft);--st-pending-line: var(--c-yellow-line);--st-pending-fg: var(--c-yellow-fg);--st-confirmed-bg: var(--c-green-soft);--st-confirmed-line: var(--c-green-line);--st-confirmed-fg: var(--c-green-fg);--st-completed-bg: var(--c-blue-soft);--st-completed-line: var(--c-blue-line);--st-completed-fg: var(--c-blue-fg);--st-cancelled-bg: var(--c-red-soft);--st-cancelled-line: var(--c-red-line);--st-cancelled-fg: var(--c-red-fg);--st-noshow-bg: var(--c-violet-soft);--st-noshow-line: var(--c-violet-line);--st-noshow-fg: var(--c-violet-fg);--ev-1-bg: var(--c-yellow-soft);--ev-1-line: var(--c-yellow-line);--ev-1-fg: var(--c-yellow-fg);--ev-2-bg: var(--c-teal-soft);--ev-2-line: var(--c-teal-line);--ev-2-fg: var(--c-teal-fg);--ev-3-bg: var(--c-red-soft);--ev-3-line: var(--c-red-line);--ev-3-fg: var(--c-red-fg);--ev-4-bg: var(--c-green-soft);--ev-4-line: var(--c-green-line);--ev-4-fg: var(--c-green-fg)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-ui);font-size:14px;line-height:1.45;color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p{margin:0}.eyebrow{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--fg-2)}.hint{margin:0;font-size:12px;color:var(--fg-2)}.hint--error{color:var(--red-fg)}.hint--ok{color:var(--green-fg)}button{font:inherit}.btn{min-height:var(--control-h);padding:10px var(--sp-3);border:none;border-radius:var(--radius-sm);background:var(--primary);color:var(--on-primary);cursor:pointer;font:inherit;transition:background .18s,border-color .18s,opacity .18s,transform var(--dur-press) var(--ease-out)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn__icon{vertical-align:-3px;margin-right:6px}.btn--primary{background:var(--primary);color:var(--on-primary)}.btn--primary:hover:not(:disabled){background:var(--primary-hover)}.btn--primary:active:not(:disabled){background:var(--primary-press)}.btn--ghost{background:transparent;border:1px solid var(--line);color:var(--fg)}.btn--ghost:hover:not(:disabled){background:var(--hover-soft);border-color:var(--line-strong)}.btn--danger{background:var(--red);color:var(--on-red)}.btn--small{min-height:0;padding:6px var(--sp-3);font-size:12px;border-radius:var(--radius-sm)}.icon-button{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--fg);display:grid;place-items:center;padding:0;cursor:pointer;font-size:16px;line-height:1}.icon-button:hover{background:var(--hover-soft);border-color:var(--line-strong)}@media (hover: none) and (pointer: coarse){.icon-button{min-width:var(--tap);min-height:var(--tap)}}.is-loading{position:relative;color:transparent!important}.spinner{position:absolute;top:50%;left:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border:2px solid var(--spinner-track);border-top-color:var(--spinner-head);border-radius:50%;animation:spin .8s linear infinite}.btn--ghost .spinner{border-color:var(--line-strong);border-top-color:var(--primary)}@keyframes spin{to{transform:rotate(360deg)}}.field{display:grid;gap:6px}.field>span{font-size:12px;text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--fg-2)}.field input,.field select,.field textarea{min-height:var(--control-h);padding:10px var(--sp-3);border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);font:inherit;font-size:14px;color:var(--fg);width:100%}.field textarea{min-height:68px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--focus-line);box-shadow:var(--focus-ring)}@media (max-width: 1024px){.field input,.field select,.field textarea{font-size:16px}}@media (hover: none) and (pointer: coarse){.field input,.field select,.field textarea{font-size:16px}}:focus-visible{outline:2px solid var(--focus-line);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.empty{color:var(--fg-2);font-size:13px;text-align:center;padding:18px var(--sp-3);border:1px dashed var(--line);border-radius:var(--radius-md);background:var(--surface)}.error{color:var(--red-fg);padding:10px 0}.status-pill{display:inline-flex;align-items:center;justify-content:center;padding:var(--sp-1) 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line);background:var(--gray-soft);color:var(--gray-fg);white-space:nowrap}.status-pill--pending{background:var(--st-pending-bg);border-color:var(--st-pending-line);color:var(--st-pending-fg)}.status-pill--confirmed{background:var(--st-confirmed-bg);border-color:var(--st-confirmed-line);color:var(--st-confirmed-fg)}.status-pill--cancelled{background:var(--st-cancelled-bg);border-color:var(--st-cancelled-line);color:var(--st-cancelled-fg)}.status-pill--completed{background:var(--st-completed-bg);border-color:var(--st-completed-line);color:var(--st-completed-fg)}.status-pill--no_show{background:var(--st-noshow-bg);border-color:var(--st-noshow-line);color:var(--st-noshow-fg)}.merge-list{margin:var(--sp-2) 0;padding-left:20px;line-height:1.7}.merge-list li{margin-bottom:2px}.admin-shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;min-height:100dvh}.admin-sidebar{background:var(--sidebar);color:var(--sidebar-fg);border-right:1px solid var(--sidebar-line);padding:28px 20px;display:flex;flex-direction:column;gap:18px;overflow-y:auto}.admin-main{padding:var(--sp-5) var(--sp-6) 40px;min-width:0}.brand{display:flex;align-items:center;gap:var(--sp-3)}.brand-logout{width:40px;height:40px;border:none;border-radius:14px;background:var(--primary);color:var(--on-primary);display:grid;place-items:center;cursor:pointer;padding:0}.brand-logout:hover{background:var(--primary-hover)}.brand-logout svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.brand-title{display:block;font-weight:600;font-size:16px;color:var(--fg);line-height:1.25;letter-spacing:var(--track-display)}.brand-sub{display:block;font-size:12px;color:var(--sidebar-sec)}.sidebar-section{display:grid;gap:10px}.sidebar-section__title{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--sidebar-sec)}.sidebar-nav{display:grid;gap:var(--sp-2)}.sidebar-link{padding:var(--sp-2) 10px;border-radius:var(--radius-sm);border-left:3px solid transparent;text-decoration:none;color:var(--sidebar-fg);font-weight:500;display:flex;align-items:center;gap:var(--sp-2)}.sidebar-link:hover{background:var(--hover-soft);color:var(--fg)}.sidebar-link.is-active{background:var(--primary-soft);border-left-color:var(--primary);color:var(--primary-deep)}.sidebar-link__lock{margin-left:auto;font-size:11px;opacity:.65}.ic{stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar-link__icon{width:18px;height:18px;flex:none;opacity:.9}.sidebar-link.is-active .sidebar-link__icon{opacity:1}.mini-cal{margin:0 -6px;padding:var(--sp-3);border-radius:var(--radius-lg);border:1px solid var(--sidebar-line);background:var(--sidebar-2);color:var(--fg)}.mini-cal__header{display:flex;align-items:center;justify-content:space-between;font-size:12px;text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--fg-2)}.mini-cal__week{margin-top:10px;display:grid;grid-template-columns:repeat(7,1fr);gap:var(--sp-1);font-size:10px;letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--fg-3);text-align:center}.mini-cal__grid{margin-top:var(--sp-2);display:grid;grid-template-columns:repeat(7,1fr);gap:var(--sp-1);font-size:12px}.mini-cal__grid button{display:grid;place-items:center;padding:6px 0;border:none;border-radius:var(--sp-2);background:var(--surface);color:inherit;font:inherit;cursor:pointer}.mini-cal__grid button.is-muted{color:var(--fg-3);background:transparent}.mini-cal__grid button.is-weekend{color:var(--weekend-fg)}.mini-cal__grid button.is-today{background:transparent;box-shadow:inset 0 0 0 1px var(--primary);color:var(--primary-deep);font-weight:600}.mini-cal__grid button.is-selected{background:var(--primary);color:var(--on-primary);box-shadow:none}.mini-cal__grid button.is-today.is-selected{background:var(--primary);color:var(--on-primary);box-shadow:inset 0 0 0 1px var(--primary-press)}.calendar-header__mini .mini-cal{margin:0;background:var(--surface);border-color:var(--line)}.calendar-header__mini .mini-cal__grid button{background:var(--surface-2)}.calendar-header__mini .mini-cal__grid button.is-muted{background:transparent}.admin-topbar{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px}.admin-topbar h1{margin:0;font-size:24px;line-height:1.2;letter-spacing:var(--track-display)}.topbar-actions{display:flex;gap:var(--sp-3);align-items:center}.board-stage{min-height:560px;border-radius:var(--radius-xl);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);position:relative;overflow:hidden;padding:20px}.board-stage:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 12% 18%,var(--primary-soft),transparent 45%),radial-gradient(circle at 92% 20%,var(--c-teal-soft),transparent 45%);pointer-events:none}.board-stage>*{position:relative;z-index:1}.admin-dock{position:fixed;left:var(--sp-4);right:var(--sp-4);bottom:calc(var(--sp-4) + env(safe-area-inset-bottom));display:none;grid-template-columns:repeat(var(--dock-cols, 5),minmax(0,1fr));gap:6px;padding:var(--sp-2);border-radius:var(--radius-lg);background:var(--dock-bg);border:1px solid var(--line);box-shadow:var(--shadow-card);-webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);z-index:40}.dock-btn{min-height:var(--tap);display:grid;place-items:center;gap:2px;padding:6px 2px;border:none;border-radius:var(--radius);background:transparent;color:var(--fg-2);font:inherit;font-size:10px;letter-spacing:.04em;cursor:pointer;text-decoration:none}.dock-btn.is-active{background:var(--primary-soft);color:var(--primary-deep)}.dock-btn__icon{width:20px;height:20px}.admin-dock-submenu{position:fixed;left:var(--sp-4);right:var(--sp-4);bottom:calc(var(--sp-4) + env(safe-area-inset-bottom) + 70px);display:none;gap:10px;padding:var(--sp-2);border-radius:var(--radius-md);background:var(--dock-bg);border:1px solid var(--line);box-shadow:var(--shadow-card);-webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);z-index:41}.admin-dock-submenu.is-open{display:grid}.sidebar-foot{margin-top:auto;padding-top:var(--sp-3);border-top:1px solid var(--sidebar-line)}.theme-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;border-radius:var(--radius-sm);border:1px solid var(--sidebar-line);background:var(--sidebar-2)}.theme-switch__btn{min-height:30px;display:grid;place-items:center;padding:0 6px;border:none;border-radius:var(--sp-2);background:transparent;color:var(--fg-2);font:inherit;font-size:11px;cursor:pointer}.theme-switch__btn svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.theme-switch__btn:hover{color:var(--fg)}.theme-switch__btn.is-active{background:var(--surface);color:var(--primary-deep);box-shadow:var(--shadow-card)}@media (hover: none) and (pointer: coarse){.theme-switch__btn{min-height:36px}}@media (max-width: 1024px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{display:none}.admin-dock{display:grid}.admin-main{padding:var(--sp-4) var(--sp-4) 120px}.admin-topbar{flex-direction:column;align-items:stretch;gap:var(--sp-3)}.board-stage{padding:var(--sp-3);border-radius:var(--radius-md);min-height:0}}@media (max-width: 640px){.btn-lbl{display:none}}.calendar-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:10px var(--sp-4);border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap}.calendar-header__date{display:flex;align-items:center;gap:10px}.calendar-title{margin:0;font-size:19px;letter-spacing:var(--track-display)}.calendar-header .icon-button{width:30px;height:30px;border-radius:var(--sp-2)}.calendar-header__actions{display:flex;align-items:center;gap:var(--sp-3)}.calendar-mini-toggle{display:none}.calendar-header__mini{width:100%;display:none;overflow:hidden;max-height:0;opacity:0;transform:translateY(-6px);transition:max-height .25s ease,opacity .25s ease,transform .25s ease}.calendar-header__mini.is-open{max-height:420px;opacity:1;transform:none}.view-toggle{display:inline-flex;padding:3px;gap:2px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.view-toggle__btn{padding:6px 14px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--fg-2);font:inherit;font-size:13px;cursor:pointer}.view-toggle__btn.is-active{background:var(--primary-soft);color:var(--primary-deep)}.calendar-stage{margin-top:20px}.month-view__week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-bottom:10px}.month-view__head{text-align:center;font-size:12px;color:var(--fg-2);letter-spacing:.14em;text-transform:uppercase}.month-view__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.month-cell{min-height:110px;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);padding:var(--sp-2) var(--sp-2) 10px;display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.month-cell__top{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.month-cell__date{font-weight:600;font-size:13px}.month-cell__meta{font-size:11px;color:var(--fg-2)}.month-cell.is-muted{background:var(--surface-2);color:var(--fg-3);border-style:dashed}.month-cell.is-weekend{background:var(--weekend-bg);border-color:var(--c-red-line)}.month-cell.is-weekend:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--c-red-line)}.month-cell.is-selected{box-shadow:0 0 0 2px var(--primary-tint)}.month-cell.is-today{background:var(--primary-soft);border-color:var(--primary)}.month-cell__chips{display:grid;gap:var(--sp-1)}.month-chip{padding:var(--sp-1) 6px;border-radius:var(--radius-sm);border:1px solid transparent;background:var(--gray-soft);color:var(--gray-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;font:inherit;font-size:11px;cursor:pointer;display:block;width:100%}.month-chip.is-ev-1{background:var(--ev-1-bg);border-color:var(--ev-1-line);color:var(--ev-1-fg)}.month-chip.is-ev-2{background:var(--ev-2-bg);border-color:var(--ev-2-line);color:var(--ev-2-fg)}.month-chip.is-ev-3{background:var(--ev-3-bg);border-color:var(--ev-3-line);color:var(--ev-3-fg)}.month-chip.is-ev-4{background:var(--ev-4-bg);border-color:var(--ev-4-line);color:var(--ev-4-fg)}.month-chip.is-cancelled{opacity:.5;text-decoration:line-through}.month-chip.is-completed{opacity:.7}.month-chip.is-pending{border-style:dashed}.month-chip.is-no_show{box-shadow:inset 3px 0 0 var(--red)}.month-more{font-size:10px;color:var(--fg-2);padding-left:var(--sp-1)}.day-view__grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--sp-4)}.day-timeline{display:grid;grid-template-columns:70px minmax(0,1fr);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.day-scale{border-right:1px solid var(--line);background:var(--surface-2)}.day-scale__label{height:56px;padding:var(--sp-1) var(--sp-2);font-size:11px;letter-spacing:.02em;color:var(--fg-2);border-bottom:1px solid var(--line)}.day-track{position:relative}.day-track__hour{height:56px;border-bottom:1px solid var(--line-2)}.day-event{position:absolute;left:6px;right:6px;border-radius:var(--radius-sm);padding:6px var(--sp-2);font-size:12px;overflow:hidden;text-align:left;font-family:inherit;cursor:pointer;border:1px solid transparent}.day-event.is-ev-1{background:var(--ev-1-bg);border-color:var(--ev-1-line);color:var(--ev-1-fg)}.day-event.is-ev-2{background:var(--ev-2-bg);border-color:var(--ev-2-line);color:var(--ev-2-fg)}.day-event.is-ev-3{background:var(--ev-3-bg);border-color:var(--ev-3-line);color:var(--ev-3-fg)}.day-event.is-ev-4{background:var(--ev-4-bg);border-color:var(--ev-4-line);color:var(--ev-4-fg)}.day-event.is-cancelled{opacity:.5;text-decoration:line-through}.day-event.is-completed{opacity:.7}.day-event.is-pending{border-style:dashed}.day-event__time{font-weight:600}.day-event__who{display:block}.day-details{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);padding:14px;align-self:start}.day-details__head{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:10px}.day-details__label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-2)}.day-details__actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-3)}.day-details__actions .btn{flex:1 1 auto;min-width:96px}@media (max-width: 1200px){.month-cell{min-height:96px}.month-view__grid,.month-view__week{gap:var(--sp-2)}}@media (max-width: 1100px){.day-view__grid{grid-template-columns:minmax(0,1fr)}.day-view__grid>.day-details{display:none}}@media (max-width: 1024px){.view-toggle{display:none}.calendar-mini-toggle{display:grid}.calendar-header__mini{display:block}.calendar-header{flex-direction:column;align-items:stretch}.calendar-header__actions{justify-content:space-between}}@media (max-width: 640px){.month-cell{min-height:80px;padding:6px;border-radius:var(--radius)}.month-cell__meta{display:none}.month-view__grid,.month-view__week{gap:var(--sp-1)}.day-scale__label,.day-track__hour{height:44px}}.day-details__close{margin-left:auto}.day-details__move{margin-top:var(--sp-3)}.appointment-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:72}.appointment-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:none;padding:0;width:100%;cursor:default}.appointment-modal__panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(520px,92vw);max-height:calc(100dvh - 32px);background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-pop);padding:22px;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;gap:18px}.appointment-modal__header{display:flex;align-items:center;justify-content:space-between;gap:16px}.appointment-modal__header h3{margin:0;font-size:18px}.appointment-form{display:grid;gap:12px;overflow-y:auto;min-height:0;padding-right:4px}.appointment-modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.appointment-modal__status{min-height:16px;margin:0}.appointment-suggestions{display:grid;gap:6px;margin-top:-4px;min-height:70px}.appointment-suggestions__list{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:10px;width:100%;overflow-x:auto;padding:4px 2px 2px;scroll-behavior:smooth}.appointment-suggestion{padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);display:grid;gap:2px;cursor:pointer;text-align:left;font:inherit;transition:border-color .2s,box-shadow .2s,background .2s}.appointment-suggestion:hover{border-color:var(--line-strong);background:var(--surface-2);box-shadow:var(--shadow-lift)}.appointment-suggestion.is-active{border-color:var(--primary);background:var(--gray-soft);box-shadow:var(--shadow-lift)}.appointment-suggestion__name{font-weight:500;font-size:13px;color:var(--primary)}.appointment-suggestion__meta{font-size:13px;color:var(--fg-2);display:flex;gap:12px;flex-wrap:wrap}.appointment-suggestion.is-info{border-style:dashed;cursor:default;pointer-events:none;background:var(--surface-2);box-shadow:none;font-weight:500;color:var(--fg-2);font-size:13px}.appointment-scroller{display:grid;gap:6px}.appointment-scroller__label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--fg-2)}.appointment-scroller.is-disabled{opacity:.6;pointer-events:none}.appointment-chips{display:grid;grid-auto-flow:column;grid-auto-columns:max-content;gap:8px;overflow-x:auto;padding:4px 2px 2px;scroll-behavior:smooth;scrollbar-width:thin}.appointment-chips::-webkit-scrollbar,.appointment-cards::-webkit-scrollbar{height:8px}.appointment-chips::-webkit-scrollbar-thumb,.appointment-cards::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}.appointment-chip{border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 12px;background:var(--surface);color:var(--fg);font:inherit;font-size:14px;cursor:pointer;white-space:nowrap;transition:background .2s,border-color .2s,box-shadow .2s}.appointment-chip:hover{background:var(--gray-soft);border-color:var(--line-strong)}.appointment-chip.is-active{background:var(--primary);color:var(--on-primary);border-color:var(--primary);box-shadow:var(--shadow-lift)}.appointment-cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,260px);gap:10px;overflow-x:auto;padding:4px 2px 2px;scroll-behavior:smooth}.appointment-card{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--surface);color:var(--fg);text-align:left;font:inherit;display:grid;gap:8px;align-content:start;cursor:pointer;transition:border-color .2s,box-shadow .2s}.appointment-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lift)}.appointment-card.is-active{border-color:var(--primary);box-shadow:var(--shadow-lift)}.appointment-card__title{font-size:15px;font-weight:600;margin:0}.appointment-card__meta{font-size:13px;color:var(--fg-2);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.appointment-card__price{font-weight:600;font-size:14px;color:var(--primary)}.appointment-empty{font-size:13px;color:var(--fg-2);padding:6px 2px}.appointment-datetime{display:grid;gap:12px;padding:12px;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface-2)}.appointment-datetime.is-disabled{opacity:.6;pointer-events:none}.appointment-calendar{display:grid;gap:10px;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--surface)}.appointment-calendar__header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px}.appointment-calendar__title{text-align:center;font-weight:600;color:var(--primary)}.appointment-calendar__week,.appointment-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.appointment-calendar__week span{font-size:11px;text-align:center;color:var(--fg-2)}.appointment-calendar__day{border:1px solid transparent;background:var(--surface);color:var(--fg);border-radius:var(--radius-sm);padding:8px 0;font:inherit;font-size:13px;cursor:pointer;transition:border-color .2s,background .2s}.appointment-calendar__day:hover:not(:disabled){border-color:var(--line-strong)}.appointment-calendar__day.is-muted{color:var(--fg-3)}.appointment-calendar__day:disabled{color:var(--fg-3);opacity:.6;cursor:not-allowed}.appointment-calendar__day.is-selected{background:var(--primary);color:var(--on-primary)}.appointment-calendar__day.is-today{border-color:var(--line-strong)}.appointment-calendar__day.is-free:after{content:"";display:block;width:4px;height:4px;margin:3px auto 0;border-radius:50%;background:var(--green)}.appointment-calendar__day.is-selected.is-free:after{background:var(--on-primary)}.appointment-slots{display:grid;gap:10px;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--surface)}.appointment-slots__header{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--fg-2)}.appointment-slots__meta{text-transform:none;letter-spacing:0}.appointment-slots__grid{display:grid;gap:12px}.appointment-slots__empty{font-size:13px;color:var(--fg-2)}.appointment-slot-group{display:grid;gap:8px}.appointment-slot-group__title{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--fg-2)}.appointment-slot-row{display:flex;flex-wrap:wrap;gap:8px}.appointment-slot-button{border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:var(--surface-2);color:var(--primary);font:inherit;font-size:13px;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}.appointment-slot-button:hover{border-color:var(--line-strong);transform:translateY(-1px)}.appointment-slot-button.is-selected{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}@media (max-width: 640px){.appointment-modal__panel{width:min(520px,96vw);max-height:calc(100dvh - 24px);padding:16px;border-radius:14px}}.board{display:flex;gap:12px;padding:0;overflow-x:auto;align-items:flex-start;scroll-snap-type:x proximity;position:relative;z-index:1}.col{flex:0 0 280px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:10px;scroll-snap-align:start;max-height:calc(100vh - 220px);display:flex;flex-direction:column}.col--over{outline:2px dashed var(--primary);outline-offset:-2px}.col__head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.col__dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.col__name{font-weight:600;font-size:14px}.col__count{margin-left:auto;color:var(--fg-2);font-size:13px}.col__sum{color:var(--fg-2);font-size:12px;margin:0 0 8px}.col__body{overflow-y:auto;display:grid;gap:8px}.col__more{margin-top:8px}.tile{text-align:left;width:100%;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font:inherit;color:inherit;cursor:grab;box-shadow:var(--shadow-card);transition:box-shadow .18s,border-color .18s}.tile:hover{border-color:var(--line-strong);box-shadow:var(--shadow-card)}.tile:active{cursor:grabbing}.tile--dragging{opacity:.4}.tile__name{font-weight:600}.tile__meta{color:var(--fg-2);font-size:13px;margin-top:2px}.tile__days{color:var(--fg-2);font-size:12px;margin-top:4px}.tile__days--stale{color:var(--red)}@media (max-width: 1024px){.col{max-height:calc(100dvh - 260px)}}.journal{display:grid;gap:12px}.journal-day{min-height:0;padding:14px}.journal-day__title{text-align:center;margin-bottom:10px}.journal-list{display:grid;gap:8px}.journal-row{display:flex;align-items:center;gap:12px;cursor:pointer}.journal-row__time{min-width:48px}.journal-row__who{flex:1 1 auto;text-align:left;min-width:0}@media (max-width: 640px){.journal-row{display:grid;grid-template-columns:52px minmax(0,1fr);grid-template-areas:"time who" "time meta";align-items:start;row-gap:4px;column-gap:10px}.journal-row__time{grid-area:time}.journal-row__who{grid-area:who}.journal-row .tile__meta,.journal-row .status-pill{grid-area:meta;justify-self:start}.journal-row{grid-auto-flow:row}}.board-stage--list{min-height:0}.topbar-search{height:38px;min-width:220px;padding:0 12px;font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg)}.topbar-search:focus{outline:none;border-color:var(--focus-line);box-shadow:var(--focus-ring)}.topbar-select{height:38px;padding:0 10px;font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg)}.btn.is-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.appointment-modal__panel--card{grid-template-rows:minmax(0,1fr)}.appointment-modal__scroll{overflow-y:auto;min-height:0}.panel{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;justify-content:flex-end;z-index:60}.panel__box{width:min(460px,100%);background:var(--surface);height:100%;overflow-y:auto;padding:18px}.panel--full{justify-content:center}.panel--full .panel__box{width:min(900px,100%);border-radius:0}.panel__head{display:flex;align-items:center;gap:8px;margin-bottom:12px}.panel__title{margin:0;font-size:18px}.panel__tools{margin-left:auto;display:flex;gap:6px}.icon{width:32px;height:32px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);display:grid;place-items:center;padding:0;font:inherit;font-size:16px;line-height:1;cursor:pointer}.icon:hover{background:var(--hover-soft);border-color:var(--line-strong)}@media (hover: none) and (pointer: coarse){.icon{min-width:var(--tap);min-height:var(--tap)}}.facts{display:grid;gap:6px;margin:0 0 16px}.facts div{display:flex;justify-content:space-between;gap:12px}.facts dt{color:var(--fg-2)}.facts dd{margin:0;text-align:right;font-weight:500}.feed{display:grid;gap:8px}.feed__item{padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.feed__when{color:var(--fg-2);font-size:12px}.feed__kind{font-size:11px;color:var(--fg-2);text-transform:uppercase;letter-spacing:.08em}.note{display:grid;gap:8px;margin-top:16px}.note textarea{width:100%;min-height:72px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);font:inherit;resize:vertical;background:var(--surface)}.note textarea:focus{outline:none;border-color:var(--focus-line);box-shadow:var(--focus-ring)}.inbox{display:grid;grid-template-columns:minmax(280px,340px) 1fr;gap:var(--sp-4);height:calc(100vh - 180px);min-height:420px}.inbox__list{display:flex;flex-direction:column;gap:var(--sp-2);overflow-y:auto;padding-right:var(--sp-1)}.inbox__filters,.inbox__search{display:flex;gap:var(--sp-2)}.inbox__search input{flex:1;min-width:0;height:var(--control-h);padding:0 var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);font:inherit}.inbox__search input:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.convo{display:grid;gap:var(--sp-1);width:100%;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--fg);font:inherit;text-align:left;cursor:pointer}.convo:hover{background:var(--surface-2);border-color:var(--line-strong)}.convo.is-active{background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary)}.convo__head{display:flex;align-items:baseline;gap:var(--sp-2)}.convo__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.convo__when{margin-left:auto;color:var(--fg-3);font-size:12px;flex:none}.convo__preview{color:var(--fg-2);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.convo__mine{color:var(--fg-3)}.convo__foot{display:flex;align-items:center;gap:var(--sp-2)}.chip{padding:1px var(--sp-2);border-radius:999px;font-size:11px;background:var(--gray-soft);color:var(--fg-2)}.chip--tg{background:var(--brand-tg);color:var(--on-brand)}.chip--max{background:var(--brand-max);color:var(--on-brand)}.convo__badge{margin-left:auto;min-width:20px;padding:0 6px;border-radius:999px;background:var(--primary);color:var(--on-primary);font-size:12px;line-height:20px;text-align:center}.inbox__thread{display:flex;flex-direction:column;min-height:0;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.inbox__placeholder{margin:auto}.thread__head{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--line-2)}.thread__back{display:none;min-width:var(--tap);min-height:var(--tap);border:0;background:none;color:var(--fg);font-size:20px;cursor:pointer}.thread__feed{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.bubble{max-width:min(70ch,80%);padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--line-2)}.bubble--in{align-self:flex-start}.bubble--out{align-self:flex-end;background:var(--primary-soft);border-color:var(--primary-tint)}.bubble--system{align-self:center;max-width:100%;background:var(--gray-soft);border-style:dashed}.bubble__who{display:block;font-size:11px;color:var(--fg-3);text-transform:uppercase;letter-spacing:var(--track-caps)}.bubble__body{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.bubble__gone{margin:0;color:var(--fg-3);font-style:italic}.bubble__file{margin:var(--sp-1) 0 0;font-size:13px;color:var(--fg-2)}.bubble__edit{width:100%;padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);font:inherit;resize:vertical}.bubble__actions{display:flex;gap:var(--sp-2);margin-top:var(--sp-2)}.bubble__meta{display:flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-1);font-size:12px;color:var(--fg-3)}.linklike{border:0;background:none;padding:0;color:var(--primary);font:inherit;font-size:12px;cursor:pointer}.linklike:hover{text-decoration:underline}.composer{border-top:1px solid var(--line-2);padding:var(--sp-3) var(--sp-4);background:var(--surface)}.composer__row{display:flex;gap:var(--sp-2);align-items:flex-end}.composer textarea{flex:1;min-width:0;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);font:inherit;resize:vertical}.composer textarea:focus-visible{outline:2px solid var(--primary);outline-offset:1px}@media (max-width: 899px){.inbox{grid-template-columns:1fr;height:calc(100vh - 210px)}.inbox .inbox__thread,.inbox.is-thread .inbox__list{display:none}.inbox.is-thread .inbox__thread{display:flex}.thread__back{display:block}.bubble{max-width:92%}}.auth-shell{min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--bg)}.auth-card{width:min(420px,100%);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-pop);padding:28px;display:grid;gap:16px;animation:auth-card-in var(--dur-enter) var(--ease-out) both}@keyframes auth-card-in{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:none}}.auth-card__header{display:grid;gap:6px}.auth-card__header h2{margin:0;font-size:24px;line-height:1.15;letter-spacing:var(--track-display);font-weight:700}.auth-form .hint{font-size:13px;line-height:1.5;letter-spacing:0}.auth-mark{width:44px;height:44px;border-radius:14px;background:var(--primary);color:var(--on-primary);display:grid;place-items:center;font-weight:700;font-size:18px;margin-bottom:4px}.auth-form{display:grid;gap:14px}.auth-form .btn{min-height:var(--tap)}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;color:var(--fg-2);font-size:12px;text-transform:uppercase;letter-spacing:var(--track-caps)}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line)}.auth-messengers{display:grid;gap:10px}.btn--tg{background:var(--brand-tg);color:var(--on-brand)}.btn--tg:hover:not(:disabled){background:var(--brand-tg-hover)}.btn--max{background:var(--brand-max);color:var(--on-brand)}.btn--max:hover:not(:disabled){background:var(--brand-max-hover)}.auth-wait{display:flex;align-items:center;gap:10px;margin:0;line-height:1.5}.auth-wait__dot{flex:none;width:10px;height:10px;border-radius:50%;background:var(--primary);animation:auth-pulse 1.2s ease-in-out infinite}@keyframes auth-pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion: reduce){.auth-card{animation:none}.auth-form .btn,.btn{transition:none}.btn:active:not(:disabled){transform:none}.auth-wait__dot{animation:none}}.tenant-list{display:grid;gap:10px}.tenant-option{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);font:inherit;text-align:left;cursor:pointer}.tenant-option:hover{border-color:var(--line-strong);background:var(--gray-soft)}.tenant-option strong{display:block}.tenant-option span{color:var(--fg-2);font-size:12px}.gate{max-width:520px;margin:10vh auto;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);text-align:center}.gate h1{margin:0 0 12px;font-size:20px}.gate p{margin:0 0 16px;color:var(--fg-2)}.auth-links{display:flex;justify-content:space-between;gap:12px}.auth-links a{color:var(--fg-2)}.auth-links a:hover{color:var(--fg)}.setup{width:min(680px,100%);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:28px;display:grid;gap:20px}.setup__account{display:inline-flex;gap:8px}.setup__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.setup__head .eyebrow{margin:0}.setup__steps{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0;padding:0 0 18px;border-bottom:1px solid var(--line);list-style:none;font-size:12px;color:var(--fg-2)}.setup__steps li{display:flex;align-items:center;gap:8px}.setup__steps span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--line-strong);font-size:11px}.setup__steps .is-now{color:var(--fg);font-weight:600}.setup__steps .is-now span,.setup__steps .is-done span{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.setup__body h2{margin:0 0 6px;font-size:20px}.setup__body .auth-form{gap:16px}.setup-fork{display:grid;gap:12px}.setup-card{display:grid;gap:6px;text-align:left;padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);cursor:pointer;font:inherit;color:inherit}.setup-card:hover{border-color:var(--line-strong);background:var(--gray-soft)}.setup-card b{font-size:15px}.setup-card span{font-size:13px;color:var(--fg-2)}.setup-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.setup-list li{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.setup-list__meta{font-size:12px;color:var(--fg-2);white-space:nowrap}.setup-row{display:grid;grid-template-columns:1fr 90px 110px auto;gap:10px;align-items:end}.setup-row .btn{min-height:38px}.setup-chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font:inherit;font-size:13px;cursor:pointer}.chip:hover{border-color:var(--line-strong)}.chip.is-on{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.setup-week{display:grid;gap:6px}.setup-week__row{display:grid;grid-template-columns:90px 1fr 1fr;gap:10px;align-items:center;padding:6px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.setup-week__row.is-on{background:var(--surface);border-color:var(--line-strong)}.setup-week__day{display:flex;align-items:center;gap:8px;font-size:13px}.setup-week__row input[type=time]{padding:7px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);font:inherit;background:var(--surface)}.setup-week__row input[type=time]:disabled{opacity:.4}.setup-link{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:var(--radius-sm);word-break:break-all}.setup-link a{color:var(--fg);font-weight:600}.field--narrow{min-width:0}@media (max-width: 640px){.setup{padding:20px 16px;border-radius:var(--radius-md)}.setup-row{grid-template-columns:1fr 1fr}.setup-row .btn{grid-column:1 / -1}.setup-week__row{grid-template-columns:76px 1fr 1fr}}.settings{display:grid;gap:18px;max-width:960px}.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:22px 24px;display:grid;gap:16px}.settings-card__head{display:grid;gap:4px}.settings-card__head h2{margin:0;font-size:18px}.settings-form{display:grid;gap:14px}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 16px;align-items:end}.settings-actions{display:flex;gap:10px;flex-wrap:wrap}.settings-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.check--field{align-self:end;padding-bottom:10px}.settings-cats li{grid-template-columns:1fr auto auto}.settings-inline{padding:7px 10px;border:1px solid transparent;border-radius:var(--radius-sm);font:inherit;background:transparent;min-width:0}.settings-inline:hover{border-color:var(--line);background:var(--surface)}.settings-inline:focus{outline:none;border-color:var(--focus-line);background:var(--surface);box-shadow:var(--focus-ring)}.settings-cats__tools{display:flex;gap:4px}.settings-cats__tools .icon-button{width:30px;height:30px}.settings-services{display:grid;gap:8px}.svc-row{display:grid;grid-template-columns:2fr 1.3fr 80px 100px 90px auto;gap:10px;align-items:end;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.svc-row.is-dirty{background:var(--surface);border-color:var(--line-strong)}.svc-row--new{background:var(--surface-2);border-style:dashed}.svc-row .field>span{font-size:11px}.svc-row .field input,.svc-row .field select{padding:8px 10px}.svc-row__tools{display:flex;gap:6px;padding-bottom:2px}.svc-row__error{grid-column:1 / -1}.staff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.staff-card{display:grid;gap:4px;text-align:left;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);font:inherit;color:inherit;cursor:pointer}.staff-card:hover{border-color:var(--line-strong);background:var(--gray-soft)}.staff-card.is-off{opacity:.6}.staff-card__name{font-weight:600;font-size:15px}.staff-card__meta{font-size:12px;color:var(--fg-2)}.staff-card .status-pill{justify-self:start;margin-top:4px}.side-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.side-panel__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim)}.side-panel__body{position:absolute;top:0;right:0;bottom:0;width:min(640px,100%);background:var(--surface);box-shadow:var(--shadow-pop);overflow-y:auto;padding:20px 24px 40px;display:grid;gap:16px;align-content:start}.side-panel__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.side-panel__head h2{margin:0;font-size:20px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line)}.tab{padding:10px 14px;border:none;border-bottom:2px solid transparent;background:transparent;font:inherit;font-size:13px;color:var(--fg-2);cursor:pointer;margin-bottom:-1px}.tab.is-active{color:var(--fg);border-bottom-color:var(--primary);font-weight:600}.week-editor{display:grid;gap:8px}.week-day{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:8px 12px;display:grid;gap:8px}.week-day.is-on{background:var(--surface);border-color:var(--line-strong)}.week-day__head{display:flex;align-items:center;gap:10px;font-size:13px;cursor:pointer}.week-day__body{display:grid;gap:6px;padding-left:26px}.week-day__tools{display:flex;gap:6px;flex-wrap:wrap}.span-row{display:flex;align-items:center;gap:8px;font-size:13px;flex-wrap:wrap}.span-row__label{min-width:64px;color:var(--fg-2);font-size:12px}.span-row--break{color:var(--fg-2)}.span-row input[type=time]{padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-sm);font:inherit;background:var(--surface)}.span-row__title{min-width:64px;width:110px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-sm);font:inherit;font-size:12px;background:var(--surface)}.span-row .icon-button{width:28px;height:28px}.sched-block{display:grid;gap:12px}.works{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.work{display:grid;gap:6px;text-align:left;padding:0;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;font:inherit;color:inherit;cursor:pointer}.work:hover{border-color:var(--line-strong);box-shadow:var(--shadow-card)}.work.is-off{opacity:.6}.work__photo{width:100%;aspect-ratio:4 / 3;object-fit:cover;background:var(--surface-2);display:block}.work__photo--empty{display:grid;place-items:center;color:var(--fg-2);font-size:12px}.work__title{padding:0 12px;font-weight:600;font-size:14px}.work__meta{padding:0 12px 10px;font-size:12px;color:var(--fg-2)}.work .status-pill{margin:0 12px 10px;justify-self:start}.work-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.work-photos__item{position:relative;margin:0}.work-photos__item img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);display:block}.work-photos__item .icon-button{position:absolute;top:4px;right:4px;width:28px;height:28px;background:var(--dock-bg)}.reviews{display:grid;gap:10px;max-width:760px}.review{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:14px 16px;display:grid;gap:8px}.review__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;font-size:14px}.review__stars{color:var(--primary);letter-spacing:1px}.review__stars-off{color:var(--line-strong)}.review__body{margin:0;font-size:15px;white-space:pre-wrap}@media (max-width: 1024px){.settings-card{padding:16px}.svc-row{grid-template-columns:1fr 1fr}.svc-row__tools{grid-column:1 / -1}}@media (max-width: 640px){.settings-row{grid-template-columns:1fr}.side-panel__body{padding:16px 16px 40px}.week-day__body{padding-left:0}}.account__notice{margin:0;padding:12px 14px;border-radius:var(--radius);background:var(--yellow-soft);border:1px solid var(--yellow-line);color:var(--fg);font-size:14px;line-height:1.5}.account__label{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--fg-2)}.account__badge{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--gray-soft);color:var(--fg-2);font-size:12px;text-transform:uppercase;letter-spacing:var(--track-caps)}.account__badge.is-on{background:var(--green-soft);color:var(--green-fg)}.account__secret,.account__codes li{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:15px;letter-spacing:.08em}.account__secret{margin:0;padding:10px 12px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line);word-break:break-all;-webkit-user-select:all;user-select:all}.account__codes{margin:0;padding:10px 12px;list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:6px 16px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line)}.account__sessions{margin:0;padding:0;list-style:none;display:grid;gap:8px}.account__sessions li{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.account__sessions li.is-current{border-color:var(--line-strong);background:var(--surface)}.account__sessions .hint{margin:0;flex:1}.account__device{font-weight:600}.account__device em{font-style:normal;font-weight:400;color:var(--fg-2)}.messengers{display:grid;gap:10px}.messengers__row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.messengers__name{display:inline-flex;align-items:center;gap:6px;font-weight:600;min-width:120px}.messengers__name--tg .btn__icon{color:var(--brand-tg);margin:0}.messengers__name--max .btn__icon{color:var(--brand-max);margin:0}.messengers__row .hint{margin:0;flex:1}.account-standalone{display:block;padding:24px}.account-standalone__head{width:min(960px,100%);margin:0 auto 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.account-standalone .settings{margin:0 auto}.partner__rules{margin:0;padding-left:18px;display:grid;gap:6px;font-size:14px;line-height:1.5}.partner__code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em}.partner__links{margin:0;padding:0;list-style:none;display:grid;gap:8px}.partner__links li{display:grid;grid-template-columns:140px 1fr auto;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.partner__links code{font-size:13px;word-break:break-all}.partner__label{font-weight:600;font-size:13px}.partner__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.partner__stat{display:grid;gap:2px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.partner__stat b{font-size:24px;line-height:1.1;letter-spacing:var(--track-display)}.partner__stat span{font-size:12px;color:var(--fg-2)}.tariff__flow{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--fg-2)}.tariff__autorenew{display:flex;align-items:center;gap:8px;font-size:14px}.tariff__exchange{align-items:center}.tariff__days{width:80px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);font:inherit}.tariff__table{width:100%;border-collapse:collapse;font-size:13px}.tariff__table th{text-align:left;font-weight:600;color:var(--fg-2);padding:6px 8px;border-bottom:1px solid var(--line)}.tariff__table td{padding:8px;border-bottom:1px solid var(--line);vertical-align:top}.tariff__table tr:last-child td{border-bottom:0}.tariff .partner__stat b{font-size:18px}.tariff__gate{display:grid;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--gray-soft)}@media (max-width: 640px){.partner__links li{grid-template-columns:1fr}}.tabs{display:flex;gap:6px;flex-wrap:wrap}.tab{padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font:inherit;cursor:pointer;color:var(--fg);transition:transform var(--dur-press) var(--ease-out),background .15s ease}.tab:active{transform:scale(.97)}.tab.is-active{background:var(--primary-soft);color:var(--primary-deep);border-color:var(--primary)}.feed__steps{margin:0;padding-left:18px;display:grid;gap:6px;font-size:14px;line-height:1.5}.bc__list{margin:0;padding:0;list-style:none;display:grid;gap:10px}.bc__row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.bc__main{display:grid;gap:4px}.bc__main .hint{margin:0}.bc__actions{display:flex;gap:8px;flex-wrap:wrap}.bc__picker{display:grid;gap:6px}.bc__picker .pills{display:flex;flex-wrap:wrap;gap:6px}.bc__picker .pill{padding:6px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font:inherit;font-size:13px;cursor:pointer;color:var(--fg);transition:transform var(--dur-press) var(--ease-out)}.bc__picker .pill:active{transform:scale(.97)}.bc__picker .pill.is-active{background:var(--primary);border-color:transparent;color:var(--on-primary);font-weight:600}@media (prefers-reduced-motion: reduce){.tab,.bc__picker .pill{transition:none}.tab:active,.bc__picker .pill:active{transform:none}}.studio-form{display:grid;gap:10px}.studio-form textarea{width:100%;resize:vertical;min-height:96px}.studio-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.studio-refs{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}.studio-refs figure{margin:0;width:96px;display:grid;gap:4px;justify-items:center}.studio-refs img{width:96px;height:96px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.studio-launch{display:grid;gap:6px;padding-top:6px;border-top:1px solid var(--line)}.studio-launch .btn{justify-self:start}.studio-jobs{display:grid;gap:14px;margin-top:18px}.studio-job header{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.studio-prompt{color:var(--fg-2);margin:6px 0 10px;overflow-wrap:anywhere}.studio-result{width:100%;max-width:420px;border-radius:12px;border:1px solid var(--line);display:block;margin-bottom:10px}@media (max-width: 560px){.studio-row{grid-template-columns:1fr}}
