:root{--color-primary:#2563eb;--color-secondary:#1e3a8a;--color-background:#f8fafc;--color-surface:#fff;--color-text:#0f172a;--color-text-secondary:#475569;--color-text-inverse:#fff;--color-border:#e2e8f0;--color-error:#dc2626;--color-success:#16a34a;--color-info:#0ea5e9;--color-warning:#f59e0b;--gradient-brand:linear-gradient(135deg, #2563eb 0%, #1e3a8a 100%);--color-heat-1:#cde2fb;--color-heat-2:#9ec5f4;--color-heat-3:#5598e7;--color-heat-4:#2a78d6;--color-heat-5:#104281;--radius-input:12px;--radius-button:14px;--radius-card:16px;--radius-sheet:24px;--shadow-card:0 4px 12px #0f172a0f;--shadow-button:0 4px 10px #2563eb33;--shadow-modal:0 12px 40px #0f172a1f}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--color-background);color:var(--color-text);font-family:Inter,sans-serif}body{background:var(--color-background)}button{cursor:pointer;border:none;font-family:inherit}input{font-family:inherit}a{color:inherit;text-decoration:none}.ds-button{border-radius:var(--radius-button);justify-content:center;align-items:center;gap:8px;height:48px;padding:0 20px;font-size:16px;font-weight:600;transition:background-color .15s,opacity .15s,border-color .15s;display:inline-flex}.ds-button--full{width:100%}.ds-button--primary{background:var(--color-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-button)}.ds-button--primary:hover:not(:disabled){background:var(--color-secondary)}.ds-button--secondary{color:var(--color-primary);border:1px solid var(--color-border);background:0 0}.ds-button--secondary:hover:not(:disabled){border-color:var(--color-primary)}.ds-button--danger{color:var(--color-error);background:0 0;border:1px solid #dc26264d}.ds-button--danger:hover:not(:disabled){border-color:var(--color-error);background:#dc262614}.ds-button:disabled{opacity:.6;cursor:not-allowed}.ds-input-group{text-align:left;flex-direction:column;gap:8px;display:flex}.ds-input-label-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.ds-input-label{color:var(--color-text);font-size:14px;font-weight:500}.ds-input-wrapper{display:flex;position:relative}.ds-input{border:1px solid var(--color-border);border-radius:var(--radius-input);width:100%;height:48px;color:var(--color-text);background:var(--color-surface);padding:0 14px;font-size:15px;transition:border-color .15s,box-shadow .15s}.ds-input-wrapper--icon .ds-input{padding-left:44px}.ds-input-wrapper--trailing .ds-input{padding-right:44px}.ds-input-icon{color:var(--color-text-secondary);pointer-events:none;display:flex;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.ds-input-trailing{display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.ds-input::placeholder{color:var(--color-text-secondary)}.ds-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb26}.ds-input--error{border-color:var(--color-error)}.ds-input--error:focus{box-shadow:0 0 0 3px #dc262626}.ds-input-error{color:var(--color-error);font-size:13px}.ds-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:32px}.ds-confirm-overlay{z-index:100;background:#0f172a66;justify-content:center;align-items:center;padding:16px;animation:.15s ds-confirm-fade;display:flex;position:fixed;inset:0}.ds-confirm{background:var(--color-surface);border-radius:var(--radius-card);width:100%;max-width:400px;box-shadow:var(--shadow-modal);padding:24px;animation:.15s ds-confirm-scale-in}.ds-confirm__title{color:var(--color-text);font-size:18px;font-weight:700}.ds-confirm__description{color:var(--color-text-secondary);margin-top:8px;font-size:14px}.ds-confirm__actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}@keyframes ds-confirm-fade{0%{opacity:0}to{opacity:1}}@keyframes ds-confirm-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.ds-logo{align-items:center;gap:12px;display:flex}.ds-logo__mark{background:var(--gradient-brand);color:var(--color-text-inverse);box-shadow:var(--shadow-button);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.ds-logo__text{letter-spacing:.5px;color:var(--color-text);font-weight:700}.ds-logo--md .ds-logo__mark{border-radius:12px;width:40px;height:40px;font-size:18px}.ds-logo--md .ds-logo__text{font-size:22px}.ds-logo--sm .ds-logo__mark{border-radius:9px;width:32px;height:32px;font-size:14px}.ds-logo--sm .ds-logo__text{font-size:17px}.ds-avatar{color:var(--color-primary);background:#2563eb1a;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.ds-avatar--md{width:44px;height:44px;font-size:15px}.ds-avatar--sm{width:36px;height:36px;font-size:13px}.ds-avatar--lg{width:64px;height:64px;font-size:22px}.ds-avatar--image{object-fit:cover;background:var(--color-background)}.ds-badge{white-space:nowrap;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.ds-badge--success{color:var(--color-success);background:#16a34a1a}.ds-badge--neutral{background:var(--color-background);color:var(--color-text-secondary);border:1px solid var(--color-border)}.ds-badge--info{color:var(--color-info);background:#0ea5e91a}.ds-badge--error{color:var(--color-error);background:#dc26261a}.ds-badge--warning{color:var(--color-warning);background:#f59e0b1f}.ds-empty-state{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;display:flex}.ds-empty-state__icon{background:var(--color-background);width:48px;height:48px;color:var(--color-text-secondary);border-radius:999px;justify-content:center;align-items:center;display:flex}.ds-empty-state__title{color:var(--color-text);font-size:15px;font-weight:600}.ds-empty-state__description{color:var(--color-text-secondary);font-size:13px}.ds-info-field{flex-direction:column;gap:4px;display:flex}.ds-info-field__label{letter-spacing:.3px;text-transform:uppercase;color:var(--color-text-secondary);font-size:12px;font-weight:600}.ds-info-field__value{color:var(--color-text);font-size:14px;font-weight:500}.ds-drawer-overlay{z-index:100;background:#0f172a66;justify-content:flex-end;animation:.15s ds-drawer-fade;display:flex;position:fixed;inset:0}.ds-drawer{background:var(--color-surface);width:min(50%,640px);height:100%;box-shadow:var(--shadow-modal);flex-direction:column;animation:.2s ds-drawer-slide-in;display:flex}.ds-drawer__header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.ds-drawer__title{color:var(--color-text);font-size:16px;font-weight:700}.ds-drawer__close{width:36px;height:36px;color:var(--color-text-secondary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:flex}.ds-drawer__close:hover{background:var(--color-background);color:var(--color-text)}.ds-drawer__body{flex:1;min-height:0;padding:24px;overflow-y:auto}@keyframes ds-drawer-fade{0%{opacity:0}to{opacity:1}}@keyframes ds-drawer-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.ds-stat-tile{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);align-items:center;gap:14px;padding:20px;display:flex}.ds-stat-tile--lg{gap:18px;padding:28px}.ds-stat-tile__icon{width:44px;height:44px;color:var(--color-primary);background:#2563eb1a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ds-stat-tile--lg .ds-stat-tile__icon{border-radius:14px;width:56px;height:56px}.ds-stat-tile--lg .ds-stat-tile__icon svg{width:22px;height:22px}.ds-stat-tile__icon--success{color:var(--color-success);background:#16a34a1a}.ds-stat-tile__icon--warning{color:var(--color-warning);background:#f59e0b1f}.ds-stat-tile__icon--error{color:var(--color-error);background:#dc26261a}.ds-stat-tile__icon--info{color:var(--color-info);background:#0ea5e91a}.ds-stat-tile__icon--neutral{background:var(--color-background);color:var(--color-text-secondary)}.ds-stat-tile__body{min-width:0}.ds-stat-tile__value{color:var(--color-text);font-size:26px;font-weight:700;line-height:1.1}.ds-stat-tile--lg .ds-stat-tile__value{font-size:32px}.ds-stat-tile__label{color:var(--color-text-secondary);margin-top:4px;font-size:13px}.ds-stat-tile--lg .ds-stat-tile__label{margin-top:6px;font-size:14px}.ds-select-group{text-align:left;flex-direction:column;gap:8px;display:flex}.ds-select-label{color:var(--color-text);font-size:14px;font-weight:500}.ds-select-wrapper{display:flex;position:relative}.ds-select{border:1px solid var(--color-border);border-radius:var(--radius-input);width:100%;height:44px;color:var(--color-text);background:var(--color-surface);appearance:none;cursor:pointer;padding:0 36px 0 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.ds-select-wrapper--icon .ds-select{padding-left:40px}.ds-select-icon{color:var(--color-text-secondary);pointer-events:none;display:flex;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.ds-select-chevron{width:16px;height:16px;color:var(--color-text-secondary);pointer-events:none;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.ds-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb26}.ds-tabs{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-input);align-items:center;gap:4px;padding:4px;display:inline-flex}.ds-tabs__item{border-radius:calc(var(--radius-input) - 4px);color:var(--color-text-secondary);padding:8px 16px;font-size:14px;font-weight:600;transition:background-color .15s,color .15s}.ds-tabs__item:hover{color:var(--color-text)}.ds-tabs__item--active,.ds-tabs__item--active:hover{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-card)}.ds-textarea{border:1px solid var(--color-border);border-radius:var(--radius-input);width:100%;min-height:96px;color:var(--color-text);background:var(--color-surface);resize:vertical;padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}.ds-textarea::placeholder{color:var(--color-text-secondary)}.ds-textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb26}.ds-textarea--error{border-color:var(--color-error)}.system-users{flex-direction:column;gap:24px;display:flex}.system-users__header{justify-content:space-between;align-items:center;gap:16px;display:flex}.system-users h1{margin:0 0 8px;font-size:28px}.system-users__header p{color:#64748b;margin:0}.system-users__table{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow-x:auto}.system-users table{border-collapse:collapse;text-align:left;width:100%}.system-users th,.system-users td{border-bottom:1px solid #e2e8f0;padding:16px}.system-users th{color:#64748b;white-space:nowrap;background:#f8fafc;font-size:13px}.system-users td{font-size:14px}.system-users td small{color:#64748b;margin-top:4px;display:block}.system-users__actions,.system-users__pagination{align-items:center;gap:12px;display:flex}.system-users__pagination{flex-wrap:wrap;justify-content:flex-end}.system-users__pagination span{color:#64748b;margin-right:auto;font-size:14px}.system-users__status{color:#475569;background:#f1f5f9;border-radius:20px;padding:4px 10px;display:inline-block}.system-users__status.is-active{color:#166534;background:#dcfce7}.system-users__form{flex-direction:column;gap:20px;display:flex}.system-users__error{color:#b91c1c}.system-users__success{color:#166534}.system-users__empty{text-align:center;color:#64748b;padding:24px}@media (width<=640px){.system-users__header{flex-direction:column;align-items:stretch}}.suppliers-page{flex-direction:column;gap:24px;min-width:0;display:flex;overflow-y:auto}.suppliers-page h1{font-size:24px;font-weight:700}.suppliers-page h2{margin-bottom:16px;font-size:18px;font-weight:600}.suppliers-page header p,.suppliers-fields dt{color:var(--color-text-secondary);font-size:14px}.suppliers-page a{color:var(--color-primary)}.suppliers-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;display:grid}.suppliers-stats>*{padding:16px}.suppliers-content{flex-direction:column;gap:20px;min-width:0;padding:24px;display:flex}.suppliers-content>button{align-self:flex-start}.suppliers-filters{grid-template-columns:2fr 1.3fr 1fr .6fr;gap:16px;margin-bottom:16px;display:grid}.suppliers-table{overflow-x:auto}.suppliers-table table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.suppliers-table th{color:var(--color-text-secondary);background:var(--color-background);font-weight:600}.suppliers-table th,.suppliers-table td{border-bottom:1px solid var(--color-border);white-space:nowrap;padding:14px 12px}.suppliers-pagination{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;font-size:14px;display:flex}.suppliers-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.suppliers-fields dd{overflow-wrap:anywhere;margin:6px 0 0}.suppliers-page [role=alert]{color:var(--color-error)}.suppliers-page form>p{margin-bottom:16px}@media (width<=1100px){.suppliers-stats{grid-template-columns:repeat(3,1fr)}.suppliers-filters,.suppliers-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.suppliers-stats{grid-template-columns:repeat(2,1fr)}.suppliers-filters,.suppliers-fields{grid-template-columns:1fr}.suppliers-content{padding:16px}}.agenda-event-card{border-left:3px solid var(--color-text-secondary);background:var(--color-surface);cursor:pointer;border-radius:6px;flex-direction:column;gap:1px;min-height:40px;padding:4px 6px;text-decoration:none;transition:box-shadow .15s;display:flex;overflow:hidden;box-shadow:0 1px 2px #0f172a14}.agenda-event-card:hover{box-shadow:0 2px 6px #0f172a29}.agenda-event-card__time{color:var(--color-text);font-size:11px;font-weight:700}.agenda-event-card__licensee{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.agenda-event-card__service{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.agenda-event-card--success{border-left-color:var(--color-success);background:#16a34a14}.agenda-event-card--info{border-left-color:var(--color-info);background:#0ea5e914}.agenda-event-card--warning{border-left-color:var(--color-warning);background:#f59e0b1a}.agenda-event-card--error{border-left-color:var(--color-error);opacity:.7;background:#dc262614}.week-calendar{border:1px solid var(--color-border);border-radius:var(--radius-card);flex-direction:column;display:flex;overflow:hidden}.week-calendar__header{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;grid-template-columns:56px repeat(7,1fr);display:grid}.week-calendar__header-day{border-left:1px solid var(--color-border);flex-direction:column;align-items:center;gap:4px;padding:10px 4px;display:flex}.week-calendar__header-weekday{letter-spacing:.3px;text-transform:uppercase;color:var(--color-text-secondary);font-size:11px;font-weight:600}.week-calendar__header-date{width:28px;height:28px;color:var(--color-text);border-radius:999px;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex}.week-calendar__header-day--today .week-calendar__header-date{background:var(--color-primary);color:var(--color-text-inverse)}.week-calendar__rows{flex-direction:column;max-height:640px;display:flex;overflow-y:auto}.week-calendar__row{border-bottom:1px solid var(--color-border);grid-template-columns:56px repeat(7,1fr);display:grid}.week-calendar__row:last-child{border-bottom:none}.week-calendar__hour-label{color:var(--color-text-secondary);text-align:right;padding:6px 8px 0 0;font-size:11px}.week-calendar__cell{border-left:1px solid var(--color-border);flex-direction:column;gap:4px;padding:4px;display:flex}.agenda-page{flex-direction:column;gap:24px;display:flex}.agenda-page__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.agenda-page__title{color:var(--color-text);font-size:24px;font-weight:700}.agenda-page__subtitle{color:var(--color-text-secondary);margin-top:4px;font-size:14px}.agenda-page__card{flex-direction:column;gap:20px;padding:24px;display:flex}.agenda-page__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.agenda-page__nav{align-items:center;gap:8px;display:flex}.agenda-page__nav .ds-button{padding-left:14px;padding-right:14px}.agenda-page__range{color:var(--color-text);text-transform:capitalize;font-size:14px;font-weight:600}.agenda-page__status{text-align:center;color:var(--color-text-secondary);padding:32px 0;font-size:14px}.appointments-table__header,.appointments-table__row{grid-template-columns:110px minmax(0,1.1fr) minmax(0,1.1fr) minmax(0,1fr) 90px 100px 150px 76px;align-items:center;column-gap:16px;display:grid}.appointments-table__header{letter-spacing:.3px;text-transform:uppercase;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);padding:0 12px 10px;font-size:12px;font-weight:600}.appointments-table__body{flex-direction:column;display:flex}.appointments-table__row{border-bottom:1px solid var(--color-border);padding:12px;font-size:13px;transition:background-color .15s}.appointments-table__row:last-child{border-bottom:none}.appointments-table__row:hover{background:var(--color-background)}.appointments-table__row>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.appointments-table__client{color:var(--color-text);font-weight:600}.appointments-table__muted{color:var(--color-text-secondary)}.appointments-table__amount{color:var(--color-text);font-weight:600}.appointments-table__actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.appointments-table__action{width:36px;height:36px;color:var(--color-text-secondary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:flex}.appointments-table__action:hover{color:var(--color-primary);background:#2563eb14}.appointments-table__action--danger:hover{color:var(--color-error);background:#dc262614}.appointments-table__action:disabled{opacity:.4;cursor:not-allowed}.appointments-table__action:disabled:hover{color:var(--color-text-secondary);background:0 0}.appointments-page{flex-direction:column;flex:1;min-height:0;display:flex}.appointments-page__header{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.appointments-page__title{color:var(--color-text);font-size:24px;font-weight:700}.appointments-page__subtitle{color:var(--color-text-secondary);margin-top:4px;font-size:14px}.appointments-page__card{flex-direction:column;flex:1;min-height:0;padding:24px;display:flex}.appointments-page__filters{flex-direction:column;flex-shrink:0;gap:16px;display:flex}.appointments-page__filters-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.appointments-page__clear{color:var(--color-primary);align-self:flex-start;margin-top:12px;padding:0 4px;font-size:13px;font-weight:600}.appointments-page__clear:hover{text-decoration:underline}.appointments-page__list{border-top:1px solid var(--color-border);flex:1;min-height:0;margin-top:32px;padding-top:24px;overflow-y:auto}.appointments-page__status{text-align:center;color:var(--color-text-secondary);padding:32px 0;font-size:14px}.appointments-page__pagination{justify-content:flex-end;align-items:center;gap:20px;margin-top:24px;display:flex}.appointments-page__page-indicator{color:var(--color-text-secondary);font-size:14px;font-weight:500}.checkpoint-timeline{flex-direction:column;display:flex}.checkpoint-timeline__item{gap:14px;display:flex}.checkpoint-timeline__marker{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.checkpoint-timeline__dot{background:var(--color-border);border-radius:999px;flex-shrink:0;width:14px;height:14px}.checkpoint-timeline__dot--done{background:var(--color-success)}.checkpoint-timeline__dot--current{background:var(--color-info);box-shadow:0 0 0 4px #0ea5e92e}.checkpoint-timeline__dot--canceled{background:var(--color-error)}.checkpoint-timeline__line{background:var(--color-border);flex:1;width:2px;min-height:24px;margin:4px 0}.checkpoint-timeline__item:last-child .checkpoint-timeline__line{display:none}.checkpoint-timeline__content{padding-bottom:22px}.checkpoint-timeline__label{color:var(--color-text-secondary);font-size:14px;font-weight:500}.checkpoint-timeline__label--done{color:var(--color-text);font-weight:600}.checkpoint-timeline__label--canceled{color:var(--color-error);font-weight:600}.checkpoint-timeline__time{color:var(--color-text-secondary);margin-top:2px;font-size:13px}.checkpoint-timeline__note{color:var(--color-text-secondary);margin-top:4px;font-size:13px;font-style:italic}.checkpoint-timeline__empty{color:var(--color-text-secondary);font-size:14px}.rating-card__stars{gap:4px;display:flex}.rating-card__star,.rating-card__star--filled{width:20px;height:20px}.rating-card__star{color:var(--color-border)}.rating-card__star--filled{color:var(--color-warning)}.rating-card__comment{color:var(--color-text-secondary);margin-top:12px;font-size:14px;font-style:italic}.service-photos__columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.service-photos__group-title{color:var(--color-text);margin-bottom:10px;font-size:13px;font-weight:600}.service-photos__group-empty{color:var(--color-text-secondary);font-size:13px}.service-photos__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.service-photos__thumb{aspect-ratio:4/3;border-radius:var(--radius-input);background:var(--color-background);border:1px solid var(--color-border);display:block;overflow:hidden}.service-photos__thumb img{object-fit:cover;width:100%;height:100%}.appointment-details-page{flex-direction:column;gap:24px;display:flex}.appointment-details-page__status{text-align:center;color:var(--color-text-secondary);padding:32px 0;font-size:14px}.appointment-details-page__back{width:fit-content;color:var(--color-text-secondary);align-items:center;gap:8px;font-size:14px;font-weight:500;transition:color .15s;display:inline-flex}.appointment-details-page__back:hover{color:var(--color-text)}.appointment-details-page__back svg{width:16px;height:16px}.appointment-details-page__summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.appointment-details-page__summary-main{flex-wrap:wrap;gap:32px;display:flex}.appointment-details-page__summary-label{letter-spacing:.3px;text-transform:uppercase;color:var(--color-text-secondary);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.appointment-details-page__summary-label svg{width:14px;height:14px}.appointment-details-page__summary-value{color:var(--color-text);margin-top:4px;font-size:15px;font-weight:600}.appointment-details-page__section-title{color:var(--color-text);align-items:center;gap:8px;margin-bottom:12px;font-size:16px;font-weight:700;display:flex}.appointment-details-page__section-title svg{width:18px;height:18px;color:var(--color-text-secondary)}.appointment-details-page__timeline-card,.appointment-details-page__photos-card,.appointment-details-page__info-card{padding:24px}.appointment-details-page__two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.appointment-details-page__info-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px;display:grid}.appointment-details-page__subsection{border-top:1px solid var(--color-border);flex-direction:column;gap:8px;margin-top:20px;padding-top:20px;display:flex}.appointment-details-page__item-list{flex-direction:column;gap:6px;display:flex}.appointment-details-page__item-list li{color:var(--color-text);justify-content:space-between;align-items:center;font-size:14px;display:flex}.appointment-details-page__hint{color:var(--color-text-secondary);font-size:14px}.new-appointment-page{flex-direction:column;gap:20px;max-width:760px;display:flex}.new-appointment-page__back{width:fit-content;color:var(--color-text-secondary);align-items:center;gap:8px;font-size:14px;font-weight:500;transition:color .15s;display:inline-flex}.new-appointment-page__back:hover{color:var(--color-text)}.new-appointment-page__back svg{width:16px;height:16px}.new-appointment-page__header{margin-top:-4px}.new-appointment-page__title{color:var(--color-text);font-size:24px;font-weight:700}.new-appointment-page__subtitle{color:var(--color-text-secondary);margin-top:4px;font-size:14px}.new-appointment-page__status{text-align:center;color:var(--color-text-secondary);padding:32px 0;font-size:14px}.new-appointment-page__section-title{color:var(--color-text);margin-bottom:12px;font-size:15px;font-weight:700}.new-appointment-page__card{flex-direction:column;gap:16px;padding:20px;display:flex}.new-appointment-page__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.new-appointment-page__hint{color:var(--color-text-secondary);font-size:13px}.new-appointment-page__results{flex-direction:column;gap:4px;max-height:260px;display:flex;overflow-y:auto}.new-appointment-page__result{border-radius:var(--radius-input);text-align:left;align-items:center;gap:12px;width:100%;padding:10px;transition:background-color .15s;display:flex}.new-appointment-page__result:hover{background:var(--color-background)}.new-appointment-page__result-name{color:var(--color-text);font-size:14px;font-weight:600}.new-appointment-page__result-meta{color:var(--color-text-secondary);margin-top:2px;font-size:13px}.new-appointment-page__selected{align-items:center;gap:14px;display:flex}.new-appointment-page__selected-info{flex:1;min-width:0}.new-appointment-page__selected-name{color:var(--color-text);font-size:15px;font-weight:600}.new-appointment-page__selected-contact{flex-wrap:wrap;gap:12px;margin-top:4px;display:flex}.new-appointment-page__selected-contact span{color:var(--color-text-secondary);align-items:center;gap:6px;font-size:13px;display:flex}.new-appointment-page__selected-contact svg{width:14px;height:14px}.new-appointment-page__additionals{border-top:1px solid var(--color-border);flex-direction:column;gap:8px;padding-top:16px;display:flex}.new-appointment-page__additionals-list{flex-direction:column;gap:4px;display:flex}.new-appointment-page__additional{color:var(--color-text);align-items:center;gap:10px;padding:8px 4px;font-size:14px;display:flex}.new-appointment-page__additional-price{color:var(--color-text-secondary);margin-left:auto}.new-appointment-page__summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.new-appointment-page__summary-label{color:var(--color-text-secondary);font-size:13px;display:block}.new-appointment-page__summary-value{color:var(--color-text);font-size:22px;font-weight:700}.new-appointment-page__summary-actions{align-items:center;gap:12px;display:flex}.new-appointment-page__error{color:var(--color-error);font-size:13px}@media (width<=640px){.new-appointment-page__grid{grid-template-columns:1fr}}.login-card{width:100%;max-width:440px;box-shadow:var(--shadow-modal);padding:40px}.login-card__header{text-align:center;margin-bottom:32px}.login-card__title{color:var(--color-text);font-size:24px;font-weight:700}.login-card__subtitle{color:var(--color-text-secondary);margin-top:8px;font-size:14px;line-height:20px}.login-card__form{flex-direction:column;gap:20px;display:flex}.login-card__error{color:var(--color-error);text-align:center;margin:-4px 0 0;font-size:14px}.login-card__link{color:var(--color-primary);font-size:13px;font-weight:500}.login-card__link:hover{text-decoration:underline}.ds-input-toggle{color:var(--color-text-secondary);justify-content:center;align-items:center;padding:4px;display:flex}.ds-input-toggle:hover{color:var(--color-text)}.login-page{background:radial-gradient(circle at 15% 15%, #2563eb1a, transparent 45%), radial-gradient(circle at 85% 85%, #1e3a8a1a, transparent 45%), var(--color-background);justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.login-page__content{flex-direction:column;align-items:center;gap:32px;display:flex}.login-page__footer{color:var(--color-text-secondary);font-size:13px}.catalog-page{flex-direction:column;flex:1;min-height:0;display:flex}.catalog-page__header{flex-shrink:0;margin-bottom:24px}.catalog-page__title{color:var(--color-text);font-size:24px;font-weight:700}.catalog-page__subtitle{color:var(--color-text-secondary);margin-top:4px;font-size:14px}.catalog-page__card{flex-direction:column;flex:1;min-height:0;padding:24px;display:flex}.catalog-page__content{border-top:1px solid var(--color-border);margin-top:24px;padding-top:24px;overflow-y:auto}.catalog-tab{flex-direction:column;gap:20px;display:flex}.catalog-tab__header{justify-content:space-between;align-items:center;gap:16px;display:flex}.catalog-tab__count{color:var(--color-text-secondary);font-size:14px}.catalog-tab__status{text-align:center;color:var(--color-text-secondary);padding:32px 0;font-size:14px}.catalog-tab__table-wrapper{overflow-x:auto}.catalog-tab__table{border-collapse:collapse;width:100%}.catalog-tab__table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);padding:12px 16px;font-size:12px;font-weight:600}.catalog-tab__table td{border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:top;padding:14px 16px;font-size:14px}.catalog-tab__table tbody tr:last-child td{border-bottom:none}.catalog-tab__name{font-weight:600}.catalog-tab__description{color:var(--color-text-secondary);margin-top:2px;font-size:13px}.catalog-tab__actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.catalog-tab__icon-button{border-radius:var(--radius-input);width:32px;height:32px;color:var(--color-text-secondary);justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:inline-flex}.catalog-tab__icon-button:hover{background:var(--color-background);color:var(--color-text)}.catalog-tab__icon-button--danger:hover{color:var(--color-error);background:#dc262614}.catalog-tab__form{flex-direction:column;gap:20px;display:flex}.catalog-tab__form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.catalog-tab__checkbox{color:var(--color-text);align-items:center;gap:8px;font-size:14px;display:flex}.catalog-tab__form-error{color:var(--color-error);font-size:13px}.catalog-tab__form-actions{justify-content:flex-end;gap:12px;margin-top:8px;display:flex}.gamification-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.gamification-page .catalog-tab__table td{overflow-wrap:anywhere}.gamification-page .catalog-tab__table{min-width:420px}.gamification-page .ds-tabs{flex-wrap:wrap}.gamification-page .gamification-licensees{min-width:1060px}.gamification-licensees__revenue{white-space:nowrap}.gamification-page .gamification-reviews{table-layout:fixed;min-width:860px}.gamification-reviews th:first-child,.gamification-reviews th:nth-child(2){width:18%}.gamification-reviews th:nth-child(4){width:160px}.gamification-reviews th:last-child{width:180px}.gamification-reviews__date{white-space:nowrap}.gamification-reviews__comment{white-space:pre-wrap}.gamification-reviews__rating{white-space:nowrap;align-items:center;gap:3px;display:inline-flex}.gamification-reviews__rating svg{flex-shrink:0;width:16px;height:16px}.gamification-reviews__rating .catalog-tab__count{margin-left:4px}.gamification-reviews__star--filled{color:var(--color-warning)}.gamification-reviews__star--empty{color:var(--color-border)}@media (width<=640px){.gamification-page .catalog-page__card{padding:16px}.gamification-page .catalog-tab__header{flex-direction:column;align-items:flex-start}}.client-list-item{border-radius:var(--radius-input);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) 140px 150px 40px;align-items:center;column-gap:20px;padding:14px 12px;transition:background-color .15s;display:grid}.client-list-item:last-child{border-bottom:none}.client-list-item:hover{background:var(--color-background)}.client-list-item__main{align-items:center;gap:14px;min-width:0;display:flex}.client-list-item__info{min-width:0}.client-list-item__name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.client-list-item__email{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;overflow:hidden}.client-list-item__phone,.client-list-item__cpf{color:var(--color-text-secondary);font-size:13px}.client-list-item__action{width:36px;height:36px;color:var(--color-text-secondary);border-radius:999px;justify-content:center;justify-self:end;align-items:center;transition:background-color .15s,color .15s;display:flex}.client-list-item__action:hover{color:var(--color-primary);background:#2563eb14}.client-list{flex-direction:column;display:flex}.client-list__status{text-align:center;color:var(--color-text-secondary);padding:32px 0;font-size:14px}.clients-page{flex-direction:column;flex:1;min-height:0;display:flex}.clients-page__header{flex-shrink:0;margin-bottom:24px}.clients-page__title{color:var(--color-text);font-size:24px;font-weight:700}.clients-page__subtitle{color:var(--color-text-secondary);margin-top:4px;font-size:14px}.clients-page__card{flex-direction:column;flex:1;min-height:0;padding:24px;display:flex}.clients-page__filters{flex-shrink:0;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.clients-page__clear{color:var(--color-primary);align-self:flex-start;margin-top:12px;padding:0 4px;font-size:13px;font-weight:600}.clients-page__clear:hover{text-decoration:underline}.clients-page__list{border-top:1px solid var(--color-border);flex:1;min-height:0;margin-top:32px;padding-top:24px;overflow-y:auto}.clients-page__pagination{justify-content:flex-end;align-items:center;gap:20px;margin-top:24px;display:flex}.clients-page__page-indicator{color:var(--color-text-secondary);font-size:14px;font-weight:500}.appointment-history-item{border-bottom:1px solid var(--color-border);align-items:center;gap:16px;padding:18px 4px;display:flex}.appointment-history-item:last-child{border-bottom:none}.appointment-history-item__icon{width:40px;height:40px;color:var(--color-info);background:#0ea5e91a;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.appointment-history-item__content{flex:1;min-width:0}.appointment-history-item__top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.appointment-history-item__type{color:var(--color-text);font-size:15px;font-weight:600}.appointment-history-item__date{color:var(--color-text-secondary);align-items:center;gap:6px;margin-top:4px;font-size:13px;display:flex}.appointment-history-item__date svg{width:14px;height:14px}.appointment-history-item__right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.appointment-history-item__price{color:var(--color-text);font-size:14px;font-weight:600}.appointment-history-item__meta{flex-wrap:wrap;gap:16px;margin-top:12px;display:flex}.appointment-history-item__meta span{color:var(--color-text-secondary);align-items:center;gap:6px;font-size:13px;display:flex}.appointment-history-item__meta svg{flex-shrink:0;width:14px;height:14px}.appointment-history-item__action{width:36px;height:36px;color:var(--color-text-secondary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:flex}.appointment-history-item__action:hover{color:var(--color-primary);background:#2563eb14}.appointment-history-list{flex-direction:column;display:flex}.client-details-page{flex-direction:column;gap:24px;display:flex}.client-details-page__status{text-align:center;color:var(--color-text-secondary);padding:32px 0;font-size:14px}.client-details-page__back{width:fit-content;color:var(--color-text-secondary);align-items:center;gap:8px;font-size:14px;font-weight:500;transition:color .15s;display:inline-flex}.client-details-page__back:hover{color:var(--color-text)}.client-details-page__back svg{width:16px;height:16px}.client-details-page__profile{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.client-details-page__profile-side{flex-direction:column;align-items:flex-end;gap:12px;display:flex}.client-details-page__stats{gap:12px;display:flex}.client-details-page__profile-main{align-items:center;gap:20px;display:flex}.client-details-page__name{color:var(--color-text);font-size:20px;font-weight:700}.client-details-page__contact{flex-wrap:wrap;gap:16px;margin-top:8px;display:flex}.client-details-page__contact span{color:var(--color-text-secondary);align-items:center;gap:6px;font-size:14px;display:flex}.client-details-page__contact svg{width:15px;height:15px}.client-details-page__section-title{color:var(--color-text);align-items:center;gap:8px;margin-bottom:12px;font-size:16px;font-weight:700;display:flex}.client-details-page__section-title svg{width:18px;height:18px;color:var(--color-text-secondary)}.client-details-page__history-card{padding:8px 24px 20px}.client-details-page__pagination{border-top:1px solid var(--color-border);justify-content:flex-end;align-items:center;gap:20px;margin-top:16px;padding-top:16px;display:flex}.client-details-page__page-indicator{color:var(--color-text-secondary);font-size:14px;font-weight:500}.client-details-page__info-card{padding:24px}.client-details-page__info-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px;display:grid}.client-details-page__hint{color:var(--color-text-secondary);font-size:14px}.client-details-page__entity-list{flex-direction:column;gap:20px;display:flex}.client-details-page__entity{border-bottom:1px solid var(--color-border);padding-bottom:20px}.client-details-page__entity:last-child{border-bottom:none;padding-bottom:0}.client-details-page__entity-note{color:var(--color-text-secondary);margin-top:12px;font-size:13px;font-style:italic}.client-details-page__financial-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.client-details-page__financial-payment{border-top:1px solid var(--color-border);margin-top:20px;padding-top:20px}.peak-hours__grid{gap:6px;display:grid}.peak-hours__corner{height:24px}.peak-hours__hour-label{height:24px;color:var(--color-text-secondary);justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.peak-hours__day-label{color:var(--color-text-secondary);align-items:center;font-size:12px;font-weight:600;display:flex}.peak-hours__cell{border-radius:8px;height:34px}.peak-hours__cell--1{background:var(--color-heat-1)}.peak-hours__cell--2{background:var(--color-heat-2)}.peak-hours__cell--3{background:var(--color-heat-3)}.peak-hours__cell--4{background:var(--color-heat-4)}.peak-hours__cell--5{background:var(--color-heat-5)}.peak-hours__scale{color:var(--color-text-secondary);align-items:center;gap:10px;margin-top:20px;font-size:12px;display:flex}.peak-hours__scale-gradient{background:linear-gradient(90deg, var(--color-heat-1), var(--color-heat-5));border-radius:999px;flex:1;height:6px}.peak-hours__scroll{overflow-x:auto}.peak-hours__summary{color:var(--color-text-secondary);margin:12px 0;font-size:12px;line-height:1.5}.peak-hours__cell{color:var(--color-text);justify-content:center;align-items:center;font-size:11px;display:flex}.peak-hours__cell--0{background:var(--color-background);color:var(--color-text-secondary)}.peak-hours__cell--4,.peak-hours__cell--5{color:#fff}.peak-hours__cell:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.region-demand-chart{flex-direction:column;gap:20px;display:flex}.region-demand-chart__row{grid-template-columns:150px 1fr 40px;align-items:center;gap:14px;display:grid}.region-demand-chart__label{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.region-demand-chart__track{background:var(--color-background);border-radius:999px;height:14px}.region-demand-chart__fill{background:var(--color-primary);border-radius:0 999px 999px 0;min-width:4px;height:100%}.region-demand-chart__value{color:var(--color-text);text-align:right;font-size:13px;font-weight:600}.dashboard-page{flex-direction:column;gap:32px;display:flex}.dashboard-page__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-page__title{color:var(--color-text);font-size:24px;font-weight:700}.dashboard-page__subtitle{color:var(--color-text-secondary);margin-top:4px;font-size:14px}.dashboard-page__actions{align-items:center;gap:12px;display:flex}.dashboard-page__updated{color:var(--color-text-secondary);font-size:13px}.dashboard-page__status{text-align:center;color:var(--color-text-secondary);padding:32px 0;font-size:14px}.dashboard-page__section-title{color:var(--color-text);align-items:center;gap:8px;margin-bottom:14px;font-size:16px;font-weight:700;display:flex}.dashboard-page__section-title svg{width:18px;height:18px;color:var(--color-text-secondary)}.dashboard-page__kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.dashboard-page__quality{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.dashboard-page__chart-card{flex-direction:column;flex:1;justify-content:center;min-height:380px;padding:32px;display:flex}.dashboard-page__grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:24px;display:grid}.dashboard-page__grid>.dashboard-page__section{flex-direction:column;display:flex}@media (width<=960px){.dashboard-page__grid{grid-template-columns:1fr}}.dashboard-page__filters{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.dashboard-page__filter-error{color:var(--color-error);width:100%}.dashboard-page__metric-note{color:var(--color-text-secondary);margin-bottom:16px;font-size:13px}.dashboard-page__actions{flex-wrap:wrap}.licensee-list-item{border-radius:var(--radius-input);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1.3fr) 130px 150px 120px 100px 150px 40px;align-items:center;column-gap:16px;padding:14px 12px;transition:background-color .15s;display:grid}.licensee-list-item:last-child{border-bottom:none}.licensee-list-item:hover{background:var(--color-background)}.licensee-list-item__main{align-items:center;gap:14px;min-width:0;display:flex}.licensee-list-item__info{min-width:0}.licensee-list-item__name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.licensee-list-item__email{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;overflow:hidden}.licensee-list-item__phone,.licensee-list-item__city,.licensee-list-item__person-type{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.licensee-list-item__presence{color:var(--color-text-secondary);align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.licensee-list-item__presence-dot{background:var(--color-text-secondary);border-radius:999px;flex-shrink:0;width:8px;height:8px}.licensee-list-item__presence--online{color:var(--color-success)}.licensee-list-item__presence--online .licensee-list-item__presence-dot{background:var(--color-success)}.licensee-list-item__status{display:flex}.licensee-list-item__action{width:36px;height:36px;color:var(--color-text-secondary);border-radius:999px;justify-content:center;justify-self:end;align-items:center;transition:background-color .15s,color .15s;display:flex}.licensee-list-item__action:hover{color:var(--color-primary);background:#2563eb14}.licensee-list{flex-direction:column;display:flex}.licensee-list__header{letter-spacing:.3px;text-transform:uppercase;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1.3fr) 130px 150px 120px 100px 150px 40px;align-items:center;column-gap:16px;padding:0 12px 10px;font-size:12px;font-weight:600;display:grid}.licensee-list__body{flex-direction:column;display:flex}.licensee-list__status{text-align:center;color:var(--color-text-secondary);padding:32px 0;font-size:14px}.licensees-page{flex-direction:column;flex:1;min-height:0;display:flex}.licensees-page__header{flex-shrink:0;margin-bottom:24px}.licensees-page__title{color:var(--color-text);font-size:24px;font-weight:700}.licensees-page__subtitle{color:var(--color-text-secondary);margin-top:4px;font-size:14px}.licensees-page__card{flex-direction:column;flex:1;min-height:0;padding:24px;display:flex}.licensees-page__search-row{flex-shrink:0;gap:16px;display:flex}.licensees-page__search-row>*{flex:1;min-width:0}.licensees-page__filters{flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}@media (width<=1080px){.licensees-page__filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.licensees-page__search-row{flex-direction:column}.licensees-page__filters{grid-template-columns:1fr}}.licensees-page__clear{color:var(--color-primary);align-self:flex-start;margin-top:12px;padding:0 4px;font-size:13px;font-weight:600}.licensees-page__clear:hover{text-decoration:underline}.licensees-page__list{border-top:1px solid var(--color-border);flex:1;min-height:0;margin-top:24px;padding-top:20px;overflow-y:auto}.licensees-page__pagination{justify-content:flex-end;align-items:center;gap:20px;margin-top:24px;display:flex}.licensees-page__page-indicator{color:var(--color-text-secondary);font-size:14px;font-weight:500}.document-card{border-radius:var(--radius-input);text-align:left;align-items:center;gap:14px;width:100%;padding:12px;transition:background-color .15s;display:flex}.document-card:not(:disabled):hover{background:var(--color-background)}.document-card:disabled{cursor:not-allowed;opacity:.6}.document-card__icon{background:var(--color-background);width:40px;height:40px;color:var(--color-text-secondary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.document-card__info{flex:1;min-width:0}.document-card__name{color:var(--color-text);font-size:14px;font-weight:600}.document-card__date{color:var(--color-text-secondary);margin-top:2px;font-size:13px}.document-card__reason{color:var(--color-error);margin-top:2px;font-size:13px}.document-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.document-preview{flex-direction:column;gap:20px;display:flex}.document-preview__meta{align-items:center;gap:12px;display:flex}.document-preview__date{color:var(--color-text-secondary);font-size:13px}.document-preview__placeholder{border:1px dashed var(--color-border);border-radius:var(--radius-card);background:var(--color-background);min-height:360px;color:var(--color-text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.document-preview__placeholder svg{width:40px;height:40px;margin-bottom:4px}.document-preview__placeholder-title{color:var(--color-text);font-size:14px;font-weight:600}.document-preview__placeholder-note{font-size:13px}.document-preview__actions{gap:12px;display:flex}.document-preview__actions .ds-button{flex:1}.document-preview__reason{color:var(--color-error);font-size:13px}.document-preview__reject-form,.gamification-card{flex-direction:column;gap:16px;display:flex}.gamification-card__summary{justify-content:space-between;align-items:center;display:flex}.gamification-card__level{color:var(--color-text);align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.gamification-card__level svg{width:18px;height:18px;color:var(--color-warning)}.gamification-card__points{color:var(--color-text-secondary);font-size:14px;font-weight:600}.gamification-card__progress{flex-direction:column;gap:6px;display:flex}.gamification-card__progress-track{background:var(--color-background);border-radius:999px;height:8px;overflow:hidden}.gamification-card__progress-fill{background:var(--color-primary);border-radius:999px;height:100%;transition:width .2s}.gamification-card__progress-label{color:var(--color-text-secondary);font-size:13px}.gamification-card__history{border-top:1px solid var(--color-border);flex-direction:column;padding-top:12px;display:flex}.gamification-card__history-item{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.gamification-card__history-item:last-child{border-bottom:none}.gamification-card__history-description{color:var(--color-text);font-size:13px}.gamification-card__history-date{color:var(--color-text-secondary);margin-top:2px;font-size:12px}.gamification-card__history-points{flex-shrink:0;font-size:14px;font-weight:700}.gamification-card__history-points--positive{color:var(--color-success)}.gamification-card__history-points--negative{color:var(--color-error)}.gamification-card__pagination{justify-content:flex-end;align-items:center;gap:20px;margin-top:4px;display:flex}.gamification-card__page-indicator{color:var(--color-text-secondary);font-size:14px;font-weight:500}.licensee-status-actions{gap:10px;display:flex}.ride-history-item{border-bottom:1px solid var(--color-border);gap:16px;padding:18px 4px;display:flex}.ride-history-item:last-child{border-bottom:none}.ride-history-item__icon{width:40px;height:40px;color:var(--color-info);background:#0ea5e91a;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ride-history-item__content{flex:1;min-width:0}.ride-history-item__top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ride-history-item__type{color:var(--color-text);font-size:15px;font-weight:600}.ride-history-item__date{color:var(--color-text-secondary);align-items:center;gap:6px;margin-top:4px;font-size:13px;display:flex}.ride-history-item__date svg{width:14px;height:14px}.ride-history-item__right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.ride-history-item__price{color:var(--color-text);font-size:14px;font-weight:600}.ride-history-item__meta{flex-wrap:wrap;gap:16px;margin-top:12px;display:flex}.ride-history-item__meta span{color:var(--color-text-secondary);align-items:center;gap:6px;font-size:13px;display:flex}.ride-history-item__meta svg{flex-shrink:0;width:14px;height:14px}.ride-history-list,.weekly-schedule{flex-direction:column;display:flex}.weekly-schedule__day{border-bottom:1px solid var(--color-border);grid-template-columns:110px 1fr;align-items:center;gap:12px;padding:10px 0;font-size:13px;display:grid}.weekly-schedule__day:last-child{border-bottom:none}.weekly-schedule__day-label{color:var(--color-text);font-weight:600}.weekly-schedule__slots{color:var(--color-text-secondary);flex-wrap:wrap;gap:8px;display:flex}.weekly-schedule__break{font-style:italic}.weekly-schedule__off{color:var(--color-text-secondary)}.weekly-schedule__empty{color:var(--color-text-secondary);font-size:13px}.licensee-details-page{flex-direction:column;gap:24px;display:flex}.licensee-details-page__status{text-align:center;color:var(--color-text-secondary);padding:32px 0;font-size:14px}.licensee-details-page__back{width:fit-content;color:var(--color-text-secondary);align-items:center;gap:8px;font-size:14px;font-weight:500;transition:color .15s;display:inline-flex}.licensee-details-page__back:hover{color:var(--color-text)}.licensee-details-page__back svg{width:16px;height:16px}.licensee-details-page__profile{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.licensee-details-page__profile-actions{flex-direction:column;align-items:flex-end;gap:12px;display:flex}.licensee-details-page__profile-main{align-items:center;gap:20px;display:flex}.licensee-details-page__name{color:var(--color-text);font-size:20px;font-weight:700}.licensee-details-page__person-type{color:var(--color-text-secondary);margin-top:2px;font-size:13px}.licensee-details-page__contact{flex-wrap:wrap;gap:16px;margin-top:8px;display:flex}.licensee-details-page__profile-main .ds-stat-tile{margin-top:16px}.licensee-details-page__contact span{color:var(--color-text-secondary);align-items:center;gap:6px;font-size:14px;display:flex}.licensee-details-page__contact svg{width:15px;height:15px}.licensee-details-page__section-title{color:var(--color-text);margin-bottom:12px;font-size:16px;font-weight:700}.licensee-details-page__info-card{padding:24px}.licensee-details-page__info-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.licensee-details-page__info-grid--secondary{border-top:1px solid var(--color-border);margin-top:20px;padding-top:20px}.licensee-details-page__vehicles{flex-direction:column;gap:4px;display:flex}.licensee-details-page__specialties{border-top:1px solid var(--color-border);flex-direction:column;gap:8px;margin-top:20px;padding-top:20px;display:flex}.licensee-details-page__specialty-tags{flex-wrap:wrap;gap:8px;display:flex}.licensee-details-page__schedule{border-top:1px solid var(--color-border);flex-direction:column;gap:8px;margin-top:20px;padding-top:20px;display:flex}.licensee-details-page__history-card{padding:8px 24px 20px}.licensee-details-page__pagination{border-top:1px solid var(--color-border);justify-content:flex-end;align-items:center;gap:20px;margin-top:16px;padding-top:16px;display:flex}.licensee-details-page__page-indicator{color:var(--color-text-secondary);font-size:14px;font-weight:500}.payments-table-scroll{overflow-x:auto}.payments-grid{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.payments-grid th,.payments-grid td{border-bottom:1px solid var(--color-border);white-space:nowrap;padding:14px 12px}.payments-grid th{color:var(--color-text-secondary);background:var(--color-background);font-weight:600}.payments-page{flex-direction:column;gap:24px;min-width:0;display:flex;overflow-y:auto}.payments-page__title{color:var(--color-text);font-size:24px;font-weight:700}.payments-page__subtitle{color:var(--color-text-secondary);margin-top:4px;font-size:14px}.payments-page__summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.payments-page__summary>*{padding:16px}.payments-page__card{flex-direction:column;gap:20px;min-width:0;padding:24px;display:flex}.payments-page__card>button{align-self:flex-start}.payments-page__filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.payments-page__note{color:var(--color-text-secondary);font-size:13px;line-height:1.6}.payments-page__note summary{cursor:pointer}.payments-page__pagination{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;display:flex}.payments-page [role=alert]{color:var(--color-error)}.payment-details{gap:18px;margin:24px 0;display:grid}.payment-details dt{color:var(--color-text-secondary);font-size:13px}.payment-details dd{overflow-wrap:anywhere;margin:4px 0 0}@media (width<=1000px){.payments-page__filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.payments-page__filters{grid-template-columns:1fr}.payments-page__card{padding:16px}}.products-tab__summary{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.products-tab__filters{grid-template-columns:2fr 1fr 1fr;align-items:center;gap:12px;display:grid}.products-tab__clear{color:var(--color-primary);grid-column:1/-1;justify-self:start;font-size:13px;font-weight:600}.products-tab__thumb{border-radius:var(--radius-input);background:var(--color-background);width:44px;height:44px;color:var(--color-text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.products-tab__thumb img{object-fit:cover;width:100%;height:100%}.products-tab__thumb--lg{width:72px;height:72px}.products-tab__image-field{align-items:center;gap:16px;display:flex}.products-tab__image-field-input{flex-direction:column;gap:4px;display:flex}.products-tab__pagination{justify-content:center;align-items:center;gap:16px;display:flex}@media (width<=720px){.products-tab__filters{grid-template-columns:1fr}}.profile-password-dialog{border-radius:var(--radius-card);background:var(--color-surface);width:min(480px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--color-text);box-shadow:var(--shadow-modal);border:0;margin:auto;padding:24px;overflow-y:auto}.profile-password-dialog::backdrop{background:#0f172a66}.profile-password-form{flex-direction:column;gap:20px;display:flex}.profile-password-form h2{margin:0;font-size:20px}.profile-password-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.profile-page{flex-direction:column;gap:24px;max-width:880px;display:flex}.profile-page__title{color:var(--color-text);margin:0 0 8px;font-size:24px;font-weight:700}.profile-page header p,.profile-page__hint{color:#64748b;margin:0}.profile-page__card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:24px;padding:32px;display:flex}.profile-page__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.profile-page input[readonly]{color:#64748b;background:#f8fafc}.profile-page__hint{font-size:14px}.profile-page__error{color:#b91c1c;margin:0}.profile-page__success{color:#166534;margin:0}.profile-page__actions{justify-content:flex-end;display:flex}@media (width<=640px){.profile-page__card{padding:20px}.profile-page__fields{grid-template-columns:1fr}}.app-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:flex-end;align-items:center;height:64px;padding:0 32px;display:flex}.app-header__user{border-radius:999px;align-items:center;transition:box-shadow .15s;display:flex}.app-header__user:hover{box-shadow:0 0 0 3px #2563eb26}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;width:260px;height:100dvh;padding:24px 16px;display:flex;position:sticky;top:0}.sidebar__brand{border-bottom:1px solid var(--color-border);margin-bottom:8px;padding:0 8px 24px}.sidebar__nav{flex-direction:column;gap:4px;display:flex}.sidebar__nav-item{border-radius:var(--radius-input);color:var(--color-text-secondary);align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;transition:background-color .15s,color .15s;display:flex}.sidebar__nav-item:hover{background:var(--color-background);color:var(--color-text)}.sidebar__nav-item--active,.sidebar__nav-item--active:hover{color:var(--color-primary);background:#2563eb14}.sidebar__footer{border-top:1px solid var(--color-border);margin-top:auto;padding-top:16px}.sidebar__logout{border-radius:var(--radius-input);width:100%;color:var(--color-text-secondary);align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;transition:background-color .15s,color .15s;display:flex}.sidebar__logout:hover{color:var(--color-error);background:#dc262614}.app-layout{background:var(--color-background);height:100dvh;display:flex}.app-layout__main{flex-direction:column;flex:1;min-width:0;display:flex}.app-layout__content{flex-direction:column;flex:1;min-height:0;padding:40px;display:flex;overflow-y:auto}
