body{background:#f4f6f5;color:#1d2a22}.navbar-brand{letter-spacing:-.3px}.card{border:0;border-radius:14px}.card-header{background:#fff;border-bottom:1px solid #edf0ee;padding:1rem 1.25rem}.table>:not(caption)>*>*{padding:.85rem 1rem}.btn,.form-control,.form-select{border-radius:9px}.metric{transition:transform .15s}.metric:hover{transform:translateY(-2px)}
.brand-logo{width:42px;height:42px;object-fit:contain;background:#fff;border-radius:50%;padding:2px}.login-logo{display:block;width:150px;height:150px;object-fit:contain;background:#fff;border-radius:50%;box-shadow:0 .25rem 1rem rgba(0,0,0,.12)}.club-card-logo-button{display:inline-block;width:150px;height:150px;padding:0;overflow:hidden;border:0;border-radius:50%;background:#fff;vertical-align:middle;box-shadow:0 .25rem 1rem rgba(0,0,0,.12)}.club-card-logo-button:hover .login-logo,.club-card-logo-button:focus-visible .login-logo{box-shadow:none;transform:scale(1.02)}.club-card-logo-button:focus-visible{outline:3px solid rgba(7,85,140,.3);outline-offset:5px}.club-card-logo-button:disabled{opacity:.7}.club-card-logo-button .login-logo{width:100%;height:100%;box-shadow:none;transition:transform .15s}@media(max-width:575.98px){.navbar-brand span{font-size:.9rem}.brand-logo{width:36px;height:36px}}
:root{--fab-blue:#07558c;--fab-blue-dark:#043b63;--fab-blue-soft:#e7f1f8}
body{background:#f2f6f9;color:#152d3d}
.bg-success{background-color:var(--fab-blue)!important}
.text-success{color:var(--fab-blue)!important}
.border-success{border-color:var(--fab-blue)!important}
.btn-success{--bs-btn-bg:var(--fab-blue);--bs-btn-border-color:var(--fab-blue);--bs-btn-hover-bg:var(--fab-blue-dark);--bs-btn-hover-border-color:var(--fab-blue-dark);--bs-btn-active-bg:var(--fab-blue-dark);--bs-btn-active-border-color:var(--fab-blue-dark)}
.btn-outline-success{--bs-btn-color:var(--fab-blue);--bs-btn-border-color:var(--fab-blue);--bs-btn-hover-bg:var(--fab-blue);--bs-btn-hover-border-color:var(--fab-blue);--bs-btn-active-bg:var(--fab-blue-dark);--bs-btn-active-border-color:var(--fab-blue-dark)}
.alert-success{--bs-alert-color:var(--fab-blue-dark);--bs-alert-bg:var(--fab-blue-soft);--bs-alert-border-color:#b9d6e9}
.page-link{color:var(--fab-blue)}.active>.page-link,.page-link.active{background-color:var(--fab-blue);border-color:var(--fab-blue)}
.form-control:focus,.form-select:focus{border-color:#65a3cb;box-shadow:0 0 0 .25rem rgba(7,85,140,.18)}
.chart-box{position:relative;height:260px}.border-orange{border-color:#fd7e14!important}.indicator-card{min-width:115px}
.emergency-field{background:#fff1f2;border:1px solid #f1aeb5}
.navbar-dark .navbar-nav .nav-urgent{color:#ffb4b4}.navbar-dark .navbar-nav .nav-urgent:hover,.navbar-dark .navbar-nav .nav-urgent:focus{color:#fff;background:#dc3545;border-radius:.5rem}
.navbar-dark .navbar-nav .nav-sale{color:#7ee2a8}.navbar-dark .navbar-nav .nav-sale:hover,.navbar-dark .navbar-nav .nav-sale:focus{color:#0f5132;background:#d1e7dd;border-radius:.5rem}
.login-copyright{font-size:.8rem;line-height:1.4;margin-top:1.5rem;padding-bottom:1rem}
.material-description{min-width:280px}.material-thumb{width:56px;height:56px;object-fit:cover;border-radius:10px;border:1px solid #d7e0e5;background:#fff}.material-thumb-lg{width:90px;height:90px}.material-photo{display:block;max-width:100%;max-height:420px;margin:auto;object-fit:contain;border-radius:14px;border:1px solid #d7e0e5;background:#fff}.material-photo-placeholder{min-height:240px;display:grid;place-items:center;border:2px dashed #cbd5db;border-radius:14px;color:#6c757d;background:#f8fafb}.material-notes{white-space:pre-wrap}
.load-material{min-width:300px;max-width:560px}.load-thumb{width:58px;height:58px;object-fit:cover;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 5px #0003}.load-photo-preview{position:relative;display:inline-block}.load-photo-preview .badge{position:absolute;right:-8px;bottom:-4px}.load-photo-grid,.load-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px}.load-photo-option{padding:10px;border:1px solid #d7e0e5;border-radius:12px;background:#f8fafb;cursor:pointer}.load-photo-option img,.load-gallery img{width:100%;height:120px;object-fit:cover;border-radius:9px;background:#fff}.load-photo-option .form-check{margin-top:8px}.load-gallery a{display:block;padding:5px;border:1px solid #d7e0e5;border-radius:12px;background:#fff}.load-details dd{margin-bottom:1rem}.load-notes{white-space:pre-wrap}
.load-actions-button{font-weight:800;letter-spacing:2px;line-height:1}.load-qr-image{display:block;width:min(100%,360px);height:auto;margin:auto;image-rendering:pixelated}.load-qr-url{word-break:break-all}
.load-qr-selection{max-height:520px;overflow:auto}
@media (min-width:992px){.load-table-responsive{overflow:visible}}
.maintenance-title{min-width:260px}.maintenance-text{white-space:pre-wrap}.maintenance-details dd{margin-bottom:1rem}.maintenance-photo-empty{min-height:130px}.maintenance-priority-low{background:#6c757d}.maintenance-priority-medium{background:#0d6efd}.maintenance-priority-high{background:#fd7e14}.maintenance-priority-urgent{background:#dc3545}.maintenance-status-open{background:#6c757d}.maintenance-status-analysis{background:#6f42c1}.maintenance-status-in_progress{background:#0d6efd}.maintenance-status-waiting_material{background:#ffc107;color:#212529}.maintenance-status-completed{background:#198754}
.maintenance-row-priority-low{--bs-table-bg:#f3f4f6;--bs-table-hover-bg:#e8eaed}.maintenance-row-priority-medium{--bs-table-bg:#e7f1ff;--bs-table-hover-bg:#d9e8fc}.maintenance-row-priority-high{--bs-table-bg:#fff0df;--bs-table-hover-bg:#ffe5c8}.maintenance-row-priority-urgent{--bs-table-bg:#f8d7da;--bs-table-hover-bg:#f1c3c7}.maintenance-age-green{color:#198754}.maintenance-age-orange{color:#d96704}.maintenance-age-red{color:#dc3545}
.maintenance-card-priority-low{background:#f3f4f6}.maintenance-card-priority-medium{background:#e7f1ff}.maintenance-card-priority-high{background:#fff0df}.maintenance-card-priority-urgent{background:#f8d7da}
:root{--sidebar-width:278px;--sidebar-bg:#063b61;--sidebar-bg-dark:#052f4d;--sidebar-active:#0b6095;--topbar-height:70px}.app-shell{display:flex;min-height:100vh}.app-sidebar{width:var(--sidebar-width)!important;flex:0 0 var(--sidebar-width);height:100vh;position:sticky;top:0;background:linear-gradient(165deg,var(--sidebar-bg),var(--sidebar-bg-dark));color:#fff;border:0!important;transition:margin-left .22s ease,visibility .22s ease}.sidebar-body{display:flex!important;flex-direction:column;padding:0!important;overflow-y:auto}.sidebar-mobile-header{border-bottom:1px solid rgba(255,255,255,.12)}.sidebar-brand{display:flex;align-items:center;gap:.8rem;padding:1.25rem 1.15rem;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.12)}.sidebar-brand:hover{color:#fff}.sidebar-brand img{width:52px;height:52px;object-fit:contain;background:#fff;border-radius:50%;padding:2px}.sidebar-brand span{min-width:0}.sidebar-brand small,.sidebar-brand strong{display:block}.sidebar-brand small{font-size:.68rem;color:#b7d3e4;text-transform:uppercase;letter-spacing:.04em}.sidebar-brand strong{font-size:1.05rem;white-space:nowrap}.sidebar-nav{padding:1.25rem .8rem;flex:1}.sidebar-group{margin-bottom:.35rem}.sidebar-module{width:100%;display:flex;align-items:center;gap:.75rem;min-height:48px;padding:.65rem .8rem;border:0;border-radius:10px;background:transparent;color:#dceaf2;text-align:left;text-decoration:none;font-weight:600;transition:background .15s,color .15s}.sidebar-module:hover,.sidebar-module:focus,.sidebar-module.active{background:var(--sidebar-active);color:#fff}.sidebar-module.urgent{background:#a92838;color:#fff}.sidebar-module.urgent:hover,.sidebar-module.urgent:focus{background:#c43144;color:#fff}.sidebar-module-icon{width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px;border:1px solid rgba(255,255,255,.3);border-radius:8px;font-size:.78rem;font-weight:800}.sidebar-chevron{margin-left:auto;font-size:1.1rem;transition:transform .18s}.sidebar-module[aria-expanded=true] .sidebar-chevron{transform:rotate(180deg)}.sidebar-submenu{margin:.25rem 0 .55rem 2.25rem;padding-left:.75rem;border-left:1px solid rgba(255,255,255,.2)}.sidebar-submenu a{display:block;padding:.55rem .7rem;border-radius:8px;color:#bad2e1;text-decoration:none;font-size:.92rem}.sidebar-submenu a:hover,.sidebar-submenu a.active{color:#fff;background:rgba(255,255,255,.1)}.app-main{min-width:0;flex:1}.app-topbar{height:var(--topbar-height);display:flex;align-items:center;gap:1rem;padding:0 1.4rem;background:#fff;border-bottom:1px solid #dce5ea;box-shadow:0 2px 12px rgba(15,52,73,.06);z-index:1020}.sidebar-toggle{width:42px;height:42px;display:grid;align-content:center;gap:5px;padding:9px;border:0;border-radius:9px;background:#e8f1f6}.sidebar-toggle span{display:block;height:2px;background:var(--fab-blue);border-radius:2px}.topbar-title strong,.topbar-title small{display:block}.topbar-title strong{font-size:.95rem;color:#12364b}.topbar-title small{font-size:.72rem;color:#78909c}.topbar-account{display:flex;align-items:center;gap:.65rem;margin-left:auto}.topbar-avatar{width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px;border-radius:50%;background:#dceef8;color:var(--sidebar-bg);font-weight:800}.topbar-account-info{min-width:0}.topbar-account-info strong,.topbar-account-info small{display:block;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-account-info small{font-size:.72rem;color:#78909c}.logout-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:38px;padding:.45rem .75rem;border:1px solid #efb8be;border-radius:999px;background:#fff1f2;color:#b42334;font-size:.82rem;font-weight:700;line-height:1;transition:background .15s,color .15s,border-color .15s,transform .15s}.logout-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.logout-button:hover,.logout-button:focus-visible{border-color:#c43144;background:#c43144;color:#fff;transform:translateY(-1px)}.logout-button:focus-visible{outline:3px solid rgba(196,49,68,.2);outline-offset:2px}.app-page{padding:1.75rem;max-width:1800px}.app-shell.sidebar-collapsed .app-sidebar{margin-left:calc(var(--sidebar-width) * -1)}
@media(min-width:992px){.sidebar-mobile-header{display:none}.app-sidebar.offcanvas-lg{transform:none!important;visibility:visible!important}.app-shell.sidebar-collapsed .app-sidebar{visibility:hidden!important}}
@media(max-width:991.98px){.app-sidebar{position:fixed;width:min(86vw,310px)!important;height:100vh}.app-topbar{height:62px;padding:0 .9rem}.app-page{padding:1rem}.sidebar-brand{padding-top:.8rem}.sidebar-brand img{width:44px;height:44px}.topbar-account-info small{display:none}}
@media(max-width:575.98px){.topbar-title{display:none}.topbar-account{gap:.4rem}.topbar-avatar{width:32px;height:32px;flex-basis:32px}.topbar-account-info strong{max-width:105px;font-size:.85rem}.logout-button{width:38px;padding:.45rem}.logout-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.app-page{padding:.85rem}.app-page h1.h3{font-size:1.55rem}}
/* Caixa */
.cash-balance-card{border-left:4px solid var(--bs-primary)!important}.cash-account-icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;background:#e7f1ff;color:#0d6efd;font-weight:700}.cash-total{display:block;font-size:clamp(1.8rem,5vw,2.55rem);line-height:1.2;margin:.45rem 0 1rem}.cash-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1rem;font-size:.88rem}.cash-breakdown span{display:flex;justify-content:space-between;gap:.5rem;border-top:1px solid #edf0f2;padding-top:.45rem}@media(max-width:575.98px){.cash-breakdown{grid-template-columns:1fr}.cash-total{font-size:2rem}}
@media print{.app-sidebar,.app-topbar,.alert,.btn,.d-print-none{display:none!important}.app-main{margin:0!important}.app-page{padding:0!important}.card{box-shadow:none!important;border:1px solid #ddd!important}.cash-total{font-size:1.7rem}}
.role-manager .sidebar-module.urgent{background:transparent;color:#dceaf2}.role-manager .sidebar-module.urgent:hover,.role-manager .sidebar-module.urgent:focus{background:var(--sidebar-active);color:#fff}
/* Instalação do PWA */
.pwa-install{position:fixed;right:1rem;bottom:1rem;z-index:1090;width:min(calc(100vw - 2rem),430px);display:grid;grid-template-columns:52px 1fr auto auto;align-items:center;gap:.75rem;padding:.85rem;background:#fff;border:1px solid #cfe0ea;border-radius:16px;box-shadow:0 12px 36px rgba(6,59,97,.2)}.pwa-install[hidden]{display:none}.pwa-install img{border-radius:12px}.pwa-install-copy{min-width:0}.pwa-install-copy strong,.pwa-install-copy span{display:block}.pwa-install-copy strong{color:#12364b}.pwa-install-copy span{font-size:.8rem;color:#607d8b;line-height:1.35}.pwa-install-close{align-self:start;border:0;background:transparent;color:#78909c;font-size:1.35rem;line-height:1;padding:0 .1rem}.pwa-standalone .pwa-install{display:none!important}@media(max-width:575.98px){.pwa-install{right:.65rem;bottom:.65rem;width:calc(100vw - 1.3rem);grid-template-columns:44px 1fr auto;padding:.75rem}.pwa-install img{width:44px;height:44px}.pwa-install-close{position:absolute;right:.35rem;top:.25rem}.pwa-install .btn{grid-column:2/4;justify-self:start}}
.product-card{min-height:112px;padding:.85rem;border:1px solid #d7e2e8;border-radius:.75rem;background:#fff;color:#12364b;transition:box-shadow .15s,border-color .15s,transform .15s}.product-card:hover,.product-card:focus{border-color:#198754;box-shadow:0 4px 14px rgba(6,59,97,.14);transform:translateY(-1px)}.product-card:disabled{opacity:.55;cursor:not-allowed}.product-card strong{font-size:.95rem}.sale-cart-panel{position:sticky;top:1rem}.sale-cart-items{max-height:42vh;overflow:auto}.sale-cart-row .product-name{max-width:180px}.quantity-control{width:132px}.quantity-control input{max-width:42px}.sale-cart-row .remove{line-height:1}@media(max-width:991.98px){.sale-cart-items{max-height:30vh}}@media(max-width:575.98px){.product-card{min-height:124px;padding:.7rem}.product-card strong{font-size:.88rem}.sale-cart-items{max-height:34vh}.sale-cart-row .product-name{max-width:145px}}
.product-card-visual{display:grid;place-items:center;width:100%;height:92px;margin-bottom:.65rem;border-radius:.55rem;overflow:hidden;background:#f4f7f8}.product-card-visual img{width:100%;height:100%;object-fit:contain}.product-image-placeholder{display:grid;place-items:center;background:#f4f7f8;color:#8798a1;font-size:1.35rem}.product-card-visual .product-image-placeholder{width:100%;height:100%;font-size:2rem}.product-list-thumb,.product-edit-preview{width:52px;height:52px;flex:0 0 52px;border-radius:.55rem;border:1px solid #d7e2e8;object-fit:contain;background:#f4f7f8}.product-edit-preview{width:96px;height:96px;flex-basis:96px}.product-list-thumb.product-image-placeholder{font-size:1rem}
.notification-bell{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;font-size:1.25rem;text-decoration:none}.notification-bell.has-notifications{animation:notification-pulse 1.5s ease-in-out infinite}.notification-bell span{position:absolute;top:-3px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:10px;background:#c43144;color:#fff;font-size:.68rem;font-weight:800;text-align:center;line-height:18px}@keyframes notification-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.12);background:#fff1f2}}
.pending-delivery-bell[hidden],.pending-delivery-menu-link[hidden],.pending-delivery-bell span[hidden],.sidebar-pending-delivery-badge[hidden]{display:none!important}.pending-delivery-bell.has-pending-delivery{animation:pending-delivery-pulse 1.2s ease-in-out infinite}.pending-delivery-bell span{background:#c43144}.pending-delivery-menu-link{position:relative}.sidebar-pending-delivery-badge{display:inline-grid;place-items:center;min-width:1.2rem;height:1.2rem;margin-left:auto;padding:0 .28rem;border-radius:999px;background:#c43144;color:#fff;font-size:.7rem;font-weight:800;line-height:1;box-shadow:0 0 0 2px rgba(255,255,255,.12);animation:pending-delivery-pulse 1.2s ease-in-out infinite}@keyframes pending-delivery-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.12);filter:brightness(1.12)}}
.topbar-cart:not([hidden]){display:grid;color:#176b43;background:#eaf8f0;animation:cart-pop .28s ease-out}.topbar-cart span{background:#c43144}.sale-cart-panel:focus{outline:3px solid rgba(25,135,84,.25);outline-offset:3px}@keyframes cart-pop{0%{transform:scale(.72)}70%{transform:scale(1.12)}100%{transform:scale(1)}}
.topbar-cart-label{display:none;position:absolute;right:0;top:calc(100% + .45rem);max-width:260px;padding:.45rem .65rem;border-radius:.5rem;background:#fff;color:#12364b;box-shadow:0 4px 14px rgba(15,52,73,.18);font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:1030}.topbar-cart:hover .topbar-cart-label,.topbar-cart:focus-visible .topbar-cart-label{display:block}
.sidebar-submenu-group{margin:.3rem 0 .45rem;padding:.25rem 0 .15rem;border-top:1px solid rgba(255,255,255,.12)}.sidebar-submenu-group>span{display:block;padding:.45rem .7rem .2rem;color:#dceaf2;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.sidebar-submenu-group a{padding-left:1.1rem}
.sidebar-pending-badge{display:inline-grid;place-items:center;min-width:1.2rem;height:1.2rem;margin-left:auto;padding:0 .28rem;border-radius:999px;background:#f0ad19;color:#17364a;font-size:.7rem;font-weight:800;line-height:1;box-shadow:0 0 0 2px rgba(255,255,255,.12)}
.sidebar-submenu a.orders-link{background:transparent;color:inherit}.sidebar-submenu a.orders-link:hover,.sidebar-submenu a.orders-link.active{background:rgba(255,255,255,.1);color:#fff}.sidebar-submenu a.staff-orders-link{background:#198754;color:#fff}.sidebar-submenu a.staff-orders-link:hover,.sidebar-submenu a.staff-orders-link.active{background:#157347;color:#fff}.sidebar-module.sale-link{background:#198754;color:#fff}.sidebar-module.sale-link:hover,.sidebar-module.sale-link:focus,.sidebar-module.sale-link.active{background:#157347;color:#fff}.sidebar-submenu a.sale-link{background:#198754;color:#fff}.sidebar-submenu a.sale-link:hover,.sidebar-submenu a.sale-link.active{background:#157347;color:#fff}.payment-paid{background-color:#198754!important}
.topbar-medals,.account-medals,.tenure-medals{display:inline-flex;align-items:center;gap:.15rem;white-space:nowrap}.topbar-medals{font-size:1.15rem}.account-medals,.tenure-medals{font-size:1.1rem}
.sale-credit-balance{display:inline-flex;align-items:baseline;gap:.45rem;padding:.35rem .7rem;border:1px solid #cfe0ea;border-radius:999px;background:#f8fbfd;color:var(--fab-blue);text-decoration:none;white-space:nowrap;font-size:.95rem}.sale-credit-balance:hover,.sale-credit-balance:focus{color:var(--fab-blue-dark);border-color:#8fb9d2;background:#eef7fb}.sale-credit-balance-label{color:#607d8b;font-size:.8rem}@media(max-width:575.98px){.sale-credit-balance{width:100%;justify-content:space-between;border-radius:.65rem;padding:.5rem .7rem}.sale-credit-balance-label{font-size:.82rem}}
.service-stars{display:inline-flex;align-items:center;gap:.05rem;font-size:1.05rem;line-height:1;letter-spacing:-.12em;text-shadow:0 1px 1px rgba(0,0,0,.18)}.service-stars.bronze{color:#b87333}.service-stars.prata{color:#9aa0a6}.service-stars.ouro{color:#d49b12}.service-stars.platina{color:#6aaec9}
