@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8fafc;color:#101828}.crm-layout{display:flex;min-height:100vh;background:#f8fafc}.crm-layout__main{flex:1;display:flex;flex-direction:column;min-width:0}.crm-layout__content{flex:1;padding:1.5rem 1.75rem 2rem;overflow-y:auto}.crm-sidebar{width:248px;min-width:248px;background:#1e293b;color:#f2f4f7;display:flex;flex-direction:column;height:100vh;position:sticky;top:0}.crm-sidebar__brand{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.125rem;border-bottom:1px solid rgba(255,255,255,.06)}.crm-sidebar__logo{width:36px;height:36px;background:#2e90fa;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9375rem;color:#fff;flex-shrink:0}.crm-sidebar__brand-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.crm-sidebar__brand-name{font-weight:600;font-size:.875rem;color:#fff}.crm-sidebar__brand-sub{font-size:.75rem;color:#98a2b3;font-weight:400}.crm-sidebar__nav{flex:1;overflow-y:auto;padding:1rem .75rem}.crm-sidebar__section{margin-bottom:1.125rem}.crm-sidebar__section-title{display:block;font-size:.6875rem;font-weight:600;letter-spacing:.08em;color:#667085;padding:0 .75rem;margin-bottom:.375rem}.crm-sidebar__list{list-style:none}.crm-sidebar__link{display:flex;align-items:center;gap:.625rem;padding:.5625rem .75rem;border-radius:8px;color:#d0d5dd;text-decoration:none;font-size:.875rem;font-weight:500;transition:background .15s,color .15s}.crm-sidebar__link:hover{background:#ffffff0f;color:#fff}.crm-sidebar__link--active{background:#2e90fa;color:#fff}.crm-sidebar__user{display:flex;align-items:center;gap:.75rem;padding:1rem 1.125rem;border-top:1px solid rgba(255,255,255,.06);margin-top:auto}.crm-sidebar__avatar{width:36px;height:36px;border-radius:50%;background:#334155;color:#7dd3fc;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.crm-sidebar__user-info{display:flex;flex-direction:column;min-width:0}.crm-sidebar__user-name{font-size:.8125rem;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-sidebar__user-role{font-size:.6875rem;color:#98a2b3}.crm-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.75rem;background:#fff;border-bottom:1px solid #EAECF0;position:sticky;top:0;z-index:10}.crm-header__search{flex:1;max-width:560px;position:relative}.crm-header__search-icon{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);color:#98a2b3;pointer-events:none}.crm-header__search-input{width:100%;padding:.625rem 1rem .625rem 2.5rem;border:1px solid #EAECF0;border-radius:10px;font-size:.875rem;color:#101828;background:#f8fafc;outline:none;transition:border-color .15s,box-shadow .15s}.crm-header__search-input:focus{border-color:#2e90fa;box-shadow:0 0 0 3px #2e90fa1f;background:#fff}.crm-header__search-input::placeholder{color:#98a2b3}.crm-header__actions{display:flex;align-items:center;gap:.625rem}.crm-header__branch{position:relative}.crm-header__branch-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .875rem;border:1px solid #B2DDFF;border-radius:10px;font-size:.875rem;font-weight:500;font-family:inherit;color:#175cd3;background:#eff8ff;cursor:pointer;outline:none;min-width:150px;transition:background .15s}.crm-header__branch-btn:hover{background:#e0f2fe}.crm-header__branch-chevron{margin-left:auto;color:#1570ef}.branch-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:220px;background:#fff;border:1px solid #EAECF0;border-radius:12px;box-shadow:0 12px 24px #1018281f;z-index:30;overflow:hidden}.branch-dropdown__header{padding:.75rem 1rem .5rem;font-size:.875rem;font-weight:700;color:#101828;border-bottom:1px solid #F2F4F7}.branch-dropdown__list{list-style:none;padding:.375rem}.branch-dropdown__item{display:block;width:100%;text-align:left;padding:.5625rem .75rem;border:none;border-radius:8px;background:none;font-size:.875rem;font-family:inherit;color:#344054;cursor:pointer;transition:background .15s}.branch-dropdown__item:hover{background:#f8fafc}.branch-dropdown__item--selected{background:#eff8ff;color:#175cd3;font-weight:500}.crm-header__icon-btn{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #EAECF0;border-radius:10px;background:#fff;color:#475467;cursor:pointer;transition:background .15s}.crm-header__icon-btn:hover{background:#f8fafc}.crm-header__notif-dot{position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:#f04438;border:1.5px solid #fff}.crm-header__user{position:relative}.crm-header__user-btn{width:38px;height:38px;border-radius:50%;border:none;background:#2e90fa;color:#fff;font-size:.8125rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.crm-header__user-btn:hover{background:#1570ef}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:240px;background:#fff;border:1px solid #EAECF0;border-radius:12px;box-shadow:0 12px 24px #1018281f;padding:.375rem;z-index:50}.user-dropdown__info{display:flex;flex-direction:column;gap:.125rem;padding:.625rem .75rem}.user-dropdown__name{font-size:.875rem;font-weight:700;color:#101828}.user-dropdown__email{font-size:.75rem;color:#667085;word-break:break-all}.user-dropdown__role{font-size:.6875rem;color:#98a2b3}.user-dropdown__divider{height:1px;background:#eaecf0;margin:.25rem 0}.user-dropdown__item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.55rem .75rem;border:none;border-radius:8px;background:transparent;font-size:.8125rem;font-weight:600;cursor:pointer;text-align:left;transition:background .15s}.user-dropdown__item--danger{color:#d92d20}.user-dropdown__item--danger:hover{background:#fef3f2}.dashboard-page__header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.dashboard-page__greeting{font-size:1.5rem;font-weight:700;color:#101828;margin-bottom:.25rem;letter-spacing:-.02em}.dashboard-page__subtitle{font-size:.875rem;color:#667085}.dashboard-page__export-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid #EAECF0;border-radius:10px;background:#fff;color:#344054;font-size:.875rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s}.dashboard-page__export-btn:hover{background:#f8fafc}.dashboard-page__kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.25rem}.dashboard-page__charts-row{display:grid;gap:1rem;margin-bottom:1.25rem}.dashboard-page__charts-row--trend{grid-template-columns:2fr 1fr}.dashboard-page__charts-row--activity{grid-template-columns:1fr 2fr}.stat-card{background:#fff;border:1px solid #EAECF0;border-radius:14px;padding:1.125rem 1.25rem;cursor:pointer;transition:box-shadow .15s;box-shadow:0 1px 2px #1018280a}.stat-card:hover{box-shadow:0 4px 12px #10182814}.stat-card__top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:.875rem}.stat-card__icon-wrap{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.stat-card__icon-wrap--blue{background:#eff8ff;color:#2e90fa}.stat-card__icon-wrap--gray{background:#f2f4f7;color:#667085}.stat-card__icon-wrap--orange{background:#fffaeb;color:#f79009}.stat-card__icon-wrap--green{background:#ecfdf3;color:#12b76a}.stat-card__arrow{color:#d0d5dd}.stat-card__value{font-size:1.75rem;font-weight:700;color:#101828;line-height:1.15;margin-bottom:.25rem;letter-spacing:-.03em}.stat-card__label{font-size:.875rem;color:#667085;margin-bottom:.5rem;font-weight:500}.stat-card__sub{font-size:.8125rem;font-weight:500}.stat-card__sub--success{color:#12b76a}.stat-card__sub--warning{color:#f79009}.stat-card__sub--danger{color:#f04438}.stat-card__sub--neutral{color:#667085}.chart-card{background:#fff;border:1px solid #EAECF0;border-radius:16px;padding:1.25rem 1.375rem;box-shadow:0 1px 2px #1018280a}.chart-card__header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:.75rem}.chart-card__title{font-size:1rem;font-weight:600;color:#101828;margin-bottom:.125rem}.chart-card__subtitle{font-size:.8125rem;color:#667085}.chart-card__badge{font-size:.75rem;font-weight:600;padding:.25rem .625rem;border-radius:999px;white-space:nowrap}.chart-card__badge--info{background:#eff8ff;color:#175cd3}.chart-card__badge--success{background:#ecfdf3;color:#027a48}.chart-card__link{background:none;border:none;color:#2e90fa;font-size:.875rem;font-weight:500;cursor:pointer;padding:0}.chart-card__link:hover{color:#1570ef}.chart-card__body--donut{display:flex;flex-direction:column;align-items:center}.donut-legend{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1rem;width:100%;margin-top:.75rem;padding:0 .25rem}.donut-legend__item{display:flex;align-items:center;gap:.5rem}.donut-legend__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.donut-legend__label{font-size:.75rem;color:#475467;line-height:1.3}.activity-list{display:flex;flex-direction:column}.activity-item{display:flex;align-items:center;gap:.875rem;padding:.875rem 0;border-bottom:1px solid #F2F4F7}.activity-item:last-child{border-bottom:none;padding-bottom:.25rem}.activity-item:first-child{padding-top:.25rem}.activity-item__avatar{width:40px;height:40px;border-radius:50%;background:#eff8ff;color:#1570ef;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.activity-item__content{flex:1;min-width:0}.activity-item__title{font-size:.875rem;color:#475467;margin-bottom:.125rem;line-height:1.4}.activity-item__title strong{color:#101828;font-weight:600}.activity-item__detail{font-size:.8125rem;color:#667085;line-height:1.35}.activity-item__meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;flex-shrink:0}.activity-item__branch{font-size:.75rem;font-weight:500;color:#475467;background:#f2f4f7;border:1px solid #EAECF0;padding:.125rem .5rem;border-radius:6px}.activity-item__time{font-size:.75rem;color:#98a2b3}.reminders-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.reminders-page__title{font-size:1.5rem;font-weight:700;color:#101828;margin-bottom:.25rem;letter-spacing:-.02em}.reminders-page__subtitle{font-size:.875rem;color:#667085}.reminders-page__new-btn{display:flex;align-items:center;gap:.375rem;padding:.5625rem 1rem;background:#2e90fa;color:#fff;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}.reminders-page__new-btn:hover{background:#1570ef}.reminders-page__summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.25rem}.summary-card{display:flex;align-items:center;gap:.875rem;background:#fff;border:1px solid #EAECF0;border-radius:14px;padding:1rem 1.25rem;box-shadow:0 1px 2px #1018280a}.summary-card__icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.summary-card__icon--danger{background:#fef3f2;color:#f04438}.summary-card__icon--warning{background:#fffaeb;color:#f79009}.summary-card__icon--info{background:#eff8ff;color:#2e90fa}.summary-card__icon--purple{background:#f4f3ff;color:#7a5af8}.summary-card__icon--neutral{background:#f2f4f7;color:#667085}.summary-card__info{display:flex;flex-direction:column}.summary-card__label{font-size:.8125rem;color:#667085;font-weight:500}.summary-card__value{font-size:1.375rem;font-weight:700;color:#101828;line-height:1.2}.reminders-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1rem;background:#fff;border:1px solid #EAECF0;border-radius:14px;box-shadow:0 1px 2px #1018280a;margin-bottom:1rem;flex-wrap:wrap}.reminders-toolbar__search{position:relative;flex:1;min-width:220px;max-width:560px}.reminders-toolbar__search-icon{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);color:#98a2b3;pointer-events:none}.reminders-toolbar__search input{width:100%;padding:.625rem 1rem .625rem 2.5rem;border:1px solid #EAECF0;border-radius:10px;font-size:.875rem;font-family:inherit;color:#101828;background:#f8fafc;outline:none}.reminders-toolbar__search input:focus{border-color:#2e90fa;background:#fff}.reminders-toolbar__filters{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-dd{position:relative}.filter-dd__btn{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;border:1px solid #EAECF0;border-radius:8px;font-size:.8125rem;font-family:inherit;color:#98a2b3;background:#fff;cursor:pointer;outline:none;min-width:108px;transition:background .15s,border-color .15s}.filter-dd__btn:hover{background:#f8fafc}.filter-dd__btn--active{color:#344054;border-color:#b2ddff}.filter-dd__chevron{color:#98a2b3;flex-shrink:0}.filter-dd__menu{position:absolute;top:calc(100% + 6px);left:0;min-width:100%;width:max-content;max-height:280px;overflow-y:auto;background:#fff;border:1px solid #EAECF0;border-radius:12px;box-shadow:0 12px 24px #1018281f;padding:.375rem;z-index:30}.filter-dd__item{display:block;width:100%;text-align:left;padding:.5625rem .75rem;border:none;border-radius:8px;background:none;font-size:.875rem;font-family:inherit;color:#344054;cursor:pointer;white-space:nowrap;transition:background .15s}.filter-dd__item:hover{background:#f8fafc}.filter-dd__item--selected{background:#eff8ff;color:#175cd3;font-weight:500}.reminders-toolbar__filter-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border:1px solid #EAECF0;border-radius:8px;background:#fff;color:#344054;font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s}.reminders-toolbar__filter-btn:hover{background:#f8fafc}.reminders-table-wrap{overflow-x:auto;background:#fff;border:1px solid #EAECF0;border-radius:14px;box-shadow:0 1px 2px #1018280a}.reminders-table{width:100%;border-collapse:collapse;font-size:.8438rem}.reminders-table thead{background:#f8fafc}.reminders-table th{text-align:left;padding:.75rem 1rem;font-size:.75rem;font-weight:600;color:#667085;white-space:nowrap;border-bottom:1px solid #EAECF0}.reminders-table__th-actions{text-align:right}.reminders-table td{padding:.875rem 1rem;border-bottom:1px solid #F2F4F7;vertical-align:middle;white-space:nowrap}.reminders-table tbody tr:hover{background:#fafbfc}.reminders-table tbody tr:last-child td{border-bottom:none}.reminders-table__index{color:#667085}.reminders-table__customer{color:#1570ef;font-weight:500;cursor:pointer}.reminders-table__customer:hover{text-decoration:underline}.reminders-table__vehicle{color:#475467}.reminders-table__service{display:flex;flex-direction:column;gap:.25rem;color:#344054}.wear-chip{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;font-weight:500;padding:.125rem .5rem;border-radius:999px;width:fit-content}.wear-chip--danger{background:#fef3f2;color:#d92d20}.wear-chip--warning{background:#fffaeb;color:#b54708}.wear-chip--info{background:#eff8ff;color:#175cd3}.reminders-table__km{color:#344054}.reminders-table__due--danger{color:#f04438;font-weight:500}.reminders-table__due--neutral{color:#344054}.status-badge{display:inline-block;font-size:.6875rem;font-weight:600;padding:.1875rem .625rem;border-radius:999px;white-space:nowrap}.status-badge--overdue{background:#fef3f2;color:#d92d20}.status-badge--due_soon{background:#fffaeb;color:#b54708}.status-badge--tyre_wear{background:#f4f3ff;color:#6941c6}.status-badge--upcoming{background:#eff8ff;color:#175cd3}.branch-chip{display:inline-block;font-size:.75rem;font-weight:500;color:#475467;background:#f2f4f7;border:1px solid #EAECF0;padding:.125rem .5625rem;border-radius:6px}.reminders-table__contact{display:flex;align-items:center;gap:.375rem}.table-icon-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:8px;background:none;color:#475467;cursor:pointer;transition:background .15s}.table-icon-btn:hover{background:#f2f4f7}.table-icon-btn--whatsapp{color:#12b76a}.pending-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .875rem;border:1px solid #FEDF89;border-radius:999px;background:#fffaeb;color:#b54708;font-size:.75rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s}.pending-btn:hover{background:#fef0c7}.reminders-table__empty{text-align:center;color:#667085;padding:2rem 1rem!important}.enquiries-page__summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.25rem}.enquiry-cell{display:flex;flex-direction:column;gap:.125rem}.enquiry-cell__code{font-weight:600;color:#101828}.enquiry-cell__time{font-size:.75rem;color:#98a2b3}.enquiry-customer{display:flex;flex-direction:column;gap:.125rem}.enquiry-customer__name{font-weight:600;color:#101828}.enquiry-customer__phone{font-size:.75rem;color:#667085}.enquiry-customer__remark{font-size:.75rem;color:#98a2b3}.origin-chip{display:inline-block;font-size:.75rem;font-weight:500;color:#344054;background:#fff;border:1px solid #EAECF0;padding:.25rem .625rem;border-radius:8px;white-space:nowrap}.status-pill{display:inline-block;font-size:.6875rem;font-weight:600;padding:.25rem .75rem;border-radius:999px;white-space:nowrap}.status-pill--warning{background:#fffaeb;color:#b54708}.status-pill--success{background:#ecfdf3;color:#027a48}.status-pill--success-solid{background:#12b76a;color:#fff}.status-pill--info{background:#eff8ff;color:#175cd3}.status-pill--purple{background:#f4f3ff;color:#6941c6}.status-pill--danger{background:#fef3f2;color:#d92d20}.status-pill--neutral{background:#f2f4f7;color:#475467}.reminders-table__contact--end{justify-content:flex-end}.servicelog-page__summary{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-bottom:1.25rem}.sl-card{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;background:#fff;border:1px solid #EAECF0;border-radius:14px;padding:1rem 1.25rem;box-shadow:0 1px 2px #1018280a}.sl-card__chip{display:inline-block;font-size:.6875rem;font-weight:600;padding:.1875rem .625rem;border-radius:999px;white-space:nowrap}.sl-card__chip--info{background:#eff8ff;color:#175cd3}.sl-card__chip--neutral{background:#f2f4f7;color:#475467}.sl-card__chip--warning{background:#fffaeb;color:#b54708}.sl-card__chip--danger{background:#fef3f2;color:#d92d20}.sl-card__chip--success{background:#ecfdf3;color:#027a48}.sl-card__value{font-size:1.375rem;font-weight:700;color:#101828;line-height:1.2}.category-pills{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.category-pill{padding:.4375rem .875rem;border:1px solid #EAECF0;border-radius:999px;background:#fff;color:#344054;font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.category-pill:hover{background:#f8fafc}.category-pill--active{background:#2e90fa;border-color:#2e90fa;color:#fff}.category-pill--active:hover{background:#1570ef}.sl-table__service{font-weight:500;color:#101828}.sl-table__amount{font-weight:600;color:#101828}.loading-spinner{display:flex;justify-content:center;align-items:center;padding:4rem}.spinner{border:4px solid #F2F4F7;border-top:4px solid #2E90FA;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{padding:1rem;background:#fef3f2;color:#b42318;border-radius:8px;margin:1rem 0}.logservice-page{display:flex;flex-direction:column}.logservice-page__footer{display:flex;justify-content:flex-end;margin-top:.25rem}.ls-actions{display:flex;align-items:center;gap:.625rem}.ls-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .875rem;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background .15s ease,border-color .15s ease}.ls-btn:disabled{opacity:.6;cursor:not-allowed}.ls-btn--ghost,.ls-btn--outline{background:#fff;border-color:#e4e7ec;color:#344054}.ls-btn--ghost:hover,.ls-btn--outline:hover{background:#f9fafb}.ls-btn--primary{background:#2e90fa;color:#fff}.ls-btn--primary:hover{background:#1570cd}.ls-form{display:flex;flex-direction:column;gap:1rem}.ls-card{background:#fff;border:1px solid #EAECF0;border-radius:12px;padding:1.25rem;box-shadow:0 1px 2px #1018280a}.ls-card--tint{background:#f5f9ff;border-color:#e0eaff}.ls-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.ls-card__title{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:700;color:#101828;margin:0}.ls-card__title svg{color:#2e90fa}.ls-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .625rem;border-radius:999px;background:#f2f4f7;color:#475467;font-size:.6875rem;font-weight:600}.ls-grid{display:grid;gap:1rem}.ls-grid--2{grid-template-columns:repeat(2,1fr)}.ls-grid--4{grid-template-columns:repeat(4,1fr)}.ls-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.ls-field{display:flex;flex-direction:column;gap:.375rem}.ls-field--full{margin-bottom:1rem}.ls-field label{font-size:.75rem;font-weight:600;color:#344054}.ls-optional{color:#98a2b3;font-weight:500;font-size:.6875rem}.ls-field input,.ls-field select,.ls-textarea{padding:.55rem .75rem;border:1px solid #D0D5DD;border-radius:8px;font-size:.8125rem;color:#101828;background:#fff;outline:none;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.ls-field input:focus,.ls-field select:focus,.ls-textarea:focus{border-color:#2e90fa;box-shadow:0 0 0 3px #2e90fa1f}.ls-field input::placeholder,.ls-textarea::placeholder{color:#98a2b3}.ls-readonly{padding:.55rem .75rem;border-radius:8px;background:#f9fafb;border:1px solid #EAECF0;font-size:.8125rem;color:#344054}.ls-readonly--green{background:#ecfdf3;border-color:#d1fadf;color:#027a48;font-weight:700}.ls-hint{font-size:.6875rem;color:#98a2b3}.ls-link{background:none;border:none;padding:0;font-size:.6875rem;font-weight:600;color:#2e90fa;cursor:pointer;text-align:left}.ls-link:hover{text-decoration:underline}.ls-branch-group{display:flex;gap:.375rem}.ls-branch-btn{padding:.5rem .875rem;border-radius:8px;border:1px solid #D0D5DD;background:#fff;color:#344054;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s ease}.ls-branch-btn--active{background:#2e90fa;border-color:#2e90fa;color:#fff}.ls-tabs{display:inline-flex;background:#f2f4f7;border-radius:999px;padding:.2rem}.ls-tab{padding:.35rem .875rem;border-radius:999px;border:none;background:transparent;color:#667085;font-size:.75rem;font-weight:600;cursor:pointer}.ls-tab--active{background:#fff;color:#101828;box-shadow:0 1px 2px #1018281a}.ls-search{position:relative}.ls-search__icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#98a2b3}.ls-search input{width:100%;padding:.55rem .75rem .55rem 2.25rem;border:1px solid #D0D5DD;border-radius:8px;font-size:.8125rem;outline:none}.ls-search input:focus{border-color:#2e90fa;box-shadow:0 0 0 3px #2e90fa1f}.ls-toggle{position:relative;width:40px;height:22px;border-radius:999px;border:none;background:#e4e7ec;cursor:pointer;transition:background .15s ease;flex-shrink:0}.ls-toggle--on{background:#2e90fa}.ls-toggle__knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #10182826;transition:transform .15s ease}.ls-toggle--on .ls-toggle__knob{transform:translate(18px)}.ls-note{background:#f9fafb;border-radius:8px;padding:.875rem 1rem;font-size:.75rem;color:#667085;line-height:1.5;margin:0}.ls-note--tight{margin-top:1rem}.ls-schedule-card{display:flex;flex-direction:column;gap:.25rem;background:#fff;border:1px solid #EAECF0;border-radius:10px;padding:1rem 1.125rem}.ls-schedule-card__label{font-size:.75rem;color:#667085}.ls-schedule-card__value{font-size:1.25rem;font-weight:800;color:#101828}.ls-schedule-card__sub{font-size:.6875rem;color:#98a2b3}.ls-tyre-schedule{margin-top:1rem;background:#fff;border:1px solid #EAECF0;border-radius:10px;overflow:hidden}.ls-tyre-schedule__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.125rem;background:#f9fafb;border-bottom:1px solid #EAECF0;font-size:.8125rem;font-weight:700;color:#101828}.ls-tyre-schedule__meta{font-size:.6875rem;font-weight:500;color:#667085}.ls-tyre-schedule__row{display:grid;grid-template-columns:2fr 1fr 1.4fr 1.4fr;gap:1rem;padding:1rem 1.125rem;align-items:center}.ls-tyre-schedule__cell{display:flex;flex-direction:column;gap:.125rem}.ls-tyre-schedule__name{font-size:.8125rem;font-weight:700;color:#101828}.ls-tyre-schedule__label{font-size:.625rem;font-weight:600;letter-spacing:.05em;color:#98a2b3}.ls-tyre-schedule__strong{font-size:.875rem;font-weight:700;color:#101828}.ls-tyre-schedule__sub{font-size:.6875rem;color:#98a2b3}.ls-payment-summary{display:grid;grid-template-columns:repeat(3,1fr);margin-top:1.125rem;background:#f9fafb;border-radius:10px;padding:1rem}.ls-payment-summary__cell{display:flex;flex-direction:column;align-items:center;gap:.25rem}.ls-payment-summary__label{font-size:.625rem;font-weight:600;letter-spacing:.08em;color:#98a2b3}.ls-payment-summary__value{font-size:1rem;font-weight:800;color:#027a48}.ls-textarea{width:100%;resize:vertical;min-height:90px}.ls-select{position:relative}.ls-select__btn{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.55rem .75rem;border:1px solid #D0D5DD;border-radius:8px;background:#fff;font-size:.8125rem;font-family:inherit;color:#101828;cursor:pointer;text-align:left;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.ls-select__btn:focus,.ls-select__btn[aria-expanded=true]{border-color:#2e90fa;box-shadow:0 0 0 3px #2e90fa1f}.ls-select__btn:disabled{background:#f9fafb;color:#98a2b3;cursor:not-allowed}.ls-select__placeholder{color:#98a2b3}.ls-select__chevron{color:#98a2b3;flex-shrink:0}.ls-select__menu{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #EAECF0;border-radius:12px;box-shadow:0 12px 24px #1018281f;padding:.375rem;z-index:40;max-height:260px;overflow-y:auto}.ls-select__item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.55rem .75rem;border:none;border-radius:8px;background:transparent;font-size:.8125rem;font-family:inherit;color:#344054;cursor:pointer;text-align:left;transition:background .12s ease}.ls-select__item:hover{background:#eff6ff}.ls-select__item-label{display:flex;align-items:baseline;gap:.5rem}.ls-select__item-hint{font-size:.75rem;color:#667085}.ls-select__item--selected .ls-select__item-hint{color:#c7d2e0}.ls-select__item--selected{background:#16283e;color:#fff;font-weight:600}.ls-select__item--selected:hover{background:#16283e}.customer-cell{display:flex;align-items:center;gap:.75rem}.customer-cell__avatar{width:34px;height:34px;border-radius:50%;background:#eff8ff;color:#175cd3;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;flex-shrink:0}.customer-cell__info{display:flex;flex-direction:column;gap:.125rem}.customer-cell__name{display:inline-flex;align-items:center;gap:.3rem;font-size:.8125rem;font-weight:600;color:#101828}.customer-cell__star{color:#7f56d9}.customer-cell__phone{font-size:.75rem;color:#667085}.customers-table__count{font-size:.8125rem;font-weight:600;color:#101828}.memberships-page__summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.25rem}.memberships-page__plans{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.25rem}.plan-card{border-radius:14px;padding:1.25rem 1.375rem;border:1px solid transparent}.plan-card--blue{background:#eff8ff;border-color:#d1e9ff}.plan-card--purple{background:#f4f3ff;border-color:#e4e1fc}.plan-card__header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1rem}.plan-card__kicker{font-size:.625rem;font-weight:700;letter-spacing:.08em;color:#667085}.plan-card__name{font-size:1.0625rem;font-weight:800;color:#101828;margin:.125rem 0 0}.plan-card--blue .plan-card__name{color:#175cd3}.plan-card--purple .plan-card__name{color:#6941c6}.plan-card__price{display:flex;flex-direction:column;align-items:flex-end}.plan-card__amount{font-size:1.375rem;font-weight:800}.plan-card--blue .plan-card__amount{color:#2e90fa}.plan-card--purple .plan-card__amount{color:#7f56d9}.plan-card__per{font-size:.6875rem;color:#667085}.plan-card__benefits{display:grid;grid-template-columns:repeat(2,1fr);column-gap:1.5rem}.plan-card__benefit{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.45rem 0;border-bottom:1px dashed rgba(16,24,40,.08);font-size:.75rem}.plan-card__benefit-name{color:#344054;font-weight:500}.plan-card__benefit-usage{color:#667085;font-weight:600;white-space:nowrap}.plan-card__note{margin:.875rem 0 0;font-size:.6875rem;font-weight:500}.plan-card--blue .plan-card__note{color:#175cd3}.plan-card--purple .plan-card__note{color:#6941c6}.memberships-table__id{font-size:.8125rem;font-weight:700;color:#101828}.membership-vehicles{display:flex;flex-direction:column;gap:.25rem}.membership-vehicles__row{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;color:#667085}.membership-vehicles__row svg{color:#98a2b3;flex-shrink:0}.membership-vehicles__row strong{color:#344054;font-weight:600}.tier-pill{display:inline-block;padding:.25rem .625rem;border-radius:999px;font-size:.6875rem;font-weight:700;color:#fff;white-space:nowrap}.tier-pill--purple{background:#7f56d9}.tier-pill--blue{background:#2e90fa}.membership-renewal{display:flex;flex-direction:column;gap:.125rem}.membership-renewal__date{font-size:.8125rem;font-weight:600;color:#101828}.membership-renewal__note{font-size:.6875rem;color:#98a2b3}.benefit-usage{display:flex;flex-direction:column;gap:.375rem;min-width:110px}.benefit-usage__label{font-size:.75rem;font-weight:600;color:#027a48}.benefit-usage__track{height:5px;border-radius:999px;background:#eaecf0;overflow:hidden}.benefit-usage__fill{height:100%;border-radius:999px;background:#2e90fa}.renew-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.45rem .75rem;border:1px solid #D0D5DD;border-radius:8px;background:#fff;color:#344054;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease;white-space:nowrap}.renew-btn:hover{background:#f9fafb;border-color:#98a2b3}.login-page{display:grid;grid-template-columns:45% 55%;min-height:100vh}.login-page__left{display:flex;flex-direction:column;justify-content:space-between;background:#16283e;color:#fff;padding:2.5rem 3rem;position:relative;overflow:hidden}.login-page__brand{display:flex;align-items:center;gap:.75rem}.login-page__logo{width:42px;height:42px;border-radius:50%;background:#fff;color:#16283e;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.125rem}.login-page__brand-name{font-size:1.0625rem;font-weight:700}.login-page__hero{max-width:380px}.login-page__hero-title{font-size:2rem;font-weight:800;margin:0 0 1rem;line-height:1.25}.login-page__hero-text{font-size:.9375rem;line-height:1.65;color:#c7d2e0;margin:0}.login-page__footer{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:#8da0b8}.login-page__right{display:flex;align-items:center;justify-content:center;background:#fafcfa;padding:2rem}.login-form{width:100%;max-width:380px}.login-form__title{font-size:1.5rem;font-weight:800;color:#101828;margin:0 0 .625rem}.login-form__subtitle{font-size:.875rem;color:#667085;line-height:1.55;margin:0 0 2rem}.login-form__error{background:#fef3f2;color:#b42318;border-radius:8px;padding:.625rem .875rem;font-size:.8125rem;margin-bottom:1.25rem}.login-form__field{position:relative;margin-bottom:1.5rem}.login-form__field input{width:100%;border:none;border-bottom:1px solid #D0D5DD;background:transparent;padding:.625rem .125rem;font-size:.875rem;color:#101828;outline:none;transition:border-color .15s ease}.login-form__field input:focus{border-bottom-color:#16283e}.login-form__field input::placeholder{color:#98a2b3}.login-form__field--password input{padding-right:2.25rem}.login-form__eye{position:absolute;right:.25rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#667085;cursor:pointer;display:flex;align-items:center;padding:.25rem}.login-form__submit{width:100%;margin-top:.5rem;padding:.75rem 1rem;border:none;border-radius:10px;background:#16283e;color:#fff;font-size:.875rem;font-weight:700;cursor:pointer;transition:background .15s ease}.login-form__submit:hover{background:#1f3652}.login-form__submit:disabled{opacity:.7;cursor:not-allowed}.crm-sidebar__logout{margin-left:auto;background:none;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;padding:.375rem;border-radius:6px;transition:background .15s ease,color .15s ease}.crm-sidebar__logout:hover{background:#334155;color:#fff}.analytics-page__exports{display:flex;align-items:center;gap:.5rem}.analytics-export-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border:1px solid #D0D5DD;border-radius:8px;background:#fff;color:#344054;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.analytics-export-btn:hover{background:#f9fafb}.analytics-export-btn--primary{background:#2e90fa;border-color:#2e90fa;color:#fff}.analytics-export-btn--primary:hover{background:#1570ef;border-color:#1570ef}.analytics-page__kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin-bottom:1.25rem}.analytics-kpi{background:#fff;border:1px solid #EAECF0;border-radius:12px;padding:1rem 1.125rem;box-shadow:0 1px 2px #1018280a;display:flex;flex-direction:column;gap:.25rem}.analytics-kpi__label{font-size:.75rem;font-weight:500;color:#667085}.analytics-kpi__value{font-size:1.375rem;font-weight:800;color:#101828;letter-spacing:-.02em}.analytics-kpi__change{font-size:.75rem;font-weight:600;color:#027a48}.analytics-page__charts-row{display:grid;grid-template-columns:1.4fr 1fr;gap:1rem;margin-bottom:1.25rem}.analytics-page__charts-row .chart-card{min-width:0}@media (max-width: 1280px){.dashboard-page__kpi-grid,.reminders-page__summary{grid-template-columns:repeat(2,1fr)}.enquiries-page__summary{grid-template-columns:1fr}.servicelog-page__summary{grid-template-columns:repeat(2,1fr)}.memberships-page__summary,.memberships-page__plans{grid-template-columns:1fr}.analytics-page__kpi-grid{grid-template-columns:repeat(3,1fr)}.analytics-page__charts-row{grid-template-columns:1fr}.ls-grid--4{grid-template-columns:repeat(2,1fr)}.ls-row,.login-page{grid-template-columns:1fr}.login-page__left{display:none}}@media (max-width: 1100px){.dashboard-page__charts-row--trend,.dashboard-page__charts-row--activity{grid-template-columns:1fr}}@media (max-width: 768px){.crm-layout{flex-direction:column}.crm-sidebar{width:100%;height:auto;position:relative}.crm-header{flex-direction:column;align-items:stretch;padding:1rem}.crm-header__search{max-width:none}.crm-layout__content{padding:1rem}.dashboard-page__kpi-grid{grid-template-columns:1fr}.analytics-page__kpi-grid{grid-template-columns:1fr 1fr}.analytics-page__exports{flex-wrap:wrap}}
