.tramo-velocidad-modal.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:99999}.tramo-velocidad-modal .modal-card{background:var(--bg-card);border-radius:16px;width:560px;max-width:90vw;box-shadow:var(--shadow-lg);overflow:hidden}.tramo-velocidad-modal .modal-header{display:flex;align-items:center;gap:12px;padding:20px 24px;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary)}.tramo-velocidad-modal .modal-header .modal-header-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--accent)}.tramo-velocidad-modal .modal-header .modal-header-icon i{font-size:16px;color:#fff}.tramo-velocidad-modal .modal-header .modal-title{flex:1;margin:0;font-size:16px;font-weight:700;color:var(--text-primary)}.tramo-velocidad-modal .modal-header .modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);font-size:14px;cursor:pointer;border-radius:8px;transition:all .2s ease}.tramo-velocidad-modal .modal-header .modal-close:hover{background:var(--border-primary);color:var(--text-secondary)}.tramo-velocidad-modal .modal-body{padding:24px;max-height:70vh;overflow-y:auto}.tramo-velocidad-modal .modal-body .form-row{display:flex;gap:16px;margin-bottom:16px}.tramo-velocidad-modal .modal-body .form-row:last-child{margin-bottom:0}.tramo-velocidad-modal .modal-body .form-group{flex:1}.tramo-velocidad-modal .modal-body .form-label{display:block;font-size:12px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px}.tramo-velocidad-modal .modal-body .form-input{width:100%;padding:10px 14px;border:1px solid var(--border-primary);border-radius:10px;font-size:14px;font-weight:500;color:var(--text-primary);background:var(--bg-input);transition:all .2s ease;box-sizing:border-box}.tramo-velocidad-modal .modal-body .form-input:hover{border-color:var(--border-hover)}.tramo-velocidad-modal .modal-body .form-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(102,126,234,.15)}.tramo-velocidad-modal .modal-body .form-input::-moz-placeholder{color:var(--text-muted);font-weight:400;font-style:italic}.tramo-velocidad-modal .modal-body .form-input::placeholder{color:var(--text-muted);font-weight:400;font-style:italic}.tramo-velocidad-modal .modal-body .form-input:disabled{opacity:.6;cursor:not-allowed}.tramo-velocidad-modal .modal-body .form-color{width:56px;height:40px;padding:2px;cursor:pointer;flex-shrink:0}.tramo-velocidad-modal .modal-body .color-row{display:flex;gap:10px;align-items:center}.tramo-velocidad-modal .modal-body .toggle-label{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--border-primary);border-radius:10px;background:var(--bg-input);cursor:pointer;font-size:14px;color:var(--text-primary)}.tramo-velocidad-modal .modal-body .toggle-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.tramo-velocidad-modal .modal-body .form-error{color:var(--danger);font-size:13px;margin-top:12px;padding:10px 12px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.25);border-radius:8px}.tramo-velocidad-modal .modal-body .form-error ul{margin:0;padding-left:18px}.tramo-velocidad-modal .modal-body .form-error ul li+li{margin-top:4px}.tramo-velocidad-modal .modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;background:var(--bg-secondary);border-top:1px solid var(--border-primary)}.tramo-velocidad-modal .btn-cancel,.tramo-velocidad-modal .btn-create{padding:10px 20px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.tramo-velocidad-modal .btn-cancel{background:var(--bg-card);color:var(--text-tertiary);border:1px solid var(--border-primary)}.tramo-velocidad-modal .btn-cancel:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.tramo-velocidad-modal .btn-cancel:disabled{opacity:.5;cursor:not-allowed}.tramo-velocidad-modal .btn-create{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#fff}.tramo-velocidad-modal .btn-create:hover:not(:disabled){background:var(--accent-hover)}.tramo-velocidad-modal .btn-create:disabled{opacity:.5;cursor:not-allowed}.listado-tramos-velocidad{padding:16px 24px;width:100%;max-width:none;margin:0;background:var(--bg-page);min-height:100vh;box-sizing:border-box}.listado-tramos-velocidad .crear-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.listado-tramos-velocidad .crear-btn:hover{background:var(--accent-hover)}.listado-tramos-velocidad .crear-btn i{font-size:14px}.listado-tramos-velocidad .tramo-color-swatch{display:inline-block;width:32px;height:20px;border-radius:4px;border:1px solid rgba(0,0,0,.2);vertical-align:middle}