.layout{min-height:100vh;display:flex;flex-direction:column}.navbar{background-color:#fff;padding:0 20px;display:flex;align-items:center;height:60px;color:#333;box-shadow:0 2px 4px #0000001a;border-bottom:2px solid #f57c00}.navbar-brand a{color:#283546;text-decoration:none;font-size:24px;font-weight:700;display:flex;align-items:center;gap:10px}.navbar-logo{height:50px;width:auto;border-radius:4px}.navbar-menu{display:flex;gap:20px;margin-left:40px;align-items:center}.nav-link{color:#555;text-decoration:none;font-size:14px;padding:8px 12px;border-radius:4px;transition:background-color .2s,color .2s}.nav-link:hover{background-color:#fff3e0;color:#e65100}.nav-link.active{background-color:#f57c00;color:#fff;font-weight:500}.navbar-user{margin-left:auto;display:flex;align-items:center;gap:15px}.user-info{display:flex;align-items:center;gap:10px;font-size:14px;color:#333}.user-info .badge{text-transform:capitalize}.navbar-user .btn{background-color:#f57c00;color:#fff;border:none}.navbar-user .btn:hover{background-color:#e65100}.main-content{flex:1;padding:20px 0}.footer{background-color:#f8f9fa;padding:15px 30px;text-align:right;border-top:1px solid #eee}.footer-logo{height:38px;width:auto;opacity:.8}.footer-logo:hover{opacity:1}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1976d2,#f57c00)}.login-card{background:#fff;padding:40px;border-radius:10px;box-shadow:0 10px 40px #0003;width:100%;max-width:400px}.login-card h1{text-align:center;color:#333;margin-bottom:10px}.login-title{display:flex;align-items:center;justify-content:center;gap:12px}.login-logo{height:60px;width:auto}.login-subtitle{text-align:center;color:#666;margin-bottom:30px}.btn-block{width:100%;margin-top:10px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background-color:#f5f5f5;color:#333;line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:20px}.btn{display:inline-block;padding:10px 20px;border:none;border-radius:5px;cursor:pointer;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .2s}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#218838}.btn-small{padding:5px 10px;font-size:12px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:5px;font-size:14px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#007bff}.card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;margin-bottom:20px}.card-header{border-bottom:1px solid #eee;padding-bottom:15px;margin-bottom:15px}.card-header h2{font-size:18px;color:#333}.table{width:100%;border-collapse:separate;border-spacing:0}.table th,.table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.table th{background:#2c3e50;color:#fff;font-weight:500}.table thead tr th:first-child{border-top-left-radius:8px}.table thead tr th:last-child{border-top-right-radius:8px}.table tr:hover{background-color:#f8f9fa}.alert{padding:12px 20px;border-radius:5px;margin-bottom:15px}.alert-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.alert-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.alert-info{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.badge{display:inline-block;padding:3px 8px;border-radius:12px;font-size:12px;font-weight:500}.badge-admin{background-color:#dc3545;color:#fff}.badge-tecnico{background-color:#007bff;color:#fff}.badge-cliente,.badge-attivo{background-color:#28a745;color:#fff}.badge-inattivo{background-color:#6c757d;color:#fff}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h1{font-size:24px;color:#333}.loading{text-align:center;padding:40px;color:#666}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:8px;padding:20px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h2{font-size:18px}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.modal-close:hover{color:#333}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.file-input-wrapper{position:relative;display:inline-block;width:100%}.file-input-wrapper input[type=file]{width:100%;padding:10px;border:2px dashed #ddd;border-radius:5px;cursor:pointer}.file-input-wrapper input[type=file]:hover{border-color:#007bff}.actions{display:flex;gap:5px}.empty-state{text-align:center;padding:40px;color:#666}.empty-state p{margin-bottom:20px}.cliente-nome{background-color:#6c757d;color:#fff;padding:4px 12px;border-radius:4px;font-weight:700}
