:root{--via-primary: #2c6f66;--via-primary-light: #3a8b80;--via-primary-dark: #1f4f49;--via-ink: #102b28;--via-muted: #647873;--via-canvas: #edf4f2;--via-sidebar: #f7faf9;--via-surface: #ffffff;--via-border: #d5e2df;--via-border-strong: #b8cfca;--via-soft: #e7f1ef;--via-success: #43a46e;--via-warning: #c78400;--via-danger: #9f2d27;--via-info: #327ca8;--via-space-1: 4px;--via-space-2: 8px;--via-space-3: 12px;--via-space-4: 16px;--via-space-5: 20px;--via-space-6: 24px;--via-space-8: 32px;--via-space-10: 40px;--via-space-12: 48px;--radius-field: 6px;--radius-control: 6px;--radius-panel: 8px;--radius-round: 999px;--shadow-field: inset 0 1px 3px rgba(31, 79, 73, .09), 0 1px 0 rgba(255, 255, 255, .85);--shadow-control: 0 5px 12px rgba(31, 79, 73, .18), inset 0 1px 0 rgba(255, 255, 255, .22);--shadow-panel: 0 18px 42px rgba(31, 79, 73, .09), 0 3px 10px rgba(31, 79, 73, .06);--shadow-raised: 0 16px 30px rgba(31, 79, 73, .12), 0 4px 9px rgba(31, 79, 73, .07);--via-sidebar-width: 224px;--via-field-height: 42px;--via-button-height: 39px;--via-page-max: 1240px;--via-header-height: 92px;--via-font: Montserrat, ui-sans-serif, system-ui, sans-serif}.via-surface{background:var(--via-surface);border:1px solid var(--via-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel)}.via-button,.via-icon-button{align-items:center;border:1px solid transparent;border-radius:var(--radius-control);cursor:pointer;display:inline-flex;font:600 13px/1 var(--via-font);gap:8px;justify-content:center;min-height:var(--via-button-height);padding:0 16px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.via-button:hover,.via-icon-button:hover{transform:translateY(-1px)}.via-button:focus-visible,.via-icon-button:focus-visible,.via-field input:focus-visible,.via-field select:focus-visible,.via-field textarea:focus-visible{outline:3px solid rgba(44,111,102,.24);outline-offset:2px}.via-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.via-button[aria-busy=true]:disabled{cursor:progress}.via-button--primary{background:var(--via-primary);color:#fff;box-shadow:var(--shadow-control)}.via-button--secondary{background:var(--via-soft);border-color:var(--via-border);color:var(--via-primary-dark)}.via-button--danger{background:var(--via-danger);color:#fff}.via-button--ghost{background:transparent;color:var(--via-primary-dark)}.via-icon-button{background:var(--via-surface);border-color:var(--via-border);color:var(--via-primary-dark);padding:0;width:var(--via-button-height)}.via-field{color:var(--via-ink);display:grid;font-size:12px;font-weight:650;gap:7px}.via-field input,.via-field select,.via-field textarea{background:var(--via-surface);border:1px solid var(--via-border-strong);border-radius:var(--radius-field);box-shadow:var(--shadow-field);color:var(--via-ink);font:500 14px/1.4 var(--via-font);min-height:var(--via-field-height);padding:9px 12px}.via-field textarea{min-height:88px;resize:vertical}.via-field small{color:var(--via-muted);font-weight:450}.via-badge{background:var(--via-soft);border-radius:var(--radius-round);color:var(--via-primary-dark);display:inline-flex;font-size:11px;font-weight:700;padding:5px 9px}.via-badge--success{background:#e6f5eb;color:#226943}.via-badge--warning{background:#fff3d6;color:#855800}.via-badge--danger{background:#fde9e7;color:var(--via-danger)}.via-badge--info{background:#e5f2f9;color:#225f82}.via-page-header,.via-section-header{align-items:flex-start;display:flex;gap:24px;justify-content:space-between}.via-page-header>div:first-child,.via-section-header>div:first-child{min-width:0}.via-page-header p{color:var(--via-primary);font-size:10px;font-weight:800;letter-spacing:.14em;margin:0 0 7px;text-transform:uppercase}.via-page-header h1{color:var(--via-ink);font-size:25px;letter-spacing:-.03em;margin:0}.via-page-header span{color:var(--via-muted);display:block;font-size:13px;margin-top:7px}.via-page-header__actions{display:flex;gap:8px}.via-section-header h2{color:var(--via-ink);font-size:17px;margin:0}.via-section-header p{color:var(--via-muted);font-size:12px;margin:5px 0 0}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--via-canvas);color:var(--via-ink);font-family:var(--via-font)}button,input,select,textarea{font-family:inherit}button svg,a svg{height:18px;width:18px}.app-shell{display:grid;grid-template-columns:var(--via-sidebar-width) 1fr;min-height:100vh}.sidebar{background:var(--via-sidebar);border-right:1px solid var(--via-border);display:flex;flex-direction:column;inset:0 auto 0 0;padding:18px 12px;position:fixed;width:var(--via-sidebar-width);z-index:20}.brand{align-items:center;display:flex;gap:10px;padding:4px 8px 24px}.brand__mark{align-items:center;background:var(--via-primary);border-radius:8px;color:#fff;display:flex;font-size:12px;font-weight:800;height:34px;justify-content:center;width:34px}.brand div{display:grid;gap:2px}.brand strong{font-size:14px}.brand small,.sidebar__account small{color:var(--via-muted);font-size:10px}.sidebar nav{display:grid;gap:4px}.nav-link{align-items:center;border-radius:6px;color:var(--via-muted);display:flex;font-size:12px;font-weight:650;gap:10px;min-height:39px;padding:0 12px;text-decoration:none}.nav-link:hover{background:var(--via-soft);color:var(--via-primary-dark)}.nav-link--active{background:var(--via-primary);color:#fff;box-shadow:var(--shadow-control)}.account-switcher{border-top:1px solid var(--via-border);display:grid;gap:8px;margin-top:auto;padding:14px 4px 0}.account-switcher__button{align-items:center;background:transparent;border:1px solid var(--via-border);border-radius:10px;color:var(--via-text);cursor:pointer;display:flex;gap:8px;padding:9px 10px;text-align:left;width:100%}.account-switcher__button svg{color:var(--via-primary);flex:0 0 auto;font-size:18px}.account-switcher__button span{display:grid;font-size:11px;font-weight:700;gap:2px;min-width:0}.account-switcher__button small{color:var(--via-muted);font-size:9px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-switcher select{background:var(--via-surface);border:1px solid var(--via-border);border-radius:8px;color:var(--via-text);font:inherit;font-size:10px;padding:8px;width:100%}.sidebar__account{border-top:1px solid var(--via-border);display:grid;font-size:10px;gap:4px;margin-top:auto;overflow-wrap:anywhere;padding:14px 8px 0}.account-switcher+.sidebar__account{margin-top:10px}.sidebar__close,.mobile-header,.sidebar-backdrop{display:none}.app-main{grid-column:2;min-width:0}.page-content{margin:0 auto;max-width:var(--via-page-max);padding:36px 30px 64px}.page-stack{display:grid;gap:20px}.via-surface{padding:20px}.calendar-panel{overflow-x:auto;padding:0}.calendar-toolbar{align-items:center;border-bottom:1px solid var(--via-border);display:flex;gap:16px;justify-content:space-between;min-width:900px;padding:13px 16px}.calendar-panel--day .calendar-toolbar{flex-wrap:wrap;min-width:0}.calendar-toolbar__controls,.calendar-navigation{align-items:center;display:flex;gap:5px}.calendar-toolbar__controls{gap:12px}.calendar-toolbar strong{align-items:center;display:flex;flex-shrink:0;font-size:12px;gap:7px;white-space:nowrap}.calendar-view-switch{background:var(--via-soft);border:1px solid var(--via-border);border-radius:7px;display:flex;padding:2px}.calendar-view-switch button{background:transparent;border:0;border-radius:5px;color:var(--via-muted);cursor:pointer;font-size:10px;font-weight:750;padding:7px 10px}.calendar-view-switch button.selected{background:var(--via-surface);box-shadow:var(--shadow-control);color:var(--via-primary-dark)}.calendar-professional-select{align-items:center;display:flex;gap:7px}.calendar-professional-select span{color:var(--via-muted);font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.calendar-professional-select select{background:var(--via-surface);border:1px solid var(--via-border);border-radius:7px;color:var(--via-ink);min-width:150px;padding:7px 28px 7px 9px}.calendar-cancelled-filter{align-items:center;color:var(--via-muted);cursor:pointer;display:inline-flex;font-size:10px;font-weight:700;gap:7px;white-space:nowrap}.calendar-cancelled-filter input{accent-color:var(--via-primary);height:15px;margin:0;width:15px}.calendar-state{background:var(--via-soft);border-bottom:1px solid var(--via-border);color:var(--via-muted);font-size:11px;min-width:900px;padding:10px 16px}.calendar-state--error{background:#fff5f3;color:var(--via-danger)}.calendar-state--empty{padding:28px 16px;text-align:center}.timeline-calendar{min-width:900px}.timeline-calendar--day{min-width:0}.timeline-header{background:var(--via-surface, #fff);display:grid;grid-template-columns:76px repeat(var(--timeline-columns),minmax(128px,1fr));position:sticky;top:0;z-index:5}.timeline-header__corner{border-bottom:1px solid var(--via-border);border-right:1px solid var(--via-border)}.timeline-day-header{align-items:center;border-bottom:1px solid var(--via-border);border-right:1px solid var(--via-border);display:flex;justify-content:space-between;padding:11px;text-transform:capitalize}.timeline-day-header:last-child{border-right:0}.timeline-day-header span{color:var(--via-muted);font-size:11px}.timeline-day-header strong{font-size:15px}.timeline-body{display:grid;grid-template-columns:76px minmax(0,1fr)}.timeline-rail{border-right:1px solid var(--via-border);position:relative}.timeline-time{color:var(--via-muted);font-size:9px;line-height:18px;padding-right:12px;position:absolute;right:0;transform:translateY(-50%)}.timeline-days{display:grid;grid-template-columns:repeat(var(--timeline-columns),minmax(128px,1fr))}.timeline-day{border-right:1px solid var(--via-border);position:relative}.timeline-day:last-child{border-right:0}.timeline-day--professional{background:#fff;cursor:crosshair;touch-action:pan-x;-webkit-user-select:none;user-select:none}.calendar-unavailable{align-items:center;background:#edf1ef;border-bottom:1px solid #dfe6e2;border-top:1px solid #dfe6e2;color:#6f7d78;display:flex;justify-content:center;left:0;overflow:hidden;pointer-events:none;position:absolute;right:0;z-index:0}.calendar-unavailable span{font-size:9px;font-weight:750;letter-spacing:.045em;padding:0 6px;text-align:center;text-transform:uppercase}.working-range-access{background:transparent;border:0;cursor:crosshair;left:0;padding:0;position:absolute;right:0;z-index:1}.working-range-access:hover,.working-range-access:focus-visible{background:color-mix(in srgb,var(--via-primary) 5%,transparent);outline:2px solid color-mix(in srgb,var(--via-primary) 45%,transparent);outline-offset:-2px}.calendar-selection{background:color-mix(in srgb,var(--via-primary) 18%,white);border:1px solid var(--via-primary);border-radius:5px;color:var(--via-primary-dark);display:grid;left:4px;min-height:12px;padding:4px 6px;pointer-events:none;position:absolute;right:4px;z-index:4}.calendar-selection strong{font-size:10px}.calendar-selection span{font-size:9px}.timeline-day--drop-target{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--via-primary) 55%,transparent)}.appointment-card[draggable=true]{cursor:grab}.appointment-card[draggable=true]:active{cursor:grabbing}.calendar-operation-message{background:color-mix(in srgb,var(--via-primary) 8%,white);border-bottom:1px solid var(--via-border);color:var(--via-primary-dark);font-size:12px;margin:0;padding:8px 16px}.timeline-line{border-top:1px dashed color-mix(in srgb,var(--via-border) 60%,transparent);left:0;position:absolute;right:0}.timeline-line--hour{border-top-style:solid}.empty-slot{color:var(--via-border-strong);font-size:10px;left:9px;position:absolute;top:9px}.appointment-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:color-mix(in srgb,var(--appointment-color) 9%,white);border:0;border-left:3px solid var(--appointment-color);border-radius:5px;color:var(--via-ink);cursor:pointer;display:grid;gap:3px;overflow:hidden;padding:6px;position:absolute;text-align:left;z-index:2}.appointment-card:hover{background:color-mix(in srgb,var(--appointment-color) 15%,white)}.appointment-card:focus-visible{outline:2px solid var(--via-primary);outline-offset:2px;z-index:5}.appointment-card__summary{display:grid;gap:3px;min-width:0}.appointment-card strong{font-size:11px}.appointment-card span,.appointment-card small{color:var(--via-muted);font-size:9px}.appointment-card__service{color:var(--via-primary-dark);font-size:10px;font-weight:800;line-height:1.2}.appointment-card__separator{display:none}.appointment-card--compact{align-items:center;display:block;padding:4px 6px}.appointment-card--compact .appointment-card__summary{align-items:baseline;display:flex;gap:4px;overflow:hidden;white-space:nowrap}.appointment-card--compact .appointment-card__service,.appointment-card--compact strong{flex:0 1 auto;font-size:10px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-card--compact .appointment-card__service{max-width:48%}.appointment-card--compact strong{color:var(--via-ink);min-width:0}.appointment-card--compact .appointment-card__separator{color:var(--via-muted);display:inline;flex:0 0 auto}.appointment-card--compact>small,.appointment-card--compact>.via-badge{display:none}.day-schedule-context-menu{background:var(--via-surface);border:1px solid var(--via-border);border-radius:9px;box-shadow:var(--shadow-raised);display:grid;min-width:250px;overflow:hidden;padding:5px;position:fixed;z-index:70}.day-schedule-context-menu>span{color:var(--via-muted);font-size:9px;font-weight:700;padding:7px 9px 5px;text-transform:capitalize}.day-schedule-context-menu button{align-items:center;background:transparent;border:0;border-radius:6px;color:var(--via-ink);cursor:pointer;display:flex;font-size:11px;font-weight:700;gap:9px;padding:10px;text-align:left}.day-schedule-context-menu button:hover,.day-schedule-context-menu button:focus-visible{background:var(--via-soft);color:var(--via-primary-dark);outline:0}.day-schedule-context-menu button svg{color:var(--via-primary);flex:0 0 auto}.day-schedule-dialog{max-width:620px}.day-schedule-dialog__hint{background:var(--via-soft);border-radius:7px;color:var(--via-muted);font-size:11px;line-height:1.5;margin:0;padding:11px 12px}.day-schedule-periods{display:grid;gap:8px}.day-schedule-period{align-items:end;background:#f8fbfa;border:1px solid var(--via-border);border-radius:8px;display:grid;gap:8px;grid-template-columns:1fr auto 1fr auto;padding:11px}.day-schedule-period label{display:grid;gap:5px}.day-schedule-period label>span{color:var(--via-muted);font-size:9px;font-weight:750;text-transform:uppercase}.day-schedule-period input{background:var(--via-surface);border:1px solid var(--via-border);border-radius:6px;min-height:38px;padding:0 9px;width:100%}.day-schedule-period__separator{color:var(--via-muted);font-size:10px;padding-bottom:12px}.day-schedule-empty{align-items:center;background:#f5f7f6;border:1px dashed var(--via-border-strong);border-radius:8px;display:grid;gap:4px;justify-items:center;padding:22px;text-align:center}.day-schedule-empty strong{font-size:12px}.day-schedule-empty span{color:var(--via-muted);font-size:10px}.day-schedule-unavailable-action{align-self:start;background:transparent;border:0;color:var(--via-danger);cursor:pointer;font-size:10px;font-weight:700;justify-self:start;padding:0}.table-action,.add-period{align-items:center;background:transparent;border:0;color:var(--via-primary);cursor:pointer;display:inline-flex;font-size:10px;gap:5px;padding:4px 0}.appointment-dialog-backdrop{align-items:center;background:#102b2861;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:24px;position:fixed;z-index:60}.appointment-dialog{max-height:calc(100vh - 48px);max-width:680px;overflow-y:auto;padding:24px;width:100%}.appointment-dialog__status{margin:16px 0}.appointment-dialog__loading{background:var(--via-soft);border-radius:7px;color:var(--via-muted);font-size:11px;padding:18px}.appointment-detail-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.appointment-detail-grid>div{background:var(--via-soft);border-radius:7px;padding:10px 12px}.appointment-detail-grid dt{color:var(--via-muted);font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.appointment-detail-grid dd{font-size:12px;font-weight:650;margin:4px 0 0;overflow-wrap:anywhere}.appointment-detail-section{border-top:1px solid var(--via-border);margin-top:18px;padding-top:16px}.appointment-detail-section h3{font-size:12px;margin:0 0 10px}.appointment-detail-section>p{color:var(--via-muted);font-size:11px;margin:0;white-space:pre-wrap}.appointment-dialog__audit{color:var(--via-muted);font-size:9px;margin:16px 0 0}.appointment-dialog__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:20px}.appointment-cancel-confirmation{background:#fff5f3;border:1px solid color-mix(in srgb,var(--via-danger) 30%,transparent);border-radius:8px;margin-top:20px;padding:14px}.appointment-cancel-confirmation p{color:var(--via-danger);font-size:11px;font-weight:650;margin:0 0 12px}.appointment-cancel-confirmation>div{display:flex;gap:8px;justify-content:flex-end}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);white-space:nowrap}.drawer-backdrop{background:#102b2857;display:flex;top:0;right:0;bottom:0;left:0;justify-content:flex-end;position:fixed;z-index:50}.drawer{border-radius:0;height:100%;max-width:520px;overflow-x:hidden;overflow-y:auto;padding:24px;width:100%}.stack-form{display:grid;gap:16px;margin-top:22px}.form-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr}.form-summary{background:var(--via-soft);border-radius:6px;display:flex;font-size:12px;justify-content:space-between;padding:12px}.client-search{position:relative}.client-search>input{background:var(--via-surface);border:1px solid var(--via-border);border-radius:6px;color:var(--via-ink);min-height:40px;padding:0 11px;width:100%}.client-search>input:focus{border-color:var(--via-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--via-primary) 12%,transparent);outline:0}.client-search__popover{background:var(--via-surface);border:1px solid var(--via-border);border-radius:7px;box-shadow:var(--shadow-raised);left:0;margin-top:5px;overflow:hidden;position:absolute;right:0;z-index:30}.client-search__popover>p{color:var(--via-muted);font-size:11px;margin:0;padding:12px}.client-search__results{max-height:240px;overflow-y:auto;padding:4px}.client-search__option{background:transparent;border:0;border-radius:5px;color:var(--via-ink);cursor:pointer;display:grid;gap:3px;padding:9px 10px;text-align:left;width:100%}.client-search__option:hover,.client-search__option.active{background:var(--via-soft)}.client-search__option:focus-visible{outline:2px solid var(--via-primary);outline-offset:-2px}.client-search__option strong{font-size:11px}.client-search__option span{color:var(--via-muted);font-size:10px}.client-search__selected{align-items:center;background:var(--via-soft);border:1px solid var(--via-border);border-radius:7px;display:flex;justify-content:space-between;min-height:48px;padding:8px 10px}.client-search__selected>span{display:grid;gap:3px;min-width:0}.client-search__selected strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-search__selected small{color:var(--via-muted);font-size:10px}.client-search__selected button{background:transparent;border:0;color:var(--via-primary);cursor:pointer;flex:0 0 auto;font-size:10px;font-weight:700;padding:6px}.ordered-services{display:grid;gap:5px}.ordered-services>div{align-items:center;background:var(--via-soft);border-radius:5px;display:grid;grid-template-columns:1fr auto auto;padding:5px 8px}.drawer__actions{display:flex;justify-content:flex-end;gap:8px}.form-message--error{color:var(--via-danger);font-size:12px}.inline-form{align-items:end;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(120px,1fr)) auto}.quick-create{align-items:end;display:flex;gap:10px}.quick-create .via-field{flex:1}.table-card{overflow-x:auto;padding:0}table{border-collapse:collapse;min-width:720px;width:100%}th,td{border-bottom:1px solid var(--via-border);font-size:11px;padding:13px 16px;text-align:left}th{background:#f8fbfa;color:var(--via-muted);font-size:9px;letter-spacing:.08em;text-transform:uppercase}tbody tr:last-child td{border:0}.page-actions,.table-actions{align-items:center;display:flex;gap:10px}.import-summary{align-items:center;display:flex;gap:18px;justify-content:space-between}.import-summary span{color:var(--via-muted);font-size:11px}.client-filters{display:flex;gap:4px}.client-filters button{background:transparent;border:1px solid var(--via-border);border-radius:7px;color:var(--via-muted);cursor:pointer;padding:7px 11px}.client-filters button.selected{background:#fff;color:var(--via-primary);box-shadow:0 1px 4px #0b3f3820}.catalog-grid{display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.catalog-card{align-items:center;display:grid;gap:12px;grid-template-columns:auto 1fr auto}.catalog-card p{color:var(--via-muted);font-size:10px;margin:4px 0 0}.catalog-card b{font-size:11px}.catalog-card .table-action{grid-column:2}.color-dot{border-radius:50%;height:12px;width:12px}.split-layout{display:grid;gap:16px;grid-template-columns:230px 1fr}.professional-list{align-content:start;display:grid;gap:5px;padding:8px}.professional-list button{background:transparent;border:0;border-radius:6px;color:var(--via-ink);cursor:pointer;display:grid;gap:4px;padding:11px;text-align:left}.professional-list button span{color:var(--via-muted);font-size:10px}.professional-list button.selected{background:var(--via-soft);color:var(--via-primary-dark)}.schedule-editor{display:grid;gap:20px}.service-checks{border:1px solid var(--via-border);border-radius:6px;display:flex;flex-wrap:wrap;gap:15px;padding:14px}.service-checks legend{color:var(--via-muted);font-size:10px;font-weight:700}.service-checks label{font-size:11px}.working-week{display:grid;gap:4px}.working-day{align-items:start;border-top:1px solid var(--via-border);display:grid;grid-template-columns:90px 1fr;min-height:48px;padding:9px 0}.working-day>strong{font-size:11px;padding-top:9px}.working-day>div{display:flex;flex-wrap:wrap;gap:6px}.working-day span{align-items:center;display:flex;gap:5px}.working-day input{border:1px solid var(--via-border);border-radius:5px;padding:6px}.working-day i{color:var(--via-muted);font-size:9px;font-style:normal}.working-day span button{background:transparent;border:0;color:var(--via-danger);cursor:pointer}.narrow-card{max-width:620px}.settings-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr}.list-rows{display:grid;margin-top:16px}.list-rows>div{align-items:center;border-top:1px solid var(--via-border);display:flex;justify-content:space-between;padding:12px 0}.list-rows span{display:grid;gap:3px}.list-rows small{color:var(--via-muted)}.secret-box{align-items:center;background:#fff8df;border:1px solid #ead38a;border-radius:6px;display:flex;gap:10px;justify-content:space-between;margin-top:14px;padding:10px;overflow:hidden}.secret-box code{font-size:10px;overflow-wrap:anywhere}.session-state{align-items:center;display:flex;justify-content:center;min-height:100vh}.session-state .via-surface{max-width:420px;text-align:center}@media(max-width:1350px){.calendar-toolbar{flex-wrap:wrap}.calendar-toolbar__controls{flex-basis:100%}.calendar-toolbar strong{margin-right:auto}}@media(max-width:760px){.app-shell{display:block}.app-main{grid-column:auto}.sidebar{box-shadow:var(--shadow-raised);transform:translate(-105%);transition:transform .18s ease}.sidebar--open{transform:translate(0)}.sidebar__close{display:inline-flex;margin-left:auto}.sidebar-backdrop{background:#102b284d;border:0;display:block;top:0;right:0;bottom:0;left:0;position:fixed;z-index:15}.mobile-header{align-items:center;background:var(--via-surface);border-bottom:1px solid var(--via-border);display:flex;height:58px;justify-content:space-between;padding:0 12px;position:sticky;top:0;z-index:10}.page-content{padding:24px 14px 48px}.via-page-header{display:grid}.via-page-header__actions,.via-page-header__actions .via-button{width:100%}.inline-form,.catalog-grid,.split-layout,.settings-grid,.form-grid{grid-template-columns:1fr}.quick-create{align-items:stretch;flex-direction:column}.split-layout{display:block}.professional-list{display:flex;margin-bottom:12px;overflow-x:auto}.professional-list button{min-width:150px}.working-day{grid-template-columns:72px 1fr}.calendar-toolbar{justify-content:flex-start}.calendar-toolbar strong{margin-left:auto}.calendar-toolbar__controls{align-items:stretch;flex-direction:column}.calendar-view-switch button{flex:1}.calendar-professional-select{align-items:stretch;flex-direction:column}.calendar-professional-select select{width:100%}.drawer{max-width:none}}.client-search-bar{align-items:end;display:flex;gap:18px;justify-content:space-between;padding:16px 18px}.client-search-bar .via-field{flex:1;max-width:620px}.client-search-bar>span{color:var(--via-muted);font-size:11px;padding-bottom:12px;white-space:nowrap}.client-edit-dialog{max-width:580px}.client-edit-form{margin-top:18px}.appointment-date-time-grid{display:grid;gap:12px;grid-template-columns:minmax(0,1.35fr) minmax(140px,.65fr)}.birth-date-field{display:grid;gap:5px}.birth-date-field small{color:var(--via-muted);font-size:10px}.birth-date-field__control{position:relative}.birth-date-field__control>input[type=text]{padding-right:42px;width:100%}.birth-date-field__picker-button{align-items:center;background:transparent;border:0;color:var(--via-primary);cursor:pointer;display:flex;height:36px;justify-content:center;padding:0;position:absolute;right:5px;top:50%;transform:translateY(-50%);width:34px}.birth-date-field__picker-button svg{height:18px;width:18px}.birth-date-field__native-picker{height:1px;opacity:0;pointer-events:none;position:absolute;right:20px;top:50%;width:1px}.calendar-period{min-width:190px;justify-content:center}.calendar-today-button{flex:0 0 auto;min-width:96px}@media(max-width:1350px)and (min-width:761px){.calendar-toolbar{display:grid;grid-template-columns:1fr auto 1fr}.calendar-toolbar__controls{grid-column:1 / -1}.calendar-today-button{grid-column:2}.calendar-toolbar>.via-badge{grid-column:3;justify-self:end}}@media(max-width:760px){.client-search-bar{align-items:stretch;flex-direction:column;gap:8px}.client-search-bar>span{padding-bottom:0}.appointment-date-time-grid{grid-template-columns:1fr}.day-schedule-period{grid-template-columns:1fr auto 1fr}.day-schedule-period .via-icon-button{grid-column:1 / -1;justify-self:end}.calendar-navigation{justify-content:space-between;width:100%}.calendar-period{min-width:0}.calendar-today-button{width:100%}}
