.theme-toggle-floating{position:fixed;right:1rem;bottom:1rem;z-index:10060;pointer-events:none}.theme-toggle-floating .theme-toggle{pointer-events:auto}#root:has(.app-developer-footer) .theme-toggle-floating{display:none}.theme-toggle{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.75rem;font-weight:600;line-height:1;border-radius:999px;border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-primary);box-shadow:0 2px 10px var(--color-shadow);cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.theme-toggle:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong);transform:translateY(-1px)}.theme-toggle .bi{font-size:.95rem}.theme-toggle.is-compact{padding:.4rem .55rem}.theme-toggle.is-compact span{display:none}html[data-theme=dark] .login-container .theme-toggle,html[data-theme=dark] .role-selector-container .theme-toggle{background:var(--color-bg-elevated)}.app-developer-footer{flex-shrink:0;border-top:1px solid var(--color-border-light, #ecf0f1);background:var(--color-bg-secondary, #fff);padding:.5rem 1.25rem;z-index:1}.app-developer-footer.is-auth{background:transparent;border-top-color:#ffffff26}.app-developer-footer.is-auth .app-developer-footer-text,.app-developer-footer.is-auth .app-developer-footer-company{color:#ffffffbf}.app-developer-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1rem;max-width:100%}.app-developer-footer-center{flex:1;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem 1rem;min-width:0}.app-developer-footer-theme{flex-shrink:0}.app-developer-footer.is-auth .app-developer-footer-theme .theme-toggle{background:#ffffff1f;border-color:#ffffff40;color:#ffffffeb;box-shadow:none}.app-developer-footer.is-auth .app-developer-footer-theme .theme-toggle:hover{background:#fff3;border-color:#ffffff59}.app-developer-footer-text{font-size:.75rem;color:var(--color-text-muted, #95a5a6);line-height:1.3}.app-developer-footer-link{font-size:.75rem;color:var(--color-text-muted, #95a5a6);text-decoration:underline;text-underline-offset:2px;line-height:1.3}.app-developer-footer-link:hover{color:var(--color-text-secondary, #7f8c8d)}.app-developer-footer.is-auth .app-developer-footer-link{color:#ffffffbf}.app-developer-footer.is-auth .app-developer-footer-link:hover{color:#ffffffeb}.app-developer-footer-company{font-size:.7rem;color:var(--color-text-secondary, #7f8c8d);font-weight:500}.app-developer-footer-logo{height:22px;width:auto;max-width:120px;object-fit:contain;opacity:.85}.app-content-with-footer{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.app-content-with-footer .app-content-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.flash-toast-host{position:fixed;top:1.25rem;right:1.25rem;z-index:10350;display:flex;flex-direction:column;gap:.5rem;pointer-events:none;max-width:min(360px,calc(100vw - 2rem))}.flash-toast-item{pointer-events:auto;display:flex;align-items:center;gap:.65rem;padding:.75rem 1rem;border-radius:8px;box-shadow:0 4px 16px #0000002e;background:var(--color-bg-secondary, #fff);border-left:4px solid var(--color-success, #27ae60);color:var(--color-text-primary, #2c3e50);font-size:.9rem;animation:flashToastIn .25s ease-out}.flash-toast-item.is-danger{border-left-color:var(--color-danger, #e74c3c)}.flash-toast-item.is-warning{border-left-color:var(--color-warning, #f39c12)}.flash-toast-item .bi{font-size:1.1rem;color:var(--color-success, #27ae60);flex-shrink:0}.flash-toast-item.is-danger .bi{color:var(--color-danger, #e74c3c)}@keyframes flashToastIn{0%{opacity:0;transform:translate(1rem)}to{opacity:1;transform:translate(0)}}.navbar.is-primary.header-entity{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);margin-bottom:0;box-shadow:0 2px 12px var(--color-shadow);position:relative;z-index:30}.navbar.is-primary.header-coc{background:linear-gradient(135deg,var(--color-danger) 0%,color-mix(in srgb,var(--color-danger) 75%,#000) 100%);box-shadow:0 2px 12px var(--color-shadow)}.navbar.is-primary.header-admin{background:linear-gradient(135deg,var(--color-admin-accent) 0%,color-mix(in srgb,var(--color-admin-accent) 65%,#312e81) 100%)}.header-left-content{display:flex;align-items:center;gap:1rem;flex:1;min-width:0;padding:.5rem 0}.navbar-item.header-left-content{flex:1;min-width:0;overflow:hidden;padding-left:1.5rem}@media(max-width:768px){.navbar-item.header-left-content{padding-left:0}}.header-logo-wrapper{flex-shrink:0;margin-left:1.5rem}.header-logo{max-height:48px;width:auto;object-fit:contain}@media(max-width:768px){.header-logo-wrapper{margin-left:0}}.header-mobile-toggle-wrapper{flex-shrink:0;margin-right:.75rem}@media(min-width:1024px){.header-mobile-toggle-wrapper{display:none!important}}.header-icon-wrapper{flex-shrink:0;margin-right:1rem}.header-icon{width:44px;height:44px;border-radius:12px;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;box-shadow:0 4px 15px #0000001a;transition:transform .3s ease}.header-icon:hover{transform:scale(1.05)}.header-text-content,.header-title-wrapper{flex:1;min-width:0;overflow:hidden}.header-title-wrapper .title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.header-subtitle-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;display:block}.mobile-menu-toggle{min-width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease;flex-shrink:0;margin-left:.5rem}.mobile-menu-toggle:hover{background-color:#fff3!important;transform:scale(1.05)}.mobile-menu-toggle:active{transform:scale(.95)}.mobile-menu-toggle .icon{font-size:1.5rem}@media(min-width:1024px){.mobile-menu-toggle{display:none!important}}@media(max-width:1023px){.mobile-menu-toggle{display:flex!important;visibility:visible!important;opacity:1!important}}.navbar-menu,.navbar-menu.is-active{display:block!important}@media(max-width:768px){.navbar.is-primary{padding:.5rem 1rem}.navbar.is-primary:not(:has(.navbar-menu:not(.is-hidden-mobile))) .navbar-brand{flex:1 1 100%;max-width:100%}.navbar-brand{flex:1;min-width:0;overflow:hidden}.header-left-content{gap:.75rem;padding:.25rem 0}.header-logo{max-height:36px}.header-icon{width:36px;height:36px;font-size:1.2rem;flex-shrink:0}.header-icon-wrapper{flex-shrink:0}.header-text-content{min-width:0;flex:1;overflow:hidden}.navbar.is-primary .title.is-4{font-size:1.1rem;line-height:1.3;margin-bottom:.25rem}.navbar.is-primary .subtitle.is-6{font-size:.75rem;line-height:1.2}.navbar-menu{flex-shrink:0;display:block!important;position:static!important;box-shadow:none!important;background:transparent!important}.navbar-end{align-items:center;justify-content:flex-end}.navbar-item{padding:.5rem}.mobile-menu-toggle{display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:1}}.admin-dashboard{display:flex;flex-direction:column;width:100%;height:100vh;height:100dvh;overflow:hidden}.admin-main{flex:1;min-height:0}.admin-main-content{min-width:0}.admin-dashboard.admin-dashboard--embedded{min-height:100vh;height:100vh;overflow:hidden;background:var(--color-bg-primary, #f5f6f8)}.admin-dashboard--embedded .admin-main{margin:0;height:100%;min-height:0}.admin-dashboard--embedded .admin-main-content{width:100%!important;max-width:100%!important;flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;padding:.75rem}.admin-dashboard--embedded .admin-page{padding-bottom:2rem}.admin-dashboard--embedded .modal-card{max-height:calc(100vh - 2rem)}.admin-dashboard--embedded .table-container{overflow-x:auto}.address-suggestions-input{position:relative;width:100%}.address-suggestions-input__loader{position:absolute;right:.65rem;top:50%;transform:translateY(-50%);color:var(--color-text-muted, #7a7a7a);pointer-events:none}.address-suggestions-input__list{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:40;margin:0;padding:.25rem 0;list-style:none;max-height:14rem;overflow-y:auto;background:var(--color-bg-secondary, #fff);border:1px solid var(--color-border-strong, #dbdbdb);border-radius:.5rem;box-shadow:0 8px 24px var(--color-shadow-strong, rgba(10, 10, 10, .12))}.address-suggestions-input__option{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.55rem .75rem;border:none;background:transparent;color:var(--color-text-primary, #363636);text-align:left;font-size:.875rem;line-height:1.35;cursor:pointer}.address-suggestions-input__option:hover,.address-suggestions-input__option.is-active{background:var(--color-bg-hover, #f5f5f5);color:var(--color-accent-navy, #1a365d)}.address-suggestions-input__label{flex:1;min-width:0}.address-suggestions-input__badge{flex-shrink:0;font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-accent-navy, #1a365d);background:#1a365d14;border-radius:.25rem;padding:.1rem .35rem}.coc-modal-overlay{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:clamp(.75rem,3vw,1.25rem);background:var(--color-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.coc-modal-panel{display:flex;flex-direction:column;width:100%;max-height:min(90dvh,900px);overflow:hidden;background:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-auth-card, 1rem);box-shadow:0 12px 40px var(--color-shadow-strong)}.coc-modal-panel--sm{max-width:26rem}.coc-modal-panel--md{max-width:32.5rem}.coc-modal-panel--lg{max-width:43.75rem}.coc-modal-panel--xl{max-width:56rem}.coc-modal-panel__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-shrink:0;padding:1rem 1.25rem;background:linear-gradient(135deg,var(--color-danger) 0%,color-mix(in srgb,var(--color-danger) 75%,#000) 100%);border-bottom:1px solid color-mix(in srgb,var(--color-danger) 40%,transparent)}.coc-modal-panel__title{margin:0;font-size:1.15rem;font-weight:700;line-height:1.3;color:var(--color-text-inverse);display:flex;align-items:center;gap:.5rem}.coc-modal-panel__close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:.5rem;background:#ffffff1f;color:var(--color-text-inverse);cursor:pointer;transition:background .15s ease,border-color .15s ease}.coc-modal-panel__close:hover{background:#ffffff38;border-color:#ffffff80}.coc-modal-panel__body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:1.25rem}.coc-modal-panel__footer{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem;padding:.85rem 1.25rem;border-top:1px solid var(--color-border-light);background:var(--color-bg-tertiary)}.modal.is-active.coc-bulma-modal,.coc-bulma-modal.modal.is-active{z-index:10050}.coc-bulma-modal .modal-background{pointer-events:none}.modal-card.coc-modal.coc-modal-panel--sm,.modal-card.coc-modal.coc-modal-panel--md,.modal-card.coc-modal.coc-modal-panel--lg,.modal-card.coc-modal.coc-modal-panel--xl{width:calc(100% - 2rem)}.modal-card.coc-modal{max-height:min(90dvh,900px);display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius-auth-card, 1rem);border:1px solid var(--color-border);box-shadow:0 12px 40px var(--color-shadow-strong)}.modal-card.coc-modal .modal-card-head{flex-shrink:0;background:linear-gradient(135deg,var(--color-danger) 0%,color-mix(in srgb,var(--color-danger) 75%,#000) 100%);border-bottom:none}.modal-card.coc-modal .modal-card-title{font-size:1.1rem;font-weight:700;color:var(--color-text-inverse)!important}.modal-card.coc-modal .modal-card-head .delete{background-color:#ffffff26}.modal-card.coc-modal .modal-card-head .delete:before,.modal-card.coc-modal .modal-card-head .delete:after{background-color:var(--color-text-inverse)}.modal-card.coc-modal .modal-card-head .delete:hover{background-color:#ffffff47}.modal-card.coc-modal .modal-card-body{flex:1 1 auto;min-height:0;overflow-y:auto;background:var(--color-bg-secondary);color:var(--color-text-primary)}.modal-card.coc-modal .modal-card-foot{flex-shrink:0;justify-content:flex-end;gap:.5rem;background:var(--color-bg-tertiary);border-top:1px solid var(--color-border-light)}.coc-dashboard--coc .modal-card.coc-modal .button.is-primary,.coc-modal-overlay .button.is-primary,.coc-modal-panel .button.is-primary{background-color:var(--color-danger);border-color:transparent;color:var(--color-text-inverse)}.coc-dashboard--coc .modal-card.coc-modal .button.is-primary:hover,.coc-modal-overlay .button.is-primary:hover:not(:disabled),.coc-modal-panel .button.is-primary:hover:not(:disabled){background-color:color-mix(in srgb,var(--color-danger) 88%,#000)}.coc-modal-panel .input,.coc-modal-panel .textarea,.coc-modal-panel .select select,.modal-card.coc-modal .input,.modal-card.coc-modal .textarea,.modal-card.coc-modal .select select{border-radius:.625rem}.coc-modal-drawer{position:fixed;inset:0;z-index:10055;display:flex;align-items:center;justify-content:center;padding:1rem;background:var(--color-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.coc-modal-drawer__panel{width:100%;max-width:56rem;max-height:min(92dvh,920px);overflow:hidden;display:flex;flex-direction:column;background:var(--color-bg-secondary);border-radius:var(--radius-auth-card, 1rem);border:1px solid var(--color-border);box-shadow:0 12px 40px var(--color-shadow-strong)}@media(max-width:768px){.modal-card.coc-modal{width:100%;max-height:95dvh;border-radius:.75rem}.coc-modal-panel__footer{flex-direction:column-reverse;align-items:stretch}.coc-modal-panel__footer .button{width:100%}.modal-card.coc-modal .modal-card-foot{flex-direction:column-reverse}.modal-card.coc-modal .modal-card-foot .button{width:100%}}@media(prefers-reduced-motion:reduce){.coc-modal-panel{animation:none}}.municipality-operational-templates__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.municipality-operational-templates__toolbar-info{flex:1;min-width:0}.municipality-operational-templates__toolbar .button.is-primary{flex-shrink:0}.municipality-operational-templates__list{list-style:none;margin:0;padding:0}.municipality-operational-templates__item{padding:1rem 1.1rem;margin-bottom:.75rem;border:1px solid var(--color-border-light, #e8e8e8);border-radius:10px;background:var(--color-bg-secondary, #fafafa);transition:border-color .15s ease,box-shadow .15s ease}.municipality-operational-templates__item-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.municipality-operational-templates__item-title{flex:1;min-width:0;display:block;font-size:.95rem;line-height:1.35;color:var(--color-text-primary, #363636);word-break:break-word}.municipality-operational-templates__item-desc{margin:.5rem 0 0;font-size:.8rem;line-height:1.45;color:var(--color-text-secondary, #7a7a7a);word-break:break-word}.municipality-operational-templates__item-coords{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.35rem;margin:.5rem 0 0;font-size:.78rem;color:var(--color-info, #3298dc);word-break:break-all}.municipality-operational-templates__item-coords .bi{font-size:.85rem;flex-shrink:0}.municipality-operational-templates__item-tag{margin-top:.5rem}.municipality-operational-templates__item-actions{display:flex;flex-direction:row;flex-shrink:0;align-items:center;gap:.35rem}.municipality-operational-templates__item-actions .button{width:2rem;height:2rem;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:8px}.municipality-operational-templates__item-actions .button .icon{margin:0!important}.municipality-operational-templates__item:hover{border-color:var(--color-primary, #3273dc);box-shadow:0 2px 8px #0000000f}.municipality-operational-templates__item--inactive{opacity:.72}.municipality-operational-form-modal.coc-bulma-modal,.municipality-operational-form-modal.entity-bulma-modal{z-index:10250}.municipality-operational-form-modal__coords{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}.municipality-operational-templates__empty{text-align:center;padding:2.5rem 1rem;border:1px dashed var(--color-border-light, #dbdbdb);border-radius:10px;background:var(--color-bg-tertiary, #f5f5f5)}.municipality-operational-templates__empty .button{max-width:100%}.coc-operational-plan-view .box{padding:1.25rem}.coc-operational-plan-view .title.is-5{line-height:1.35;word-break:break-word}.coc-operational-plan-view .municipality-operational-templates__toolbar{padding-bottom:.25rem;border-bottom:1px solid var(--color-border-light, #ededed)}.municipality-operational-modal.entity-bulma-modal{z-index:10200}.municipality-operational-modal__card{max-width:640px}.municipality-operational-modal .modal-card-body{overflow-y:auto;max-height:calc(100vh - 10rem);max-height:calc(100dvh - 10rem);-webkit-overflow-scrolling:touch}@media(max-width:768px){.municipality-operational-templates__toolbar{flex-direction:column;align-items:stretch;gap:.75rem}.municipality-operational-templates__toolbar .button.is-primary{width:100%;justify-content:center;min-height:2.75rem}.municipality-operational-templates__item{padding:.85rem .9rem}.municipality-operational-templates__item-actions .button{width:2.75rem;height:2.75rem}.municipality-operational-templates__empty{padding:1.75rem .75rem}.municipality-operational-templates__empty .button{width:100%;justify-content:center}.coc-operational-plan-view .box{padding:1rem .85rem;border-radius:8px}.coc-operational-plan-view .title.is-5{font-size:1.1rem}.coc-operational-plan-view .help.mb-4{margin-bottom:1rem!important;font-size:.85rem}.municipality-operational-form-modal__coords{grid-template-columns:1fr}.municipality-operational-modal .modal-card{width:100%!important;max-width:100%!important;max-height:100dvh;margin:0}.municipality-operational-modal .modal-card-body{max-height:calc(100dvh - 8rem);padding:.85rem}}@media(max-width:480px){.municipality-operational-templates__item-header{flex-wrap:wrap}.municipality-operational-templates__item-title{font-size:.9rem}.municipality-operational-templates__item-desc{font-size:.78rem}.municipality-operational-templates__item-coords{font-size:.75rem}}.volunteer-modal-tabs.tabs{background-color:var(--color-bg-secondary)!important;border-bottom:1px solid var(--color-border);margin-bottom:0!important;padding-left:0!important;padding-right:0!important}.volunteer-modal-tabs.tabs ul{border-bottom-color:var(--color-border)}.volunteer-modal-tabs.tabs li a{background-color:var(--color-bg-primary)!important;border-color:var(--color-border)}.volunteer-modal-tabs.tabs li.is-active a{background-color:var(--color-bg-secondary)!important;border-bottom:1px solid var(--color-bg-secondary)!important;margin-bottom:-1px!important;position:relative;z-index:1}.volunteer-modal-autocomplete .dropdown-menu{width:100%!important;padding-top:.25rem}.volunteer-modal-autocomplete .dropdown-content{max-height:200px;overflow-y:auto;box-shadow:0 8px 16px #0a0a0a1a}.volunteer-modal-autocomplete .dropdown-item{cursor:pointer}.volunteer-modal-autocomplete .dropdown-item:hover{background-color:var(--color-bg-primary)}.volunteer-modal-tabs.tabs li.has-field-error>a{color:var(--color-danger, #e74c3c)!important;font-weight:600}.volunteer-modal-form-error{margin-bottom:1rem}.volunteer-modal-field-error{margin-top:.25rem}.volunteer-modal-section-title{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);padding-bottom:.35rem;margin-bottom:1rem;margin-top:.25rem}.volunteer-modal-tabs.tabs ul{flex-wrap:wrap}@media(max-width:768px){.entity-bulma-modal .modal-card.entity-modal-panel--lg{max-height:95dvh}.volunteer-modal-tabs.tabs li a{font-size:.8rem;padding:.4rem .65rem}}.link-qr-code{margin-top:.75rem;padding:.75rem;border-radius:.65rem;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-border-light, #e2e8f0)}.link-qr-code__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.link-qr-code__label{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:700;color:var(--color-text-secondary, #64748b);text-transform:uppercase;letter-spacing:.04em}.link-qr-code__download{min-height:1.75rem;height:1.75rem;padding-left:.55rem;padding-right:.65rem}.link-qr-code__body{display:flex;justify-content:center;align-items:center;min-height:5rem}.link-qr-code__image{display:block;border-radius:.45rem;background:#fff;padding:.35rem;box-shadow:0 1px 4px #0f172a14}.link-qr-code__status{margin:0;font-size:.78rem;color:var(--color-text-secondary, #64748b)}.link-qr-code__status.is-error{color:var(--color-danger, #e74c3c)}.link-qr-code__hint{margin:.45rem 0 0;font-size:.72rem;text-align:center;color:var(--color-text-secondary, #64748b)}.users-view-bulma .users-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-bottom:1rem}.users-view-bulma .users-toolbar__search{flex:1 1 280px;max-width:420px;margin-bottom:0}.users-view-bulma .users-toolbar__meta{font-size:.8125rem;color:var(--color-text-secondary, #64748b);white-space:nowrap}.users-view-bulma .users-table-wrap{border:1px solid var(--color-admin-border);border-radius:12px;overflow:auto;background:var(--color-bg-primary, #fff)}.users-view-bulma .users-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem}.users-view-bulma .users-table thead th{position:sticky;top:0;z-index:2;background:var(--color-bg-secondary, #f8fafc);border-bottom:1px solid var(--color-admin-border);padding:.65rem .85rem;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary, #64748b);white-space:nowrap}.users-view-bulma .users-table tbody tr{transition:background-color .12s ease}.users-view-bulma .users-table tbody tr:hover{background:color-mix(in srgb,var(--color-primary, #3273dc) 4%,transparent)}.users-view-bulma .users-table tbody td{padding:.75rem .85rem;border-bottom:1px solid var(--color-admin-border);vertical-align:middle}.users-view-bulma .users-table tbody tr:last-child td{border-bottom:none}.users-view-bulma .users-table__id{width:3rem;color:var(--color-text-secondary, #94a3b8);font-size:.8125rem;font-variant-numeric:tabular-nums}.users-view-bulma .users-table__user-inner{display:flex;align-items:center;gap:.65rem;min-width:0}.users-view-bulma .users-table__avatar{flex-shrink:0;width:2.125rem;height:2.125rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;letter-spacing:.02em;color:var(--color-primary, #3273dc);background:color-mix(in srgb,var(--color-primary, #3273dc) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-primary, #3273dc) 18%,transparent)}.users-view-bulma .users-table__user-text{min-width:0;display:flex;flex-direction:column;gap:.1rem}.users-view-bulma .users-table__email{font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}.users-view-bulma .users-table__name{font-size:.8125rem;color:var(--color-text-secondary, #64748b);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}.users-view-bulma .users-table__cf{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem;color:var(--color-text-secondary, #64748b);white-space:nowrap}.users-view-bulma .users-table__empty{color:var(--color-text-secondary, #94a3b8)}.users-view-bulma .users-table__entity-chips{display:flex;flex-wrap:wrap;gap:.35rem;max-width:320px}.users-view-bulma .users-table__entity-chip{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;padding:.2rem .45rem .2rem .3rem;border-radius:999px;border:1px solid var(--color-admin-border);background:var(--color-bg-secondary, #f8fafc);font-size:.75rem;line-height:1.25}.users-view-bulma .users-table__entity-type{flex-shrink:0;width:1.125rem;height:1.125rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:800;color:#fff}.users-view-bulma .users-table__entity-type.is-associazione{background:#3273dc}.users-view-bulma .users-table__entity-type.is-ente,.users-view-bulma .users-table__entity-type.is-comune{background:#f59e0b}.users-view-bulma .users-table__entity-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:11rem;color:var(--color-text-primary)}.users-view-bulma .users-table__entity-more{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:600;color:var(--color-text-secondary);background:var(--color-bg-tertiary, #eef2f7);border:1px dashed var(--color-admin-border);cursor:help}.users-view-bulma .users-table__roles{display:flex;flex-wrap:wrap;gap:.3rem;max-width:280px}.users-view-bulma .users-table__roles .tag{margin:0;font-size:.6875rem;font-weight:600;border-radius:999px}.users-view-bulma .users-table__muni{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;color:var(--color-text-secondary);background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border);white-space:nowrap}.users-view-bulma .users-table__muni.is-active{color:#0f766e;background:#ecfdf5;border-color:#99f6e4}.users-view-bulma .users-table__last-login{display:inline-block;font-size:.8125rem;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-text-primary)}.users-view-bulma .users-table__last-login.is-empty{color:var(--color-text-secondary, #94a3b8);font-style:italic}.users-view-bulma .users-table__login-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.75rem;padding:.2rem .5rem;border-radius:999px;font-size:.8125rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-text-secondary);background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border)}.users-view-bulma .users-table__login-count.is-active{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.users-view-bulma .users-table__actions{display:flex;align-items:center;justify-content:flex-end;gap:.25rem}.users-view-bulma .users-table__actions .button{width:2rem;height:2rem;padding:0;border-radius:8px}.users-view-bulma .users-table__actions .button .icon{width:1rem;height:1rem}@media(max-width:1100px){.users-view-bulma .users-table__email,.users-view-bulma .users-table__name{max-width:180px}.users-view-bulma .users-table__entity-chips{max-width:220px}}.user-modal-card{max-width:920px;width:94%}.user-modal-tabs{display:flex;gap:.35rem;padding:0 1.25rem;border-bottom:1px solid var(--color-border, #e8e8e8);background:var(--color-bg-secondary, #fafafa)}.user-modal-tabs__btn{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1rem;margin-bottom:-1px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--color-text-secondary, #666);font-size:.875rem;font-weight:600;cursor:pointer;transition:color .15s ease,border-color .15s ease}.user-modal-tabs__btn:hover{color:var(--color-text-primary, #222)}.user-modal-tabs__btn.is-active{color:var(--color-primary, #003366);border-bottom-color:var(--color-primary, #003366)}.user-modal-tabs__badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .35rem;border-radius:999px;background:var(--color-primary, #003366);color:#fff;font-size:.65rem;font-weight:700}.user-modal-section{margin-bottom:1.5rem}.user-modal-section__head{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.85rem}.user-modal-section__icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:8px;background:var(--color-bg-tertiary, #eef2f6);color:var(--color-primary, #003366);flex-shrink:0}.user-modal-section__title{margin:0;font-size:.95rem;font-weight:700;color:var(--color-text-primary, #222)}.user-modal-section__subtitle{margin:.15rem 0 0;font-size:.78rem;color:var(--color-text-secondary, #666);line-height:1.4}.user-modal-flow{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;padding:.65rem .85rem;margin-bottom:1.25rem;border-radius:8px;background:var(--color-bg-tertiary, #f0f4f8);font-size:.75rem;color:var(--color-text-secondary, #555)}.user-modal-flow__step{display:inline-flex;align-items:center;gap:.3rem;font-weight:600}.user-modal-flow__step.is-done{color:var(--color-primary, #003366)}.user-modal-flow__arrow{opacity:.45}.user-modal-system-panel{padding:.85rem 1rem;border-radius:10px;border:1px solid color-mix(in srgb,var(--color-danger, #f14668) 25%,transparent);background:color-mix(in srgb,var(--color-danger, #f14668) 6%,var(--color-bg-primary, #fff))}.user-modal-system-panel .user-modal-role-chip{border-color:color-mix(in srgb,var(--color-danger, #f14668) 30%,transparent)}.user-modal-entity-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem}.user-modal-entity-pick{display:flex;align-items:flex-start;gap:.6rem;padding:.75rem .85rem;border-radius:10px;border:1.5px solid var(--color-border, #ddd);background:var(--color-bg-primary, #fff);cursor:pointer;text-align:left;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.user-modal-entity-pick:hover{border-color:var(--color-primary, #003366);background:var(--color-bg-secondary, #fafafa)}.user-modal-entity-pick.is-selected{border-color:var(--color-primary, #003366);background:color-mix(in srgb,var(--color-primary, #003366) 7%,var(--color-bg-primary, #fff));box-shadow:0 0 0 1px color-mix(in srgb,var(--color-primary, #003366) 20%,transparent)}.user-modal-entity-pick__check{margin-top:.15rem;accent-color:var(--color-primary, #003366);flex-shrink:0}.user-modal-entity-pick__name{display:block;font-size:.85rem;font-weight:600;color:var(--color-text-primary, #222);line-height:1.3}.user-modal-entity-access{border-radius:12px;border:1px solid var(--color-border, #e0e0e0);background:var(--color-bg-primary, #fff);overflow:hidden}.user-modal-entity-access+.user-modal-entity-access{margin-top:.75rem}.user-modal-entity-access__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;background:var(--color-bg-tertiary, #f4f6f9);border-bottom:1px solid var(--color-border, #e8e8e8)}.user-modal-entity-access__title{margin:0;font-size:.9rem;font-weight:700}.user-modal-entity-access__body{padding:1rem}.user-modal-role-group{margin-bottom:.85rem}.user-modal-role-group:last-child{margin-bottom:0}.user-modal-role-group__label{display:block;margin-bottom:.45rem;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary, #777)}.user-modal-role-chips{display:flex;flex-wrap:wrap;gap:.5rem}.user-modal-role-chip{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-width:140px;max-width:220px;flex:1 1 140px;padding:.65rem .75rem;border-radius:10px;border:1.5px solid var(--color-border, #ddd);background:var(--color-bg-secondary, #fafafa);cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.user-modal-role-chip:hover{border-color:var(--color-primary, #003366)}.user-modal-role-chip.is-active{border-color:var(--color-primary, #003366);background:color-mix(in srgb,var(--color-primary, #003366) 10%,var(--color-bg-primary, #fff));box-shadow:0 0 0 1px color-mix(in srgb,var(--color-primary, #003366) 18%,transparent)}.user-modal-role-chip.is-active.tone-coc{border-color:#257953;background:color-mix(in srgb,#257953 10%,var(--color-bg-primary, #fff));box-shadow:0 0 0 1px color-mix(in srgb,#257953 18%,transparent)}.user-modal-role-chip.is-active.tone-responsabile{border-color:#485fc7;background:color-mix(in srgb,#485fc7 10%,var(--color-bg-primary, #fff));box-shadow:0 0 0 1px color-mix(in srgb,#485fc7 18%,transparent)}.user-modal-role-chip__code{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;font-weight:800;color:var(--color-text-primary, #222)}.user-modal-role-chip__desc{font-size:.7rem;color:var(--color-text-secondary, #666);line-height:1.35}.user-modal-subpanel{margin-top:.85rem;padding:.85rem;border-radius:10px;border:1px dashed var(--color-border, #ccc);background:var(--color-bg-secondary, #fafafa)}.user-modal-subpanel__title{display:flex;align-items:center;gap:.4rem;margin:0 0 .65rem;font-size:.82rem;font-weight:700;color:var(--color-text-primary, #333)}.user-modal-search{margin-bottom:.65rem}.user-modal-search .input{font-size:.85rem}.user-modal-muni-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.4rem;max-height:220px;overflow-y:auto;padding-right:.25rem}.user-modal-muni-item{display:flex;align-items:center;gap:.45rem;padding:.45rem .55rem;border-radius:8px;font-size:.8rem;cursor:pointer;transition:background .12s ease}.user-modal-muni-item:hover{background:var(--color-bg-hover, #eee)}.user-modal-muni-item.is-selected{background:color-mix(in srgb,#257953 12%,var(--color-bg-primary, #fff))}.user-modal-muni-item input{accent-color:#257953;flex-shrink:0}.user-modal-resp-c-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .65rem;border-radius:8px;border:1px solid var(--color-border, #e0e0e0);background:var(--color-bg-primary, #fff);margin-bottom:.4rem}.user-modal-resp-c-row:last-child{margin-bottom:0}.user-modal-sections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.35rem;max-height:200px;overflow-y:auto}.user-modal-empty{padding:1.25rem;text-align:center;font-size:.82rem;color:var(--color-text-secondary, #888)}.user-modal-type-tag{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}@media(max-width:640px){.user-modal-role-chip{min-width:100%;max-width:none}.user-modal-entity-grid{grid-template-columns:1fr}}.entities-view-bulma .entities-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-bottom:1rem}.entities-view-bulma .entities-toolbar__search{flex:1 1 280px;max-width:420px;margin-bottom:0}.entities-view-bulma .entities-toolbar__filters{display:flex;flex-wrap:wrap;gap:.35rem}.entities-view-bulma .entities-filter-chip{border:1px solid var(--color-admin-border);background:var(--color-bg-primary, #fff);color:var(--color-text-secondary);border-radius:999px;padding:.2rem .65rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.entities-view-bulma .entities-filter-chip:hover{border-color:var(--color-primary, #3273dc);color:var(--color-primary, #3273dc)}.entities-view-bulma .entities-filter-chip.is-active{background:color-mix(in srgb,var(--color-primary, #3273dc) 12%,transparent);border-color:var(--color-primary, #3273dc);color:var(--color-primary, #3273dc)}.entities-view-bulma .entities-toolbar__meta{font-size:.8125rem;color:var(--color-text-secondary, #64748b);white-space:nowrap}.entities-view-bulma .entities-table-wrap{border:1px solid var(--color-admin-border);border-radius:12px;overflow:auto;background:var(--color-bg-primary, #fff)}.entities-view-bulma .entities-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem}.entities-view-bulma .entities-table thead th{position:sticky;top:0;z-index:2;background:var(--color-bg-secondary, #f8fafc);border-bottom:1px solid var(--color-admin-border);padding:.65rem .85rem;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary, #64748b);white-space:nowrap}.entities-view-bulma .entities-table tbody td{padding:.75rem .85rem;border-bottom:1px solid var(--color-admin-border);vertical-align:middle}.entities-view-bulma .entities-table tbody tr:last-child td,.entities-view-bulma .entities-table tbody tr.sections-expanded-row td{border-bottom:none}.entities-view-bulma .entities-table tbody tr:not(.sections-expanded-row):hover{background:color-mix(in srgb,var(--color-primary, #3273dc) 4%,transparent)}.entities-view-bulma .entities-table__expand{width:2.5rem;padding-left:.65rem;padding-right:.25rem}.entities-view-bulma .entities-table__expand-btn{width:1.75rem;height:1.75rem;border:1px solid var(--color-admin-border);border-radius:8px;background:var(--color-bg-secondary, #f8fafc);color:var(--color-text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .12s ease,border-color .12s ease,color .12s ease}.entities-view-bulma .entities-table__expand-btn:hover{border-color:var(--color-primary, #3273dc);color:var(--color-primary, #3273dc)}.entities-view-bulma .entities-table__expand-btn.is-open{background:color-mix(in srgb,var(--color-primary, #3273dc) 12%,transparent);border-color:var(--color-primary, #3273dc);color:var(--color-primary, #3273dc)}.entities-view-bulma .entities-table__name-cell{display:flex;align-items:center;gap:.65rem;min-width:0}.entities-view-bulma .entities-table__type-icon{flex-shrink:0;width:2rem;height:2rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:800;color:#fff}.entities-view-bulma .entities-table__type-icon.is-associazione{background:#3273dc}.entities-view-bulma .entities-table__type-icon.is-ente,.entities-view-bulma .entities-table__type-icon.is-comune{background:#f59e0b}.entities-view-bulma .entities-table__name{font-weight:600;color:var(--color-text-primary);line-height:1.35;word-break:break-word}.entities-view-bulma .entities-table__type-tag{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.entities-view-bulma .entities-table__type-tag.is-associazione{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.entities-view-bulma .entities-table__type-tag.is-comune{color:#b45309;background:#fffbeb;border:1px solid #fde68a}.entities-view-bulma .entities-table__type-tag.is-ente{color:#0f766e;background:#ecfdf5;border:1px solid #99f6e4}.entities-view-bulma .entities-table__city{color:var(--color-text-primary);white-space:nowrap}.entities-view-bulma .entities-table__empty{color:var(--color-text-secondary, #94a3b8);font-size:.8125rem}.entities-view-bulma .entities-table__conventions{display:flex;flex-wrap:wrap;gap:.3rem;max-width:220px}.entities-view-bulma .entities-table__convention-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .45rem;border-radius:999px;font-size:.6875rem;font-weight:600;color:#0f766e;background:#ecfdf5;border:1px solid #99f6e4;max-width:100%}.entities-view-bulma .entities-table__convention-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entities-view-bulma .entities-table__convention-more{font-size:.6875rem;font-weight:600;color:var(--color-text-secondary);cursor:help}.entities-view-bulma .entities-table__contact{display:flex;flex-direction:column;gap:.15rem;font-size:.8125rem;min-width:0}.entities-view-bulma .entities-table__contact-line{display:inline-flex;align-items:center;gap:.35rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.entities-view-bulma .entities-table__contact-line a{color:inherit}.entities-view-bulma .entities-table__contact-line a:hover{color:var(--color-primary, #3273dc)}.entities-view-bulma .entities-table__actions{display:flex;align-items:center;justify-content:flex-end;gap:.25rem}.entities-view-bulma .entities-table__actions .button{width:2rem;height:2rem;padding:0;border-radius:8px}.entities-view-bulma .entities-table__actions .button .icon{width:1rem;height:1rem}.entities-view-bulma .sections-expanded-row,.entities-view-bulma .sections-expanded-row:hover{background:var(--color-bg-secondary, #f8fafc)!important}.entities-view-bulma .sections-expanded-panel{margin:.5rem .85rem .85rem 3rem;padding:1rem;border:1px solid var(--color-admin-border);border-radius:10px;background:var(--color-bg-primary, #fff)}.entities-view-bulma .sections-expanded-panel__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.entities-view-bulma .sections-expanded-panel__title{font-size:.8125rem;font-weight:700;color:var(--color-text-primary)}.entities-view-bulma .sections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.65rem}.entities-view-bulma .section-card{border:1px solid var(--color-admin-border);border-radius:10px;padding:.75rem .85rem;background:var(--color-bg-secondary, #f8fafc)}.entities-view-bulma .section-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.entities-view-bulma .section-card__name{font-weight:600;font-size:.875rem}.entities-view-bulma .section-card__city{font-size:.75rem;color:var(--color-text-secondary);margin-top:.1rem}.entities-view-bulma .section-card__tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.5rem}@media(max-width:1100px){.entities-view-bulma .entities-table__contact-line{max-width:140px}}.entity-panel-modal__toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.entity-panel-modal__count{font-size:.8125rem;font-weight:600;color:var(--color-text-secondary)}.entity-panel-modal__empty{text-align:center;padding:2.5rem 1rem;border:1px dashed var(--color-admin-border);border-radius:10px;background:var(--color-bg-primary, #fff);color:var(--color-text-secondary)}.entity-panel-modal__loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2.5rem 1rem;color:var(--color-text-secondary)}.entities-view-bulma .section-card__contact{display:flex;flex-direction:column;gap:.2rem;margin-top:.45rem}.entities-view-bulma .section-card__contact-line{display:flex;align-items:flex-start;gap:.35rem;font-size:.75rem;color:var(--color-text-secondary);line-height:1.35;word-break:break-word}.entities-view-bulma .section-card__contact-line .bi{flex-shrink:0;margin-top:.1rem;opacity:.75}.entity-resources-modal__tabs{flex-shrink:0;padding:0 1rem;background:var(--color-bg-primary, #fff);border-bottom:1px solid var(--color-admin-border)}.entity-resources-modal__tabs ul{border-bottom:none}.entity-resources-modal__tabs li a{display:inline-flex;align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;color:var(--color-text-secondary);border-bottom-width:2px;padding:.75rem 1rem}.entity-resources-modal__tabs li.is-active a{color:var(--color-primary);border-bottom-color:var(--color-primary)}.entity-resources-modal__table-wrap{border:1px solid var(--color-admin-border);border-radius:10px;overflow:hidden;background:var(--color-bg-primary, #fff)}.entity-resources-modal__table-wrap .table{margin-bottom:0;background:transparent}.entity-resources-modal__table-wrap .table thead{background:var(--color-bg-secondary, #f8fafc)}.entity-resources-modal__table-wrap .table thead th{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);border-bottom-color:var(--color-admin-border);white-space:nowrap}.entity-resources-modal__table-wrap .table tbody td{font-size:.875rem;vertical-align:middle}.entity-resources-modal__table-wrap .table tbody tr:last-child td{border-bottom:none}@media(max-width:768px){.admin-dashboard .modal.is-active{align-items:flex-start;padding:.75rem 0}.admin-dashboard .modal-card.entity-modal{margin:0 10px;max-height:calc(100dvh - 1.5rem);width:calc(100% - 1.25rem)}.admin-dashboard .modal-card.entity-modal .modal-card-body .columns{margin:0}.admin-dashboard .modal-card.entity-modal .modal-card-body .column{padding:.5rem}}.volunteers-view-bulma .volunteers-layout{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:1rem;align-items:start}.volunteers-view-bulma .volunteers-sidebar{border:1px solid var(--color-admin-border);border-radius:12px;background:var(--color-bg-primary, #fff);overflow:hidden;position:sticky;top:1rem;max-height:calc(100vh - 180px);display:flex;flex-direction:column}.volunteers-view-bulma .volunteers-sidebar__head{padding:.85rem 1rem;border-bottom:1px solid var(--color-admin-border);background:var(--color-bg-secondary, #f8fafc)}.volunteers-view-bulma .volunteers-sidebar__title{font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary, #64748b);margin:0 0 .65rem;display:flex;align-items:center;gap:.4rem}.volunteers-view-bulma .volunteers-sidebar__filters{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.65rem}.volunteers-view-bulma .volunteers-filter-chip{border:1px solid var(--color-admin-border);background:var(--color-bg-primary, #fff);color:var(--color-text-secondary);border-radius:999px;padding:.15rem .55rem;font-size:.6875rem;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.volunteers-view-bulma .volunteers-filter-chip:hover{border-color:var(--color-primary, #3273dc);color:var(--color-primary, #3273dc)}.volunteers-view-bulma .volunteers-filter-chip.is-active{background:color-mix(in srgb,var(--color-primary, #3273dc) 12%,transparent);border-color:var(--color-primary, #3273dc);color:var(--color-primary, #3273dc)}.volunteers-view-bulma .volunteers-sidebar__meta{margin-top:.5rem;font-size:.75rem;color:var(--color-text-secondary, #94a3b8)}.volunteers-view-bulma .volunteers-entity-list{overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.35rem}.volunteers-view-bulma .volunteers-entity-item{display:flex;align-items:flex-start;gap:.55rem;width:100%;text-align:left;padding:.55rem .65rem;border:1px solid transparent;border-radius:10px;background:transparent;cursor:pointer;transition:background .12s ease,border-color .12s ease}.volunteers-view-bulma .volunteers-entity-item:hover{background:var(--color-admin-row-hover, #f1f5f9);border-color:var(--color-admin-border)}.volunteers-view-bulma .volunteers-entity-item.is-active{background:color-mix(in srgb,var(--color-primary, #3273dc) 10%,transparent);border-color:color-mix(in srgb,var(--color-primary, #3273dc) 35%,transparent)}.volunteers-view-bulma .volunteers-entity-item__type{flex-shrink:0;width:1.5rem;height:1.5rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:800;color:#fff;margin-top:.1rem}.volunteers-view-bulma .volunteers-entity-item__type.is-associazione{background:#3273dc}.volunteers-view-bulma .volunteers-entity-item__type.is-ente,.volunteers-view-bulma .volunteers-entity-item__type.is-comune{background:#f59e0b}.volunteers-view-bulma .volunteers-entity-item__body{min-width:0;flex:1}.volunteers-view-bulma .volunteers-entity-item__name{display:block;font-size:.8125rem;font-weight:600;line-height:1.35;color:var(--color-text-primary);word-break:break-word}.volunteers-view-bulma .volunteers-entity-item__label{display:block;margin-top:.15rem;font-size:.6875rem;color:var(--color-text-secondary, #94a3b8);text-transform:uppercase;letter-spacing:.04em}.volunteers-view-bulma .volunteers-main{border:1px solid var(--color-admin-border);border-radius:12px;background:var(--color-bg-primary, #fff);min-height:420px;overflow:hidden}.volunteers-view-bulma .volunteers-main__empty,.volunteers-view-bulma .volunteers-main__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:420px;padding:2rem;text-align:center}.volunteers-view-bulma .volunteers-main__empty--inline{min-height:280px}.volunteers-view-bulma .volunteers-main__empty-icon{width:4rem;height:4rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:1.75rem;color:var(--color-text-secondary, #94a3b8);background:var(--color-bg-secondary, #f8fafc);border:1px dashed var(--color-admin-border);margin-bottom:1rem}.volunteers-view-bulma .volunteers-main__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:1rem 1.15rem;border-bottom:1px solid var(--color-admin-border);background:var(--color-bg-secondary, #f8fafc)}.volunteers-view-bulma .volunteers-main__head-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}.volunteers-view-bulma .volunteers-main__title-wrap{min-width:0}.volunteers-view-bulma .volunteers-main__title{font-size:1.05rem;font-weight:700;color:var(--color-text-primary);margin:0;display:flex;align-items:center;gap:.45rem}.volunteers-view-bulma .volunteers-main__subtitle{margin:.2rem 0 0;font-size:.8125rem;color:var(--color-text-secondary, #64748b)}.volunteers-view-bulma .volunteers-main__count{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;color:var(--color-primary, #3273dc);background:color-mix(in srgb,var(--color-primary, #3273dc) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-primary, #3273dc) 20%,transparent);white-space:nowrap}.volunteers-view-bulma .volunteers-main__body{padding:1rem 1.15rem 1.15rem}.volunteers-view-bulma .volunteers-main__body .volunteers-filters{margin-bottom:1rem!important;border:1px solid var(--color-admin-border);box-shadow:none}.volunteers-view-bulma .volunteers-main__body .table-container{border:1px solid var(--color-admin-border);border-radius:10px;overflow:auto}.volunteers-view-bulma .volunteers-main__body .table thead th{background:var(--color-bg-secondary, #f8fafc);font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);border-bottom:1px solid var(--color-admin-border)}.volunteers-view-bulma .volunteers-table__actions-cell{width:1%;white-space:nowrap;vertical-align:middle}.volunteers-view-bulma .volunteers-table__actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.25rem}.volunteers-view-bulma .volunteers-table__actions .button{width:2rem;height:2rem;padding:0;border-radius:8px}.volunteers-view-bulma .volunteers-table__actions .button .icon{width:1rem;height:1rem}@media(max-width:1024px){.volunteers-view-bulma .volunteers-layout{grid-template-columns:1fr}.volunteers-view-bulma .volunteers-sidebar{position:static;max-height:none}.volunteers-view-bulma .volunteers-entity-list{max-height:220px}}.municipalities-view-bulma .municipalities-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-bottom:1rem}.municipalities-view-bulma .municipalities-toolbar__search{flex:1 1 280px;max-width:420px;margin-bottom:0}.municipalities-view-bulma .municipalities-toolbar__meta{font-size:.8125rem;color:var(--color-text-secondary, #64748b);white-space:nowrap}.municipalities-view-bulma .municipalities-table-wrap{border:1px solid var(--color-admin-border);border-radius:12px;overflow:auto;background:var(--color-bg-primary, #fff)}.municipalities-view-bulma .municipalities-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem}.municipalities-view-bulma .municipalities-table thead th{position:sticky;top:0;z-index:2;background:var(--color-bg-secondary, #f8fafc);border-bottom:1px solid var(--color-admin-border);padding:.65rem .85rem;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary, #64748b);white-space:nowrap}.municipalities-view-bulma .municipalities-table tbody td{padding:.75rem .85rem;border-bottom:1px solid var(--color-admin-border);vertical-align:middle}.municipalities-view-bulma .municipalities-table tbody tr:last-child td{border-bottom:none}.municipalities-view-bulma .municipalities-table tbody tr:hover{background:color-mix(in srgb,var(--color-primary, #3273dc) 4%,transparent)}.municipalities-view-bulma .municipalities-table__name-cell{display:flex;align-items:center;gap:.65rem;min-width:0}.municipalities-view-bulma .municipalities-table__icon{flex-shrink:0;width:2rem;height:2rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:.875rem;color:#b45309;background:#fffbeb;border:1px solid #fde68a}.municipalities-view-bulma .municipalities-table__name{font-weight:600;color:var(--color-text-primary);line-height:1.35}.municipalities-view-bulma .municipalities-table__id{display:block;margin-top:.1rem;font-size:.6875rem;color:var(--color-text-secondary, #94a3b8)}.municipalities-view-bulma .municipalities-table__empty{color:var(--color-text-secondary, #94a3b8);font-size:.8125rem}.municipalities-view-bulma .municipalities-table__code{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:999px;font-size:.75rem;font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--color-text-secondary);background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border)}.municipalities-view-bulma .municipalities-table__notes{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;color:var(--color-text-secondary)}.municipalities-view-bulma .municipalities-table__status{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.6875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.municipalities-view-bulma .municipalities-table__status.is-active{color:#15803d;background:#ecfdf5;border:1px solid #86efac}.municipalities-view-bulma .municipalities-table__status.is-inactive{color:var(--color-text-secondary);background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border)}.municipalities-view-bulma .municipalities-table__actions-cell{width:1%;white-space:nowrap}.municipalities-view-bulma .municipalities-table__actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.25rem}.municipalities-view-bulma .municipalities-table__actions .button{width:2rem;height:2rem;padding:0;border-radius:8px}.municipalities-view-bulma .municipalities-table__actions .button .icon{width:1rem;height:1rem}.municipalities-view-bulma .entity-panel-modal__head-text{min-width:0;flex:1}.municipalities-view-bulma .entity-panel-modal__title,.municipalities-view-bulma .entity-panel-modal__subtitle{color:var(--color-text-inverse)}.municipalities-view-bulma .entity-panel-modal__title{margin:0;font-size:1.1rem;font-weight:700;line-height:1.25}.municipalities-view-bulma .entity-panel-modal__subtitle{margin:.2rem 0 0;font-size:.8125rem;font-weight:500;opacity:.92;line-height:1.35;word-break:break-word}@media(max-width:900px){.municipalities-view-bulma .municipalities-table__notes{max-width:120px}}.modal-card.entity-modal.municipality-modal-card{max-width:42rem;width:min(42rem,calc(100% - 2rem))}.modal-card.entity-modal.municipality-modal-card--wide{max-width:52rem;width:min(52rem,calc(100% - 2rem))}.municipality-modal-tabs{display:flex;flex-wrap:wrap;gap:.35rem;padding:0 1rem;border-bottom:1px solid var(--color-admin-border, #e2e8f0);background:var(--color-bg-secondary, #f8fafc)}.municipality-modal-tabs__btn{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem .85rem;margin-bottom:-1px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--color-text-secondary, #64748b);font-size:.8125rem;font-weight:600;cursor:pointer;transition:color .15s ease,border-color .15s ease}.municipality-modal-tabs__btn:hover{color:var(--color-text-primary, #1e293b)}.municipality-modal-tabs__btn.is-active{color:#b45309;border-bottom-color:#b45309}.modal-card.entity-modal .municipality-modal__head-text{min-width:0;flex:1}.modal-card.entity-modal .municipality-modal__title{margin:0;font-size:1.1rem;font-weight:700;line-height:1.25;color:var(--color-text-inverse)}.modal-card.entity-modal .municipality-modal__subtitle{margin:.2rem 0 0;font-size:.8125rem;font-weight:500;opacity:.92;line-height:1.35;word-break:break-word;color:var(--color-text-inverse)}.municipality-modal-section{margin-bottom:1.35rem}.municipality-modal-section:last-child{margin-bottom:0}.municipality-modal-section__head{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.85rem}.municipality-modal-section__icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:8px;background:var(--color-bg-primary, #fff);color:#b45309;border:1px solid #fde68a;flex-shrink:0}.municipality-modal-section__title{margin:0;font-size:.9375rem;font-weight:700;color:var(--color-text-primary)}.municipality-modal-section__subtitle{margin:.15rem 0 0;font-size:.78rem;color:var(--color-text-secondary, #64748b);line-height:1.45}.municipality-modal-section__subtitle code{font-size:.72rem;padding:.08rem .3rem;border-radius:4px;background:var(--color-bg-primary, #fff);border:1px solid var(--color-admin-border, #e2e8f0)}.municipality-modal-subpanel{padding:.95rem 1rem;border:1px solid var(--color-admin-border, #e2e8f0);border-radius:10px;background:var(--color-bg-primary, #fff)}.municipality-modal-subpanel__head{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .65rem;margin-bottom:.65rem}.municipality-modal-subpanel__title{margin:0;font-size:.875rem;font-weight:700;color:var(--color-text-primary);display:inline-flex;align-items:center;gap:.4rem}.municipality-modal-subpanel__badge{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:999px;font-size:.6875rem;font-weight:700;color:#15803d;background:#ecfdf5;border:1px solid #86efac}.municipality-modal-subpanel__help{margin:0 0 .75rem;font-size:.78rem;color:var(--color-text-secondary);line-height:1.45}.municipality-modal-fields .label{font-size:.8125rem;font-weight:600}.municipality-modal-fields .input,.municipality-modal-fields .textarea,.municipality-modal-fields .select select{border-radius:8px}.municipality-modal-status{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem .75rem;border:1px solid var(--color-admin-border);border-radius:8px;background:var(--color-bg-primary, #fff);font-size:.875rem;cursor:pointer}.municipality-name-autocomplete{position:relative}.municipality-comuni-dropdown{position:absolute;left:0;right:0;top:100%;z-index:40;display:block}.municipality-comuni-dropdown .dropdown-menu{width:100%;padding-top:.25rem}.municipality-comuni-dropdown .dropdown-content{max-height:220px;overflow-y:auto;border-radius:8px;border:1px solid var(--color-admin-border);box-shadow:0 8px 24px #0000001a}.municipality-comuni-dropdown__item{display:block;width:100%;text-align:left;border:none;background:transparent;cursor:pointer;padding:.55rem .85rem;font-size:.8125rem}.municipality-comuni-dropdown__item:hover{background:var(--color-bg-secondary, #f8fafc)}.municipality-modal-logo-preview{display:flex;align-items:center;justify-content:center;min-height:5rem;margin-bottom:.75rem;padding:.75rem;border:1px dashed var(--color-admin-border);border-radius:10px;background:var(--color-bg-primary, #fff)}.municipality-modal-logo-preview--empty{color:var(--color-text-secondary);font-size:.8125rem}.municipality-modal-logo-preview img{max-height:72px;max-width:160px;object-fit:contain}.municipality-modal-upload-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.65rem}.municipality-modal-upload-actions .button{min-height:2.375rem;border-radius:8px}.municipality-logo-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.municipality-modal-password-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.5rem}.municipality-modal-password-actions .button{border-radius:8px}@media(max-width:768px){.modal-card.entity-modal.municipality-modal-card{width:100%;max-width:100%}.municipality-modal-section .columns .column{padding:.5rem}}.mcc-admin-section{margin-top:.25rem}.mcc-admin-platform{margin-bottom:1.25rem}.mcc-admin-platform__head{display:inline-flex;align-items:center;gap:.45rem;margin-bottom:.65rem;padding-bottom:.35rem;border-bottom:2px solid var(--color-border-light, #e2e8f0);font-size:.875rem;font-weight:700;color:var(--color-text-primary)}.mcc-admin-block{padding:.85rem 1rem;margin-bottom:.75rem;border:1px solid var(--color-border-light, #e2e8f0);border-radius:.65rem;background:var(--color-bg-primary, #fff)}.mcc-admin-block:last-of-type{margin-bottom:1rem}.municipality-staff-shifts__section{margin-bottom:1.75rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border-light, #e8e8e8)}.municipality-staff-shifts__section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.municipality-staff-shifts__section-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;margin-bottom:.35rem;color:var(--color-text-primary, #363636)}.municipality-staff-shifts__section-subtitle{font-size:.85rem;color:var(--color-text-secondary, #7a7a7a);margin-bottom:1rem}.municipality-staff-shifts__toggle-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.municipality-staff-shifts__status-badge{display:inline-flex;align-items:center;padding:.2rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600}.municipality-staff-shifts__status-badge.is-on{background:#48c77426;color:#257942}.municipality-staff-shifts__status-badge.is-off{background:#7a7a7a1f;color:#7a7a7a}.municipality-staff-shifts__slots-table{width:100%;border-collapse:collapse;font-size:.875rem}.municipality-staff-shifts__slots-table th,.municipality-staff-shifts__slots-table td{padding:.5rem .6rem;border:1px solid var(--color-border-light, #e8e8e8);vertical-align:middle}.municipality-staff-shifts__slots-table th{background:var(--color-bg-secondary, #f5f5f5);font-weight:600;text-align:left}.municipality-staff-shifts__slots-table .input{font-size:.875rem}.municipality-staff-shifts__periods-list{list-style:none;margin:0;padding:0;max-height:220px;overflow-y:auto;border:1px solid var(--color-border-light, #e8e8e8);border-radius:8px}.municipality-staff-shifts__period-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .85rem;border-bottom:1px solid var(--color-border-light, #eee);font-size:.85rem}.municipality-staff-shifts__period-item:last-child{border-bottom:none}.municipality-staff-shifts__period-dates{color:var(--color-text-secondary, #7a7a7a);font-size:.78rem}.municipality-staff-shifts__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem}.municipality-staff-shifts__entity-hint{font-size:.8rem;color:var(--color-text-secondary, #7a7a7a);margin-top:.35rem}.municipality-staff-shifts__footer-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--color-border-light, #e8e8e8)}.municipality-staff-shifts-modal__card .modal-card-body{max-height:min(78vh,820px);overflow-y:auto}.roles-view-bulma .roles-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.roles-view-bulma .roles-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;margin-bottom:1.25rem}.roles-view-bulma .role-info-card{border:1px solid var(--color-admin-border);border-radius:12px;padding:.95rem 1rem;background:var(--color-bg-primary, #fff);box-shadow:none;margin:0;height:100%;transition:border-color .12s ease,box-shadow .12s ease}.roles-view-bulma .role-info-card:hover{border-color:color-mix(in srgb,var(--color-primary, #3273dc) 35%,var(--color-admin-border));box-shadow:0 4px 14px #0f172a0f}.roles-view-bulma .role-info-card.is-not-configured{border-style:dashed;background:var(--color-bg-secondary, #f8fafc)}.roles-view-bulma .role-icon-badge{width:2rem;height:2rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center}.roles-view-bulma .role-icon-small{width:2rem;height:2rem;border-radius:8px;display:inline-flex;align-items:center;justify-content:center}.roles-view-bulma .role-info-card .title.is-6{font-size:.9375rem}.roles-view-bulma .role-info-card .button.is-fullwidth{border-radius:8px;margin-top:.35rem}.roles-view-bulma .roles-table-section__title{margin:0 0 .75rem;font-size:.875rem;font-weight:700;color:var(--color-text-primary)}.modal-card.entity-modal.role-modal-card{max-width:820px;width:min(820px,calc(100% - 2rem))}.role-perm-category{padding:.85rem 1rem;border:1px solid var(--color-admin-border);border-radius:10px;background:var(--color-bg-primary, #fff);box-shadow:none}.role-perm-check{display:block;line-height:1.35;margin-bottom:.35rem}.role-perm-check code{font-size:.72rem}.permissions-view-bulma .perm-role-tags{display:flex;flex-wrap:wrap;gap:.25rem;max-width:280px}.permissions-view-bulma .permission-category-block{margin-bottom:1rem}.permissions-view-bulma .permission-category-block .admin-table-wrap{max-height:420px}.permissions-view-bulma .permission-guide-table tbody tr.is-missing{background:color-mix(in srgb,#f59e0b 8%,transparent)}.permissions-view-bulma code{background:var(--color-bg-secondary, #f8fafc);padding:.12rem .4rem;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem;border:1px solid var(--color-admin-border)}.settings-view-bulma .settings-section{border:1px solid var(--color-admin-border);border-radius:12px;background:var(--color-bg-primary, #fff);padding:1.15rem 1.25rem;margin-bottom:1rem}.settings-view-bulma .settings-section__head{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.85rem}.settings-view-bulma .settings-section__icon{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;color:var(--color-primary, #3273dc);background:color-mix(in srgb,var(--color-primary, #3273dc) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-primary, #3273dc) 18%,transparent)}.settings-view-bulma .settings-section__title{margin:0;font-size:1rem;font-weight:700;color:var(--color-text-primary);line-height:1.3}.settings-view-bulma .settings-section__subtitle{margin:.2rem 0 0;font-size:.8125rem;color:var(--color-text-secondary, #64748b);line-height:1.45}.settings-view-bulma .settings-section__subtitle code{font-size:.75rem;padding:.1rem .35rem;border-radius:4px;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border)}.settings-view-bulma .settings-subsection{margin-top:1.25rem;padding-top:1.15rem;border-top:1px solid var(--color-admin-border)}.settings-view-bulma .settings-subsection__title{margin:0 0 .65rem;font-size:.875rem;font-weight:700;color:var(--color-text-primary)}.settings-view-bulma .settings-preview{display:flex;align-items:center;justify-content:center;min-height:5.5rem;margin-bottom:.85rem;padding:.85rem 1rem;border:1px dashed var(--color-admin-border);border-radius:10px;background:var(--color-bg-secondary, #f8fafc)}.settings-view-bulma .settings-preview--compact{min-height:4rem}.settings-view-bulma .settings-preview--empty{color:var(--color-text-secondary, #94a3b8);font-size:.8125rem}.settings-view-bulma .settings-preview--dark-bg{background:#1e293b;border-color:#94a3b859}.settings-view-bulma .settings-preview--dark-bg.settings-preview--empty{color:#e2e8f0a6}.settings-view-bulma .settings-login-logo-preview{max-height:100px;max-width:280px;object-fit:contain}.settings-view-bulma .settings-developer-logo-preview{max-height:48px;max-width:180px;object-fit:contain}.settings-view-bulma .settings-favicon-preview{width:32px;height:32px;object-fit:contain}.settings-view-bulma .settings-upload-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.settings-view-bulma .settings-upload-actions__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.settings-view-bulma .settings-upload-actions .button{min-height:2.375rem;border-radius:8px}.settings-view-bulma .settings-fields-grid .field .label{font-size:.8125rem;font-weight:600}.settings-view-bulma .settings-fields-grid .input,.settings-view-bulma .settings-fields-grid .select select{border-radius:8px}.settings-view-bulma .settings-toggle-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.85rem}.settings-view-bulma .settings-toggle-card{padding:.85rem .95rem;border:1px solid var(--color-admin-border);border-radius:10px;background:var(--color-bg-secondary, #f8fafc)}.settings-view-bulma .settings-toggle-card .help{margin-top:.35rem;margin-bottom:0;font-size:.75rem}.settings-view-bulma .settings-save-bar{display:flex;justify-content:flex-end;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--color-admin-border)}.settings-view-bulma .settings-save-bar .button{min-height:2.5rem;border-radius:8px;font-weight:600}@media(max-width:768px){.settings-view-bulma .settings-section{padding:1rem}.settings-view-bulma .settings-save-bar .button{width:100%;justify-content:center}}.changelog-admin__intro-field{margin-bottom:1.25rem}.changelog-admin__entries{display:flex;flex-direction:column;gap:1rem}.changelog-admin-entry{border:1px solid var(--color-border-light, #ecf0f1);border-radius:8px;padding:1rem;background:var(--color-bg-tertiary, #fafbfc)}.changelog-admin-entry__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.changelog-admin-entry__index{font-size:.8rem;font-weight:600;color:var(--color-text-secondary, #7f8c8d)}.changelog-admin-entry__items{display:flex;flex-direction:column;gap:.5rem}.changelog-admin-entry__item-row{display:flex;gap:.5rem;align-items:flex-start}.changelog-admin-entry__item-row .input{flex:1}.changelog-admin__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.changelog-admin__preview-link{font-size:.85rem}[data-theme=dark] .changelog-admin-entry{background:#ffffff08;border-color:var(--color-border-light, #2d3744)}.telegram-view-bulma code{font-size:.75rem;padding:.12rem .4rem;border-radius:6px;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border)}.telegram-bot-management .bot-card{border:1px solid var(--color-admin-border);border-radius:12px;padding:1rem;background:var(--color-bg-primary, #fff);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;cursor:pointer}.telegram-bot-management .bot-card:hover{border-color:color-mix(in srgb,#0088cc 45%,var(--color-admin-border));transform:translateY(-2px);box-shadow:0 4px 16px #0088cc1f}.telegram-bot-management .bot-avatar{width:3rem;height:3rem;background:linear-gradient(135deg,#08c,#00c6ff);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.telegram-bot-management .bot-avatar i{color:#fff!important;font-size:1.35rem}.telegram-bot-management code{font-size:.75rem;padding:.1rem .35rem;border-radius:4px;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border);word-break:break-all}@media(max-width:768px){.telegram-bot-management .buttons{flex-wrap:wrap}}.botmux-view code{font-size:.75rem;padding:.1rem .35rem;border-radius:4px;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border);word-break:break-all}.botmux-view code,.openwa-view code{font-size:.85em}.openwa-test-form .help{font-size:.8rem}.firebase-view-bulma code{font-size:.75rem;padding:.12rem .4rem;border-radius:6px;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border)}.push-test-panel .tag{vertical-align:middle}.apns-view-bulma code{font-size:.75rem;padding:.12rem .4rem;border-radius:6px;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border)}.documents-view-bulma .documents-storage-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .65rem;border-radius:8px;font-size:.8125rem;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border);color:var(--color-text-secondary);margin-bottom:1rem}.documents-view-bulma .documents-storage-badge strong{color:var(--color-text-primary)}.documents-view-bulma .documents-count{margin:0 0 .75rem;font-size:.8125rem;font-weight:700;color:var(--color-text-primary)}.alert-notification-settings-view .alert-settings-section{margin-bottom:1.5rem}.alert-notification-settings-view .alert-settings-section__title{margin:0 0 .35rem;font-size:1rem;font-weight:700;color:var(--color-text-primary);display:flex;align-items:center;gap:.45rem}.alert-notification-settings-view .alert-settings-section__subtitle{margin:0 0 .85rem;font-size:.8125rem;color:var(--color-text-secondary)}.alert-notification-settings-view .alert-channel-cell{display:inline-flex;flex-direction:column;align-items:center;gap:.35rem}.alert-notification-settings-view .alert-push-test-btn{margin-top:.15rem;font-size:.6875rem;height:auto;min-height:1.65rem}.alert-notification-settings-view .alert-municipality-name{font-weight:600;color:var(--color-text-primary)}.alert-notification-settings-view .alert-municipality-province{font-size:.75rem;color:var(--color-text-secondary);margin-left:.35rem}.alert-notification-settings-view .alert-zone-tag{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.6875rem;font-weight:700;letter-spacing:.03em;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-border-strong, #cbd5e1);transition:.25s ease;border-radius:24px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--color-bg-secondary, #fff);transition:.25s ease;border-radius:50%}input:checked+.slider{background-color:var(--color-primary, #3273dc)}input:focus+.slider{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary, #3273dc) 25%,transparent)}input:checked+.slider:before{transform:translate(20px)}input:disabled+.slider{opacity:.6;cursor:not-allowed}.alert-modal-section{margin-bottom:1.25rem}.alert-modal-section:last-child{margin-bottom:0}.alert-modal-section__title{margin:0 0 .65rem;font-size:.875rem;font-weight:700;color:var(--color-text-primary);display:flex;align-items:center;gap:.4rem}.alert-modal-level-row{display:flex;align-items:center;gap:.5rem;padding:.45rem 0}.alert-modal-divider{border:none;border-top:1px solid var(--color-admin-border);margin:1rem 0}.modal-card.entity-modal .entity-panel-modal__title,.modal-card.entity-modal .entity-panel-modal__subtitle{color:var(--color-text-inverse)}.entity-panel-modal__title{margin:0;font-size:1.1rem;font-weight:700;line-height:1.25}.entity-panel-modal__subtitle{margin:.2rem 0 0;font-size:.8125rem;font-weight:500;opacity:.92;line-height:1.35;word-break:break-word}.telegram-notification-templates-view .switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.telegram-notification-templates-view .switch input{opacity:0;width:0;height:0}.telegram-notification-templates-view .slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-border-strong, #cbd5e1);transition:.25s ease;border-radius:24px}.telegram-notification-templates-view .slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--color-bg-secondary, #fff);transition:.25s ease;border-radius:50%}.telegram-notification-templates-view input:checked+.slider{background-color:var(--color-primary, #3273dc)}.telegram-notification-templates-view input:checked+.slider:before{transform:translate(20px)}.telegram-notification-templates-view code{font-size:.75rem;padding:.1rem .35rem;border-radius:4px;background:var(--color-bg-primary, #fff);border:1px solid var(--color-admin-border)}.whatsapp-notification-templates-view .switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.whatsapp-notification-templates-view .switch input{opacity:0;width:0;height:0}.whatsapp-notification-templates-view .slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-border-strong, #cbd5e1);transition:.25s ease;border-radius:24px}.whatsapp-notification-templates-view .slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--color-bg-secondary, #fff);transition:.25s ease;border-radius:50%}.whatsapp-notification-templates-view input:checked+.slider{background-color:#25d366}.whatsapp-notification-templates-view input:checked+.slider:before{transform:translate(20px)}.whatsapp-notification-templates-view code{font-size:.75rem;padding:.1rem .35rem;border-radius:4px;background:var(--color-bg-primary, #fff);border:1px solid var(--color-admin-border)}.push-notification-templates-view .switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.push-notification-templates-view .switch input{opacity:0;width:0;height:0}.push-notification-templates-view .slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-border-strong, #cbd5e1);transition:.25s ease;border-radius:24px}.push-notification-templates-view .slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--color-bg-secondary, #fff);transition:.25s ease;border-radius:50%}.push-notification-templates-view input:checked+.slider{background-color:var(--color-primary, #3273dc)}.push-notification-templates-view input:checked+.slider:before{transform:translate(20px)}.push-notification-templates-view code{font-size:.75rem;padding:.1rem .35rem;border-radius:4px;background:var(--color-bg-primary, #fff);border:1px solid var(--color-admin-border)}.push-template-preview{max-width:28rem}.push-template-preview__title{margin:0 0 .25rem;font-size:.8125rem;font-weight:700;color:var(--color-text-primary);word-break:break-word}.push-template-preview__body{margin:0;font-size:.75rem;color:var(--color-text-secondary);line-height:1.4;word-break:break-word}.push-template-preview.is-default .push-template-preview__title,.push-template-preview.is-default .push-template-preview__body{opacity:.85}.email-preview-frame-wrap{border:1px solid var(--color-admin-border);border-radius:10px;overflow:hidden;background:#fff}.email-preview-iframe{display:block;width:100%;min-height:420px;border:none}.entity-dashboard .modal.is-active,.modal.is-active.entity-bulma-modal{z-index:10200;display:flex!important;align-items:center;justify-content:center;overflow-x:hidden;overflow-y:auto;padding:clamp(.75rem,3vw,1.25rem);-webkit-overflow-scrolling:touch}.entity-dashboard .modal-background,.entity-bulma-modal .modal-background{background:var(--color-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.entity-dashboard .modal-card,.modal-card.entity-modal{z-index:10201;position:relative;display:flex;flex-direction:column;max-height:min(90dvh,calc(100vh - 2.5rem));width:calc(100% - 2rem);margin:auto;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-auth-card, 1rem);box-shadow:0 12px 40px var(--color-shadow-strong);flex-shrink:0}.modal-card.entity-modal.entity-modal-panel--sm{max-width:26rem}.modal-card.entity-modal.entity-modal-panel--md{max-width:35rem}.modal-card.entity-modal.entity-modal-panel--lg{max-width:45rem;width:min(45rem,calc(100% - 2rem))}.modal-card.entity-modal.entity-modal-panel--xl{max-width:75rem;width:min(75rem,96vw)}.entity-dashboard .modal-card-head,.modal-card.entity-modal .modal-card-head{flex-shrink:0;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);border-bottom:none}.entity-dashboard .modal-card-title,.modal-card.entity-modal .modal-card-title{font-size:1.1rem;font-weight:700;color:var(--color-text-inverse)!important}.entity-dashboard .modal-card-head .delete,.modal-card.entity-modal .modal-card-head .delete{background-color:#ffffff26}.entity-dashboard .modal-card-head .delete:before,.entity-dashboard .modal-card-head .delete:after,.modal-card.entity-modal .modal-card-head .delete:before,.modal-card.entity-modal .modal-card-head .delete:after{background-color:var(--color-text-inverse)}.entity-dashboard .modal-card-head .delete:hover,.modal-card.entity-modal .modal-card-head .delete:hover{background-color:#ffffff47}.entity-dashboard .modal-card>form,.modal-card.entity-modal>form{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.entity-dashboard .modal-card-body,.entity-dashboard .modal-card>form .modal-card-body,.modal-card.entity-modal .modal-card-body,.modal-card.entity-modal>form .modal-card-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:var(--color-bg-secondary);color:var(--color-text-primary)}.entity-dashboard .modal-card-foot,.entity-dashboard .modal-card>form .modal-card-foot,.modal-card.entity-modal .modal-card-foot,.modal-card.entity-modal>form .modal-card-foot{flex-shrink:0;justify-content:flex-end;gap:.5rem;background:var(--color-bg-tertiary);border-top:1px solid var(--color-border-light)}.entity-dashboard .modal-card .input,.entity-dashboard .modal-card .textarea,.entity-dashboard .modal-card .select select,.modal-card.entity-modal .input,.modal-card.entity-modal .textarea,.modal-card.entity-modal .select select{border-radius:.625rem}.entity-dashboard .modal-card .button.is-primary,.modal-card.entity-modal .button.is-primary{background-color:var(--color-primary);border-color:transparent;color:var(--color-text-inverse);border-radius:.625rem}.entity-dashboard .modal-card .button.is-primary:hover:not(:disabled),.modal-card.entity-modal .button.is-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.entity-dashboard .modal-card .box,.modal-card.entity-modal .box{border-radius:.75rem}.entity-panel-modal__head-text{min-width:0;flex:1}.entity-panel-modal__title{margin:0;font-size:1.1rem;font-weight:700;line-height:1.25;color:var(--color-text-inverse)}.entity-panel-modal__subtitle{margin:.2rem 0 0;font-size:.8125rem;font-weight:500;opacity:.92;line-height:1.35;word-break:break-word;color:var(--color-text-inverse)}@media(max-width:768px){.entity-dashboard .modal-card,.modal-card.entity-modal{width:100%;max-height:95dvh;border-radius:.75rem}.entity-dashboard .modal-card-foot,.modal-card.entity-modal .modal-card-foot{flex-direction:column-reverse}.entity-dashboard .modal-card-foot .button,.modal-card.entity-modal .modal-card-foot .button{width:100%}}.sidebar-management-view .menu-item{padding:.55rem .65rem;border:1px solid var(--color-admin-border);border-radius:10px;background:var(--color-bg-primary, #fff);margin-bottom:.45rem}.sidebar-management-view .menu-item.is-inactive{opacity:.65;background:var(--color-bg-secondary, #f8fafc)}.sidebar-management-view .menu-item-row:last-child .menu-item{margin-bottom:0}.sidebar-management-view .menu-item-children{margin-top:.35rem}.sidebar-management-view .menu-items-list{display:flex;flex-direction:column;gap:0}.admin-page,.entities-view-bulma,.users-view-bulma,.volunteers-view-bulma,.municipalities-view-bulma,.roles-view-bulma,.permissions-view-bulma,.settings-view-bulma,.documents-view-bulma,.firebase-view-bulma,.smtp-view-bulma,.storage-view-bulma,.telegram-view-bulma,.email-templates-view,.telegram-bot-management,.alert-notification-settings-view,.telegram-notification-templates-view,.sidebar-management-view,.admin-control-dashboard{background:var(--color-admin-surface);border:1px solid var(--color-admin-border);border-radius:var(--radius-admin-panel, 14px);padding:clamp(1rem,2.5vw,1.5rem);min-height:100%;box-shadow:var(--color-admin-panel-shadow)}.admin-page>.is-flex.is-justify-content-space-between.is-align-items-center.mb-5,.admin-page>.mb-5:first-child:has(.title.is-4),.entities-view-bulma>.is-flex.is-justify-content-space-between.is-align-items-center.mb-5,.users-view-bulma>.is-flex.is-justify-content-space-between.is-align-items-center.mb-5,.volunteers-view-bulma>.is-flex.is-justify-content-space-between.is-align-items-center.mb-5,.municipalities-view-bulma>.is-flex.is-justify-content-space-between.is-align-items-center.mb-5,.roles-view-bulma>.is-flex.is-justify-content-space-between.is-align-items-center.mb-5,.permissions-view-bulma>.is-flex.is-justify-content-space-between.is-align-items-center.mb-5,.settings-view-bulma>.mb-5:first-child:has(.title),.documents-view-bulma>.is-flex.is-justify-content-space-between.is-align-items-center.mb-5,.email-templates-view>.mb-5:first-child,.telegram-bot-management>.mb-5:first-child,.alert-notification-settings-view>.mb-5:first-child,.telegram-notification-templates-view>.mb-5:first-child{padding-bottom:1rem;margin-bottom:1.25rem!important;border-bottom:1px solid var(--color-admin-border)}.admin-page .title.is-4,.entities-view-bulma .title.is-4,.users-view-bulma .title.is-4,.volunteers-view-bulma .title.is-4,.municipalities-view-bulma .title.is-4,.roles-view-bulma .title.is-4,.permissions-view-bulma .title.is-4,.settings-view-bulma .title.is-4,.documents-view-bulma .title.is-4,.email-templates-view .title.is-4,.telegram-bot-management .title.is-4,.alert-notification-settings-view .title.is-4,.telegram-notification-templates-view .title.is-4,.sidebar-management-view .title.is-4{font-weight:700;letter-spacing:-.02em;color:var(--color-text-primary);margin-bottom:.25rem!important}.admin-page .subtitle.is-6,.entities-view-bulma .subtitle.is-6,.users-view-bulma .subtitle.is-6,.volunteers-view-bulma .subtitle.is-6,.municipalities-view-bulma .subtitle.is-6,.roles-view-bulma .subtitle.is-6,.permissions-view-bulma .subtitle.is-6,.settings-view-bulma .subtitle.is-6,.documents-view-bulma .subtitle.is-6,.email-templates-view .subtitle.is-6,.telegram-bot-management .subtitle.is-6{color:var(--color-text-secondary)!important;margin-top:0!important}.admin-page .control.has-icons-left .input,.admin-page .select select,.admin-page .textarea,.admin-page .input,.entities-view-bulma .input,.users-view-bulma .input,.volunteers-view-bulma .input,.municipalities-view-bulma .input,.roles-view-bulma .input,.permissions-view-bulma .input,.settings-view-bulma .input,.documents-view-bulma .input,.firebase-view-bulma .input,.smtp-view-bulma .input,.storage-view-bulma .input,.telegram-view-bulma .input,.email-templates-view .input,.telegram-bot-management .input,.alert-notification-settings-view .input,.telegram-notification-templates-view .input{border-radius:8px;border-color:var(--color-admin-border);box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease}.admin-page .input:focus,.admin-page .select select:focus,.admin-page .textarea:focus,.entities-view-bulma .input:focus,.users-view-bulma .input:focus,.settings-view-bulma .input:focus{border-color:var(--color-admin-accent);box-shadow:0 0 0 3px var(--color-admin-focus)}.admin-dashboard .button.is-primary,.admin-page .button.is-primary,.entities-view-bulma .button.is-primary,.users-view-bulma .button.is-primary,.volunteers-view-bulma .button.is-primary,.municipalities-view-bulma .button.is-primary,.roles-view-bulma .button.is-primary,.permissions-view-bulma .button.is-primary,.settings-view-bulma .button.is-primary,.documents-view-bulma .button.is-primary,.firebase-view-bulma .button.is-primary,.smtp-view-bulma .button.is-primary,.storage-view-bulma .button.is-primary,.telegram-view-bulma .button.is-primary,.email-templates-view .button.is-primary,.telegram-bot-management .button.is-primary,.alert-notification-settings-view .button.is-primary,.telegram-notification-templates-view .button.is-primary,.sidebar-management-view .button.is-primary{background:var(--color-admin-accent);border-color:transparent;font-weight:600;border-radius:8px}.admin-dashboard .button.is-primary:hover,.admin-page .button.is-primary:hover,.entities-view-bulma .button.is-primary:hover,.users-view-bulma .button.is-primary:hover{background:var(--color-admin-accent-hover)}.admin-dashboard .button.is-info.is-light,.admin-page .button.is-info.is-light,.entities-view-bulma .button.is-info.is-light,.users-view-bulma .button.is-info.is-light{color:var(--color-admin-accent);background:var(--color-admin-accent-muted);border-color:transparent}.admin-page .table-container,.entities-view-bulma .table-container,.users-view-bulma .table-container,.volunteers-view-bulma .table-container,.municipalities-view-bulma .table-container,.roles-view-bulma .table-container,.permissions-view-bulma .table-container,.documents-view-bulma .table-container,.firebase-view-bulma .table-container,.smtp-view-bulma .table-container,.storage-view-bulma .table-container,.telegram-view-bulma .table-container,.email-templates-view .table-container,.telegram-bot-management .table-container{border:1px solid var(--color-admin-border);border-radius:10px;overflow:hidden;background:var(--color-bg-secondary)}.admin-page .table,.entities-view-bulma .table,.users-view-bulma .table,.volunteers-view-bulma .table,.municipalities-view-bulma .table,.roles-view-bulma .table,.permissions-view-bulma .table,.documents-view-bulma .table,.firebase-view-bulma .table,.smtp-view-bulma .table,.storage-view-bulma .table,.telegram-view-bulma .table,.email-templates-view .table,.telegram-bot-management .table{margin-bottom:0;background:transparent}.admin-page .table thead th,.entities-view-bulma .table thead th,.users-view-bulma .table thead th,.volunteers-view-bulma .table thead th,.municipalities-view-bulma .table thead th,.roles-view-bulma .table thead th,.permissions-view-bulma .table thead th,.documents-view-bulma .table thead th,.firebase-view-bulma .table thead th,.smtp-view-bulma .table thead th,.storage-view-bulma .table thead th,.telegram-view-bulma .table thead th,.email-templates-view .table thead th,.telegram-bot-management .table thead th{background:var(--color-admin-table-head)!important;color:var(--color-admin-table-head-text)!important;font-weight:600;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;border:none;padding:.75rem 1rem}.admin-page .table tbody tr,.entities-view-bulma .table tbody tr,.users-view-bulma .table tbody tr,.volunteers-view-bulma .table tbody tr{transition:background-color .12s ease}.admin-page .table tbody tr:hover,.entities-view-bulma .table tbody tr:hover,.users-view-bulma .table tbody tr:hover,.volunteers-view-bulma .table tbody tr:hover,.municipalities-view-bulma .table tbody tr:hover,.roles-view-bulma .table tbody tr:hover,.permissions-view-bulma .table tbody tr:hover,.documents-view-bulma .table tbody tr:hover{background-color:var(--color-admin-row-hover)!important}.admin-page .table tbody td,.entities-view-bulma .table tbody td,.users-view-bulma .table tbody td{vertical-align:middle;padding:.65rem 1rem;border-color:var(--color-admin-border)}.admin-page .buttons.are-small .button,.entities-view-bulma .buttons.are-small .button,.users-view-bulma .buttons.are-small .button,.volunteers-view-bulma .buttons.are-small .button{margin-bottom:0;border-radius:6px}.admin-page .box,.entities-view-bulma .box,.users-view-bulma .box,.volunteers-view-bulma .box,.settings-view-bulma .box,.permissions-view-bulma .box,.telegram-bot-management .box,.alert-notification-settings-view .box{border-radius:10px;border:1px solid var(--color-admin-border);box-shadow:none}.admin-page .notification,.entities-view-bulma .notification,.users-view-bulma .notification,.settings-view-bulma .notification,.email-templates-view .notification{border-radius:10px}.admin-page .tabs.is-boxed li.is-active a,.entities-view-bulma .tabs.is-boxed li.is-active a,.permissions-view-bulma .tabs.is-boxed li.is-active a,.settings-view-bulma .tabs.is-boxed li.is-active a,.volunteers-view-bulma .tabs.is-boxed li.is-active a{background:var(--color-admin-surface)!important;border-bottom-color:var(--color-admin-surface)!important;color:var(--color-admin-accent)!important;font-weight:600}.admin-page .tabs.is-boxed ul,.entities-view-bulma .tabs.is-boxed ul,.permissions-view-bulma .tabs.is-boxed ul{border-bottom-color:var(--color-admin-border)}.admin-dashboard .modal.is-active{z-index:10200;display:flex!important;align-items:center;justify-content:center;overflow-x:hidden;overflow-y:auto;padding:1.25rem 0;-webkit-overflow-scrolling:touch}.admin-dashboard .modal-background{z-index:10200}.admin-dashboard .modal-card{z-index:10201;position:relative;display:flex;flex-direction:column;max-height:min(90dvh,calc(100vh - 2.5rem));width:calc(100% - 2rem);margin:auto;border-radius:12px;overflow:hidden;box-shadow:0 20px 50px var(--color-shadow-strong);flex-shrink:0}.admin-dashboard .modal-card-head{flex-shrink:0;background:var(--color-admin-table-head);border-bottom:none}.admin-dashboard .modal-card-head.has-background-dark{background:var(--color-admin-sidebar)}.admin-dashboard .modal-card-title{color:var(--color-admin-table-head-text);font-weight:600}.admin-dashboard .modal-card>form{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.admin-dashboard .modal-card-body,.admin-dashboard .modal-card>form .modal-card-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:var(--color-bg-secondary)}.admin-dashboard .modal-card-foot,.admin-dashboard .modal-card>form .modal-card-foot{flex-shrink:0;background:var(--color-bg-tertiary);border-top:1px solid var(--color-admin-border)}.admin-dashboard .loader,.admin-page .loader,.entities-view-bulma .loader,.users-view-bulma .loader,.volunteers-view-bulma .loader,.municipalities-view-bulma .loader,.roles-view-bulma .loader,.permissions-view-bulma .loader,.settings-view-bulma .loader,.documents-view-bulma .loader,.firebase-view-bulma .loader,.smtp-view-bulma .loader,.storage-view-bulma .loader,.telegram-view-bulma .loader,.email-templates-view .loader,.telegram-bot-management .loader,.alert-notification-settings-view .loader,.telegram-notification-templates-view .loader{width:2.5rem;height:2.5rem;border:3px solid var(--color-admin-border);border-top-color:var(--color-admin-accent);border-radius:50%;animation:admin-spin .75s linear infinite;display:inline-block}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-page--loading,.admin-dashboard .has-text-centered.py-6{padding:3rem 1rem}.admin-dashboard .no-selection,.admin-dashboard .no-data,.admin-dashboard .loading,.admin-page .no-selection,.admin-page .no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;color:var(--color-text-secondary);text-align:center;border:1px dashed var(--color-admin-border);border-radius:12px;background:var(--color-bg-tertiary)}.admin-page .tag.is-primary,.entities-view-bulma .tag.is-primary,.users-view-bulma .tag.is-primary{background:var(--color-admin-accent-muted);color:var(--color-admin-accent)}.admin-dashboard{background:var(--color-admin-canvas)}.admin-dashboard .admin-main-content .app-content-scroll{padding:clamp(.75rem,2vw,1.25rem);background:var(--color-admin-canvas)}.admin-dashboard .admin-view-container{background:transparent;border:none;box-shadow:none;padding:0;min-height:auto}.admin-dashboard .app-sidebar--admin.admin-sidebar{background:linear-gradient(180deg,var(--color-admin-sidebar) 0%,var(--color-admin-sidebar-end) 100%)!important;border-right:1px solid rgba(255,255,255,.06);box-shadow:4px 0 24px #0f172a1f}.admin-dashboard .app-sidebar--admin .menu.has-background-dark{background:transparent!important}.admin-dashboard .admin-sidebar-logo{width:2.5rem;height:2.5rem;border-radius:10px;background:var(--color-admin-accent-muted-on-dark);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.15rem}.admin-dashboard .admin-sidebar-muni{font-weight:700;font-size:.95rem;letter-spacing:-.01em}.admin-dashboard .admin-sidebar-role-tag{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#ffffff8c;margin-top:.15rem}.admin-dashboard .admin-sidebar-search .input{background:#ffffff14;border-color:#ffffff1f;color:#fff;box-shadow:none}.admin-dashboard .admin-sidebar-search .input::placeholder{color:#ffffff73}.admin-dashboard .admin-sidebar-search .input:focus{border-color:var(--color-admin-accent);box-shadow:0 0 0 2px #6366f159}.admin-dashboard .admin-sidebar-search .icon{color:#ffffff80}.admin-dashboard .app-sidebar--admin .menu-list a{border-radius:8px;margin:2px 0;transition:background .15s ease,color .15s ease}.admin-dashboard .app-sidebar--admin .menu-list a:hover{background:var(--color-admin-sidebar-hover)!important}.admin-dashboard .app-sidebar--admin .menu-list a.is-active{background:var(--color-admin-accent)!important;color:#fff!important;box-shadow:0 2px 8px #4f46e559}.admin-dashboard .app-sidebar--admin .menu-list a.is-active .icon{color:#fff!important}.admin-dashboard .app-sidebar--admin .menu-list .menu-list a{font-size:.88rem;padding-left:.5rem}.admin-dashboard .admin-sidebar-footer{border-top:1px solid rgba(255,255,255,.08);margin-top:.5rem;padding-top:1rem}.admin-dashboard .navbar.is-primary.header-admin{background:linear-gradient(135deg,var(--color-admin-accent) 0%,color-mix(in srgb,var(--color-admin-accent) 70%,#312e81) 100%)!important;box-shadow:0 2px 16px color-mix(in srgb,var(--color-admin-accent) 35%,transparent)}.admin-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-bottom:1rem}.admin-toolbar__search{flex:1 1 280px;max-width:420px;margin-bottom:0}.admin-toolbar__meta{font-size:.8125rem;color:var(--color-text-secondary, #64748b);white-space:nowrap}.admin-toolbar__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.admin-info-panel{padding:.95rem 1.1rem;margin-bottom:1rem;border:1px solid color-mix(in srgb,var(--color-primary, #3273dc) 22%,var(--color-admin-border));border-radius:10px;background:color-mix(in srgb,var(--color-primary, #3273dc) 6%,var(--color-bg-primary, #fff));font-size:.8125rem;line-height:1.5;color:var(--color-text-secondary)}.admin-info-panel strong{color:var(--color-text-primary)}.admin-info-panel ul{margin:.5rem 0 0 1.1rem}.admin-info-panel code{font-size:.75rem;padding:.08rem .35rem;border-radius:4px;background:var(--color-bg-primary, #fff);border:1px solid var(--color-admin-border)}.admin-table-wrap{border:1px solid var(--color-admin-border);border-radius:12px;overflow:auto;background:var(--color-bg-primary, #fff)}.admin-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem}.admin-table thead th{position:sticky;top:0;z-index:2;background:var(--color-bg-secondary, #f8fafc);border-bottom:1px solid var(--color-admin-border);padding:.65rem .85rem;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary, #64748b);white-space:nowrap}.admin-table tbody td{padding:.75rem .85rem;border-bottom:1px solid var(--color-admin-border);vertical-align:middle}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:color-mix(in srgb,var(--color-primary, #3273dc) 4%,transparent)}.admin-table__actions-cell{width:1%;white-space:nowrap}.admin-table__actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.25rem}.admin-table__actions .button{width:2rem;height:2rem;padding:0;border-radius:8px}.admin-table__actions .button.is-small{width:auto;min-height:2rem;height:auto;padding:0 .65rem;border-radius:8px}.admin-table__actions .button .icon{width:1rem;height:1rem}.admin-layout-split{display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr);gap:1rem;align-items:start}.admin-sidebar-panel{border:1px solid var(--color-admin-border);border-radius:12px;background:var(--color-bg-primary, #fff);overflow:hidden;position:sticky;top:1rem;max-height:calc(100vh - 180px);display:flex;flex-direction:column}.admin-sidebar-panel__head{padding:.85rem 1rem;border-bottom:1px solid var(--color-admin-border);background:var(--color-bg-secondary, #f8fafc);font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary);display:flex;align-items:center;gap:.4rem}.admin-sidebar-panel__list{overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.35rem}.admin-sidebar-panel__item{display:flex;flex-direction:column;gap:.15rem;width:100%;text-align:left;padding:.55rem .65rem;border:1px solid transparent;border-radius:10px;background:transparent;cursor:pointer;transition:background .12s ease,border-color .12s ease}.admin-sidebar-panel__item:hover{background:var(--color-admin-row-hover, #f1f5f9);border-color:var(--color-admin-border)}.admin-sidebar-panel__item.is-active{background:color-mix(in srgb,var(--color-primary, #3273dc) 10%,transparent);border-color:color-mix(in srgb,var(--color-primary, #3273dc) 35%,transparent)}.admin-sidebar-panel__item-name{font-size:.8125rem;font-weight:600;color:var(--color-text-primary);line-height:1.35}.admin-sidebar-panel__item-meta{font-size:.6875rem;color:var(--color-text-secondary);word-break:break-word}.admin-main-panel{border:1px solid var(--color-admin-border);border-radius:12px;background:var(--color-bg-primary, #fff);min-height:420px;overflow:hidden}.admin-main-panel__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.15rem;border-bottom:1px solid var(--color-admin-border);background:var(--color-bg-secondary, #f8fafc)}.admin-main-panel__title{margin:0;font-size:1.05rem;font-weight:700;color:var(--color-text-primary)}.admin-main-panel__body{padding:1rem 1.15rem 1.15rem}.admin-main-panel__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:320px;padding:2rem;text-align:center;color:var(--color-text-secondary)}.admin-section-block{border:1px solid var(--color-admin-border);border-radius:12px;background:var(--color-bg-primary, #fff);padding:1rem 1.1rem;margin-bottom:1rem}.admin-section-block__title{margin:0 0 .75rem;font-size:.875rem;font-weight:700;color:var(--color-text-primary)}@media(max-width:768px){.admin-page,.entities-view-bulma,.users-view-bulma,.volunteers-view-bulma,.municipalities-view-bulma,.roles-view-bulma,.permissions-view-bulma,.settings-view-bulma,.documents-view-bulma,.firebase-view-bulma,.smtp-view-bulma,.storage-view-bulma,.telegram-view-bulma,.email-templates-view,.telegram-bot-management,.alert-notification-settings-view,.telegram-notification-templates-view,.sidebar-management-view{padding:1rem;border-radius:10px}.admin-page .table-container,.entities-view-bulma .table-container,.users-view-bulma .table-container,.volunteers-view-bulma .table-container{overflow-x:auto}.admin-page .table,.entities-view-bulma .table,.users-view-bulma .table,.volunteers-view-bulma .table{min-width:640px}.admin-layout-split{grid-template-columns:1fr}.admin-sidebar-panel{position:static;max-height:none}.admin-sidebar-panel__list{max-height:220px}}.config-scope-tabs{display:inline-flex;gap:.25rem;margin-bottom:1rem;padding:.25rem;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border);border-radius:10px}.config-scope-tabs__btn{appearance:none;border:none;background:transparent;padding:.45rem .85rem;border-radius:8px;font-size:.8125rem;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:background .12s ease,color .12s ease}.config-scope-tabs__btn.is-active{background:var(--color-bg-primary, #fff);color:var(--color-primary, #3273dc);box-shadow:0 1px 3px #0f172a14}.config-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem}.config-section-card{border:1px solid var(--color-admin-border);border-radius:12px;background:var(--color-bg-primary, #fff);padding:1rem 1.1rem;margin-bottom:1rem}.config-section-card__title{margin:0 0 .75rem;font-size:.9375rem;font-weight:700;color:var(--color-text-primary);display:flex;align-items:center;gap:.4rem}.config-section-card__subtitle{margin:-.35rem 0 .85rem;font-size:.8125rem;color:var(--color-text-secondary);line-height:1.45}.config-kv-table{width:100%;font-size:.8125rem}.config-kv-table th{width:38%;padding:.4rem .5rem .4rem 0;font-weight:600;color:var(--color-text-secondary);vertical-align:top}.config-kv-table td{padding:.4rem 0;color:var(--color-text-primary);vertical-align:top;word-break:break-word}.config-suggestion-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.65rem}.config-suggestion-card{padding:.75rem .85rem;border:1px solid var(--color-admin-border);border-radius:10px;background:var(--color-bg-secondary, #f8fafc)}.config-suggestion-card.is-configured{border-color:color-mix(in srgb,var(--color-success, #48c774) 35%,var(--color-admin-border));background:color-mix(in srgb,var(--color-success, #48c774) 6%,var(--color-bg-primary, #fff))}.email-template-card{border:1px solid var(--color-admin-border);border-radius:12px;background:var(--color-bg-primary, #fff);height:100%;display:flex;flex-direction:column}.email-template-card.is-customized{border-color:color-mix(in srgb,var(--color-success, #48c774) 35%,var(--color-admin-border));background:color-mix(in srgb,var(--color-success, #48c774) 5%,var(--color-bg-primary, #fff))}.email-template-card__head{padding:.75rem .9rem;border-bottom:1px solid var(--color-admin-border);display:flex;align-items:center;justify-content:space-between;gap:.5rem}.email-template-card__title{margin:0;font-size:.875rem;font-weight:700;color:var(--color-text-primary)}.email-template-card__body{padding:.85rem .9rem;flex:1;display:flex;flex-direction:column}.email-template-vars{display:flex;flex-wrap:wrap;gap:.25rem}.email-template-vars code{font-size:.6875rem;padding:.1rem .35rem;border-radius:4px;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-admin-border)}.sidebar-menu-panel{border:1px solid var(--color-admin-border);border-radius:12px;background:var(--color-bg-primary, #fff);padding:.75rem}.sidebar-menu-item{border:1px solid var(--color-admin-border);border-radius:10px;background:var(--color-bg-primary, #fff);margin-bottom:.45rem;padding:.55rem .65rem}.sidebar-menu-item:last-child{margin-bottom:0}.sidebar-menu-item.is-folder{background:var(--color-bg-secondary, #f8fafc)}.sidebar-menu-item__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}.sidebar-menu-item__actions .button{width:2rem;height:2rem;padding:0}.alert-channel-cell{display:inline-flex;flex-direction:column;align-items:center;gap:.35rem}.admin-control-dashboard__head{flex-wrap:wrap;gap:.75rem}.admin-control-alert{border-radius:10px}.admin-control-quicklinks .title.is-6{color:var(--color-text-primary)}.admin-control-quicklink{display:flex;align-items:center;gap:.75rem;width:100%;text-align:left;padding:.85rem 1rem;border:1px solid var(--color-admin-border);border-radius:10px;background:var(--color-bg-tertiary);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .1s ease}.admin-control-quicklink:hover{border-color:color-mix(in srgb,var(--color-admin-accent) 45%,var(--color-admin-border));box-shadow:0 4px 12px color-mix(in srgb,var(--color-admin-accent) 12%,transparent);transform:translateY(-1px)}.admin-control-quicklink__icon{width:2.25rem;height:2.25rem;border-radius:8px;background:var(--color-admin-accent-muted);color:var(--color-admin-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-control-quicklink__text{display:flex;flex-direction:column;gap:.1rem;min-width:0}.admin-control-feed__head{gap:.5rem}.admin-control-feed__filters{margin-bottom:0!important;flex-wrap:wrap}.admin-control-kpi{margin-bottom:.5rem!important}.admin-control-kpi-card{display:flex;align-items:flex-start;gap:.85rem;padding:1rem 1.1rem;background:var(--color-bg-tertiary);border:1px solid var(--color-admin-border);border-radius:12px;height:100%}.admin-control-kpi-card--highlight{border-color:color-mix(in srgb,var(--color-admin-accent) 40%,var(--color-admin-border));background:var(--color-admin-accent-muted)}.admin-control-kpi-card.is-compact{flex-direction:column;gap:.25rem}.admin-control-kpi-card__icon{width:2.5rem;height:2.5rem;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.admin-control-kpi-card__icon.is-users{background:#dbeafe;color:#2563eb}.admin-control-kpi-card__icon.is-volunteers{background:#d1fae5;color:#059669}.admin-control-kpi-card__icon.is-online{background:#dcfce7;color:#16a34a}.admin-control-kpi-card__icon.is-online .bi-circle-fill{font-size:.55rem}.admin-control-kpi-card__icon.is-entities{background:#ede9fe;color:var(--color-admin-accent)}.admin-control-kpi-card__label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);margin:0 0 .15rem}.admin-control-kpi-card__value{font-size:1.65rem;font-weight:700;line-height:1.1;color:var(--color-text-primary);margin:0}.admin-control-kpi-card__hint{font-size:.72rem;color:var(--color-text-secondary);margin:.2rem 0 0}.admin-control-panel{background:var(--color-bg-tertiary);border:1px solid var(--color-admin-border);border-radius:12px;padding:1rem 1.15rem;height:100%;min-height:320px}.admin-control-panel--feed{display:flex;flex-direction:column}.admin-control-online-list{list-style:none;margin:0;padding:0;max-height:420px;overflow-y:auto}.admin-control-online-item{display:flex;justify-content:space-between;gap:.75rem;padding:.65rem 0;border-bottom:1px solid var(--color-admin-border)}.admin-control-online-item:last-child{border-bottom:none}.admin-control-online-item__meta{text-align:right;flex-shrink:0}.admin-control-feed{flex:1;max-height:380px;overflow-y:auto;display:flex;flex-direction:column;gap:.35rem}.admin-control-feed__row{display:flex;flex-direction:column;gap:.35rem;padding:.55rem .65rem;border-radius:8px;font-size:.82rem;border:1px solid transparent}.admin-control-feed__row.is-live{background:color-mix(in srgb,var(--color-success) 8%,transparent);border-color:color-mix(in srgb,var(--color-success) 20%,transparent)}.admin-control-feed__row-head{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem}.admin-control-feed__time{font-variant-numeric:tabular-nums;color:var(--color-text-secondary);white-space:nowrap;font-size:.75rem}.admin-control-feed__actor{margin-left:auto;display:inline-flex;align-items:center;flex-wrap:wrap;gap:.25rem;font-size:.78rem}.admin-control-feed__actor strong{font-weight:600;color:var(--color-text-primary)}.admin-control-feed__action{margin:0;color:var(--color-text-primary);font-weight:500;line-height:1.35}.admin-control-feed__details{display:flex;flex-wrap:wrap;gap:.3rem}.admin-control-feed__details .tag{font-size:.7rem}html[data-theme=dark] .admin-control-kpi-card__icon.is-users{background:#2563eb33}html[data-theme=dark] .admin-control-kpi-card__icon.is-volunteers{background:#05966933}html[data-theme=dark] .admin-control-kpi-card__icon.is-online{background:#16a34a33}html[data-theme=dark] .admin-control-kpi-card__icon.is-entities{background:#6366f133}@media(max-width:768px){.admin-control-feed__actor{margin-left:0;width:100%}.admin-control-feed__filters{width:100%;justify-content:flex-start}}
