.sidebar{background-color:var(--color-black-light);border-right:1px solid var(--color-black-lighter);bottom:0;display:flex;flex-direction:column;left:0;position:fixed;top:0;width:var(--sidebar-width);z-index:100}.sidebar__header{border-bottom:1px solid var(--color-black-lighter);padding:var(--spacing-md)}.sidebar__logo{align-items:center;display:flex;justify-content:center}.sidebar__logo-image{height:auto;max-width:180px;width:100%}.sidebar__nav{flex:1 1;overflow-y:auto;padding:var(--spacing-md) 0}.sidebar__link{align-items:center;color:var(--color-gray-light);display:flex;font-size:.9375rem;font-weight:500;gap:var(--spacing-sm);padding:.875rem var(--spacing-md);position:relative;transition:all var(--transition-fast)}.sidebar__link:before{background-color:var(--color-gold);bottom:0;content:"";left:0;position:absolute;top:0;transform:scaleY(0);transition:transform var(--transition-fast);width:3px}.sidebar__link:hover{background-color:#c9a2271a;color:var(--color-white)}.sidebar__link--active{background-color:#c9a22726;color:var(--color-gold)}.sidebar__link--active:before{transform:scaleY(1)}.sidebar__link-icon{align-items:center;display:flex;justify-content:center;opacity:.8}.sidebar__link--active .sidebar__link-icon,.sidebar__link:hover .sidebar__link-icon{opacity:1}.sidebar__footer{border-top:1px solid var(--color-black-lighter);padding:var(--spacing-md)}.sidebar__footer-text{color:var(--color-gray);font-size:.75rem;margin:0;text-align:center}@media (max-width:768px){.sidebar{transform:translateX(-100%);transition:transform var(--transition-normal)}.sidebar--open{transform:translateX(0)}}.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#0a0a0af2;border-bottom:1px solid var(--color-black-lighter);height:var(--header-height);justify-content:space-between;left:var(--sidebar-width);padding:0 var(--spacing-lg);position:fixed;right:0;top:0;z-index:50}.header,.header__left{align-items:center;display:flex}.header__greeting{color:var(--color-gray-light);font-size:.9375rem}.header__username{color:var(--color-gold);font-weight:600}.header__right{align-items:center;display:flex;gap:var(--spacing-md)}.header__user-btn{align-items:center;background:none;border:1px solid var(--color-gray-dark);border-radius:var(--radius-sm);color:var(--color-gray-light);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:.5rem 1rem;transition:all var(--transition-fast)}.header__user-btn:hover{border-color:var(--color-gold);color:var(--color-gold)}.header__user-avatar{align-items:center;background-color:var(--color-gold);border-radius:50%;color:var(--color-black);display:flex;font-size:.75rem;font-weight:700;height:28px;justify-content:center;width:28px}.header__logout-text{font-size:.875rem;font-weight:500}.header__role-badge{background:var(--color-gold);border-radius:4px;color:var(--color-black);font-size:.65rem;font-weight:700;letter-spacing:.5px;margin-left:.5rem;padding:2px 6px;text-transform:uppercase}.header__bell-wrap{position:relative}.header__bell-btn{align-items:center;background:none;border:1px solid var(--color-gray-dark);border-radius:var(--radius-sm);color:var(--color-gray-light);cursor:pointer;display:flex;padding:.45rem .6rem;position:relative;transition:all var(--transition-fast)}.header__bell-btn:hover{border-color:var(--color-gold);color:var(--color-gold)}.header__bell-badge{align-items:center;background:#ef4444;border-radius:8px;color:#fff;display:flex;font-size:.6rem;font-weight:700;height:16px;justify-content:center;min-width:16px;padding:0 3px;position:absolute;right:-6px;top:-6px}.header__notif-dropdown{background:#141414;border:1px solid #333;border-radius:8px;box-shadow:0 8px 32px #00000080;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);width:340px;z-index:200}.header__notif-header{align-items:center;border-bottom:1px solid #333;color:var(--color-gold);display:flex;font-size:.875rem;font-weight:600;justify-content:space-between;padding:12px 16px}.header__notif-mark-all{background:none;border:none;color:#888;cursor:pointer;font-size:.75rem;padding:0}.header__notif-mark-all:hover{color:var(--color-gold)}.header__notif-list{max-height:360px;overflow-y:auto}.header__notif-empty{color:#666;font-size:.875rem;padding:24px 16px;text-align:center}.header__notif-item{align-items:flex-start;border-bottom:1px solid #1e1e1e;cursor:pointer;display:flex;gap:10px;padding:12px 16px;transition:background .15s}.header__notif-item:hover{background:#1a1a1a}.header__notif-item--unread{background:#c9a2270d}.header__notif-icon{flex-shrink:0;font-size:1rem;margin-top:1px}.header__notif-content{flex:1 1;min-width:0}.header__notif-message{color:#e5e5e5;font-size:.8125rem;line-height:1.4;margin:0 0 4px}.header__notif-time{color:#666;font-size:.7rem}.header__notif-dot{background:var(--color-gold);border-radius:50%;flex-shrink:0;height:8px;margin-top:4px;width:8px}@media (max-width:768px){.header{left:0}.header__notif-dropdown{right:-60px;width:300px}}.login-page{align-items:center;background:linear-gradient(135deg,var(--color-black) 0,var(--color-black-light) 100%);display:flex;justify-content:center;min-height:100vh;padding:var(--spacing-md)}.login-container{max-width:420px;width:100%}.login-header{margin-bottom:var(--spacing-xl);text-align:center}.login-logo{display:block;height:auto;margin:0 auto var(--spacing-lg);max-width:280px;width:100%}.login-form{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.login-form-title{color:var(--color-white);font-size:1.5rem;margin-bottom:var(--spacing-lg);text-align:center}.login-error{background-color:#ef44441a;border:1px solid #ef44444d;border-radius:var(--radius-sm);color:#f87171;font-size:.875rem;margin-bottom:var(--spacing-md);padding:.75rem 1rem}.login-btn{margin-top:var(--spacing-sm);width:100%}.login-toggle{color:var(--color-gray);font-size:.875rem;margin-bottom:0;margin-top:var(--spacing-md);text-align:center}.login-toggle-btn{background:none;border:none;color:var(--color-gold);cursor:pointer;font-weight:600;margin-left:.5rem}.login-toggle-btn:hover{color:var(--color-gold-light);text-decoration:underline}.login-success{background-color:#22c55e1a;border:1px solid #22c55e4d;border-radius:var(--radius-sm);color:#4ade80;font-size:.875rem;margin-bottom:var(--spacing-md);padding:.75rem 1rem}.login-forgot-btn{background:none;border:none;color:var(--color-gray);cursor:pointer;display:block;font-size:.85rem;margin-top:var(--spacing-sm);text-align:center;width:100%}.login-forgot-btn:hover{color:var(--color-gold)}.login-forgot-hint{color:var(--color-gray);font-size:.875rem;margin-bottom:var(--spacing-md);text-align:center}.password-input-wrapper{position:relative}.password-input-wrapper .form-input{padding-right:60px}.password-toggle{background:none;border:none;color:var(--color-gray);cursor:pointer;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:4px;position:absolute;right:12px;text-transform:uppercase;top:50%;transform:translateY(-50%)}.password-toggle:hover{color:var(--color-gold)}.dashboard{animation:fadeIn .3s ease}.stats-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(4,1fr);margin-bottom:var(--spacing-lg)}.stat-card{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);gap:var(--spacing-md);padding:var(--spacing-md)}.stat-card,.stat-card__icon{align-items:center;border-radius:var(--radius-md);display:flex}.stat-card__icon{flex-shrink:0;height:48px;justify-content:center;width:48px}.stat-card__icon--gold{background-color:#c9a22726;color:var(--color-gold)}.stat-card__icon--blue{background-color:#3b82f626;color:#60a5fa}.stat-card__icon--green{background-color:#22c55e26;color:#4ade80}.stat-card__icon--orange{background-color:#f59e0b26;color:#fbbf24}.stat-card__content{display:flex;flex-direction:column}.stat-card__value{color:var(--color-white);font-size:1.75rem;font-weight:700;line-height:1.2}.stat-card__label{color:var(--color-gray);font-size:.8125rem}.dashboard-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(2,1fr)}.dashboard-card{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);overflow:hidden}.dashboard-card__header{align-items:center;border-bottom:1px solid var(--color-black-lighter);display:flex;justify-content:space-between;padding:var(--spacing-md)}.dashboard-card__title{font-size:1rem;margin:0}.dashboard-card__link{color:var(--color-gold);font-size:.8125rem}.dashboard-card__content{max-height:350px;overflow-y:auto;padding:var(--spacing-md)}.appointment-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.appointment-item{grid-gap:var(--spacing-sm);align-items:center;background-color:var(--color-black);border-radius:var(--radius-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:60px 1fr auto;padding:var(--spacing-sm)}.appointment-item__time{color:var(--color-gold);font-size:.9375rem;font-weight:600}.appointment-item__customer{color:var(--color-white);font-weight:500}.appointment-item__vehicle{color:var(--color-gray);font-size:.8125rem}.appointment-item__services{color:var(--color-gray);font-size:.75rem}.status-select{background-color:var(--color-black-light);border:1px solid var(--color-gray-dark);border-radius:var(--radius-sm);color:var(--color-white);font-size:.75rem;padding:.25rem .5rem}.upcoming-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.upcoming-item{grid-gap:var(--spacing-sm);align-items:center;background-color:var(--color-black);border-radius:var(--radius-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:50px 1fr auto;padding:var(--spacing-sm)}.upcoming-item__date{align-items:center;display:flex;flex-direction:column;text-align:center}.upcoming-item__day{color:var(--color-gray);font-size:.6875rem;text-transform:uppercase}.upcoming-item__date-num{color:var(--color-gold);font-size:1.25rem;font-weight:600}.upcoming-item__customer{color:var(--color-white);font-weight:500}.upcoming-item__time{color:var(--color-gray);font-size:.8125rem}.invoice-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.invoice-item{grid-gap:var(--spacing-sm);align-items:center;background-color:var(--color-black);border-radius:var(--radius-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:1fr auto auto;padding:var(--spacing-sm)}.invoice-item__number{color:var(--color-gold);font-family:monospace;font-size:.8125rem}.invoice-item__customer{color:var(--color-gray);font-size:.8125rem}.invoice-item__amount{color:var(--color-white);font-weight:600}.quick-actions{grid-gap:var(--spacing-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr)}.quick-action{align-items:center;background-color:var(--color-black);border:1px solid var(--color-black-lighter);border-radius:var(--radius-sm);color:var(--color-gray-light);display:flex;flex-direction:column;font-size:.8125rem;gap:var(--spacing-sm);padding:var(--spacing-md);text-align:center;transition:all var(--transition-fast)}.quick-action:hover{border-color:var(--color-gold);color:var(--color-gold)}.quick-action__icon{align-items:center;background-color:#c9a2271a;border-radius:50%;color:var(--color-gold);display:flex;height:40px;justify-content:center;width:40px}.empty-state--small{padding:var(--spacing-lg);text-align:center}.empty-state--small p{color:var(--color-gray);margin:0}@media (max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:1024px){.dashboard-grid{grid-template-columns:1fr}}@media (max-width:768px){.stats-grid{grid-template-columns:1fr}.stat-card{padding:var(--spacing-sm)}.stat-card__value{font-size:1.5rem}}.stat-card--clickable{cursor:pointer;transition:transform .2s,box-shadow .2s}.stat-card--clickable:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.stat-card--clickable:active{transform:translateY(0)}.stat-card__icon--purple{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-card--pulse{animation:pulse-border 2s ease-in-out infinite}@keyframes pulse-border{0%,to{box-shadow:0 2px 4px #0000001a}50%{box-shadow:0 0 0 4px #667eea33,0 2px 8px #667eea4d}}.stat-card--pulse:hover{animation:none}.weather-card{align-items:stretch;background:linear-gradient(135deg,#1e3a8a,#3b82f6);border:none;flex-direction:column;gap:var(--spacing-sm)}.weather-card--good{background:linear-gradient(135deg,#065f46,#10b981)}.weather-card--warning{background:linear-gradient(135deg,#991b1b,#ef4444)}.weather-card--setup{background:linear-gradient(135deg,#374151,#6b7280)}.weather-card__header{align-items:center;display:flex;justify-content:space-between}.weather-card__temp{color:var(--color-white);font-size:2.5rem;font-weight:700;line-height:1}.weather-card__icon{height:64px;margin:-12px -12px -12px 0;width:64px}.weather-card__details{display:flex;flex-direction:column;gap:.25rem}.weather-card__description{color:#ffffffe6;font-size:.9375rem;font-weight:500;text-transform:capitalize}.weather-card__message{color:#ffffffb3;font-size:.75rem;font-style:italic}.customers-page{animation:fadeIn .3s ease}.customers-toolbar{margin-bottom:var(--spacing-lg)}.form-row{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(2,1fr)}.customer-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.customer-card{background-color:var(--color-black-light);border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-fast)}.customer-card__header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);transition:background-color var(--transition-fast)}.customer-card__header:hover{background-color:var(--color-black-lighter)}.customer-card__info{flex:1 1}.customer-card__name{color:var(--color-white);font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.customer-card__contact{color:var(--color-gray);display:flex;font-size:.875rem;gap:var(--spacing-md)}.customer-card__stats{align-items:center;display:flex;gap:var(--spacing-lg)}.customer-card__stat{align-items:center;display:flex;flex-direction:column;text-align:center}.stat-value{color:var(--color-gold);font-size:1.25rem;font-weight:700}.stat-label{color:var(--color-gray);font-size:.75rem;text-transform:uppercase}.customer-card__chevron{color:var(--color-gray);margin-left:var(--spacing-md);transition:transform var(--transition-fast)}.customer-card__chevron.expanded{transform:rotate(180deg)}.customer-card__expanded{animation:fadeIn .2s ease;background-color:var(--color-black);border-top:1px solid var(--color-black-lighter);padding:var(--spacing-lg)}.customer-detail-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(2,1fr);margin-bottom:var(--spacing-lg)}.detail-section{background-color:var(--color-black-light);border-radius:var(--radius-md);padding:var(--spacing-md)}.detail-section--full{grid-column:1/-1}.detail-section__header{align-items:center;border-bottom:1px solid var(--color-black-lighter);display:flex;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm)}.detail-section__header h4{color:var(--color-gold);font-size:.9375rem;font-weight:600;margin:0}.detail-info,.detail-section__actions{display:flex;gap:var(--spacing-sm)}.detail-info,.detail-row{flex-direction:column}.detail-row{display:flex;gap:.125rem}.detail-label{color:var(--color-gray);font-size:.75rem;text-transform:uppercase}.detail-value{color:var(--color-white);font-size:.9375rem}.vehicle-item{align-items:center;display:flex;justify-content:space-between}.vehicle-item__info{display:flex;flex-direction:column}.vehicle-item__name{color:var(--color-white);font-weight:500}.vehicle-item__details{color:var(--color-gray);font-size:.8125rem}.activity-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.activity-item{align-items:center;background-color:var(--color-black);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-md);padding:var(--spacing-sm)}.activity-item__date{color:var(--color-gray-light);font-size:.875rem;min-width:100px}.activity-item__details{align-items:center;display:flex;flex:1 1;gap:var(--spacing-sm)}.activity-item__vehicle{color:var(--color-gray);font-size:.875rem}.activity-item__services{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.service-tag{background-color:var(--color-black-lighter);border-radius:100px;color:var(--color-gray-light);font-size:.75rem;padding:.125rem .5rem}.no-data{color:var(--color-gray);font-size:.875rem;font-style:italic;margin:0}.customer-name-link{color:var(--color-white);font-weight:500}.customer-name-link:hover{color:var(--color-gold)}@media (max-width:768px){.customer-detail-grid,.form-row,.form-row--3{grid-template-columns:1fr}.customer-card__header{align-items:flex-start;flex-direction:column;gap:var(--spacing-md)}.customer-card__stats{justify-content:space-between;width:100%}.customer-card__contact{flex-direction:column;gap:var(--spacing-xs)}.activity-item{align-items:flex-start;flex-direction:column}}.customers-count{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:flex;font-weight:500;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.customers-count__label{font-size:.9rem}.customers-count__value{font-size:1.5rem;font-weight:700}.recurring-section{background-color:var(--color-black);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);margin-top:var(--spacing-lg);padding:var(--spacing-md)}.recurring-section__header{align-items:center;border-bottom:1px solid var(--color-black-lighter);display:flex;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm)}.recurring-fields{animation:fadeIn .2s ease}.recurring-info{align-items:center;background-color:#3b82f61a;border:1px solid #3b82f633;border-radius:var(--radius-sm);color:#60a5fa;display:flex;font-size:.8125rem;gap:var(--spacing-xs);margin-top:var(--spacing-md);padding:var(--spacing-sm)}.recurring-info svg{flex-shrink:0}.recurring-badge{align-items:center;background:linear-gradient(135deg,#065f46,#10b981);border-radius:100px;color:var(--color-white);display:inline-flex;font-size:.8125rem;font-weight:500;padding:.25rem .75rem}.recurring-badge--paused{background:linear-gradient(135deg,#6b7280,#9ca3af)}.expanded-card__top-actions{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-md)}.address-item__info{display:flex;flex:1 1;flex-direction:column;min-width:0}.address-item__name{align-items:center;color:var(--color-white);display:flex;font-weight:500;gap:var(--spacing-sm)}.address-item__details{color:var(--color-gray);font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.address-item__actions{display:flex;flex-shrink:0;gap:var(--spacing-xs)}@media (max-width:768px){.address-item{align-items:flex-start;flex-direction:column}.address-item__actions{justify-content:flex-end;margin-top:var(--spacing-sm);width:100%}}.customer-detail{animation:fadeIn .3s ease}.customer-detail__header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg)}.customer-detail__name{font-size:2rem;margin:0}.customer-detail__actions{display:flex;gap:var(--spacing-sm)}.customer-detail__grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:1fr 1fr}.card__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-md)}.card__title{color:var(--color-gold);font-size:1.125rem;margin:0}.card__header .card__title{margin-bottom:0}.info-list{gap:var(--spacing-md)}.info-item,.info-list{display:flex;flex-direction:column}.info-item{gap:.25rem}.info-label{color:var(--color-gray);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.info-value{color:var(--color-white);font-size:.9375rem}.vehicle-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.vehicle-item{background-color:var(--color-black);border:1px solid var(--color-black-lighter);border-radius:var(--radius-sm);padding:var(--spacing-sm)}.vehicle-info{display:flex;flex-direction:column;gap:.25rem}.vehicle-name{color:var(--color-white);font-weight:600}.vehicle-details{color:var(--color-gray);font-size:.8125rem;text-transform:capitalize}.address-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.address-item{align-items:center;background-color:var(--color-black);border:1px solid var(--color-black-lighter);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-md);justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md)}.address-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.address-name{align-items:center;color:var(--color-white);display:flex;font-weight:600;gap:var(--spacing-sm)}.address-details{color:var(--color-gray);font-size:.8125rem}.address-actions{display:flex;flex-shrink:0;gap:var(--spacing-xs)}.ml-sm{margin-left:var(--spacing-sm)}@media (max-width:768px){.customer-detail__grid{grid-template-columns:1fr}.customer-detail__header{flex-direction:column;gap:var(--spacing-md)}.customer-detail__actions{width:100%}.customer-detail__actions .btn{flex:1 1}.address-item{align-items:flex-start;flex-direction:column}.address-actions{margin-top:var(--spacing-sm);width:100%}.address-actions .btn{flex:1 1}}.appointments-page{animation:fadeIn .3s ease}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg)}.calendar-title{font-size:1.25rem;margin:0}.calendar-grid{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);overflow:hidden}.calendar-header-row{border-bottom:1px solid var(--color-black-lighter);display:grid;grid-template-columns:60px repeat(7,1fr)}.calendar-day-header,.calendar-time-header{background-color:var(--color-black-lighter)}.calendar-day-header{border-left:1px solid var(--color-black-lighter);padding:var(--spacing-sm);text-align:center}.calendar-day-header--today{background-color:#c9a22733}.calendar-day-name{color:var(--color-gray);display:block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.calendar-day-number{color:var(--color-white);display:block;font-size:1.25rem;font-weight:600}.calendar-day-header--today .calendar-day-number{color:var(--color-gold)}.calendar-body{max-height:600px;overflow-y:auto}.calendar-row{border-bottom:1px solid var(--color-black-lighter);display:grid;grid-template-columns:60px repeat(7,1fr);min-height:80px}.calendar-row:last-child{border-bottom:none}.calendar-time{align-items:flex-start;background-color:var(--color-black-lighter);color:var(--color-gray);display:flex;font-size:.75rem;justify-content:center;padding-top:var(--spacing-xs)}.calendar-cell{border-left:1px solid var(--color-black-lighter);min-height:80px;padding:.25rem}.appointment-card{background-color:var(--color-black);border-left:3px solid var(--color-gold);border-radius:var(--radius-sm);font-size:.75rem;margin-bottom:.25rem;padding:.5rem}.appointment-card--clickable{cursor:pointer;transition:all var(--transition-fast)}.appointment-card--clickable:hover{background-color:var(--color-black-light);transform:translateY(-1px)}.appointment-card--scheduled{border-left-color:#60a5fa}.appointment-card--confirmed{border-left-color:#a78bfa}.appointment-card--in_progress{border-left-color:#fbbf24}.appointment-card--completed{border-left-color:#4ade80}.appointment-card--cancelled{border-left-color:#f87171}.appointment-card--no_show{border-left-color:#9ca3af}.appointment-card__time{color:var(--color-gold);font-weight:600;margin-bottom:.25rem}.appointment-card__customer{color:var(--color-white);font-weight:500}.appointment-card__vehicle{color:var(--color-gray);font-size:.6875rem}.appointment-card__weather{align-items:center;border-top:1px solid var(--color-black-lighter);display:flex;gap:.25rem;margin-top:.25rem;padding-top:.25rem}.appointment-card__weather-icon{height:32px;margin:-8px -4px -8px -8px;width:32px}.appointment-card__weather-info{display:flex;flex-direction:column;gap:.125rem}.appointment-card__temp{color:var(--color-gold);font-size:.75rem;font-weight:600}.appointment-card__precip{color:var(--color-gray);font-size:.625rem}.appointment-card__precip:before{content:"💧 "}.appointment-card__actions{margin-top:.25rem}.appointment-status-select{background-color:var(--color-black-light);border:1px solid var(--color-gray-dark);border-radius:var(--radius-sm);color:var(--color-white);font-size:.6875rem;padding:.25rem;width:100%}.service-card__pricing{align-items:center;display:flex;gap:.25rem}.service-card__price{color:var(--color-gray);font-size:.875rem;opacity:.6}.service-card__price--active{opacity:1}.service-card__price-separator{color:var(--color-gray);font-size:.75rem}.service-card__check{height:22px;width:22px}.selected-service-price{gap:.25rem}.appointment-detail__section{border-bottom:1px solid var(--color-black-lighter);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md)}.appointment-detail__section:last-of-type{border-bottom:none}.appointment-detail__heading{color:var(--color-gray);font-size:.875rem;letter-spacing:.1em;margin:0 0 var(--spacing-sm) 0;text-transform:uppercase}.appointment-detail__text{color:var(--color-white);font-size:.9375rem;margin:.5rem 0}.appointment-detail__weather{align-items:center;background-color:var(--color-black);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-md);padding:var(--spacing-sm)}.appointment-detail__weather-icon{flex-shrink:0;height:64px;width:64px}.appointment-detail__weather-info{flex:1 1}@media (max-width:1024px){.calendar-header-row,.calendar-row{grid-template-columns:50px repeat(7,1fr)}.service-selector{grid-template-columns:1fr}}@media (max-width:768px){.calendar-header{flex-direction:column;gap:var(--spacing-sm)}.calendar-grid{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.calendar-header-row,.calendar-row{min-width:700px}.vehicle-type-selector{width:100%}.vehicle-type-btn{flex:1 1}}.event-card{background-color:var(--color-black);border-left:3px solid #c9a227;border-radius:var(--radius-sm);font-size:.75rem;margin-bottom:.25rem;padding:.5rem}.event-card--clickable{cursor:pointer;transition:all var(--transition-fast)}.event-card--clickable:hover{background-color:var(--color-black-light);transform:translateY(-1px)}.event-card__time{color:var(--color-gray-light);font-size:.6875rem;font-weight:600;margin-bottom:.125rem}.event-card__title{color:var(--color-white);font-weight:500}.calendar-allday-row{border-bottom:1px solid var(--color-black-lighter);display:grid;grid-template-columns:60px repeat(7,1fr);min-height:36px}.calendar-cell--allday{min-height:36px}.color-picker{display:flex;gap:.5rem}.color-swatch{border:2px solid #0000;border-radius:50%;cursor:pointer;height:32px;transition:all var(--transition-fast);width:32px}.color-swatch:hover{transform:scale(1.15)}.color-swatch--selected{border-color:var(--color-white);box-shadow:0 0 0 2px var(--color-black),0 0 0 4px currentColor}@media (max-width:1024px){.calendar-allday-row{grid-template-columns:50px repeat(7,1fr)}}@media (max-width:768px){.calendar-allday-row{min-width:700px}}.mobile-view-switcher{background-color:var(--color-black-light);border-radius:var(--radius-md);display:flex;gap:.25rem;margin-bottom:var(--spacing-sm);padding:.25rem}.mobile-view-btn{background:none;border:none;border-radius:var(--radius-sm);color:var(--color-gray);flex:1 1;font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:.6rem;text-transform:uppercase;transition:all var(--transition-fast)}.mobile-view-btn--active{background-color:var(--color-gold);color:var(--color-black)}.mobile-day-view{display:flex;flex-direction:column;gap:var(--spacing-sm)}.mobile-day-nav{align-items:center;background-color:var(--color-black-light);border-radius:var(--radius-md);display:flex;justify-content:space-between;padding:.75rem var(--spacing-sm)}.mobile-day-nav__btn{background:none;border:none;color:var(--color-gold);font-size:1.5rem;line-height:1;padding:0 .5rem}.mobile-day-nav__date{color:var(--color-white);font-size:1rem;font-weight:600;text-align:center}.mobile-day-nav__today{color:var(--color-gold)}.mobile-day-card{align-items:center;background-color:var(--color-black-light);border-left:4px solid var(--color-gold);border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);transition:background-color var(--transition-fast)}.mobile-day-card:active{background-color:var(--color-black-hover)}.mobile-day-card--scheduled{border-left-color:#60a5fa}.mobile-day-card--confirmed{border-left-color:#a78bfa}.mobile-day-card--in_progress{border-left-color:#fbbf24}.mobile-day-card--completed{border-left-color:#4ade80}.mobile-day-card--cancelled{border-left-color:#f87171}.mobile-day-card--no_show{border-left-color:#9ca3af}.mobile-day-card--event{border-left-color:var(--color-gold)}.mobile-day-card__time{color:var(--color-gold);font-size:.875rem;font-weight:700;min-width:60px;text-align:center}.mobile-day-card__info{flex:1 1;min-width:0}.mobile-day-card__customer{color:var(--color-white);font-size:.9375rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-day-card__vehicle{font-size:.8125rem}.mobile-day-card__services,.mobile-day-card__vehicle{color:var(--color-gray);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-day-card__services{font-size:.75rem}.mobile-day-empty{color:var(--color-gray);font-size:.9375rem;padding:var(--spacing-xl);text-align:center}.mobile-month-view{display:flex;flex-direction:column;gap:var(--spacing-sm)}.mobile-month-grid{grid-gap:1px;background-color:var(--color-black-light);border-radius:var(--radius-md);display:grid;gap:1px;grid-template-columns:repeat(7,1fr);overflow:hidden}.mobile-month-dow,.mobile-month-grid{background-color:var(--color-black-lighter)}.mobile-month-dow{color:var(--color-gray);font-size:.6875rem;font-weight:700;letter-spacing:.05em;padding:.5rem 0;text-align:center;text-transform:uppercase}.mobile-month-day{align-items:center;background-color:var(--color-black-light);cursor:pointer;display:flex;flex-direction:column;gap:.2rem;min-height:44px;padding:.5rem .25rem;transition:background-color var(--transition-fast)}.mobile-month-day:active{background-color:var(--color-black-hover)}.mobile-month-day--other{opacity:.35}.mobile-month-day__num{align-items:center;border-radius:50%;color:var(--color-white);display:flex;font-size:.875rem;height:28px;justify-content:center;line-height:1.6;width:28px}.mobile-month-day--today .mobile-month-day__num{background-color:var(--color-gold);color:var(--color-black);font-weight:700}.mobile-month-day--selected:not(.mobile-month-day--today) .mobile-month-day__num{background-color:#c9a22740;color:var(--color-gold);font-weight:600}.mobile-month-day__dot{background-color:var(--color-gold);border-radius:50%;height:5px;width:5px}.mobile-month-appts{display:flex;flex-direction:column;gap:var(--spacing-sm)}.calendar-header__center{align-items:center;display:flex;flex-direction:column;gap:.5rem}.desktop-view-switcher{background-color:var(--color-black-light);border-radius:var(--radius-md);display:flex;gap:.2rem;padding:.2rem}.desktop-view-btn{background:none;border:none;border-radius:var(--radius-sm);color:var(--color-gray);cursor:pointer;font-size:.8125rem;font-weight:600;letter-spacing:.05em;padding:.35rem 1rem;text-transform:uppercase;transition:all var(--transition-fast)}.desktop-view-btn:hover{color:var(--color-white)}.desktop-view-btn--active{background-color:var(--color-gold);color:var(--color-black)}.calendar-cell--droptarget:hover{background-color:#c9a22714;cursor:copy}.calendar-cell{cursor:default}.calendar-cell:hover{background-color:#ffffff05}.appointment-card--dragging{cursor:grabbing;opacity:.4}.appointment-card--clickable{cursor:grab}.desktop-month-view{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);overflow:hidden}.desktop-month-header{border-bottom:1px solid var(--color-black-lighter);display:grid;grid-template-columns:repeat(7,1fr)}.desktop-month-dow{background-color:var(--color-black-lighter);color:var(--color-gray);font-size:.75rem;font-weight:700;letter-spacing:.08em;padding:.6rem;text-align:center;text-transform:uppercase}.desktop-month-grid{display:grid;grid-template-columns:repeat(7,1fr)}.desktop-month-cell{border-bottom:1px solid var(--color-black-lighter);border-right:1px solid var(--color-black-lighter);cursor:pointer;min-height:110px;overflow:hidden;padding:.5rem;position:relative;transition:background-color var(--transition-fast)}.desktop-month-cell:hover{background-color:#c9a2270d}.desktop-month-cell:nth-child(7n){border-right:none}.desktop-month-cell--other{opacity:.4}.desktop-month-cell--today{background-color:#c9a2270f}.desktop-month-cell__num{align-items:center;border-radius:50%;color:var(--color-white);display:flex;font-size:.875rem;font-weight:500;height:26px;justify-content:center;margin-bottom:.35rem;width:26px}.desktop-month-cell__num--today{background-color:var(--color-gold);color:var(--color-black);font-weight:700}.desktop-month-apt{align-items:center;background-color:var(--color-black);border-left:3px solid var(--color-gold);border-radius:3px;cursor:pointer;display:flex;font-size:.6875rem;gap:.3rem;margin-bottom:.2rem;overflow:hidden;padding:.2rem .4rem;transition:background-color var(--transition-fast);white-space:nowrap}.desktop-month-apt:hover{background-color:var(--color-black-lighter)}.desktop-month-apt--scheduled{border-left-color:#60a5fa}.desktop-month-apt--confirmed{border-left-color:#a78bfa}.desktop-month-apt--in_progress{border-left-color:#fbbf24}.desktop-month-apt--completed{border-left-color:#4ade80}.desktop-month-apt--cancelled{border-left-color:#f87171}.desktop-month-apt--no_show{border-left-color:#9ca3af}.desktop-month-apt--event{border-left-color:var(--color-gold)}.desktop-month-apt__time{color:var(--color-gold);flex-shrink:0;font-weight:600}.desktop-month-apt__name{color:var(--color-white);overflow:hidden;text-overflow:ellipsis}.desktop-month-overflow{color:var(--color-gray);cursor:pointer;font-size:.6875rem;font-weight:500;padding:.1rem .4rem}.desktop-month-overflow:hover{color:var(--color-gold)}.desktop-month-cell__add{background-color:var(--color-gold);border-radius:50%;bottom:.35rem;color:var(--color-black);cursor:pointer;display:none;font-size:1rem;font-weight:700;height:20px;line-height:20px;position:absolute;right:.35rem;text-align:center;width:20px}.desktop-month-cell:hover .desktop-month-cell__add{display:block}.invoices-page{animation:fadeIn .3s ease}.invoices-toolbar{margin-bottom:var(--spacing-lg)}.invoice-number{color:var(--color-gold);font-family:monospace;font-weight:600}.invoice-amount{color:var(--color-white);font-weight:600}.invoice-actions{display:flex;gap:.5rem}.clickable-row{cursor:pointer;transition:background-color var(--transition-fast)}.clickable-row:hover{background-color:var(--color-black-lighter)}.service-selector{grid-gap:var(--spacing-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.service-card{background-color:var(--color-black);border:2px solid var(--color-black-lighter);cursor:pointer;position:relative}.service-card:hover{background-color:var(--color-black-light);border-color:var(--color-gray-dark)}.service-card--selected{background-color:#c9a2271a;border-color:var(--color-gold)}.service-card__header{margin-bottom:.5rem}.service-card__name{font-size:.9375rem;font-weight:600}.service-card__price{color:var(--color-gold);font-size:1rem;font-weight:700}.service-card__desc{color:var(--color-gray);font-size:.8125rem;line-height:1.4;margin:0}.service-card__check{align-items:center;background-color:var(--color-gold);border-radius:50%;color:var(--color-black);display:flex;height:24px;justify-content:center;position:absolute;right:.5rem;top:.5rem;width:24px}.service-selector--addons{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.addon-chip{align-items:center;background-color:var(--color-black);border:1px solid var(--color-black-lighter);border-radius:100px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem 1rem;transition:all var(--transition-fast)}.addon-chip:hover{background-color:var(--color-black-light);border-color:var(--color-gray-dark)}.addon-chip--selected{background-color:#c9a22726;border-color:var(--color-gold)}.addon-chip__name{color:var(--color-white);font-size:.875rem}.addon-chip__price{color:var(--color-gold);font-size:.8125rem;font-weight:600}.selected-services{background-color:var(--color-black);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);padding:var(--spacing-md)}.selected-service-row{align-items:center;border-bottom:1px solid var(--color-black-lighter);display:flex;justify-content:space-between;padding:.5rem 0}.selected-service-row:last-child{border-bottom:none}.selected-service-name{color:var(--color-white);flex:1 1;font-size:.9375rem}.selected-service-price{align-items:center;display:flex;margin-right:var(--spacing-sm)}.price-input,.selected-service-price{color:var(--color-gold);font-weight:600}.price-input{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-sm);font-size:.9375rem;padding:.25rem .5rem;text-align:right;width:80px}.price-input:focus{border-color:var(--color-gold);outline:none}.invoice-summary{background-color:var(--color-black);border-radius:var(--radius-sm);margin:var(--spacing-md) 0;padding:var(--spacing-md)}.invoice-summary__row{color:var(--color-gray-light);display:flex;font-size:.9375rem;justify-content:space-between;padding:.5rem 0}.invoice-summary__row--total{border-top:1px solid var(--color-gray-dark);color:var(--color-gold);font-size:1.125rem;font-weight:600;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm)}.invoice-detail__header{align-items:flex-start;border-bottom:1px solid var(--color-black-lighter);display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md)}.invoice-detail__company{color:var(--color-gold);font-family:var(--font-display);font-size:1.5rem;letter-spacing:.2em;margin:0 0 .25rem}.invoice-detail__tagline{color:var(--color-gray);font-size:.75rem;letter-spacing:.1em;margin:0;text-transform:uppercase}.invoice-detail__info{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:1fr 1fr;margin-bottom:var(--spacing-lg)}.invoice-detail__label{color:var(--color-gray);font-size:.75rem;letter-spacing:.1em;margin:0 0 .25rem;text-transform:uppercase}.invoice-detail__value{color:var(--color-white);margin:0 0 var(--spacing-sm) 0}.invoice-detail__table{margin-bottom:var(--spacing-md)}.invoice-detail__notes{border-top:1px solid var(--color-black-lighter);margin-top:var(--spacing-md);padding-top:var(--spacing-md)}.invoice-items{display:flex;flex-direction:column;gap:var(--spacing-sm)}.invoice-item-row{grid-gap:var(--spacing-sm);align-items:center;display:grid;gap:var(--spacing-sm);grid-template-columns:1fr 80px 100px auto}.invoice-item-qty{text-align:center}.invoice-item-price{text-align:right}.customer-select-wrapper{align-items:flex-start;display:flex;gap:var(--spacing-sm)}.customer-select-wrapper .form-select{flex:1 1}.new-customer-btn{flex-shrink:0;white-space:nowrap}.new-customer-form{background-color:var(--color-black);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);padding:var(--spacing-md)}.new-customer-form .form-row{margin-bottom:var(--spacing-sm)}.new-customer-form .form-row:last-of-type{margin-bottom:var(--spacing-md)}.new-customer-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.add-vehicle-toggle{border-top:1px solid var(--color-black-lighter);margin:var(--spacing-md) 0;padding:var(--spacing-sm) 0}.checkbox-label{align-items:center;color:var(--color-gray-light);cursor:pointer;display:flex;font-size:.9375rem;gap:var(--spacing-sm)}.checkbox-label input[type=checkbox]{accent-color:var(--color-gold);cursor:pointer;height:18px;width:18px}.vehicle-fields{background-color:var(--color-black-lighter);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-md)}.vehicle-fields .form-row{margin-bottom:var(--spacing-sm)}.vehicle-fields .form-row:last-child{margin-bottom:0}.vehicle-type-selector{background-color:var(--color-black);border-radius:var(--radius-md);display:flex;gap:var(--spacing-sm);padding:.25rem;width:fit-content}.vehicle-type-btn{background:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-sm);color:var(--color-gray-light);cursor:pointer;font-size:.9375rem;font-weight:500;padding:.75rem 1.5rem;transition:all var(--transition-fast)}.vehicle-type-btn:hover{border-color:var(--color-gray-dark);color:var(--color-white)}.vehicle-type-btn--active{background-color:var(--color-gold);border-color:var(--color-gold);color:var(--color-black);font-weight:600}.vehicle-type-input{margin-top:var(--spacing-sm)}.datetime-inputs{grid-gap:var(--spacing-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:1fr 1fr}.form-hint{color:var(--color-gray);display:block;font-size:.8125rem;font-style:italic;margin-top:.5rem}.service-card__pricing-simple{align-items:center;display:flex;gap:.5rem}.service-card__price-separator{color:var(--color-gray-dark);font-size:.875rem;font-weight:400}.service-card__price--active{color:var(--color-gold);font-size:1.0625rem;font-weight:700}@media (max-width:768px){.invoice-item-row,.service-selector{grid-template-columns:1fr}.filter-tabs{overflow-x:auto;width:100%}.invoice-detail__info{grid-template-columns:1fr}.selected-service-row{flex-wrap:wrap;gap:.5rem}.selected-service-name{flex-basis:100%}.datetime-inputs{grid-template-columns:1fr}.vehicle-type-selector{width:100%}.vehicle-type-btn{flex:1 1}}.conflict-warning__message{color:var(--color-white);font-size:1rem;margin-bottom:var(--spacing-md)}.conflict-warning__list{background-color:var(--color-black);border-radius:var(--radius-sm);list-style:none;margin:0 0 var(--spacing-md) 0;padding:0;padding:var(--spacing-sm)}.conflict-warning__item{border-bottom:1px solid var(--color-black-lighter);color:var(--color-gray);padding:var(--spacing-xs) 0}.conflict-warning__item:last-child{border-bottom:none}.conflict-warning__item strong{color:var(--color-white)}.conflict-warning__question{color:var(--color-gold);font-weight:500;margin-bottom:var(--spacing-md)}.tax-toggle{background-color:var(--color-black);border-radius:var(--radius-md);gap:var(--spacing-md);justify-content:space-between;padding:var(--spacing-md)}.tax-rate-input,.tax-toggle{align-items:center;display:flex}.tax-rate-input{color:var(--color-gray-light);gap:var(--spacing-xs)}.tax-input{font-size:.9375rem;padding:.375rem .5rem;text-align:right;width:70px}.payment-methods{padding:var(--spacing-sm) 0}.payment-methods__subtitle{color:var(--color-gray-light);font-size:1rem;margin-bottom:var(--spacing-lg);text-align:center}.payment-methods__grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(2,1fr)}.payment-method-btn{align-items:center;background-color:var(--color-black);border:2px solid var(--color-black-lighter);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-lg) var(--spacing-md);transition:all var(--transition-fast)}.payment-method-btn:hover{background-color:var(--color-black-light);border-color:var(--method-color,var(--color-gold));transform:translateY(-2px)}.payment-method-btn:active{transform:translateY(0)}.payment-method-btn__icon{align-items:center;background-color:var(--color-black-light);border-radius:var(--radius-md);display:flex;height:48px;justify-content:center;width:48px}.payment-method-btn__icon svg{flex-shrink:0}.payment-method-btn__name{color:var(--color-white);font-size:.9375rem;font-weight:600}@media (max-width:480px){.payment-methods__grid{grid-template-columns:1fr}}.services-page{animation:fadeIn .3s ease}.services-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.service-card{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);padding:var(--spacing-md);transition:all var(--transition-fast)}.service-card:hover{border-color:#c9a2274d}.service-card--inactive{opacity:.6}.service-card__header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm)}.service-card__name{color:var(--color-white);font-size:1.25rem;margin:0}.service-card__inactive-badge{background-color:#6b728033;border-radius:var(--radius-sm);color:#9ca3af;font-size:.6875rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.service-card__description{color:var(--color-gray);font-size:.875rem;line-height:1.5;margin-bottom:var(--spacing-md)}.service-card__pricing{grid-gap:var(--spacing-sm);background-color:var(--color-black);border-radius:var(--radius-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr);margin-bottom:var(--spacing-md);padding:var(--spacing-sm)}.service-card__price-item{display:flex;flex-direction:column;gap:.25rem}.service-card__price-label{color:var(--color-gray);font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.service-card__price-value{color:var(--color-gold);font-size:1.25rem;font-weight:700}.service-card__duration{align-items:center;color:var(--color-gray);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:var(--spacing-md)}.service-card__actions{border-top:1px solid var(--color-black-lighter);display:flex;gap:var(--spacing-sm);padding-top:var(--spacing-md)}.service-card__actions .btn{flex:1 1}.services-section-title{color:var(--color-gray-light);font-size:1.125rem;font-weight:600;margin:0 0 var(--spacing-md) 0}.category-selector{background-color:var(--color-black);border-radius:var(--radius-md);display:flex;gap:var(--spacing-xs);padding:.25rem;width:fit-content}.category-btn{background:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-sm);color:var(--color-gray-light);cursor:pointer;font-size:.875rem;font-weight:500;padding:.625rem 1.25rem;transition:all var(--transition-fast)}.category-btn:hover{border-color:var(--color-gray-dark);color:var(--color-white)}.category-btn--active{background-color:var(--color-gold);border-color:var(--color-gold);color:var(--color-black);font-weight:600}@media (max-width:768px){.services-grid{grid-template-columns:1fr}}.settings-page{animation:fadeIn .3s ease}.settings-section{margin-bottom:var(--spacing-xl)}.settings-section__header{margin-bottom:var(--spacing-md)}.settings-section__header h2{font-size:1.25rem;margin:0 0 .5rem}.settings-section__desc{color:var(--color-gray);font-size:.9375rem;margin:0}.settings-card{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);padding:var(--spacing-lg)}.settings-card__loading{align-items:center;color:var(--color-gray);display:flex;gap:var(--spacing-md)}.settings-card__content{display:flex;flex-direction:column;gap:var(--spacing-md)}.qb-status{align-items:flex-start;border-radius:var(--radius-sm);display:flex;gap:var(--spacing-sm);padding:var(--spacing-md)}.qb-status--connected{background-color:#22c55e1a;color:var(--color-success)}.qb-status--disconnected{background-color:#6b72801a;color:var(--color-gray)}.qb-status strong{color:var(--color-white);display:block;margin-bottom:.25rem}.qb-status__detail{display:block;font-size:.875rem;opacity:.8}.qb-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.qb-info{background-color:var(--color-black);border-radius:var(--radius-sm);margin-top:var(--spacing-sm);padding:var(--spacing-md)}.qb-info h4{color:var(--color-gray-light);font-size:.875rem;margin:0 0 var(--spacing-sm) 0}.qb-info ul{color:var(--color-gray);font-size:.875rem;margin:0;padding-left:1.25rem}.qb-info li{margin-bottom:.25rem}.alert{align-items:center;border-radius:var(--radius-sm);display:flex;font-size:.9375rem;justify-content:space-between;margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.alert--success{background-color:#22c55e26;border:1px solid #22c55e4d;color:var(--color-success)}.alert--error{background-color:#ef444426;border:1px solid #ef44444d;color:var(--color-error)}.alert__close{background:none;border:none;color:inherit;cursor:pointer;font-size:1.25rem;line-height:1;opacity:.7;padding:0}.alert__close:hover{opacity:1}.form-row--3{grid-gap:var(--spacing-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:repeat(3,1fr)}@media (max-width:768px){.qb-actions{flex-direction:column}.qb-actions .btn{width:100%}.form-row--3{grid-template-columns:1fr}}.mileage-page{animation:fadeIn .3s ease}.mileage-summary-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);margin-bottom:var(--spacing-lg)}.mileage-card{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);padding:var(--spacing-lg);text-align:center}.mileage-card--highlight{background-color:#c9a2271a;border-color:var(--color-gold)}.mileage-card__label{color:var(--color-gray);font-size:.875rem;letter-spacing:.05em;margin-bottom:var(--spacing-xs);text-transform:uppercase}.mileage-card__value{color:var(--color-gold);font-family:var(--font-display);font-size:2.5rem;font-weight:700}.mileage-card__sublabel{color:var(--color-gray);font-size:.75rem;margin-top:var(--spacing-xs)}.mileage-section{margin-bottom:var(--spacing-xl)}.mileage-section h2{font-size:1.25rem;margin-bottom:var(--spacing-md)}.monthly-chart{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);padding:var(--spacing-md)}.monthly-bar{align-items:center;display:flex;gap:var(--spacing-sm);padding:var(--spacing-xs) 0}.monthly-bar__label{color:var(--color-gray);font-size:.875rem;width:40px}.monthly-bar__track{background-color:var(--color-black);border-radius:var(--radius-sm);flex:1 1;height:24px;overflow:hidden}.monthly-bar__fill{background:linear-gradient(90deg,var(--color-gold-dark),var(--color-gold));border-radius:var(--radius-sm);height:100%;min-width:4px;transition:width .5s ease}.monthly-bar__value{color:var(--color-white);font-size:.875rem;font-weight:600;text-align:right;width:70px}.trip-address{font-size:.875rem}.trip-address__city{color:var(--color-gray);display:block;font-size:.75rem}.trip-miles{color:var(--color-gold);font-weight:600}.mileage-info{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);padding:var(--spacing-lg)}.mileage-info h3{color:var(--color-white);font-size:1rem;margin-bottom:var(--spacing-sm)}.mileage-info ul{color:var(--color-gray-light);margin:0 0 var(--spacing-md) 0;padding-left:1.25rem}.mileage-info li{margin-bottom:.25rem}.mileage-info__note{border-top:1px solid var(--color-black-lighter);color:var(--color-gray);font-size:.875rem;margin:0;padding-top:var(--spacing-sm)}.alert--warning{background-color:#f59e0b26;border:1px solid #f59e0b4d;border-radius:var(--radius-sm);color:var(--color-warning);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.daily-route-section{background-color:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.daily-route-section h3{color:var(--color-white);font-size:1.125rem;margin:0 0 var(--spacing-xs) 0}.daily-route-desc{color:var(--color-gray);font-size:.875rem;margin:0 0 var(--spacing-md) 0}.daily-route-form{align-items:center;display:flex;gap:var(--spacing-sm)}.daily-route-form .form-input{width:auto}@media (max-width:768px){.mileage-summary-grid{grid-template-columns:1fr}.mileage-card__value{font-size:2rem}.monthly-bar{flex-wrap:wrap}.monthly-bar__track{margin-top:.25rem;order:3;width:100%}.trip-address__city{display:none}}.trash-page{animation:fadeIn .3s ease}.trash-toolbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg)}.filter-tabs{background-color:var(--color-black-light);border-radius:var(--radius-md);display:flex;gap:var(--spacing-xs);padding:.25rem;width:fit-content}.filter-tab{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-gray);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all var(--transition-fast)}.filter-tab:hover{color:var(--color-white)}.filter-tab--active{background-color:var(--color-gold);color:var(--color-black)}.filter-tab--active .trash-badge{background-color:var(--color-black);color:var(--color-gold)}.trash-badge{background-color:var(--color-danger);border-radius:100px;color:#fff;font-size:.75rem;font-weight:600;padding:.125rem .5rem}.trash-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.trash-item{align-items:center;background-color:var(--color-black-light);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;justify-content:space-between;padding:var(--spacing-md);transition:border-color var(--transition-fast)}.trash-item:hover{border-color:var(--color-gray)}.trash-item__content{display:flex;flex:1 1;flex-direction:column;gap:.5rem}.trash-item__main{align-items:center;display:flex;gap:1rem}.trash-item__name{color:var(--color-white);font-size:1rem;font-weight:500}.trash-item__detail{align-items:center;color:var(--color-gray);display:flex;font-size:.875rem;gap:.5rem}.trash-item__badge{background-color:var(--color-warning);border-radius:var(--radius-sm);color:var(--color-black);font-size:.7rem;font-weight:500;padding:.125rem .375rem}.trash-item__meta{align-items:center;display:flex;gap:1rem;margin-top:.25rem}.trash-item__amount{color:var(--color-gold);font-weight:600}.trash-item__status{color:var(--color-gray);font-size:.875rem;text-transform:capitalize}.trash-item__related{background-color:#ffffff1a;border-radius:var(--radius-sm);color:var(--color-gray);font-size:.75rem;padding:.125rem .5rem}.trash-item__deleted{color:var(--color-gray);font-size:.75rem;font-style:italic}.trash-item__actions{display:flex;flex-shrink:0;gap:var(--spacing-sm)}.empty-trash-confirm{text-align:center}.empty-trash-confirm p{color:var(--color-white);margin-bottom:var(--spacing-md)}.empty-trash-confirm__warning{color:var(--color-danger)!important;font-weight:500}@media (max-width:768px){.trash-item{align-items:flex-start;flex-direction:column;gap:var(--spacing-md)}.trash-item__actions{justify-content:flex-end;width:100%}.trash-item__main{align-items:flex-start;flex-direction:column;gap:.25rem}.filter-tabs{flex-wrap:wrap}}.users-page{padding:var(--spacing-lg)}.users__success-banner{background:#10b98126;border:1px solid #10b98166;border-radius:var(--radius-sm);color:#10b981}.users__form-error,.users__success-banner{font-size:.875rem;margin-bottom:var(--spacing-md);padding:.75rem 1rem}.users__form-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:var(--radius-sm);color:#ef4444}.users__table-wrap{background:var(--color-black-light);border:1px solid var(--color-black-lighter);border-radius:var(--radius-md);overflow:hidden}.users__table{border-collapse:collapse;width:100%}.users__table th{background:#0003;color:var(--color-gray-dark);font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.75rem 1rem;text-align:left;text-transform:uppercase}.users__table td,.users__table th{border-bottom:1px solid var(--color-black-lighter)}.users__table td{color:var(--color-gray-light);font-size:.875rem;padding:.875rem 1rem;vertical-align:middle}.users__table tr:last-child td{border-bottom:none}.users__row--inactive td{opacity:.5}.users__user-cell{align-items:center;display:flex;gap:.75rem}.users__avatar{align-items:center;background:var(--color-gold);border-radius:50%;color:var(--color-black);display:flex;flex-shrink:0;font-size:.8rem;font-weight:700;height:32px;justify-content:center;width:32px}.users__username{color:#e5e5e5;font-weight:500}.users__email{color:var(--color-gray-dark)}.users__role-badge{border-radius:4px;font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.users__role-badge--admin{background:#c9a22733;color:var(--color-gold)}.users__role-badge--manager{background:#3b82f633;color:#3b82f6}.users__role-badge--tech{background:#10b98133;color:#10b981}.users__role-select{background:var(--color-black-lighter);border:1px solid var(--color-gray-dark);border-radius:var(--radius-sm);color:var(--color-gray-light);cursor:pointer;font-size:.8rem;padding:.3rem .5rem}.users__role-select:focus{border-color:var(--color-gold);outline:none}.users__status{border-radius:4px;font-size:.75rem;font-weight:600;padding:2px 8px}.users__status--active{background:#10b98126;color:#10b981}.users__status--inactive{background:#6b728026;color:#6b7280}.users__actions{align-items:center;display:flex;gap:.5rem}@media (max-width:768px){.users-page{padding:var(--spacing-md)}.users__table-wrap{overflow-x:auto}.users__table{min-width:600px}}.public-invoice-page{align-items:flex-start;background:#f4f4f4;display:flex;justify-content:center;min-height:100vh;padding:40px 16px}.public-invoice-card{background:#fff;border-radius:8px;box-shadow:0 2px 16px #0000001a;max-width:680px;overflow:hidden;width:100%}.public-invoice-header{align-items:center;background:#0a0a0a;display:flex;gap:20px;padding:28px 32px}.public-invoice-logo{height:52px;object-fit:contain;width:auto}.public-invoice-title{flex:1 1}.public-invoice-title h1{color:#c9a227;font-size:1.3rem;font-weight:700;margin:0 0 4px}.public-invoice-title p{color:#888;font-size:.85rem;margin:0}.public-invoice-badge{border-radius:20px;font-size:.8rem;font-weight:700;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase;white-space:nowrap}.public-invoice-badge.paid{background:#22c55e26;border:1px solid #22c55e4d;color:#16a34a}.public-invoice-badge.unpaid{background:#f59e0b26;border:1px solid #f59e0b4d;color:#d97706}.public-invoice-success{background:#f0fdf4;border-left:4px solid #22c55e;color:#15803d;font-size:.9rem;font-weight:500;padding:14px 32px}.public-invoice-section{border-bottom:1px solid #e5e5e5;padding:24px 32px}.public-invoice-section h2{color:#888;font-size:.75rem;font-weight:600;letter-spacing:.8px;margin:0 0 10px;text-transform:uppercase}.public-invoice-customer{color:#111;font-size:1rem;font-weight:600;margin:0 0 4px}.public-invoice-section p{color:#555;font-size:.9rem;margin:2px 0}.public-invoice-table{border-collapse:collapse;font-size:.9rem;width:100%}.public-invoice-table th{background:#f9f9f9;border-bottom:1px solid #e5e5e5;color:#555;font-size:.78rem;letter-spacing:.5px;padding:8px 12px;text-align:left;text-transform:uppercase}.public-invoice-table td:not(:first-child),.public-invoice-table th:not(:first-child){text-align:right}.public-invoice-table td{border-bottom:1px solid #f0f0f0;color:#333;padding:10px 12px}.public-invoice-table tbody tr:last-child td{border-bottom:none}.public-invoice-totals{border-bottom:1px solid #e5e5e5;padding:20px 32px}.public-invoice-totals-row{color:#555;display:flex;font-size:.9rem;justify-content:space-between;padding:4px 0}.public-invoice-totals-row.total{border-top:1px solid #e5e5e5;color:#111;font-size:1.1rem;font-weight:700;margin-top:8px;padding-top:12px}.public-invoice-notes p{font-style:italic}.public-invoice-pay{border-bottom:1px solid #e5e5e5;padding:28px 32px;text-align:center}.public-invoice-pay-btn{background:#c9a227;border:none;border-radius:6px;color:#0a0a0a;cursor:pointer;font-size:1rem;font-weight:700;max-width:320px;padding:14px 40px;transition:background .2s;width:100%}.public-invoice-pay-btn:hover:not(:disabled){background:#d4af37}.public-invoice-pay-btn:disabled{cursor:not-allowed;opacity:.7}.public-invoice-secure{color:#999;font-size:.78rem;margin:10px 0 0}.public-invoice-paid-footer{border-bottom:1px solid #e5e5e5;color:#16a34a;font-size:.95rem;font-weight:600;padding:20px 32px;text-align:center}.public-invoice-footer{background:#0a0a0a;padding:20px 32px;text-align:center}.public-invoice-footer p{color:#888;font-size:.8rem;margin:2px 0}.public-invoice-error,.public-invoice-loading{color:#555;font-size:1rem;padding:60px 20px;text-align:center}@media (max-width:600px){.public-invoice-header{flex-wrap:wrap;gap:12px;padding:20px}.public-invoice-footer,.public-invoice-pay,.public-invoice-section,.public-invoice-totals{padding-left:20px;padding-right:20px}.public-invoice-table td,.public-invoice-table th{font-size:.82rem;padding:8px 6px}}:root{--color-black:#0a0a0a;--color-black-light:#141414;--color-black-lighter:#1a1a1a;--color-black-hover:#222;--color-gold:#c9a227;--color-gold-light:#d4af37;--color-gold-dark:#b8960f;--color-white:#fff;--color-gray-light:#e5e5e5;--color-gray:#888;--color-gray-dark:#444;--color-success:#22c55e;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--font-primary:"Montserrat",-apple-system,BlinkMacSystemFont,sans-serif;--font-display:"Playfair Display",Georgia,serif;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px #0006;--shadow-lg:0 10px 25px #00000080;--transition-fast:0.15s ease;--transition-normal:0.25s ease;--sidebar-width:260px;--header-height:64px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;background-color:#0a0a0a;background-color:var(--color-black);color:#fff;color:var(--color-white);font-family:Montserrat,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-primary);line-height:1.6;min-height:100vh;overflow-x:hidden}a{color:#c9a227;color:var(--color-gold);text-decoration:none;transition:color .15s ease;transition:color var(--transition-fast)}a:hover{color:#d4af37;color:var(--color-gold-light)}button{cursor:pointer}button,input,select,textarea{font-family:Montserrat,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-primary)}h1,h2,h3,h4,h5,h6{color:#c9a227;color:var(--color-gold);font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-weight:400;letter-spacing:.02em;line-height:1.3}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{color:#e5e5e5;color:var(--color-gray-light);margin-bottom:1rem;margin-bottom:var(--spacing-sm)}.text-gold{color:#c9a227;color:var(--color-gold)}.text-white{color:#fff;color:var(--color-white)}.text-gray{color:#888;color:var(--color-gray)}.text-success{color:#22c55e;color:var(--color-success)}.text-warning{color:#f59e0b;color:var(--color-warning)}.text-error{color:#ef4444;color:var(--color-error)}.mt-sm{margin-top:1rem;margin-top:var(--spacing-sm)}.mt-md{margin-top:1.5rem;margin-top:var(--spacing-md)}.mt-lg{margin-top:2rem;margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:1rem;margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:1.5rem;margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:2rem;margin-bottom:var(--spacing-lg)}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#141414;background:var(--color-black-light)}::-webkit-scrollbar-thumb{background:#444;background:var(--color-gray-dark);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#888;background:var(--color-gray)}.app{max-width:100vw;overflow-x:hidden}.app,.app__content{display:flex;min-height:100vh}.app__content{flex:1 1;flex-direction:column;margin-left:260px;margin-left:var(--sidebar-width);min-width:0}.app__main{flex:1 1;padding:2rem;padding:var(--spacing-lg);padding-bottom:calc(2rem + 70px);padding-bottom:calc(var(--spacing-lg) + 70px);padding-top:calc(64px + 2rem);padding-top:calc(var(--header-height) + var(--spacing-lg))}.mobile-nav{background-color:#141414;background-color:var(--color-black-light);border-top:1px solid #1a1a1a;border-top:1px solid var(--color-black-lighter);bottom:0;display:none;left:0;padding:.5rem 0 calc(.5rem + env(safe-area-inset-bottom));position:fixed;right:0;z-index:100}.mobile-nav__list{display:flex;justify-content:space-around;list-style:none;margin:0;padding:0}.mobile-nav__link{align-items:center;color:#888;color:var(--color-gray);display:flex;flex-direction:column;font-size:.625rem;gap:.25rem;letter-spacing:.05em;padding:.5rem;text-transform:uppercase;transition:color .15s ease;transition:color var(--transition-fast)}.mobile-nav__link--active{color:#c9a227;color:var(--color-gold)}.mobile-nav__icon{height:24px;width:24px}.card{background-color:#141414;background-color:var(--color-black-light);border:1px solid #1a1a1a;border:1px solid var(--color-black-lighter);border-radius:8px;border-radius:var(--radius-md);padding:1.5rem;padding:var(--spacing-md)}.card--hover:hover{border-color:#c9a2274d;box-shadow:0 4px 6px #0006;box-shadow:var(--shadow-md)}.btn{align-items:center;border:none;border-radius:4px;border-radius:var(--radius-sm);display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;letter-spacing:.05em;padding:.75rem 1.5rem;text-transform:uppercase;transition:all .15s ease;transition:all var(--transition-fast)}.btn--primary{background-color:#c9a227;background-color:var(--color-gold);color:#0a0a0a;color:var(--color-black)}.btn--primary:hover{background-color:#d4af37;background-color:var(--color-gold-light);box-shadow:0 4px 12px #c9a2274d;transform:translateY(-1px)}.btn--secondary{background-color:#1a1a1a;background-color:var(--color-black-lighter);border:1px solid #444;border:1px solid var(--color-gray-dark);color:#fff;color:var(--color-white)}.btn--secondary:hover{background-color:#222;background-color:var(--color-black-hover);border-color:#888;border-color:var(--color-gray)}.btn--outline{background-color:initial;border:1px solid #c9a227;border:1px solid var(--color-gold);color:#c9a227;color:var(--color-gold)}.btn--outline:hover{background-color:#c9a227;background-color:var(--color-gold);color:#0a0a0a;color:var(--color-black)}.btn--danger{background-color:#ef4444;background-color:var(--color-error);color:#fff;color:var(--color-white)}.btn--danger:hover{background-color:#dc2626}.btn--small{font-size:.75rem;padding:.5rem 1rem}.btn--icon{min-width:36px;padding:.5rem}.form-group{margin-bottom:1.5rem;margin-bottom:var(--spacing-md)}.form-label{color:#888;color:var(--color-gray);display:block;font-size:.75rem;font-weight:600;letter-spacing:.1em;margin-bottom:.5rem;margin-bottom:var(--spacing-xs);text-transform:uppercase}.form-input,.form-select,.form-textarea{background-color:#0a0a0a;background-color:var(--color-black);border:1px solid #444;border:1px solid var(--color-gray-dark);border-radius:4px;border-radius:var(--radius-sm);color:#fff;color:var(--color-white);font-size:.9375rem;padding:.75rem 1rem;transition:border-color .15s ease,box-shadow .15s ease;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#c9a227;border-color:var(--color-gold);box-shadow:0 0 0 2px #c9a22733;outline:none}.form-input::placeholder{color:#888;color:var(--color-gray)}.form-select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;cursor:pointer;padding-right:2.5rem}.form-textarea{min-height:100px;resize:vertical}.table-container{background-color:#141414;background-color:var(--color-black-light);border:1px solid #1a1a1a;border:1px solid var(--color-black-lighter);border-radius:8px;border-radius:var(--radius-md);overflow-x:auto}.table{border-collapse:collapse;width:100%}.table td,.table th{border-bottom:1px solid #1a1a1a;border-bottom:1px solid var(--color-black-lighter);padding:1rem;text-align:left}.table th{background-color:#1a1a1a;background-color:var(--color-black-lighter);color:#888;color:var(--color-gray);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.table tbody tr:hover{background-color:#c9a2270d}.table tbody tr:last-child td{border-bottom:none}.badge{align-items:center;border-radius:100px;display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.25rem .75rem;text-transform:uppercase}.badge--scheduled{background-color:#3b82f633;color:#60a5fa}.badge--confirmed{background-color:#8b5cf633;color:#a78bfa}.badge--in_progress{background-color:#f59e0b33;color:#fbbf24}.badge--completed{background-color:#22c55e33;color:#4ade80}.badge--cancelled{background-color:#ef444433;color:#f87171}.badge--draft,.badge--no_show{background-color:#6b728033;color:#9ca3af}.badge--sent{background-color:#3b82f633;color:#60a5fa}.badge--paid{background-color:#22c55e33;color:#4ade80}.badge--overdue{background-color:#ef444433;color:#f87171}.modal-overlay{align-items:center;background-color:#000c;display:flex;inset:0;justify-content:center;padding:1.5rem;padding:var(--spacing-md);position:fixed;z-index:1000}.modal{background-color:#141414;background-color:var(--color-black-light);border:1px solid #1a1a1a;border:1px solid var(--color-black-lighter);border-radius:12px;border-radius:var(--radius-lg);max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.modal__header{align-items:center;border-bottom:1px solid #1a1a1a;border-bottom:1px solid var(--color-black-lighter);display:flex;justify-content:space-between;padding:1.5rem;padding:var(--spacing-md)}.modal__title{font-size:1.25rem;margin:0}.modal__close{background:none;border:none;color:#888;color:var(--color-gray);cursor:pointer;font-size:1.5rem;line-height:1;padding:.25rem}.modal__close:hover{color:#fff;color:var(--color-white)}.modal__body,.modal__footer{padding:1.5rem;padding:var(--spacing-md)}.modal__footer{border-top:1px solid #1a1a1a;border-top:1px solid var(--color-black-lighter);display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.modal__footer .btn{font-size:.75rem;min-width:auto;padding:.5rem 1rem}.spinner{animation:spin 1s linear infinite;border:3px solid #1a1a1a;border-top-color:#c9a227;border:3px solid var(--color-black-lighter);border-radius:50%;border-top-color:var(--color-gold);height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.loading-container{align-items:center;display:flex;justify-content:center;min-height:200px}.empty-state{color:#888;color:var(--color-gray);padding:3rem;padding:var(--spacing-xl);text-align:center}.empty-state__icon{font-size:3rem;margin-bottom:1.5rem;margin-bottom:var(--spacing-md);opacity:.5}.empty-state__title{color:#fff;color:var(--color-white);font-size:1.25rem;margin-bottom:.5rem;margin-bottom:var(--spacing-xs)}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem;margin-bottom:var(--spacing-lg)}.page-header__title{margin:0}.page-header__actions{display:flex;gap:1rem;gap:var(--spacing-sm)}.search-bar{max-width:400px;position:relative}.search-bar__input{padding-left:2.5rem;width:100%}.search-bar__icon{color:#888;color:var(--color-gray);left:1rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.grid{grid-gap:1.5rem;grid-gap:var(--spacing-md);display:grid;gap:1.5rem;gap:var(--spacing-md)}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}@media (max-width:1024px){.grid--3,.grid--4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.app__content{margin-left:0}.app__content,.app__main{max-width:100%;width:100%}.app__main{box-sizing:border-box;padding:1rem;padding:var(--spacing-sm);padding-bottom:calc(1rem + 80px);padding-bottom:calc(var(--spacing-sm) + 80px);padding-top:calc(64px + 1rem);padding-top:calc(var(--header-height) + var(--spacing-sm))}.grid--2,.grid--3,.grid--4{grid-template-columns:1fr}.mobile-nav{display:block}.sidebar{display:none}.page-header{align-items:flex-start;flex-direction:column;gap:1rem;gap:var(--spacing-sm)}.page-header__actions{flex-wrap:wrap;width:100%}.page-header__actions .btn{flex:1 1;min-width:0}.modal{margin:1rem;margin:var(--spacing-sm);max-height:calc(100vh - 1.5rem);max-height:calc(100vh - var(--spacing-md));max-width:calc(100vw - 2rem);width:100%}.table-container{font-size:.875rem}.table td,.table th{padding:.75rem .5rem}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease}.slide-in{animation:slideIn .3s ease}.badge--converted{background-color:#28a745;color:#fff}
/*# sourceMappingURL=main.cde84b9e.css.map*/