.login-container{align-items:center;background:linear-gradient(135deg,#1a1a1a,#121212);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-box{background:#1e1e1e;border:1px solid #333;border-radius:16px;box-shadow:0 20px 60px #00000080;max-width:400px;padding:40px;width:100%}.login-logo{margin-bottom:32px;text-align:center}.login-logo .logo-image{height:auto;margin-bottom:16px;max-width:200px}.logo-icon{display:block;font-size:48px;margin-bottom:12px}.login-logo h1{color:#d4af37;font-size:28px;font-weight:700;margin-bottom:8px}.login-logo p{color:#888;font-size:14px}.login-form{gap:20px}.input-group,.login-form{display:flex;flex-direction:column}.input-group{gap:8px}.input-group label{color:#aaa;font-size:14px;font-weight:500}.input-group input{background:#2d2d2d;border:2px solid #333;border-radius:10px;color:#fff;font-size:16px;padding:14px 16px;transition:border-color .2s}.input-group input:focus{border-color:#d4af37;outline:none}.input-group input::placeholder{color:#666}.error-message{background:#f443361a;border:1px solid #f44336;border-radius:8px;color:#f44336;font-size:14px;padding:12px}.login-button{background:linear-gradient(135deg,#d4af37,#c4a030);border-radius:10px;color:#000;font-size:16px;font-weight:600;padding:16px;transition:transform .2s,box-shadow .2s}.login-button:hover:not(:disabled){box-shadow:0 8px 20px #d4af374d;transform:translateY(-2px)}.login-button:disabled{cursor:not-allowed;opacity:.7}.login-footer{color:#666;font-size:12px;margin-top:24px;text-align:center}.dashboard{margin:0 auto;max-width:1400px}.page-title{color:#fff;font-size:28px;font-weight:700;margin-bottom:24px}.stats-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.stat-card{align-items:center;background:#1e1e1e;border-radius:16px;display:flex;gap:16px;padding:24px;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 8px 24px #0000004d;transform:translateY(-4px)}.stat-card.highlight{background:linear-gradient(135deg,#d4af371a,#1e1e1e);border-color:#d4af374d}.stat-icon{align-items:center;background:#2d2d2d;border-radius:12px;display:flex;font-size:32px;height:56px;justify-content:center;width:56px}.stat-content{flex:1 1}.stat-value{color:#d4af37}.stat-label{margin-top:4px}.dashboard-sections{grid-gap:24px;display:grid;gap:24px;grid-template-columns:2fr 1fr}.section{background:#1e1e1e;border:1px solid #333;border-radius:16px;padding:24px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.section-header h2{color:#fff;font-size:18px;font-weight:600}.see-all{color:#d4af37;font-size:14px;font-weight:500}.see-all:hover{text-decoration:underline}.upcoming-list{display:flex;flex-direction:column;gap:12px}.upcoming-item{align-items:center;background:#2d2d2d;border-radius:12px;display:flex;gap:16px;padding:16px;transition:all .2s}.upcoming-item:hover{background:#333;transform:translateX(4px)}.upcoming-date{color:#d4af37;font-size:14px;font-weight:600;min-width:80px;text-align:center}.upcoming-time{color:#888;display:block;font-size:12px;font-weight:400;margin-top:4px}.upcoming-info{flex:1 1}.upcoming-client{color:#fff;font-weight:600;margin-bottom:4px}.upcoming-route{color:#888;font-size:13px}.upcoming-amount{color:#d4af37;font-size:16px;font-weight:700}.quick-actions{display:flex;flex-direction:column;gap:12px}.action-button{align-items:center;background:#2d2d2d;border-radius:12px;color:#fff;display:flex;font-weight:500;gap:12px;padding:16px;transition:all .2s}.action-button:hover{background:#333}.action-button.primary{background:linear-gradient(135deg,#d4af37,#c4a030);color:#000}.action-button.primary:hover{transform:scale(1.02)}.action-button span{font-size:20px}.no-data{color:#666;padding:40px;text-align:center}@media (max-width:1024px){.dashboard-sections{grid-template-columns:1fr}}.courses-page{margin:0 auto;max-width:1200px}.courses-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.courses-header h1{color:#fff;font-size:28px;font-weight:700}.new-course-btn{background:linear-gradient(135deg,#d4af37,#c4a030);border-radius:10px;color:#000;font-weight:600;padding:12px 24px;transition:transform .2s}.new-course-btn:hover{transform:scale(1.05)}.courses-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.filter-tabs{background:#1e1e1e;border-radius:12px;display:flex;gap:8px;padding:6px}.filter-tab{background:#0000;border-radius:8px;color:#888;font-size:14px;font-weight:500;padding:10px 16px;transition:all .2s}.filter-tab:hover{background:#2d2d2d;color:#fff}.filter-tab.active{background:#d4af37;color:#000}.search-input{background:#1e1e1e;border:1px solid #333;border-radius:12px;color:#fff;flex:1 1;font-size:14px;min-width:200px;padding:12px 16px}.search-input:focus{border-color:#d4af37;outline:none}.courses-count{color:#888;font-size:14px;margin-bottom:16px}.courses-list{display:flex;flex-direction:column;gap:12px}.course-card{align-items:center;background:#1e1e1e;border:1px solid #333;border-radius:16px;display:flex;gap:20px;padding:20px;transition:all .2s}.course-card:hover{border-color:#d4af37;box-shadow:0 8px 24px #0003;transform:translateY(-2px)}.course-date-col{background:#2d2d2d;border-radius:12px;min-width:90px;padding:12px;text-align:center}.course-date{color:#d4af37;font-size:14px;font-weight:600}.course-time{color:#fff;font-size:18px;font-weight:700;margin-top:4px}.course-info{flex:1 1}.course-client{color:#fff;font-size:16px;font-weight:600;margin-bottom:8px}.course-addresses{display:flex;flex-direction:column;gap:4px}.address-item{align-items:center;color:#888;display:flex;font-size:13px;gap:8px}.address-icon{font-size:12px}.course-meta{min-width:120px;text-align:right}.course-amount{color:#d4af37;font-size:20px;font-weight:700;margin-bottom:8px}.course-status{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;padding:6px 12px}.no-courses{color:#666;padding:60px;text-align:center}.no-courses span{display:block;font-size:48px;margin-bottom:16px}.loading{height:400px}@media (max-width:768px){.course-card{align-items:flex-start;flex-direction:column}.course-meta{align-items:center;display:flex;justify-content:space-between;margin-top:12px;width:100%}}.reservation-slip-overlay{align-items:center;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:1000}.reservation-slip{background:#fff;border-radius:16px;color:#333;max-height:90vh;max-width:600px;overflow-y:auto;padding:32px;position:relative;width:100%}.close-btn{align-items:center;background:#f0f0f0;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .2s;width:36px}.close-btn:hover{background:#ddd;color:#333}.slip-header{align-items:center;border-bottom:2px solid #d4af37;display:flex;justify-content:center;margin-bottom:24px;padding-bottom:16px}.slip-logo{height:auto;max-width:200px}.slip-title{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.slip-title h2{color:#333;font-size:20px;margin:0}.reservation-id{background:#f0f0f0;border-radius:8px;color:#666;font-family:monospace;font-size:14px;padding:6px 12px}.slip-section{border-bottom:1px solid #eee;margin-bottom:24px;padding-bottom:20px}.slip-section:last-of-type{border-bottom:none}.slip-section h3{color:#d4af37;font-size:16px;font-weight:600;margin:0 0 16px}.info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.info-grid.two-cols{grid-template-columns:repeat(2,1fr)}.info-item{display:flex;flex-direction:column;gap:4px}.info-item .label{color:#888;font-size:12px;text-transform:uppercase}.info-item .value{color:#333;font-size:15px;font-weight:500}.info-item .value.big{color:#d4af37;font-size:20px;font-weight:600}.info-item.highlight{background:linear-gradient(135deg,#d4af371a,#d4af370d);border-radius:8px;padding:12px;text-align:center}.route-info{display:flex;flex-direction:column;gap:0;margin-bottom:16px}.route-point{align-items:flex-start;display:flex;gap:12px;padding:12px 0}.route-icon{line-height:1}.route-details{flex:1 1}.route-label{display:block;text-transform:uppercase}.route-address{color:#333;display:block;line-height:1.4}.route-line{background:linear-gradient(180deg,#4caf50,#f44336);height:30px;margin-left:9px;width:2px}.distance-info{background:#f8f8f8;border-radius:8px;color:#555;flex-wrap:wrap;font-size:14px;gap:24px;padding:12px}.tarif-box{background:linear-gradient(135deg,#d4af37,#b8860b);border-radius:12px;color:#fff;padding:20px}.tarif-row{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.tarif-row:not(:last-child){border-bottom:1px solid #fff3}.tarif-amount{font-size:24px;font-weight:700}.driver-info{align-items:center;background:#f8f8f8;border-radius:8px;display:flex;justify-content:space-between;padding:16px}.driver-name{color:#333;font-weight:600}.driver-status{color:#4caf50;font-size:14px}.comments{background:#fffef0;border-left:4px solid #d4af37;border-radius:8px;color:#555;font-size:14px;line-height:1.5;margin:0;padding:12px}.slip-footer{border-top:1px solid #eee;margin-top:8px;padding:16px 0;text-align:center}.slip-footer p{color:#666;font-size:13px;margin:0}.slip-footer .legal{color:#999;font-size:11px;margin-top:8px}.slip-actions{display:flex;gap:12px;margin-top:24px}.btn-print{background:#d4af37;border:none;border-radius:8px;color:#000;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:14px 24px;transition:all .2s}.btn-print:hover{background:#b8860b}.btn-close{background:#f0f0f0;border:none;border-radius:8px;color:#333;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:14px 24px;transition:all .2s}.btn-close:hover{background:#ddd}@media print{.reservation-slip-overlay{background:none;padding:0;position:static}.reservation-slip{box-shadow:none;max-height:none;padding:20px}.close-btn,.no-print{display:none!important}.tarif-box{background:#d4af37!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media (max-width:600px){.reservation-slip{border-radius:12px;padding:20px}.info-grid{grid-template-columns:1fr}.info-grid.two-cols{grid-template-columns:repeat(2,1fr)}.slip-header,.slip-title{flex-direction:column;text-align:center}.slip-title{gap:12px}.distance-info,.driver-info{flex-direction:column;gap:8px}.driver-info{text-align:center}.slip-actions{flex-direction:column}}.course-details{margin:0 auto;max-width:1200px}.details-header{align-items:center;display:flex;gap:20px;margin-bottom:24px}.back-btn{background:#2d2d2d;color:#fff;font-size:14px;padding:10px 16px;transition:background .2s}.back-btn:hover{background:#333}.details-header h1{color:#fff;font-size:24px;font-weight:700}.details-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:24px}.details-card{background:#1e1e1e;border:1px solid #333;border-radius:16px;padding:24px}.details-card h2{border-bottom:1px solid #333;color:#d4af37;font-size:16px;font-weight:600;margin-bottom:20px;padding-bottom:12px}.info-row{align-items:center;border-bottom:1px solid #2d2d2d;display:flex;justify-content:space-between;padding:12px 0}.info-row:last-child{border-bottom:none}.info-label{color:#888;font-size:14px}.info-value{color:#fff;font-weight:500}.route-item{border-bottom:1px solid #2d2d2d;display:flex;gap:12px;padding:12px 0}.route-icon{font-size:20px}.route-label{color:#888;font-size:12px;margin-bottom:4px}.route-address{color:#fff;font-size:14px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;margin-bottom:8px}.form-input,.form-select{background:#2d2d2d;border:1px solid #444;border-radius:10px;color:#fff;font-size:15px;padding:12px 14px;transition:border-color .2s;width:100%}.form-input:focus,.form-select:focus{border-color:#d4af37;outline:none}.form-select{cursor:pointer}.deleg-warning{background:#ff98001a;border:1px solid #ff9800;border-radius:8px;color:#ff9800;font-size:13px;margin-top:12px;padding:12px}.google-review{padding:20px 0;text-align:center}.review-client{color:#fff;font-size:16px;font-weight:600;margin-bottom:16px}.stars-row{display:flex;gap:8px;justify-content:center;margin-bottom:16px}.star-btn{background:#2d2d2d;border-radius:12px;font-size:24px;height:48px;opacity:.5;transition:all .2s;width:48px}.star-btn:hover{opacity:1;transform:scale(1.1)}.star-btn.active{background:#ffc10733;opacity:1}.review-status{color:#4caf50;font-size:14px}.details-actions{border-top:1px solid #333;display:flex;flex-wrap:wrap;gap:16px;justify-content:flex-end;padding-top:24px}.btn-reservation{background:#2d2d2d;border:1px solid #2196f3;border-radius:10px;color:#2196f3;font-size:15px;font-weight:600;padding:14px 24px;transition:all .2s}.btn-reservation:hover{background:#2196f3;color:#fff}.btn-delete{background:#2d2d2d;border-radius:10px;font-size:15px;font-weight:600;padding:14px 24px;transition:all .2s}.btn-delete:hover{background:#f44336;color:#fff}.btn-save{background:linear-gradient(135deg,#d4af37,#c4a030);border-radius:10px;color:#000;font-size:15px;font-weight:600;padding:14px 32px;transition:transform .2s}.btn-save:hover:not(:disabled){transform:scale(1.02)}.btn-delete:disabled,.btn-save:disabled{cursor:not-allowed;opacity:.6}.error-message{color:#888;padding:60px;text-align:center}.error-message button{background:#d4af37;border-radius:8px;color:#000;margin-top:16px;padding:12px 24px}.new-course{margin:0 auto;max-width:800px;padding:20px}.page-header{align-items:center;display:flex;gap:16px;margin-bottom:24px}.back-btn{background:#1a1a1a;border:1px solid #333;border-radius:8px;color:#d4af37;cursor:pointer;padding:8px 16px;transition:all .2s}.back-btn:hover{background:#252525}.page-header h1{color:#d4af37;font-size:24px;margin:0}.course-form{display:flex;flex-direction:column;gap:24px}.form-section{background:#1a1a1a;border:1px solid #333;border-radius:12px;padding:20px}.form-section h2{color:#d4af37;font-size:16px;margin-bottom:16px}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.client-input{position:relative}.form-group label{color:#888;font-size:14px}.form-group input,.form-group select,.form-group textarea{background:#252525;border:1px solid #333;border-radius:8px;color:#fff;font-size:16px;padding:12px;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#d4af37;outline:none}.form-group textarea{min-height:80px;resize:vertical}.autocomplete-container{position:relative}.suggestions-dropdown{background:#252525;border:1px solid #d4af37;border-radius:8px;box-shadow:0 4px 20px #00000080;left:0;margin-top:4px;max-height:250px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.suggestions-header{background:#1a1a1a;border-bottom:1px solid #333;color:#d4af37;font-size:12px;font-weight:600;padding:10px 12px}.suggestion-item{align-items:center;border-bottom:1px solid #333;cursor:pointer;display:flex;justify-content:space-between;padding:12px;transition:background .2s}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background:#333}.suggestion-name{color:#fff;font-weight:500}.suggestion-phone{color:#888;font-size:13px}.suggestion-address{color:#fff;flex:1 1;font-size:14px;margin-right:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-count{background:#d4af3733;border-radius:12px;color:#d4af37;font-size:12px;padding:2px 8px;white-space:nowrap}.address-suggestions .suggestion-item{padding:10px 12px}.suggestions-header.google-header{background:#4285f41a;border-top:1px solid #333;color:#4285f4;margin-top:8px}.suggestion-item.google-item{border-left:3px solid #4285f4}.suggestion-item.google-item:hover{background:#4285f41a}.distance-row{align-items:center;display:flex;gap:16px;margin-top:16px}.btn-calculate{background:#2196f3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:12px 20px;transition:all .2s}.btn-calculate:hover:not(:disabled){background:#1976d2}.btn-calculate:disabled{cursor:not-allowed;opacity:.6}.distance-info{display:flex;gap:12px}.distance-badge,.duration-badge{background:#333;border-radius:20px;color:#fff;font-size:14px;padding:8px 16px}.distance-badge{color:#4caf50}.duration-badge{color:#ff9800}.airport-toggle{margin-top:16px}.toggle-label{align-items:center;color:#fff;cursor:pointer;display:flex;gap:10px}.toggle-label input{accent-color:#d4af37;height:18px;width:18px}.tariff-section{background:linear-gradient(135deg,#1a1a1a,#252525);border-color:#d4af37}.tariff-result{display:flex;flex-direction:column;gap:16px}.tariff-main{align-items:center;display:flex;justify-content:space-between}.tariff-period{color:#888;font-size:14px}.tariff-price{color:#d4af37;font-size:32px;font-weight:700}.tariff-actions{display:flex;gap:12px}.btn-apply-tariff{background:linear-gradient(135deg,#4caf50,#388e3c);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-weight:600;padding:12px 20px;transition:all .2s}.btn-apply-tariff:hover{transform:translateY(-2px)}.btn-toggle-details{background:#333;border:none;border-radius:8px;color:#888;cursor:pointer;padding:12px 20px}.btn-toggle-details:hover{color:#fff}.tariff-breakdown{background:#121212;border-radius:8px;max-height:300px;overflow-y:auto;padding:16px}.breakdown-line{border-bottom:1px solid #252525;color:#ccc;font-size:14px;padding:6px 0}.breakdown-line:last-child{border-bottom:none;color:#d4af37;font-size:16px;font-weight:600}.form-actions{display:flex;gap:16px;justify-content:flex-end}.btn-cancel{background:#333;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;padding:14px 28px;transition:all .2s}.btn-cancel:hover{background:#444}.btn-submit{background:linear-gradient(135deg,#d4af37,#b8960c);border:none;border-radius:8px;color:#000;cursor:pointer;font-size:16px;font-weight:600;padding:14px 28px;transition:all .2s}.btn-submit:hover:not(:disabled){box-shadow:0 4px 12px #d4af374d;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.form-grid{grid-template-columns:1fr}.distance-row{align-items:stretch}.distance-row,.form-actions,.tariff-actions{flex-direction:column}}.comptabilite-page{margin:0 auto;max-width:1200px;padding:20px}.comptabilite-page .page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.comptabilite-page h1{color:#d4af37;font-size:28px;margin:0}.header-actions{display:flex;gap:12px}.btn-vacation{background:#2196f3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px}.btn-vacation:hover{background:#1976d2}.btn-export{background:linear-gradient(135deg,#d4af37,#b8960c);border:none;border-radius:8px;color:#000;cursor:pointer;font-weight:600;padding:12px 24px}.vacation-alert{align-items:center;background:linear-gradient(135deg,#2196f326,#2196f30d);border:1px solid #2196f3;border-radius:12px;display:flex;gap:16px;margin-bottom:20px;padding:16px 20px}.vacation-icon{font-size:32px}.vacation-info{display:flex;flex-direction:column;gap:4px}.vacation-info strong{color:#2196f3;font-size:16px}.vacation-info span{color:#888;font-size:14px}.display-mode{background:#1a1a1a;border-radius:8px;display:flex;gap:4px;padding:4px}.mode-btn{background:#0000;border:none;border-radius:6px;color:#888;cursor:pointer;padding:8px 16px}.mode-btn.active{background:#d4af37;color:#000}.tabs{flex-wrap:wrap}.tab{padding:12px 20px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:24px}.stat-card{background:#252525;border-radius:10px;padding:16px}.stat-label{font-size:13px;margin-bottom:6px}.stat-value{font-size:22px}.stat-value.red{color:#f44336}.stat-value.orange{color:#ff9800}.rest-vacation-section{background:#1a1a1a;border:1px solid #333;border-radius:12px;margin-bottom:24px;padding:20px}.rest-vacation-section h3{color:#d4af37;font-size:16px;margin:0 0 16px}.rest-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px}.rest-stat{align-items:center;background:#252525;border-radius:10px;display:flex;gap:12px;padding:14px 16px}.rest-stat.highlight{background:#4caf5026;border:1px solid #4caf50}.rest-icon{font-size:24px}.rest-info{display:flex;flex-direction:column}.rest-value{color:#fff;font-size:24px;font-weight:700}.rest-label{color:#888;font-size:12px;line-height:1.3}.vacation-details{border-top:1px solid #333;margin-top:16px;padding-top:16px}.vacation-details h4{color:#2196f3;font-size:14px;margin:0 0 12px}.vacation-list{display:flex;flex-direction:column;gap:10px}.vacation-item{background:#2196f31a;flex-wrap:wrap;gap:16px;padding:12px 16px}.vacation-label{min-width:120px}.vacation-dates{font-size:14px}.vacation-days{background:#2196f3;border-radius:12px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.unpaid-section{background:#f443361a;border:1px solid #f44336;border-radius:10px;margin-bottom:24px;padding:16px}.unpaid-section h3{color:#f44336;font-size:16px;margin:0 0 12px}.unpaid-info{align-items:center;display:flex;justify-content:space-between}.unpaid-count{color:#fff}.unpaid-amount{color:#f44336;font-size:20px;font-weight:700}.payment-breakdown{margin-top:24px}.payment-breakdown h3{color:#d4af37;font-size:16px;margin-bottom:16px}.payment-list{display:flex;flex-direction:column;gap:12px}.payment-item{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:140px 1fr 100px}.payment-mode{color:#fff;font-size:14px}.payment-bar{background:#333;border-radius:4px;height:8px;overflow:hidden}.payment-bar-fill{background:linear-gradient(90deg,#d4af37,#f5d77a);border-radius:4px;height:100%}.payment-amount{color:#d4af37;font-weight:600;text-align:right}.calendar{margin:0 auto;max-width:700px}.calendar-header{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.cal-day-name{color:#888;font-size:12px;padding:8px;text-align:center}.calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.cal-day{align-items:center;aspect-ratio:1;background:#252525;border-radius:8px;display:flex;flex-direction:column;justify-content:center;min-height:60px;padding:4px}.cal-day.padding{background:#0000}.cal-day.worked{background:#4caf5033;border:1px solid #4caf50}.cal-day.rest{background:#d4af371a;border:1px solid #d4af37}.cal-day.vacation{background:#2196f333;border:1px solid #2196f3}.vacation-badge{font-size:16px;margin-top:4px}.day-number{color:#fff;font-size:14px;font-weight:600}.day-info{align-items:center;display:flex;flex-direction:column;font-size:10px;margin-top:4px}.day-courses{color:#4caf50}.day-revenue{color:#d4af37;font-weight:600}.rp-badge{background:#d4af37;border-radius:4px;color:#000;font-size:10px;font-weight:700;margin-top:4px;padding:2px 6px}.calendar-legend{display:flex;gap:20px;justify-content:center;margin-top:16px}.legend-item{align-items:center;color:#888;display:flex;font-size:13px;gap:6px}.dot{border-radius:50%;height:12px;width:12px}.dot.worked{background:#4caf50}.dot.rest{background:#d4af37}.dot.vacation{background:#2196f3}.dot.empty{background:#333}.dot.current{background:#d4af37}.dot.previous{background:#666}.comparison-chart{align-items:flex-end;border-bottom:1px solid #333;display:flex;height:200px;justify-content:space-between;margin-bottom:16px;padding:20px 0}.comparison-bar-group{align-items:center;display:flex;flex-direction:column;gap:8px}.bar-container{align-items:flex-end;display:flex;gap:4px;height:160px}.bar{align-items:flex-start;border-radius:4px 4px 0 0;display:flex;justify-content:center;min-height:20px;padding-top:4px;width:20px}.bar.current{background:linear-gradient(180deg,#d4af37,#b8960c)}.bar.previous{background:#666}.bar-value{color:#fff;font-size:9px;font-weight:600;text-orientation:mixed;transform:rotate(180deg);writing-mode:vertical-rl}.bar-label{color:#888;font-size:11px}.comparison-legend{display:flex;gap:20px;justify-content:center;margin-bottom:20px}.comparison-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.summary-item{background:#252525;border-radius:8px;padding:16px;text-align:center}.summary-label{color:#888;display:block;font-size:13px;margin-bottom:6px}.summary-value{color:#fff;font-size:20px;font-weight:700}.objective-input{align-items:center;display:flex;gap:12px;margin-bottom:24px}.objective-input label{color:#888}.objective-input input{background:#252525;border:1px solid #333;border-radius:8px;color:#d4af37;font-size:18px;font-weight:600;padding:10px;text-align:right;width:120px}.progress-section{margin-bottom:24px}.progress-bar-container{background:#252525;border-radius:20px;height:40px;margin-bottom:12px;overflow:hidden;position:relative}.progress-bar-fill{background:linear-gradient(90deg,#d4af37,#4caf50);border-radius:20px;height:100%;transition:width .3s}.progress-label{color:#fff;font-weight:700;position:absolute;right:16px;top:50%;transform:translateY(-50%)}.progress-info{color:#888;display:flex;justify-content:space-between}.forecast-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.forecast-card{background:#252525;border-radius:10px;padding:20px;text-align:center}.forecast-label{color:#888;font-size:13px;margin-bottom:8px}.forecast-value{color:#fff;font-size:24px;font-weight:700}.forecast-value.gold{color:#d4af37}.profitability-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.profit-card{background:#252525;border-radius:12px;padding:20px;text-align:center}.profit-card.income{border-left:4px solid #4caf50}.profit-card.expense{border-left:4px solid #f44336}.profit-card.result{border-left:4px solid #d4af37}.profit-card.margin{border-left:4px solid #2196f3}.profit-icon{font-size:28px;margin-bottom:8px}.profit-label{color:#888;font-size:13px;margin-bottom:8px}.profit-value{color:#fff;font-size:24px;font-weight:700}.profitability-breakdown{background:#252525;border-radius:12px;padding:20px}.profitability-breakdown h4{color:#d4af37;margin:0 0 16px}.breakdown-item{border-bottom:1px solid #333;color:#fff;padding:12px 0}.breakdown-item.total{border-bottom:none;font-weight:700;padding-top:16px}@media (max-width:768px){.selectors{align-items:stretch;flex-direction:column}.tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.tab{white-space:nowrap}.comparison-chart{overflow-x:auto}.calendar-grid .cal-day{min-height:50px}}.objective-section{margin-bottom:24px}.adapted-objective{align-items:center;background:#2196f31a;border:1px solid #2196f3;border-radius:8px;display:flex;justify-content:space-between;margin-top:12px;padding:12px 16px}.adapted-label{color:#2196f3;font-size:14px}.adapted-value{color:#2196f3;font-size:20px;font-weight:700}.vacation-list{background:#252525;border-radius:12px;margin-top:24px;padding:20px}.vacation-list h4{color:#2196f3;margin:0 0 16px}.vacation-item{align-items:center;background:#1a1a1a;border-radius:8px;display:flex;gap:12px;margin-bottom:8px;padding:12px}.vacation-label{color:#fff;flex:1 1;font-weight:500}.vacation-dates{color:#888;font-size:13px}.btn-delete-vacation{background:#0000;border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:4px 8px}.btn-delete-vacation:hover{background:#f4433633}.vacation-modal{max-width:550px}.vacation-modal h2{color:#2196f3;margin-bottom:20px}.existing-vacations{border-top:1px solid #333;margin-top:24px;padding-top:24px}.existing-vacations h3{color:#fff;font-size:16px;margin-bottom:12px}.vacation-row{align-items:center;background:#252525;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px}.vacation-details{display:flex;flex-direction:column;gap:4px}.vacation-name{color:#fff;font-weight:500}.vacation-period{color:#888;font-size:13px}.btn-delete{background:#f4433633;border:none;border-radius:6px;color:#f44336;cursor:pointer;padding:8px 12px}.btn-delete:hover{background:#f443364d}.modal-content{max-height:80vh;overflow-y:auto}.declaration-page{margin:0 auto;max-width:900px;padding:20px}.declaration-page .page-header{margin-bottom:24px}.declaration-page h1{color:#d4af37;font-size:28px;margin:0}.selectors{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.month-selector select{background:#1a1a1a;border:1px solid #333;border-radius:8px;color:#fff;font-size:16px;padding:10px 16px}.tabs{display:flex;gap:8px;margin-bottom:24px}.tab{background:#1a1a1a;border:1px solid #333;border-radius:8px;color:#888;cursor:pointer;font-size:14px;padding:12px 24px}.tab.active{background:linear-gradient(135deg,#252525,#1a1a1a);border-color:#d4af37;color:#d4af37}.tab-content{background:#1a1a1a;border:1px solid #333;border-radius:12px;padding:24px}.tab-content h2{color:#d4af37;font-size:20px;margin:0 0 24px}.tab-content h3{color:#fff;font-size:16px;margin:24px 0 16px}.declaration-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:24px}.decl-card{background:#252525;border:1px solid #333;border-radius:10px;padding:20px;text-align:center}.decl-card.main{border-color:#d4af37}.decl-card.highlight-red{background:#f443361a;border-color:#f44336}.decl-card.highlight-green{background:#4caf501a;border-color:#4caf50}.decl-label{color:#888;font-size:13px;margin-bottom:8px}.decl-value{color:#fff;font-size:24px;font-weight:700}.decl-value.gold{color:#d4af37}.result-card{background:linear-gradient(135deg,#252525,#1a1a1a);border:2px solid #d4af37;border-radius:12px;margin-bottom:24px;padding:24px;text-align:center}.result-label{color:#d4af37;font-size:16px;margin-bottom:12px}.result-value{color:#fff;font-size:36px;font-weight:700}.result-value.red{color:#f44336}.result-value.green{color:#4caf50}.info-box{background:#252525;border-radius:10px;padding:16px}.info-box p{color:#888;font-size:14px;margin:8px 0}.breakdown-list{display:flex;flex-direction:column;gap:12px}.breakdown-item{background:#252525;border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px}.type-amount{color:#d4af37;font-weight:600}@media (max-width:768px){.selectors{align-items:stretch;flex-direction:column}.tabs{flex-wrap:nowrap;overflow-x:auto}.tab{white-space:nowrap}}.expenses-page{margin:0 auto;max-width:1200px;padding:20px}.expenses-page .page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.expenses-page h1{color:#d4af37;font-size:28px;margin:0}.btn-add{background:linear-gradient(135deg,#d4af37,#b8960c);border:none;border-radius:8px;color:#000;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s}.btn-add:hover{box-shadow:0 4px 12px #d4af374d;transform:translateY(-2px)}.year-selector{display:flex;gap:8px;margin-bottom:24px}.year-btn{background:#1a1a1a;border:1px solid #333;border-radius:8px;color:#fff;cursor:pointer;padding:10px 20px;transition:all .2s}.year-btn:hover{background:#252525}.year-btn.active{background:linear-gradient(135deg,#d4af37,#b8960c);border-color:#d4af37;color:#000}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.stat-card{background:#1a1a1a;border:1px solid #333;border-radius:12px;padding:20px;text-align:center}.stat-card.main{border-color:#d4af37}.stat-label{color:#888;font-size:14px;margin-bottom:8px}.stat-value{color:#fff;font-size:24px;font-weight:700}.stat-value.gold{color:#d4af37}.stat-value.green{color:#4caf50}.type-breakdown{background:#1a1a1a;border:1px solid #333;border-radius:12px;margin-bottom:32px;padding:20px}.type-breakdown h2{color:#d4af37;font-size:18px;margin-bottom:16px}.type-list{display:flex;flex-direction:column;gap:12px}.type-item{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:150px 80px 1fr 100px}.type-name{color:#fff;font-weight:500}.type-count{color:#888;font-size:13px}.type-bar{background:#333;border-radius:4px;height:8px;overflow:hidden}.type-bar-fill{background:linear-gradient(90deg,#d4af37,#f5d77a);border-radius:4px;height:100%;transition:width .3s}.type-total{color:#d4af37;font-weight:600;text-align:right}.expenses-list{background:#1a1a1a;border:1px solid #333;border-radius:12px;padding:20px}.expenses-list h2{color:#d4af37;font-size:18px;margin-bottom:16px}.expenses-table{border-collapse:collapse;width:100%}.expenses-table th{border-bottom:1px solid #333;color:#888;font-size:13px;font-weight:500;padding:12px;text-align:left}.expenses-table td{border-bottom:1px solid #252525;color:#fff;padding:12px}.expenses-table .amount{font-family:SF Mono,monospace;text-align:right}.expenses-table .amount.green{color:#4caf50}.btn-delete-small{background:#0000;border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:4px 8px;transition:background .2s}.btn-delete-small:hover{background:#f4433633}.empty-state{color:#666;padding:40px;text-align:center}.modal-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#1a1a1a;border:1px solid #333;border-radius:16px;max-width:500px;padding:24px;width:90%}.modal-content h2{color:#d4af37;margin-bottom:20px}.modal-content .form-group{margin-bottom:16px}.modal-content label{color:#888;display:block;font-size:14px;margin-bottom:6px}.modal-content input,.modal-content select{background:#252525;border:1px solid #333;border-radius:8px;color:#fff;font-size:16px;padding:12px;width:100%}.modal-content input:focus,.modal-content select:focus{border-color:#d4af37;outline:none}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions .btn-cancel{background:#333;color:#fff}.modal-actions .btn-cancel,.modal-actions .btn-submit{border:none;border-radius:8px;cursor:pointer;flex:1 1;padding:12px}.modal-actions .btn-submit{background:linear-gradient(135deg,#d4af37,#b8960c);color:#000;font-weight:600}@media (max-width:768px){.type-item{grid-template-columns:1fr 1fr}.type-bar{display:none}.expenses-table{font-size:14px}.expenses-table td:nth-child(5),.expenses-table th:nth-child(5){display:none}}.clients-page{margin:0 auto;max-width:1200px;padding:20px}.clients-page .page-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.clients-page .page-header h1{color:#d4af37;font-size:24px;margin:0}.stats-summary{display:flex;gap:16px}.stat-item{background:#d4af3726;border-radius:20px;color:#d4af37;font-size:14px;font-weight:500;padding:8px 16px}.controls{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.search-box{align-items:center;background:#1e1e1e;border:1px solid #333;border-radius:8px;display:flex;flex:1 1;min-width:250px;padding:0 16px}.search-box .search-icon{font-size:18px;margin-right:12px}.search-box input{background:#0000;border:none;color:#fff;flex:1 1;font-size:16px;outline:none;padding:12px 0}.search-box input::placeholder{color:#666}.sort-buttons{display:flex;flex-wrap:wrap;gap:8px}.sort-btn{background:#1e1e1e;border:1px solid #333;border-radius:8px;color:#888;cursor:pointer;font-size:14px;padding:10px 16px;transition:all .2s}.sort-btn.active,.sort-btn:hover{border-color:#d4af37;color:#d4af37}.sort-btn.active{background:#d4af3733}.clients-list{display:flex;flex-direction:column;gap:16px}.client-card{background:#1e1e1e;border:1px solid #333;border-radius:12px;padding:20px;transition:all .2s}.client-card:hover{border-color:#d4af37;transform:translateY(-2px)}.client-header{align-items:flex-start;justify-content:space-between;margin-bottom:16px}.client-header,.client-name{display:flex;flex-wrap:wrap;gap:12px}.client-name{align-items:center}.client-name .name{color:#fff;font-size:18px;font-weight:600}.level-badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px;text-transform:uppercase}.level-badge.vip{background:linear-gradient(135deg,#d4af37,#b8860b);color:#000}.level-badge.loyal{background:#4caf5033;color:#4caf50}.level-badge.regular{background:#2196f333;color:#2196f3}.level-badge.new{background:#9c27b033;color:#9c27b0}.client-stats{display:flex;gap:16px}.client-stats .stat{color:#888;font-size:14px}.client-stats .stat.amount{color:#4caf50;font-weight:600}.client-details{margin-bottom:16px}.detail-row{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:12px}.detail-item{color:#d4af37;font-size:14px;text-decoration:none;transition:color .2s}.detail-item:hover{color:#fff}.dates-row{display:flex;flex-wrap:wrap;gap:20px}.date-item{color:#666;font-size:13px}.client-actions{border-top:1px solid #333;display:flex;justify-content:flex-end;padding-top:12px}.btn-new-course{background:#d4af3733;border:1px solid #d4af37;border-radius:8px;color:#d4af37;cursor:pointer;font-size:14px;padding:8px 20px;transition:all .2s}.btn-new-course:hover{background:#d4af37;color:#000}.no-results{color:#666;font-size:16px;padding:60px 20px;text-align:center}.loading{align-items:center;color:#d4af37;display:flex;font-size:18px;justify-content:center;min-height:300px}@media (max-width:768px){.clients-page{padding:16px}.clients-page .page-header{align-items:flex-start;flex-direction:column}.stats-summary{flex-wrap:wrap}.controls{flex-direction:column}.sort-buttons{justify-content:flex-start}.client-header{flex-direction:column}.client-stats{justify-content:space-between;width:100%}}.layout{background:#121212;display:flex;min-height:100vh}.sidebar{background:#1a1a1a;border-right:1px solid #333;display:flex;flex-direction:column;height:100vh;overflow-y:auto;padding:20px 0;position:fixed;width:250px}.logo{align-items:center;border-bottom:1px solid #333;display:flex;justify-content:center;margin-bottom:20px;padding:10px 20px 24px}.logo-image{height:auto;max-width:180px}.logo-icon{font-size:32px}.logo-text{display:flex;flex-direction:column}.logo-name{color:#d4af37;font-size:20px;font-weight:700;letter-spacing:2px}.logo-subtitle{color:#888;font-size:12px;letter-spacing:4px}.nav-links{display:flex;flex:1 1;flex-direction:column;gap:4px;padding:0 12px}.nav-link{align-items:center;border-radius:8px;color:#888;display:flex;font-size:14px;gap:12px;padding:12px 16px;text-decoration:none;transition:all .2s}.nav-link:hover{background:#252525;color:#fff}.nav-link.active{background:linear-gradient(135deg,#d4af3733,#d4af371a);border-left:3px solid #d4af37;color:#d4af37}.nav-icon{font-size:18px;text-align:center;width:24px}.logout-btn{background:#0000;border:1px solid #333;border-radius:8px;color:#888;cursor:pointer;margin:20px;padding:12px;transition:all .2s}.logout-btn:hover{background:#f443361a;border-color:#f44336;color:#f44336}.main-content{flex:1 1;margin-left:250px;min-height:100vh;padding:20px}@media (max-width:768px){.sidebar{padding:10px 0;width:60px}.logo{justify-content:center;padding:0 10px 20px}.logo-text{display:none}.nav-link{justify-content:center;padding:12px}.nav-link span:not(.nav-icon){display:none}.logout-btn{margin:10px;padding:10px}.logout-btn span{display:none}.main-content{margin-left:60px}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#121212;color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}a{color:inherit;text-decoration:none}button{border:none;cursor:pointer;outline:none}input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#d4af37;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#c4a030}
/*# sourceMappingURL=main.6fdc9203.css.map*/