:root{--color-text-primary: #1E1A17;--color-text-secondary: #727387;--color-gray: #CFCFD1;--color-disabled: #E4E7EC;--color-gray-background: #E8E7EE;--color-background: #F5F4F9;--color-white: #FFFFFF;--color-primary: #FE5220;--color-primary-opacity: #FE52201A;--color-shadow: #101828;--color-back-drop: #0000004D;--color-opacity-black: #000000CC;--color-dark-border: #E8E7EE80;--color-error: #E70000;--color-red-border: #FECDCA;--color-red-background: #FEF3F2;--color-red-text: #B42318;--color-green-text: #067647;--color-green-border: #ABEFC6;--color-green-background: #ECFDF3;--color-cancelled-bg: #F0443833;--color-cancelled: #F04438;--color-pending-bg: #D96E1033;--color-pending: #D96E10;--color-appointment-confirmed: #22C55E;--color-appointment-pending: #3B82F6;--color-holiday: #7C3AED;--color-chart-magenta: #BE005C;--color-chart-blue: #1C25D1;--color-chart-light-orange: #FFB46F;--color-chart-gray: #215368;--color-chart-pink: #FF9BA5;--color-chart-light-red: #FF5D53;--color-chart-clay: #B35F59;--color-chart-dark-brown: #5C0701;--color-chart-red: #DA001A;--color-chart-yellow: #F5C53E;--color-chart-light-brown: #CC914C;--color-chart-orange: #FF9900;--color-chart-brown: #865119;--color-chart-indigo: #785AEC;--color-chart-light-purple: #8D72E3;--color-chart-purple: #692FBF;--color-chart-dark-cyan: #215368;--color-chart-dark-blue: #193C9F;--color-chart-dark-indigo: #6740E1;--color-chart-lavender: #B4A0EB;--color-chart-vibrant-blue: #1C25D1;--color-chart-sky-blue: #5486E1;--color-chart-cyan: #0099FF;--color-chart-light-cyan: #95D0DE;--color-chart-muted-gray: #717171;--color-chart-dark-green: #1F523F;--color-chart-green: #2E713C;--color-chart-teal: #5E8A76;--color-chart-mint-green: #3FA966;--color-chart-light-green: #81E3B6;--color-chart-emerald: #047C6B;--color-chart-lime-green: #86C139;--color-chart-lavender-pink: #E16AFF;--color-chart-grape: #9853A8;--color-chart-rose: #CB6692;--color-chart-pale-pink: #E9C7C4;--font-family: "Assistant", -apple-system, "Segoe UI", Arial, sans-serif;--text-xs: 13px;--text-sm: 15px;--text-base: 17px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-xxxl: 40px}.dialog-backdrop{position:fixed;inset:0;background:var(--color-back-drop);display:flex;align-items:center;justify-content:center;padding:16px;z-index:100}.dialog-card{max-width:400px}.dialog-footnote{margin-top:16px}.calendar-page{flex:1;display:flex;flex-direction:column;min-height:0;height:100dvh;overflow:hidden}.header-side{display:flex;align-items:center;gap:16px}.business-label{font-weight:600;font-size:var(--text-sm)}.calendar-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:16px 24px 8px}.calendar-toolbar .day-title{justify-self:start}.calendar-toolbar .day-controls{justify-self:center}.toolbar-end{justify-self:end;display:flex;align-items:center;gap:16px}.day-title{display:flex;align-items:baseline;gap:12px}.day-controls{display:flex;align-items:center;gap:8px}.btn-nav{width:36px;height:36px;border:1px solid var(--color-gray);border-radius:10px;background:var(--color-white);color:var(--color-text-primary);font-size:var(--text-xl);line-height:1;cursor:pointer}.btn-nav:hover{border-color:var(--color-primary);color:var(--color-primary)}.btn-today{padding:8px 16px;border:none;border-radius:10px;background:var(--color-primary);color:var(--color-white);font-family:inherit;font-size:var(--text-sm);font-weight:700;cursor:pointer}.holiday-banner{display:flex;align-items:center;gap:8px;padding:4px 24px 8px;font-weight:600;font-size:var(--text-sm)}.holiday-dot{width:8px;height:8px;border-radius:50%;background:var(--color-holiday)}.calendar-notice{margin:0 24px 8px;padding:10px 14px;border-radius:10px;background:var(--color-gray-background);color:var(--color-text-secondary);font-size:var(--text-sm)}.calendar-notice.error{color:var(--color-red-text);background:var(--color-red-background);border:1px solid var(--color-red-border)}.allday-band{display:flex;flex-direction:column;gap:8px;padding:0 80px 8px 24px}.allday-strip{display:flex;align-items:stretch;gap:8px;background:var(--color-white);border-radius:10px;padding:10px 12px;box-shadow:0 2px 8px -4px color-mix(in srgb,var(--color-shadow) 20%,transparent)}.allday-text{display:flex;flex-direction:column;gap:2px;min-width:0}.grid-scroll{flex:1;min-height:0;overflow-y:auto;position:relative;padding:10px 24px 24px}.grid{position:relative;display:flex;gap:0}.hour-gutter{width:56px;flex-shrink:0;display:flex;flex-direction:column}.hour-label{flex-shrink:0;font-size:var(--text-xs);font-weight:600;line-height:1;font-variant-numeric:tabular-nums;font-synthesis:none;color:var(--color-text-secondary);transform:translateY(-7px);direction:ltr;text-align:end;padding-inline-end:10px}.track{position:relative;flex:1;background:var(--color-gray-background);border-radius:12px;overflow:hidden}.hour-line{position:absolute;inset-inline:0;height:1px;background:color-mix(in srgb,var(--color-gray) 45%,transparent);z-index:2;pointer-events:none}.open-range{position:absolute;inset-inline:0;background:var(--color-white);z-index:1;pointer-events:none}.closure{position:absolute;inset-inline:0;z-index:3;background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--color-pending) 38%,transparent) 0 8px,transparent 8px 16px),var(--color-pending-bg);border-block:1px dashed var(--color-pending);display:flex;align-items:flex-start;justify-content:center;overflow:hidden}.closure-label{margin-top:6px;padding:2px 10px;border-radius:999px;background:var(--color-white);color:var(--color-pending);border:1px solid var(--color-pending);font-size:var(--text-xs);font-weight:700}.event-card{position:absolute;display:flex;justify-content:space-between;gap:6px;padding:6px;background:var(--color-white);border-radius:8px;box-shadow:0 1px 4px -2px color-mix(in srgb,var(--color-shadow) 30%,transparent);z-index:4;overflow:hidden;box-sizing:border-box}.event-card.is-break{background:var(--color-gray-background);box-shadow:none}.event-card.row{align-items:center;padding-block:2px}.event-row{display:flex;align-items:center;gap:10px;min-width:0;flex:1;overflow:hidden}.event-card.row .icon-btn{width:22px;height:22px}.event-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.event-meta-stack{display:flex;flex-direction:column;gap:4px;min-width:0}.meta-icon{display:inline-flex;color:var(--color-text-secondary)}.avatar{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid var(--color-primary);color:var(--color-text-secondary);overflow:hidden;flex-shrink:0}.avatar img{width:100%;height:100%;object-fit:cover}.event-actions{display:flex;gap:6px;align-items:flex-start;flex-shrink:0}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:none;background:var(--color-gray-background);color:var(--color-primary);cursor:pointer}.event-card.is-break .icon-btn{background:var(--color-background)}.icon-btn:hover{filter:brightness(.95)}.deposit-mark{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);font-weight:600;color:var(--color-primary)}.deposit-box{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:1px solid var(--color-primary);border-radius:3px;color:var(--color-primary)}.status-bar{flex-shrink:0;width:4px;border-radius:999px}.status-bar.confirmed{background:var(--color-appointment-confirmed)}.status-bar.pending{background:var(--color-appointment-pending)}.status-bar.break{background:var(--color-text-secondary)}.event-body{display:flex;flex-direction:column;gap:2px;min-width:0}.event-card.compact .event-body{flex-direction:row;align-items:center;gap:8px}.event-service{font-weight:700;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-meta{display:flex;align-items:center;gap:8px;min-width:0}.event-time{font-size:var(--text-xs);color:var(--color-text-secondary);direction:ltr;white-space:nowrap}.event-client{font-size:var(--text-xs);color:var(--color-primary);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.now-line{position:absolute;inset-inline:0;height:2px;background:var(--color-primary);z-index:5;pointer-events:none}.now-line:before{content:"";position:absolute;inset-inline-start:0;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--color-primary)}.grid-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.spinner{width:36px;height:36px;border-radius:50%;border:3px solid var(--color-primary-opacity);border-top-color:var(--color-primary);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.view-toggle{display:flex;align-items:center;gap:4px;background:var(--color-gray-background);padding:4px;border-radius:999px}.view-pill{border:none;background:transparent;padding:6px 14px;border-radius:999px;font-family:inherit;font-size:var(--text-sm);color:var(--color-text-primary);cursor:pointer}.view-pill.selected{background:var(--color-primary);color:var(--color-white);font-weight:600}.calendar-body{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.legend-item{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--color-text-secondary)}.legend-swatch{width:14px;height:14px;border-radius:4px;border:1px solid var(--color-gray)}.legend-swatch.open{background:var(--color-white)}.legend-swatch.outside{background:var(--color-gray-background)}.legend-swatch.closed{background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--color-pending) 38%,transparent) 0 3px,transparent 3px 6px),var(--color-pending-bg);border-color:var(--color-pending)}.week-grid{gap:4px}.week-gutter .week-gutter-head{height:44px;flex-shrink:0}.week-col{flex:1;min-width:0;display:flex;flex-direction:column}.week-col-head{height:40px;margin-bottom:4px;border:none;border-radius:10px;background:var(--color-white);font-family:inherit;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;color:var(--color-text-primary)}.week-col-head:hover{outline:1px solid var(--color-primary)}.week-col-head.today{background:var(--color-primary);color:var(--color-white)}.week-day-name{font-size:var(--text-xs);font-weight:600}.week-day-num{font-size:var(--text-lg);font-weight:800}.week-track{border-radius:10px}.week-event{position:absolute;display:flex;gap:4px;padding:3px 4px;border:none;text-align:start;font-family:inherit;background:var(--color-white);border-radius:6px;box-shadow:0 1px 3px -2px color-mix(in srgb,var(--color-shadow) 35%,transparent);z-index:4;overflow:hidden;box-sizing:border-box;cursor:pointer}.week-event.is-break{background:var(--color-gray-background);box-shadow:none}.week-event .status-bar{width:3px}.week-event-text{display:flex;flex-direction:column;gap:1px;min-width:0}.week-event-text .event-service{font-size:var(--text-xs)}.week-allday{position:absolute;top:2px;inset-inline:2px;z-index:5;border:none;font-family:inherit;font-size:var(--text-xs);font-weight:700;padding:3px 6px;border-radius:6px;background:var(--color-white);border-inline-start:3px solid var(--color-appointment-confirmed);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:pointer}.month-grid{display:grid;grid-template-columns:repeat(7,1fr)}.month-dow{text-align:center;color:var(--color-primary);font-weight:600;font-size:var(--text-sm);padding:6px 0}.month-divider{grid-column:1 / -1;height:2px;background:var(--color-gray);margin-bottom:4px}.month-cell{border:none;background:transparent;font-family:inherit;display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;border-radius:10px;padding:6px 2px;color:var(--color-text-primary)}.month-cell.outside{visibility:hidden}.month-day-num{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-weight:600}.month-cell.selected .month-day-num{background:var(--color-primary);color:var(--color-white)}.month-day-num.today{color:var(--color-primary)}.month-day-num.dim{color:var(--color-text-secondary)}.month-dots{display:flex;gap:2px;align-items:center;min-height:4px}.busy-dot{width:4px;height:4px;border-radius:50%;background:var(--color-primary)}.busy-dot.on-selected{background:var(--color-gray)}.month-grid .holiday-dot{width:4px;height:4px}.month-page{flex:1;min-height:0;display:flex;flex-direction:column}.month-compact{max-height:44%;overflow-y:auto;padding:8px 24px;border-bottom:2px solid var(--color-gray-background)}.month-day-below{flex:1;min-height:0;display:flex;flex-direction:column}.month-view{display:grid;grid-template-columns:repeat(7,1fr);gap:0}.month-view .month-dow{border-bottom:2px solid var(--color-gray)}.mv-cell{min-height:66px;background:var(--color-white);border:1px solid var(--color-gray-background);margin:-.5px;padding:4px 6px;display:flex;flex-direction:column;gap:3px;cursor:pointer;min-width:0}.mv-cell:hover{border-color:var(--color-primary);z-index:1;position:relative}.mv-cell.outside{background:var(--color-background);cursor:default;pointer-events:none}.mv-cell.today{background:var(--color-primary-opacity)}.mv-cell.selected{outline:2px solid var(--color-primary);outline-offset:-2px;z-index:1}.mv-head{display:flex;align-items:baseline;gap:6px;min-width:0}.mv-num{font-weight:700;font-size:var(--text-sm)}.mv-cell.today .mv-num{color:var(--color-primary)}.mv-holiday{font-size:var(--text-xs);color:var(--color-holiday);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mv-events{display:flex;flex-direction:column;gap:3px;min-width:0}.mv-event{display:flex;align-items:center;gap:5px;font-size:var(--text-xs);background:var(--color-background);border-radius:6px;padding:2px 6px;min-width:0}.mv-status{width:6px;height:6px;border-radius:50%;flex-shrink:0}.mv-status.confirmed{background:var(--color-appointment-confirmed)}.mv-status.pending{background:var(--color-appointment-pending)}.mv-time{direction:ltr;color:var(--color-text-secondary);font-weight:600;flex-shrink:0}.mv-client{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.mv-more{align-self:flex-start;font-size:var(--text-xs);font-weight:700;color:var(--color-primary);padding:1px 6px}.datepicker{position:relative}.datepicker-button{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:none;border-radius:999px;background:var(--color-gray-background);font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary);cursor:pointer}.datepicker-button svg{color:var(--color-primary)}.datepicker-pop{position:absolute;top:calc(100% + 8px);inset-inline-start:50%;transform:translate(50%);width:300px;background:var(--color-white);border:1px solid var(--color-dark-border);border-radius:16px;padding:12px;box-shadow:0 8px 24px -8px color-mix(in srgb,var(--color-shadow) 25%,transparent);z-index:50}[dir=ltr] .datepicker-pop{transform:translate(-50%)}.datepicker-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.datepicker-title{font-weight:600}.datepicker .month-cell{padding:2px}.datepicker .month-day-num{width:30px;height:30px;font-size:var(--text-sm)}.menu-card{max-width:380px;padding:24px 20px}.menu-title{font-weight:800;font-size:var(--text-lg);margin:0 0 12px}.menu-subtitle{font-weight:700;margin:0 0 12px}.menu-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 4px;border:none;border-bottom:1px solid var(--color-gray-background);background:none;font-family:inherit;font-size:var(--text-base);color:var(--color-text-primary);text-decoration:none;cursor:pointer;text-align:start}.menu-item:disabled{color:var(--color-text-secondary);cursor:default;opacity:.6}.menu-item:not(:disabled):hover{color:var(--color-primary)}.menu-icon{display:inline-flex;color:var(--color-primary)}.menu-item:disabled .menu-icon{color:var(--color-text-secondary)}.note-block{margin-bottom:12px}.note-title{font-weight:700;font-size:var(--text-sm)}.note-text{margin:4px 0 0;color:var(--color-text-secondary);white-space:pre-wrap}.card.form-card{max-width:460px;max-height:88dvh;overflow-y:auto}.form-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.form-card .field input:not([type=radio]):not([type=checkbox]),.form-card .field select,.form-card .field textarea{width:100%;height:44px;padding:0 14px;font-family:inherit;font-size:var(--text-sm);font-weight:400;line-height:1.4;color:var(--color-text-primary);background:var(--color-white);border:1px solid var(--color-gray);border-radius:10px;outline:none}.form-card .field textarea{height:auto;min-height:72px;padding-block:10px;resize:vertical}.form-card .field input:not([type=radio]):not([type=checkbox]):focus,.form-card .field select:focus,.form-card .field textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-opacity)}.form-card .field input:not([type=radio]):not([type=checkbox]):disabled,.form-card .field select:disabled{background:var(--color-disabled);color:var(--color-text-secondary)}.form-card .datepicker-button{min-height:44px}.form-notice{display:block;margin-top:6px;font-size:var(--text-xs);color:var(--color-text-secondary)}.form-notice.strong{color:var(--color-text-primary);font-weight:600;font-size:var(--text-sm)}.hours-row{display:flex;gap:12px}.hours-row .field{flex:1}.input-code-plain{direction:ltr;text-align:center}.client-field{position:relative}.client-list{position:absolute;top:calc(100% + 4px);inset-inline:0;max-height:220px;overflow-y:auto;background:var(--color-white);border:1px solid var(--color-dark-border);border-radius:12px;box-shadow:0 8px 24px -8px color-mix(in srgb,var(--color-shadow) 25%,transparent);z-index:20;display:flex;flex-direction:column}.client-option{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:none;border-bottom:1px solid var(--color-gray-background);background:none;font-family:inherit;font-size:var(--text-sm);color:var(--color-text-primary);cursor:pointer;text-align:start}.client-option:hover{background:var(--color-background)}.client-phone{direction:ltr;color:var(--color-text-secondary);font-size:var(--text-xs)}.client-empty{padding:12px 14px;color:var(--color-text-secondary);font-size:var(--text-sm)}.cancel-question{text-align:center;font-size:var(--text-lg);margin:0 0 8px}.cancel-details{text-align:center;font-weight:700;color:var(--color-text-secondary);margin:0 0 16px}.btn-danger{background:var(--color-cancelled)}.slot-cell{position:absolute;inset-inline:0;background:transparent;border:none;padding:0;cursor:pointer;z-index:2}.slot-cell:hover{background:var(--color-primary-opacity);box-shadow:inset 0 0 0 1px var(--color-primary)}.add-client{margin-top:8px;padding:16px;border:1px solid var(--color-primary);border-radius:12px;background:var(--color-background)}.add-client-title{font-weight:800;margin:0 0 12px}.add-client input,.add-client textarea,.add-client select{background:var(--color-white)}.birthday-row{display:flex;gap:8px}.birthday-row select{flex:1}.add-client-actions{display:flex;align-items:center;gap:16px}.add-client-actions .btn-link{margin-top:0}.client-option.new-client{color:var(--color-primary);font-weight:700;border-bottom:none}.header-start{display:flex;align-items:center;gap:24px}.nav-tabs{display:flex;gap:4px}.nav-tab{border:none;background:transparent;font-family:inherit;font-size:var(--text-base);color:var(--color-text-secondary);padding:6px 12px;border-radius:10px;cursor:pointer;font-weight:600}.nav-tab:hover{color:var(--color-primary)}.nav-tab.active{color:var(--color-primary);background:var(--color-primary-opacity)}.clients-toolbar{display:flex;align-items:center;gap:16px;padding:16px 24px 8px;flex-wrap:wrap}.clients-search{flex:1;max-width:360px;padding:10px 14px;font-family:inherit;font-size:var(--text-sm);border:1px solid var(--color-gray);border-radius:10px;outline:none;background:var(--color-white)}.clients-search:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-opacity)}.sort-label{display:inline-flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--color-text-secondary)}.sort-label select{padding:9px 12px;font-family:inherit;font-size:var(--text-sm);border:1px solid var(--color-gray);border-radius:10px;background:var(--color-white);color:var(--color-text-primary)}.clients-scroll{flex:1;min-height:0;overflow-y:auto;padding:8px 24px 24px;position:relative}.clients-table{width:100%;border-collapse:collapse;background:var(--color-white);border-radius:12px;overflow:hidden}.clients-table th{text-align:start;font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary);padding:12px 16px;border-bottom:2px solid var(--color-gray-background)}.clients-table td{padding:12px 16px;border-bottom:1px solid var(--color-gray-background);font-size:var(--text-sm)}.clients-table tbody tr{cursor:pointer}.clients-table tbody tr:hover{background:var(--color-background)}.cell-name{display:inline-flex;align-items:center;gap:8px;font-weight:600}.cell-name .avatar{width:28px;height:28px}.interested-tag{padding:1px 8px;border-radius:999px;background:var(--color-primary-opacity);color:var(--color-primary);font-size:var(--text-xs);font-weight:600}.phone-link{display:inline-flex;align-items:center;gap:6px;color:var(--color-text-primary);text-decoration:none;direction:ltr}.phone-link:hover{color:var(--color-primary)}.client-detail-scroll{flex:1;min-height:0;overflow-y:auto;padding:8px 24px 24px}.client-detail-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px}.client-hero{display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px 0 20px;text-align:center}.avatar-big{width:88px;height:88px;border-width:2px}.client-comment{display:inline-flex;align-items:center;gap:6px;color:var(--color-text-secondary);font-size:var(--text-sm);margin:0;max-width:480px}.client-actions{display:flex;gap:12px;margin-top:8px}.client-actions .btn-today{text-decoration:none}.client-history{max-width:640px;margin:0 auto;width:100%;position:relative;display:flex;flex-direction:column;gap:16px}.history-title{font-size:var(--text-lg);font-weight:800;margin:0 0 8px}.history-row{display:flex;align-items:center;gap:10px;background:var(--color-white);border-radius:10px;padding:10px 12px;margin-bottom:8px;box-shadow:0 1px 4px -2px color-mix(in srgb,var(--color-shadow) 25%,transparent)}.history-row.past{opacity:.85}.history-row .status-bar{align-self:stretch}.history-main{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.history-meta{display:flex;gap:12px;font-size:var(--text-xs);color:var(--color-text-secondary)}.history-actions{display:flex;gap:12px}.btn-link.danger{color:var(--color-cancelled);margin-top:0}.tag{padding:2px 10px;border-radius:999px;font-size:var(--text-xs);font-weight:600;border:1px solid}.tag.cancelled{color:var(--color-cancelled);border-color:var(--color-cancelled);background:var(--color-cancelled-bg)}.tag.pending{color:var(--color-pending);border-color:var(--color-pending);background:var(--color-pending-bg)}.clients-filters{display:flex;flex-direction:column;gap:8px;padding:0 24px 8px}.filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-row .view-pill{background:var(--color-white);border:1px solid var(--color-gray-background)}.filter-row .view-pill.selected{background:var(--color-primary);border-color:var(--color-primary)}.client-name-row{display:inline-flex;align-items:center;gap:10px}.edit-client-btn{width:36px;height:36px;background:var(--color-primary-opacity)}.delete-entry{display:block;margin-top:12px}.delete-confirm{margin-top:16px;padding:14px;border:1px solid var(--color-red-border);background:var(--color-red-background);border-radius:12px}.delete-title{font-weight:800;margin:0 0 6px;color:var(--color-red-text)}.delete-warning{margin:0 0 12px;font-size:var(--text-sm);color:var(--color-red-text)}.check-row{display:flex;align-items:center;gap:10px;font-size:var(--text-sm);font-weight:600;margin-bottom:14px;cursor:pointer}.check-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary)}.radio-col{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.radio-row{display:flex;align-items:center;gap:10px;font-size:var(--text-sm);cursor:pointer}.radio-row input[type=radio]{width:15px;height:15px;accent-color:var(--color-primary)}.price-input{margin:4px 24px 8px 0}.field.indent{margin-inline-start:26px}.duration-row{direction:ltr;display:flex;gap:12px}.duration-row select{direction:rtl;flex:1}.add-pill{color:var(--color-primary);font-weight:700}.subcat-list{display:flex;flex-direction:column;gap:10px;max-height:50dvh;overflow-y:auto}.subcat-option{padding:12px 16px;border:1px solid var(--color-gray-background);border-radius:14px;background:var(--color-white);font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary);cursor:pointer;text-align:start;box-shadow:0 1px 4px -2px color-mix(in srgb,var(--color-shadow) 20%,transparent)}.subcat-option:hover{border-color:var(--color-primary)}.service-section{margin-bottom:24px}.service-section-head{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 8px}.plus-glyph{font-size:var(--text-lg);font-weight:700;line-height:1}.cap-chip{padding:6px 14px;border-radius:999px;background:var(--color-primary-opacity);color:var(--color-primary);font-size:var(--text-sm);font-weight:600}.selected-chip{padding:4px 12px;border-radius:999px;background:var(--color-gray-background);font-size:var(--text-sm);font-weight:700}.select-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:0 24px 8px;padding:10px 14px;background:var(--color-white);border:1px solid var(--color-primary);border-radius:12px}.row-disabled{opacity:.55;cursor:default}.check-cell{width:36px}.check-cell input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary);pointer-events:none}.promo-type{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--color-gray-background);border-radius:14px;background:var(--color-white);font-family:inherit;cursor:pointer;text-align:start}.promo-type.selected{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-opacity)}.promo-type img{width:44px;height:44px;border-radius:10px;object-fit:cover}.promo-type-text{display:flex;flex-direction:column;gap:2px;min-width:0}.promo-preview{background:var(--color-background);border-radius:12px;padding:14px;text-align:center;margin-bottom:16px}.promo-preview p{margin:2px 0;font-size:var(--text-sm)}.promo-preview-details{color:var(--color-primary);font-weight:700}.client-promos{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:12px}.promo-chip{display:inline-flex;align-items:center;gap:12px;background:var(--color-primary-opacity);color:var(--color-primary);border-radius:12px;padding:6px 14px;font-size:var(--text-xs);font-weight:600}.datepicker-pop.portal{position:fixed;inset-inline-start:auto;transform:none;z-index:300}.gift-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:50%;background:var(--color-primary-opacity);color:var(--color-primary);cursor:pointer}.gift-btn:hover{filter:brightness(.95)}.promo-rows{display:flex;flex-direction:column;gap:10px;max-height:55dvh;overflow-y:auto}.promo-row{display:flex;align-items:center;gap:10px;background:var(--color-white);border:1px solid var(--color-gray-background);border-radius:10px;padding:10px 12px}.promo-row .status-bar{align-self:stretch}.promo-row-text{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.promo-type-list{display:flex;flex-direction:column;gap:10px}.card.promo-card{max-width:560px;max-height:94dvh}.wa-bubble{background:var(--color-background);border:1px solid var(--color-gray-background);border-radius:12px;border-start-end-radius:2px;padding:12px 14px;white-space:pre-line;font-size:var(--text-sm);line-height:1.6;color:var(--color-text-primary);overflow-wrap:anywhere}.avail-scroll{display:flex;flex-direction:column;gap:32px}.avail-section{display:flex;flex-direction:column;gap:12px}.avail-table td{vertical-align:top}.avail-day-cell{width:160px;white-space:nowrap}.avail-day-cell .tag{margin-inline-start:8px}.ranges-editor{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.range-row{display:flex;align-items:flex-end;gap:10px}.range-field{display:flex;flex-direction:column;gap:4px;font-size:var(--text-xs);color:var(--color-text-secondary);font-weight:600}.range-field input{padding:7px 10px;border:1px solid var(--color-gray);border-radius:8px;font-family:inherit;font-size:var(--text-sm);background:var(--color-white);color:var(--color-text-primary)}.range-field input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-opacity)}.range-note input{min-width:220px}.oneoff-editors{display:flex;flex-direction:column;gap:24px}.closures-list{display:flex;flex-direction:column;gap:6px;max-width:480px}.closure-row{display:flex;align-items:center;justify-content:space-between;background:var(--color-white);border:1px solid var(--color-gray-background);border-radius:10px;padding:8px 14px}.closure-add{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.close-day-btn{padding:3px 12px;border:1px solid var(--color-primary);border-radius:999px;background:var(--color-white);color:var(--color-primary);font-family:inherit;font-size:var(--text-xs);font-weight:700;cursor:pointer}.week-col-head{display:flex;align-items:center;justify-content:center;gap:4px;padding-inline:4px}.week-head-open{display:flex;align-items:center;justify-content:center;gap:6px;border:none;background:transparent;font-family:inherit;color:inherit;cursor:pointer;flex:1}.week-edit-btn{width:22px;height:22px;flex-shrink:0}.week-col-head.today .week-edit-btn{background:color-mix(in srgb,var(--color-white) 25%,transparent);color:var(--color-white)}.mv-edit-btn{width:20px;height:20px;margin-inline-start:auto;opacity:0;transition:opacity .1s}.mv-cell:hover .mv-edit-btn{opacity:1}.closure-link{font-family:inherit;font-size:var(--text-sm);color:var(--color-text-primary);cursor:pointer;text-align:start}.closure-link:hover{border-color:var(--color-primary)}.btn-today-sm{padding:7px 14px;border:1px solid var(--color-gray);border-radius:10px;background:var(--color-white);color:var(--color-text-primary);font-family:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer}.btn-today-sm:hover{border-color:var(--color-primary);color:var(--color-primary)}.btn-outline{padding:8px 16px;border:1px solid var(--color-primary);border-radius:10px;background:var(--color-white);color:var(--color-primary);font-family:inherit;font-size:var(--text-sm);font-weight:700;cursor:pointer}.btn-outline:hover{background:var(--color-primary-opacity)}.fab{position:fixed;bottom:24px;left:24px;width:56px;height:56px;border-radius:50%;border:none;background:var(--color-primary);color:var(--color-white);font-size:30px;line-height:1;cursor:pointer;box-shadow:0 6px 16px -6px color-mix(in srgb,var(--color-shadow) 45%,transparent);z-index:20}.fab:hover{filter:brightness(.95)}.card.day-edit-card{max-width:680px;max-height:94dvh}.day-edit-card .range-note input{min-width:260px}.settings-form{max-width:520px}.settings-form .field input,.settings-form .field select,.settings-form .field textarea{width:100%;padding:10px 14px;font-family:inherit;font-size:var(--text-sm);border:1px solid var(--color-gray);border-radius:10px;background:var(--color-white);color:var(--color-text-primary);outline:none;resize:vertical}.settings-form .field input:disabled{background:var(--color-disabled);color:var(--color-text-secondary)}.settings-form .field input:focus,.settings-form .field textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-opacity)}.images-row{display:flex;gap:48px;flex-wrap:wrap}.image-block{display:flex;flex-direction:column;gap:10px}.images-grid{display:flex;gap:10px;flex-wrap:wrap}.image-tile{position:relative;width:112px;height:112px;border-radius:12px;overflow:hidden;border:1px solid var(--color-gray-background);background:var(--color-white)}.image-tile img{width:100%;height:100%;object-fit:cover}.tile-remove{position:absolute;top:6px;inset-inline-start:6px;width:24px;height:24px;background:color-mix(in srgb,var(--color-white) 85%,transparent)}.image-add{width:112px;height:112px;border:2px dashed var(--color-gray);border-radius:12px;background:var(--color-white);color:var(--color-primary);font-family:inherit;font-size:var(--text-sm);font-weight:700;cursor:pointer}.image-add:hover{border-color:var(--color-primary)}.sub-card{max-width:520px;background:var(--color-white);border:1px solid var(--color-gray-background);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:8px}.sub-line{margin:0;font-weight:700}.sub-breakdown{font-size:var(--text-xs)}.pay-update{border-top:1px solid var(--color-gray-background);padding-top:12px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}.legal-links{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.legal-link{color:var(--color-text-primary);font-size:var(--text-sm);text-decoration:underline}.legal-link:hover{color:var(--color-primary)}.settings-layout{flex:1;min-height:0;display:flex;gap:0}.settings-menu{width:220px;flex-shrink:0;border-inline-end:1px solid var(--color-gray-background);background:var(--color-white);padding:16px 12px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.settings-menu-item{border:none;background:transparent;font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary);text-align:start;padding:10px 14px;border-radius:10px;cursor:pointer}.settings-menu-item:hover{color:var(--color-primary)}.settings-menu-item.active{background:var(--color-primary-opacity);color:var(--color-primary)}.settings-menu-item.logout{margin-top:auto;color:var(--color-cancelled);border-top:1px solid var(--color-gray-background);border-radius:0;padding-top:14px}.settings-content{flex:1;min-width:0;overflow-y:auto;padding:20px 24px 32px}.settings-embed{display:flex;flex-direction:column;gap:12px}.settings-embed-body{display:flex;flex-direction:column}.legal-card{max-width:420px;background:var(--color-white);border:1px solid var(--color-gray-background);border-radius:14px;overflow:hidden}.legal-row{display:flex;align-items:center;gap:12px;padding:14px 18px;color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600;text-decoration:none}.legal-row.bordered{border-top:1px solid var(--color-gray-background)}.legal-row:hover{background:var(--color-background);color:var(--color-primary)}.images-row{flex-direction:column;gap:24px}.brand-lockup{display:inline-flex;align-items:center;gap:10px}.brand-logo{width:34px;height:34px;border-radius:9px;object-fit:cover}.business-identity{display:inline-flex;align-items:center;gap:8px}.business-avatar{width:30px;height:30px;border-width:1px;background:var(--color-background)}.sub-dl{display:grid;grid-template-columns:1fr auto;gap:6px 24px;margin:4px 0 0}.sub-dl dt{color:var(--color-text-secondary);font-size:var(--text-sm)}.sub-dl dd{margin:0;font-weight:600;font-size:var(--text-sm);text-align:end}.sub-dl .is-deduction{color:var(--color-green-text)}.sub-dl dt.is-total,.sub-dl dd.is-total{border-top:1px solid var(--color-gray-background);padding-top:6px;font-weight:800;color:var(--color-text-primary)}.portal-code{font-weight:800;font-size:var(--text-xl);letter-spacing:.06em;color:var(--color-primary);margin:0}.card-missing{color:var(--color-pending)}.included-list{margin:0;padding-inline-start:18px;display:flex;flex-direction:column;gap:4px;font-size:var(--text-sm)}.portal-metrics{display:flex;gap:12px;max-width:520px}.portal-metric{flex:1;background:var(--color-white);border:1px solid var(--color-gray-background);border-radius:12px;padding:14px;display:flex;flex-direction:column;align-items:center;gap:4px}.portal-metric-value{font-weight:800;font-size:var(--text-xl)}.portal-metric-label{color:var(--color-text-secondary);font-size:var(--text-xs)}.ref-list{list-style:none;margin:0;padding:0;max-width:520px;display:flex;flex-direction:column;gap:6px}.ref-row{display:flex;align-items:center;justify-content:space-between;background:var(--color-white);border:1px solid var(--color-gray-background);border-radius:10px;padding:10px 14px;font-size:var(--text-sm)}.ref-amount{font-weight:700}.notif-wrap{position:relative;display:flex;align-items:center}.notif-bell{position:relative;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:none;border-radius:50%;background:transparent;color:var(--color-text-primary);cursor:pointer}.notif-bell:hover{background:var(--color-background)}.notif-badge{position:absolute;top:0;right:0;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--color-primary);color:var(--color-white);font-size:11px;font-weight:600;line-height:17px;text-align:center;box-sizing:border-box;pointer-events:none}.notif-panel{position:absolute;top:calc(100% + 10px);left:0;z-index:90;width:400px;max-height:min(560px,75dvh);display:flex;flex-direction:column;background:var(--color-white);border:1px solid var(--color-gray-background);border-radius:12px;box-shadow:0 12px 32px -8px color-mix(in srgb,var(--color-shadow) 18%,transparent)}.notif-title{margin:0;padding:16px 16px 10px;font-size:var(--text-lg);font-weight:700}.notif-tabs{display:flex;gap:8px;padding:0 16px 10px}.notif-tabs .view-pill{border:1px solid var(--color-gray-background)}.notif-tabs .view-pill.selected{border-color:var(--color-primary)}.notif-list{list-style:none;margin:0;padding:0 16px;overflow-y:auto}.notif-list li+li{border-top:1px solid var(--color-gray-background)}.notif-row{display:flex;align-items:center;gap:14px;width:100%;padding:14px 0;border:none;background:transparent;font-family:inherit;text-align:start;cursor:pointer}.notif-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--color-primary);color:var(--color-white);flex-shrink:0}.notif-icon.read{background:var(--color-gray-background);color:var(--color-text-secondary)}.notif-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.notif-row-title{font-size:var(--text-md);color:var(--color-text-primary)}.notif-row-title.unread{font-weight:700}.notif-body{font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-time{font-size:var(--text-xs);color:var(--color-text-secondary)}.notif-empty{margin:0;padding:28px 16px 32px;text-align:center;color:var(--color-text-secondary)}.card.notif-popup{width:400px;max-width:94vw;text-align:center;display:flex;flex-direction:column;gap:24px}.notif-popup-title{margin:0;font-size:var(--text-lg);font-weight:700}.notif-popup-body{margin:0;color:var(--color-text-primary);white-space:pre-wrap}.event-card.highlighted{outline:2px solid var(--color-primary);outline-offset:1px;animation:notif-land 1.2s ease-in-out 2}@keyframes notif-land{0%,to{box-shadow:0 0 color-mix(in srgb,var(--color-primary) 45%,transparent)}50%{box-shadow:0 0 0 7px transparent}}.stats-toolbar{display:flex;align-items:center;gap:16px;padding:16px 24px 8px;flex-wrap:wrap}.stats-preview-label{margin-inline-start:16px;font-size:var(--text-sm);font-weight:600}.stats-period-switch{display:flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:var(--color-gray-background)}.stats-period-pill{border:none;background:transparent;padding:6px 14px;border-radius:999px;font-family:inherit;font-size:var(--text-sm);color:var(--color-text-primary);cursor:pointer}.stats-period-pill.selected{background:var(--color-white);font-weight:600;box-shadow:0 1px 3px -1px color-mix(in srgb,var(--color-shadow) 25%,transparent)}.stats-picker-wrap{position:relative}.stats-picker-btn{display:flex;align-items:center;gap:8px;border:none;background:transparent;padding:6px 12px;border-radius:999px;font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary);cursor:pointer}.stats-picker-btn:hover{background:var(--color-background)}.stats-picker{position:absolute;top:calc(100% + 8px);inset-inline-start:0;z-index:90;width:420px;max-width:calc(100vw - 48px);padding:16px;background:var(--color-white);border:1px solid var(--color-gray-background);border-radius:12px;box-shadow:0 12px 32px -8px color-mix(in srgb,var(--color-shadow) 18%,transparent)}.stats-picker-title{margin:0 0 12px;font-weight:700}.stats-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stats-tile{padding:9px 4px;border:none;border-radius:10px;background:var(--color-background);font-family:inherit;font-size:var(--text-sm);color:var(--color-text-primary);cursor:pointer}.stats-tile.selected{background:var(--color-primary);color:var(--color-white);font-weight:700}.stats-tile:disabled{background:var(--color-disabled);color:var(--color-gray);cursor:default}.stats-year-row{display:flex;align-items:center;justify-content:space-between;margin-top:16px}.stats-year-arrow{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;background:transparent;color:var(--color-text-secondary);cursor:pointer}.stats-year-arrow:hover:not(:disabled){background:var(--color-background)}.stats-year-arrow:disabled{color:var(--color-disabled);cursor:default}.stats-body{flex:1;min-height:0;overflow-y:auto;padding:8px 24px 40px}.stats-content{max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.stats-loading,.stats-failed{text-align:center;color:var(--color-text-secondary);padding-top:48px}.stats-row{display:grid;gap:16px}.stats-row-top{grid-template-columns:2fr 1fr 1fr}.stats-row-pair{grid-template-columns:1fr 1fr}.stats-row-charts{grid-template-columns:1fr 1fr 1fr}@media(max-width:900px){.stats-row-top,.stats-row-pair,.stats-row-charts{grid-template-columns:1fr}}.card.stats-card{margin:0;max-width:none;display:flex;flex-direction:column;gap:12px;padding:16px}.stats-card-title{margin:0;font-weight:600;font-size:var(--text-sm)}.stats-gain-line{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex:1}.stats-gain-value{font-size:36px;font-weight:600;line-height:1.1}.stats-growth-col{display:flex;flex-direction:column;align-items:center;gap:2px}.stats-growth-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 12px;border-radius:16px;border:1px solid;font-weight:600;font-size:var(--text-sm)}.stats-growth-pill.up{border-color:var(--color-green-border);background:var(--color-green-background);color:var(--color-green-text)}.stats-growth-pill.down{border-color:var(--color-red-border);background:var(--color-red-background);color:var(--color-red-text)}.stats-hint{font-size:var(--text-xs);color:var(--color-text-secondary)}.stats-cell-body{display:flex;flex-direction:column;gap:2px}.stats-cell-value{font-size:30px;font-weight:600;line-height:1.15}.stats-lines{display:flex;flex-direction:column;gap:6px;font-size:var(--text-sm)}.stats-promo-counts{display:flex;justify-content:space-around}.stats-promo-count{display:flex;flex-direction:column;align-items:center;gap:2px}.stats-promo-rate{font-weight:600}.stats-section{display:flex;flex-direction:column;gap:12px}.stats-section-title{margin:0;font-weight:600}.stats-users-header{display:flex;align-items:center;justify-content:space-between;padding:8px;border-bottom:1px solid var(--color-gray);font-weight:600}.stats-users-total{font-size:36px;font-weight:800;line-height:1.1}.stats-chart-title{margin:0;font-weight:700;font-size:var(--text-sm)}.stats-pie-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1}.stats-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:var(--text-sm)}.stats-legend li{display:flex;align-items:center;gap:8px}.stats-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.stats-pie{position:relative;flex-shrink:0}.stats-pie-label{position:absolute;transform:translate(-50%,-50%);background:var(--color-white);padding:2px 6px;border-radius:4px;font-size:10px;font-weight:700;box-shadow:0 2px 8px -2px color-mix(in srgb,var(--color-shadow) 30%,transparent);pointer-events:none;white-space:nowrap}.stats-pie-empty{display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-gray);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:500;text-align:center;opacity:.4;flex-shrink:0}.stats-bars{display:flex;justify-content:space-evenly;align-items:stretch;height:136px;width:100%}.stats-bars.empty{align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:var(--text-xs);opacity:.6}.stats-bar-col{display:flex;flex-direction:column;justify-content:space-between;align-items:center;height:100%}.stats-bar-col.no-pct{justify-content:flex-end}.stats-bar-pct{font-size:var(--text-xs);font-weight:600}.stats-bar-stack{display:flex;flex-direction:column;align-items:center}.stats-bar{width:20px;border-radius:6px;background:var(--color-primary)}.stats-bar-label{font-size:10px;font-weight:600}.card.stats-services{flex-direction:row;align-items:center;gap:32px;padding:24px}.stats-service-list{list-style:none;margin:0;padding:0;flex:1;min-width:0}.stats-service-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}.stats-service-list li+li{border-top:1px solid var(--color-gray-background)}.stats-service-info{display:flex;flex-direction:column;gap:4px;min-width:0}.stats-service-name{display:flex;align-items:center;gap:8px;font-weight:700}@media(max-width:900px){.card.stats-services{flex-direction:column}}.view-toggle-row{display:flex;justify-content:center;padding:12px 24px 0}.event-card.row .icon-btn{width:18px;height:18px}.support-card{display:flex;flex-direction:column;gap:14px;max-width:460px}.support-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.support-wa{display:inline-flex;align-items:center;gap:8px;text-decoration:none}.support-phone{font-weight:700;letter-spacing:.02em}.support-mail{color:var(--color-primary);font-weight:600}.settings-menu-item{display:flex;align-items:center;gap:8px}.closure-actions{display:flex;align-items:center;gap:12px}.delete-confirm .field{width:100%}.delete-confirm .field textarea{min-height:110px;width:100%;box-sizing:border-box}.settings-form .field select{padding:10px 12px;font-family:inherit;font-size:var(--text-sm);border:1px solid var(--color-gray);border-radius:10px;background:var(--color-white);color:var(--color-text-primary)}.btn-danger-outline{background:var(--color-white);color:var(--color-red-text);border:1px solid var(--color-red-text)}.btn-danger-outline:hover:not(:disabled){background:var(--color-red-background)}.addons-card{display:flex;flex-direction:column;gap:14px}.addons-head{display:flex;align-items:center;gap:10px}.mock-badge{padding:2px 10px;border-radius:999px;background:var(--color-primary-opacity);color:var(--color-primary);font-size:var(--text-xs);font-weight:700}.addons-plan{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:var(--color-background);font-size:var(--text-sm)}.addons-plan-title{font-weight:700}.addons-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:900px){.addons-row{grid-template-columns:1fr}}.addon-offer{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px;border:1px solid var(--color-gray-background);border-radius:12px}.addon-title{font-weight:700}.addon-price{font-weight:700;font-size:var(--text-base)}.addons-history-title{margin:0 0 8px;font-weight:700;font-size:var(--text-sm)}.addons-history{list-style:none;margin:0;padding:0}.addons-history li{display:flex;align-items:center;gap:16px;padding:8px 0;font-size:var(--text-sm)}.addons-history li+li{border-top:1px solid var(--color-gray-background)}.addons-history li b{margin-inline-start:auto}.card.addon-confirm-card{width:420px;max-width:94vw;display:flex;flex-direction:column;gap:14px}.settings-menu-item .menu-side-icon{margin-inline-start:auto;display:flex;align-items:center}.addon-stepper{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--color-gray-background);border-radius:999px;padding:2px}.addon-stepper button{width:26px;height:26px;border:none;border-radius:50%;background:var(--color-background);font-family:inherit;font-size:var(--text-base);line-height:1;color:var(--color-text-primary);cursor:pointer}.addon-stepper button:hover:not(:disabled){background:var(--color-primary-opacity)}.addon-stepper button:disabled{color:var(--color-gray);cursor:default}.addon-stepper b{min-width:34px;text-align:center;font-size:var(--text-sm)}.addon-buy-row{display:flex;align-items:center;gap:12px;margin-top:auto;flex-wrap:wrap}.addon-buy-row .btn-today{margin-inline-start:auto}.addons-plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:900px){.addons-plan-grid{grid-template-columns:1fr}}.addons-plan-block{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:10px;background:var(--color-background);font-size:var(--text-sm)}.card.addon-confirm-card{max-height:88dvh;overflow-y:auto;width:480px}.addon-summary{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.addon-summary li{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:var(--text-sm)}.addon-effect{margin:0;font-size:var(--text-sm)}.addon-assign{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--color-gray-background);border-radius:10px;text-align:start}.addon-assign-title{margin:0;font-weight:700;font-size:var(--text-sm)}.addon-perm-title{font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary)}.addon-perms{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}.addon-perm{display:flex;align-items:center;gap:8px;font-size:var(--text-xs);cursor:pointer}.addon-perm input{accent-color:var(--color-primary);margin:0}.addon-confirm-card .closure-actions .btn-today,.addon-confirm-card .closure-actions .btn-outline{flex:1}.addons-row{max-width:1064px}.addons-row .sub-card{max-width:none;height:100%}.sub-card.addons-card{max-width:1064px}.addon-perm{flex-direction:column;align-items:flex-start;gap:2px}.addon-perm-line{display:flex;align-items:center;gap:8px}.addon-perm.fixed{cursor:default}.addon-perm-note{padding-inline-start:21px;font-size:11px;color:var(--color-text-secondary)}.addon-perm-group{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border-radius:8px;background:var(--color-background)}.addon-perm-group+.addon-perm-group{margin-top:2px}.addon-perm-group-title{font-size:var(--text-xs);font-weight:700}.pending-strip{margin:12px 24px 0;border:1px solid var(--color-red-border);background:var(--color-red-background);border-radius:12px;overflow:hidden;flex-shrink:0}.pending-strip-head{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:transparent;font-family:inherit;font-size:var(--text-sm);font-weight:700;color:var(--color-text-primary);cursor:pointer;text-align:start}.pending-fab{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--color-text-primary);color:var(--color-white);box-shadow:0 4px 10px -4px color-mix(in srgb,var(--color-shadow) 45%,transparent);flex-shrink:0}.pending-fab svg{filter:drop-shadow(0 0 6px rgba(255,255,255,.9))}.pending-fab-count{position:absolute;top:-6px;inset-inline-end:-8px;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 4px;border-radius:999px;background:var(--color-white);color:var(--color-primary);font-size:var(--text-xs);font-weight:800;box-shadow:2px 4px 3px color-mix(in srgb,var(--color-shadow) 10%,transparent)}.pending-caret{margin-inline-start:auto;color:var(--color-text-secondary)}.pending-list{display:flex;flex-direction:column;gap:10px;padding:0 14px 14px}.pending-row{display:flex;align-items:center;gap:16px;padding:12px 14px;background:var(--color-white);border-radius:10px;flex-wrap:wrap}.pending-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.pending-row-title{font-weight:700;font-size:var(--text-sm)}.pending-meta{font-size:var(--text-xs);color:var(--color-text-secondary)}.pending-client{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--color-primary);font-weight:600}.pending-timeleft{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:10px;background:var(--color-primary-opacity);color:var(--color-primary);font-weight:700;font-size:var(--text-xs);font-variant-numeric:tabular-nums;direction:ltr}.pending-actions{display:flex;align-items:center;gap:8px}.pending-tag{display:inline-block;margin-inline-start:6px;padding:1px 8px;border-radius:999px;border:1px solid var(--color-primary);color:var(--color-primary);background:var(--color-primary-opacity);font-size:10px;font-weight:700;white-space:nowrap;vertical-align:middle}.event-card.row .status-bar{align-self:stretch}.pending-strip.arrived{animation:pending-arrive .85s ease-in-out 3}@keyframes pending-arrive{0%,to{box-shadow:0 0 color-mix(in srgb,var(--color-primary) 45%,transparent);border-color:var(--color-primary)}50%{box-shadow:0 0 0 8px transparent;border-color:var(--color-red-border)}}.push-prompt{display:inline-flex;align-items:center;gap:2px}.push-prompt-cta{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--color-primary);border-radius:999px;background:var(--color-primary-opacity);color:var(--color-primary);font-family:inherit;font-size:var(--text-xs);font-weight:700;cursor:pointer}.push-prompt-cta:hover:not(:disabled){background:var(--color-white)}.push-prompt-dismiss{border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--text-base);line-height:1;cursor:pointer;padding:4px}.push-status{font-weight:600}.push-status.on{color:var(--color-green-text)}.pending-phone{display:flex;align-items:center;gap:10px;font-size:var(--text-sm);font-weight:600}.pending-call{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;border:1px solid var(--color-primary);color:var(--color-primary);text-decoration:none;font-size:var(--text-xs);font-weight:700}.pending-call:hover{background:var(--color-primary-opacity)}.pending-row.focused{outline:2px solid var(--color-primary);animation:notif-land 1.2s ease-in-out 2}.btn-today:disabled{background:var(--color-disabled);color:var(--color-text-secondary);cursor:default}.icon-btn:disabled{color:var(--color-gray);cursor:default}.min-one-error{color:var(--color-red-text);background:var(--color-red-background);border:1px solid var(--color-red-border);border-radius:8px;padding:3px 10px;font-size:var(--text-xs);font-weight:600;white-space:nowrap}.time-select{display:inline-flex;align-items:center;gap:4px;direction:ltr}.time-select select{padding:8px 6px;font-family:inherit;font-size:var(--text-sm);border:1px solid var(--color-gray);border-radius:8px;background:var(--color-white);color:var(--color-text-primary);font-variant-numeric:tabular-nums}.date-ltr{direction:ltr;unicode-bidi:isolate}button.deposit-mark{border:none;background:transparent;padding:0;font-family:inherit;cursor:pointer}button.deposit-mark:disabled{opacity:.6;cursor:default}.datepicker-year-btn{border:none;background:transparent;font-family:inherit;cursor:pointer;padding:4px 10px;border-radius:8px}.datepicker-year-btn:hover{background:var(--color-background)}.year-list{max-height:240px;overflow-y:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:4px}.year-option{border:none;background:var(--color-background);border-radius:8px;padding:7px 4px;font-family:inherit;font-size:var(--text-sm);cursor:pointer}.year-option:hover{background:var(--color-primary-opacity)}.year-option.selected{background:var(--color-primary);color:var(--color-white);font-weight:700}.calendar-notice.min-one-bar{color:var(--color-red-text);background:var(--color-red-background);border:1px solid var(--color-red-border)}.closure-banner{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;padding:10px 24px;background:var(--color-red-background);border-bottom:1px solid var(--color-red-border);color:var(--color-red-text);font-size:var(--text-sm);font-weight:600}.closure-banner-btn{padding-block:6px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:200;background:var(--color-text-primary);color:var(--color-white);padding:12px 22px;border-radius:12px;font-size:var(--text-sm);font-weight:600;box-shadow:0 8px 24px -8px color-mix(in srgb,var(--color-shadow) 45%,transparent)}.team-toggle{gap:8px}.team-list{display:flex;flex-direction:column;gap:10px}.sub-card.team-row{flex-direction:row;align-items:center;justify-content:space-between;gap:16px;max-width:640px}.sub-card.team-row.inactive{opacity:.55}.team-row-info{display:flex;flex-direction:column;gap:3px;min-width:0}.team-name{font-weight:700;display:flex;align-items:center;gap:8px}.team-badge{padding:1px 9px;border-radius:999px;background:var(--color-gray-background);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:600}.team-badge.owner{background:var(--color-primary-opacity);color:var(--color-primary)}.team-row-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.card.team-dialog{width:520px;max-width:94vw;max-height:90dvh;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.team-services{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}.team-service{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);cursor:pointer}.team-service input{accent-color:var(--color-primary);margin:0}.perf-price-list{display:flex;flex-direction:column;gap:8px}.perf-price-row{display:flex;align-items:center;gap:10px}.perf-price-name{flex:1;font-size:var(--text-sm);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-card .field .perf-price-row input:not([type=radio]):not([type=checkbox]){width:120px;flex:0 0 auto}.team-perms-head{display:flex;align-items:center;justify-content:space-between}.cal-selector{padding:8px 12px;font-family:inherit;font-size:var(--text-sm);font-weight:600;border:1px solid var(--color-gray);border-radius:999px;background:var(--color-white);color:var(--color-text-primary)}.emp-chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--color-text-secondary);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emp-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;display:inline-block}.field label.team-service{display:flex;align-items:center;gap:8px}.field .team-service input[type=checkbox]{width:16px;height:16px;flex:0 0 auto;margin:0}.addon-perm input[type=checkbox]{width:16px;height:16px;flex:0 0 auto}.team-services-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.team-services-actions{display:inline-flex;gap:12px}.team-perms-head{margin-bottom:0}.team-roles{display:flex;flex-direction:column;gap:6px;margin:2px 0 8px}.team-role{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);font-weight:600;cursor:pointer}.team-role input[type=radio]{width:16px;height:16px;accent-color:var(--color-primary);flex:0 0 auto;margin:0}.team-role-note{font-weight:400}.team-dialog .add-client-actions .btn-primary{width:auto}@media(max-width:720px){.home-header{flex-wrap:wrap;row-gap:10px}.header-start{flex:1 1 100%;min-width:0;gap:14px}.nav-tabs{flex:1;flex-wrap:wrap}.nav-tab{padding:6px 10px}.header-side{flex:1 1 100%;justify-content:flex-end}}.team-cap-link{align-self:flex-start;font-weight:600}.business-text{display:flex;flex-direction:column;line-height:1.15}.business-sub{font-size:var(--text-xs);color:var(--color-text-secondary)}.payment-return{align-items:center;justify-content:center}.payment-return-card{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;max-width:420px;padding:32px 24px}.payment-return-msg{margin:0;font-size:var(--text-base);font-weight:600}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-background);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased}#root{min-height:100dvh;display:flex;flex-direction:column}.screen{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px}.card{width:100%;max-width:420px;background:var(--color-white);border:1px solid var(--color-dark-border);border-radius:16px;padding:32px 24px;box-shadow:0 4px 16px -8px color-mix(in srgb,var(--color-shadow) 15%,transparent)}.brand{color:var(--color-primary);font-size:var(--text-sm);font-weight:700;margin:0 0 4px}.title{font-size:var(--text-2xl);font-weight:800;margin:0 0 8px}.lead{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0 0 24px}.field{margin-bottom:16px}.field label{display:block;font-size:var(--text-sm);font-weight:600;margin-bottom:6px}.field input{width:100%;padding:12px 14px;font-family:inherit;font-size:var(--text-base);color:var(--color-text-primary);background:var(--color-white);border:1px solid var(--color-gray);border-radius:10px;outline:none}.field input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-opacity)}.field input.invalid{border-color:var(--color-error)}.input-code{direction:ltr;text-align:center;letter-spacing:.4em;font-size:var(--text-xl);font-weight:600}.btn-primary{width:100%;padding:13px 16px;font-family:inherit;font-size:var(--text-base);font-weight:700;color:var(--color-white);background:var(--color-primary);border:none;border-radius:10px;cursor:pointer}.btn-primary:hover:not(:disabled){filter:brightness(.95)}.btn-primary:disabled{background:var(--color-disabled);color:var(--color-text-secondary);cursor:default}.btn-link{display:inline-block;margin-top:16px;padding:0;background:none;border:none;font-family:inherit;font-size:var(--text-sm);color:var(--color-text-secondary);text-decoration:underline;cursor:pointer}.error{display:block;margin:0 0 16px;padding:10px 14px;font-size:var(--text-sm);color:var(--color-red-text);background:var(--color-red-background);border:1px solid var(--color-red-border);border-radius:10px}.error a{color:inherit;font-weight:600}.field-error{display:block;margin-top:6px;font-size:var(--text-xs);color:var(--color-error)}.home-header{background:var(--color-white);border-bottom:1px solid var(--color-gray-background);padding:16px;display:flex;align-items:center;justify-content:space-between}.home-header .brand{margin:0;font-size:var(--text-lg)}.business-name{font-size:var(--text-xxxl);font-weight:800;margin:0 0 8px;line-height:1.2}.muted{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0}
