:root{--musa-primary:#7a3040;--musa-primary-hover:#612432;--musa-primary-soft:#f5e9e9;--musa-accent:#b75d42;--musa-accent-soft:#faeee8;--musa-bg:#f6f2ed;--musa-surface:#fff;--musa-surface-soft:#fbf8f4;--musa-surface-muted:#f1ebe4;--musa-text:#292321;--musa-text-secondary:#6e6560;--musa-text-muted:#8a817b;--musa-border:#e6ddd4;--musa-border-strong:#d4c6ba;--musa-sidebar:#302522;--musa-sidebar-elevated:#3a2c28;--musa-sidebar-text:#f6eee8;--musa-sidebar-muted:#d7cbc3;--musa-success:#287a55;--musa-success-soft:#e8f4ee;--musa-warning:#a96512;--musa-warning-soft:#fff3df;--musa-danger:#b33a3a;--musa-danger-soft:#fbeaea;--musa-info:#376a8c;--musa-info-soft:#eaf2f7;--musa-focus:#bd725e;--musa-radius-sm:8px;--musa-radius:12px;--musa-radius-lg:18px;--musa-shadow-sm:0 1px 2px rgb(50 35 30/5%),0 4px 14px rgb(50 35 30/4%);--musa-shadow:0 10px 30px rgb(50 35 30/8%);--musa-sidebar-width:268px;--musa-header-height:66px;--rz-primary:var(--musa-primary);--rz-primary-light:var(--musa-primary-soft);--rz-primary-dark:var(--musa-primary-hover);--rz-base-background-color:var(--musa-surface);--rz-text-color:var(--musa-text);--rz-border-color:var(--musa-border);--rz-border-radius:var(--musa-radius-sm)}
html,body{margin:0;min-height:100%}html{background:var(--musa-bg);color-scheme:light}body{background:var(--musa-bg);color:var(--musa-text);font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.5;overflow-x:hidden}*,*::before,*::after{box-sizing:border-box}a{color:var(--musa-primary)}a:hover{color:var(--musa-primary-hover)}:focus-visible{outline:3px solid color-mix(in srgb,var(--musa-focus) 42%,transparent);outline-offset:2px}h1:focus{outline:none}
.page-shell{display:grid;gap:1.5rem;min-width:0}.page-header{align-items:flex-end;display:flex;gap:1.25rem;justify-content:space-between}.page-heading{min-width:0}.page-eyebrow{color:var(--musa-accent);display:block;font-size:.73rem;font-weight:800;letter-spacing:.12em;margin-bottom:.35rem;text-transform:uppercase}.page-title{color:var(--musa-text);font-size:clamp(1.65rem,2.5vw,2.15rem);font-weight:750;letter-spacing:-.035em;line-height:1.15;margin:0}.page-subtitle{color:var(--musa-text-secondary);margin:.45rem 0 0;max-width:760px}.page-actions{align-items:center;display:flex;flex:0 0 auto;gap:.5rem;justify-content:flex-end}
.content-card,.filter-card,.editor-card,.data-grid-card,.summary-panel{background:var(--musa-surface);border:1px solid var(--musa-border);border-radius:var(--musa-radius-lg);box-shadow:var(--musa-shadow-sm);min-width:0}.content-card,.summary-panel{padding:1.5rem}.filter-card{padding:1rem}.filter-grid{align-items:end;display:grid;gap:1rem;grid-template-columns:minmax(220px,1fr) repeat(2,minmax(150px,240px)) auto}.filter-grid--simple{grid-template-columns:minmax(240px,1fr) auto}.filter-field,.form-field,.dialog-field{display:grid;gap:.4rem;min-width:0}.filter-label,.form-field>label,.dialog-field>label{color:var(--musa-text);font-size:.84rem;font-weight:700}.field-help,.form-field small{color:var(--musa-text-secondary);font-size:.8rem}
.metric-grid{display:grid;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card{background:var(--musa-surface);border:1px solid var(--musa-border);border-radius:var(--musa-radius-lg);box-shadow:var(--musa-shadow-sm);display:grid;gap:1rem;grid-template-columns:auto 1fr;min-height:148px;padding:1.25rem}.metric-card__icon{align-items:center;background:var(--musa-accent-soft);border-radius:var(--musa-radius);color:var(--musa-accent);display:inline-flex;height:46px;justify-content:center;width:46px}.metric-card__icon .rzi{font-size:1.45rem}.metric-card__label{color:var(--musa-text-secondary);font-size:.82rem;font-weight:700}.metric-card__value{color:var(--musa-text);display:block;font-size:1.65rem;font-weight:750;line-height:1.2;margin-top:.15rem}.metric-card__meta{color:var(--musa-text-muted);font-size:.78rem;grid-column:1/-1}.dashboard-grid{display:grid;gap:1.25rem;grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr)}.panel-heading{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:1.25rem}.panel-title{font-size:1.05rem;font-weight:750;margin:0}.quick-actions{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.quick-action{align-items:center;background:var(--musa-surface-soft);border:1px solid var(--musa-border);border-radius:var(--musa-radius);color:var(--musa-text);display:flex;gap:.75rem;min-height:70px;padding:1rem;text-decoration:none;transition:.16s ease}.quick-action:hover{background:var(--musa-accent-soft);border-color:var(--musa-accent);color:var(--musa-text);transform:translateY(-1px)}.quick-action .rzi{color:var(--musa-accent)}
.status-badge,.role-badge,.type-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.74rem;font-weight:750;gap:.3rem;line-height:1;padding:.42rem .65rem;white-space:nowrap}.status-badge::before{background:currentColor;border-radius:50%;content:"";height:6px;width:6px}.status-badge--active{background:var(--musa-success-soft);color:var(--musa-success)}.status-badge--inactive{background:var(--musa-surface-muted);color:var(--musa-text-secondary)}.status-badge--warning{background:var(--musa-warning-soft);color:var(--musa-warning)}.role-badge,.type-badge{background:var(--musa-primary-soft);color:var(--musa-primary)}
.data-grid-card{overflow-x:auto}.table-scroll{max-width:100%;overflow-x:auto}.musa-admin-shell .admin-grid.rz-data-grid{border:0;border-radius:var(--musa-radius-lg);min-width:720px}.musa-admin-shell .admin-grid .rz-datatable-thead>tr>th{background:var(--musa-surface-soft);border-bottom:1px solid var(--musa-border);color:var(--musa-text-secondary);font-size:.73rem;font-weight:800;letter-spacing:.045em;padding-block:.9rem;text-transform:uppercase}.musa-admin-shell .admin-grid .rz-data-row>td{border-bottom-color:var(--musa-border);color:var(--musa-text);padding-block:.9rem;vertical-align:middle}.musa-admin-shell .admin-grid .rz-data-row:hover>td{background:var(--musa-surface-soft)}.musa-admin-shell .admin-grid .rz-paginator{background:var(--musa-surface);border-top:1px solid var(--musa-border);padding:.85rem 1rem}.cell-primary{font-weight:700}.cell-secondary,.role-cell span{color:var(--musa-text-secondary);font-size:.79rem}.cell-clamp,.image-value,.media-value{display:inline-block;max-width:190px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.table-actions{align-items:center;display:flex;gap:.35rem}.musa-admin-shell .rz-button.icon-action{border-radius:9px;height:34px;min-width:34px;padding:0;width:34px}
.empty-state,.loading-state,.error-state{align-items:center;color:var(--musa-text-secondary);display:flex;flex-direction:column;gap:.75rem;justify-content:center;min-height:220px;padding:2rem;text-align:center}.empty-state .rzi,.loading-state .rzi,.error-state .rzi{color:var(--musa-accent);font-size:2.15rem}.editor-shell{display:grid;gap:1.25rem}.editor-card{overflow:hidden}.form-section,.tab-content{display:grid;gap:1.25rem;padding:1.25rem .5rem}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid__full{grid-column:1/-1}.form-actions,.dialog-actions{align-items:center;background:color-mix(in srgb,var(--musa-surface) 95%,transparent);border-top:1px solid var(--musa-border);display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem;padding:1rem 0 0}.form-actions{bottom:0;position:sticky;z-index:3}.switch-row{align-items:center;background:var(--musa-surface-soft);border:1px solid var(--musa-border);border-radius:var(--musa-radius);display:flex;gap:.75rem;padding:.75rem 1rem}.dialog-shell{display:grid;gap:1.25rem;max-height:min(72vh,760px);overflow-y:auto;padding:.1rem .2rem}.dialog-intro{color:var(--musa-text-secondary);font-size:.88rem;margin:0}
.media-upload{background:var(--musa-surface-soft);border:1px solid var(--musa-border);border-radius:var(--musa-radius);display:grid;gap:.75rem;padding:1rem}.media-upload__heading{align-items:center;display:flex;gap:.75rem}.media-upload__icon{align-items:center;background:var(--musa-accent-soft);border-radius:10px;color:var(--musa-accent);display:inline-flex;height:38px;justify-content:center;width:38px}.media-upload__label{display:block;font-weight:750}.media-upload__hint{color:var(--musa-text-secondary);display:block;font-size:.78rem}.media-dropzone{background:var(--musa-surface);border:1px dashed var(--musa-border-strong);border-radius:var(--musa-radius);padding:1rem}.media-dropzone input[type=file]{cursor:pointer;max-width:100%}.media-preview{align-items:start;background:var(--musa-surface);border:1px solid var(--musa-border);border-radius:var(--musa-radius);display:grid;gap:.5rem;padding:.75rem}.media-preview img{background:var(--musa-surface-muted);border-radius:var(--musa-radius-sm);display:block;max-height:220px;max-width:min(100%,34rem);object-fit:contain}.media-preview audio{max-width:100%;width:34rem}.media-upload__actions{display:flex;flex-wrap:wrap;gap:.5rem}.media-upload__note{color:var(--musa-text-secondary);font-size:.78rem;margin:0}.message-panel{align-items:flex-start;border:1px solid;border-radius:var(--musa-radius);display:flex;gap:.75rem;padding:1rem}.message-panel--info{background:var(--musa-info-soft);border-color:var(--musa-info);color:var(--musa-info)}.message-panel--warning{background:var(--musa-warning-soft);border-color:var(--musa-warning);color:#76500f}
.valid.modified:not([type=checkbox]){outline:2px solid var(--musa-success)}.invalid{border-color:var(--musa-danger)!important;outline:2px solid color-mix(in srgb,var(--musa-danger) 16%,transparent)}.validation-message,.validation-errors{color:var(--musa-danger);font-size:.8rem;margin-top:.15rem}.musa-admin-shell .rz-card{border-color:var(--musa-border);border-radius:var(--musa-radius-lg);box-shadow:var(--musa-shadow-sm)}.musa-admin-shell .rz-button{border-radius:var(--musa-radius-sm);font-weight:700;min-height:40px}.musa-admin-shell .rz-button.rz-primary{box-shadow:0 5px 14px rgb(122 48 64/16%)}.musa-admin-shell .rz-textbox,.musa-admin-shell .rz-dropdown,.musa-admin-shell .rz-numeric,.musa-admin-shell .rz-textarea,.musa-admin-shell .rz-datepicker{border-color:var(--musa-border-strong);border-radius:var(--musa-radius-sm);min-height:42px}.musa-admin-shell .rz-textbox:focus,.musa-admin-shell .rz-dropdown:focus-within,.musa-admin-shell .rz-numeric:focus-within,.musa-admin-shell .rz-textarea:focus,.musa-admin-shell .rz-datepicker:focus-within{border-color:var(--musa-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--musa-focus) 16%,transparent)}.musa-admin-shell .rz-tabview{border:0}.musa-admin-shell .rz-tabview-nav{background:var(--musa-surface-soft);border-bottom:1px solid var(--musa-border);gap:.25rem;overflow-x:auto;padding:.6rem .75rem 0}.musa-admin-shell .rz-tabview-nav li a{border-radius:9px 9px 0 0;color:var(--musa-text-secondary);font-weight:700;white-space:nowrap}.musa-admin-shell .rz-tabview-nav li.rz-tabview-selected a{background:var(--musa-surface);color:var(--musa-primary)}.rz-dialog{border:1px solid var(--musa-border);border-radius:var(--musa-radius-lg);box-shadow:0 24px 70px rgb(35 22 18/22%);max-height:calc(100dvh - 2rem);max-width:calc(100vw - 2rem)}.rz-dialog-titlebar{background:var(--musa-surface);border-bottom:1px solid var(--musa-border);color:var(--musa-text);padding:1rem 1.25rem}.rz-dialog-content{padding:1.25rem}.rz-notification{border-radius:var(--musa-radius);box-shadow:var(--musa-shadow)}.blazor-error-boundary{background:var(--musa-danger);color:white;padding:1rem}#blazor-error-ui{background:var(--musa-warning-soft);border-top:1px solid var(--musa-warning);bottom:0;box-shadow:0 -6px 20px rgb(50 35 30/10%);color:var(--musa-text);display:none;left:0;padding:.75rem 3rem .75rem 1.25rem;position:fixed;width:100%;z-index:2000}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:1rem}
@media(max-width:1180px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-grid{grid-template-columns:minmax(220px,1fr) minmax(150px,220px)}}@media(max-width:820px){.page-header{align-items:stretch;flex-direction:column}.page-actions{justify-content:flex-start}.dashboard-grid,.form-grid,.form-grid--three{grid-template-columns:1fr}.filter-grid,.filter-grid--simple{grid-template-columns:1fr}.quick-actions{grid-template-columns:1fr}}@media(max-width:560px){.metric-grid{grid-template-columns:1fr}.content-card,.summary-panel{padding:1rem}.musa-admin-shell .page-actions .rz-button{flex:1}.form-actions,.dialog-actions,.media-upload__actions{align-items:stretch;flex-direction:column-reverse}.musa-admin-shell .form-actions .rz-button,.dialog-actions .rz-button,.musa-admin-shell .media-upload__actions .rz-button{width:100%}.rz-dialog{height:auto;margin:.5rem;max-height:calc(100dvh - 1rem);max-width:calc(100vw - 1rem);width:calc(100vw - 1rem)!important}.rz-dialog-content{padding:1rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
.musa-admin-shell .admin-grid .rz-datatable-empty-message{color:var(--musa-text-secondary);padding:3rem;text-align:center}.musa-admin-shell .admin-grid .rz-button{border-radius:9px}.musa-admin-shell .rz-badge{border-radius:999px;font-weight:700;padding:.38rem .6rem}

.field-control{width:100%}

/* Rifiniture circoscritte al pager nativo Radzen. Il tema ufficiale resta responsabile della struttura. */
.musa-admin-shell .rz-paginator{align-items:center;background:var(--musa-surface);border-top:1px solid var(--musa-border);display:flex;flex-wrap:wrap;gap:.35rem;min-height:58px;padding:.7rem 1rem}
.musa-admin-shell .rz-paginator-pages{align-items:center;display:flex;gap:.25rem;list-style:none;margin:0;padding:0}
.musa-admin-shell .rz-paginator .rz-paginator-element{align-items:center;border-radius:8px;display:inline-flex;height:34px;justify-content:center;min-width:34px}
.musa-admin-shell .rz-paginator .rz-paginator-page.rz-state-active{background:var(--musa-primary);color:#fff}
.musa-admin-shell .rz-paginator .rz-dropdown{min-height:34px;min-width:74px}
.musa-admin-shell .rz-paginator-summary{color:var(--musa-text-secondary);font-size:.8rem;margin-inline-start:auto}
@media(max-width:560px){.musa-admin-shell .rz-paginator{justify-content:center}.musa-admin-shell .rz-paginator-summary{flex-basis:100%;margin:0;text-align:center}}
.media-fields-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:800px){.media-fields-grid{grid-template-columns:1fr}}
