.main-layout{display:flex;width:100vw;height:100vh;background-color:#f4f6f9;color:#333}.sidebar{width:250px;background-color:#34495e;color:#aeb2b7;display:flex;flex-direction:column;flex-shrink:0;height:100vh;position:fixed;left:0;top:0;transition:width .3s ease;z-index:100}.main-layout.sidebar-collapsed .sidebar{width:0}.nav-text,.arrow-icon,.submenu{opacity:1;transition:opacity .2s ease}.main-layout.sidebar-collapsed .nav-text,.main-layout.sidebar-collapsed .arrow-icon,.main-layout.sidebar-collapsed .submenu{opacity:0;pointer-events:none;height:0;overflow:hidden}.sidebar-logo{padding:16px 20px;text-align:center;font-size:24px;font-weight:700;color:#fff;border-bottom:1px solid rgba(255,255,255,.05);flex-shrink:0;white-space:nowrap;overflow:hidden}.sidebar-logo a{color:#fff;text-decoration:none}.sidebar-nav{display:flex;flex-direction:column;margin-top:10px;flex-grow:1;overflow-y:auto}.nav-item{padding:12px 20px;color:#aeb2b7;text-decoration:none;display:flex;align-items:center;gap:15px;transition:background-color .2s,color .2s;font-size:15px;white-space:nowrap;overflow:hidden}.nav-item:hover{background-color:#ffffff0d;color:#fff}.nav-item.active{background-color:#e74c3c;color:#fff}.nav-item-dropdown .nav-item{justify-content:space-between}.submenu{background-color:#0003;padding-left:20px}.submenu-item{padding:10px 20px 10px 35px;color:#aeb2b7;text-decoration:none;display:block;font-size:14px;text-align:left}.submenu-item:hover{color:#fff}.main-content{flex-grow:1;display:flex;flex-direction:column;margin-left:250px;transition:margin-left .3s ease;width:calc(100% - 250px)}.main-layout.sidebar-collapsed .main-content{margin-left:0;width:100%}.page-content{flex-grow:1;padding:30px;overflow-y:auto}.main-header{height:60px;background-color:#fff;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;padding:0 20px;flex-shrink:0}.header-left,.header-right{display:flex;align-items:center;gap:15px}.toggle-sidebar-btn{background:none;border:none;font-size:20px;cursor:pointer;color:#666}.search-bar{position:relative;display:flex;align-items:center}.search-bar .search-icon{position:absolute;left:10px;color:#999}.search-bar input{border:1px solid #ddd;border-radius:20px;padding:6px 10px 6px 35px;width:250px;transition:width .3s ease}.search-bar input:focus{width:350px;outline:none;border-color:#3498db}.add-service-btn{background-color:#3498db;color:#fff;border:none;padding:8px 15px;border-radius:4px;font-weight:500;cursor:pointer}.header-icon-wrapper{position:relative}.header-icon-btn,.user-profile-btn{background:none;border:none;font-size:18px;cursor:pointer;color:#666;display:flex;align-items:center;gap:8px}.dropdown-menu{position:absolute;top:150%;right:0;background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px #0000001a;width:280px;z-index:1000;padding:8px 0}.profile-menu{width:220px}.dropdown-header{padding:8px 16px;font-weight:700;color:#333;font-size:15px;border-bottom:1px solid #eee;margin-bottom:8px}.dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:14px;color:#333;text-decoration:none;background:none;border:none;width:100%;text-align:left;cursor:pointer}.dropdown-item:hover{background-color:#f4f6f9}.dropdown-divider{height:1px;background-color:#eee;margin:8px 0}.logout-item{color:#e74c3c;font-weight:500}.logout-item svg{color:#e74c3c}.sidebar-logo{padding:20px 15px;text-align:center;font-weight:700;font-size:22px;color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.logo-text{margin:0;font-size:24px;font-weight:700;letter-spacing:1px}.login-page{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100vh;background-color:#f0f2f5;color:#333}.login-container{display:flex;width:1100px;max-width:90%;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:hidden}.login-form-section{flex:1;padding:40px;display:flex;flex-direction:column;justify-content:center}.logo{font-size:28px;font-weight:700;color:#007bff;margin-bottom:20px;text-align:left}.login-form-section h1{font-size:24px;margin-bottom:20px;text-align:left;color:#333}.input-group{margin-bottom:15px;text-align:left}.input-group label{display:block;margin-bottom:5px;font-weight:500;color:#555}.input-group input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;color:#333;background-color:#fff}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:14px}.remember-me{display:flex;align-items:center}.remember-me input{margin-right:5px}.forgot-password{color:#007bff;text-decoration:none}.forgot-password:hover{text-decoration:underline}.login-button{width:100%;padding:12px;background-color:#ef5350;color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .3s}.login-button:hover{background-color:#e53935}.register-link{margin-top:20px;font-size:14px;text-align:left}.register-link a{color:#007bff;font-weight:700;text-decoration:none}.register-link a:hover{text-decoration:underline}.payment-icons{margin-top:20px;text-align:left}.payment-icons img{height:24px;margin-right:10px}.login-info-section{flex:1;padding:40px;background-color:#e0f7fa;display:flex;flex-direction:column;justify-content:center;gap:30px}.info-item{text-align:center}.info-item h3{margin-bottom:10px;color:#004d40}.info-item p{color:#00695c;font-size:14px}.login-footer{margin-top:20px;font-size:12px;color:#888}.error-message{color:#d32f2f;background-color:#ffcdd2;border:1px solid #D32F2F;border-radius:4px;padding:10px;margin-bottom:15px;text-align:center;font-size:14px}@media (max-width: 768px){.login-container{flex-direction:column;width:100%;max-width:100%;border-radius:0;box-shadow:none}.login-form-section{padding:30px 20px}.login-info-section{padding:30px 20px;display:none}.logo{font-size:24px;margin-bottom:15px}.login-form-section h1{font-size:20px;margin-bottom:15px}.input-group{margin-bottom:12px}.input-group input{padding:8px;font-size:16px}.login-button{padding:10px;font-size:14px}.form-options{flex-direction:column;gap:10px;align-items:flex-start}.payment-icons img{height:20px}.login-footer{padding:0 20px;text-align:center}}@media (max-width: 480px){.login-form-section{padding:20px 15px}.logo{font-size:20px}.login-form-section h1{font-size:18px}.input-group input{padding:10px}.payment-icons{margin-top:15px}.payment-icons img{height:18px;margin-right:8px}}.register-page{width:100%;min-height:100vh;display:flex;justify-content:center;align-items:center;background-color:#fff;padding:40px 0;color:#333}.register-container{width:800px;max-width:95%;display:flex;flex-direction:column}.register-header{text-align:center;margin-bottom:30px}.register-header .logo{font-size:36px;font-weight:700;color:#007bff;text-decoration:none;margin-bottom:20px;display:inline-block}.register-header h2{font-size:24px;margin-bottom:10px;color:#333}.register-header p{font-size:14px;color:#666}.register-header p a{color:#007bff;font-weight:500}.register-form{display:flex;flex-direction:column;gap:15px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-row.single{grid-template-columns:1fr}.register-form .input-group{display:flex;flex-direction:column;text-align:left}.register-form .input-group label{margin-bottom:5px;font-weight:500;font-size:14px}.register-form .input-group input,.register-form .input-group select{padding:10px;border:1px solid #ccc;border-radius:4px;font-size:16px;background-color:#fafafa}.terms-agreement{display:flex;align-items:center;gap:10px;font-size:14px}.terms-agreement a{color:#007bff;font-weight:500}.register-button{width:100%;padding:12px;background-color:#28a745;color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .3s}.register-button:hover{background-color:#218838}.register-footer{margin-top:40px;font-size:12px;color:#888;text-align:center}.error-message{color:#d32f2f;background-color:#ffcdd2;border:1px solid #D32F2F;border-radius:4px;padding:10px;text-align:center;font-size:14px;grid-column:1 / -1}.kpi-card{display:flex;align-items:center;padding:20px;border-radius:4px;background-color:#fff;border:1px solid #e0e0e0;box-shadow:0 1px 3px #0000000d}.kpi-icon{font-size:24px;padding:12px;border-radius:50%;margin-right:15px;display:flex;align-items:center;justify-content:center;color:#fff}.kpi-info{text-align:right;flex-grow:1}.kpi-value{font-size:24px;font-weight:700;color:#333}.kpi-title{font-size:14px;color:#777}.dashboard-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;box-shadow:0 1px 3px #0000000d}.dashboard-card-header{padding:15px 20px;border-bottom:1px solid #e0e0e0}.dashboard-card-header h3{margin:0;font-size:16px;font-weight:500}.dashboard-card-body{padding:20px}.recent-services-table{width:100%;border-collapse:collapse}.recent-services-table th{text-align:left;padding-bottom:10px;font-weight:500;color:#666;border-bottom:1px solid #e0e0e0;font-size:14px}.recent-services-table tbody tr{cursor:pointer;transition:background-color .2s}.recent-services-table tbody tr:hover{background-color:#f8f9fa}.recent-services-table td{padding:15px 5px;border-bottom:1px solid #e0e0e0}.recent-services-table tbody tr:last-child td{border-bottom:none}.recent-services-table td strong{display:block;font-weight:500;color:#333}.recent-services-table td small{display:block;color:#888;font-size:12px}.star-icon{color:#f1c40f;margin-right:5px}.priority-icon{font-size:10px}.priority-icon.acil{color:#e74c3c}.priority-icon.yüksek{color:#f39c12}.priority-icon.normal{color:#3498db}.priority-icon.düşük{color:#95a5a6}.dashboard-header{text-align:left;margin-bottom:20px}.dashboard-header h1{margin-bottom:5px;font-size:24px;font-weight:500}.dashboard-header p{color:#666;font-size:15px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:20px}.dashboard-main-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-bottom:20px}.dashboard-alert{margin-bottom:20px;padding:12px 16px;border-radius:10px;font-size:14px}.dashboard-alert.error{background:#fdecec;color:#b42318;border:1px solid #f5c2c7}.dashboard-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px}.dashboard-summary-card{background:#fff;border:1px solid #e9ecef;border-radius:14px;padding:18px;box-shadow:0 6px 18px #0f172a0d}.dashboard-summary-card span{display:block;color:#667085;font-size:13px;margin-bottom:8px}.dashboard-summary-card strong{display:block;font-size:28px;color:#101828;margin-bottom:6px}.dashboard-summary-card small{color:#98a2b3;font-size:12px}.placeholder-content{display:flex;align-items:center;justify-content:center;min-height:100px;color:#999;border:1px dashed #ccc;border-radius:4px}.yellow-placeholder{background-color:#fffbe6;border:1px solid #ffe58f;color:#d46b08}.dashboard-card{margin-bottom:20px}@media (max-width: 1200px){.kpi-grid,.dashboard-summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.kpi-grid,.dashboard-main-grid,.dashboard-summary-grid{grid-template-columns:1fr}}.customers-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.customers-page .page-header h1{font-size:24px;font-weight:500;margin:0}.customers-page .header-actions{display:flex;gap:10px}.btn{padding:8px 15px;border-radius:4px;border:1px solid transparent;cursor:pointer;font-weight:500;display:flex;align-items:center;gap:8px}.btn-primary{background-color:#3498db;color:#fff}.icon-btn{background-color:#f4f6f9;color:#333;border:1px solid #ddd;padding:8px;border-radius:4px;display:flex;align-items:center}.card-header{padding:10px 20px;border-bottom:1px solid #e0e0e0}.filter-btn{background:none;border:1px solid #ccc;padding:5px 10px;border-radius:4px;margin-right:5px;cursor:pointer}.filter-btn.active{background-color:#e9ecef;border-color:#adb5bd}.filter-btn span{background-color:#adb5bd;color:#fff;padding:0 5px;border-radius:3px;font-size:12px;margin-left:5px}.filter-btn.active span{background-color:#343a40}.customers-table{width:100%;border-collapse:collapse}.customers-table th,.customers-table td{padding:15px;text-align:left;border-bottom:1px solid #e0e0e0}.customers-table th{font-weight:500;color:#666;font-size:14px}.customers-table tbody tr:last-child td{border-bottom:none}.customers-table tbody tr:hover{background-color:#f8f9fa}.error-text{color:#e74c3c}.add-customer-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.add-customer-page .page-title{font-size:24px;font-weight:500;margin:0}.form-grid{display:grid;grid-template-columns:3fr 1fr;gap:30px;align-items:flex-start}.card-description{font-size:14px;color:#6c757d;margin-top:0;margin-bottom:20px}.form-row{margin-bottom:20px}.form-row:last-child{margin-bottom:0}.form-row.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-row.three-col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.input-group{display:flex;flex-direction:column}.input-group label{margin-bottom:8px;font-size:14px;color:#495057;font-weight:500}.input-group input[type=text],.input-group input[type=email],.input-group input[type=tel],.input-group input[type=password],.input-group select,.input-group textarea{width:100%;padding:10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;box-sizing:border-box;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;background-color:#fff;color:#212529}.input-group input:focus,.input-group textarea:focus,.input-group select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem #007bff40}.input-group small{font-size:12px;color:#6c757d;margin-top:5px}.radio-group{display:flex;align-items:center;gap:30px;margin-bottom:20px;flex-wrap:wrap}.radio-group>label{font-weight:500;margin-bottom:0}.radio-group div{display:flex;align-items:center;gap:8px}.radio-group input{margin-top:-2px}.btn-secondary,.btn-grey{background-color:#f8f9fa;color:#343a40;border-color:#ced4da}.btn-block{width:100%;margin-top:10px}.btn:disabled{cursor:not-allowed;opacity:.65}.error-box{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;padding:10px;margin-bottom:15px;font-size:14px}.alert-info{background-color:#e7f3fe;border:1px solid #b3d7ff;color:#004085;padding:15px;border-radius:4px;margin-bottom:20px;font-size:14px}.map-placeholder{width:100%;height:250px;background-color:#e9ecef;display:flex;justify-content:center;align-items:center;color:#6c757d;border:1px dashed #ced4da;border-radius:4px;margin-bottom:20px}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:20px;border-radius:8px;width:500px;max-width:90%;box-shadow:0 5px 15px #0000004d;color:#333}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:10px;margin-bottom:20px}.modal-title{margin:0;font-size:18px}.modal-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#888}.modal-body .form-select,.modal-body .form-textarea{width:100%;padding:10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;box-sizing:border-box;background-color:#fff!important;color:#212529!important;margin-bottom:15px}.modal-body .form-select:focus,.modal-body .form-textarea:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem #007bff40}.customer-header-card{background:#fff;padding:25px;border-radius:8px;border:1px solid #e0e0e0;display:flex;align-items:center;gap:20px;margin-bottom:20px}.customer-avatar{width:60px;height:60px;background:#e3f2fd;color:#2196f3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px}.customer-info-main h1{margin:0 0 10px;font-size:22px}.customer-meta{display:flex;gap:20px;font-size:14px;color:#666;align-items:center}.customer-meta span{display:flex;align-items:center;gap:6px}.balance-badge{padding:4px 10px;border-radius:4px;font-weight:700;font-size:13px}.balance-badge.debt{background:#ffebee;color:#c62828}.balance-badge.ok{background:#e8f5e9;color:#2e7d32}.customer-actions{margin-left:auto}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.info-group label{display:block;font-size:12px;color:#999;margin-bottom:4px}.info-value{font-size:15px;color:#333;font-weight:500}.service-list-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.service-list-page .page-header h1{font-size:24px;font-weight:500;margin:0}.service-list-page .header-actions{display:flex;gap:10px}.btn-grey{background-color:#f8f9fa;color:#343a40;border-color:#ced4da;border:1px solid #ced4da;padding:8px 15px;border-radius:4px;cursor:pointer}.btn-primary{background-color:#007bff;color:#fff;border-color:#007bff}.status-cards-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:20px}.status-card-button{display:flex;align-items:center;gap:12px;background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:15px;cursor:pointer;text-align:left;transition:all .2s ease-in-out;width:100%}.status-card-button:hover{border-color:#007bff;box-shadow:0 4px 10px #0000000d;transform:translateY(-2px)}.status-card-button.active{border-color:#007bff;background-color:#f0f7ff;box-shadow:inset 0 0 0 1px #007bff}.status-card-icon{font-size:22px;color:#666;background-color:#f8f9fa;padding:10px;border-radius:50%;display:flex;align-items:center;justify-content:center}.status-card-info{display:flex;flex-direction:column}.status-card-info span{font-size:13px;color:#6c757d;font-weight:500}.status-card-info strong{font-size:18px;color:#333;font-weight:700}.card{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px}.card-header{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;border-bottom:1px solid #e0e0e0}.tabs{display:flex;gap:5px}.tab-btn{background:#f8f9fa;border:1px solid #ccc;padding:5px 15px;border-radius:20px;cursor:pointer;color:#555;text-decoration:none;font-size:14px}.tab-btn.active{background-color:#007bff;color:#fff;border-color:#007bff}.card-body{padding:0}.empty-state{background-color:#fffbe6;color:#d46b08;padding:40px 20px;text-align:center}.loading-state{padding:40px 20px;text-align:center;color:#888}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:15px;text-align:left;border-bottom:1px solid #e0e0e0}.data-table th{font-weight:500;color:#666;font-size:14px}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background-color:#f8f9fa}.status-badge{background-color:#e9ecef;color:#495057;padding:3px 8px;border-radius:10px;font-size:12px;font-weight:500}.kanban-board{display:flex;overflow-x:auto;height:calc(100vh - 180px);padding-bottom:20px;gap:15px}.kanban-column{background-color:#f4f5f7;min-width:300px;max-width:300px;border-radius:6px;display:flex;flex-direction:column;height:100%;border:1px solid #dfe1e6}.kanban-column-header{padding:15px;font-weight:600;color:#172b4d;font-size:14px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid transparent}.header-yeni{border-bottom-color:#e74c3c}.header-atama{border-bottom-color:#95a5a6}.header-acik{border-bottom-color:#f1c40f}.header-parca{border-bottom-color:#9b59b6}.header-cozuldu{border-bottom-color:#2ecc71}.column-count{background-color:#dfe1e6;color:#172b4d;padding:2px 8px;border-radius:10px;font-size:12px}.kanban-column-content{flex-grow:1;padding:10px;overflow-y:auto;min-height:100px}.kanban-card{background-color:#fff;border-radius:4px;padding:12px;margin-bottom:10px;box-shadow:0 1px 2px #091e4240;cursor:grab;transition:transform .2s,box-shadow .2s;border-left:4px solid transparent}.kanban-card:hover{background-color:#fafbfc;box-shadow:0 4px 8px #091e4240}.kanban-card.is-dragging{background-color:#e6fcff;transform:rotate(2deg);box-shadow:0 10px 20px #0003}.priority-border-acil{border-left-color:#e74c3c}.priority-border-yuksek{border-left-color:#f39c12}.priority-border-normal{border-left-color:#3498db}.priority-border-dusuk{border-left-color:#95a5a6}.card-header-row{display:flex;justify-content:space-between;font-size:12px;color:#6b778c;margin-bottom:8px}.card-title{font-weight:600;color:#172b4d;margin-bottom:5px;font-size:14px}.card-subtitle{font-size:13px;color:#5e6c84;margin-bottom:8px}.card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid #f4f5f7;font-size:12px;color:#6b778c}.technician-avatar{width:24px;height:24px;border-radius:50%;background-color:#dfe1e6;color:#172b4d;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:10px}.timeline-container{position:relative;padding:20px 0}.timeline-container:before{content:"";position:absolute;left:20px;top:0;bottom:0;width:2px;background:#e9ecef}.timeline-item{position:relative;padding-left:50px;margin-bottom:25px}.timeline-icon{position:absolute;left:11px;top:0;width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid #007bff;z-index:1}.timeline-icon.system{border-color:#6c757d;background:#e9ecef}.timeline-icon.status{border-color:#28a745;background:#d4edda}.timeline-icon.note{border-color:#17a2b8;background:#d1ecf1}.timeline-content{background:#f8f9fa;padding:15px;border-radius:6px;border:1px solid #e9ecef;position:relative}.timeline-content:after{content:"";position:absolute;left:-6px;top:7px;width:10px;height:10px;background:#f8f9fa;border-left:1px solid #e9ecef;border-bottom:1px solid #e9ecef;transform:rotate(45deg)}.timeline-header{display:flex;justify-content:space-between;margin-bottom:8px;font-size:13px;color:#6c757d}.timeline-user{font-weight:600;color:#333}.timeline-date{font-size:12px}.timeline-body{font-size:14px;color:#333;line-height:1.5;white-space:pre-wrap}.timeline-input-area{margin-bottom:30px;background:#fff;padding:15px;border:1px solid #e0e0e0;border-radius:6px;box-shadow:0 2px 4px #0000000d}.timeline-input-area textarea{width:100%;border:1px solid #ced4da;border-radius:4px;padding:10px;font-size:14px;resize:vertical;min-height:60px;margin-bottom:10px}.timeline-actions{display:flex;justify-content:flex-end}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999}.modal-wrapper{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0003;max-width:600px;width:90%;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}.signature-modal{display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.modal-header h2{margin:0;font-size:18px;color:#333}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#999;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.close-btn:hover{color:#333}.modal-body{padding:20px}.signature-instruction{font-size:14px;color:#666;margin-bottom:20px}.signature-canvas-container{border:2px solid #ddd;border-radius:6px;overflow:hidden;background:#f9f9f9;margin-bottom:10px}.signature-canvas{display:block;cursor:crosshair;width:100%;height:200px;background:#fff}.signature-note{font-size:12px;color:#999;text-align:center;margin-bottom:20px}.modal-footer{display:flex;justify-content:space-between;align-items:center;padding:20px;border-top:1px solid #eee;background:#f5f5f5;gap:10px}.modal-footer>div{display:flex;gap:10px;margin-left:auto}.btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px;transition:all .3s ease}.btn-primary{background:#3498db;color:#fff}.btn-primary:hover{background:#2980b9}.btn-secondary{background:#ecf0f1;color:#333}.btn-secondary:hover{background:#d5dbeb}.service-detail-page{text-align:left}.service-detail-page .page-header h1{display:flex;align-items:center;gap:10px;font-weight:500;font-size:24px}.priority-badge{font-size:14px;font-weight:500;background-color:#f8f9fa;color:#343a40;border:1px solid #ced4da;padding:3px 8px;border-radius:4px}.detail-grid{display:grid;grid-template-columns:2.5fr 1fr;gap:30px;align-items:flex-start}.product-card{display:flex;gap:20px;align-items:flex-start;background:#fff;border:1px solid #e9ecef;padding:20px;border-radius:4px;margin-bottom:10px}.product-image img{border:1px solid #eee;border-radius:4px}.product-info h4{margin:0 0 10px;font-size:18px}.product-info p{margin:4px 0;font-size:14px;color:#666}.product-info p span{font-weight:500;color:#333}.product-edit-link{font-size:13px;color:#007bff;text-decoration:none;display:inline-flex;align-items:center;gap:5px;margin-top:10px}.card-footer-info{font-size:12px;color:#888;margin:-10px 0 20px 5px;line-height:1.6}.placeholder-text{color:#888;font-style:italic;display:flex;justify-content:space-between;align-items:center;width:100%}.placeholder-text a,.placeholder-text span{font-style:normal;text-decoration:none;color:#007bff;display:inline-flex;align-items:center;gap:5px}.placeholder-text small{display:block;width:100%;margin-top:5px;font-style:italic}.details-tabs-container{margin-top:20px;background:#fff;border:1px solid #e9ecef;border-radius:4px}.details-tabs{border-bottom:1px solid #e9ecef;display:flex;flex-wrap:wrap}.details-tabs .tab-btn{background:none;border:none;padding:12px 18px;cursor:pointer;font-size:15px;color:#666;border-bottom:3px solid transparent;margin-bottom:-1px}.details-tabs .tab-btn.active{border-bottom-color:#007bff;color:#333;font-weight:500}.tab-content{padding:20px}.empty-tab a{color:#007bff;text-decoration:none;font-weight:500;display:inline-flex;align-items:center;gap:5px}.disqus-info{font-size:12px;color:#888;margin-top:20px}.sidebar-details .card-description{font-size:14px;color:#6c757d;margin-top:0;margin-bottom:20px}.actions-dropdown-wrapper{display:flex;flex-direction:column;gap:10px;position:relative}.actions-dropdown-wrapper .btn{width:100%;justify-content:center}.btn-action{background-color:#17a2b8;color:#fff;border:none}.btn-secondary{background-color:#6c757d;color:#fff;border:none}.btn-warning{background-color:#ffc107;color:#212529;border:none}.dropdown-content{position:absolute;background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 5px #00000026;margin-top:5px;padding:5px 0;z-index:100;min-width:220px;top:40px;right:0}.actions-dropdown-wrapper>button.btn-action+.dropdown-content{left:0}.dropdown-content a,.dropdown-content button{display:flex;gap:10px;align-items:center;width:100%;padding:10px 15px;text-decoration:none;color:#333;background:none;border:none;text-align:left;font-size:14px;cursor:pointer}.dropdown-content a:hover,.dropdown-content button:hover{background-color:#f8f9fa}.dropdown-divider{height:1px;background-color:#eee;margin:5px 0}.fees-card .fee-item{display:flex;justify-content:space-between;padding:8px 0;font-size:15px}.fees-card .fee-item.total{font-weight:700;border-top:1px solid #eee;margin-top:10px;padding-top:10px}.fees-card .fee-amount.total{font-size:18px}.fees-card .fee-links{display:flex;flex-direction:column;gap:5px;margin-top:15px;border-top:1px solid #eee;padding-top:15px}.fees-card .fee-links a{font-size:12px;color:#666}.customer-card strong{font-size:16px;display:block;margin-bottom:10px}.customer-card p{display:flex;align-items:center;gap:8px;margin:5px 0}.btn-light-blue{background-color:#e7f3fe;color:#004085;width:100%;justify-content:center;margin-top:15px;border:1px solid #b3d7ff}.edit-mode{display:flex;flex-direction:column}.edit-mode textarea,.edit-mode input,.edit-mode select{width:100%;padding:10px;border:1px solid #007bff;border-radius:4px;font-size:14px;box-sizing:border-box;margin-bottom:10px}.edit-actions{display:flex;justify-content:flex-end;gap:10px}.btn.btn-sm{padding:5px 10px;font-size:13px}.technician-assign-box{text-align:center}.technician-assign-box p{font-size:14px;color:#6c757d;margin-top:10px}.assign-technician-form{display:flex;flex-direction:column;gap:15px}.assign-technician-form p{margin:0;font-size:15px}.form-select,.form-textarea{width:100%;padding:10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;box-sizing:border-box}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid #eee}.notes-section,.signatures-section{margin-bottom:30px}.notes-section h4,.signatures-section h4{font-size:16px;font-weight:600;margin-bottom:15px;color:#333}.logs-list{display:flex;flex-direction:column;gap:10px}.log-item{display:flex;align-items:center;gap:10px;padding:10px;background:#f9f9f9;border-left:3px solid #3498db;border-radius:4px}.log-time{font-size:12px;color:#999;min-width:200px}.log-message{flex:1;font-size:14px;color:#333}.log-delete-btn{background:none;border:none;color:#dc3545;cursor:pointer;font-size:14px;padding:5px}.log-delete-btn:hover{color:#c82333}.empty-note{font-size:14px;color:#999;font-style:italic;padding:15px;background:#f5f5f5;border-radius:4px;text-align:center}.signatures-list{display:flex;flex-direction:column;gap:20px}.signature-item{padding:15px;border:1px solid #ddd;border-radius:6px;background:#fafafa}.signature-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #eee}.signer-role{font-weight:600;color:#333}.signature-time{font-size:12px;color:#999}.signature-image{width:100%;max-width:300px;height:auto;border:1px solid #ddd;border-radius:4px;padding:10px;background:#fff;margin-top:10px}.add-service-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.add-service-page .page-title{font-size:24px;font-weight:500;margin:0}.add-service-page .form-grid{display:grid;grid-template-columns:3fr 1fr;gap:30px;align-items:flex-start}.add-service-page .card{background-color:#fff;border:1px solid #e9ecef;border-radius:4px;margin-bottom:20px}.add-service-page .card-header{padding:15px 20px;background-color:#f8f9fa;border-bottom:1px solid #e9ecef}.add-service-page .card-header h3{margin:0;font-size:16px;font-weight:500}.add-service-page .card-body{padding:20px}.add-service-page .card-description{font-size:12px;color:#6c757d;margin-top:0;margin-bottom:15px}.add-service-page .form-row{margin-bottom:20px}.add-service-page .form-row:last-child{margin-bottom:0}.add-service-page .form-row.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.add-service-page .input-group{display:flex;flex-direction:column}.add-service-page .input-group label{margin-bottom:8px;font-size:14px;color:#495057;font-weight:500}.add-service-page .input-group input[type=text],.add-service-page .input-group input[type=email],.add-service-page .input-group input[type=tel],.add-service-page .input-group input[type=password],.add-service-page .input-group input[type=datetime-local],.add-service-page .input-group input[type=date],.add-service-page .accessory-input-group input,.add-service-page .input-group select,.add-service-page .input-group textarea{width:100%;padding:10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;box-sizing:border-box;background-color:#fff!important;color:#212529!important}.add-service-page .radio-group{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:20px}.add-service-page .radio-group label{margin-bottom:0;font-size:14px;color:#495057;font-weight:400}.add-service-page .radio-group>label{font-weight:500}.add-service-page .radio-group input[type=radio]{appearance:none;-webkit-appearance:none;width:16px;height:16px;border:1px solid #ced4da;border-radius:50%;cursor:pointer;position:relative;top:2px;margin-right:5px}.add-service-page .radio-group input[type=radio]:checked:before{content:"";display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background-color:#007bff}.add-service-page .checkbox-group{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.add-service-page .checkbox-group>div{display:flex;align-items:center}.add-service-page .checkbox-group label{font-size:14px;display:flex;align-items:center;font-weight:400}.add-service-page .checkbox-group>label{font-weight:500;margin-bottom:5px}.add-service-page .checkbox-group input[type=checkbox]{appearance:none;-webkit-appearance:none;width:16px;height:16px;border:1px solid #ced4da;border-radius:4px;cursor:pointer;margin-right:10px;position:relative;top:1px}.add-service-page .checkbox-group input[type=checkbox]:checked{background-color:#007bff;border-color:#007bff}.add-service-page .checkbox-group input[type=checkbox]:checked:before{content:"✔";color:#fff;font-size:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.add-service-page .checkbox-group small{font-size:12px;color:#6c757d}.add-service-page .btn-block{width:100%;margin-top:10px}.add-service-page .input-group small{font-size:12px;color:#6c757d;margin-top:5px}.add-service-page .btn-primary{background-color:#28a745;color:#fff;border-color:#28a745}.add-service-page .btn-secondary{background-color:#6c757d;color:#fff;border-color:#6c757d}.add-service-page .btn-grey{background-color:#f8f9fa;color:#343a40;border-color:#ced4da}.card-description{margin-top:2px;padding-top:5px;border-top:px solid #e9ecef}.add-service-page .error-box{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;padding:10px;margin-bottom:15px;font-size:14px}.conditional-fields{border-top:1px solid #e9ecef;margin-top:20px;padding-top:20px}.conditional-fields.indented{padding-left:25px;border-left:3px solid #e9ecef;margin-left:10px}.field-description{font-size:14px;color:#6c757d;display:block;margin-bottom:20px}.radio-group.vertical{flex-direction:column;align-items:flex-start;gap:10px}.radio-group.vertical>label{font-weight:500;margin-bottom:5px}.alert-info{background-color:#e7f3fe;border:1px solid #b3d7ff;color:#004085;padding:15px;border-radius:4px;font-size:14px}.show-more-container{margin-top:20px;padding-top:20px;border-top:1px solid #e9ecef}.show-more-container a{color:#007bff;text-decoration:none;font-weight:500}.accessory-input-group{display:flex;gap:10px;margin-bottom:10px}.accessory-input-group input{flex-grow:1}.btn-icon{flex-shrink:0;width:40px;height:40px;padding:0;font-size:20px;background-color:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer}.accessory-tags{display:flex;flex-wrap:wrap;gap:10px}.accessory-tag{background-color:#e7f3fe;color:#004085;padding:5px 10px;border-radius:4px;display:flex;align-items:center;font-size:14px}.accessory-tag button{background:none;border:none;color:#004085;margin-left:8px;cursor:pointer;font-size:16px;padding:0;line-height:1}.accessory-tag button:hover{color:#e74c3c}.input-with-symbol{position:relative;display:flex;align-items:center}.input-with-symbol input{padding-right:40px}.input-with-symbol span{position:absolute;right:15px;color:#6c757d;font-weight:700}.service-settings-page .page-header{margin-bottom:10px;align-items:flex-start;text-align:left}.service-settings-page .page-header h1{font-size:24px;font-weight:500}.settings-grid{display:grid;grid-template-columns:3fr 1fr;gap:30px;align-items:flex-start}.card{background-color:#fff;border:1px solid #e9ecef;border-radius:4px;margin-bottom:20px}.card-header{padding:15px 20px;background-color:#f8f9fa;border-bottom:1px solid #e9ecef}.card-header h3{margin:0;font-size:16px;font-weight:500}.card-body{padding:20px}.card-description{font-size:14px;color:#6c757d;margin-top:0;margin-bottom:20px;line-height:1.5}.settings-group{display:flex;flex-direction:column;gap:20px}.settings-group.two-col{display:grid;grid-template-columns:1fr 1fr;gap:30px}.setting-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center;border-bottom:1px solid #f1f1f1;padding-bottom:20px}.setting-row.single-col{grid-template-columns:1fr}.setting-row:last-child{border-bottom:none;padding-bottom:0}.setting-label{flex-grow:1}.setting-label label{font-weight:500;color:#333;font-size:15px}.setting-label small{font-size:13px;color:#888;display:block;margin-top:4px;line-height:1.4}.setting-control{text-align:right}.setting-row.single-col .setting-control{text-align:left;margin-top:10px}.radio-toggle{display:inline-flex;border:1px solid #ccc;border-radius:4px;overflow:hidden}.radio-toggle input{display:none}.radio-toggle label{padding:8px 15px;cursor:pointer;background-color:#f8f9fa;color:#333;transition:all .2s ease-in-out;font-size:14px}.radio-toggle input:checked+label{background-color:#8e44ad;color:#fff;box-shadow:inset 0 0 5px #0003}.setting-control input[type=text],.setting-control textarea,.setting-control select{width:100%;padding:10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;box-sizing:border-box;background-color:#fff!important;color:#212529!important}.form-input-sm{padding:8px 12px;border:1px solid #ccc;border-radius:4px;width:100px;text-align:center}.radio-group-inline{display:flex;gap:20px;align-items:center}.radio-group-inline div{display:flex;align-items:center;gap:5px}.radio-group-inline label{font-weight:400;font-size:14px}.radio-group-inline input[type=radio]{appearance:none;-webkit-appearance:none;width:16px;height:16px;border:1px solid #ced4da;border-radius:50%;cursor:pointer;position:relative;top:-1px;background-color:#fff}.radio-group-inline input[type=radio]:checked:before{content:"";display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background-color:#8e44ad}.sticky-card{position:sticky;top:20px}.btn{padding:10px 18px;border-radius:4px;border:1px solid transparent;cursor:pointer;font-weight:500;display:flex;justify-content:center;align-items:center;gap:8px;text-decoration:none;font-size:15px}.btn-success{background-color:#28a745;color:#fff;border:none}.btn-light{background-color:#f8f9fa;color:#343a40;border:1px solid #ced4da}.btn-block{width:100%;margin-top:10px;padding:10px;font-size:15px;font-weight:500;cursor:pointer}.placeholder-content{display:flex;align-items:center;justify-content:center;min-height:60px;background-color:#f8f9fa;border:1px dashed #ced4da;border-radius:4px}.section-header{margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid #f1f1f1}.section-header h2{font-size:20px;font-weight:500;margin:0 0 5px}.settings-group-vertical{display:flex;flex-direction:column;gap:20px}.form-group-vertical{display:flex;flex-direction:column}.form-group-vertical label{font-weight:500;color:#333;font-size:15px;margin-bottom:8px}.form-group-vertical small{font-size:13px;color:#888;display:block;margin-bottom:8px;line-height:1.4}.form-group-vertical input,.form-group-vertical select{width:100%;padding:10px;border:1px solid #ced4da;border-radius:4px;font-size:14px;box-sizing:border-box;background-color:#fff!important;color:#212529!important}.two-col-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.btn-success{background-color:#94c13d;color:#fff;border:none;text-transform:uppercase;font-weight:700}.btn-light{background-color:#f0f0f0;color:#555;border:1px solid #ddd;text-transform:uppercase;font-weight:700}.btn-light:hover{background-color:#e0e0e0}.btn-block{width:100%;margin-top:10px;padding:12px;font-size:14px;cursor:pointer}.proposal-page-container{padding:20px;background-color:#f4f6f9;min-height:100vh}.proposal-sheet{background:#fff;width:210mm;min-height:297mm;padding:20mm;margin:0 auto;box-shadow:0 0 15px #0000001a;color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;position:relative}.sheet-header{display:flex;justify-content:space-between;border-bottom:2px solid #333;padding-bottom:10px;margin-bottom:30px}.company-logo h2{margin:0;color:#d35400;letter-spacing:1px}.company-logo small{color:#666}.proposal-meta{text-align:right}.proposal-meta h3{margin:0 0 10px;color:#333}.proposal-meta p{margin:3px 0;font-size:14px}.customer-info-section{margin-bottom:30px;padding:15px;background-color:#f9f9f9;border-radius:4px;border-left:4px solid #d35400}.customer-info-section h4{margin:0 0 5px;font-size:16px}.customer-info-section p{margin:2px 0;font-size:14px;color:#555}.proposal-table{width:100%;border-collapse:collapse;margin-top:20px;font-size:14px}.proposal-table th{background-color:#eee;padding:12px;text-align:left;font-weight:600;border-bottom:2px solid #ddd}.proposal-table td{padding:12px;border-bottom:1px solid #eee}.text-right{text-align:right}.text-center{text-align:center}.totals-section{margin-top:30px;float:right;width:300px}.total-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #eee}.grand-total{font-weight:700;font-size:18px;border-top:2px solid #333;border-bottom:none;padding-top:15px;color:#d35400}.notes-section{clear:both;padding-top:60px;font-size:13px;color:#555}.signature-section{display:flex;justify-content:space-between;margin-top:80px;page-break-inside:avoid}.sign-box{width:250px;height:80px;border-bottom:1px solid #333;margin-top:10px;text-align:center;color:#ccc;line-height:80px;font-size:12px}.add-item-row{display:flex;gap:10px;background:#eef2f7;padding:15px;margin-top:20px;border:1px dashed #ccc;border-radius:4px}.add-item-row input,.add-item-row select{padding:8px;border:1px solid #ccc;border-radius:4px}.btn-icon-danger{background:none;border:none;color:#e74c3c;cursor:pointer}@media print{.no-print{display:none!important}body{background-color:#fff;margin:0;padding:0}.main-layout,.sidebar,.main-header{display:none}.proposal-page-container{padding:0;margin:0;width:100%}.proposal-sheet{box-shadow:none;margin:0;width:100%;max-width:100%;padding:0}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#333;background-color:#f0f2f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}#root{width:100%;height:100vh;margin:0;padding:0;text-align:center}
