:root{--brand:#007a3d;--brand-light:#00934a;--brand-dark:#005f30;--green:#007a3d}
body{background:#f4f6f9;color:#263238;font-size:.94rem}.bg-enel{background:var(--brand)!important}.navbar-brand small{display:block;font-size:.61rem;font-weight:400;opacity:.75;letter-spacing:.03em}.navbar .nav-link i{margin-right:.2rem}
.brand-logo{width:38px;height:38px;border-radius:.38rem;object-fit:cover}.login-app-logo{width:92px;height:92px;border-radius:1rem;box-shadow:0 3px 12px rgba(0,0,0,.16)}
.btn-primary{--bs-btn-bg:var(--brand);--bs-btn-border-color:var(--brand);--bs-btn-hover-bg:var(--brand-dark);--bs-btn-hover-border-color:var(--brand-dark);--bs-btn-active-bg:var(--brand-dark);--bs-btn-active-border-color:var(--brand-dark)}.btn-outline-primary{--bs-btn-color:var(--brand);--bs-btn-border-color:var(--brand);--bs-btn-hover-bg:var(--brand);--bs-btn-hover-border-color:var(--brand);--bs-btn-active-bg:var(--brand);--bs-btn-active-border-color:var(--brand)}.text-primary{color:var(--brand)!important}.bg-primary,.text-bg-primary{background-color:var(--brand)!important}.form-control:focus,.form-select:focus{border-color:rgba(0,122,61,.55);box-shadow:0 0 0 .25rem rgba(0,122,61,.18)}a{color:var(--brand)}a:hover{color:var(--brand-dark)}
.card{border:0;border-radius:.65rem;box-shadow:0 1px 5px rgba(0,0,0,.09)}.card-header{background:#fff;border-bottom:1px solid #e9ecef;font-weight:600}.page-title{font-size:1.55rem;font-weight:700;margin:0}.page-subtitle{color:#6c757d;margin:.2rem 0 0}
.stat-card{display:block;background:#fff;border-radius:.65rem;border-left:5px solid var(--brand);box-shadow:0 1px 5px rgba(0,0,0,.09);padding:1rem 1.2rem;text-decoration:none;color:inherit;height:100%}.stat-card:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.13)}.stat-card .value{font-size:2rem;font-weight:700;color:var(--brand);line-height:1}.stat-card .label{color:#6c757d;text-transform:uppercase;font-size:.76rem;letter-spacing:.05em;margin-top:.4rem}.stat-card.green{border-color:#198754}.stat-card.green .value{color:#198754}.stat-card.orange{border-color:#fd7e14}.stat-card.orange .value{color:#fd7e14}.stat-card.red{border-color:#dc3545}.stat-card.red .value{color:#dc3545}
.status-dot{display:inline-block;width:.65rem;height:.65rem;border-radius:50%;margin-right:.35rem}.status-dot.success{background:#198754}.status-dot.danger{background:#dc3545}.status-dot.warning{background:#ffc107}.status-dot.info{background:#0dcaf0}.table>:not(caption)>*>*{vertical-align:middle}.required:after{content:' *';color:#dc3545}.quick-action{min-height:74px;display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600}.quick-action i{font-size:1.35rem}.product-row.expired{background:#fff0f1}.product-row.missing{background:#fff8e1}.product-row.warning{background:#eefafd}.login-wrap{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand),var(--brand-light));padding:1rem}.login-card{max-width:420px;width:100%}.empty-state{text-align:center;padding:3rem 1rem;color:#6c757d}.empty-state i{font-size:3rem;display:block;margin-bottom:.75rem}
@media(max-width:767px){body{font-size:.9rem}.page-title{font-size:1.3rem}.stat-card .value{font-size:1.6rem}.mobile-card-table thead{display:none}.mobile-card-table tr{display:block;border-bottom:1px solid #ddd;padding:.65rem}.mobile-card-table td{display:flex;justify-content:space-between;border:0!important;padding:.25rem .4rem}.mobile-card-table td:before{content:attr(data-label);font-weight:600;margin-right:1rem}.btn-mobile-block{width:100%}}
