:root{--b-blue:#0865d9;--b-navy:#10254b;--b-bg:#f4f7fb;--b-border:#dbe4f0;--b-muted:#65748b;--b-success:#16845b;--b-danger:#b42318}.backend-body{margin:0;background:var(--b-bg);font-family:Inter,sans-serif;color:#162033}.backend-topbar{height:76px;background:#fff;border-bottom:1px solid var(--b-border);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,56px);position:sticky;top:0;z-index:30}.backend-brand img{height:47px;width:auto}.backend-topbar nav{display:flex;align-items:center;gap:22px}.backend-topbar a{text-decoration:none;color:var(--b-navy);font-weight:700}.backend-user{padding-left:20px;border-left:1px solid var(--b-border);color:var(--b-muted)}.backend-logout{color:var(--b-danger)!important}.backend-main{width:min(1440px,calc(100% - 40px));margin:32px auto;min-height:calc(100vh - 160px)}.backend-footer{text-align:center;color:var(--b-muted);padding:22px}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.page-head h1{font-family:'Roboto Condensed',sans-serif;font-size:36px;margin:0;color:var(--b-navy)}.page-head p{margin:6px 0 0;color:var(--b-muted)}.btn{border:0;border-radius:12px;padding:12px 18px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:9px}.btn-primary{background:var(--b-blue);color:#fff}.btn-secondary{background:#fff;color:var(--b-navy);border:1px solid var(--b-border)}.backend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px}.course-card-real{background:#fff;border:1px solid var(--b-border);border-radius:18px;padding:22px;box-shadow:0 8px 28px rgba(16,37,75,.06)}.course-card-real h2{font-size:21px;margin:10px 0 8px;color:var(--b-navy)}.course-card-real p{color:var(--b-muted);min-height:44px}.course-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--b-muted);font-size:13px;margin:14px 0}.status-pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#e9f2ff;color:var(--b-blue);font-size:12px;font-weight:800;text-transform:uppercase}.card-actions{display:flex;gap:10px;margin-top:18px}.form-card{background:#fff;border:1px solid var(--b-border);border-radius:18px;padding:26px;max-width:920px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-weight:800;color:var(--b-navy)}.field input,.field select,.field textarea{border:1px solid #cbd7e6;border-radius:11px;padding:12px 13px;font:inherit;background:#fff}.field textarea{min-height:110px;resize:vertical}.alert{padding:14px 16px;border-radius:12px;margin-bottom:18px}.alert-error{background:#fff0ef;color:#8f1d16;border:1px solid #ffc9c5}.alert-success{background:#eaf8f2;color:#126345;border:1px solid #b8ead5}.login-shell{min-height:75vh;display:grid;place-items:center}.login-card{width:min(440px,100%);background:#fff;border:1px solid var(--b-border);border-radius:22px;padding:32px;box-shadow:0 16px 50px rgba(16,37,75,.1)}.login-card h1{font-family:'Roboto Condensed';font-size:34px;color:var(--b-navy);margin:0 0 8px}.login-card .field{margin-top:17px}.login-card .btn{width:100%;justify-content:center;margin-top:22px}.builder-layout{display:grid;grid-template-columns:310px 1fr;gap:20px}.builder-panel{background:#fff;border:1px solid var(--b-border);border-radius:18px;padding:20px}.module-item{border:1px solid var(--b-border);border-radius:12px;padding:14px;margin-bottom:10px}.module-item strong{display:block;color:var(--b-navy)}.module-item small{color:var(--b-muted)}.empty-state{text-align:center;padding:52px 20px;background:#fff;border:1px dashed #b9c8db;border-radius:18px;color:var(--b-muted)}.security-note{display:flex;gap:12px;background:#fff8e8;border:1px solid #f1d28a;border-radius:14px;padding:15px;margin:20px 0;color:#704f05}.install-box{max-width:760px;margin:30px auto;background:#fff;border:1px solid var(--b-border);border-radius:18px;padding:26px}.check-list{display:grid;gap:10px}.check-item{padding:12px;border:1px solid var(--b-border);border-radius:10px;display:flex;justify-content:space-between}.ok{color:var(--b-success);font-weight:800}.ko{color:var(--b-danger);font-weight:800}@media(max-width:760px){.backend-topbar{height:auto;padding:13px 16px;align-items:flex-start}.backend-brand img{height:38px}.backend-topbar nav{gap:12px;flex-wrap:wrap;justify-content:flex-end;font-size:13px}.backend-user{display:none}.backend-main{width:min(100% - 24px,1440px);margin:20px auto}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:30px}.form-grid,.builder-layout{grid-template-columns:1fr}.backend-grid{grid-template-columns:1fr}}

/* Course Builder v1.5 */
.page-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.eyebrow{display:block;font-size:11px;letter-spacing:.12em;font-weight:800;color:var(--b-blue);margin-bottom:4px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.panel-heading h2{margin:0;color:var(--b-navy);font-size:24px}.split-heading{align-items:center}.lead-copy{font-size:17px;line-height:1.6;color:var(--b-muted);max-width:760px}.course-builder-layout{grid-template-columns:360px 1fr}.course-tree-panel{padding:22px}.course-tree{display:grid;gap:14px}.tree-module{border:1px solid var(--b-border);border-radius:14px;overflow:hidden;background:#fbfdff}.tree-module-head{padding:14px 15px;background:#f5f9ff;border-bottom:1px solid var(--b-border)}.tree-module-head strong,.tree-module-head small{display:block}.tree-module-head strong{color:var(--b-navy)}.tree-module-head small{margin-top:4px;color:var(--b-muted)}.tree-lessons{display:grid}.tree-lesson{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 14px;text-decoration:none;color:var(--b-navy);border-top:1px solid #edf2f8}.tree-lesson:first-child{border-top:0}.tree-lesson:hover{background:#f3f8ff}.tree-lesson span{display:flex;align-items:center;gap:8px;min-width:0}.tree-lesson strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-lesson small{color:var(--b-muted);white-space:nowrap}.tree-empty,.form-hint,.field-help{font-size:13px;color:var(--b-muted)}.tree-empty{padding:11px 14px;margin:0}.compact-form{border-top:1px solid var(--b-border);margin-top:20px;padding-top:18px;display:grid;gap:12px}.compact-form .btn{justify-content:center}.mini-empty{padding:16px;border:1px dashed #c7d4e4;border-radius:12px;color:var(--b-muted);text-align:center}.lesson-create-card{background:#f8fbff;border:1px solid #d8e8fb;border-radius:16px;padding:22px;margin:22px 0}.lesson-create-card .btn{margin-top:18px}.course-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.summary-card{border:1px solid var(--b-border);border-radius:14px;padding:16px;background:#fff}.summary-card span,.summary-card strong{display:block}.summary-card span{font-size:12px;color:var(--b-muted);margin-bottom:6px}.summary-card strong{color:var(--b-navy)}

.lesson-page-head .back-link{display:inline-flex;align-items:center;gap:7px;color:var(--b-blue);font-weight:700;text-decoration:none;margin-bottom:7px}.lesson-builder{display:grid;grid-template-columns:280px minmax(0,1fr) 320px;gap:18px;align-items:start}.slides-panel,.settings-panel{position:sticky;top:96px}.count-badge{min-width:30px;height:30px;border-radius:999px;background:#e9f2ff;color:var(--b-blue);display:grid;place-items:center;font-weight:800}.slides-list{display:grid;gap:8px;max-height:58vh;overflow:auto;padding-right:3px}.slide-list-item{display:flex;gap:10px;align-items:center;padding:11px;border:1px solid var(--b-border);border-radius:12px;text-decoration:none;color:var(--b-navy);background:#fff}.slide-list-item:hover,.slide-list-item.active{border-color:#82b5ee;background:#eef6ff}.slide-number{width:28px;height:28px;border-radius:8px;background:#edf2f8;display:grid;place-items:center;font-weight:800;flex:0 0 auto}.slide-list-item.active .slide-number{background:var(--b-blue);color:#fff}.slide-label{min-width:0}.slide-label strong,.slide-label small{display:block}.slide-label strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slide-label small{font-size:11px;color:var(--b-muted);margin-top:3px}.slide-content-meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.slide-content-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:999px;background:#f3f7fb;border:1px solid #dbe6f2;color:#48627f;font-size:10px;line-height:1.2;max-width:100%}.slide-content-pill i{font-size:10px;color:#0865d9}.slide-content-pill span{font-weight:700}.slide-content-pill strong,.slide-content-pill em{font-style:normal;font-weight:700;color:#28486c}.slide-content-pill em{font-weight:600;color:#61738a}.slide-list-item.active .slide-content-pill,.slide-list-item:hover .slide-content-pill{background:#fff;border-color:#cfe0f3}.full-btn{width:100%;justify-content:center}.slide-editor-panel{min-height:660px}.editor-empty-state{min-height:520px;display:grid;place-items:center;align-content:center;text-align:center;color:var(--b-muted)}.editor-empty-state i{font-size:54px;color:#9ab2ce}.editor-empty-state h2{color:var(--b-navy);margin:16px 0 7px}.layout-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 22px}.layout-option{position:relative;border:1px solid var(--b-border);border-radius:12px;padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;cursor:pointer;background:#fff;color:var(--b-muted);font-size:12px;font-weight:700}.layout-option input{position:absolute;opacity:0;pointer-events:none}.layout-option i{font-size:20px}.layout-option.selected{border-color:var(--b-blue);box-shadow:0 0 0 2px rgba(8,101,217,.12);color:var(--b-blue);background:#f3f8ff}.editor-fields{grid-template-columns:1fr 1fr}.check-field{display:flex;align-items:center;gap:9px;font-weight:700;color:var(--b-navy);font-size:14px}.check-field input{width:18px;height:18px}.danger-zone{border-top:1px solid var(--b-border);margin-top:26px;padding-top:18px;display:flex;justify-content:flex-end}.btn-danger{background:#fff0ef;color:var(--b-danger);border:1px solid #ffc9c5}.settings-form{display:grid;gap:14px}.settings-panel .field textarea{min-height:92px}.privacy-mini-note{display:flex;gap:10px;padding:13px;margin-top:18px;border-radius:12px;background:#f0f7ff;color:#315273;font-size:12px;line-height:1.45}.btn:disabled{opacity:.55;cursor:not-allowed}

@media(max-width:1180px){.lesson-builder{grid-template-columns:250px minmax(0,1fr)}.settings-panel{grid-column:1/-1;position:static}.course-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.course-builder-layout,.lesson-builder{grid-template-columns:1fr}.slides-panel,.settings-panel{position:static}.slides-list{max-height:none}.layout-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-fields,.course-summary-grid{grid-template-columns:1fr}.slide-editor-panel{min-height:0}.tree-lesson strong{white-space:normal}}

/* Media Manager privato v1.6 */
.private-media-section{border:1px solid #cfe0f4;background:#f8fbff;border-radius:16px;padding:18px;margin:4px 0 24px}.media-section-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.media-section-head h3{margin:0;color:var(--b-navy);font-size:21px}.private-badge{display:inline-flex;align-items:center;gap:7px;background:#e8f5ef;color:#126345;border:1px solid #b8ead5;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800;white-space:nowrap}.media-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.media-upload-card{border:1px solid var(--b-border);border-radius:14px;padding:14px;background:#fff;display:flex;flex-direction:column;gap:11px;min-width:0}.media-upload-card.has-file{border-color:#9fc9ef;box-shadow:0 0 0 2px rgba(8,101,217,.06)}.media-card-title{display:flex;gap:10px;align-items:center;color:var(--b-navy)}.media-card-title>i{width:34px;height:34px;border-radius:10px;background:#edf5ff;color:var(--b-blue);display:grid;place-items:center}.media-card-title strong,.media-card-title small,.media-file-info strong,.media-file-info small{display:block}.media-card-title small,.media-file-info small{font-size:11px;color:var(--b-muted);margin-top:3px;word-break:break-word}.media-file-info strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-sync-note{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border-radius:10px;background:#eef5ff;border:1px solid #d4e4f7;color:#34567c;font-size:12px;line-height:1.45}.editor-sync-note i{margin-top:2px;color:#0876ec}.editor-sync-note strong{color:#0d3768}.media-preview img,.media-preview video{display:block;width:100%;max-height:210px;object-fit:contain;background:#edf2f8;border-radius:10px}.media-preview audio{width:100%}.pdf-preview-link{min-height:88px;border-radius:10px;background:#fff4f3;color:#a72a20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:800}.pdf-preview-link i{font-size:28px}.file-picker{border:1px dashed #93b7df;border-radius:10px;padding:11px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--b-blue);font-weight:800;cursor:pointer;background:#f6faff;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.file-picker:hover{background:#edf6ff}.file-picker.supports-drag-drop{min-height:76px;flex-wrap:wrap;text-align:center}.file-picker.supports-drag-drop .file-drop-help{flex-basis:100%;font-size:11px;font-weight:600;color:var(--b-muted)}.file-picker.supports-drag-drop.is-drag-over{background:#e8f3ff;border-color:#0876ec;box-shadow:0 0 0 3px rgba(8,118,236,.13);transform:translateY(-1px)}.file-picker.supports-drag-drop.is-drag-over i{transform:translateY(-2px)}.file-picker:focus-visible{outline:3px solid rgba(8,118,236,.2);outline-offset:2px}.file-picker input{position:absolute;opacity:0;width:1px;height:1px}.btn-small{padding:8px 10px;font-size:12px;justify-content:center}.compact-check{font-size:12px}.hidden-form{display:none}@media(max-width:760px){.media-upload-grid{grid-template-columns:1fr}.media-section-head{flex-direction:column}.private-badge{white-space:normal}}


.is-hidden{display:none!important}
.media-upload-card.pending-upload{border-color:#f0c36d;box-shadow:0 0 0 2px rgba(240,195,109,.16);background:#fffdf7}
.pending-upload-note{display:flex;align-items:flex-start;gap:8px;padding:10px 11px;border:1px solid #f3d08c;background:#fff8e8;border-radius:10px;color:#7a5314;font-size:12px;line-height:1.35}.pending-upload-note i{margin-top:2px}.pending-upload-note strong{font-weight:800}
.media-upload-card .media-delete-button{margin-top:auto}
.media-file-info small .pending-state{color:#7a5314;font-weight:700}
.unsaved-upload-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px;padding:12px 14px;border:1px solid #f3d08c;background:#fff8e8;border-radius:12px;color:#7a5314;font-size:14px}.unsaved-upload-banner .btn{white-space:nowrap}
@media(max-width:760px){.unsaved-upload-banner{flex-direction:column;align-items:flex-start}}
.tree-module-select{width:100%;border:0;text-align:left;background:transparent;cursor:pointer;font:inherit;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px}.tree-module-select:hover{background:#edf6ff}.tree-module-select.selected-module{background:#e8f3ff;box-shadow:inset 3px 0 0 var(--b-blue)}.module-action-hint{display:inline-flex;align-items:center;gap:6px;color:var(--b-blue);font-size:11px;font-weight:800;white-space:nowrap}.module-action-hint i{font-size:10px}@media(max-width:760px){.module-action-hint{font-size:0}.module-action-hint i{font-size:13px}}

.course-preview-modal{position:fixed;inset:0;z-index:5000;display:none}.course-preview-modal.is-open{display:block}.course-preview-backdrop{position:absolute;inset:0;background:rgba(4,18,44,.72);backdrop-filter:blur(5px)}.course-preview-window{position:absolute;inset:0;background:#fff;border-radius:0;overflow:hidden;box-shadow:none}.course-preview-window iframe{width:100%;height:100%;border:0;background:#f4f7fb}.course-preview-modal-close{position:absolute;z-index:3;top:12px;right:12px;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#0a2b57;box-shadow:0 5px 18px rgba(0,0,0,.18);font-size:18px;cursor:pointer}.course-preview-modal-close:hover{background:#f2f6fb}.preview-modal-open{overflow:hidden}
@media(max-width:760px){.course-preview-modal-close{top:8px;right:8px}}

.course-settings-card{margin-top:22px;border:1px solid var(--b-border);border-radius:16px;background:#fff;padding:20px}.course-settings-heading{margin-bottom:16px}.settings-save-status{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#edf7f2;border:1px solid #cce8da;color:#176344;font-size:12px;font-weight:800}.course-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.course-settings-actions{display:flex;justify-content:flex-end;margin-top:18px;padding-top:16px;border-top:1px solid var(--b-border)}.input-with-suffix{display:flex;align-items:stretch}.input-with-suffix input{border-radius:10px 0 0 10px;min-width:0}.input-with-suffix span{display:flex;align-items:center;padding:0 13px;border:1px solid var(--b-border);border-left:0;border-radius:0 10px 10px 0;background:#f5f8fc;color:var(--b-muted);font-size:13px;font-weight:700}@media(max-width:760px){.course-settings-grid{grid-template-columns:1fr}.course-settings-actions{justify-content:stretch}.course-settings-actions .btn{width:100%;justify-content:center}.settings-save-status{white-space:normal}}

.course-settings-heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.course-settings-fieldset{border:0;padding:0;margin:0;min-width:0}
.course-settings-fieldset:disabled input,.course-settings-fieldset:disabled select,.course-settings-fieldset:disabled textarea{background:#f4f7fb;color:#24364f;border-color:#dce5ef;opacity:1;cursor:default}
.course-settings-fieldset:disabled .input-with-suffix span{background:#eef3f8;color:#66768c}
.course-settings-fieldset.is-editing{padding:12px;border-radius:12px;background:#f8fbff;box-shadow:0 0 0 2px rgba(8,101,217,.08)}
.course-settings-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
@media(max-width:760px){.course-settings-heading-actions{align-items:flex-start;justify-content:flex-start}.course-settings-actions{flex-direction:column-reverse}.course-settings-actions .btn{width:100%}}

/* Course structure management */
.tree-module{transition:transform .16s ease,opacity .16s ease,box-shadow .16s ease}
.tree-module.is-dragging,.sortable-lesson.is-dragging{opacity:.48}
.tree-module.drag-over{box-shadow:0 -3px 0 var(--b-blue)}
.tree-module-head{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:6px}
.tree-module-select{min-width:0;width:100%;border:0;background:transparent;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0;cursor:pointer;color:inherit}
.drag-handle,.lesson-drag-handle,.structure-edit-button{border:0;background:transparent;color:#6f829a;display:inline-grid;place-items:center;cursor:grab;border-radius:7px}
.drag-handle{width:25px;height:38px}.lesson-drag-handle{width:20px;min-width:20px;height:32px}.structure-edit-button{width:30px;height:30px;cursor:pointer}
.drag-handle:hover,.lesson-drag-handle:hover,.structure-edit-button:hover{background:#eaf3ff;color:var(--b-blue)}
.drag-handle:active,.lesson-drag-handle:active{cursor:grabbing}
.tree-lessons{min-height:42px;transition:background .15s ease,border-color .15s ease}
.tree-lessons.lesson-drop-target{background:#edf6ff;border-radius:10px;outline:2px dashed #80b7ef;outline-offset:-2px}
.tree-lesson.sortable-lesson{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:5px;padding:4px 7px}
.tree-lesson-link{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;text-decoration:none;color:inherit;padding:8px 2px}
.tree-lesson-link>span{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.structure-save-bar{position:sticky;bottom:12px;margin-top:12px;padding:10px;background:#fff8e8;border:1px solid #f2ce82;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#76500e;font-weight:700;box-shadow:0 8px 24px rgba(23,48,79,.12);z-index:5}
@media(max-width:760px){.module-action-hint{display:none}.tree-module-head{grid-template-columns:auto 1fr auto}.structure-save-bar{align-items:stretch;flex-direction:column}.structure-save-bar .btn{width:100%}}

/* Dialoghi applicativi: sostituiscono prompt/confirm nativi del browser. */
body.svm-dialog-open{overflow:hidden}
.svm-dialog-overlay{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:24px;background:rgba(10,27,51,.62);backdrop-filter:blur(3px)}
.svm-dialog-overlay[hidden]{display:none!important}
.svm-dialog{position:relative;width:min(520px,100%);border:1px solid #d7e2f0;border-radius:20px;background:#fff;padding:26px;box-shadow:0 24px 70px rgba(8,25,52,.30)}
.svm-dialog-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border:0;border-radius:50%;background:#f0f5fb;color:#193453;display:grid;place-items:center;cursor:pointer;font-size:18px}
.svm-dialog-close:hover{background:#e4edf7}
.svm-dialog-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;margin-bottom:15px;background:#eaf4ff;color:#0865d9;font-size:21px}
.svm-dialog h2{margin:0 42px 8px 0;color:#092b56;font-size:24px}
.svm-dialog-message{margin:0 0 18px;color:#60738c;line-height:1.5}
.svm-dialog-input-wrap{margin-top:16px}
.svm-dialog-label{display:block;margin-bottom:7px;color:#132f52;font-weight:800;font-size:14px}
.svm-dialog-input{width:100%;border:1px solid #b8cbe2;border-radius:11px;padding:12px 13px;font:inherit;color:#102c50;outline:none}
.svm-dialog-input:focus{border-color:#0865d9;box-shadow:0 0 0 3px rgba(8,101,217,.12)}
.svm-dialog-error{margin-top:8px;color:#b42318;font-size:13px;font-weight:700}
.svm-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
@media(max-width:560px){.svm-dialog-overlay{padding:14px}.svm-dialog{padding:22px 18px}.svm-dialog-actions{flex-direction:column-reverse}.svm-dialog-actions .btn{width:100%}}
.upload-progress-modal{max-width:520px;text-align:center}.upload-progress-modal .custom-modal-icon{margin:0 auto 12px}.upload-progress-track{height:14px;background:#e7eef7;border-radius:999px;overflow:hidden;margin:22px 0 10px}.upload-progress-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#0865d9,#13b4d4);transition:width .2s ease}.upload-progress-meta{display:flex;justify-content:space-between;gap:15px;color:var(--b-muted);font-size:13px}.upload-progress-meta strong{color:var(--b-navy);font-size:16px}.upload-progress-modal .btn{margin-top:20px}

.slide-type-selector{margin:4px 0 22px;padding:16px;border:1px solid var(--b-border);border-radius:16px;background:#f8fbff}.slide-type-intro h3{margin:4px 0 5px;color:var(--b-navy);font-size:20px}.slide-type-intro p{margin:0;color:var(--b-muted);font-size:13px;line-height:1.45}.slide-type-picker{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:0}.slide-type-option{align-items:flex-start;text-align:left;min-height:118px;padding:14px}.slide-type-option>i{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#edf5ff}.slide-type-option>span strong,.slide-type-option>span small{display:block}.slide-type-option>span strong{font-size:13px;color:var(--b-navy)}.slide-type-option>span small{font-size:11px;line-height:1.35;margin-top:4px;font-weight:500}.slide-type-option.selected>span strong{color:var(--b-blue)}.editor-content-hidden{display:none!important}.editor-section-muted{display:none}.private-media-section{transition:opacity .18s ease}.media-upload-card{transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
@media(max-width:1180px){.slide-type-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.slide-type-picker{grid-template-columns:1fr 1fr}.slide-type-option{min-height:100px}}@media(max-width:520px){.slide-type-picker{grid-template-columns:1fr}}

.slide-resources-section{margin-top:24px;border:1px solid #d6e3f2;border-radius:16px;background:#fff;padding:18px}.resource-dropzone{margin-top:16px;border:2px dashed #a9c8ea;border-radius:16px;background:#f8fbff;padding:18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;cursor:pointer;transition:.18s ease}.resource-dropzone:hover,.resource-dropzone.is-dragover{border-color:var(--b-blue);background:#eef6ff;box-shadow:0 0 0 4px rgba(8,101,217,.06)}.resource-dropzone-icon{width:48px;height:48px;border-radius:14px;background:#e4f0ff;color:var(--b-blue);display:grid;place-items:center;font-size:22px}.resource-dropzone strong,.resource-dropzone span,.resource-dropzone small{display:block}.resource-dropzone strong{color:var(--b-navy);font-size:15px}.resource-dropzone span{color:#526a84;font-size:13px;margin-top:3px}.resource-dropzone small{color:#8394a8;font-size:11px;margin-top:5px}.resource-upload-queue{margin-top:14px;border:1px solid #d7e4f2;border-radius:15px;background:#fff;padding:14px}.resource-queue-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #e4ecf5}.resource-queue-head strong,.resource-queue-head span{display:block}.resource-queue-head strong{color:var(--b-navy);font-size:14px}.resource-queue-head span{color:var(--b-muted);font-size:11px;margin-top:3px}.resource-queue-list{display:grid;gap:9px;margin-top:12px}.resource-queue-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;border:1px solid #dce7f3;border-radius:12px;padding:10px 12px;background:#fff}.resource-queue-item.is-validated{background:#f4fbf7;border-color:#bfe2ce}.resource-queue-file{display:flex;align-items:center;gap:10px;min-width:0}.resource-queue-icon{width:36px;height:36px;border-radius:10px;background:#edf5ff;color:var(--b-blue);display:grid;place-items:center;flex:0 0 auto}.resource-queue-file div{min-width:0}.resource-queue-file strong,.resource-queue-file span{display:block}.resource-queue-file strong{color:var(--b-navy);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-queue-file span{font-size:11px;color:var(--b-muted);margin-top:2px}.resource-queue-status{font-size:10px;font-weight:800;border-radius:999px;background:#fff3d9;color:#8a5c00;padding:5px 8px}.resource-queue-item.is-validated .resource-queue-status{background:#dff5e8;color:#176b45}.resource-queue-actions{display:flex;align-items:center;gap:6px}.resource-queue-done{display:inline-flex;align-items:center;gap:6px;color:#176b45;font-weight:800;font-size:12px}.resource-modal-file-reference{display:flex;align-items:center;gap:11px;border:1px solid #c9d9eb;border-radius:11px;background:#f8fbff;padding:11px 12px}.resource-modal-file-reference>i{width:34px;height:34px;border-radius:9px;background:#e8f2ff;color:var(--b-blue);display:grid;place-items:center}.resource-modal-file-reference strong,.resource-modal-file-reference small{display:block}.resource-modal-file-reference strong{color:var(--b-navy);font-size:13px}.resource-modal-file-reference small{color:var(--b-muted);font-size:11px;margin-top:3px}.resource-section-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.resource-section-head h3{margin:2px 0 4px;color:var(--b-navy);font-size:21px}.resource-section-head p{margin:0;color:var(--b-muted);font-size:13px;line-height:1.45}.resource-empty{margin-top:16px;border:1px dashed #b8cce3;border-radius:13px;padding:18px;display:flex;gap:12px;align-items:center;color:var(--b-muted);background:#f8fbff}.resource-empty i{font-size:24px;color:var(--b-blue)}.resource-empty strong,.resource-empty span{display:block}.resource-empty span{font-size:12px;margin-top:3px}.resource-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.resource-row{display:grid;grid-template-columns:30px 42px minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1px solid var(--b-border);border-radius:13px;padding:11px;background:#fff}.resource-row.dragging{opacity:.45;border-color:var(--b-blue)}.resource-drag,.icon-action{border:0;background:transparent;cursor:pointer;color:#7b8da3;width:30px;height:30px;border-radius:8px}.resource-drag:hover,.icon-action:hover{background:#edf5ff;color:var(--b-blue)}.icon-action.danger:hover{background:#fff0ee;color:#b42318}.resource-type-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:#edf5ff;color:var(--b-blue)}.resource-summary{min-width:0}.resource-summary strong,.resource-summary span,.resource-summary small{display:block}.resource-summary strong{color:var(--b-navy);font-size:14px}.resource-summary span{color:var(--b-muted);font-size:11px;margin-top:2px}.resource-summary small{color:#56677d;font-size:12px;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-badges{display:flex;gap:5px;flex-wrap:wrap}.resource-badge{font-size:10px;font-weight:800;border-radius:999px;padding:5px 7px}.resource-badge.required{background:#fff5df;color:#8b5a00}.resource-badge.hidden{background:#eef1f5;color:#5e6d80}.resource-actions{display:flex;gap:2px}.resource-order-bar{margin-top:12px;padding:10px 12px;border:1px solid #bcd6f2;background:#f0f7ff;border-radius:11px;display:flex;justify-content:space-between;align-items:center;color:var(--b-blue);font-weight:700;font-size:13px}.resource-modal-backdrop{position:fixed;inset:0;z-index:10050;background:rgba(16,31,52,.68);display:grid;place-items:center;padding:20px}.resource-modal{width:min(720px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 28px 80px rgba(0,0,0,.3);padding:22px;position:relative}.resource-modal-close{position:absolute;right:14px;top:14px;border:0;background:#eef4fb;color:var(--b-navy);width:38px;height:38px;border-radius:50%;cursor:pointer}.resource-modal-head{display:flex;gap:12px;align-items:center;margin-bottom:18px}.resource-modal-head h2{margin:2px 0 0;color:var(--b-navy)}.resource-modal-icon{width:46px;height:46px;border-radius:13px;background:#edf5ff;color:var(--b-blue);display:grid;place-items:center;font-size:20px}.resource-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.resource-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--b-border)}.resource-source-panel small{display:block;color:var(--b-muted);margin-top:5px}.is-hidden{display:none!important}@media(max-width:760px){.resource-section-head{flex-direction:column}.resource-dropzone{grid-template-columns:1fr;text-align:center}.resource-dropzone-icon{margin:auto}.resource-dropzone .btn{width:100%}.resource-queue-item{grid-template-columns:1fr}.resource-queue-actions{justify-content:flex-end}.resource-queue-status{justify-self:start}.resource-row{grid-template-columns:26px 38px minmax(0,1fr) auto}.resource-badges{grid-column:3/5}.resource-form-grid{grid-template-columns:1fr}.resource-modal-actions{flex-direction:column-reverse}.resource-modal-actions .btn{width:100%}}

/* Quiz finale */
.quiz-builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:20px;align-items:start}.quiz-questions-panel,.quiz-settings-panel{background:#fff}.quiz-question-list{display:flex;flex-direction:column;gap:10px}.quiz-question-card{display:grid;grid-template-columns:28px 38px minmax(0,1fr) 34px 34px;gap:8px;align-items:center;border:1px solid var(--b-border);border-radius:13px;padding:11px;background:#fff}.quiz-question-card.is-dragging{opacity:.45}.quiz-question-number{width:34px;height:34px;border-radius:10px;background:#eaf3ff;color:var(--b-blue);display:grid;place-items:center;font-weight:900}.quiz-question-copy{min-width:0}.quiz-question-copy strong,.quiz-question-copy small{display:block}.quiz-question-copy strong{color:var(--b-navy)}.quiz-question-copy small{color:var(--b-muted);font-size:11px;margin-top:4px}.danger-icon:hover{background:#fff0ee!important;color:var(--b-danger)!important}.app-modal{position:fixed;inset:0;z-index:11000;display:none;place-items:center;padding:20px}.app-modal.is-open{display:grid}.app-modal-backdrop{position:absolute;inset:0;background:rgba(12,29,52,.68);backdrop-filter:blur(3px)}.app-modal-window{position:relative;z-index:1;width:min(680px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:20px;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.3)}.app-modal-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.app-modal-head h2{margin:3px 0 0;color:var(--b-navy)}.app-modal-close{width:38px;height:38px;border:0;border-radius:50%;background:#edf3fa;color:var(--b-navy);cursor:pointer}.app-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--b-border)}.quiz-answer-editor{display:flex;flex-direction:column;gap:9px;margin:16px 0}.quiz-answer-row{display:grid;grid-template-columns:24px 1fr;gap:9px;align-items:center}.quiz-answer-row input[type="text"]{width:100%;border:1px solid var(--b-border);border-radius:10px;padding:11px;font:inherit}.quiz-student-shell{max-width:960px;margin:0 auto}.quiz-intro-card,.student-question-card,.quiz-result-card,.quiz-review-card{background:#fff;border:1px solid var(--b-border);border-radius:18px;padding:22px;margin-bottom:16px}.quiz-rules{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.quiz-rules span{background:#eef5ff;color:var(--b-navy);border-radius:999px;padding:8px 11px;font-size:12px;font-weight:700}.student-question-head{display:flex;justify-content:space-between;color:var(--b-blue);font-size:12px;font-weight:800;text-transform:uppercase}.student-question-card h2{font-size:21px;color:var(--b-navy);margin:12px 0 18px}.student-answer-list{display:flex;flex-direction:column;gap:9px}.student-answer-option{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--b-border);border-radius:12px;padding:13px;cursor:pointer}.student-answer-option:hover{background:#f6faff;border-color:#9fc2e8}.student-answer-option input{margin-top:3px}.student-quiz-submit{display:flex;justify-content:flex-end;position:sticky;bottom:12px;padding:14px;background:rgba(244,247,251,.92);backdrop-filter:blur(8px)}.quiz-result-card{display:flex;gap:18px;align-items:center;border-width:2px}.quiz-result-card.passed{border-color:#8ed9bd;background:#f4fcf8}.quiz-result-card.failed{border-color:#efb3ad;background:#fff8f7}.quiz-result-icon{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;font-size:28px;background:#fff}.certificate-eligibility{display:flex;gap:10px;align-items:center;margin-top:14px;padding:12px;border-radius:12px;background:#fff;border:1px solid #bce5d2}.certificate-eligibility span,.certificate-eligibility small{display:block}.certificate-eligibility small{margin-top:4px;color:var(--b-muted)}.quiz-review-card.correct{border-left:5px solid #1b9367}.quiz-review-card.wrong{border-left:5px solid #c83b31}.quiz-explanation{margin-top:10px;color:#53657b;background:#f5f8fc;padding:12px;border-radius:10px}.quiz-result-actions{display:flex;justify-content:flex-end}.quiz-countdown{position:sticky;top:88px;z-index:10;margin-bottom:14px;padding:12px 16px;background:#10254b;color:#fff;border-radius:12px;display:flex;justify-content:center;gap:10px;box-shadow:0 8px 20px rgba(16,37,75,.18)}
@media(max-width:980px){.quiz-builder-layout{grid-template-columns:1fr}.quiz-settings-panel{order:-1}}@media(max-width:620px){.quiz-question-card{grid-template-columns:24px 34px minmax(0,1fr) 32px}.quiz-question-card .danger-icon{grid-column:4}.app-modal-actions{flex-direction:column-reverse}.app-modal-actions .btn{width:100%}.quiz-result-card{align-items:flex-start}}

.course-card-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.status-pill.published{background:#e8f7ef;color:#11724d;border:1px solid #bce7d2}.status-pill.unpublished{background:#fff0ee;color:#a7281e;border:1px solid #f2c0bb}.course-visibility-note{font-size:12px;color:var(--b-muted)}.course-card-actions{align-items:center;flex-wrap:wrap}.course-card-actions form{margin:0}.publication-toggle{color:#fff;border:1px solid transparent}.publication-toggle.is-published{background:#18875d}.publication-toggle.is-published:hover{background:#126f4c}.publication-toggle.is-unpublished{background:#c43a30}.publication-toggle.is-unpublished:hover{background:#a82d25}

.course-search-panel{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:18px 0}.course-search-controls{display:flex;align-items:flex-end;gap:12px;flex:1;min-width:0}.course-search-box{position:relative;flex:1;max-width:720px}.course-search-box>i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#7890ad;pointer-events:none}.course-search-box input{width:100%;height:52px;border:1px solid #cbd7e6;border-radius:14px;background:#fff;padding:0 48px 0 46px;font:inherit;color:var(--b-navy);box-shadow:0 5px 18px rgba(16,37,75,.04)}.course-search-box input:focus{outline:0;border-color:#6aa8ec;box-shadow:0 0 0 4px rgba(8,101,217,.11)}.course-search-clear{position:absolute;right:9px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:10px;background:#edf4fc;color:var(--b-navy);cursor:pointer}.course-search-clear:hover{background:#dfeeff}.course-status-filter{display:flex;flex-direction:column;gap:6px;min-width:210px}.course-status-filter label{font-size:12px;font-weight:800;color:var(--b-navy);text-transform:uppercase;letter-spacing:.06em}.course-status-filter select{height:52px;border:1px solid #cbd7e6;border-radius:14px;background:#fff;padding:0 40px 0 14px;font:inherit;color:var(--b-navy);box-shadow:0 5px 18px rgba(16,37,75,.04)}.course-status-filter select:focus{outline:0;border-color:#6aa8ec;box-shadow:0 0 0 4px rgba(8,101,217,.11)}.course-search-summary{font-size:13px;color:var(--b-muted);font-weight:700;white-space:nowrap;padding-bottom:16px}.course-card-real.is-filtered-out{display:none}.course-search-empty{text-align:center;padding:42px 20px;background:#fff;border:1px dashed #b9c8db;border-radius:18px;color:var(--b-muted);margin-top:18px}.course-search-empty i{font-size:36px;color:#9db1c8}.course-search-empty h2{margin:12px 0 6px;color:var(--b-navy)}.course-search-empty p{margin:0}.is-hidden{display:none!important}@media(max-width:900px){.course-search-panel{align-items:stretch;flex-direction:column}.course-search-summary{padding:0 2px}.course-search-controls{width:100%}}@media(max-width:640px){.course-search-controls{align-items:stretch;flex-direction:column}.course-search-box{max-width:none}.course-status-filter{min-width:0}}
.user-filter-bar{display:grid;grid-template-columns:minmax(320px,1fr) 220px 220px;gap:12px;margin:18px 0}.user-filter-bar select{border:1px solid var(--b-border);border-radius:12px;background:#fff;padding:0 14px;min-height:48px;color:var(--b-navy);font-weight:700}.users-table-wrap{background:#fff;border:1px solid var(--b-border);border-radius:18px;overflow:auto}.users-table{width:100%;border-collapse:collapse;min-width:1050px}.users-table th,.users-table td{text-align:left;padding:15px;border-bottom:1px solid var(--b-border);vertical-align:middle}.users-table th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--b-muted);background:#f8fbff}.users-table td:first-child strong,.users-table td:first-child small,.users-table td:first-child span{display:block}.users-table td:first-child small{color:var(--b-muted);margin-top:4px}.users-table td:first-child span{font-size:12px;margin-top:5px;color:#49627f}.user-status{display:inline-flex;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800;text-transform:uppercase}.status-active{background:#e5f7ef;color:#126345}.status-invited{background:#edf5ff;color:#0865d9}.status-suspended,.status-locked{background:#fff2d9;color:#8a5b00}.status-disabled,.status-archived{background:#f3f4f6;color:#596474}.user-editor-card{display:grid;gap:18px}.user-editor-card>section{background:#fff;border:1px solid var(--b-border);border-radius:18px;padding:22px}.user-editor-card h2{margin:5px 0 18px;color:var(--b-navy)}.user-editor-card h3{margin:20px 0 10px;color:var(--b-navy);font-size:16px}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.check-grid label{display:flex;align-items:flex-start;gap:9px;padding:12px;border:1px solid var(--b-border);border-radius:12px;background:#f9fbfe}.check-grid label span,.check-grid label small{display:block}.check-grid label small{margin-top:3px;color:var(--b-muted)}.user-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.user-kpi-grid>div{background:#fff;border:1px solid var(--b-border);border-radius:14px;padding:15px}.user-kpi-grid span,.user-kpi-grid strong{display:block}.user-kpi-grid span{font-size:12px;color:var(--b-muted);margin-bottom:6px}.user-kpi-grid strong{color:var(--b-navy)}.form-actions{display:flex;justify-content:flex-end;gap:10px}@media(max-width:900px){.user-filter-bar{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr 1fr}.user-kpi-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.check-grid,.user-kpi-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%;justify-content:center}}
.selection-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}.selection-card{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--b-border);border-radius:12px;padding:12px;background:#f8fbff;cursor:pointer}.selection-card:hover{border-color:#91bce8}.selection-card input{margin-top:3px}.selection-card strong,.selection-card small{display:block}.selection-card small{margin-top:3px;color:var(--b-muted);font-size:11px}.compact-selection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.academy-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.academy-admin-card{background:#fff;border:1px solid var(--b-border);border-radius:18px;padding:20px;box-shadow:0 10px 30px rgba(15,52,91,.05)}.academy-card-head{display:flex;gap:14px;align-items:flex-start}.academy-card-head h2{margin:7px 0 0;color:var(--b-navy)}.academy-icon{--academy-color:#0865d9;width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:color-mix(in srgb,var(--academy-color) 12%,white);color:var(--academy-color);font-size:22px}.status-pill.draft{background:#edf5ff;color:#0865d9}.status-pill.archived{background:#eef0f3;color:#667085}.academy-admin-card>p{color:var(--b-muted);line-height:1.55;min-height:48px}@media(max-width:900px){.selection-card-grid,.compact-selection-grid,.academy-admin-grid{grid-template-columns:1fr}}
.login-secondary-link{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:17px;color:var(--b-blue);font-weight:800;text-decoration:none}.login-secondary-link:hover{text-decoration:underline}.password-card{text-align:left}.password-card>h1,.password-card>p{text-align:center}.password-success-icon,.password-expired-icon{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;margin:0 auto 18px;font-size:34px}.password-success-icon{background:#eaf8f2;color:var(--b-success)}.password-expired-icon{background:#fff3e8;color:#b65f00}.password-security-copy{font-size:13px;color:var(--b-muted);background:#f6f9fd;border:1px solid var(--b-border);padding:12px;border-radius:10px}.password-rules{margin-top:8px;font-size:12px;line-height:1.45;color:var(--b-muted)}

.course-card-cover{display:block;width:calc(100% + 44px);height:190px;object-fit:cover;margin:-22px -22px 18px;border-radius:18px 18px 0 0;background:#eaf1f9}.course-card-cover-placeholder{display:grid;place-items:center;align-content:center;gap:8px;color:#66809f;font-size:13px}.course-card-cover-placeholder i{font-size:34px;color:#0865d9}@media(max-width:640px){.course-card-cover{height:160px}}

/* Registrazione studente - layout professionale e responsive */
.registration-page{min-height:calc(100vh - 180px);display:grid;place-items:center;padding:20px 0 34px}.registration-layout{width:min(1120px,100%);display:grid;grid-template-columns:minmax(300px,.8fr) minmax(560px,1.2fr);gap:30px;align-items:stretch}.registration-intro{position:relative;overflow:hidden;border-radius:26px;padding:44px 40px;background:linear-gradient(145deg,#0b2856 0%,#0759bd 58%,#079bc7 100%);color:#fff;box-shadow:0 22px 60px rgba(16,37,75,.16)}.registration-intro:before,.registration-intro:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.08);pointer-events:none}.registration-intro:before{width:260px;height:260px;right:-105px;top:-95px}.registration-intro:after{width:210px;height:210px;left:-95px;bottom:-110px}.registration-kicker{position:relative;z-index:1;display:inline-flex;padding:7px 11px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.1);font-size:11px;letter-spacing:.12em;font-weight:800}.registration-intro h1{position:relative;z-index:1;font-family:'Roboto Condensed',sans-serif;font-size:42px;line-height:1.05;margin:24px 0 15px;max-width:440px}.registration-lead{position:relative;z-index:1;margin:0;color:rgba(255,255,255,.86);font-size:16px;line-height:1.6}.registration-benefits{position:relative;z-index:1;display:grid;gap:18px;margin-top:34px}.registration-benefit{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start}.registration-benefit>span{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:rgba(255,255,255,.14);font-size:18px}.registration-benefit strong,.registration-benefit small{display:block}.registration-benefit strong{font-size:15px;margin:1px 0 4px}.registration-benefit small{color:rgba(255,255,255,.73);font-size:12px;line-height:1.45}.registration-security-note{position:relative;z-index:1;display:flex;gap:11px;align-items:flex-start;margin-top:34px;padding:14px;border:1px solid rgba(255,255,255,.19);border-radius:14px;background:rgba(4,24,57,.2);font-size:12px;line-height:1.5;color:rgba(255,255,255,.82)}.registration-security-note i{margin-top:2px;color:#9ce6ff}.registration-card{width:100%;min-width:0;box-sizing:border-box;background:#fff;border:1px solid var(--b-border);border-radius:26px;padding:34px 38px;box-shadow:0 18px 54px rgba(16,37,75,.1)}.registration-card *{box-sizing:border-box}.registration-card-head{display:flex;align-items:flex-start;gap:15px;padding-bottom:22px;border-bottom:1px solid #e7edf5}.registration-card-icon{width:48px;height:48px;display:grid;place-items:center;flex:0 0 auto;border-radius:15px;background:#eaf3ff;color:var(--b-blue);font-size:19px}.registration-card-head h2{font-family:'Roboto Condensed',sans-serif;color:var(--b-navy);font-size:32px;margin:0 0 5px}.registration-card-head p{margin:0;color:var(--b-muted);font-size:13px;line-height:1.45}.registration-section{min-width:0;margin:25px 0 0;padding:0;border:0}.registration-section legend{display:flex;align-items:center;gap:9px;width:100%;margin-bottom:15px;color:var(--b-navy);font-weight:800;font-size:15px}.registration-section legend i{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:#f0f6ff;color:var(--b-blue);font-size:12px}.registration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}.registration-full{grid-column:1/-1}.registration-card .field{min-width:0;gap:7px}.registration-card .field label{font-size:13px}.registration-card .field input{display:block;width:100%;height:46px;min-width:0;padding:11px 13px;border:1px solid #c9d7e7;border-radius:12px;outline:0;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.registration-card .field input:hover{border-color:#9fb6d1}.registration-card .field input:focus{border-color:var(--b-blue);box-shadow:0 0 0 4px rgba(8,101,217,.11);background:#fbfdff}.registration-card .field input::placeholder{color:#9aa8ba}.registration-card .field-help{font-size:11px;line-height:1.35}.registration-input-icon{position:relative}.registration-input-icon i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#7f91a8;z-index:1}.registration-input-icon input{padding-left:40px!important}.registration-consents{display:grid;gap:10px;margin-top:25px;padding:17px 18px;border-radius:14px;background:#f7faff;border:1px solid #e1eaf5}.registration-card .consent-check{display:grid;grid-template-columns:19px 1fr;gap:11px;align-items:start;margin:0;color:#2e3d54;font-size:13px;font-weight:600;line-height:1.45;cursor:pointer}.registration-card .consent-check input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--b-blue)}.registration-card .consent-check a{color:var(--b-blue);font-weight:800;text-decoration:none}.registration-card .consent-check a:hover{text-decoration:underline}.registration-submit{width:100%;min-height:48px;justify-content:center;margin-top:22px;font-size:14px;box-shadow:0 9px 20px rgba(8,101,217,.2)}.registration-login-link{text-align:center;margin:17px 0 0;color:var(--b-muted);font-size:13px}.registration-login-link a{color:var(--b-blue);font-weight:800;text-decoration:none}.registration-login-link a:hover{text-decoration:underline}.registration-honeypot{position:fixed!important;left:-10000px!important;top:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.registration-success{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:center;margin-top:26px;padding:22px;border-radius:16px;background:#ecfaf4;border:1px solid #b8ead5;color:#126345}.registration-success>span{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:#d4f4e6;font-size:25px}.registration-success h3{margin:0 0 5px;font-size:18px}.registration-success p{margin:0;line-height:1.5}.registration-card .alert{margin-top:22px;margin-bottom:0}
@media(max-width:980px){.registration-layout{grid-template-columns:1fr;max-width:720px}.registration-intro{padding:34px}.registration-intro h1{font-size:36px}.registration-benefits{grid-template-columns:repeat(3,1fr);gap:12px}.registration-benefit{grid-template-columns:1fr}.registration-security-note{margin-top:24px}}
@media(max-width:640px){.registration-page{padding:0 0 18px}.registration-layout{gap:16px}.registration-intro{border-radius:18px;padding:28px 24px}.registration-intro h1{font-size:32px}.registration-lead{font-size:14px}.registration-benefits{grid-template-columns:1fr;margin-top:25px}.registration-benefit{grid-template-columns:40px 1fr}.registration-security-note{display:none}.registration-card{border-radius:18px;padding:25px 20px}.registration-card-head h2{font-size:28px}.registration-card-icon{width:43px;height:43px}.registration-grid{grid-template-columns:1fr;gap:15px}.registration-full{grid-column:auto}.registration-section{margin-top:22px}.registration-card .field input{font-size:16px}.registration-consents{padding:15px}.backend-main:has(.registration-page){width:min(100% - 24px,1440px);margin-top:16px}}

/* Visibilità password: componente condiviso in tutto il portale. */
.password-input-control{position:relative;width:100%;min-width:0}
.password-input-control>input{width:100%;padding-right:48px!important}
.password-visibility-toggle{position:absolute;top:50%;right:7px;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#647892;font-size:16px;cursor:pointer;z-index:2;transition:background .16s ease,color .16s ease,box-shadow .16s ease}
.password-visibility-toggle:hover{background:#eaf3ff;color:#0865d9}
.password-visibility-toggle:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(8,101,217,.18);background:#eaf3ff;color:#0865d9}
.password-visibility-toggle[aria-pressed="true"]{color:#0865d9;background:#f0f6ff}
.password-input-control input::-ms-reveal,.password-input-control input::-ms-clear{display:none}


/* Card corsi amministrazione: riepilogo editoriale e commerciale a colpo d'occhio. */
.course-admin-card{padding:0;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.course-card-media{position:relative;background:#eaf2fc;min-height:190px}
.course-admin-card .course-card-cover{display:block;width:100%;height:190px;object-fit:cover;border-radius:0;margin:0}
.course-admin-card .course-card-cover-placeholder{height:190px;min-height:190px;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;color:var(--b-blue);background:linear-gradient(145deg,#edf5ff,#e5eef9)}
.course-admin-card .course-card-cover-placeholder i{font-size:34px}.course-admin-card .course-card-cover-placeholder span{font-size:12px;color:#6f84a0}
.course-card-badges{position:absolute;left:14px;right:14px;bottom:13px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.access-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase;box-shadow:0 3px 12px rgba(16,37,75,.12);background:#fff}
.access-pill.free{color:#137451;background:#e9f8f1}.access-pill.paid{color:#0c62c9;background:#e9f3ff}.access-pill.assignment{color:#775215;background:#fff4db}.access-pill.included{color:#6a45a5;background:#f1eaff}
.course-card-body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.course-card-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.course-card-heading>div{min-width:0}.course-admin-card h2{margin:0 0 7px;font-size:20px}.course-admin-card p{margin:0;min-height:40px;font-size:13px;line-height:1.45}
.course-level-badge{flex:0 0 auto;border:1px solid #d5e1ef;background:#f6f9fd;color:#536a87;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}
.course-commerce-summary{margin-top:15px;padding:13px 14px;border:1px solid #dce6f2;border-radius:14px;background:#f8fbff}.course-commerce-summary.is-paid{border-color:#bcd5f2;background:#f1f7ff}
.course-price-main{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.course-price-main strong{font-size:20px;color:var(--b-navy)}.course-price-main del{font-size:12px;color:#8292a7}.sale-badge{font-size:9px;font-weight:900;border-radius:999px;padding:4px 7px;background:#fff0e7;color:#b94c13}
.course-commerce-flags{display:flex;gap:9px 14px;flex-wrap:wrap;margin-top:8px;color:#677a93;font-size:10px}.course-commerce-flags span{display:inline-flex;align-items:center;gap:5px}.course-commerce-flags .positive{color:#147451}.course-commerce-flags .warning{color:#a56813}
.course-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:14px}.course-kpi-grid>span{min-width:0;border:1px solid #e0e8f2;border-radius:11px;padding:9px 7px;text-align:center;background:#fff}.course-kpi-grid i{display:block;color:var(--b-blue);font-size:13px;margin-bottom:4px}.course-kpi-grid strong,.course-kpi-grid small{display:block}.course-kpi-grid strong{font-size:15px;color:var(--b-navy)}.course-kpi-grid small{font-size:9px;color:#7a8da5;margin-top:1px}
.course-admin-details{display:grid;gap:7px;margin-top:13px;padding-top:12px;border-top:1px solid #e2e9f2}.course-admin-details span{display:grid;grid-template-columns:18px 65px minmax(0,1fr);gap:5px;align-items:start;color:#62758e;font-size:11px;line-height:1.35}.course-admin-details i{color:#7792b1;margin-top:2px}.course-admin-details b{color:#344b68}
.course-admin-card .course-card-actions{margin-top:auto;padding-top:16px}.course-admin-card .course-card-actions .btn{justify-content:center}.course-admin-card .course-card-actions>a{flex:1}.course-admin-card .course-card-actions form{flex:1}.course-admin-card .course-card-actions form .btn{width:100%}
@media(max-width:540px){.course-kpi-grid{grid-template-columns:repeat(2,1fr)}.course-card-heading{display:block}.course-level-badge{display:inline-flex;margin-top:9px}.course-admin-card .course-card-actions{flex-direction:column}.course-admin-card .course-card-actions>a,.course-admin-card .course-card-actions form{width:100%}}
/* v1.21.0 — gestione Academy unificata */
.academy-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:20px}.academy-summary-grid article{background:#fff;border:1px solid var(--b-border);border-radius:15px;padding:16px;display:grid;grid-template-columns:42px 1fr;column-gap:11px;align-items:center}.academy-summary-grid i{grid-row:1/3;width:42px;height:42px;border-radius:12px;background:#eaf3ff;color:var(--b-blue);display:grid;place-items:center}.academy-summary-grid strong{font-size:23px;color:var(--b-navy)}.academy-summary-grid span{font-size:10px;color:var(--b-muted)}.academy-unified-form section+section{margin-top:30px;padding-top:25px;border-top:1px solid var(--b-border)}.section-title{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.section-title h2{margin:0;color:var(--b-navy)}.section-title p{margin:5px 0 0;color:var(--b-muted);font-size:12px}.section-title>span{background:#eaf3ff;color:var(--b-blue);padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800}.academy-course-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:430px;overflow:auto;padding:4px}.academy-course-selector label{display:grid;grid-template-columns:20px 1fr;gap:10px;padding:12px;border:1px solid var(--b-border);border-radius:12px;background:#f9fbfe;cursor:pointer}.academy-course-selector label:has(input:checked){border-color:#78abe3;background:#eef6ff}.academy-course-selector input{margin-top:3px}.academy-course-selector strong,.academy-course-selector small{display:block}.academy-course-selector small{margin-top:4px;color:var(--b-muted);font-size:10px}.sticky-form-actions{position:sticky;bottom:12px;margin-top:25px;padding:13px;border:1px solid var(--b-border);border-radius:14px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);display:flex;justify-content:flex-end;z-index:5}.academy-linked-courses{margin-top:22px;background:#fff;border:1px solid var(--b-border);border-radius:18px;padding:22px}.academy-linked-list{display:grid;gap:10px}.academy-linked-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:15px;border:1px solid var(--b-border);border-radius:13px}.academy-linked-list h3{margin:7px 0 4px;color:var(--b-navy)}.academy-linked-list p{margin:0;color:var(--b-muted);font-size:11px}.academy-linked-metrics{display:flex;align-items:center;gap:15px}.academy-linked-metrics>strong{color:var(--b-blue)}.academy-linked-metrics>span{font-size:11px;color:var(--b-muted)}@media(max-width:1100px){.academy-summary-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.academy-summary-grid,.academy-course-selector{grid-template-columns:1fr}.academy-linked-list article{grid-template-columns:1fr}.academy-linked-metrics{flex-wrap:wrap}.page-actions{flex-wrap:wrap}}

/* v1.22.1 — modale manutenzione sempre interattiva sopra il pannello admin. */
#maintenance-confirm-modal{z-index:2147483000!important;pointer-events:auto!important;isolation:isolate}
#maintenance-confirm-modal[hidden]{display:none!important}
#maintenance-confirm-modal .svm-dialog{position:relative;z-index:2;pointer-events:auto!important}
#maintenance-confirm-modal .svm-dialog *{pointer-events:auto}
#maintenance-confirm-modal .svm-dialog-actions .btn{position:relative;z-index:3;cursor:pointer}

/* v1.28.0 - branding, firme digitali e footer legale */
.portal-legal-footer{position:relative;margin-top:34px;padding:28px clamp(22px,3vw,38px);border-top:1px solid #d8e5f3;background:linear-gradient(135deg,#fff 0%,#f8fbff 55%,#f1f7ff 100%);color:#637891;font-size:12px;line-height:1.55;display:grid;grid-template-columns:minmax(250px,1.25fr) minmax(270px,.9fr) minmax(250px,1fr);gap:clamp(24px,4vw,54px);align-items:center;overflow:hidden}.portal-legal-footer:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,#0865d9,#10afce 58%,transparent)}.portal-footer-brand,.portal-footer-services{display:grid;gap:9px;min-width:0}.portal-footer-brand-heading{display:flex;align-items:center;gap:12px}.portal-footer-brand-heading>div{display:grid;gap:1px}.portal-footer-brand-heading strong{color:#0a315f;font-size:14px;line-height:1.25}.portal-footer-brand-heading small{color:#7990a8;font-size:10px}.portal-footer-brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#0865d9,#08aeca);box-shadow:0 8px 20px rgba(8,101,217,.2)}.portal-footer-address{color:#526a84}.portal-footer-company-data{display:flex;gap:6px 14px;flex-wrap:wrap;color:#71869d;font-size:10px}.portal-footer-company-data span{position:relative}.portal-footer-company-data span+span:before{content:"•";position:absolute;left:-9px;color:#a7b7c7}.portal-footer-powered{position:relative;padding:18px 20px;border:1px solid #d5e4f3;border-radius:16px;background:rgba(255,255,255,.82);box-shadow:0 12px 34px rgba(22,68,112,.08);display:grid;gap:5px}.portal-footer-powered-label{text-transform:uppercase;letter-spacing:.11em;font-size:9px;font-weight:800;color:#7790aa}.portal-footer-powered-row{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;color:#617991}.portal-footer-powered-row a{display:inline-flex;align-items:center;gap:7px;color:#075fca;font-size:14px;font-weight:800;text-decoration:none}.portal-footer-powered-row a i{font-size:10px;transition:transform .18s ease}.portal-footer-powered-row a:hover,.portal-footer-powered-row a:focus-visible{color:#064fa8;text-decoration:underline;text-underline-offset:3px}.portal-footer-powered-row a:hover i{transform:translate(2px,-2px)}.portal-footer-powered small{color:#8093a8;font-size:10px}.portal-footer-services{justify-items:end;text-align:right}.portal-footer-links{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.portal-footer-links a{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #d7e4f2;border-radius:10px;background:#fff;color:#315270;text-decoration:none;font-weight:700;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.portal-footer-links a:hover,.portal-footer-links a:focus-visible{border-color:#8db9e8;color:#075fca;transform:translateY(-1px);box-shadow:0 6px 16px rgba(22,68,112,.08)}.portal-footer-contacts{display:flex;gap:5px 13px;justify-content:flex-end;flex-wrap:wrap;font-size:10px}.portal-footer-contacts a,.portal-footer-contacts span{display:inline-flex;align-items:center;gap:6px;color:#637b94;text-decoration:none}.portal-footer-contacts a:hover{color:#075fca}.portal-footer-version{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8f2ff;color:#1761af;font-size:9px;font-weight:800;letter-spacing:.04em}.portal-legal-footer a:focus-visible{outline:3px solid rgba(8,101,217,.25);outline-offset:2px}.portal-logo-settings{display:grid;grid-template-columns:minmax(230px,360px) minmax(0,1fr);gap:24px;align-items:center}.portal-logo-preview{min-height:130px;border:1px dashed #b9cce0;border-radius:14px;background:#f8fbff;display:grid;place-items:center;padding:20px}.portal-logo-preview img{max-width:100%;max-height:95px;object-fit:contain}.signature-draw-block{display:grid;gap:8px;margin-top:15px}.signature-draw-block>label{font-size:12px;font-weight:800;color:#092b59}.signature-pad{display:block;width:100%;height:145px;border:1px solid #b9cce0;border-radius:12px;background:#fff;touch-action:none;cursor:crosshair}.signature-pad-actions{display:flex;gap:8px;flex-wrap:wrap}.signature-pad-actions .btn{padding:9px 12px}.signature-draw-block small{color:#71839b}.signature-draw-block small.is-ready{color:#14704f;font-weight:800}.legal-public-page{max-width:1000px;margin:30px auto}.legal-public-page .form-card{max-width:none}.legal-public-page h1{color:#10254b}.legal-public-content{margin-top:24px;white-space:normal;line-height:1.7;color:#344860}@media(max-width:980px){.portal-legal-footer{grid-template-columns:1fr 1fr}.portal-footer-services{grid-column:1/-1;justify-items:start;text-align:left}.portal-footer-links,.portal-footer-contacts{justify-content:flex-start}}@media(max-width:680px){.portal-legal-footer{grid-template-columns:1fr;padding:24px 18px;gap:20px}.portal-footer-powered{padding:16px}.portal-footer-services{grid-column:auto;justify-items:start;text-align:left}.portal-footer-links,.portal-footer-contacts{justify-content:flex-start}.portal-footer-company-data{display:grid;gap:2px}.portal-footer-company-data span+span:before{display:none}.portal-logo-settings{grid-template-columns:1fr}}

/* v1.31.0 - flusso editoriale corsi */
.course-workflow-badge{display:inline-flex;align-items:center;gap:.5rem;margin:0 0 .8rem;padding:.5rem .75rem;border-radius:999px;background:#eef4ff;color:#124b91;font-size:.82rem;font-weight:800}.course-workflow-badge.status-changes_requested,.workflow-current.status-changes_requested{background:#fff2e6;color:#9a4b00}.course-workflow-badge.status-in_review,.workflow-current.status-in_review{background:#fff8d9;color:#7c5a00}.course-workflow-badge.status-reviewed,.workflow-current.status-reviewed{background:#efeaff;color:#5530a5}.course-workflow-badge.status-approved,.workflow-current.status-approved{background:#e6f8ef;color:#087443}.course-workflow-badge.status-published,.workflow-current.status-published{background:#e6f2ff;color:#075fc7}.course-workflow-badge.status-archived,.workflow-current.status-archived{background:#eef0f3;color:#505b69}.workflow-grid{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(420px,1.15fr);gap:1.25rem;align-items:start}.workflow-current{display:flex;align-items:center;gap:1rem;padding:1rem 1.1rem;border-radius:16px;background:#edf3fb;color:#123d72}.workflow-current>i{font-size:1.5rem}.workflow-current small{display:block;font-size:.7rem;letter-spacing:.12em;font-weight:800}.workflow-current strong{display:block;margin-top:.15rem;font-size:1.15rem}.workflow-course-data{margin:1rem 0;display:grid;gap:.65rem}.workflow-course-data>div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid #e5edf6}.workflow-course-data dt{color:#62758d}.workflow-course-data dd{margin:0;text-align:right;font-weight:700}.workflow-action-form{margin-top:1.2rem;padding-top:1rem;border-top:1px solid #dfe8f2}.workflow-timeline{display:grid;gap:0}.workflow-timeline article{position:relative;display:grid;grid-template-columns:20px 1fr;gap:.8rem;padding:0 0 1.15rem}.workflow-timeline article:before{content:"";position:absolute;left:7px;top:14px;bottom:-3px;width:2px;background:#dce7f4}.workflow-timeline article:last-child:before{display:none}.timeline-dot{position:relative;z-index:1;width:16px;height:16px;margin-top:3px;border:4px solid #dbeaff;background:#0969da;border-radius:50%}.timeline-head{display:flex;justify-content:space-between;gap:1rem}.timeline-head time{font-size:.78rem;color:#708198;white-space:nowrap}.workflow-timeline p{margin:.25rem 0;color:#62758d;font-size:.86rem}.workflow-timeline blockquote{margin:.55rem 0 0;padding:.7rem .8rem;border-left:3px solid #0d6dde;background:#f5f9ff;border-radius:0 10px 10px 0;color:#29445f}.workflow-page-head .eyebrow{font-size:.73rem;font-weight:800;letter-spacing:.12em;color:#0865d9}@media(max-width:900px){.workflow-grid{grid-template-columns:1fr}.timeline-head{align-items:flex-start;flex-direction:column;gap:.2rem}}
/* v1.32.0 - selettore area per utenti multi-ruolo */
.role-switcher{display:inline-flex;align-items:center;margin:0}.role-switcher label{display:flex;align-items:center;gap:.45rem;font-size:.78rem;color:#52647c}.role-switcher select{border:1px solid #d6e1ef;border-radius:9px;background:#fff;padding:.42rem .65rem;color:#0b2d57;font-weight:700;max-width:190px}.role-help{display:flex;flex-direction:column;gap:.2rem;margin:.25rem 0 .75rem}.role-help span{color:#667892;font-size:.86rem}.primary-role-field{margin-top:1rem}
@media(max-width:900px){.role-switcher label{font-size:0}.role-switcher select{max-width:145px;font-size:.78rem}}

/* Backup: la modale di eliminazione deve restare realmente nascosta finché non viene richiesta. */
#backup-delete-modal[hidden]{display:none!important}

/* v1.36.3 - le modali backup restano nascoste finche richieste. */
#backup-delete-modal[hidden],#backup-restore-modal[hidden]{display:none!important}

/* Registrazione commento multimediale */
.narration-record-button{margin-top:10px;justify-content:center}.recording-help{display:block;margin-top:7px;color:#667892;line-height:1.35}.narration-modal-open{overflow:hidden}.narration-modal-open .lesson-floating-save{display:none!important}.canvas-slide-editor-open .lesson-floating-actions{display:none!important}.narration-modal-backdrop{position:fixed;inset:0;z-index:1600;background:rgba(9,29,58,.72);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:24px}.narration-modal-backdrop.is-hidden{display:none}.narration-modal{position:relative;width:min(1240px,96vw);height:min(820px,92vh);background:#fff;border-radius:20px;box-shadow:0 28px 80px rgba(0,25,67,.34);display:flex;flex-direction:column;overflow:hidden}.narration-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 26px;border-bottom:1px solid #dfe8f5;background:linear-gradient(135deg,#f7fbff,#eef5ff)}.narration-modal-head h2{margin:3px 0 4px;color:#082f63}.narration-modal-head p{margin:0;color:#61728b}.narration-close{width:42px;height:42px;border:1px solid #ccd9ea;border-radius:12px;background:#fff;color:#153c6d;font-size:18px;cursor:pointer}.narration-workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;min-height:0;flex:1}.narration-content-column{display:flex;flex-direction:column;min-width:0;background:#eaf1f9}.narration-content-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#fff;border-bottom:1px solid #dce6f2}.narration-source-tabs{display:flex;gap:8px;flex-wrap:wrap}.narration-source-tabs button{border:1px solid #cbd9eb;background:#fff;color:#27496f;border-radius:10px;padding:8px 12px;font-weight:700;cursor:pointer}.narration-source-tabs button.active{background:#0876ec;color:#fff;border-color:#0876ec}.narration-source-status{font-size:12px;color:#70819a}.narration-stage{position:relative;flex:1;min-height:420px;padding:18px;display:flex;align-items:center;justify-content:center;overflow:auto}.narration-stage img,.narration-stage video{display:block;max-width:100%;max-height:100%;object-fit:contain;border-radius:10px;box-shadow:0 8px 26px rgba(8,47,99,.18);background:#000}.narration-stage iframe{width:100%;height:100%;min-height:520px;border:0;border-radius:10px;background:#fff;box-shadow:0 8px 26px rgba(8,47,99,.16)}.narration-empty-state{text-align:center;max-width:430px;color:#63758e}.narration-empty-state i{display:block;font-size:52px;color:#7aa8db;margin-bottom:14px}.narration-empty-state strong,.narration-empty-state span{display:block}.narration-empty-state strong{font-size:18px;color:#123e70;margin-bottom:7px}.narration-recorder-panel{padding:22px;display:flex;flex-direction:column;gap:16px;border-left:1px solid #dfe8f5;background:#fff;overflow:auto}.microphone-state{display:flex;gap:12px;align-items:center;padding:14px;border-radius:14px;background:#f3f7fc}.microphone-state .microphone-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#e3efff;color:#0876ec;font-size:20px}.microphone-state strong,.microphone-state small{display:block}.microphone-state small{margin-top:3px;color:#6b7d95;line-height:1.3}.microphone-state[data-mode="recording"] .microphone-icon{background:#ffe8e8;color:#d32929;animation:narrationPulse 1.25s infinite}.microphone-state[data-mode="paused"] .microphone-icon{background:#fff1cf;color:#a86c00}.microphone-state[data-mode="complete"] .microphone-icon{background:#e5f7ec;color:#16834b}.microphone-state[data-mode="error"] .microphone-icon{background:#ffe7e7;color:#b92020}@keyframes narrationPulse{50%{box-shadow:0 0 0 9px rgba(211,41,41,.10)}}.audio-level{height:9px;background:#e9eff7;border-radius:999px;overflow:hidden}.audio-level span{display:block;height:100%;width:0;background:linear-gradient(90deg,#18a8c2,#0876ec);transition:width .08s linear}.recording-clock{text-align:center;font-size:42px;font-weight:800;letter-spacing:2px;color:#082f63;font-variant-numeric:tabular-nums}.recording-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.recording-actions .full-btn{grid-column:1/-1}.recording-review{border-top:1px solid #e0e8f2;padding-top:15px}.recording-review.is-hidden{display:none}.recording-review audio{width:100%;margin:9px 0 12px}.recording-review-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.recording-warning{padding:12px 13px;border-radius:10px;background:#fff2d7;color:#855b00;font-size:13px;line-height:1.4}.recording-warning[data-kind="error"]{background:#ffe7e7;color:#9d2020}.recording-warning.is-hidden{display:none}.recording-privacy{margin:auto 0 0;padding:12px;background:#eef6ff;border-radius:11px;color:#49647f;font-size:12px;line-height:1.45}.recording-privacy i{color:#0876ec;margin-right:5px}.narration-confirm{position:absolute;inset:auto 18px 18px 18px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;border-radius:14px;background:#fff8e9;border:1px solid #efc870;box-shadow:0 12px 32px rgba(39,42,50,.18)}.narration-confirm>div{display:flex;align-items:center;gap:10px}.narration-confirm i{color:#c77b00}.narration-confirm.is-hidden{display:none}
@media(max-width:900px){.narration-modal-backdrop{padding:8px}.narration-modal{width:100%;height:96vh;border-radius:14px}.narration-workspace{grid-template-columns:1fr;overflow:auto}.narration-content-column{min-height:48vh}.narration-stage{min-height:330px}.narration-stage iframe{min-height:420px}.narration-recorder-panel{border-left:0;border-top:1px solid #dfe8f5}.narration-confirm{flex-direction:column;align-items:stretch}.narration-confirm>div:last-child{justify-content:flex-end}}


/* Selezione contestuale del ruolo */
.role-choice-shell{min-height:calc(100vh - 170px);display:grid;place-items:center;padding:42px 20px;background:linear-gradient(135deg,#f5f9ff,#edf5ff)}
.role-choice-card{width:min(920px,100%);background:#fff;border:1px solid #dbe7f5;border-radius:24px;padding:32px;box-shadow:0 24px 70px rgba(10,50,100,.12)}
.role-choice-heading{display:flex;gap:18px;align-items:center;margin-bottom:24px}.role-choice-heading h1{margin:0 0 6px;color:#082d5a;font-size:2rem}.role-choice-heading p{margin:0;color:#60738e}.role-choice-icon{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:#eaf3ff;color:#0865d9;font-size:1.35rem}
.role-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.role-choice-option{width:100%;border:1px solid #d8e4f2;background:#fff;border-radius:16px;padding:18px;text-align:left;display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;cursor:pointer;color:#0b2d57;transition:.18s ease}.role-choice-option:hover{border-color:#0865d9;transform:translateY(-2px);box-shadow:0 10px 24px rgba(8,101,217,.11)}.role-choice-option-icon{width:48px;height:48px;border-radius:13px;background:#edf5ff;color:#0865d9;display:grid;place-items:center;font-size:1.15rem}.role-choice-option strong{display:block;font-size:1rem;margin-bottom:5px}.role-choice-option small{display:block;color:#667892;line-height:1.4}.role-choice-arrow{color:#0865d9}.role-choice-remember{display:flex;align-items:center;gap:9px;margin:20px 2px 0;font-weight:650;color:#334b69}.role-choice-note{margin:18px 0 0;padding-top:18px;border-top:1px solid #e5edf6;color:#647791;font-size:.9rem}.role-choice-note i{color:#0865d9;margin-right:6px}
@media(max-width:720px){.role-choice-card{padding:22px}.role-choice-grid{grid-template-columns:1fr}.role-choice-heading{align-items:flex-start}.role-choice-heading h1{font-size:1.55rem}.role-choice-option{grid-template-columns:44px 1fr auto;padding:15px}}

/* Lesson editor hierarchy and advanced fields */
.primary-slide-title{margin:0 0 16px;padding:18px 20px;border:1px solid #cfe0f4;border-radius:14px;background:#f8fbff}.primary-slide-title .field{margin:0}.primary-slide-title label{font-size:14px;color:#082c59}.primary-slide-title input{font-size:18px;font-weight:700}.required-mark{color:#c7332b}.advanced-slide-settings{margin-top:18px;border:1px solid #d7e3f2;border-radius:14px;background:#fff;overflow:hidden}.advanced-slide-settings summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;cursor:pointer;background:#f8fbff}.advanced-slide-settings summary::-webkit-details-marker{display:none}.advanced-slide-settings summary>span{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:10px;align-items:center}.advanced-slide-settings summary>span>i{grid-row:1/3;width:34px;height:34px;border-radius:9px;background:#e7f1fd;color:#0865d9;display:grid;place-items:center}.advanced-slide-settings summary strong{color:#072b58}.advanced-slide-settings summary small{color:#667a94;margin-top:2px}.advanced-chevron{color:#6f86a0;transition:transform .2s ease}.advanced-slide-settings[open] .advanced-chevron{transform:rotate(180deg)}.advanced-slide-fields{padding:18px}.duration-input-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.duration-input-wrap input{border-radius:10px 0 0 10px}.duration-input-wrap span{height:100%;display:flex;align-items:center;padding:0 14px;border:1px solid #cbd9e8;border-left:0;border-radius:0 10px 10px 0;background:#f3f7fc;color:#60758e;font-size:13px;font-weight:700}@media(max-width:720px){.primary-slide-title{padding:15px}.advanced-slide-settings summary{padding:14px}.advanced-slide-settings summary small{font-size:11px}.advanced-slide-fields{padding:14px}}

.course-title-heading{display:flex;align-items:center;gap:10px}.course-title-edit{width:38px;height:38px;border:1px solid var(--b-border);border-radius:11px;background:#fff;color:var(--b-blue);display:grid;place-items:center;cursor:pointer;flex:0 0 auto}.course-title-edit:hover{background:#eef6ff;border-color:#9fc3ec}.alert[data-auto-dismiss]{position:relative;padding-right:52px;transition:opacity .22s ease,transform .22s ease}.alert .notice-close{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:inherit;display:grid;place-items:center;cursor:pointer}.alert .notice-close:hover{background:rgba(255,255,255,.55)}.alert.is-closing{opacity:0;transform:translateY(-8px)}

.lesson-test-hint{display:flex;align-items:flex-start;gap:12px;margin:-4px 0 18px;padding:13px 15px;border:1px solid #cfe0f4;border-radius:13px;background:#f7fbff;color:#38516f}.lesson-test-hint>i{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#e7f1ff;color:#0865d9;flex:0 0 auto}.lesson-test-hint strong,.lesson-test-hint span{display:block}.lesson-test-hint strong{color:#072b58;margin-bottom:2px}.lesson-test-window{padding-top:0}.lesson-test-modal-label{position:absolute;z-index:4;top:12px;left:16px;display:flex;align-items:center;gap:9px;padding:8px 12px;border-radius:11px;background:rgba(255,255,255,.78);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);border:1px solid rgba(207,224,244,.8);box-shadow:0 8px 24px rgba(0,0,0,.12);color:#072b58;pointer-events:auto;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none;max-width:min(420px,calc(100% - 78px))}.lesson-test-modal-label.is-dragging{cursor:grabbing;box-shadow:0 14px 28px rgba(0,0,0,.16)}.lesson-test-modal-label>i{color:#0865d9;flex:0 0 auto}.lesson-test-modal-label strong,.lesson-test-modal-label small{display:block}.lesson-test-modal-label small{font-size:11px;color:#667a94;margin-top:2px}.lesson-test-modal-label-text{min-width:0}.lesson-test-modal-label strong,.lesson-test-modal-label small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:760px){.lesson-test-hint{margin-left:0;margin-right:0}.lesson-test-modal-label{left:8px;top:8px;max-width:calc(100% - 70px)}.lesson-test-modal-label small{display:none}}

/* Presentazione narrata */
.presentation-manager{margin-top:16px;border:1px solid #cfe0f4;border-radius:14px;background:#fff;padding:15px}.presentation-manager-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.presentation-manager-head h4{margin:3px 0 5px;color:var(--b-navy);font-size:18px}.presentation-manager-head p{margin:0;color:var(--b-muted);font-size:12px;line-height:1.45}.presentation-count{background:#eaf4ff;color:var(--b-blue);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800;white-space:nowrap}.presentation-dropzone{margin-top:13px;border:1px dashed #89b4e3;border-radius:12px;background:#f7fbff;padding:15px;display:flex;align-items:center;gap:12px;cursor:pointer;color:#244d7a}.presentation-dropzone>i{width:42px;height:42px;border-radius:12px;background:#e5f1ff;color:var(--b-blue);display:grid;place-items:center;font-size:18px}.presentation-dropzone span{display:flex;flex-direction:column;gap:3px}.presentation-dropzone small{color:var(--b-muted)}.presentation-dropzone input{position:absolute;opacity:0;width:1px;height:1px}.presentation-editor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:11px;margin-top:14px}.presentation-editor-item{position:relative;border:1px solid #d9e6f4;border-radius:12px;padding:9px;background:#fff;display:flex;flex-direction:column;gap:8px}.presentation-editor-item>span{position:absolute;top:15px;left:15px;width:26px;height:26px;border-radius:8px;background:#0865d9;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800;z-index:1}.presentation-editor-item img{width:100%;height:100px;object-fit:cover;border-radius:9px;background:#eef3f8}.presentation-editor-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--b-muted)}.presentation-editor-item form,.presentation-editor-item button{width:100%}.presentation-empty{margin-top:12px;padding:13px;border:1px dashed #d5e2f1;border-radius:11px;color:#73859c;background:#fafcff;font-size:12px}.narration-presentation{width:100%;height:100%;display:flex;flex-direction:column;gap:14px;min-height:0}.narration-presentation-main{flex:1;min-height:0;max-width:100%;max-height:calc(100% - 112px)!important;object-fit:contain}.narration-presentation-thumbs{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 8px}.narration-presentation-thumbs button{position:relative;flex:0 0 112px;height:78px;padding:3px;border:2px solid transparent;border-radius:10px;background:#fff;cursor:pointer;overflow:hidden}.narration-presentation-thumbs button.active{border-color:#0876ec;box-shadow:0 0 0 3px rgba(8,118,236,.10)}.narration-presentation-thumbs img{width:100%;height:100%;object-fit:cover;border-radius:7px;box-shadow:none!important}.narration-presentation-thumbs span{position:absolute;right:6px;bottom:6px;width:22px;height:22px;border-radius:7px;background:rgba(5,39,78,.85);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:800}.layout-picker.slide-type-picker{grid-template-columns:repeat(6,minmax(0,1fr))}@media(max-width:1100px){.layout-picker.slide-type-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.presentation-manager-head{flex-direction:column}.presentation-count{white-space:normal}.presentation-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-picker.slide-type-picker{grid-template-columns:1fr 1fr}}

/* Presentazione narrata: selezione multipla e drag & drop */
.presentation-dropzone{position:relative;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;outline:none}
.presentation-dropzone:hover,.presentation-dropzone:focus-visible{background:#eef7ff;border-color:#4a91df;box-shadow:0 0 0 3px rgba(8,118,236,.09)}
.presentation-dropzone.is-dragover{background:#e6f3ff;border-color:#0876ec;box-shadow:0 0 0 4px rgba(8,118,236,.14)}
.presentation-dropzone.is-dragover::after{content:'Rilascia qui le immagini';position:absolute;inset:7px;border:2px solid #0876ec;border-radius:9px;display:grid;place-items:center;background:rgba(239,247,255,.94);color:#0865d9;font-weight:900;z-index:4;pointer-events:none}
.presentation-dropzone.has-files{border-style:solid;background:#f2f9ff}
.presentation-browse-button{margin-left:auto;white-space:nowrap}
.presentation-pending{margin-top:14px;border:1px solid #bfd9f5;background:#f7fbff;border-radius:13px;padding:13px}
.presentation-pending.is-hidden{display:none}
.presentation-pending-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}
.presentation-pending-head strong,.presentation-pending-head span{display:block}
.presentation-pending-head strong{color:#0b3767}
.presentation-pending-head span{font-size:12px;color:#657991;margin-top:2px}
.presentation-pending-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.presentation-pending-item{position:relative;border:1px solid #d5e4f3;background:#fff;border-radius:11px;padding:8px;display:flex;flex-direction:column;gap:7px;min-width:0}
.presentation-pending-item img{width:100%;height:94px;object-fit:cover;border-radius:8px;background:#edf3f8}
.presentation-pending-item>div{min-width:0}
.presentation-pending-item strong,.presentation-pending-item small{display:block}
.presentation-pending-item strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#153d69}
.presentation-pending-item small{font-size:11px;color:#708099;margin-top:2px}
.presentation-pending-item>button{position:absolute;top:13px;right:13px;width:28px;height:28px;border:0;border-radius:8px;background:rgba(117,25,25,.88);color:#fff;cursor:pointer;display:grid;place-items:center}
.presentation-pending-number{position:absolute;top:13px;left:13px;width:26px;height:26px;border-radius:8px;background:rgba(8,101,217,.92);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900;z-index:1}
.presentation-pending>p{margin:11px 0 0;padding:9px 11px;border-radius:9px;background:#eaf4ff;color:#345b84;font-size:12px}
.presentation-pending>p i{margin-right:6px;color:#0865d9}
@media(max-width:760px){.presentation-dropzone{align-items:flex-start;flex-wrap:wrap}.presentation-browse-button{margin-left:54px}.presentation-pending-head{align-items:flex-start;flex-direction:column}.presentation-pending-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.presentation-validation-message{margin-top:12px;padding:12px 14px;border:1px solid #efc36d;background:#fff8e8;border-radius:12px;color:#805700;font-size:12px;line-height:1.45}
.presentation-validation-message.is-hidden{display:none}
.presentation-validation-message>div{display:flex;gap:10px;align-items:flex-start}
.presentation-validation-message>div>i{margin-top:2px;color:#c77b00}
.presentation-validation-message strong,.presentation-validation-message small{display:block}
.presentation-validation-message small{margin-top:2px;color:#846d3a}
.presentation-validation-message ul{margin:9px 0 0 27px;padding:0}
.presentation-validation-message li+li{margin-top:4px}

/* v1.44.23 - scelta immagine sostitutiva nella presentazione narrata */
.presentation-delete-open{overflow:hidden}.presentation-delete-modal{position:fixed;inset:0;z-index:1900;display:grid;place-items:center;padding:22px}.presentation-delete-modal.is-hidden{display:none}.presentation-delete-backdrop{position:absolute;inset:0;background:rgba(7,28,58,.72);backdrop-filter:blur(5px)}.presentation-delete-dialog{position:relative;z-index:1;width:min(760px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:20px;padding:28px;box-shadow:0 28px 80px rgba(0,25,67,.36)}.presentation-delete-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:1px solid #d3dfed;border-radius:12px;background:#fff;color:#153c6d;cursor:pointer}.presentation-delete-icon{width:52px;height:52px;border-radius:15px;background:#eef5ff;color:#0876ec;display:grid;place-items:center;font-size:22px;margin-bottom:12px}.presentation-delete-dialog h2{margin:5px 48px 8px 0;color:#082f63}.presentation-delete-dialog>p{margin:0;color:#60738e;line-height:1.5}.presentation-delete-warning{display:flex;gap:10px;align-items:flex-start;margin:18px 0;padding:13px 14px;border:1px solid #f0cc7b;border-radius:12px;background:#fff8e8;color:#76530d;font-size:13px;line-height:1.45}.presentation-delete-warning i{margin-top:2px}.presentation-delete-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.presentation-delete-choice{border:1px solid #d4e1ef;border-radius:14px;background:#fff;padding:10px;display:grid;grid-template-columns:78px minmax(0,1fr) 24px;gap:11px;align-items:center;text-align:left;cursor:pointer;color:#183b67}.presentation-delete-choice:hover{border-color:#8db8e8;background:#f8fbff}.presentation-delete-choice.selected{border-color:#0876ec;background:#edf6ff;box-shadow:0 0 0 2px rgba(8,118,236,.1)}.presentation-delete-thumb{position:relative;width:78px;height:58px;border-radius:9px;overflow:hidden;background:#edf2f8}.presentation-delete-thumb img{width:100%;height:100%;object-fit:contain}.presentation-delete-thumb b{position:absolute;top:4px;left:4px;width:23px;height:23px;border-radius:7px;background:#0876ec;color:#fff;display:grid;place-items:center;font-size:11px}.presentation-delete-choice strong,.presentation-delete-choice small{display:block}.presentation-delete-choice strong{font-size:13px}.presentation-delete-choice small{margin-top:4px;color:#71839a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presentation-delete-choice>i{color:#a9b8ca;font-size:19px}.presentation-delete-choice.selected>i{color:#0876ec;font-weight:900}.presentation-delete-empty{display:flex;gap:10px;padding:14px;border:1px solid #d8e4f1;border-radius:12px;background:#f7faff;color:#49647f;line-height:1.45}.presentation-delete-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid #e2eaf3}@media(max-width:680px){.presentation-delete-modal{padding:8px}.presentation-delete-dialog{padding:22px 16px}.presentation-delete-options{grid-template-columns:1fr}.presentation-delete-actions{flex-direction:column-reverse}.presentation-delete-actions .btn{width:100%;justify-content:center}}

/* v1.44.24 — Lavagna narrata sincronizzata */
.narration-whiteboard-tools{display:flex;flex-direction:column;gap:8px;padding:9px;border:1px solid #cfe0f4;border-radius:12px;background:#fff}
.whiteboard-toolset,.whiteboard-options{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.whiteboard-toolset button,.whiteboard-options button{border:1px solid #cbdced;background:#f8fbff;color:#244d7a;border-radius:9px;padding:7px 9px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.whiteboard-toolset button.active{background:#0865d9;border-color:#0865d9;color:#fff}
.whiteboard-options{padding-top:7px;border-top:1px solid #e4edf6}
.whiteboard-options label{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;color:#526983}
.whiteboard-options input[type=color]{width:34px;height:30px;border:0;padding:0;background:transparent}
.whiteboard-options input[type=range]{width:96px}
.whiteboard-options input[type=text]{min-width:180px;flex:1;border:1px solid #cbdced;border-radius:8px;padding:8px 10px}
.narration-presentation-visual{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:10px;background:#111}
.narration-presentation-visual .narration-presentation-main{width:100%;height:100%;max-height:none!important;object-fit:contain;box-shadow:none}
.narration-whiteboard-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair;z-index:2}
.narration-live-pointer{position:absolute;width:18px;height:18px;border-radius:50%;background:var(--pointer-color,#ff2b2b);border:3px solid #fff;box-shadow:0 0 0 2px rgba(0,0,0,.75),0 2px 8px rgba(0,0,0,.4);transform:translate(-50%,-50%);pointer-events:none;z-index:3}
.narration-live-pointer.is-hidden{display:none}
@media(max-width:900px){.whiteboard-toolset button span{display:none}.whiteboard-options input[type=text]{min-width:120px}.narration-whiteboard-tools{padding:7px}}

/* v1.44.25 — toolbar lavagna narrata coerente con Font Awesome */
.narration-whiteboard-tools{position:relative;flex:0 0 auto;gap:10px;padding:12px 14px;box-shadow:0 4px 14px rgba(8,47,99,.06)}
.whiteboard-toolset{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}
.whiteboard-toolset button,.whiteboard-options button{min-height:38px;border-radius:10px;padding:8px 11px;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.whiteboard-toolset button:hover,.whiteboard-options button:hover{border-color:#8eb7e3;background:#eef6ff;color:#0865d9}
.whiteboard-toolset button.active{box-shadow:0 0 0 3px rgba(8,101,217,.12)}
.whiteboard-toolset button i,.whiteboard-options button i{width:17px;text-align:center;font-size:14px}
.whiteboard-options{display:grid;grid-template-columns:auto auto minmax(170px,1fr) auto auto;gap:9px;align-items:center}
.whiteboard-options label{min-height:38px;padding:5px 8px;border:1px solid #d8e4f1;border-radius:10px;background:#f8fbff}
.whiteboard-options label i{color:#0865d9}.whiteboard-options label span{white-space:nowrap}
.whiteboard-text-field{display:flex;align-items:center;gap:8px;min-width:0;border:1px solid #d8e4f1;border-radius:10px;background:#f8fbff;padding:0 10px}
.whiteboard-text-field i{color:#0865d9}.whiteboard-text-field input[type=text]{min-width:0;width:100%;border:0;background:transparent;padding:9px 0;outline:0}
.whiteboard-text-field input[type=text]:not(.is-active){opacity:.55}
.whiteboard-help{display:flex;align-items:flex-start;gap:8px;padding:9px 11px;border-radius:10px;background:#eef6ff;color:#46627f;font-size:12px;line-height:1.4}
.whiteboard-help i{color:#0865d9;margin-top:2px}
.narration-whiteboard-canvas[data-tool="pointer"]{cursor:none}.narration-whiteboard-canvas[data-tool="text"]{cursor:text}
@media(max-width:980px){.whiteboard-options{grid-template-columns:1fr 1fr}.whiteboard-text-field{grid-column:1/-1}.whiteboard-options button{justify-content:center}.whiteboard-help{display:none}}
@media(max-width:620px){.whiteboard-toolset button{min-width:42px;justify-content:center}.whiteboard-toolset button span,.whiteboard-options button span,.whiteboard-options label span{display:none}.whiteboard-options{grid-template-columns:auto auto 1fr auto auto}.whiteboard-text-field{grid-column:auto}.narration-whiteboard-tools{padding:9px}}


/* Lavagna narrata: strumenti nel pannello laterale della modale */
.narration-modal{width:min(1320px,96vw)}
.narration-modal-head{padding:18px 24px}
.narration-modal-head h2{font-size:30px;line-height:1.1}
.narration-modal-head p{font-size:14px}
.narration-workspace{grid-template-columns:minmax(0,1fr) 330px}
.narration-stage{padding:14px 16px}
.narration-recorder-panel{gap:14px}
.narration-side-tools{display:flex;flex-direction:column;gap:10px;padding-top:2px}
.narration-side-tools.is-hidden{display:none}
.narration-side-tools::before{content:"Strumenti lavagna";display:block;font-size:11px;font-weight:800;letter-spacing:.12em;color:#5d7898;text-transform:uppercase}
.narration-side-tools .narration-whiteboard-tools{padding:12px;border-radius:14px;background:#f8fbff;border:1px solid #d7e4f3;box-shadow:none}
.narration-side-tools .whiteboard-toolset{display:grid;grid-template-columns:1fr 1fr;gap:8px;overflow:visible;padding-bottom:0}
.narration-side-tools .whiteboard-options{display:grid;grid-template-columns:1fr;gap:8px;padding-top:10px}
.narration-side-tools .whiteboard-options label,.narration-side-tools .whiteboard-text-field,.narration-side-tools .whiteboard-options button{width:100%}
.narration-side-tools .whiteboard-options button{justify-content:center}
.narration-side-tools .whiteboard-toolset button{justify-content:flex-start}
.narration-side-tools .whiteboard-toolset button span,.narration-side-tools .whiteboard-options button span,.narration-side-tools .whiteboard-options label span{display:inline}
.narration-side-tools .whiteboard-help{font-size:11px}
.narration-presentation{display:flex;flex-direction:column;gap:12px;width:100%;min-height:100%}
.narration-presentation-visual{min-height:0;flex:1}
@media(max-width:1100px){.narration-workspace{grid-template-columns:minmax(0,1fr) 300px}.narration-modal-head h2{font-size:26px}}
@media(max-width:900px){.narration-modal-head h2{font-size:24px}.narration-side-tools::before{display:none}.narration-side-tools .whiteboard-toolset{grid-template-columns:1fr 1fr}.narration-side-tools .whiteboard-options{grid-template-columns:1fr}}

/* v1.44.27 — Modale Commento multimediale a tutto schermo */
.narration-modal-backdrop{
  padding:0;
  align-items:stretch;
  justify-content:stretch;
  background:#eaf1f9;
  backdrop-filter:none;
}
.narration-modal{
  width:100vw;
  max-width:none;
  height:100dvh;
  max-height:none;
  border-radius:0;
  box-shadow:none;
}
.narration-modal-head{
  flex:0 0 auto;
  min-height:92px;
  padding:16px 24px;
  align-items:center;
  background:#fff;
  box-shadow:0 1px 0 #dfe8f5;
  z-index:5;
}
.narration-modal-head h2{
  margin:2px 0 3px;
  font-size:28px;
}
.narration-modal-head p{
  white-space:normal;
  line-height:1.35;
}
.narration-close{
  flex:0 0 auto;
  width:46px;
  height:46px;
  border-radius:50%;
  box-shadow:0 5px 16px rgba(8,47,99,.12);
}
.narration-workspace{
  min-height:0;
  height:calc(100dvh - 92px);
  grid-template-columns:minmax(0,1fr) 360px;
}
.narration-content-column,
.narration-recorder-panel{
  min-height:0;
}
.narration-stage{
  min-height:0;
  overflow:hidden;
  padding:12px 16px 16px;
}
.narration-presentation{
  height:100%;
  min-height:0;
}
.narration-presentation-visual{
  min-height:0;
}
.narration-recorder-panel{
  padding:18px;
  overflow-y:auto;
}
.narration-content-toolbar{
  flex:0 0 auto;
}
.narration-confirm{
  position:fixed;
  left:18px;
  right:18px;
  bottom:18px;
}
@media(max-width:1100px){
  .narration-workspace{grid-template-columns:minmax(0,1fr) 320px}
}
@media(max-width:900px){
  .narration-modal-backdrop{padding:0}
  .narration-modal{width:100vw;height:100dvh;border-radius:0}
  .narration-modal-head{min-height:82px;padding:12px 14px}
  .narration-modal-head p{display:none}
  .narration-workspace{height:calc(100dvh - 82px);grid-template-columns:1fr;overflow:auto}
  .narration-content-column{min-height:62vh}
  .narration-recorder-panel{overflow:visible}
  .narration-stage{min-height:48vh}
}

/* Player audio personalizzato nell'editor: tempo corrente / durata totale */
.editor-audio-player{display:grid;grid-template-columns:42px auto minmax(90px,1fr) 38px;align-items:center;gap:9px;width:100%;padding:8px 10px;border-radius:999px;background:#eef1f4;color:#1b2d43}
.editor-audio-player button{width:38px;height:38px;border:0;border-radius:50%;background:#f8fafc;color:#102b4c;display:grid;place-items:center;cursor:pointer;font-size:14px}
.editor-audio-player button:hover{background:#fff;color:#0865d9}
.editor-audio-time{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:12px;font-variant-numeric:tabular-nums;color:#42546a}
.editor-audio-time b{font-weight:700}.editor-audio-time em{font-style:normal;color:#8795a7}
.editor-audio-seek{--audio-progress:0%;width:100%;height:5px;appearance:none;border-radius:999px;outline:0;background:linear-gradient(to right,#1f2d3d 0 var(--audio-progress),#b9c1ca var(--audio-progress) 100%);cursor:pointer}
.editor-audio-seek::-webkit-slider-thumb{appearance:none;width:14px;height:14px;border-radius:50%;background:#0865d9;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.22)}
.editor-audio-seek::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#0865d9;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.22)}
.media-preview audio.editor-sync-audio{display:none}
@media(max-width:620px){.editor-audio-player{grid-template-columns:38px auto minmax(60px,1fr) 34px;gap:6px;padding:7px}.editor-audio-player button{width:34px;height:34px}.editor-audio-time{font-size:11px}}

/* Durata reale dei media nel corso */
.course-duration-field{grid-column:1/-1}
.course-duration-composer{display:grid;grid-template-columns:minmax(180px,260px) minmax(300px,1fr);gap:14px;align-items:stretch}
.course-media-duration{border:1px solid #d6e4f3;border-radius:13px;background:#f8fbff;padding:13px 14px;display:flex;flex-direction:column;gap:5px;min-width:0}
.course-media-duration>span{font-size:11px;font-weight:800;color:#416487;text-transform:uppercase;letter-spacing:.04em}.course-media-duration>span i{color:#0865d9;margin-right:6px}
.course-media-duration>strong{font-size:20px;color:#082f63}.course-media-duration>small{color:#6d8098;line-height:1.4}.course-media-duration .btn{align-self:flex-start;margin-top:5px}
@media(max-width:760px){.course-duration-composer{grid-template-columns:1fr}.course-media-duration .btn{width:100%;justify-content:center}}

.module-row-actions{display:flex;align-items:center;gap:3px}.structure-delete-button{width:30px;height:30px;border:0;background:transparent;color:#9a6f74;display:inline-grid;place-items:center;border-radius:7px;cursor:pointer}.structure-delete-button:hover{background:#fff0f0;color:#c91c1c}.tree-module-head{grid-template-columns:auto minmax(0,1fr) auto!important}


/* v1.44.44 - modello strutturato Academy, accessi e progressi */
.access-overview-list{display:grid;gap:10px;margin-top:12px}.access-overview-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #d8e3f0;border-radius:14px;background:#f8fbff}.access-overview-list article div{display:grid;gap:4px;min-width:0}.access-overview-list article strong{color:#102b54}.access-overview-list article small{color:#6c7f98;white-space:normal}.check-grid label span{display:grid;gap:2px}.check-grid label small{font-weight:500;color:#73849a}@media(max-width:700px){.access-overview-list article{align-items:flex-start;flex-direction:column}.access-overview-list .status-pill{align-self:flex-start}}

/* v1.44.47 - gestione strutturale studenti convenzionati nelle Academy */
.academy-agreement-toggle{padding:16px;border:1px solid #cfe0f5;border-radius:14px;background:#f4f8ff}.academy-agreement-toggle label{display:flex;gap:10px;align-items:center}.academy-student-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.academy-student-selector label{display:flex;gap:10px;align-items:flex-start;padding:14px;border:1px solid #d6e1ef;border-radius:12px;background:#fff}.academy-student-selector span{display:grid;gap:4px}.academy-student-selector small{color:#718096}.academy-linked-students{margin-top:20px}@media(max-width:900px){.academy-student-selector{grid-template-columns:1fr}}

/* Academy editor: scalable selectors and visual identity — v1.44.52 */
.academy-icon-control{display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center}.academy-visual-preview{--academy-accent:#0865d9;width:54px;height:54px;border-radius:15px;display:grid;place-items:center;background:color-mix(in srgb,var(--academy-accent) 14%,#fff);border:1px solid color-mix(in srgb,var(--academy-accent) 40%,#d6e1ef);color:var(--academy-accent);font-size:24px}.academy-color-control{display:grid;grid-template-columns:70px minmax(80px,1fr) 40px;gap:10px;align-items:center}.academy-color-control input[type=color]{width:70px;height:46px;padding:4px;cursor:pointer}.academy-color-control output{height:46px;display:flex;align-items:center;padding:0 13px;border:1px solid var(--b-border);border-radius:10px;background:#f8fbff;font-weight:800;color:var(--b-navy)}.academy-color-swatch{width:40px;height:40px;border-radius:50%;border:4px solid #fff;box-shadow:0 0 0 1px var(--b-border)}
.selector-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(170px,auto) minmax(145px,auto) auto auto;gap:9px;align-items:center;margin-bottom:13px}.selector-search{position:relative}.selector-search i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--b-muted);pointer-events:none}.selector-search input{padding-left:38px}.selector-toolbar .btn-sm{white-space:nowrap;min-height:42px}.managed-selector-list{max-height:none!important;overflow:visible!important}.managed-selector-list [data-selector-item][hidden]{display:none!important}.selector-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:13px;padding-top:12px;border-top:1px solid var(--b-border);color:var(--b-muted);font-size:12px}.selector-pagination{display:flex;align-items:center;gap:9px}.selector-pagination span{min-width:92px;text-align:center;color:var(--b-navy);font-weight:700}.selector-pagination .btn{width:38px;height:36px;padding:0}.academy-course-selector label,.academy-student-selector label{transition:border-color .16s ease,background .16s ease,transform .16s ease}.academy-course-selector label:hover,.academy-student-selector label:hover{border-color:#8ab7e8;transform:translateY(-1px)}.academy-student-selector label:has(input:checked){border-color:#78abe3;background:#eef6ff}
@media(max-width:1180px){.selector-toolbar{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(150px,auto));}.selector-toolbar .btn{grid-row:2}.selector-toolbar .btn[data-select-visible]{grid-column:1/2}.selector-toolbar .btn[data-clear-visible]{grid-column:2/3}}
@media(max-width:760px){.academy-icon-control{grid-template-columns:50px minmax(0,1fr)}.academy-visual-preview{width:50px;height:50px}.academy-color-control{grid-template-columns:64px 1fr 36px}.selector-toolbar{grid-template-columns:1fr}.selector-toolbar .btn,.selector-toolbar .btn[data-select-visible],.selector-toolbar .btn[data-clear-visible]{grid-column:auto;grid-row:auto}.selector-footer{align-items:flex-start;flex-direction:column}.selector-pagination{width:100%;justify-content:space-between}}

/* v1.44.53 — controlli Academy in stile Material coerente con il portale */
.selector-toolbar{
  padding:12px;
  border:1px solid #d9e4f1;
  border-radius:14px;
  background:#f8fbff;
  box-shadow:0 2px 10px rgba(16,43,84,.035);
}
.selector-search,
.selector-toolbar select{
  min-height:46px;
}
.selector-search{
  display:flex;
  align-items:center;
  border:1px solid #cfdceb;
  border-radius:12px;
  background:#fff;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
  overflow:hidden;
}
.selector-search:focus-within{
  border-color:#0a68df;
  box-shadow:0 0 0 3px rgba(10,104,223,.12);
}
.selector-search i{
  position:static;
  transform:none;
  flex:0 0 46px;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  color:#47749f;
  background:#eef5fd;
  border-right:1px solid #d8e4f1;
  font-size:15px;
}
.selector-search input{
  width:100%;
  min-width:0;
  height:46px;
  border:0!important;
  border-radius:0!important;
  padding:0 14px!important;
  background:transparent!important;
  color:#102b54;
  font:inherit;
  outline:0;
  box-shadow:none!important;
}
.selector-search input::placeholder{color:#7b8da4;opacity:1}
.selector-toolbar select{
  width:100%;
  height:46px;
  padding:0 42px 0 14px;
  border:1px solid #cfdceb;
  border-radius:12px;
  background-color:#fff;
  color:#18375f;
  font:inherit;
  font-weight:650;
  cursor:pointer;
  outline:0;
  box-shadow:none;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.selector-toolbar select:focus{
  border-color:#0a68df;
  box-shadow:0 0 0 3px rgba(10,104,223,.12);
}
.selector-toolbar .selector-action{
  min-height:46px;
  border-radius:12px;
  padding:0 15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-color:#c8d8e9;
  background:#fff;
  color:#103765;
  font-weight:800;
  box-shadow:0 1px 3px rgba(16,43,84,.04);
}
.selector-toolbar .selector-action:hover{
  border-color:#7baee5;
  background:#eef6ff;
  color:#075fca;
}
.selector-toolbar .selector-action:active{transform:translateY(1px)}
.selector-toolbar .selector-action i{font-size:14px;color:#0a68df}
.selector-footer{
  min-height:48px;
  padding:12px 2px 0;
}
.selector-pagination .btn{
  width:42px;
  height:42px;
  border-radius:12px;
  background:#fff;
  border-color:#d2deeb;
  box-shadow:0 1px 3px rgba(16,43,84,.04);
}
.selector-pagination .btn:hover:not(:disabled){background:#eef6ff;border-color:#87b4e4;color:#0865d9}
.selector-pagination .btn:disabled{opacity:.42;background:#f4f7fa}
.academy-course-selector label,
.academy-student-selector label{
  min-height:68px;
  border-radius:14px;
  box-shadow:0 1px 2px rgba(16,43,84,.025);
}
.academy-course-selector input[type=checkbox],
.academy-student-selector input[type=checkbox]{
  width:18px;
  height:18px;
  accent-color:#0868df;
  flex:0 0 auto;
}
.academy-course-selector label:has(input:checked),
.academy-student-selector label:has(input:checked){
  border-color:#4d9af0;
  background:#edf6ff;
  box-shadow:0 0 0 1px rgba(8,104,223,.08);
}
@media(max-width:1180px){
  .selector-toolbar{padding:11px}
}
@media(max-width:760px){
  .selector-toolbar{padding:10px;border-radius:13px}
  .selector-toolbar .selector-action{width:100%}
  .selector-search,.selector-toolbar select{min-height:48px}
  .selector-search input,.selector-search i,.selector-toolbar select{height:48px}
}

/* v1.44.54 — editor Academy a larghezza piena */
.academy-unified-form{
  width:100%;
  max-width:none;
  box-sizing:border-box;
}
.academy-unified-form .selector-toolbar{
  width:100%;
  box-sizing:border-box;
}
@media(max-width:1280px){
  .academy-unified-form .selector-toolbar{
    grid-template-columns:minmax(220px,1fr) minmax(160px,190px) minmax(135px,160px);
  }
  .academy-unified-form .selector-toolbar .btn{
    grid-row:2;
  }
  .academy-unified-form .selector-toolbar .btn[data-select-visible]{grid-column:1/2}
  .academy-unified-form .selector-toolbar .btn[data-clear-visible]{grid-column:2/3}
}

/* v1.44.56 - ripresa registrazione da un punto preciso */
.recording-resume-panel{display:grid;gap:9px;margin:0 0 12px;padding:12px;border:1px solid #d7e4f3;border-radius:13px;background:#f7fbff}.recording-resume-copy strong,.recording-resume-copy small{display:block}.recording-resume-copy strong{color:#0a386c;font-size:13px}.recording-resume-copy strong i{color:#0876ec;margin-right:5px}.recording-resume-copy small{margin-top:4px;color:#667b95;font-size:11px;line-height:1.35}.recording-resume-position{padding:7px 9px;border-radius:9px;background:#eaf3ff;color:#49647f;font-size:12px}.recording-resume-position strong{color:#073a73;font-variant-numeric:tabular-nums}.recording-resume-panel .full-btn{width:100%;justify-content:center}.recording-resume-panel .is-hidden{display:none}.recording-review.is-processing{opacity:.72;pointer-events:none}.recording-review.is-processing:after{content:'Elaborazione audio in corso…';display:block;margin-top:8px;color:#0876ec;font-size:12px;font-weight:700;text-align:center}


/* v1.44.57 · timeline narrata e correzione guidata */
.recording-actions [data-recording-review-now]{grid-column:1/-1}
.narration-stage.is-timeline-review{box-shadow:inset 0 0 0 3px rgba(14,108,219,.18)}
.narration-stage.is-timeline-review::after{content:"Riascolto sincronizzato";position:absolute;top:14px;right:14px;z-index:8;background:#fff;color:#0e6cdb;border:1px solid #cfe2fb;border-radius:999px;padding:8px 12px;font-weight:800;font-size:.78rem;box-shadow:0 8px 24px rgba(15,43,83,.12)}
.recording-countdown{position:fixed;inset:0;z-index:10020;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(7,28,57,.72);color:#fff;backdrop-filter:blur(4px)}
.recording-countdown strong{font-size:clamp(5rem,14vw,10rem);line-height:1;font-weight:900;text-shadow:0 12px 35px rgba(0,0,0,.35)}
.recording-countdown small{font-size:1.2rem;font-weight:800;margin-top:12px}
.recording-countdown.is-hidden{display:none}
.recording-review audio{width:100%}
.recording-resume-panel{gap:12px}
@media(max-width:700px){.narration-stage.is-timeline-review::after{top:8px;right:8px;font-size:.68rem;padding:6px 9px}}


/* v1.44.59 · registratore narrato ricostruito */
.recording-master-timeline{display:grid;gap:7px;padding:10px 2px 4px}.recording-master-timeline input{width:100%;accent-color:#0b73e0}.recording-master-timeline>div{display:flex;justify-content:space-between;color:#506985;font-size:12px;font-variant-numeric:tabular-nums}.narration-side-tools.is-review-locked{pointer-events:none;opacity:.55}.narration-stage.is-timeline-review .narration-presentation-thumbs button{pointer-events:none}.recording-review.is-processing{display:block!important}.recording-review.is-processing audio,.recording-review.is-processing .recording-resume-panel,.recording-review.is-processing .recording-review-actions{visibility:hidden}

/* v1.44.60 · timeline autorevole e correzione registrazione */


/* v1.44.61 · audio della presentazione narrata gestito solo dal registratore interno */
.narration-managed-audio-note {
  display: flex;
  align-items: flex-start;
  gap: .7rem;
  padding: .8rem .9rem;
  border: 1px solid #b9d8ff;
  border-radius: 12px;
  background: #eef6ff;
  color: #173b69;
  font-size: .88rem;
  line-height: 1.4;
}
.narration-managed-audio-note i { color: #0b6fe8; margin-top: .15rem; }
.manual-media-upload-controls.is-hidden,
.narration-managed-audio-note.is-hidden { display: none !important; }

/* Salvataggio diapositiva: overlay autonomo, centrato e indipendente dai layout laterali. */
.slide-save-progress-overlay{position:fixed;inset:0;z-index:30000;display:grid;place-items:center;padding:24px;isolation:isolate}
.slide-save-progress-overlay.is-hidden{display:none!important}
.slide-save-progress-backdrop{position:absolute;inset:0;background:rgba(5,19,43,.72);backdrop-filter:blur(5px)}
.slide-save-progress-dialog{position:relative;z-index:1;width:min(520px,calc(100vw - 32px));background:#fff;border:1px solid #d8e3f0;border-radius:24px;box-shadow:0 30px 90px rgba(3,21,52,.35);padding:34px;text-align:center;color:var(--b-navy)}
.slide-save-progress-icon{width:64px;height:64px;margin:0 auto 14px;border-radius:20px;display:grid;place-items:center;background:#eaf3ff;color:#0865d9;font-size:26px}
.slide-save-progress-dialog h2{margin:6px 0 10px;font-size:28px;line-height:1.15}
.slide-save-progress-dialog .upload-progress-status{min-height:44px;margin:0;color:var(--b-muted);font-size:15px;line-height:1.45}
.slide-save-progress-dialog .upload-progress-track{height:14px;background:#e7eef7;border-radius:999px;overflow:hidden;margin:24px 0 12px}
.slide-save-progress-dialog .upload-progress-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#0865d9,#13b4d4);transition:width .2s ease}
.slide-save-progress-dialog .upload-progress-meta{display:flex;justify-content:space-between;align-items:center;gap:15px;color:var(--b-muted);font-size:13px}
.slide-save-progress-dialog .upload-progress-meta strong{color:var(--b-navy);font-size:18px}
.slide-save-progress-actions{display:flex;justify-content:center;margin-top:20px}
.slide-save-progress-actions:empty{display:none}
@media(max-width:640px){.slide-save-progress-overlay{padding:14px}.slide-save-progress-dialog{padding:26px 20px;border-radius:20px}.slide-save-progress-dialog h2{font-size:24px}.slide-save-progress-dialog .upload-progress-meta{align-items:flex-start;flex-direction:column;gap:4px}}

/* v1.44.66 - protezione strutturale tipologia diapositiva */
.slide-type-option{position:relative}.slide-type-option.is-locked{opacity:.58;cursor:pointer;background:#f3f6fa}.slide-type-option.is-locked:hover{opacity:.78;border-color:#9fb9da}.slide-type-lock-icon{position:absolute;top:10px;right:10px;width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:#e8eef7;color:#607794}.slide-type-lock-notice{margin-top:14px;padding:13px 14px;border:1px solid #bed5f2;border-radius:13px;background:#eef6ff;display:flex;align-items:center;gap:12px;color:#17385f}.slide-type-lock-notice>i{width:34px;height:34px;border-radius:10px;background:#dcecff;display:grid;place-items:center;color:#0869d8}.slide-type-lock-notice>div{min-width:0;flex:1}.slide-type-lock-notice strong,.slide-type-lock-notice span{display:block}.slide-type-lock-notice span{margin-top:3px;font-size:12px;color:#58718e}.slide-type-change-modal{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:18px}.slide-type-change-modal.is-hidden{display:none}.slide-type-change-backdrop{position:absolute;inset:0;background:rgba(13,31,55,.66);backdrop-filter:blur(3px)}.slide-type-change-dialog{position:relative;z-index:1;width:min(560px,100%);background:#fff;border-radius:20px;padding:26px;box-shadow:0 24px 70px rgba(4,22,47,.32)}.slide-type-change-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border:1px solid #d6e1ef;border-radius:50%;background:#fff;color:#17385f}.slide-type-change-icon{width:48px;height:48px;border-radius:15px;background:#fff0e8;color:#d9541d;display:grid;place-items:center;font-size:20px;margin-bottom:12px}.slide-type-change-dialog h2{margin:5px 0 8px;color:#102f56}.slide-type-change-dialog p{color:#5d718a;line-height:1.5}.slide-type-change-summary{display:flex;gap:10px;align-items:flex-start;padding:13px;border:1px solid #f2c8bc;background:#fff5f2;border-radius:12px;color:#8d2d18}.slide-type-change-safe{font-size:12px}.slide-type-change-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}@media(max-width:700px){.slide-type-lock-notice{align-items:flex-start;flex-wrap:wrap}.slide-type-lock-notice .btn{width:100%}.slide-type-change-actions{flex-direction:column-reverse}.slide-type-change-actions .btn{width:100%}}
.user-lifecycle-card{margin-top:18px;background:#fff;border:1px solid #d7e3f0;border-radius:18px;padding:20px}.user-lifecycle-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.user-lifecycle-head h2{margin:4px 0 6px;color:#082f63}.user-lifecycle-head p{margin:0;color:#657a94}.user-lifecycle-head>i{width:46px;height:46px;border-radius:14px;background:#eef5ff;color:#0865d9;display:grid;place-items:center;font-size:20px}.user-lifecycle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.user-lifecycle-grid article{border:1px solid #dbe6f2;background:#f8fbff;border-radius:12px;padding:12px}.user-lifecycle-grid span,.user-lifecycle-grid strong{display:block}.user-lifecycle-grid span{color:#637893;font-size:12px}.user-lifecycle-grid strong{margin-top:4px;color:#082f63;font-size:22px}.user-lifecycle-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;border-top:1px solid #e2eaf3}.user-lifecycle-actions strong,.user-lifecycle-actions p{display:block}.user-lifecycle-actions strong{color:#102f56}.user-lifecycle-actions p{margin:4px 0 0;color:#687b93;font-size:13px}.user-lifecycle-actions.is-disabled{opacity:.72}@media(max-width:900px){.user-lifecycle-grid{grid-template-columns:repeat(2,1fr)}.user-lifecycle-actions{align-items:stretch;flex-direction:column}.user-lifecycle-actions form,.user-lifecycle-actions .btn{width:100%}}@media(max-width:520px){.user-lifecycle-grid{grid-template-columns:1fr}}

/* v1.44.68 — vincolo minimo di un ruolo per utente */
.role-required-notice{display:flex;align-items:center;gap:.65rem;margin:.65rem 0 1rem;padding:.8rem 1rem;border:1px solid #f1c76b;border-radius:12px;background:#fff8e5;color:#805400;font-weight:700}
.role-required-notice[hidden]{display:none}
.check-grid label.is-only-role{border-color:#8abaf2;background:#eef6ff;box-shadow:0 0 0 1px rgba(8,101,217,.08)}
.check-grid label.is-only-role::after{content:'Almeno un ruolo richiesto';display:block;margin-left:1.55rem;margin-top:.2rem;font-size:.72rem;font-weight:600;color:#52708f}


/* v1.44.69 — distingue collegamenti attivi da record storici */
.user-lifecycle-history-note{display:flex;align-items:flex-start;gap:12px;margin-top:14px;padding:13px 15px;border:1px solid #d9e5f5;border-radius:14px;background:#f5f9ff;color:#35516f}
.user-lifecycle-history-note>i{margin-top:2px;color:#1769d2}
.user-lifecycle-history-note div{display:flex;flex-direction:column;gap:3px}
.user-lifecycle-history-note strong{color:#12345b}
.user-lifecycle-history-note span{font-size:.9rem;line-height:1.45}
.email-access-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.email-change-dialog{width:min(620px,calc(100vw - 32px));border:0;border-radius:20px;padding:0;box-shadow:0 24px 80px rgba(10,38,78,.28)}.email-change-dialog::backdrop{background:rgba(13,36,70,.58);backdrop-filter:blur(4px)}.email-change-form{padding:26px;display:grid;gap:18px}.email-change-form .modal-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.email-change-form .modal-head h2{margin:4px 0}.email-change-form .modal-head p{margin:0;color:#64748b}.email-change-form .modal-close{width:42px;height:42px;border:1px solid #dbe5f2;border-radius:50%;background:#fff;color:#16345e}.email-change-options{display:flex;flex-wrap:wrap;gap:10px}.email-change-options .btn{flex:1 1 230px}.email-change-form .info-banner{display:flex;gap:10px;background:#eef6ff;border:1px solid #cfe3fa;border-radius:12px;padding:13px;color:#345778}@media(max-width:700px){.email-access-row{grid-template-columns:1fr}.email-access-row .btn{width:100%}.email-change-form{padding:20px}}

/* v1.44.73 - riepilogo utente leggibile senza rimuovere dati tecnici */
.user-lifecycle-subhead{display:flex;align-items:flex-start;justify-content:space-between;margin:18px 0 10px}
.user-lifecycle-subhead strong,.user-lifecycle-subhead span{display:block}.user-lifecycle-subhead strong{color:#12345b;font-size:1rem}.user-lifecycle-subhead span{margin-top:3px;color:#687d96;font-size:.88rem}
.user-learning-overview .is-date{font-size:15px;line-height:1.35}
.user-lifecycle-technical{margin:14px 0;border:1px solid #d9e5f2;border-radius:14px;background:#f8fbff;overflow:hidden}
.user-lifecycle-technical summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;cursor:pointer;color:#12345b;font-weight:800;list-style:none}
.user-lifecycle-technical summary::-webkit-details-marker{display:none}.user-lifecycle-technical summary span{display:flex;align-items:center;gap:9px}.user-lifecycle-technical[open] summary>i{transform:rotate(180deg)}
.user-lifecycle-technical summary>i{transition:transform .2s ease}.user-lifecycle-technical-body{padding:0 16px 16px}.user-lifecycle-technical-body>p{margin:0 0 10px;color:#657b95;font-size:.88rem}
.user-lifecycle-grid.is-technical{margin:0;grid-template-columns:repeat(4,minmax(0,1fr))}.user-lifecycle-grid.is-technical article small{display:block;margin-top:5px;color:#71849a;font-size:.75rem;line-height:1.35}
@media(max-width:900px){.user-lifecycle-grid.is-technical{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.user-lifecycle-grid.is-technical{grid-template-columns:1fr}}

/* 2FA policy */
.two-factor-policy-form{display:grid;gap:18px}.two-factor-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.two-factor-role-grid label{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid #dfe6ef;border-radius:12px;background:#fff}.two-factor-role-grid label span{display:flex;flex-direction:column}.two-factor-role-grid small{color:#6d7886;margin-top:4px}.two-factor-policy-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.two-factor-policy-field{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px 16px;border:1px solid #d8e3f0;border-radius:14px;background:#fff;box-shadow:0 3px 12px rgba(20,54,90,.04);cursor:default}.two-factor-policy-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eaf3ff;color:#0969da;font-size:17px}.two-factor-policy-copy{display:flex;flex-direction:column;min-width:0}.two-factor-policy-copy strong{font-size:14px;color:#0d2d53}.two-factor-policy-copy small{margin-top:3px;color:#65758a;line-height:1.35}.two-factor-policy-control{display:flex;align-items:stretch;min-width:150px}.two-factor-policy-control input{width:76px;min-height:42px;padding:0 12px;border:1px solid #cbd9e8;border-radius:10px 0 0 10px;background:#fff;color:#102f55;font-weight:800;text-align:center;outline:none}.two-factor-policy-control input:focus{border-color:#1473e6;box-shadow:0 0 0 3px rgba(20,115,230,.14);position:relative;z-index:1}.two-factor-policy-control>span{display:flex;align-items:center;padding:0 12px;border:1px solid #cbd9e8;border-left:0;border-radius:0 10px 10px 0;background:#f3f7fc;color:#5d6f84;font-size:12px;font-weight:800;white-space:nowrap}@media(max-width:900px){.two-factor-policy-options{grid-template-columns:1fr}}@media(max-width:760px){.two-factor-role-grid{grid-template-columns:1fr}.two-factor-policy-field{grid-template-columns:auto minmax(0,1fr)}.two-factor-policy-control{grid-column:1/-1;width:100%}.two-factor-policy-control input{flex:1;width:auto}}

/* v1.44.82 — indicatore stato 2FA nei layout backend */
.backend-2fa-link{display:inline-flex;align-items:center;gap:8px}
.backend-2fa-link.is-enabled{color:var(--b-success)!important}
.backend-2fa-link.is-disabled{color:var(--b-danger)!important}
.audio-transcription-button{margin-top:12px}.transcription-available{display:flex;gap:7px;align-items:center;color:#138a54;margin-top:8px;font-weight:700}.audio-transcription-modal{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:24px}.audio-transcription-modal.is-hidden{display:none}.audio-transcription-backdrop{position:absolute;inset:0;background:rgba(8,31,62,.68);backdrop-filter:blur(4px)}.audio-transcription-dialog{position:relative;width:min(900px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:22px;padding:26px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.audio-transcription-dialog header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #dce7f4;padding-bottom:18px}.audio-transcription-close{border:0;background:#edf5ff;width:44px;height:44px;border-radius:50%;font-size:18px}.audio-transcription-privacy{display:flex;gap:12px;background:#eefaf4;color:#176b45;border:1px solid #bfe7d2;border-radius:14px;padding:14px;margin:18px 0}.audio-transcription-progress{background:#f6f9fd;border:1px solid #d9e5f3;border-radius:14px;padding:14px;margin-bottom:18px}.audio-transcription-progress-head{display:flex;justify-content:space-between}.audio-transcription-progress-track{height:9px;background:#dfe8f2;border-radius:999px;overflow:hidden;margin:10px 0}.audio-transcription-progress-track span{display:block;height:100%;width:0;background:#0d6fe8;transition:width .25s}.audio-transcription-editor-label{display:block;font-weight:800;margin-bottom:8px}.audio-transcription-dialog textarea{width:100%;min-height:260px;border:1px solid #cbd9ea;border-radius:14px;padding:16px;font:inherit;line-height:1.55}.audio-transcription-actions{display:grid;grid-template-columns:auto 1fr auto auto auto;gap:10px;margin-top:18px}@media(max-width:760px){.audio-transcription-modal{padding:0}.audio-transcription-dialog{width:100%;height:100%;max-height:none;border-radius:0}.audio-transcription-actions{grid-template-columns:1fr}.audio-transcription-actions span{display:none}.audio-transcription-actions .btn{width:100%}}

.audio-transcription-elapsed{display:block;margin-top:7px;font-weight:700;color:#53677f}.audio-transcription-progress-track.is-indeterminate span{width:35%!important;animation:transcription-indeterminate 1.2s ease-in-out infinite}.audio-transcription-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:-4px 0 18px}.audio-transcription-steps>div{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;color:#7c8da3;font-size:.78rem;font-weight:800;padding:10px 5px;border-radius:12px;background:#f5f8fc;border:1px solid #e1e9f3}.audio-transcription-steps>div i{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#dfe8f2}.audio-transcription-steps>div.is-active{color:#0d5fca;border-color:#9bc4fa;background:#eef6ff}.audio-transcription-steps>div.is-active i{background:#0d6fe8;color:#fff;animation:transcription-pulse 1.25s ease-in-out infinite}.audio-transcription-steps>div.is-complete{color:#167044;border-color:#bde3cf;background:#f0faf5}.audio-transcription-steps>div.is-complete i{background:#168653;color:#fff}.audio-transcription-modal.is-processing .audio-transcription-close{opacity:.45;pointer-events:none}@keyframes transcription-indeterminate{0%{transform:translateX(-120%)}50%{transform:translateX(100%)}100%{transform:translateX(260%)}}@keyframes transcription-pulse{50%{transform:scale(1.08);box-shadow:0 0 0 6px rgba(13,111,232,.12)}}@media(max-width:760px){.audio-transcription-steps{grid-template-columns:repeat(5,minmax(74px,1fr));overflow-x:auto;padding-bottom:5px}.audio-transcription-steps>div{font-size:.72rem}}

/* v1.44.93: la modale di trascrizione viene montata direttamente nel body. */
body.modal-open{overflow:hidden!important}.audio-transcription-modal{isolation:isolate}.audio-transcription-backdrop{z-index:0}.audio-transcription-dialog{z-index:1;outline:0}

/* v1.44.95: modale trascrizione compatta entro il viewport */
.audio-transcription-modal{padding:16px}.audio-transcription-dialog{height:min(760px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:20px}.audio-transcription-dialog header{padding-bottom:10px}.audio-transcription-dialog header h2{margin:.1rem 0 .25rem}.audio-transcription-dialog header p{margin:0}.audio-transcription-privacy{margin:10px 0;padding:10px 12px}.audio-transcription-progress{margin-bottom:10px;padding:11px}.audio-transcription-steps{margin:0 0 10px}.audio-transcription-steps>div{padding:7px 4px}.audio-transcription-dialog textarea{min-height:170px;max-height:32vh}.audio-transcription-actions{margin-top:10px;position:sticky;bottom:-20px;background:#fff;padding:10px 0 0;z-index:2}@media(max-height:760px) and (min-width:761px){.audio-transcription-dialog{padding:16px}.audio-transcription-privacy{font-size:.9rem}.audio-transcription-dialog textarea{min-height:130px;max-height:24vh}.audio-transcription-steps>div{padding:5px 3px}.audio-transcription-steps>div i{width:25px;height:25px}}

.audio-transcription-diagnostics{margin:0 0 10px;border:1px solid #d9e5f3;border-radius:12px;background:#f8fbff}.audio-transcription-diagnostics summary{cursor:pointer;padding:10px 12px;font-weight:800;color:#174a7e}.audio-transcription-diagnostics>[data-transcription-diagnostics]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#d9e5f3;border-top:1px solid #d9e5f3}.audio-transcription-diagnostics [data-transcription-diagnostics]>div{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;background:#fff;font-size:.78rem}.audio-transcription-diagnostics span{color:#65788f}.audio-transcription-diagnostics strong{text-align:right;overflow-wrap:anywhere}@media(max-width:700px){.audio-transcription-diagnostics>[data-transcription-diagnostics]{grid-template-columns:1fr}}


/* v1.45.2 - Modale trascrizione più ampia, proporzionata e funzionale */
.audio-transcription-modal{padding:20px}
.audio-transcription-dialog{width:min(1120px,calc(100vw - 40px));height:min(820px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);display:grid;grid-template-rows:auto auto auto auto auto minmax(180px,1fr) auto;overflow:hidden;padding:22px 24px;border:1px solid rgba(151,173,201,.45)}
.audio-transcription-dialog header{align-items:flex-start;padding-bottom:10px}
.audio-transcription-dialog header h2{font-size:1.65rem;line-height:1.1}
.audio-transcription-privacy{margin:8px 0 10px}
.audio-transcription-progress{margin:0 0 10px}
.audio-transcription-steps{margin:0 0 10px}
.audio-transcription-diagnostics{margin:0 0 10px;max-height:150px;overflow:auto}
.audio-transcription-editor-label{margin:0 0 7px}
.audio-transcription-dialog textarea{min-height:0;height:100%;max-height:none;resize:none;border:1px solid #b9cce3;background:#fff;padding:17px 18px;font-size:1rem;line-height:1.55;box-shadow:inset 0 1px 2px rgba(20,51,88,.04)}
.audio-transcription-dialog textarea:focus{outline:3px solid rgba(13,111,232,.14);border-color:#0d6fe8}
.audio-transcription-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:12px;padding:12px 0 0;border-top:1px solid #e3ebf5;position:static;background:#fff}
.audio-transcription-actions>span{flex:1 1 auto}
.audio-transcription-actions .btn{min-height:44px;white-space:nowrap}
.audio-transcription-actions [data-cancel-transcription]{margin-right:auto}
.audio-transcription-actions [data-save-transcription]{min-width:180px}
@media(max-width:900px){.audio-transcription-dialog{width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);padding:16px;grid-template-rows:auto auto auto auto auto minmax(150px,1fr) auto}.audio-transcription-modal{padding:12px}.audio-transcription-steps>div span{font-size:.7rem}.audio-transcription-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.audio-transcription-actions>span{display:none}.audio-transcription-actions .btn{width:100%}.audio-transcription-actions [data-save-transcription]{min-width:0}}
@media(max-width:560px){.audio-transcription-modal{padding:0}.audio-transcription-dialog{width:100%;height:100dvh;max-height:100dvh;border-radius:0;padding:14px}.audio-transcription-privacy{font-size:.86rem}.audio-transcription-actions{grid-template-columns:1fr}.audio-transcription-steps{grid-template-columns:repeat(5,minmax(72px,1fr));overflow-x:auto}.audio-transcription-dialog textarea{font-size:.95rem}}

/* v1.45.3 - sincronizzazione trascrizione/testo di accompagnamento */
.audio-transcription-sync-choice{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #f4c879;background:#fff8e8;border-radius:14px;color:#6d4b00}
.audio-transcription-sync-choice>div:first-child{display:flex;align-items:flex-start;gap:10px}.audio-transcription-sync-choice span{display:grid;gap:3px}.audio-transcription-sync-choice small{color:#7a6841}.audio-transcription-sync-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:900px){.audio-transcription-sync-choice{align-items:stretch;flex-direction:column}.audio-transcription-sync-actions{display:grid;grid-template-columns:1fr}.audio-transcription-sync-actions .btn{width:100%}}

/* v1.45.7 - selezione modello Whisper e modalità alta precisione */
.audio-transcription-options{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:12px;align-items:stretch;margin:0 0 10px}.audio-transcription-options label{display:grid;gap:7px;padding:12px 14px;border:1px solid #cfe0f2;border-radius:14px;background:#f8fbff}.audio-transcription-options label>span{font-weight:800;color:#173f68}.audio-transcription-options select{width:100%;min-height:44px;border:1px solid #b8cce3;border-radius:10px;background:#fff;padding:9px 38px 9px 12px;font:inherit;font-weight:700;color:#163d67}.audio-transcription-options select:focus{outline:3px solid rgba(13,111,232,.14);border-color:#0d6fe8}.audio-transcription-model-note{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #f2d493;border-radius:14px;background:#fff9e9;color:#6b4b08;line-height:1.45}.audio-transcription-model-note i{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#ffe7a8;color:#7a5200}.audio-transcription-modal.is-processing .audio-transcription-options{opacity:.72}.audio-transcription-dialog{grid-template-rows:auto auto auto auto auto auto minmax(180px,1fr) auto}@media(max-width:900px){.audio-transcription-options{grid-template-columns:1fr}.audio-transcription-dialog{grid-template-rows:auto auto auto auto auto auto minmax(150px,1fr) auto}}@media(max-height:820px) and (min-width:901px){.audio-transcription-options{grid-template-columns:minmax(240px,320px) minmax(0,1fr)}.audio-transcription-options label,.audio-transcription-model-note{padding:9px 11px}.audio-transcription-options select{min-height:40px}}

/* v1.45.8 - modale compatta e validazione qualità Whisper */
.audio-transcription-dialog{
  grid-template-rows:auto auto auto auto auto auto minmax(250px,1fr) auto;
}
.audio-transcription-editor-label{align-self:end}
.audio-transcription-dialog textarea{
  min-height:250px;
  height:100%;
  max-height:none;
}
.audio-transcription-diagnostics:not([open]){max-height:44px;overflow:hidden}
.audio-transcription-diagnostics[open]{max-height:180px;overflow:auto}
@media(max-height:820px) and (min-width:901px){
  .audio-transcription-dialog{grid-template-rows:auto auto auto auto auto auto minmax(190px,1fr) auto}
  .audio-transcription-dialog textarea{min-height:190px}
}
@media(max-width:900px){
  .audio-transcription-dialog{grid-template-rows:auto auto auto auto auto auto minmax(180px,1fr) auto}
  .audio-transcription-dialog textarea{min-height:180px}
}


/* v1.45.9 - diagnostica più leggibile e ripristino Base stabile */
.audio-transcription-diagnostics[open]{max-height:330px;min-height:170px;overflow:auto}
.audio-transcription-diagnostics[open]>[data-transcription-diagnostics]{min-height:126px}
@media(max-height:820px) and (min-width:901px){.audio-transcription-diagnostics[open]{max-height:260px;min-height:150px}}
@media(max-width:900px){.audio-transcription-diagnostics[open]{max-height:300px;min-height:160px}}


/* v1.45.10 - motore locale whisper.cpp WASM */
.audio-transcription-engine-card{grid-template-columns:minmax(250px,.85fr) minmax(360px,1.15fr)}
.audio-transcription-engine-card>div:first-child{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid #cfe0f5;border-radius:14px;background:#f7fbff}
.audio-transcription-engine-card>div:first-child span{font-size:.78rem;color:#58708f;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.audio-transcription-engine-card>div:first-child strong{font-size:1rem;color:#12345b}
.audio-transcription-engine-card>div:first-child small{color:#60738c;line-height:1.35}
.audio-transcription-diagnostics[open] [data-transcription-diagnostics]{max-height:180px;min-height:112px;overflow:auto}
@media(max-width:820px){.audio-transcription-engine-card{grid-template-columns:1fr}}


/* v1.45.19 - ritorno al motore Whisper Base stabile della 1.45.6 */
.audio-transcription-engine-card,.audio-transcription-options{display:none!important}
.audio-transcription-dialog{grid-template-rows:auto auto auto auto minmax(220px,1fr) auto}
.audio-transcription-diagnostics[open]{min-height:170px;max-height:330px;overflow:auto}
.audio-transcription-dialog textarea{min-height:220px;height:100%;max-height:none}
@media(max-height:820px){.audio-transcription-dialog{grid-template-rows:auto auto auto auto minmax(170px,1fr) auto}.audio-transcription-dialog textarea{min-height:170px}}


/* v1.45.21 - diagnostica sempre visibile e spazio centrale distribuito */
.audio-transcription-dialog{
  grid-template-rows:auto auto auto minmax(180px,220px) auto minmax(180px,1fr) auto;
}
.audio-transcription-diagnostics{
  margin:0 0 10px;
}
.audio-transcription-diagnostics[open]{
  min-height:180px;
  max-height:220px;
  overflow:hidden;
  display:grid;
  grid-template-rows:auto minmax(138px,1fr);
}
.audio-transcription-diagnostics[open]>[data-transcription-diagnostics]{
  min-height:138px;
  max-height:none;
  overflow:auto;
  align-content:start;
}
.audio-transcription-editor-label{align-self:auto;margin:0 0 7px}
.audio-transcription-dialog textarea{min-height:180px}
@media(max-height:820px) and (min-width:901px){
  .audio-transcription-dialog{grid-template-rows:auto auto auto minmax(160px,190px) auto minmax(150px,1fr) auto}
  .audio-transcription-diagnostics[open]{min-height:160px;max-height:190px;grid-template-rows:auto minmax(118px,1fr)}
  .audio-transcription-diagnostics[open]>[data-transcription-diagnostics]{min-height:118px}
  .audio-transcription-dialog textarea{min-height:150px}
}
@media(max-width:900px){
  .audio-transcription-dialog{grid-template-rows:auto auto auto minmax(160px,200px) auto minmax(150px,1fr) auto}
  .audio-transcription-diagnostics[open]{min-height:160px;max-height:200px;grid-template-rows:auto minmax(118px,1fr)}
  .audio-transcription-diagnostics[open]>[data-transcription-diagnostics]{min-height:118px}
}

/* Riordino immagini della presentazione narrata */
.presentation-sort-help{display:flex;align-items:center;gap:9px;margin-top:13px;padding:9px 11px;border:1px solid #dbe8f6;border-radius:10px;background:#f8fbff;color:#56708e;font-size:12px}.presentation-sort-help>i{color:var(--b-blue)}.presentation-sort-help>span{flex:1}.presentation-sort-help>strong{font-size:11px;white-space:nowrap}.presentation-sort-help>strong.is-saving{color:#9a6a00}.presentation-sort-help>strong.is-saved{color:#19713b}.presentation-sort-help>strong.is-error{color:#b42318}.presentation-editor-item[draggable="true"]{cursor:grab;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,opacity .15s ease}.presentation-editor-item[draggable="true"]:active{cursor:grabbing}.presentation-editor-item.is-dragging{opacity:.48;transform:scale(.97);border-color:#3182df;box-shadow:0 10px 24px rgba(8,101,217,.18)}.presentation-editor-grid.is-sorting .presentation-editor-item:not(.is-dragging){transition:transform .12s ease}.presentation-drag-handle{position:absolute;top:14px;right:14px;width:27px;height:27px;border-radius:8px;background:rgba(255,255,255,.94);border:1px solid #cddff1;color:#4f6f92;display:grid;place-items:center;z-index:2;box-shadow:0 2px 7px rgba(17,54,91,.12);pointer-events:none}.presentation-editor-item:hover .presentation-drag-handle{color:var(--b-blue);border-color:#8ebbe9}@media(max-width:760px){.presentation-sort-help{align-items:flex-start;flex-wrap:wrap}.presentation-sort-help>strong{width:100%;padding-left:23px}}

/* Anteprima ingrandita delle immagini della presentazione narrata */
.presentation-preview-button{position:absolute;right:14px;bottom:61px;width:31px!important;height:31px;border:1px solid #bdd4eb;border-radius:9px;background:rgba(255,255,255,.96);color:#0865d9;display:grid;place-items:center;z-index:3;box-shadow:0 3px 10px rgba(17,54,91,.16);cursor:pointer;opacity:0;transform:translateY(3px);transition:opacity .15s ease,transform .15s ease,background .15s ease}.presentation-editor-item:hover .presentation-preview-button,.presentation-preview-button:focus-visible{opacity:1;transform:none}.presentation-preview-button:hover{background:#eaf4ff}.presentation-preview-modal{position:fixed;inset:0;z-index:10050;background:rgba(4,20,39,.78);backdrop-filter:blur(4px);display:grid;place-items:center;padding:28px}.presentation-preview-modal.is-hidden{display:none}.presentation-preview-modal>section{width:min(1180px,96vw);height:min(820px,92vh);background:#fff;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.35);display:flex;flex-direction:column;overflow:hidden}.presentation-preview-modal header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;border-bottom:1px solid #dce7f2}.presentation-preview-modal header h2{margin:3px 0 0;color:var(--b-navy);font-size:18px}.presentation-preview-modal header button{width:40px;height:40px;border:1px solid #d3e0ec;border-radius:10px;background:#fff;color:#244d7a;font-size:18px;cursor:pointer}.presentation-preview-stage{flex:1;min-height:0;overflow:auto;display:flex;align-items:center;justify-content:center;padding:24px;background:#eef3f8}.presentation-preview-stage img{max-width:100%;max-height:100%;object-fit:contain;transform-origin:center center;transition:transform .08s linear;box-shadow:0 8px 28px rgba(17,54,91,.2);background:#fff}.presentation-preview-modal footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-top:1px solid #dce7f2;color:#667d96;font-size:12px}.presentation-preview-open{overflow:hidden}@media(max-width:760px){.presentation-preview-button{opacity:1;transform:none}.presentation-preview-modal{padding:10px}.presentation-preview-modal>section{width:100%;height:94vh}.presentation-preview-modal footer{align-items:flex-start;flex-direction:column}}

.narration-vimeo-source{width:min(100%,1100px);aspect-ratio:16/9;max-height:100%;background:#000;border-radius:10px;overflow:hidden;box-shadow:0 8px 26px rgba(8,47,99,.18)}.narration-vimeo-source iframe{display:block;width:100%;height:100%;min-height:0;border:0;border-radius:0;box-shadow:none;background:#000}


/* Riordino diapositive della lezione */
.slides-order-help{display:grid;grid-template-columns:auto 1fr;gap:8px 9px;align-items:center;margin:0 0 10px;padding:9px 10px;border-radius:10px;background:#f4f8fd;color:#58708d;font-size:11px;line-height:1.35}.slides-order-help>i{color:var(--b-blue)}.slides-order-help>[data-slide-order-status]{grid-column:1/-1;min-height:0;font-size:11px;font-weight:800;text-align:right}.slides-order-help>[data-slide-order-status]:empty{display:none}.slides-order-help>[data-slide-order-status][data-state="saving"]{color:#52708f}.slides-order-help>[data-slide-order-status][data-state="success"]{color:#16845b}.slides-order-help>[data-slide-order-status][data-state="error"]{color:var(--b-danger)}
.slide-list-item[draggable="true"]{cursor:grab;position:relative;user-select:none}.slide-list-item[draggable="true"]:active{cursor:grabbing}.slide-drag-handle{width:18px;align-self:stretch;display:grid;place-items:center;color:#91a3b8;flex:0 0 auto}.slide-list-item:hover .slide-drag-handle,.slide-list-item.active .slide-drag-handle{color:var(--b-blue)}.slide-list-item.is-dragging{opacity:.38;border-style:dashed;box-shadow:none}.slides-list.is-sorting .slide-list-item:not(.is-dragging){transition:transform .12s ease,border-color .12s ease,background .12s ease}.slides-list.is-saving{pointer-events:none;opacity:.88}

/* Riordino diapositive: conferma visiva del salvataggio */
.slides-list.is-saving{opacity:.72;pointer-events:none}
.slides-list.is-saved .slide-list-item{animation:slide-order-saved .65s ease}
.slides-order-help [data-slide-order-status][data-state="saving"]{color:#8a5a00}
.slides-order-help [data-slide-order-status][data-state="success"]{color:#16845b}
.slides-order-help [data-slide-order-status][data-state="error"]{color:#b42318}
@keyframes slide-order-saved{0%{box-shadow:0 0 0 0 rgba(22,132,91,.28)}100%{box-shadow:0 0 0 8px rgba(22,132,91,0)}}

.watermark-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.watermark-mode-option{display:flex;gap:13px;align-items:flex-start;padding:16px;border:1px solid #dce6f2;border-radius:14px;background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.watermark-mode-option:hover{border-color:#8ebcf0}.watermark-mode-option.is-selected{border-color:#0865d9;background:#f1f7ff;box-shadow:0 0 0 3px rgba(8,101,217,.08)}.watermark-mode-option input{margin-top:4px}.watermark-mode-icon{width:38px;height:38px;border-radius:11px;background:#eaf3ff;color:#0865d9;display:grid;place-items:center;flex:0 0 auto}.watermark-mode-option strong,.watermark-mode-option small{display:block}.watermark-mode-option strong{color:#10254b;margin-bottom:5px}.watermark-mode-option small{color:#687991;line-height:1.45}@media(max-width:900px){.watermark-mode-grid{grid-template-columns:1fr}}

/* Lesson settings drawer 1.45.59 */
.lesson-builder{grid-template-columns:280px minmax(0,1fr)}
.lesson-settings-summary{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--b-border);border-radius:15px;padding:13px 15px;margin:0 0 18px;box-shadow:0 5px 18px rgba(16,37,75,.035)}
.lesson-settings-summary-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:#eaf3ff;color:var(--b-blue);flex:0 0 auto}
.lesson-settings-summary-copy{min-width:0;flex:1}.lesson-settings-summary-copy strong,.lesson-settings-summary-copy small{display:block}.lesson-settings-summary-copy strong{color:var(--b-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-settings-summary-copy small{color:var(--b-muted);margin-top:3px;line-height:1.35}
.lesson-settings-drawer{position:fixed;inset:0;z-index:12000;visibility:hidden;pointer-events:none}.lesson-settings-drawer.is-open{visibility:visible;pointer-events:auto}.lesson-settings-drawer-backdrop{position:absolute;inset:0;background:rgba(12,29,52,.55);opacity:0;transition:opacity .22s ease;backdrop-filter:blur(2px)}.lesson-settings-drawer.is-open .lesson-settings-drawer-backdrop{opacity:1}
.lesson-settings-drawer-panel{position:absolute;right:0;top:0;height:100%;width:min(440px,calc(100% - 24px));background:#fff;box-shadow:-18px 0 55px rgba(16,37,75,.22);padding:24px;overflow:auto;transform:translateX(102%);transition:transform .24s ease;outline:none}.lesson-settings-drawer.is-open .lesson-settings-drawer-panel{transform:translateX(0)}
.lesson-settings-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--b-border)}.lesson-settings-drawer-head h2{margin:3px 0 5px;color:var(--b-navy);font-size:27px}.lesson-settings-drawer-head p{margin:0;color:var(--b-muted);font-size:13px;line-height:1.45}.lesson-settings-drawer-close{width:40px;height:40px;border:0;border-radius:50%;background:#edf3fa;color:var(--b-navy);cursor:pointer;flex:0 0 auto}
.lesson-settings-drawer-form{min-height:calc(100% - 110px)}.lesson-settings-drawer-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:auto;padding-top:20px;border-top:1px solid var(--b-border);position:sticky;bottom:-24px;background:#fff;padding-bottom:24px}.lesson-settings-drawer-form .privacy-mini-note{margin-top:4px}
body.lesson-settings-open{overflow:hidden}
@media(max-width:820px){.lesson-settings-summary{align-items:flex-start;flex-wrap:wrap}.lesson-settings-summary-copy{min-width:calc(100% - 55px)}.lesson-settings-summary>.btn{width:100%;justify-content:center}.lesson-settings-drawer-panel{width:100%;max-width:none;padding:20px}.lesson-settings-drawer-actions{bottom:-20px;padding-bottom:20px}.lesson-settings-drawer-actions .btn{flex:1;justify-content:center}}


/* Mobile users cards 1.45.60 */
.mobile-action-label{display:none}
@media(max-width:760px){
 .page-head{align-items:stretch;gap:14px}
 .page-head>.btn{width:100%;justify-content:center}
 .user-filter-bar{margin:14px 0;gap:9px}
 .user-filter-bar select,.course-search-box{min-height:46px}
 .users-table-wrap{background:transparent;border:0;border-radius:0;overflow:visible}
 .users-table{display:block;min-width:0;width:100%}
 .users-table thead{display:none}
 .users-table tbody{display:grid;gap:12px}
 .users-table tr[data-user-row]{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--b-border);border-radius:16px;padding:15px;box-shadow:0 5px 18px rgba(24,54,88,.055);overflow:hidden}
 .users-table tr[data-user-row].is-hidden{display:none}
 .users-table td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;padding:10px 0;border-bottom:1px solid #edf2f8;text-align:right}
 .users-table td::before{content:attr(data-label);flex:0 0 auto;color:var(--b-muted);font-size:11px;font-weight:800;letter-spacing:.045em;text-transform:uppercase;text-align:left}
 .users-table td.user-identity-cell{grid-column:1/-1;display:block;padding:0 0 13px;text-align:left}
 .users-table td.user-identity-cell::before{display:none}
 .users-table td.user-identity-cell strong{font-size:16px;line-height:1.3;color:var(--b-navy);overflow-wrap:anywhere}
 .users-table td.user-identity-cell small{font-size:13px;overflow-wrap:anywhere}
 .users-table td.user-identity-cell span{font-size:12px}
 .users-table td:nth-child(2),.users-table td:nth-child(5){grid-column:1/-1}
 .users-table td:nth-child(2){text-align:right;overflow-wrap:anywhere}
 .users-table td.user-actions-cell{grid-column:1/-1;display:block;padding:13px 0 0;border-bottom:0}
 .users-table td.user-actions-cell::before{display:none}
 .user-row-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}
 .user-row-actions form{display:block;width:100%}
 .user-row-actions .btn,.user-row-actions .user-preview-button{width:100%;height:42px;min-height:42px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:10px;padding:0 10px;font-size:12px;font-weight:800}
 .user-row-actions .activity-timeline-button{padding:0 8px}
 .mobile-action-label{display:inline}
 .user-protected-note{display:flex;justify-content:center;align-items:center;gap:7px;padding:11px;border-radius:10px;background:#f4f7fb}
}
@media(max-width:390px){
 .users-table tr[data-user-row]{grid-template-columns:1fr;padding:13px}
 .users-table td:nth-child(n){grid-column:1}
 .users-table td.user-identity-cell,.users-table td.user-actions-cell{grid-column:1}
 .user-row-actions{grid-template-columns:1fr 1fr}
 .user-row-actions .user-open-button{grid-column:1/-1}
}

/* Mobile certificate and order cards 1.45.61 */
@media(max-width:760px){
 .certificate-table-wrap,.orders-table-wrap{background:transparent;border:0;border-radius:0;overflow:visible}
 .orders-panel-card{background:transparent;border:0;overflow:visible}
 .certificate-mobile-table,.orders-mobile-table{display:block;min-width:0;width:100%}
 .certificate-mobile-table thead,.orders-mobile-table thead{display:none}
 .certificate-mobile-table tbody,.orders-mobile-table tbody{display:grid;gap:12px}
 .certificate-mobile-table tr[data-certificate-row],.orders-mobile-table tr[data-order-row]{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--b-border);border-radius:16px;padding:15px;box-shadow:0 5px 18px rgba(24,54,88,.055);overflow:hidden}
 .certificate-mobile-table td,.orders-mobile-table td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;padding:10px 0;border-bottom:1px solid #edf2f8;text-align:right;overflow-wrap:anywhere}
 .certificate-mobile-table td::before,.orders-mobile-table td::before{content:attr(data-label);flex:0 0 auto;color:var(--b-muted);font-size:11px;font-weight:800;letter-spacing:.045em;text-transform:uppercase;text-align:left}
 .certificate-mobile-table td.certificate-identity-cell,.orders-mobile-table td.order-identity-cell{grid-column:1/-1;display:block;padding:0 0 13px;text-align:left}
 .certificate-mobile-table td.certificate-identity-cell::before,.orders-mobile-table td.order-identity-cell::before{display:none}
 .certificate-mobile-table .certificate-identity-cell strong,.orders-mobile-table .order-identity-cell strong{display:block;color:var(--b-navy);font-size:16px;line-height:1.3;overflow-wrap:anywhere}
 .certificate-mobile-table .certificate-identity-cell small,.orders-mobile-table .order-identity-cell small{display:block;color:var(--b-muted);font-size:13px;margin-top:4px;overflow-wrap:anywhere}
 .certificate-mobile-table td:nth-child(2),.certificate-mobile-table td.certificate-code-cell,.orders-mobile-table td.order-student-cell,.orders-mobile-table td:nth-child(3){grid-column:1/-1}
 .certificate-mobile-table .certificate-code-cell code{max-width:68%;white-space:normal;word-break:break-all;text-align:right;font-size:11px}
 .orders-mobile-table .order-student-cell small{display:block;color:var(--b-muted);margin-top:4px}
 .certificate-mobile-table td.certificate-actions-cell,.orders-mobile-table td.order-actions-cell{grid-column:1/-1;display:block;padding:13px 0 0;border-bottom:0}
 .certificate-mobile-table td.certificate-actions-cell::before,.orders-mobile-table td.order-actions-cell::before{display:none}
 .certificate-mobile-table .table-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
 .certificate-mobile-table .table-actions .btn,.orders-mobile-table .order-actions-cell .btn{width:100%;min-height:42px;justify-content:center}
 .orders-mobile-table .order-actions-cell form{width:100%;margin:0}
 .orders-mobile-table .order-actions-cell .muted-copy{display:block;text-align:center;padding:10px;background:#f5f7fa;border-radius:10px}
}
@media(max-width:390px){
 .certificate-mobile-table tr[data-certificate-row],.orders-mobile-table tr[data-order-row]{grid-template-columns:1fr;padding:13px}
 .certificate-mobile-table td:nth-child(n),.orders-mobile-table td:nth-child(n){grid-column:1}
 .certificate-mobile-table td.certificate-identity-cell,.certificate-mobile-table td.certificate-actions-cell,.orders-mobile-table td.order-identity-cell,.orders-mobile-table td.order-actions-cell{grid-column:1}
}

/* Refined mobile order cards 1.45.62 */
.order-mobile-status{display:none}
.order-payment-summary small{display:block;margin-top:5px;color:var(--b-muted);font-size:12px}
@media(max-width:760px){
 .orders-mobile-table tbody{gap:14px}
 .orders-mobile-table tr[data-order-row]{display:block;padding:0;border-radius:18px;box-shadow:0 7px 24px rgba(24,54,88,.075)}
 .orders-mobile-table td{padding:13px 16px}
 .orders-mobile-table td.order-identity-cell{padding:15px 16px;background:linear-gradient(135deg,#f6f9fd 0%,#fff 100%);border-bottom:1px solid #e7edf5}
 .order-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
 .order-number-wrap{display:flex;align-items:center;gap:11px;min-width:0}
 .order-card-icon{display:flex;align-items:center;justify-content:center;flex:0 0 39px;width:39px;height:39px;border-radius:12px;background:rgba(36,91,154,.1);color:var(--b-primary);font-size:16px}
 .orders-mobile-table .order-identity-cell strong{font-size:15px}
 .orders-mobile-table .order-identity-cell small{display:flex;align-items:center;gap:6px;font-size:12px}
 .order-mobile-status{display:inline-flex;flex:0 0 auto;max-width:48%;text-align:center;justify-content:center;white-space:normal;line-height:1.2;padding:7px 9px}
 .orders-mobile-table td.order-student-cell,.orders-mobile-table td.order-content-cell{display:flex;grid-column:auto;padding-top:13px;padding-bottom:13px}
 .order-detail-value{min-width:0;text-align:right;font-size:13px;line-height:1.4}
 .order-detail-value strong{display:block;color:var(--b-navy);font-size:14px}
 .order-detail-value small{font-size:12px}
 .order-items-text{max-width:66%;font-weight:700;color:var(--b-navy)}
 .orders-mobile-table td.order-total-cell{background:#f8fafc}
 .order-total-value{color:var(--b-navy);font-size:18px;letter-spacing:-.02em}
 .order-total-value small{font-size:11px;letter-spacing:.04em;color:var(--b-muted)}
 .orders-mobile-table td.order-payment-cell{background:#f8fafc;border-bottom:0}
 .order-payment-summary{text-align:right}
 .order-payment-summary .order-desktop-status{display:none}
 .order-payment-summary small{margin:0;display:flex;align-items:center;justify-content:flex-end;gap:6px}
 .orders-mobile-table td.order-actions-cell{padding:13px 16px 16px;border-top:1px solid #edf2f8}
 .orders-mobile-table .order-actions-cell .btn{height:44px;border-radius:11px;font-size:13px}
 .orders-mobile-table .order-actions-cell .muted-copy{display:flex;align-items:center;justify-content:center;gap:7px;color:#52706a;background:#eef8f4;font-weight:700}
 .status-pill.is-success{background:#e8f7ef;color:#19734b}
 .status-pill.is-warning{background:#fff4d8;color:#8a6200}
 .status-pill.is-danger{background:#fdecec;color:#a52c2c}
 .status-pill.is-neutral{background:#eef2f6;color:#536273}
}
@media(max-width:390px){
 .order-card-heading{align-items:stretch;flex-direction:column}
 .order-mobile-status{max-width:none;align-self:flex-start}
 .orders-mobile-table td{display:block;text-align:left}
 .orders-mobile-table td::before{display:block;margin-bottom:5px}
 .order-detail-value,.order-payment-summary{text-align:left}
 .order-items-text{max-width:none}
 .order-payment-summary small{justify-content:flex-start}
}


/* Editor lezione responsive smartphone 1.45.65 */
.lesson-mobile-toolbar,.lesson-mobile-actions,.slides-panel-close,.lesson-slide-sequence-backdrop{display:none}
.slides-panel-head-actions{display:flex;align-items:center;gap:8px}
@media(max-width:820px){
 body.lesson-sequence-open{overflow:hidden}
 .lesson-page-head{gap:10px}
 .lesson-page-head .page-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
 .lesson-page-head .page-actions .btn{width:100%;justify-content:center;min-width:0}
 .lesson-settings-summary{display:none}
 .lesson-test-hint{margin-bottom:10px}
 .lesson-mobile-toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:sticky;top:0;z-index:120;background:#fff;border:1px solid var(--b-border);border-radius:14px;padding:5px;margin:0 0 12px;box-shadow:0 7px 22px rgba(16,37,75,.10)}
 .lesson-mobile-tool{position:relative;min-width:0;border:0;background:transparent;color:#637994;border-radius:10px;padding:9px 5px;display:flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
 .lesson-mobile-tool i{font-size:15px}.lesson-mobile-tool.is-active{background:#eaf3ff;color:var(--b-blue)}
 .lesson-mobile-tool strong{min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#edf2f8;color:#49617d;display:grid;place-items:center;font-size:10px}
 .lesson-builder{display:block;min-width:0}
 .lesson-slide-sequence-backdrop{display:block;position:fixed;inset:0;z-index:12020;background:rgba(12,29,52,.55);backdrop-filter:blur(2px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}
 body.lesson-sequence-open .lesson-slide-sequence-backdrop{opacity:1;visibility:visible;pointer-events:auto}
 .lesson-builder .slides-panel{display:flex;flex-direction:column;position:fixed;inset:0;z-index:12030;width:100%;max-width:none;height:100dvh;margin:0;border-radius:0;padding:18px;background:#f7faff;transform:translateX(-102%);transition:transform .24s ease;overflow:hidden;box-shadow:16px 0 48px rgba(16,37,75,.22)}
 .lesson-builder .slides-panel.is-open{transform:translateX(0)}
 .slides-panel-close{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#e8f0f9;color:var(--b-navy);font-size:17px;cursor:pointer}
 .slides-panel .panel-heading{flex:0 0 auto;margin-bottom:12px}
 .slides-panel .slides-order-help{flex:0 0 auto}
 .slides-panel .slides-list{flex:1;min-height:0;max-height:none;overflow:auto;padding:2px 3px 12px}
 .slides-panel .slide-list-item{min-height:62px;padding:10px 11px;background:#fff}
 .slides-panel .compact-form{flex:0 0 auto;position:sticky;bottom:0;background:#f7faff;padding-top:10px;margin-top:0}
 .slide-editor-panel{width:100%;min-width:0;border-radius:14px;padding:14px}
 .slide-editor-panel .panel-heading{align-items:center;gap:8px}.slide-editor-panel .panel-heading .js-primary-save{display:none}
 .slide-editor-form,.slide-editor-form section,.slide-editor-form .field,.slide-editor-form input,.slide-editor-form textarea,.slide-editor-form select{max-width:100%;min-width:0}
 .slide-type-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.slide-type-picker .layout-option{min-width:0;padding:10px 6px}
 .presentation-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
 .presentation-editor-item{min-width:0}
 .lesson-mobile-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:9px;position:fixed;left:0;right:0;bottom:0;z-index:11000;padding:10px max(12px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-right));background:rgba(255,255,255,.96);border-top:1px solid #dbe5f0;box-shadow:0 -9px 28px rgba(16,37,75,.12);backdrop-filter:blur(10px)}
 .lesson-mobile-actions .btn{width:100%;min-width:0;justify-content:center;min-height:45px}
 .lesson-builder{padding-bottom:76px}
 .lesson-settings-drawer{z-index:12050}.lesson-settings-drawer-panel{height:100dvh}
}
@media(max-width:420px){
 .lesson-page-head .page-actions{grid-template-columns:1fr}.lesson-page-head .page-actions .btn{min-height:43px}
 .lesson-mobile-tool{flex-direction:column;gap:3px;padding:7px 3px}.lesson-mobile-tool strong{position:absolute;top:4px;right:8px}
 .slide-editor-panel{padding:11px}.presentation-editor-grid{grid-template-columns:1fr 1fr!important}
}

.watermark-composer{margin-top:18px;padding-top:18px;border-top:1px solid #dce6f2}.watermark-composer-head h4{margin:0 0 5px;color:#10254b;font-size:16px}.watermark-composer-head h4 i{color:#0865d9;margin-right:8px}.watermark-composer-head p{margin:0;color:#687991;font-size:13px;line-height:1.5}.watermark-composer-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:18px;margin-top:16px}.watermark-fields-panel,.watermark-preview-panel{border:1px solid #dce6f2;border-radius:14px;padding:16px;background:#fbfdff}.watermark-subtitle{display:block;color:#10254b;font-weight:800;font-size:13px;margin-bottom:11px}.watermark-field-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.watermark-field-option{cursor:pointer}.watermark-field-option input{position:absolute;opacity:0;pointer-events:none}.watermark-field-option span{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid #dce6f2;border-radius:11px;background:#fff;color:#40536d;font-weight:700;transition:.18s ease}.watermark-field-option span i{width:19px;text-align:center;color:#7b8ba0}.watermark-field-option input:checked+span{border-color:#0865d9;background:#eef6ff;color:#0b4fa8;box-shadow:0 0 0 2px rgba(8,101,217,.07)}.watermark-field-option input:checked+span i{color:#0865d9}.watermark-custom-field{margin-top:15px}.watermark-preview-canvas{min-height:150px;border-radius:12px;border:1px dashed #9ebce0;background:linear-gradient(135deg,#fff,#f3f8fe);display:grid;place-items:center;overflow:hidden;padding:18px}.watermark-preview-label{max-width:95%;transform:rotate(-16deg);color:rgba(11,61,118,.38);font-weight:800;font-size:13px;text-align:center;line-height:1.45;word-break:break-word}.watermark-preview-label.is-empty{transform:none;color:#8a99ab;font-weight:600}.watermark-preview-panel>small{display:block;margin-top:9px;color:#74849a;line-height:1.4}@media(max-width:900px){.watermark-composer-grid{grid-template-columns:1fr}}@media(max-width:520px){.watermark-field-options{grid-template-columns:1fr}}

.generated-course-cover{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;text-align:center;padding:20px;overflow:hidden;background:radial-gradient(circle at 24% 22%,rgba(255,255,255,.96) 0 10%,transparent 34%),linear-gradient(145deg,#e8f3ff 0%,#f8fbff 56%,#edf6ff 100%);color:#0865d9}.generated-course-cover::before,.generated-course-cover::after{content:"";position:absolute;border-radius:999px;border:1px solid rgba(8,101,217,.10);pointer-events:none}.generated-course-cover::before{width:180px;height:180px;right:-92px;top:-112px}.generated-course-cover::after{width:130px;height:130px;left:-76px;bottom:-86px}.generated-course-cover-icon{position:relative;z-index:1;width:66px;height:66px;border-radius:20px;display:grid;place-items:center;background:#fff;border:1px solid #cfe2f7;box-shadow:0 12px 30px rgba(15,72,133,.12);color:#0865d9;font-size:30px}.generated-course-cover-brand{position:relative;z-index:1;font-size:10px!important;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#4f7398!important}.generated-course-cover-compact{gap:7px;padding:10px}.generated-course-cover-compact .generated-course-cover-icon{width:42px;height:42px;border-radius:13px;font-size:19px}.generated-course-cover-compact .generated-course-cover-brand{font-size:8px!important;letter-spacing:.12em}

/* Footer compatto v1.46.06 */
.portal-legal-footer.portal-legal-footer-compact{grid-template-columns:auto minmax(330px,1.35fr) minmax(80px,1fr) auto;gap:28px;align-items:center;padding:24px clamp(22px,3vw,38px)}
.portal-footer-logo-column{display:flex;align-items:center;justify-content:flex-start;min-width:0}
.portal-footer-logo{display:block;width:auto;height:auto;max-width:170px;max-height:58px;object-fit:contain;object-position:left center}
.portal-footer-information{display:grid;gap:3px;min-width:0;justify-items:start;text-align:left;line-height:1.25}
.portal-footer-legal-name{font-size:14px;color:#0a315f;line-height:1.2;margin:0 0 1px}
.portal-footer-information .portal-footer-company-data,.portal-footer-information .portal-footer-contacts,.portal-footer-information .portal-footer-links{justify-content:flex-start;text-align:left;line-height:1.2}
.portal-footer-information .portal-footer-links{align-items:center;margin-top:1px;line-height:1.2}
.portal-footer-information .portal-footer-links a{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#315270}
.portal-footer-information .portal-footer-links a:hover,.portal-footer-information .portal-footer-links a:focus-visible{transform:none;box-shadow:none;color:#075fca;text-decoration:underline;text-underline-offset:3px}
.portal-footer-spacer{min-height:1px}
.portal-footer-powered-simple{justify-self:end;display:grid;justify-items:end;gap:6px;white-space:nowrap;color:#617991;font-size:12px;text-align:right}
.portal-footer-powered-line{display:flex;align-items:baseline;gap:5px}
.portal-footer-powered-simple a{color:#075fca;font-size:13px;font-weight:800;text-decoration:none}
.portal-footer-powered-simple a:hover,.portal-footer-powered-simple a:focus-visible{color:#064fa8;text-decoration:underline;text-underline-offset:3px}
.portal-footer-powered-simple .portal-footer-version{font-size:11px;color:#7a8ea2;font-weight:600}
@media(max-width:1100px){.portal-legal-footer.portal-legal-footer-compact{grid-template-columns:auto minmax(0,1fr) auto}.portal-footer-spacer{display:none}.portal-footer-powered-simple{justify-self:end}}
@media(max-width:760px){.portal-legal-footer.portal-legal-footer-compact{grid-template-columns:auto minmax(0,1fr);gap:18px}.portal-footer-powered-simple{grid-column:1/-1;justify-self:start;justify-items:start;text-align:left}.portal-footer-logo{max-width:145px;max-height:50px}}
@media(max-width:520px){.portal-legal-footer.portal-legal-footer-compact{grid-template-columns:1fr}.portal-footer-logo-column,.portal-footer-information,.portal-footer-powered-simple{justify-self:start}.portal-footer-logo{max-width:165px;max-height:52px}}

.billing-request-toggle{display:flex;gap:14px;align-items:flex-start;padding:16px;border:1px solid #b8d5f5;border-radius:14px;background:#f3f8ff;cursor:pointer}.billing-request-toggle input{margin-top:4px;transform:scale(1.2)}.billing-request-toggle span,.billing-request-toggle strong,.billing-request-toggle small{display:block}.billing-request-toggle small{margin-top:4px;color:#63748a;font-weight:400}.billing-fields{margin-top:18px;padding:18px;border:1px solid #dfe7f1;border-radius:14px;background:#fbfdff}.billing-fields[hidden],.billing-business[hidden],.billing-person[hidden]{display:none!important}.billing-admin-card{margin-top:24px;padding-top:24px;border-top:1px solid #e1e8f0}

.status-login-temporary-locked{background:#fff0ed;color:#a82b1f;margin-top:6px;gap:5px}.login-security-card{scroll-margin-top:90px}.login-lock-state{display:flex;align-items:flex-start;gap:14px;border-radius:14px;padding:16px;margin-top:14px}.login-lock-state>i{font-size:20px;margin-top:2px}.login-lock-state strong,.login-lock-state span,.login-lock-state small{display:block}.login-lock-state span{margin-top:4px}.login-lock-state small{margin-top:6px;opacity:.78}.login-lock-state.is-locked{background:#fff3ef;border:1px solid #ffc7bc;color:#8e281d}.login-lock-state.is-clear{background:#ecf9f2;border:1px solid #bce9cf;color:#176244}.login-unlock-action{display:flex;justify-content:flex-end;margin-top:14px}

/* v1.46.42 — barriera contro dati sanitari identificativi negli upload */
.health-data-upload-guard{display:grid;grid-template-columns:48px 1fr;gap:14px;margin:0 0 20px;padding:17px;border:1px solid #edc47a;border-radius:14px;background:#fff9ed}.health-data-upload-icon{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;background:#fff0cc;color:#9b6500;font-size:20px}.health-data-upload-guard h3{margin:0 0 6px;color:#563b08}.health-data-upload-guard p{margin:0;color:#715c34;font-size:12px;line-height:1.55}.health-data-attestation{display:flex;gap:11px;align-items:flex-start;margin-top:13px;padding:12px;border:1px solid #e6c98f;border-radius:11px;background:#fff;cursor:pointer}.health-data-attestation input{width:19px;height:19px;margin-top:1px;accent-color:#0876ec;flex:0 0 auto}.health-data-attestation strong,.health-data-attestation small{display:block}.health-data-attestation strong{color:#243b58;font-size:12px;line-height:1.45}.health-data-attestation small{margin-top:4px;color:#718096;font-size:10px}@media(max-width:640px){.health-data-upload-guard{grid-template-columns:1fr}.health-data-upload-icon{width:42px;height:42px}}

.course-card-actions .course-delete-form{margin:0;display:flex}.course-delete-disabled{opacity:.46}.course-card-actions{flex-wrap:wrap}
\n\n/* v1.46.51 — lettura cromatica degli stati nella tabella ordini */
.orders-status-legend{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin:10px 4px 12px;color:#536981;font-size:11px;font-weight:700}
.orders-status-legend span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.orders-status-legend i{width:10px;height:10px;border-radius:50%;border:1px solid rgba(15,46,82,.12);box-shadow:0 0 0 2px rgba(255,255,255,.8)}
.orders-status-legend .is-paid i{background:#bfead1}.orders-status-legend .is-withdrawal-kept i{background:#d9ccff}.orders-status-legend .is-pending i{background:#ffe5a6}.orders-status-legend .is-refund-pending i{background:#ffc99f}.orders-status-legend .is-refunded i{background:#c7e4f5}.orders-status-legend .is-cancelled i{background:#ffc9c5}
.orders-mobile-table tbody tr[data-order-row]{position:relative;transition:background-color .16s ease,box-shadow .16s ease}
.orders-mobile-table tbody tr[data-order-row] td{background-color:transparent}
.orders-mobile-table tbody tr[data-order-row]::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--order-row-accent,#b7c5d5);pointer-events:none}
.orders-mobile-table tbody tr.order-row-paid{--order-row-accent:#23a463;background:#effaf4}
.orders-mobile-table tbody tr.order-row-withdrawal-kept{--order-row-accent:#7555d9;background:#f4f0ff}
.orders-mobile-table tbody tr.order-row-pending{--order-row-accent:#d99a13;background:#fff9e9}
.orders-mobile-table tbody tr.order-row-refund-pending{--order-row-accent:#e87421;background:#fff3e9}
.orders-mobile-table tbody tr.order-row-refund-partial{--order-row-accent:#1689bd;background:#eef9fd}
.orders-mobile-table tbody tr.order-row-refunded{--order-row-accent:#397ca8;background:#edf6fb}
.orders-mobile-table tbody tr.order-row-withdrawal{--order-row-accent:#bf3730;background:#fff0ef}
.orders-mobile-table tbody tr.order-row-cancelled{--order-row-accent:#cf4a43;background:#fff3f2}
.orders-mobile-table tbody tr.order-row-failed{--order-row-accent:#a82525;background:#ffeceb}
.orders-mobile-table tbody tr.order-row-neutral{--order-row-accent:#9aaabd;background:#f8fafc}
.orders-mobile-table tbody tr[data-order-row]:hover{box-shadow:inset 0 0 0 999px rgba(255,255,255,.22)}
@media(max-width:760px){.orders-status-legend{margin:8px 0 12px}.orders-mobile-table tbody tr[data-order-row]::before{width:6px;border-radius:18px 0 0 18px}}

/* v1.46.65 - controlli Material Design per politica 2FA */

/* Editor formattazione testo diapositiva */
.rich-text-editor{border:1px solid #c9d9ef;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 1px 2px rgba(15,43,77,.04)}
.rich-text-toolbar{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:8px 10px;background:#f5f8fc;border-bottom:1px solid #d8e3f2}
.rich-text-toolbar button,.rich-text-toolbar select{height:36px;border:1px solid transparent;border-radius:8px;background:transparent;color:#274567;font:inherit;cursor:pointer}
.rich-text-toolbar button{width:36px;display:inline-grid;place-items:center}
.rich-text-toolbar button:hover,.rich-text-toolbar button:focus-visible,.rich-text-toolbar select:hover{background:#e5effd;border-color:#bfd5f4;color:#0865d8;outline:none}
.rich-text-toolbar select{min-width:132px;padding:0 30px 0 10px;background-color:#fff;border-color:#cfdaea}
.rich-toolbar-separator{width:1px;height:24px;background:#d1dceb;margin:0 3px}
.rich-text-surface{min-height:210px;padding:14px 16px;outline:none;line-height:1.55;color:#101c2c;overflow-wrap:anywhere}
.rich-text-surface:empty:before{content:attr(data-placeholder);color:#8190a5;pointer-events:none}
.rich-text-surface h2,.rich-text-surface h3,.rich-text-surface h4{margin:.65em 0 .3em;line-height:1.25}
.rich-text-surface p{margin:.45em 0}.rich-text-surface ul,.rich-text-surface ol{padding-left:1.7em}.rich-text-surface blockquote{margin:.7em 0;padding:.65em 1em;border-left:4px solid #7db4f4;background:#f3f8ff}
.rich-text-source{display:none!important}
.student-main-text h2,.student-main-text h3,.student-main-text h4{line-height:1.25;margin:.7em 0 .35em}.student-main-text p{margin:.5em 0}.student-main-text ul,.student-main-text ol{padding-left:1.7em}.student-main-text blockquote{margin:.8em 0;padding:.7em 1em;border-left:4px solid #6faef2;background:#f4f8fe}.student-main-text a{color:#0969da;text-decoration:underline}
@media(max-width:700px){.rich-text-toolbar{gap:3px}.rich-text-toolbar select{width:100%;min-width:0}.rich-toolbar-separator{display:none}.rich-text-surface{min-height:180px}}
.rich-link-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:20px}.rich-link-modal.is-hidden{display:none}.rich-link-backdrop{position:absolute;inset:0;background:rgba(10,24,43,.55);backdrop-filter:blur(3px)}.rich-link-dialog{position:relative;width:min(480px,100%);background:#fff;border-radius:18px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.25)}.rich-link-dialog h2{margin:5px 0 8px}.rich-link-dialog p{color:#617086;margin:0 0 16px}.rich-link-dialog label{display:block;font-weight:700;margin-bottom:6px}.rich-link-dialog input{width:100%;height:46px;border:1px solid #c9d7e8;border-radius:10px;padding:0 12px;font:inherit}.rich-link-dialog input:focus{outline:3px solid rgba(20,112,225,.14);border-color:#1470e1}.rich-link-error{min-height:22px;color:#b42318;font-size:.9rem;padding-top:5px}.rich-link-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}

/* v1.46.89 - protezione modifiche non salvate nell'editor lezione */
.lesson-unsaved-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:24px}.lesson-unsaved-modal.is-hidden{display:none}.lesson-unsaved-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62);backdrop-filter:blur(4px)}.lesson-unsaved-dialog{position:relative;width:min(560px,100%);background:#fff;border-radius:24px;padding:32px;box-shadow:0 28px 80px rgba(15,23,42,.3);outline:none}.lesson-unsaved-close{position:absolute;top:18px;right:18px;width:40px;height:40px;border:0;border-radius:50%;background:#f1f5f9;color:#334155;cursor:pointer}.lesson-unsaved-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:18px;border-radius:18px;background:#e8f0fe;color:#1557b0;font-size:25px}.lesson-unsaved-dialog h2{margin:6px 0 10px;color:#0f172a}.lesson-unsaved-dialog p{margin:0;color:#475569;line-height:1.6}.lesson-unsaved-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:28px}.lesson-unsaved-modal-open{overflow:hidden}@media(max-width:680px){.lesson-unsaved-dialog{padding:26px 20px 20px;border-radius:20px}.lesson-unsaved-actions{display:grid;grid-template-columns:1fr}.lesson-unsaved-actions .btn{width:100%}}

/* v1.46.94 — Bozze multi-diapositiva e salvataggio cumulativo */
.slide-editor-save-actions{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}.slide-list-item{position:relative}.slide-list-item.has-local-draft{border-color:#f2b84b;background:#fffaf0}.slide-list-item.has-local-draft.active{box-shadow:0 0 0 2px rgba(242,184,75,.22)}.slide-draft-badge{display:inline-flex;align-items:center;gap:.3rem;margin-left:auto;padding:.24rem .42rem;border-radius:999px;background:#fff0c2;color:#7a4c00;font-size:.66rem;font-weight:800;white-space:nowrap}@media(max-width:900px){.slide-editor-save-actions{width:100%}.slide-editor-save-actions .btn{flex:1}.slide-draft-badge span{display:none}.lesson-mobile-actions{flex-wrap:wrap}.lesson-mobile-actions .btn{flex:1 1 30%}}

/* v1.46.95 — salvataggio cumulativo robusto dei contenuti multimediali */


/* Navigazione dinamica tra le diapositive */
body.lesson-slide-loading .slide-editor-panel {
  position: relative;
  pointer-events: none;
}
body.lesson-slide-loading .slide-editor-panel::after {
  content: "Caricamento diapositiva…";
  position: absolute;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  min-height: 240px;
  border-radius: inherit;
  background: color-mix(in srgb, var(--surface, #fff) 88%, transparent);
  backdrop-filter: blur(2px);
  font-weight: 700;
  color: var(--primary, #3157d5);
}
.slide-list-item.is-loading-target {
  outline: 2px solid color-mix(in srgb, var(--primary, #3157d5) 45%, transparent);
  outline-offset: -2px;
}
.media-upload-card.has-visible-selection .media-card-title::after{content:"Modifica pronta";margin-left:auto;padding:4px 8px;border-radius:999px;background:#fff3cd;color:#72510d;font-size:10px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.media-file-info .pending-state{color:#9a6400;font-weight:800}.media-upload-card.pending-upload .file-picker{border-color:#e9b949;background:#fffaf0}.media-upload-card.pending-upload .js-preview{position:relative}.media-upload-card.pending-upload .js-preview::after{content:"Anteprima locale · salva per confermare";position:absolute;left:8px;bottom:8px;padding:5px 8px;border-radius:8px;background:rgba(15,38,74,.84);color:#fff;font-size:10px;font-weight:700;pointer-events:none}
.health-data-save-confirmation{margin:14px 0 4px;padding:14px;border:1px solid #edc47a;border-radius:13px;background:#fff9ed;text-align:left}.health-data-save-heading{display:flex;align-items:center;gap:9px;margin-bottom:8px;color:#563b08;font-size:14px}.health-data-save-heading i{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff0cc;color:#9b6500}.health-data-save-confirmation>p{margin:0;color:#715c34;font-size:11px;line-height:1.5}.health-data-save-confirmation .health-data-attestation{margin-top:11px}.health-data-save-error{margin-top:8px!important;color:#b3261e!important;font-weight:700}.slide-save-progress-dialog:has(.health-data-save-confirmation:not(.is-hidden)){width:min(620px,calc(100vw - 28px))}.slide-save-progress-dialog:has(.health-data-save-confirmation:not(.is-hidden)) .slide-save-progress-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}@media(max-width:640px){.slide-save-progress-dialog:has(.health-data-save-confirmation:not(.is-hidden)) .slide-save-progress-actions{flex-direction:column-reverse}.slide-save-progress-dialog:has(.health-data-save-confirmation:not(.is-hidden)) .slide-save-progress-actions .btn{width:100%}}

/* Course package import — Material Design */
.course-import-card{max-width:920px;background:#fff;border:1px solid #dbe4f0;border-radius:20px;box-shadow:0 10px 30px rgba(16,37,75,.08);overflow:hidden}.course-import-card *{box-sizing:border-box}.course-import-card-head{display:flex;align-items:center;gap:15px;padding:24px 26px;border-bottom:1px solid #e5ebf3;background:linear-gradient(180deg,#fff,#fbfdff)}.course-import-card-icon{width:48px;height:48px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;background:#eaf3ff;color:#0865d9;font-size:20px}.course-import-card-head h3{margin:0 0 4px;color:#10254b;font-size:22px}.course-import-card-head p{margin:0;color:#65748b;font-size:13px}.course-import-form{display:grid;gap:24px;padding:26px}.material-file-field{display:grid;gap:8px}.material-file-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.material-file-label{min-height:78px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid #b9c9dc;border-radius:14px;background:#fff;cursor:pointer;transition:border-color .18s,box-shadow .18s,background .18s}.material-file-label:hover{border-color:#7fa9d8;background:#fbfdff}.material-file-input:focus+.material-file-label{border-color:#0865d9;box-shadow:0 0 0 4px rgba(8,101,217,.12)}.material-file-leading{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#edf5ff;color:#0865d9;font-size:18px}.material-file-copy{min-width:0}.material-file-copy strong,.material-file-copy small{display:block}.material-file-copy strong{color:#10254b;font-size:14px}.material-file-copy small{margin-top:4px;color:#65748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-file-action{padding:10px 15px;border-radius:10px;background:#eaf3ff;color:#075dbf;font-size:13px;font-weight:800}.material-supporting-text{display:flex;align-items:center;gap:7px;margin:0 3px;color:#65748b;font-size:12px}.material-supporting-text i{color:#16845b}.material-section{margin:0;padding:0;border:0}.material-section legend{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;align-items:center;margin:0 0 14px}.material-section legend>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#f0f6ff;color:#0865d9}.material-section legend strong,.material-section legend small{display:block}.material-section legend strong{color:#10254b;font-size:15px}.material-section legend small{margin-top:3px;color:#65748b;font-size:12px;font-weight:500}.material-selection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.material-selection-card{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:center;min-height:70px;padding:14px 15px;border:1px solid #d4dfec;border-radius:14px;background:#fff;cursor:pointer;transition:border-color .18s,box-shadow .18s,background .18s,transform .18s}.material-selection-card:hover{border-color:#8db5e2;background:#fbfdff;transform:translateY(-1px)}.material-selection-card input{position:absolute;opacity:0;pointer-events:none}.material-checkbox{width:20px;height:20px;display:grid;place-items:center;border:2px solid #8294aa;border-radius:4px;background:#fff;color:#fff;font-size:11px;transition:all .16s}.material-checkbox i{opacity:0;transform:scale(.6);transition:all .16s}.material-selection-card:has(input:checked){border-color:#0865d9;background:#f2f7ff;box-shadow:0 0 0 2px rgba(8,101,217,.09)}.material-selection-card input:checked+.material-checkbox{border-color:#0865d9;background:#0865d9}.material-selection-card input:checked+.material-checkbox i{opacity:1;transform:scale(1)}.material-selection-card:has(input:focus-visible){box-shadow:0 0 0 4px rgba(8,101,217,.13)}.material-selection-copy{min-width:0}.material-selection-copy strong,.material-selection-copy small{display:block}.material-selection-copy strong{color:#10254b;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-selection-copy small{margin-top:5px;color:#65748b;font-size:11px}.material-selection-copy small i{font-size:6px;color:#22a06b;vertical-align:middle;margin-right:4px}.material-security-note{display:grid;grid-template-columns:42px minmax(0,1fr);gap:13px;align-items:center;padding:15px 16px;border:1px solid #f0d18a;border-radius:14px;background:#fff9ea;color:#6d4d05}.material-security-note>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff0bd;color:#8d6500}.material-security-note strong{display:block;font-size:14px}.material-security-note p{margin:3px 0 0;font-size:12px;line-height:1.45}.course-import-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:2px}.course-import-alert{max-width:920px;display:flex;align-items:center;gap:10px}.material-empty-state{display:flex;align-items:center;gap:13px;padding:18px;border:1px dashed #bbc9da;border-radius:14px;background:#fafcff;color:#65748b}.material-empty-state>i{font-size:24px;color:#8ba0b9}.material-empty-state strong,.material-empty-state span{display:block}.material-empty-state strong{color:#10254b}.material-empty-state span{font-size:12px;margin-top:3px}@media(max-width:760px){.course-import-card-head,.course-import-form{padding:20px}.material-selection-grid{grid-template-columns:1fr}.material-file-label{grid-template-columns:42px minmax(0,1fr)}.material-file-action{grid-column:1/-1;text-align:center}.course-import-actions{flex-direction:column-reverse}.course-import-actions .btn{width:100%;justify-content:center}}
.course-package-selection-status{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;padding:11px 13px;border:1px solid #b9dfcf;border-radius:12px;background:#f1fbf6;color:#176747;animation:svmStatusIn .18s ease-out}.course-package-selection-status[hidden]{display:none}.course-package-selection-status-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#dff5e9;color:#16845b}.course-package-selection-status strong,.course-package-selection-status small{display:block}.course-package-selection-status strong{font-size:13px}.course-package-selection-status small{margin-top:2px;color:#4f7465;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-package-selection-status.is-processing{border-color:#bfd5ef;background:#f3f8ff;color:#174f91}.course-package-selection-status.is-processing .course-package-selection-icon{background:#e1efff;color:#0865d9}.course-package-selection-status.is-processing small{color:#55708f}.course-import-actions .btn.is-loading,.course-card-actions .btn.is-loading{cursor:wait}.course-export-feedback{position:fixed;right:24px;bottom:24px;z-index:1200;width:min(390px,calc(100vw - 32px));display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;padding:14px 16px;border:1px solid #c9d9eb;border-radius:14px;background:#fff;box-shadow:0 16px 42px rgba(16,37,75,.18);color:#10254b;animation:svmStatusIn .2s ease-out}.course-export-feedback[hidden]{display:none}.course-export-feedback-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#eaf3ff;color:#0865d9}.course-export-feedback strong,.course-export-feedback small{display:block}.course-export-feedback strong{font-size:14px}.course-export-feedback small{margin-top:3px;color:#65748b;font-size:12px;line-height:1.4}.course-export-feedback.is-ready{border-color:#b9dfcf}.course-export-feedback.is-ready .course-export-feedback-icon{background:#dff5e9;color:#16845b}@keyframes svmStatusIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.course-export-feedback{right:16px;bottom:16px}}
.course-package-status-body{min-width:0}.course-package-progress{display:block;height:6px;margin-top:9px;overflow:hidden;border-radius:999px;background:#dbe8f6}.course-package-progress[hidden]{display:none}.course-package-progress>span{display:block;width:0;height:100%;border-radius:inherit;background:#0865d9;transition:width .18s ease}.course-package-progress-copy{display:block!important;margin-top:5px!important;color:#55708f!important}.course-package-selection-status.is-uploading{border-color:#9ec5f0;background:#eef6ff}.material-file-label.has-file{border-color:#61a886;background:#f8fffb}.material-file-input:disabled+.material-file-label{cursor:wait;opacity:.72}.course-import-form:has(.is-loading) .material-selection-card{pointer-events:none;opacity:.72}

/* 1.47.12 - file picker affidabile */
.material-file-action{border:0;font:inherit;cursor:pointer}.material-file-action:focus-visible{outline:3px solid rgba(8,101,217,.22);outline-offset:2px}.material-file-input{position:fixed!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;opacity:.01!important;pointer-events:auto!important}.material-file-label.has-file .material-file-action{background:#e5f6ed;color:#127044}.material-file-label.has-file .material-file-leading{background:#e5f6ed;color:#16845b}
/* 1.47.14 - ricostruzione completa selettore pacchetto */
.material-file-input{position:absolute!important;inline-size:1px!important;block-size:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}
.material-file-label{user-select:none}.material-file-action{display:inline-flex;align-items:center;justify-content:center;border:0;font:inherit;cursor:pointer}.material-file-input:focus-visible+.material-file-label{border-color:#0865d9;box-shadow:0 0 0 4px rgba(8,101,217,.12)}
.course-package-selection-status[data-tone="error"]{border-color:#efb8b8;background:#fff5f5;color:#982b2b}.course-package-selection-status[data-tone="error"] .course-package-selection-icon{background:#ffe1e1;color:#c43737}.course-package-selection-status[data-tone="error"] small{color:#8a5555}

/* Quiz final question images */
.quiz-question-image-field{margin:16px 0;padding:16px;border:1px solid var(--b-border);border-radius:16px;background:#f8fbff}.quiz-question-image-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.quiz-question-image-heading strong,.quiz-question-image-heading small{display:block}.quiz-question-image-heading strong{color:var(--b-navy)}.quiz-question-image-heading small{margin-top:3px;color:var(--b-muted);font-size:11px}.quiz-question-image-heading .material-symbol{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#e9f3ff;color:var(--b-blue)}.quiz-question-image-picker{display:block;border:1px dashed #8fb7e4;border-radius:13px;background:#fff;cursor:pointer;transition:.16s ease}.quiz-question-image-picker:hover{background:#f2f8ff;border-color:var(--b-blue)}.quiz-question-image-picker input{position:absolute;opacity:0;width:1px;height:1px}.quiz-question-image-picker>span{min-height:82px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;padding:14px;color:var(--b-blue);text-align:center}.quiz-question-image-picker small{color:var(--b-muted);font-weight:500}.quiz-question-image-preview{position:relative;margin-top:12px;border-radius:14px;overflow:hidden;background:#eaf0f7;border:1px solid var(--b-border)}.quiz-question-image-preview.is-hidden{display:none}.quiz-question-image-preview img{display:block;width:100%;max-height:320px;object-fit:contain}.quiz-question-image-preview .btn{position:absolute;right:10px;bottom:10px;box-shadow:0 4px 15px rgba(0,0,0,.16)}.quiz-question-list-thumb{width:52px;height:42px;object-fit:cover;border-radius:8px;border:1px solid var(--b-border);float:left;margin-right:10px}.student-question-image{margin:16px 0 18px;border-radius:16px;overflow:hidden;background:#eef2f7;border:1px solid var(--b-border)}.student-question-image img,.quiz-question-image{display:block;width:100%;max-height:520px;object-fit:contain}.quiz-question-image{margin:0 0 14px;border-radius:12px;background:#eef2f7}.student-question-card h3{font-size:21px;color:var(--b-navy);margin:12px 0 18px}

/* v1.47.16 · feedback didattici distinti per il quiz finale */
.quiz-feedback-editor{margin-top:18px;padding:18px;border:1px solid var(--b-border);border-radius:17px;background:#f8fbff}.quiz-feedback-editor-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.quiz-feedback-editor-head>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#e5f1ff;color:var(--b-blue);font-size:18px}.quiz-feedback-editor-head strong,.quiz-feedback-editor-head small{display:block}.quiz-feedback-editor-head strong{color:var(--b-navy);font-size:16px}.quiz-feedback-editor-head small{margin-top:3px;color:var(--b-muted);font-size:12px}.quiz-feedback-editor .field+ .field{margin-top:14px}.quiz-feedback-editor textarea[name="feedback_correct"]{border-left:4px solid #1b9367}.quiz-feedback-editor textarea[name="feedback_incorrect"]{border-left:4px solid #c83b31}.quiz-review-outcome{display:flex;align-items:center;gap:8px;margin:10px 0 12px}.quiz-review-card.correct .quiz-review-outcome{color:#147650}.quiz-review-card.wrong .quiz-review-outcome{color:#a82f27}.quiz-review-outcome span{margin-left:auto;color:var(--b-muted);font-size:12px;font-weight:700}.quiz-feedback-message{padding:14px 15px;border-radius:12px;line-height:1.55}.quiz-feedback-message.correct{background:#edf9f4;border:1px solid #b7e1cf;color:#205f49}.quiz-feedback-message.wrong{background:#fff3f1;border:1px solid #efc0ba;color:#82322c}.quiz-explanation-details{margin-top:12px;border:1px solid var(--b-border);border-radius:12px;background:#f7f9fc;overflow:hidden}.quiz-explanation-details summary{padding:12px 14px;cursor:pointer;font-weight:800;color:var(--b-navy)}.quiz-explanation-details>div{padding:0 14px 14px;color:#52657c;line-height:1.6}

/* v1.47.17 · quiz finale normalizzato a 100 punti */
.quiz-question-card{grid-template-columns:28px 38px minmax(0,1fr) 76px 34px 34px}
.quiz-question-points-badge{min-width:68px;padding:7px 9px;border:1px solid #bdd7f3;border-radius:11px;background:#eef6ff;text-align:center;color:var(--b-blue);line-height:1.05}
.quiz-question-points-badge strong,.quiz-question-points-badge span{display:block}
.quiz-question-points-badge strong{font-size:14px;font-weight:900}
.quiz-question-points-badge span{margin-top:3px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.quiz-points-editor{margin:16px 0;padding:16px;border:1px solid var(--b-border);border-radius:16px;background:#f8fbff}
.quiz-points-editor-head{display:flex;align-items:center;gap:11px;margin-bottom:13px}
.quiz-points-editor-head>span{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#e8f3ff;color:var(--b-blue)}
.quiz-points-editor-head strong,.quiz-points-editor-head small{display:block}
.quiz-points-editor-head strong{color:var(--b-navy)}
.quiz-points-editor-head small{margin-top:3px;color:var(--b-muted);font-size:11px}
.quiz-points-live-info{display:flex;gap:9px;align-items:flex-start;margin-top:10px;padding:11px 12px;border-radius:11px;background:#fff;border:1px solid #cfe1f4;color:#526882;font-size:12px;line-height:1.45}
.quiz-points-live-info i{color:var(--b-blue);margin-top:2px}
@media(max-width:760px){.quiz-question-card{grid-template-columns:26px 34px minmax(0,1fr) 34px 34px}.quiz-question-points-badge{grid-column:3/4;justify-self:start;margin-top:4px}.quiz-question-card .structure-edit-button{grid-row:1}.quiz-question-card .structure-edit-button:nth-last-child(2){grid-column:4}.quiz-question-card .structure-edit-button:last-child{grid-column:5}}

/* v1.47.18 · immagini domande quiz: miniatura elenco */
.quiz-question-copy{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:center}.quiz-question-copy:not(:has(.quiz-question-list-thumb)){display:block}.quiz-question-list-thumb{grid-row:1 / span 2;grid-column:1;width:64px;height:50px;object-fit:cover;border-radius:10px;border:1px solid var(--b-border);float:none;margin:0;background:#eef3f8;box-shadow:0 2px 8px rgba(16,37,75,.08)}.quiz-question-copy strong{grid-column:2}.quiz-question-copy small{grid-column:2}@media(max-width:760px){.quiz-question-list-thumb{width:52px;height:44px}.quiz-question-card{grid-template-columns:24px 34px minmax(0,1fr) 30px 30px}.quiz-question-points-badge{grid-column:3;justify-self:start}}


/* v1.47.20 · salvataggio quiz idempotente e risposta JSON pulita */
.quiz-question-form-error{display:flex;align-items:flex-start;gap:10px;margin:0 0 16px;padding:13px 14px;border:1px solid #efb4ae;border-radius:12px;background:#fff1ef;color:#a3261c;font-weight:700;line-height:1.4}.quiz-question-form-error.is-hidden{display:none}.quiz-question-form-error i{margin-top:2px}.quiz-field-invalid{border-color:#d93025!important;box-shadow:0 0 0 3px rgba(217,48,37,.12)!important;outline:none!important}.answer-correct-control.quiz-field-invalid{outline:3px solid rgba(217,48,37,.16)!important;outline-offset:3px}.quiz-question-modal-window form button[disabled]{cursor:wait;opacity:.78}


/* v1.47.22 · uniformazione punteggi quiz */
.quiz-heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.quiz-confirm-modal-window{max-width:520px}
.quiz-confirm-body{padding:8px 24px 24px;text-align:center}
.quiz-confirm-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;margin:4px auto 16px;background:#eaf3ff;color:#0969da;font-size:26px}
.quiz-confirm-body p{margin:0 0 16px;line-height:1.55}
.quiz-equalize-preview{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;margin:16px 0;border:1px solid #cfe0f5;border-radius:16px;background:#f7fbff;text-align:left}
.quiz-equalize-preview span{font-size:.9rem;color:#5f7086}
.quiz-equalize-preview strong{font-size:1.05rem;color:#064fbe;white-space:nowrap}
@media(max-width:700px){.quiz-heading-actions{width:100%;justify-content:stretch}.quiz-heading-actions .btn{flex:1}.quiz-equalize-preview{align-items:flex-start;flex-direction:column;gap:6px}}
/* v1.47.23 · importazione corsi esclusivamente a blocchi */
.course-package-inline-actions{display:flex;gap:8px;margin-top:10px}.course-package-inline-actions[hidden]{display:none}.course-package-inline-actions .btn{min-height:32px;padding:6px 10px;font-size:11px}.course-import-diagnostics{padding:16px;border:1px solid #d6e1ee;border-radius:14px;background:#f8fbff}.course-import-diagnostics-head{display:grid;grid-template-columns:40px minmax(0,1fr);gap:11px;align-items:center;margin-bottom:13px}.course-import-diagnostics-head>span{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:#e9f3ff;color:#0865d9}.course-import-diagnostics-head strong,.course-import-diagnostics-head small{display:block}.course-import-diagnostics-head strong{color:#10254b;font-size:14px}.course-import-diagnostics-head small{margin-top:3px;color:#65748b;font-size:11px}.course-import-diagnostics dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.course-import-diagnostics dl>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e1e9f3;border-radius:10px;background:#fff}.course-import-diagnostics dt{color:#65748b;font-size:11px}.course-import-diagnostics dd{margin:0;color:#10254b;font-size:11px;font-weight:800;text-align:right}.course-import-diagnostics dd.is-ok{color:#16845b}.course-import-diagnostics dd.is-error{color:#b42318}.course-import-form.is-uploading .material-file-label{pointer-events:none;opacity:.75}.course-import-form.is-uploading .course-import-actions .btn-secondary{pointer-events:none;opacity:.65}@media(max-width:760px){.course-import-diagnostics dl{grid-template-columns:1fr}.course-package-inline-actions{flex-wrap:wrap}}

/* v1.47.24 · esportazione corsi progressiva */
body.course-export-open{overflow:hidden}.course-export-progress[hidden]{display:none}.course-export-progress{position:fixed;inset:0;z-index:2100;display:grid;place-items:center;padding:20px}.course-export-progress-backdrop{position:absolute;inset:0;background:rgba(10,28,55,.58);backdrop-filter:blur(3px)}.course-export-progress-card{position:relative;width:min(620px,100%);border:1px solid #d5e1ef;border-radius:24px;background:#fff;box-shadow:0 28px 80px rgba(7,28,58,.28);padding:24px;color:#10254b}.course-export-progress-head{display:flex;gap:14px;align-items:center}.course-export-progress-head small{display:block;color:#0865d9;font-weight:800;letter-spacing:.08em;font-size:11px}.course-export-progress-head h2{margin:3px 0 0;font-size:24px}.course-export-progress-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:#eaf3ff;color:#0865d9;font-size:21px}.course-export-stage-list{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:22px 0 18px}.course-export-stage-list span{display:flex;gap:6px;align-items:center;justify-content:center;padding:9px 6px;border-radius:10px;background:#f3f6fa;color:#708096;font-size:12px;font-weight:700}.course-export-stage-list span.is-active{background:#eaf3ff;color:#0865d9}.course-export-stage-list span.is-done{background:#edf9f3;color:#16845b}.course-export-progress-track{height:12px;border-radius:999px;background:#e8eef6;overflow:hidden}.course-export-progress-track span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#0865d9,#20b8de);transition:width .18s ease}.course-export-progress-value{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-top:10px}.course-export-progress-value strong{font-size:24px;color:#0865d9}.course-export-progress-value span{color:#5d6f87;font-size:12px;text-align:right}.course-export-progress-current{min-height:24px;margin:16px 0 10px;font-weight:700;overflow-wrap:anywhere}.course-export-progress-note,.course-export-progress-error{display:flex;gap:9px;padding:12px 14px;border-radius:12px;font-size:12px;line-height:1.45}.course-export-progress-note{background:#f3f8ff;color:#365a84}.course-export-progress-error{background:#fff0ee;border:1px solid #f1b9b2;color:#a72c1d}.course-export-progress-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}@media(max-width:640px){.course-export-progress{padding:12px}.course-export-progress-card{padding:18px;border-radius:18px}.course-export-stage-list{grid-template-columns:1fr 1fr}.course-export-progress-value{align-items:flex-start;flex-direction:column;gap:3px}.course-export-progress-value span{text-align:left}.course-export-progress-actions{flex-wrap:wrap}.course-export-progress-actions .btn{flex:1 1 auto}}


/* v1.47.26 · catalogo corsi Material Design: 4/3/2/1 colonne e azioni collassabili */
.course-catalog-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}
.course-catalog-grid .course-admin-card{
  position:relative;
  isolation:isolate;
  height:100%;
  border:1px solid rgba(118,146,181,.24);
  border-radius:24px;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
  box-shadow:0 8px 22px rgba(16,37,75,.075),0 2px 6px rgba(16,37,75,.045);
  transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s ease,border-color .24s ease;
}
.course-catalog-grid .course-admin-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  border-radius:inherit;
  background:radial-gradient(circle at 15% 0%,rgba(8,101,217,.08),transparent 36%);
  opacity:0;
  transition:opacity .24s ease;
}
.course-catalog-grid .course-admin-card:hover{
  transform:translateY(-7px);
  border-color:rgba(8,101,217,.32);
  box-shadow:0 22px 48px rgba(16,37,75,.15),0 5px 14px rgba(8,101,217,.08);
}
.course-catalog-grid .course-admin-card:hover::before{opacity:1}
.course-catalog-grid .course-card-media{min-height:156px;overflow:hidden}
.course-catalog-grid .course-admin-card .course-card-cover,
.course-catalog-grid .course-admin-card .course-card-cover-placeholder{
  height:156px;
  min-height:156px;
  transition:transform .45s cubic-bezier(.2,.8,.2,1),filter .3s ease;
}
.course-catalog-grid .course-admin-card:hover .course-card-cover{transform:scale(1.035);filter:saturate(1.06)}
.course-catalog-grid .course-card-body{padding:16px 16px 17px}
.course-catalog-grid .course-admin-card h2{font-size:17px;line-height:1.24;margin-bottom:6px}
.course-catalog-grid .course-admin-card p{font-size:11px;min-height:34px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.course-catalog-grid .course-commerce-summary{margin-top:12px;padding:11px 12px}
.course-catalog-grid .course-price-main strong{font-size:17px}
.course-catalog-grid .course-kpi-grid{gap:5px;margin-top:11px}
.course-catalog-grid .course-kpi-grid>span{padding:8px 4px;border-radius:10px}
.course-catalog-grid .course-kpi-grid strong{font-size:13px}
.course-catalog-grid .course-admin-details{margin-top:11px;padding-top:10px}
.course-catalog-grid .course-admin-details span{grid-template-columns:16px 56px minmax(0,1fr);font-size:10px}
.course-catalog-grid .course-workflow-badge{margin-top:10px}
.course-actions-toggle{
  position:relative;
  overflow:hidden;
  width:100%;
  min-height:54px;
  margin-top:14px;
  padding:9px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid #cfe0f4;
  border-radius:16px;
  background:linear-gradient(135deg,#f7fbff,#edf5ff);
  color:#0b4f9e;
  font:inherit;
  cursor:pointer;
  box-shadow:0 3px 10px rgba(8,101,217,.06);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.course-actions-toggle::after{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  border-radius:50%;
  background:rgba(8,101,217,.11);
  transform:scale(0);
  opacity:0;
  pointer-events:none;
}
.course-actions-toggle:active::after{animation:courseMaterialRipple .5s ease-out}
.course-actions-toggle:hover{transform:translateY(-1px);border-color:#95bce8;box-shadow:0 8px 18px rgba(8,101,217,.12);background:linear-gradient(135deg,#fff,#e9f3ff)}
.course-actions-toggle:focus-visible{outline:0;box-shadow:0 0 0 4px rgba(8,101,217,.17),0 8px 18px rgba(8,101,217,.12)}
.course-actions-toggle>span{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;text-align:left;align-items:center}
.course-actions-toggle>span>i{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#0865d9;color:#fff;box-shadow:0 5px 13px rgba(8,101,217,.24)}
.course-actions-toggle strong,.course-actions-toggle small{display:block}
.course-actions-toggle strong{font-size:12px;color:#10254b}
.course-actions-toggle small{font-size:9px;color:#65748b;margin-top:1px}
.course-actions-toggle-chevron{transition:transform .22s ease;color:#0865d9}
.course-actions-toggle[aria-expanded="true"]{border-color:#8eb8e8;background:linear-gradient(135deg,#edf6ff,#e5f1ff)}
.course-actions-toggle[aria-expanded="true"] .course-actions-toggle-chevron{transform:rotate(180deg)}
.course-admin-card .course-card-actions[hidden]{display:none!important}
.course-admin-card .course-card-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin-top:10px;
  padding:12px;
  border:1px solid #dce7f3;
  border-radius:17px;
  background:rgba(247,250,254,.96);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
  animation:courseActionsReveal .22s cubic-bezier(.2,.8,.2,1);
}
.course-admin-card .course-card-actions>a,
.course-admin-card .course-card-actions form{width:100%;min-width:0;flex:none}
.course-admin-card .course-card-actions .btn{
  width:100%;
  min-height:43px;
  padding:9px 8px;
  border-radius:13px;
  font-size:11px;
  line-height:1.15;
  justify-content:center;
  text-align:center;
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
}
.course-admin-card .course-card-actions .btn:hover{transform:translateY(-2px);filter:saturate(1.06);box-shadow:0 8px 16px rgba(16,37,75,.13)}
.course-admin-card .course-card-actions .course-delete-form,
.course-admin-card .course-card-actions .course-delete-disabled{grid-column:1/-1}
.course-admin-card .course-card-actions .btn-danger{background:#fff0ef;color:#a72c25;border:1px solid #f0bbb7}
.course-admin-card .course-card-actions .btn-secondary{background:#fff;border-color:#cfdeee}
.course-admin-card .course-card-actions .publication-toggle{box-shadow:none}
@keyframes courseActionsReveal{from{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:none}}
@keyframes courseMaterialRipple{0%{transform:scale(0);opacity:.8}100%{transform:scale(2.6);opacity:0}}
@media(max-width:1279px) and (min-width:900px){
  .course-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
}
@media(max-width:899px) and (min-width:600px){
  .course-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
}
@media(max-width:599px){
  .course-catalog-grid{grid-template-columns:minmax(0,1fr);gap:15px}
  .course-catalog-grid .course-card-media{min-height:170px}
  .course-catalog-grid .course-admin-card .course-card-cover,
  .course-catalog-grid .course-admin-card .course-card-cover-placeholder{height:170px;min-height:170px}
}
@media(prefers-reduced-motion:reduce){
  .course-catalog-grid .course-admin-card,.course-catalog-grid .course-card-cover,.course-actions-toggle,.course-actions-toggle-chevron,.course-admin-card .course-card-actions .btn{transition:none!important}
  .course-admin-card .course-card-actions{animation:none}
}


/* v1.47.27 · stati Material delle card corso */
.course-catalog-grid .course-workflow-badge{
  width:100%;
  min-height:34px;
  margin-top:10px;
  padding:8px 12px;
  justify-content:flex-start;
  border:1px solid transparent;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.course-catalog-grid .course-workflow-badge:hover{transform:translateY(-1px)}
.course-catalog-grid .course-workflow-badge.status-published{
  background:linear-gradient(135deg,#e5f8ed 0%,#d7f3e3 100%);
  color:#086b43;
  border-color:#a8dfc1;
  box-shadow:0 4px 12px rgba(16,132,84,.10),inset 0 1px 0 rgba(255,255,255,.82);
}
.course-catalog-grid .course-workflow-badge.status-published i{color:#0b8a55}
.course-catalog-grid .course-workflow-badge.status-draft{
  background:linear-gradient(135deg,#fff8e8 0%,#fff1cc 100%);
  color:#865900;
  border-color:#ecd18a;
}
.course-catalog-grid .course-workflow-badge.status-draft i{color:#b47700}
.course-catalog-grid .course-workflow-badge.status-in_review{
  background:linear-gradient(135deg,#fff8dc 0%,#ffefb3 100%);
  color:#765400;
  border-color:#ead36e;
}
.course-catalog-grid .course-workflow-badge.status-reviewed{
  background:linear-gradient(135deg,#f2edff 0%,#e8dfff 100%);
  color:#5934a4;
  border-color:#cbb7f5;
}
.course-catalog-grid .course-workflow-badge.status-approved{
  background:linear-gradient(135deg,#e7f8f0 0%,#d9f2e6 100%);
  color:#087443;
  border-color:#acdfc6;
}
.course-catalog-grid .course-workflow-badge.status-changes_requested{
  background:linear-gradient(135deg,#fff1e5 0%,#ffe4cf 100%);
  color:#934300;
  border-color:#efc092;
}
.course-catalog-grid .course-workflow-badge.status-archived{
  background:linear-gradient(135deg,#f1f3f6 0%,#e6eaf0 100%);
  color:#4f5b68;
  border-color:#cfd6df;
}


/* v1.47.28 · griglia corsi 3 colonne e card premium uniformi */
.course-catalog-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  align-items:stretch;
}
.course-catalog-grid .course-admin-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  border-radius:28px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 58%,#f7fbff 100%);
  box-shadow:0 10px 26px rgba(16,37,75,.085),0 3px 10px rgba(16,37,75,.05);
  transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,border-color .28s ease,background .28s ease;
}
.course-catalog-grid .course-admin-card::before{
  background:
    radial-gradient(circle at top left,rgba(8,101,217,.12),transparent 34%),
    radial-gradient(circle at 100% 0,rgba(32,184,222,.11),transparent 24%),
    linear-gradient(180deg,rgba(255,255,255,.0),rgba(8,101,217,.02));
}
.course-catalog-grid .course-admin-card:hover{
  transform:translateY(-9px) scale(1.004);
  border-color:rgba(8,101,217,.34);
  box-shadow:0 28px 58px rgba(16,37,75,.16),0 10px 24px rgba(8,101,217,.11);
  background:linear-gradient(180deg,#ffffff 0%,#fafdff 55%,#f1f8ff 100%);
}
.course-catalog-grid .course-card-media{
  min-height:0;
  aspect-ratio:16 / 9;
  overflow:hidden;
  border-radius:28px 28px 0 0;
}
.course-catalog-grid .course-admin-card .course-card-cover,
.course-catalog-grid .course-admin-card .course-card-cover-placeholder{
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:16 / 9;
}
.course-catalog-grid .course-admin-card:hover .course-card-cover{
  transform:scale(1.045);
  filter:saturate(1.09) contrast(1.02);
}
.course-catalog-grid .course-card-body{
  display:flex;
  flex-direction:column;
  flex:1;
  gap:12px;
  padding:18px;
}
.course-catalog-grid .course-card-heading{
  min-height:96px;
  gap:10px;
}
.course-catalog-grid .course-card-heading > div{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.course-catalog-grid .course-admin-card h2{
  font-size:18px;
  line-height:1.28;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  min-height:46px;
}
.course-catalog-grid .course-admin-card p{
  font-size:12px;
  line-height:1.5;
  min-height:36px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.course-catalog-grid .course-level-badge{
  flex-shrink:0;
  align-self:flex-start;
}
.course-catalog-grid .course-commerce-summary{
  margin-top:0;
}
.course-catalog-grid .course-kpi-grid{
  margin-top:0;
}
.course-catalog-grid .course-admin-details{
  margin-top:0;
}
.course-catalog-grid .course-workflow-badge{
  margin-top:auto;
}
.course-actions-toggle{
  margin-top:0;
}
.course-admin-card .course-card-actions{
  margin-top:0;
}
.course-catalog-grid .course-admin-card:hover .course-actions-toggle{
  box-shadow:0 10px 20px rgba(8,101,217,.12);
}
@media(max-width:1023px) and (min-width:768px){
  .course-catalog-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
  }
  .course-catalog-grid .course-card-body{padding:16px}
  .course-catalog-grid .course-card-heading{min-height:92px}
  .course-catalog-grid .course-admin-card h2{font-size:17px;min-height:44px}
}
@media(max-width:767px) and (min-width:560px){
  .course-catalog-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
  }
  .course-catalog-grid .course-card-heading{min-height:0}
}
@media(max-width:559px){
  .course-catalog-grid{
    grid-template-columns:minmax(0,1fr);
    gap:15px;
  }
  .course-catalog-grid .course-card-media,
  .course-catalog-grid .course-admin-card .course-card-cover,
  .course-catalog-grid .course-admin-card .course-card-cover-placeholder{
    aspect-ratio:16 / 9;
  }
  .course-catalog-grid .course-card-body{padding:16px}
  .course-catalog-grid .course-card-heading{min-height:0}
}

/* v1.47.30 · Importazione PowerPoint Material Design */
.pptx-import-shell{max-width:1180px;margin:0 auto}.pptx-import-shell form{display:grid;gap:22px}.pptx-material-stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:14px;border:1px solid #dbe7f3;border-radius:22px;background:#fff;box-shadow:0 8px 22px rgba(16,37,75,.06)}.pptx-material-stepper span{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;padding:11px;border-radius:15px;color:#738198;font-weight:800}.pptx-material-stepper span b{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#edf1f6}.pptx-material-stepper span em{font-style:normal;font-size:12px}.pptx-material-stepper span.is-active{color:#075fc7;background:#edf6ff}.pptx-material-stepper span.is-active b{background:#0865d9;color:#fff;box-shadow:0 6px 14px rgba(8,101,217,.24)}.pptx-material-card{padding:24px;border:1px solid #d7e4f1;border-radius:28px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 16px 42px rgba(16,37,75,.09)}.pptx-card-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}.pptx-card-head>span{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:linear-gradient(145deg,#f05b3f,#d63c25);color:#fff;font-size:22px;box-shadow:0 10px 22px rgba(214,60,37,.24)}.pptx-card-head h3{margin:0;color:#10254b;font-size:22px}.pptx-card-head p{margin:4px 0 0;color:#6b7b91}.pptx-diagnostics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.pptx-diagnostics>div{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #dce7f3;border-radius:16px;background:#f8fbff}.pptx-diagnostics i{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#e8f3ff;color:#0865d9}.pptx-diagnostics strong,.pptx-diagnostics small{display:block}.pptx-diagnostics small{margin-top:2px;color:#718097}.pptx-import-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}.pptx-analysis-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:18px}.pptx-analysis-summary article{display:grid;place-items:center;gap:3px;padding:16px 10px;border-radius:17px;background:linear-gradient(145deg,#f7fbff,#edf5ff);border:1px solid #d8e8f8;text-align:center}.pptx-analysis-summary i{color:#0865d9}.pptx-analysis-summary strong{font-size:22px;color:#10254b}.pptx-analysis-summary span{font-size:11px;color:#718097}.pptx-slide-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-height:430px;overflow:auto;padding:3px}.pptx-slide-preview{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid #dce7f3;border-radius:17px;background:#fff;box-shadow:0 5px 14px rgba(16,37,75,.055)}.pptx-slide-number{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#0865d9;color:#fff;font-weight:900}.pptx-slide-preview strong,.pptx-slide-preview small,.pptx-slide-preview em{display:block}.pptx-slide-preview strong{color:#10254b;line-height:1.3}.pptx-slide-preview small{margin-top:4px;color:#0865d9;font-weight:800}.pptx-slide-preview p{margin:8px 0 0;font-size:11px;color:#6f7d91}.pptx-slide-preview em{margin-top:6px;font-size:10px;color:#16845b;font-style:normal}.pptx-warning-list{display:grid;gap:7px;margin-top:18px;padding:15px;border:1px solid #efd18d;border-radius:17px;background:#fff9e8;color:#805b00}.pptx-warning-list strong{margin-bottom:3px}.pptx-warning-list span{font-size:12px}.pptx-course-fields{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;margin-top:22px}.material-text-field{display:grid;gap:7px}.material-text-field span{font-size:12px;font-weight:800;color:#455a73}.material-text-field input{width:100%;min-height:52px;padding:0 14px;border:1px solid #cbd9e8;border-radius:14px;background:#fff;color:#10254b;font:inherit;outline:0;transition:border-color .18s,box-shadow .18s}.material-text-field input:focus{border-color:#0865d9;box-shadow:0 0 0 4px rgba(8,101,217,.13)}
@media(max-width:900px){.pptx-analysis-summary{grid-template-columns:repeat(3,1fr)}.pptx-slide-preview-grid{grid-template-columns:repeat(2,1fr)}.pptx-course-fields{grid-template-columns:1fr}.pptx-diagnostics{grid-template-columns:1fr}.pptx-material-stepper em{display:none}}
@media(max-width:560px){.pptx-material-card{padding:17px;border-radius:21px}.pptx-material-stepper{gap:4px;padding:8px}.pptx-material-stepper span{padding:8px 4px}.pptx-analysis-summary{grid-template-columns:repeat(2,1fr)}.pptx-slide-preview-grid{grid-template-columns:1fr}.pptx-import-actions{flex-direction:column}.pptx-import-actions .btn{width:100%}}


/* v1.47.31 · importazione PowerPoint: livello e stato creazione separato */
.pptx-course-fields .material-select-field{grid-column:span 1}
.material-select-field select{width:100%;min-height:48px;padding:0 42px 0 14px;border:1px solid #cddbeb;border-radius:14px;background:#fff;color:#10254b;font:inherit;font-weight:700;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#526b88 50%),linear-gradient(135deg,#526b88 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 12px) 20px;background-size:6px 6px,6px 6px;background-repeat:no-repeat;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
.material-select-field select:hover{border-color:#8eb7e5;background-color:#fbfdff}
.material-select-field select:focus{outline:0;border-color:#0865d9;box-shadow:0 0 0 4px rgba(8,101,217,.14)}
.material-select-field>small{display:block;margin-top:6px;color:#6b7d92;font-size:11px;line-height:1.35}
.pptx-creation-state{display:flex;align-items:center;gap:12px;margin:16px 0 4px;padding:14px 16px;border:1px solid #bfd7f2;border-radius:16px;background:linear-gradient(135deg,#f3f8ff,#eaf3ff);color:#194f87;box-shadow:0 5px 16px rgba(8,101,217,.08)}
.pptx-creation-state[hidden]{display:none!important}
.pptx-creation-state-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:#0865d9;color:#fff;box-shadow:0 6px 14px rgba(8,101,217,.22)}
.pptx-creation-state strong,.pptx-creation-state small{display:block}.pptx-creation-state strong{font-size:14px}.pptx-creation-state small{margin-top:3px;font-size:11px;line-height:1.45;color:inherit}
.pptx-creation-state.is-success{border-color:#a8dfc1;background:linear-gradient(135deg,#eefaf3,#e2f6eb);color:#086b43}.pptx-creation-state.is-success .pptx-creation-state-icon{background:#0b8a55}
.pptx-creation-state.is-error{border-color:#efb6b0;background:linear-gradient(135deg,#fff4f2,#ffebe8);color:#a72c25}.pptx-creation-state.is-error .pptx-creation-state-icon{background:#c43b32}
@media(max-width:760px){.pptx-course-fields .material-select-field{grid-column:1/-1}}

/* v1.47.32 · timeline progressiva importazione PowerPoint */
.pptx-import-timeline{margin-top:18px;padding:20px;border:1px solid #cfe0f4;border-radius:22px;background:linear-gradient(180deg,#f8fbff,#f1f7ff);box-shadow:0 10px 28px rgba(16,37,75,.08)}
.pptx-timeline-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center}.pptx-timeline-head>span{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:#0865d9;color:#fff;box-shadow:0 8px 18px rgba(8,101,217,.24)}.pptx-timeline-head strong{display:block;font-size:16px;color:#10254b}.pptx-timeline-head small{display:block;margin-top:3px;color:#60748d}.pptx-timeline-head>b{font-size:24px;color:#0865d9}.pptx-timeline-progress{height:11px;margin:17px 0 8px;border-radius:999px;background:#dfe9f5;overflow:hidden}.pptx-timeline-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0865d9,#20b8de);transition:width .22s ease}.pptx-timeline-meta{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#60748d}.pptx-timeline-meta span:first-child{font-weight:700;color:#294f7b}.pptx-timeline-list{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:10px}.pptx-timeline-list li{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid #dbe6f2;border-radius:16px;background:#fff;color:#6a7a8e;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}.pptx-timeline-list li>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#edf2f7;color:#71839a}.pptx-timeline-list li strong{display:block;font-size:13px;color:#32465f}.pptx-timeline-list li small{display:block;margin-top:2px;font-size:11px}.pptx-timeline-list li em{font-style:normal;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.pptx-timeline-list li.is-active{border-color:#8cb9ec;background:#f2f8ff;box-shadow:0 7px 18px rgba(8,101,217,.10);transform:translateX(3px)}.pptx-timeline-list li.is-active>span{background:#0865d9;color:#fff;box-shadow:0 5px 13px rgba(8,101,217,.22)}.pptx-timeline-list li.is-active em{color:#0865d9}.pptx-timeline-list li.is-done{border-color:#b7e0ca;background:#f2fbf6}.pptx-timeline-list li.is-done>span{background:#16845b;color:#fff}.pptx-timeline-list li.is-done em{color:#16845b}.pptx-timeline-list li.is-error{border-color:#efb8b2;background:#fff4f2}.pptx-timeline-list li.is-error>span{background:#c33d32;color:#fff}.pptx-timeline-list li.is-error em{color:#b52d23}.pptx-timeline-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.pptx-import-timeline.is-error{border-color:#efb8b2;background:linear-gradient(180deg,#fff9f8,#fff2f0)}.pptx-import-timeline.is-error .pptx-timeline-head>span{background:#c33d32}.pptx-import-timeline.is-complete{border-color:#afe0c7;background:linear-gradient(180deg,#f7fffa,#effaf4)}.pptx-import-timeline.is-complete .pptx-timeline-head>span{background:#16845b}.pptx-import-timeline.is-complete .pptx-timeline-head>b{color:#16845b}@media(max-width:640px){.pptx-import-timeline{padding:15px}.pptx-timeline-head{grid-template-columns:42px minmax(0,1fr)}.pptx-timeline-head>span{width:42px;height:42px}.pptx-timeline-head>b{grid-column:1/-1;font-size:20px}.pptx-timeline-meta{flex-direction:column;gap:3px}.pptx-timeline-list li{grid-template-columns:38px minmax(0,1fr);padding:11px}.pptx-timeline-list li em{grid-column:2}.pptx-timeline-actions{flex-direction:column}.pptx-timeline-actions .btn{width:100%}}


/* v1.47.33 · completamento importazione PowerPoint senza falso avviso uscita */
.pptx-timeline-actions [hidden]{display:none!important}
.pptx-open-course{background:linear-gradient(135deg,#0b8a55,#087443);border-color:#087443;box-shadow:0 8px 18px rgba(11,138,85,.22)}
.pptx-open-course:hover{filter:saturate(1.08);transform:translateY(-1px);box-shadow:0 12px 24px rgba(11,138,85,.28)}
.pptx-import-timeline.is-complete .pptx-timeline-actions{justify-content:flex-end}


/* v1.47.39 · wizard Material Design per creazione lezione */
.tree-module-summary{min-width:0;padding:4px 8px}.tree-module-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-add-lesson-button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #bfd7f3;border-radius:11px;background:linear-gradient(145deg,#fff,#eaf4ff);color:#0865d9;cursor:pointer;box-shadow:0 3px 9px rgba(8,101,217,.10);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.module-add-lesson-button:hover{transform:translateY(-2px) scale(1.03);border-color:#78afea;box-shadow:0 8px 17px rgba(8,101,217,.18)}.module-add-lesson-button:focus-visible{outline:0;box-shadow:0 0 0 4px rgba(8,101,217,.16),0 8px 17px rgba(8,101,217,.18)}.module-add-lesson-button i{font-size:15px}.lesson-wizard-launch-card{display:flex;align-items:center;gap:16px;padding:18px 20px;margin-bottom:18px;border:1px solid #d5e5f7;border-radius:19px;background:linear-gradient(135deg,#f8fbff,#edf6ff);box-shadow:0 5px 15px rgba(16,37,75,.055)}.lesson-wizard-launch-card h2{margin:0 0 5px;color:var(--b-navy)}.lesson-wizard-launch-card p{margin:0;color:var(--b-muted);line-height:1.5}.lesson-wizard-launch-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:15px;background:#0865d9;color:#fff;font-size:19px;box-shadow:0 8px 18px rgba(8,101,217,.24)}body.lesson-create-modal-open{overflow:hidden}.lesson-create-modal{position:fixed;inset:0;z-index:2200;display:none;place-items:center;padding:18px}.lesson-create-modal.is-open{display:grid}.lesson-create-modal-backdrop{position:absolute;inset:0;background:rgba(9,27,51,.58);backdrop-filter:blur(4px)}.lesson-create-modal-card{position:relative;width:min(640px,100%);max-height:min(90vh,760px);overflow:auto;border:1px solid #d8e4f2;border-radius:26px;background:#fff;box-shadow:0 30px 90px rgba(5,25,54,.32);animation:lessonModalIn .22s cubic-bezier(.2,.8,.2,1)}.lesson-create-modal-head{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;padding:22px 24px 18px;border-bottom:1px solid #e3ebf5;background:linear-gradient(180deg,#fff,#f8fbff)}.lesson-create-modal-head h2{margin:2px 0 5px;color:var(--b-navy);font-size:24px}.lesson-create-modal-head p{margin:0;color:var(--b-muted)}.lesson-create-modal-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(145deg,#0b72ee,#0759bf);color:#fff;font-size:20px;box-shadow:0 9px 20px rgba(8,101,217,.25)}.lesson-create-modal-close{width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:50%;background:#edf3fa;color:#173657;cursor:pointer;transition:transform .18s ease,background .18s ease}.lesson-create-modal-close:hover{transform:rotate(5deg);background:#e1ecf8}.lesson-create-steps{display:flex;align-items:center;justify-content:center;gap:9px;padding:16px 24px;background:#fbfdff;border-bottom:1px solid #e8eef6}.lesson-create-steps span{display:inline-flex;align-items:center;gap:7px;color:#718198;font-size:12px;font-weight:800}.lesson-create-steps span b{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#e9eef5;color:#60748e}.lesson-create-steps span.is-active{color:#0865d9}.lesson-create-steps span.is-active b{background:#0865d9;color:#fff;box-shadow:0 4px 10px rgba(8,101,217,.22)}.lesson-create-steps>i{font-size:10px;color:#9aa9ba}.lesson-create-modal-form{display:grid;gap:18px;padding:22px 24px 24px}.lesson-create-modal-form .field{display:grid;gap:7px}.lesson-create-modal-form label{font-weight:800;color:var(--b-navy)}.lesson-create-modal-form select,.lesson-create-modal-form input{width:100%;min-height:52px;border:1px solid #c9d8e9;border-radius:14px;background:#fff;padding:0 14px;font:inherit;color:var(--b-navy);transition:border-color .18s ease,box-shadow .18s ease}.lesson-create-modal-form select:focus,.lesson-create-modal-form input:focus{outline:0;border-color:#0865d9;box-shadow:0 0 0 4px rgba(8,101,217,.13)}.lesson-create-modal-form .is-invalid{border-color:#d83b32!important;box-shadow:0 0 0 4px rgba(216,59,50,.10)!important}.lesson-field-error{min-height:17px;color:#b42318;font-size:12px;font-weight:700}.lesson-title-meta{display:flex;justify-content:space-between;gap:12px;color:var(--b-muted)}.lesson-create-summary{display:flex;gap:10px;align-items:flex-start;padding:13px 14px;border-radius:13px;background:#eef6ff;color:#365c86;font-size:13px;line-height:1.45}.lesson-create-summary i{color:#0865d9;margin-top:2px}.lesson-modal-alert{padding:12px 14px;border:1px solid #efb1ab;border-radius:13px;background:#fff0ee;color:#a9271f;font-weight:700}.lesson-create-modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:3px}.lesson-create-modal.is-submitting .lesson-create-modal-close,.lesson-create-modal.is-submitting [data-close-lesson-modal]{pointer-events:none;opacity:.6}@keyframes lessonModalIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:640px){.lesson-create-modal{padding:10px;align-items:end}.lesson-create-modal-card{max-height:94vh;border-radius:22px 22px 0 0}.lesson-create-modal-head{padding:18px}.lesson-create-modal-form{padding:18px}.lesson-create-steps{padding:13px 14px}.lesson-create-steps span{font-size:0}.lesson-create-steps span b{font-size:12px}.lesson-create-modal-actions{flex-direction:column-reverse}.lesson-create-modal-actions .btn{width:100%;justify-content:center}.lesson-wizard-launch-card{align-items:flex-start;padding:16px}.module-add-lesson-button{width:38px;height:38px}}


/* v1.47.40 · wizard nuova lezione compatto e vincolato al modulo sorgente */
.lesson-create-modal-card{width:min(610px,100%);overflow:hidden}
.lesson-create-modal-head{grid-template-columns:52px minmax(0,1fr) 40px;align-items:center;padding:20px 22px;border-bottom:1px solid #e3ebf5}
.lesson-create-modal-head>div:nth-child(2){min-width:0}
.lesson-create-modal-head h2{font-size:23px;line-height:1.18;margin:2px 0 4px}
.lesson-create-modal-head p{font-size:13px;line-height:1.4;max-width:440px}
.lesson-create-modal-form{gap:16px;padding:20px 22px 22px;overflow:auto;max-height:calc(90vh - 118px)}
.lesson-create-context{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid #cfe1f5;border-radius:15px;background:linear-gradient(135deg,#f7fbff,#edf6ff);color:#173657}
.lesson-create-context-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:12px;background:#0865d9;color:#fff;box-shadow:0 5px 12px rgba(8,101,217,.2)}
.lesson-create-context small,.lesson-create-context strong{display:block}
.lesson-create-context small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#637993;font-weight:800}
.lesson-create-context strong{margin-top:2px;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:450px}
.lesson-create-steps{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center;padding:0;border:0;background:transparent}
.lesson-create-steps span{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:8px 12px;border:1px solid #dbe6f2;border-radius:13px;background:#f8fafc;color:#718198;font-size:12px;font-weight:800}
.lesson-create-steps span em{font-style:normal;white-space:nowrap}
.lesson-create-steps span b{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#e9eef5;color:#60748e;flex:0 0 25px}
.lesson-create-steps span.is-active{color:#0865d9;border-color:#b9d5f3;background:#eef6ff}
.lesson-create-steps span.is-active b{background:#0865d9;color:#fff;box-shadow:0 4px 10px rgba(8,101,217,.22)}
.lesson-create-steps>i{color:#8ca0b7;font-size:12px}
@media(max-width:640px){.lesson-create-modal-head{grid-template-columns:46px minmax(0,1fr) 38px;padding:17px}.lesson-create-modal-head h2{font-size:20px}.lesson-create-modal-head p{font-size:12px}.lesson-create-modal-form{padding:16px;max-height:calc(94vh - 104px)}.lesson-create-context strong{max-width:calc(100vw - 130px)}.lesson-create-steps span{padding:7px 8px}.lesson-create-steps span em{font-size:11px}.lesson-create-steps>i{display:block}}

/* v1.47.41 · sposta/copia contenuti didattici */
body.content-transfer-open{overflow:hidden}.content-transfer-modal[hidden]{display:none!important}.content-transfer-modal{position:fixed;inset:0;z-index:2400;display:grid;place-items:center;padding:20px}.content-transfer-backdrop{position:absolute;inset:0;background:rgba(11,29,56,.62);backdrop-filter:blur(5px)}.content-transfer-card{position:relative;width:min(650px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border:1px solid #d5e2f0;border-radius:26px;box-shadow:0 30px 90px rgba(7,28,58,.3)}.content-transfer-card>header{display:flex;gap:14px;align-items:center;padding:22px 24px;border-bottom:1px solid #e3ebf4}.content-transfer-card>header h2{margin:2px 0 3px}.content-transfer-card>header p{margin:0;color:#61738a}.content-transfer-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;background:#e8f2ff;color:#0865d9;font-size:20px}.content-transfer-close{margin-left:auto;width:40px;height:40px;border:0;border-radius:50%;background:#eef4fb;color:#173b67;cursor:pointer}.content-transfer-body{padding:22px 24px;display:grid;gap:17px}.content-transfer-operation{display:grid;grid-template-columns:1fr 1fr;gap:12px}.content-transfer-operation label input{position:absolute;opacity:0}.content-transfer-operation label span{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;gap:2px 10px;padding:14px;border:1px solid #d5e2f0;border-radius:16px;cursor:pointer;background:#fbfdff}.content-transfer-operation label span>i{grid-row:1/3;width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#edf4fc;color:#0865d9}.content-transfer-operation input:checked+span{border-color:#0865d9;background:#edf6ff;box-shadow:0 0 0 3px rgba(8,101,217,.11)}.content-transfer-operation small{color:#687b92}.content-transfer-warning{display:flex;gap:10px;padding:13px 14px;border-radius:14px;background:#fff8e7;border:1px solid #efd18a;color:#7c5900}.content-transfer-error{padding:12px 14px;border-radius:13px;background:#fff0ee;border:1px solid #efb4ad;color:#a32920;font-weight:700}.content-transfer-card>footer{display:flex;justify-content:flex-end;gap:10px;padding:18px 24px;border-top:1px solid #e3ebf4}.content-transfer-action{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:11px;background:#edf5ff;color:#0865d9;cursor:pointer;transition:.18s}.content-transfer-action:hover{transform:translateY(-1px);background:#dcecff;box-shadow:0 6px 14px rgba(8,101,217,.15)}.slide-list-row{display:flex;gap:6px;align-items:stretch}.slide-list-row .slide-list-item{flex:1;min-width:0}.slide-list-row .content-transfer-action{align-self:center;flex:0 0 34px}@media(max-width:600px){.content-transfer-modal{padding:10px}.content-transfer-card{border-radius:20px}.content-transfer-operation{grid-template-columns:1fr}.content-transfer-card>footer{flex-wrap:wrap}.content-transfer-card>footer .btn{flex:1}}


/* v1.47.42 · fondazione modali Material leggibili e coerenti */
:where(.lesson-create-modal-card,.content-transfer-card,.app-modal-window,.resource-modal){
  color:var(--b-navy);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
:where(.lesson-create-modal-card,.content-transfer-card){
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
:where(.lesson-create-modal-head,.content-transfer-card>header){
  flex:0 0 auto;
  position:relative;
  z-index:2;
  min-height:96px;
  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
}
.lesson-create-modal-head{
  grid-template-columns:52px minmax(0,1fr) 40px;
  align-items:center;
  column-gap:16px;
  row-gap:4px;
  padding:20px 22px;
}
.lesson-create-modal-head>div:nth-child(2),
.content-transfer-card>header>div{
  min-width:0;
}
.lesson-create-modal-head .eyebrow,
.content-transfer-card>header .eyebrow{
  display:block;
  margin:0 0 4px;
  line-height:1.15;
  font-size:11px;
  letter-spacing:.09em;
  font-weight:900;
  color:#0865d9;
  white-space:normal;
}
.lesson-create-modal-head h2,
.content-transfer-card>header h2{
  margin:0;
  line-height:1.18;
  overflow-wrap:anywhere;
}
.lesson-create-modal-head p,
.content-transfer-card>header p{
  margin:5px 0 0;
  line-height:1.45;
  color:#61738a;
  overflow-wrap:anywhere;
}
.lesson-create-modal-close,
.content-transfer-close{
  flex:0 0 auto;
  align-self:start;
  margin:0;
}
.lesson-create-modal-form,
.content-transfer-body{
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.lesson-create-modal-actions,
.content-transfer-card>footer{
  flex:0 0 auto;
  position:relative;
  z-index:2;
  background:#fff;
}
.content-transfer-card{
  max-height:min(92vh,780px);
}
.content-transfer-card>header{
  display:grid;
  grid-template-columns:50px minmax(0,1fr) 40px;
  gap:14px;
  align-items:center;
  padding:20px 22px;
}
.content-transfer-icon{
  flex:0 0 50px;
}
.content-transfer-card>header h2{
  font-size:23px;
}
.content-transfer-body{
  padding:20px 22px;
}
.content-transfer-card>footer{
  padding:16px 22px;
  box-shadow:0 -8px 22px rgba(16,37,75,.035);
}
.content-transfer-operation label span{
  min-height:68px;
  align-content:center;
}
.content-transfer-body .field{
  display:grid;
  gap:7px;
}
.content-transfer-body .field>label{
  font-weight:800;
  line-height:1.3;
  color:var(--b-navy);
}
.content-transfer-body select{
  width:100%;
  min-height:50px;
  padding:0 14px;
  border:1px solid #c9d8e9;
  border-radius:14px;
  background:#fff;
  color:var(--b-navy);
  font:inherit;
}
.content-transfer-body select:focus{
  outline:0;
  border-color:#0865d9;
  box-shadow:0 0 0 4px rgba(8,101,217,.13);
}
.lesson-create-context,
.lesson-create-steps,
.lesson-create-modal-form>.field,
.lesson-create-summary{
  flex:0 0 auto;
}
.lesson-create-context strong{
  line-height:1.3;
}
.lesson-create-steps span{
  line-height:1.2;
}
@media(max-width:640px){
  :where(.lesson-create-modal,.content-transfer-modal){
    padding:10px;
    align-items:end;
  }
  :where(.lesson-create-modal-card,.content-transfer-card){
    width:100%;
    max-height:94vh;
    border-radius:22px 22px 0 0;
  }
  .lesson-create-modal-head,
  .content-transfer-card>header{
    grid-template-columns:44px minmax(0,1fr) 38px;
    gap:11px;
    min-height:86px;
    padding:16px;
  }
  .lesson-create-modal-icon,
  .content-transfer-icon{
    width:44px;
    height:44px;
    border-radius:14px;
  }
  .lesson-create-modal-head h2,
  .content-transfer-card>header h2{
    font-size:20px;
  }
  .lesson-create-modal-head p,
  .content-transfer-card>header p{
    font-size:12px;
  }
  .lesson-create-modal-form,
  .content-transfer-body{
    padding:16px;
  }
  .content-transfer-card>footer{
    padding:14px 16px;
  }
}

.slide-list-row.slide-overweight .slide-list-item{border-color:#e45151;background:#fff4f4;box-shadow:0 0 0 1px rgba(196,40,40,.06)}
.slide-list-row.slide-overweight .slide-list-item:hover,.slide-list-row.slide-overweight .slide-list-item.active{border-color:#c62828;background:#ffecec}
.slide-list-row.slide-overweight .slide-number{background:#fde2e2;color:#a52222}
.slide-list-row.slide-overweight .slide-list-item.active .slide-number{background:#c62828;color:#fff}
.slide-list-row.slide-overweight .slide-content-pill{background:#fff;border-color:#efc7c7}
.slide-weight-warning{display:inline-flex;align-items:center;gap:5px;margin-top:6px;padding:4px 7px;border-radius:9px;background:#c62828;color:#fff;font-size:10px;font-weight:800;line-height:1.2}
.slide-weight-warning i{font-size:10px}

.slide-optimize-action{width:34px;height:34px;display:grid;place-items:center;align-self:center;flex:0 0 34px;border:1px solid #e7aaaa;border-radius:11px;background:#fff1f1;color:#b3261e;cursor:pointer;transition:.18s}.slide-optimize-action:hover{transform:translateY(-1px);background:#c62828;color:#fff;border-color:#c62828;box-shadow:0 6px 14px rgba(198,40,40,.2)}
body.slide-optimize-open{overflow:hidden}.slide-optimize-modal[hidden]{display:none!important}.slide-optimize-modal{position:fixed;inset:0;z-index:2700;display:grid;place-items:center;padding:20px}.slide-optimize-backdrop{position:absolute;inset:0;background:rgba(11,29,56,.64);backdrop-filter:blur(5px)}.slide-optimize-card{position:relative;width:min(680px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border:1px solid #d5e2f0;border-radius:26px;box-shadow:0 30px 90px rgba(7,28,58,.32)}.slide-optimize-card>header{display:grid;grid-template-columns:52px minmax(0,1fr) 42px;gap:14px;align-items:center;padding:22px 24px;border-bottom:1px solid #e3ebf4}.slide-optimize-card>header h2{margin:2px 0 3px;color:#0b315f}.slide-optimize-card>header p{margin:0;color:#61738a}.slide-optimize-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:#e8f2ff;color:#0865d9;font-size:21px}.slide-optimize-close{width:42px;height:42px;border:0;border-radius:50%;background:#eef4fb;color:#173b67;cursor:pointer}.slide-optimize-close:disabled{opacity:.45;cursor:not-allowed}.slide-optimize-body{padding:22px 24px;display:grid;gap:16px}.slide-optimize-notice{display:flex;gap:11px;padding:14px;border-radius:15px;background:#eef6ff;border:1px solid #cee2f8;color:#315273;line-height:1.45}.slide-optimize-notice>i{color:#08784b;margin-top:2px}.slide-optimize-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.slide-optimize-summary>div{padding:12px;border:1px solid #dce7f2;border-radius:14px;background:#fbfdff}.slide-optimize-summary span,.slide-optimize-summary strong{display:block}.slide-optimize-summary span{font-size:11px;color:#687b92;margin-bottom:3px}.slide-optimize-summary strong{color:#0b315f}.slide-optimize-progress>div:first-child{display:flex;justify-content:space-between;gap:10px;color:#173b67}.slide-optimize-progress-track{height:9px;margin:8px 0;border-radius:999px;background:#e5edf6;overflow:hidden}.slide-optimize-progress-track>span{display:block;height:100%;width:0;background:#0865d9;transition:width .2s}.slide-optimize-progress small{color:#687b92}.slide-optimize-items{display:grid;gap:9px}.slide-optimize-item{display:grid;grid-template-columns:40px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:11px;align-items:center;padding:12px 14px;border:1px solid #dce7f2;border-radius:15px;background:#fff}.slide-optimize-item>i{grid-row:1/3;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#edf5ff;color:#0865d9}.slide-optimize-item>div strong,.slide-optimize-item>div span{display:block}.slide-optimize-item>div span{font-size:11px;color:#687b92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slide-optimize-item>strong{font-size:12px;color:#173b67}.slide-optimize-item-state{grid-column:2/4;font-size:11px;color:#687b92;margin-top:3px}.slide-optimize-item.is-processing{border-color:#8dbdf4;background:#f5f9ff}.slide-optimize-item.is-success{border-color:#a8dcc0;background:#f2fbf6}.slide-optimize-item.is-unchanged{background:#f8fafc}.slide-optimize-item.is-error{border-color:#efb4ad;background:#fff3f1}.slide-optimize-error{padding:12px 14px;border-radius:13px;background:#fff0ee;border:1px solid #efb4ad;color:#a32920;font-weight:700}.slide-optimize-card>footer{display:flex;justify-content:flex-end;gap:10px;padding:18px 24px;border-top:1px solid #e3ebf4}@media(max-width:640px){.slide-optimize-modal{padding:10px;align-items:end}.slide-optimize-card{width:100%;max-height:94vh;border-radius:22px 22px 0 0}.slide-optimize-summary{grid-template-columns:1fr}.slide-optimize-card>footer{flex-wrap:wrap}.slide-optimize-card>footer .btn{flex:1}}

.pptx-import-timeline.is-warning{border-color:#efd18d;background:linear-gradient(180deg,#fffdf7,#fff8e7)}
.pptx-import-timeline.is-warning .pptx-timeline-head>span{background:#b97900}
.pptx-import-timeline.is-warning .pptx-timeline-head>b{color:#9a6500}
.pptx-media-warning-panel{display:grid;gap:9px;margin:16px 0 0;padding:14px;border:1px solid #efd18d;border-radius:16px;background:#fff9e8;color:#805b00}
.pptx-media-warning-panel[hidden]{display:none!important}
.pptx-media-warning-panel>strong{display:flex;align-items:center;gap:8px}
.pptx-media-warning-panel article{display:grid;gap:3px;padding:10px 12px;border-radius:12px;background:#fffdf7;border:1px solid rgba(185,121,0,.18)}
.pptx-media-warning-panel article span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.pptx-media-warning-panel article b{font-size:12px;color:#6d4b00}
.pptx-media-warning-panel article small{font-size:11px;color:#8b6b25}


/* Lesson quiz portable package */
.quiz-import-modal-window{width:min(720px,100%)}
.quiz-import-form{display:flex;flex-direction:column;gap:16px}
.quiz-import-target{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--b-border);border-radius:14px;background:#f7faff}.quiz-import-target>span{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#e7f1ff;color:var(--b-blue)}.quiz-import-target small,.quiz-import-target strong{display:block}.quiz-import-target small{font-size:10px;letter-spacing:.08em;color:var(--b-muted);font-weight:800}.quiz-import-target strong{margin-top:3px;color:var(--b-navy)}
.quiz-package-picker{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;border:1.5px dashed #9bb6d5;border-radius:16px;padding:18px;background:#fbfdff;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.quiz-package-picker:hover,.quiz-package-picker:focus-visible{border-color:var(--b-blue);background:#f4f9ff;outline:0}.quiz-package-picker.is-dragover{border-color:var(--b-blue);background:#edf6ff;box-shadow:0 0 0 4px rgba(8,101,217,.10);transform:translateY(-1px)}.quiz-package-picker.is-valid{border-style:solid;border-color:#72c6a2;background:#f2fbf7}.quiz-package-picker.is-invalid{border-style:solid;border-color:#e39a94;background:#fff6f5}.quiz-package-picker input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.quiz-package-picker-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:#e9f3ff;color:var(--b-blue);font-size:20px}.quiz-package-picker.is-valid .quiz-package-picker-icon{background:#e3f6ec;color:#147650}.quiz-package-picker.is-invalid .quiz-package-picker-icon{background:#fdeae7;color:#a63a32}.quiz-package-picker-copy{min-width:0}.quiz-package-picker strong,.quiz-package-picker small{display:block}.quiz-package-picker strong{color:var(--b-navy);white-space:normal;overflow-wrap:anywhere}.quiz-package-picker small{color:var(--b-muted);margin-top:4px;line-height:1.4}.quiz-package-picker-status{display:none;align-items:center;justify-content:center;min-width:34px;height:34px;border-radius:999px;font-size:15px}.quiz-package-picker.is-valid .quiz-package-picker-status,.quiz-package-picker.is-invalid .quiz-package-picker-status{display:inline-flex}.quiz-package-picker.is-valid .quiz-package-picker-status{background:#e3f6ec;color:#147650}.quiz-package-picker.is-invalid .quiz-package-picker-status{background:#fdeae7;color:#a63a32}@media(max-width:620px){.quiz-package-picker{grid-template-columns:42px minmax(0,1fr);padding:15px}.quiz-package-picker-status{position:absolute;right:10px;top:10px}.quiz-package-picker-icon{width:42px;height:42px}.quiz-package-picker-copy{padding-right:28px}}
.quiz-import-mode{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:9px}.quiz-import-mode legend{font-weight:800;color:var(--b-navy);margin-bottom:8px}.quiz-import-mode label{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:flex-start;border:1px solid var(--b-border);border-radius:13px;padding:13px;cursor:pointer}.quiz-import-mode label:has(input:checked){border-color:#8fb8e8;background:#f4f9ff}.quiz-import-mode input{margin-top:3px}.quiz-import-mode strong,.quiz-import-mode small{display:block}.quiz-import-mode strong{color:var(--b-navy)}.quiz-import-mode small{color:var(--b-muted);margin-top:3px}
/* v1.48.40: azioni lezione + cancellazione sicura */
.tree-lesson.sortable-lesson{grid-template-columns:auto minmax(0,1fr) repeat(4,30px)}
.tree-lesson .structure-delete-button{width:30px;height:30px;border-radius:7px}
@media(max-width:760px){.tree-lesson.sortable-lesson{grid-template-columns:auto minmax(0,1fr) repeat(4,30px)}}

/* v1.48.42 - Course tree: keep lesson titles fully readable. */
.tree-lesson.sortable-lesson .tree-lesson-link{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    align-items:start;
    justify-content:stretch;
    gap:2px;
    min-width:0;
    padding:8px 2px;
}
.tree-lesson.sortable-lesson .tree-lesson-link>span{
    display:flex;
    align-items:flex-start;
    gap:8px;
    min-width:0;
    overflow:visible;
    text-overflow:clip;
    white-space:normal;
    line-height:1.28;
    overflow-wrap:anywhere;
}
.tree-lesson.sortable-lesson .tree-lesson-link>span i{
    flex:0 0 auto;
    margin-top:.12em;
}
.tree-lesson.sortable-lesson .tree-lesson-link>small{
    display:block;
    margin-left:24px;
    line-height:1.2;
    white-space:normal;
}

/* v1.48.90 - selezione indipendente watermark Corsi / Quiz */
.watermark-scope-options{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.watermark-scope-option{cursor:pointer}.watermark-scope-option input{position:absolute;opacity:0;pointer-events:none}.watermark-scope-option span{display:flex!important;align-items:center;justify-content:center;gap:8px;padding:9px 11px;border:1px solid #d6e2f0;border-radius:10px;background:#fff;color:#526780;font-weight:800;font-size:13px;margin:0!important}.watermark-scope-option input:checked+span{border-color:#0865d9;background:#eaf4ff;color:#0755b5;box-shadow:0 0 0 2px rgba(8,101,217,.07)}.watermark-scope-option input:focus-visible+span{outline:2px solid #0865d9;outline-offset:2px}@media(max-width:520px){.watermark-scope-options{grid-template-columns:1fr}}
.watermark-mode-selected{display:block}.watermark-mode-main{display:flex;gap:13px;align-items:flex-start;cursor:pointer}.watermark-mode-main>input{margin-top:4px}.watermark-mode-main>span:last-child{min-width:0}.watermark-mode-selected .watermark-scope-options{margin-left:51px}

/* v1.49.04 · Course actions are intentionally placed at the top of the card body. */
.course-admin-card .course-actions-toggle-top{margin:0 0 12px}
.course-admin-card .course-card-actions-top{margin:-4px 0 12px}

/* v1.49.05 · Notification center for teacher/reviewer editorial areas. */
.backend-notification-button{position:relative;display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid #d4e0ee;border-radius:10px;background:#fff;color:#14325c;cursor:pointer}.backend-notification-button:hover{background:#f2f7fd;color:#0865d9}.backend-notification-badge{position:absolute;right:-6px;top:-7px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#d9363e;color:#fff;border:2px solid #fff;display:grid;place-items:center;font-size:10px;font-weight:800}.backend-notification-badge[hidden]{display:none!important}.backend-notifications-overlay{position:fixed;inset:0;z-index:16000}.backend-notifications-overlay[hidden]{display:none}.backend-notifications-backdrop{position:absolute;inset:0;background:rgba(7,24,48,.56);backdrop-filter:blur(3px)}.backend-notifications-panel{position:absolute;right:0;top:0;height:100%;width:min(440px,100%);background:#fff;box-shadow:-20px 0 70px rgba(0,0,0,.26);display:flex;flex-direction:column}.backend-notifications-head{display:flex;justify-content:space-between;gap:14px;padding:22px;border-bottom:1px solid #dde7f2}.backend-notifications-head h2{margin:0;color:#102a52}.backend-notifications-head p{margin:5px 0 0;color:#6c7e93;font-size:12px}.backend-notifications-head button{width:40px;height:40px;border:0;border-radius:50%;background:#edf4fc;color:#102a52;cursor:pointer}.backend-notifications-toolbar{padding:10px 18px;border-bottom:1px solid #dde7f2;text-align:right}.backend-notifications-toolbar button{border:0;background:transparent;color:#0865d9;font-weight:800;cursor:pointer}.backend-notifications-list{overflow:auto;flex:1;padding:10px}.backend-notification-item{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;padding:14px;border-radius:14px;text-decoration:none;color:inherit}.backend-notification-item:hover{background:#f4f8fd}.backend-notification-item.unread{background:#edf6ff}.backend-notification-icon{width:42px;height:42px;border-radius:12px;background:#fff;color:#0865d9;display:grid;place-items:center;box-shadow:0 0 0 1px #d9e7f5}.backend-notification-item strong{display:block;color:#102a52;font-size:13px}.backend-notification-item p{margin:4px 0;color:#53677e;font-size:11px;line-height:1.45}.backend-notification-item small{color:#8393a6;font-size:10px}.backend-notification-dot{width:8px;height:8px;border-radius:50%;background:#0865d9;align-self:center}.backend-notifications-empty{min-height:190px;display:grid;place-items:center;align-content:center;text-align:center;color:#6c7e93;gap:8px}.backend-notifications-empty strong{color:#102a52}.backend-notifications-empty span{font-size:12px}@media(max-width:640px){.backend-notifications-panel{width:100%}}

/* v1.49.06 · Intelligent editorial workflow guidance. */
.workflow-guidance-card{margin:0 0 1.25rem;border:1px solid #dce7f4;border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(17,49,91,.04);overflow:hidden;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)}
.workflow-guidance-main{display:flex;gap:1rem;padding:1.3rem 1.4rem;align-items:flex-start}.workflow-guidance-icon{width:52px;height:52px;flex:0 0 52px;border-radius:15px;display:grid;place-items:center;background:#eaf3ff;color:#0865d9;font-size:1.25rem}.workflow-guidance-copy{min-width:0}.workflow-guidance-kicker,.workflow-guidance-next span,.workflow-guidance-you span{display:block;font-size:.68rem;line-height:1.2;letter-spacing:.11em;font-weight:900;color:#477199}.workflow-guidance-copy h2{margin:.18rem 0 .28rem;font-size:1.45rem;color:#102f59}.workflow-guidance-copy>strong{display:block;color:#173f70;margin-bottom:.28rem}.workflow-guidance-copy p{margin:0;color:#637890;line-height:1.5}.workflow-guidance-side{padding:1.3rem 1.4rem;border-left:1px solid #e4edf7;background:#f8fbff;display:grid;gap:.9rem;align-content:center}.workflow-guidance-next{padding:.9rem 1rem;border-radius:14px;background:#fff;border:1px solid #dfeaf6}.workflow-guidance-next strong{display:block;margin-top:.28rem;color:#0b5fc7;font-size:1rem}.workflow-guidance-you{display:flex;gap:.75rem;align-items:flex-start}.workflow-guidance-you>i{margin-top:.1rem;color:#0b7a50}.workflow-guidance-you p{margin:.22rem 0 0;color:#445f7c;font-size:.88rem;line-height:1.42}.workflow-notification-strip{grid-column:1/-1;border-top:1px solid #e4edf7;background:#fbfdff;padding:.8rem 1.4rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.workflow-notification-title{display:flex;align-items:center;gap:.65rem;margin-right:auto}.workflow-notification-title>i{color:#0865d9}.workflow-notification-title strong{display:block;color:#163a67}.workflow-notification-title small{display:block;color:#728399;margin-top:.08rem}.workflow-notification-channels,.workflow-notified-roles{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.workflow-notification-channels span,.workflow-notified-roles span{display:inline-flex;align-items:center;gap:.35rem;border:1px solid #dce8f4;background:#fff;border-radius:999px;padding:.34rem .58rem;color:#385b7f;font-size:.75rem;font-weight:750}.workflow-notification-channels i{color:#0b6bdc}.workflow-notified-roles small{color:#728399;margin-right:.1rem}.workflow-guidance-card.status-changes_requested .workflow-guidance-icon{background:#fff2e6;color:#9a4b00}.workflow-guidance-card.status-in_review .workflow-guidance-icon{background:#fff8d9;color:#7c5a00}.workflow-guidance-card.status-reviewed .workflow-guidance-icon{background:#efeaff;color:#5530a5}.workflow-guidance-card.status-approved .workflow-guidance-icon{background:#e6f8ef;color:#087443}.workflow-guidance-card.status-published .workflow-guidance-icon{background:#e6f2ff;color:#075fc7}.workflow-guidance-card.status-archived .workflow-guidance-icon{background:#eef0f3;color:#505b69}@media(max-width:1000px){.workflow-guidance-card{grid-template-columns:1fr}.workflow-guidance-side{border-left:0;border-top:1px solid #e4edf7}.workflow-notification-strip{grid-column:1}}@media(max-width:620px){.workflow-guidance-main{padding:1rem;}.workflow-guidance-side,.workflow-notification-strip{padding:1rem}.workflow-guidance-icon{width:44px;height:44px;flex-basis:44px}.workflow-guidance-copy h2{font-size:1.2rem}}
/* v1.49.07 · Editorial review ownership, deadlines and point corrections. */
.review-control-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:20px;margin:20px 0}.review-assignment-card,.review-progress-card,.review-items-card{border-radius:20px}.assignment-active,.empty-review-assignment{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid #dbe7f5;border-radius:16px;background:#f8fbff}.assignment-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#e8f2ff;color:#0865d9;font-size:20px}.assignment-active small{display:block;color:#617792;font-weight:800;font-size:11px;letter-spacing:.08em}.assignment-active strong{display:block;font-size:18px;color:#102a52;margin:3px 0}.assignment-active p,.empty-review-assignment p{margin:0;color:#63758c}.assignment-form{display:grid;grid-template-columns:1fr 180px auto;gap:12px;align-items:end;margin-top:16px}.compact-review-form{margin-top:14px}.review-counter{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:800}.review-counter.has-open{background:#fff3d2;color:#8a6000}.review-counter.is-clear{background:#e8f8ef;color:#16703f}.review-progress-meter{height:10px;background:#edf2f8;border-radius:999px;overflow:hidden;margin:22px 0 10px}.review-progress-meter span{display:block;height:100%;background:linear-gradient(90deg,#0865d9,#27b9cf);border-radius:inherit}.review-progress-caption{margin:0;color:#617792}.review-item-create{border:1px dashed #b9cce2;border-radius:14px;padding:14px 16px;margin:16px 0}.review-item-create summary{cursor:pointer;font-weight:800;color:#0865d9}.review-item-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.review-item-form .field-wide,.review-item-form button{grid-column:1/-1}.review-item-list{display:grid;gap:14px;margin-top:14px}.review-item{border:1px solid #dce6f1;border-left:5px solid #d6a400;border-radius:16px;padding:18px;background:#fff}.review-item.status-author_done{border-left-color:#1688d9}.review-item.status-closed{border-left-color:#32a568;background:#fbfefc}.review-item-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.review-item-head h3{margin:5px 0 0;color:#102a52}.review-item-head time{font-size:12px;color:#71839a;white-space:nowrap}.review-item-status{display:inline-flex;border-radius:999px;padding:5px 9px;background:#fff4d6;color:#846000;font-size:11px;font-weight:800;text-transform:uppercase}.status-author_done .review-item-status{background:#e9f5ff;color:#126aab}.status-closed .review-item-status{background:#e8f8ef;color:#187144}.review-item-location{display:inline-flex;gap:7px;align-items:center;margin:12px 0 4px;color:#536f91;font-weight:700;font-size:13px}.author-resolution{background:#f4f8fd;border-radius:12px;padding:12px 14px;margin-top:12px}.author-resolution p{margin:5px 0 0}.review-item-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.review-item-actions form{display:flex;gap:8px;flex:1;min-width:240px}.review-item-actions input[type=text]{flex:1}.review-empty{padding:28px 10px}@media(max-width:900px){.review-control-grid{grid-template-columns:1fr}.assignment-form,.review-item-form{grid-template-columns:1fr}.review-item-form .field-wide,.review-item-form button{grid-column:auto}.review-item-head{flex-direction:column}.review-item-actions form{min-width:100%}}
/* v1.49.08 · Editorial flow wow refresh and rationalized review workspace. */
.inline-action-form{display:inline-flex;margin:0}
.btn.btn-accent{background:linear-gradient(135deg,#0b6fe8,#22c1c3);border-color:transparent;color:#fff;box-shadow:0 10px 24px rgba(12,102,214,.22)}
.btn.btn-accent:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(12,102,214,.28)}
.workflow-page-head-wow{align-items:flex-start;gap:1.2rem}.workflow-wow-actions{flex-wrap:wrap;justify-content:flex-end}.workflow-top-meta{display:flex;flex-wrap:wrap;gap:.65rem 1rem;margin-top:.95rem;color:#5f748d;font-size:.92rem}.workflow-top-meta>span{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem .8rem;border:1px solid #e1ebf5;border-radius:999px;background:#fff}.workflow-top-meta strong{color:#123560}
.workflow-hero-card{margin:0 0 1.25rem;border-radius:24px;background:linear-gradient(145deg,#ffffff 0%,#f7fbff 100%);border:1px solid #dce7f4;box-shadow:0 12px 36px rgba(17,49,91,.08);padding:1.35rem;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:1rem}.workflow-hero-main{display:flex;gap:1rem;align-items:flex-start}.workflow-hero-icon{width:58px;height:58px;flex:0 0 58px;border-radius:18px;display:grid;place-items:center;background:#eaf3ff;color:#0865d9;font-size:1.45rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}.workflow-hero-copy h2{margin:.2rem 0 .25rem;font-size:1.55rem;color:#102f59}.workflow-hero-copy>strong{display:block;color:#1a4577;margin-bottom:.3rem}.workflow-hero-copy p{margin:0;color:#637890;line-height:1.58}.workflow-hero-personal{display:flex;gap:.75rem;align-items:flex-start;margin-top:1rem;padding:.9rem 1rem;border-radius:16px;background:#fff;border:1px solid #e1ebf5;color:#2c4967}.workflow-hero-personal i{color:#0b7a50;margin-top:.12rem}.workflow-hero-stats{display:grid;gap:.8rem}.workflow-stat-card{padding:1rem 1rem .95rem;border-radius:18px;background:#fff;border:1px solid #e1ebf5;box-shadow:0 6px 18px rgba(16,46,87,.04)}.workflow-stat-card small{display:block;font-size:.7rem;line-height:1.2;font-weight:900;letter-spacing:.1em;color:#5b7a9e}.workflow-stat-card strong{display:block;margin-top:.35rem;font-size:1.08rem;color:#123560}.workflow-stat-card span{display:block;margin-top:.28rem;color:#6d8097;font-size:.87rem;line-height:1.42}.workflow-stat-card.emphasis{background:linear-gradient(135deg,#0a6be6,#29bfd3);border-color:transparent}.workflow-stat-card.emphasis small,.workflow-stat-card.emphasis strong,.workflow-stat-card.emphasis span{color:#fff}.workflow-stat-card.inline-pills{display:flex;flex-direction:column;justify-content:center}.workflow-mini-pills{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.55rem}.workflow-mini-pills span{display:inline-flex;align-items:center;padding:.34rem .58rem;border-radius:999px;background:#eef6ff;color:#285888;font-size:.78rem;font-weight:800}.workflow-hero-card.status-changes_requested .workflow-hero-icon{background:#fff2e6;color:#9a4b00}.workflow-hero-card.status-in_review .workflow-hero-icon{background:#fff8d9;color:#7c5a00}.workflow-hero-card.status-reviewed .workflow-hero-icon{background:#efeaff;color:#5530a5}.workflow-hero-card.status-approved .workflow-hero-icon{background:#e6f8ef;color:#087443}.workflow-hero-card.status-published .workflow-hero-icon{background:#e6f2ff;color:#075fc7}.workflow-hero-card.status-archived .workflow-hero-icon{background:#eef0f3;color:#505b69}
.review-workspace-card,.wow-card{border-radius:24px;box-shadow:0 12px 32px rgba(17,49,91,.05)}.review-workspace-head{align-items:center}.review-overview-inline{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.review-inline-meta{display:inline-flex;align-items:center;padding:.45rem .7rem;border-radius:999px;background:#f4f8fc;color:#536f91;font-size:.8rem;font-weight:800}.review-workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:18px;margin-top:1rem}.review-subcard{padding:1rem 1.05rem;border:1px solid #dde8f4;border-radius:20px;background:linear-gradient(180deg,#fbfdff 0%,#ffffff 100%)}.review-subcard-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:.9rem}.review-subcard-head h3{margin:0;color:#123560;font-size:1.05rem}.review-assignment-state,.review-completion-label{display:inline-flex;align-items:center;padding:.38rem .62rem;border-radius:999px;font-size:.76rem;font-weight:900}.review-assignment-state.is-assigned{background:#e9f5ff;color:#0f67a8}.review-assignment-state.is-open{background:#fff3d2;color:#8a6000}.review-completion-label{background:#eef6ff;color:#27588a}.assignment-active-wow{background:#fff;border-color:#dfeaf6}.assignment-form-wow{grid-template-columns:minmax(0,1fr) 190px auto}.review-inline-empty{display:flex;gap:16px;align-items:center;padding:16px;border:1px dashed #c7d7ea;border-radius:16px;background:#fbfdff}.review-inline-empty i{font-size:1.7rem;color:#93a8bf}.review-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:1rem}.review-stats-grid>div{padding:.9rem .8rem;border-radius:16px;background:#fff;border:1px solid #e3edf7}.review-stats-grid small{display:block;color:#6e8197;font-weight:800;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}.review-stats-grid strong{display:block;margin-top:.28rem;color:#11355f;font-size:1.3rem}.review-item-create-wow{margin-top:1rem;background:#fff}.review-register-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin:1.2rem 0 .55rem}.review-register-head h3{margin:0;color:#123560}.review-register-head p{margin:.2rem 0 0;color:#637890}.review-register-empty{display:flex;align-items:center;gap:1rem;padding:1rem 1.1rem;border:1px dashed #c9d9ea;border-radius:18px;background:#fbfdff;color:#4b6480}.review-register-empty .empty-dot{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#e8f8ef;color:#137543;flex:0 0 44px}.review-register-empty strong{display:block;color:#123560;margin-bottom:.15rem}.review-register-empty p{margin:0}.review-item-list-wow{margin-top:.75rem}
.workflow-bottom-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-top:1.25rem}.workflow-action-card,.workflow-history-card{border-radius:24px}.workflow-action-meta{display:flex;flex-wrap:wrap;gap:.65rem;margin:.25rem 0 1rem;color:#617792}.workflow-action-meta span{display:inline-flex;align-items:center;gap:.45rem;padding:.48rem .72rem;border-radius:999px;background:#f6f9fc;border:1px solid #e3edf7;font-size:.86rem}.workflow-action-form-wow{margin-top:0;padding-top:0;border-top:0}.history-total-badge{display:inline-flex;align-items:center;padding:.45rem .7rem;border-radius:999px;background:#eef6ff;color:#2b5d8e;font-size:.82rem;font-weight:900}.history-more-details{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2ebf5}.history-more-details summary{cursor:pointer;color:#0b66d6;font-weight:800}.workflow-timeline-extra{margin-top:.9rem}
@media(max-width:1100px){.workflow-hero-card{grid-template-columns:1fr}.review-workspace-grid{grid-template-columns:1fr}.assignment-form-wow{grid-template-columns:1fr}.workflow-wow-actions{justify-content:flex-start}}
@media(max-width:700px){.workflow-page-head-wow{gap:.9rem}.workflow-top-meta{gap:.55rem}.workflow-top-meta>span{width:100%;justify-content:flex-start}.workflow-hero-card{padding:1rem}.workflow-hero-icon{width:50px;height:50px;flex-basis:50px}.workflow-hero-copy h2{font-size:1.28rem}.review-stats-grid{grid-template-columns:1fr}.review-register-head{flex-direction:column;align-items:flex-start}.workflow-action-meta span{width:100%}}
/* v1.49.09 · Premium editorial dashboard: SLA, activity feed, publish readiness and richer timeline. */
.sla-badge{display:inline-flex!important;align-items:center;gap:.38rem;margin-top:.55rem;padding:.36rem .58rem;border-radius:999px;font-size:.75rem!important;font-weight:900;line-height:1.1;width:max-content}.sla-none{background:#f1f4f8;color:#66798d}.sla-ok{background:#e8f8ef;color:#157143}.sla-urgent{background:#fff4d6;color:#8a6100}.sla-today{background:#fff0df;color:#a04d00}.sla-overdue{background:#ffe8e8;color:#ae2222}.review-assignment-badges{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.review-assignment-badges .sla-badge{margin-top:0}
.publish-readiness-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1.1rem;align-items:center;margin:0 0 1.25rem;padding:1.15rem 1.25rem;border-radius:24px;border:1px solid #bfe6d1;background:linear-gradient(135deg,#f5fff9 0%,#eef8ff 100%);box-shadow:0 14px 36px rgba(10,102,83,.08)}.publish-readiness-card.status-reviewed{border-color:#cdd8f7;background:linear-gradient(135deg,#f7f9ff,#f2fbff)}.publish-readiness-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#dff6e9;color:#087443;font-size:1.45rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.75)}.publish-readiness-card.status-reviewed .publish-readiness-icon{background:#e9edff;color:#4e44a6}.publish-readiness-copy>span{display:block;font-size:.68rem;letter-spacing:.11em;font-weight:900;color:#5f7d75}.publish-readiness-copy h2{margin:.18rem 0 .25rem;color:#103b35;font-size:1.35rem}.publish-readiness-card.status-reviewed .publish-readiness-copy h2{color:#283a73}.publish-readiness-copy p{margin:0;color:#5d746f;line-height:1.48}.publish-readiness-checks{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.publish-readiness-checks span{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .58rem;border-radius:999px;background:#fff;border:1px solid rgba(34,112,88,.14);font-size:.76rem;font-weight:800;color:#3f6358}.publish-readiness-action{margin:0}
.review-item.is-urgent{border-color:#efbd75;border-left-color:#dc7b00;box-shadow:0 8px 22px rgba(190,111,0,.08);background:linear-gradient(90deg,#fffaf2 0%,#fff 24%)}.review-item.is-urgent .review-item-status:after{content:' · PRIORITÀ';font-weight:900}
.workflow-bottom-grid{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr)}.workflow-history-full{grid-column:1/-1}.workflow-activity-card{align-self:start}.activity-feed{display:grid;gap:.15rem}.activity-feed-item{display:grid;grid-template-columns:38px 1fr;gap:.75rem;padding:.72rem 0;border-bottom:1px solid #e8eef6}.activity-feed-item:last-child{border-bottom:0}.activity-feed-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#edf5ff;color:#0b65ce}.activity-feed-item.status-published .activity-feed-icon,.activity-feed-item.status-approved .activity-feed-icon,.activity-feed-item.review-closed .activity-feed-icon{background:#e8f8ef;color:#157143}.activity-feed-item.status-changes_requested .activity-feed-icon,.activity-feed-item.review-open .activity-feed-icon{background:#fff3db;color:#936200}.activity-feed-item.review-author_done .activity-feed-icon{background:#e9f5ff;color:#126aab}.activity-feed-item strong{display:block;color:#14385f;font-size:.9rem}.activity-feed-item p{margin:.14rem 0 0;color:#6b7e94;font-size:.8rem}.activity-feed-item time{display:block;margin-top:.15rem;color:#98a7b6;font-size:.72rem}.activity-sla-note{display:flex;gap:.55rem;align-items:flex-start;margin-top:.9rem;padding:.75rem .8rem;border-radius:14px;font-size:.82rem;font-weight:700}.activity-sla-note.sla-none{background:#f5f7fa}.activity-sla-note.sla-ok{background:#eefaf3}.activity-sla-note.sla-urgent{background:#fff8e5}.activity-sla-note.sla-today{background:#fff3e7}.activity-sla-note.sla-overdue{background:#fff0f0}
.workflow-timeline article.timeline-event{grid-template-columns:34px 1fr;padding-bottom:1.2rem}.workflow-timeline article.timeline-event:before{left:16px;top:34px}.workflow-timeline .timeline-dot{width:34px;height:34px;margin-top:0;border:0;display:grid;place-items:center;background:#eaf3ff;color:#0969da;box-shadow:inset 0 0 0 1px #d7e7fb}.workflow-timeline .timeline-dot i{font-size:.78rem}.workflow-timeline .timeline-event.status-changes_requested .timeline-dot{background:#fff2e6;color:#9a4b00}.workflow-timeline .timeline-event.status-reviewed .timeline-dot{background:#efeaff;color:#5530a5}.workflow-timeline .timeline-event.status-approved .timeline-dot{background:#e6f8ef;color:#087443}.workflow-timeline .timeline-event.status-published .timeline-dot{background:#e6f2ff;color:#075fc7}.workflow-timeline .timeline-event.status-archived .timeline-dot{background:#eef0f3;color:#505b69}.workflow-timeline .timeline-event.status-draft .timeline-dot{background:#f2f5f8;color:#52677e}.workflow-timeline .timeline-head strong{font-size:.94rem}
@media(max-width:1000px){.workflow-bottom-grid{grid-template-columns:1fr}.workflow-history-full{grid-column:auto}.publish-readiness-card{grid-template-columns:auto 1fr}.publish-readiness-action{grid-column:1/-1}.publish-readiness-action .btn{width:100%}}
@media(max-width:700px){.publish-readiness-card{grid-template-columns:1fr}.publish-readiness-icon{width:50px;height:50px}.review-assignment-badges{justify-content:flex-start}.workflow-timeline article.timeline-event{grid-template-columns:32px 1fr}.workflow-timeline .timeline-dot{width:32px;height:32px}}
/* v1.49.10 · Material cleanup for review assignment layout and clearer page hierarchy. */
.review-workspace-head{justify-content:space-between;align-items:flex-start;gap:1rem}.review-workspace-card .section-title p{max-width:760px}
.review-workspace-grid,.review-subcard,.assignment-form-wow,.assignment-form-row{min-width:0}.review-subcard{padding:1.2rem;border-radius:22px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.review-subcard-head{align-items:flex-start}.review-assignment-badges{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-end}
.assignment-active-wow{margin-bottom:1rem}.assignment-management-panel{margin-top:1rem;padding:1rem;border-radius:18px;border:1px solid #e2ebf5;background:linear-gradient(180deg,#f9fbff 0%,#ffffff 100%)}.assignment-management-head h4{margin:0;color:#123560;font-size:.98rem}.assignment-management-head p{margin:.35rem 0 0;color:#637890;line-height:1.5;font-size:.9rem}.assignment-form-wow{display:grid;grid-template-columns:1fr;gap:14px;margin-top:1rem}.assignment-form-wow .field-wide{grid-column:1/-1}.assignment-form-wow .field label{font-size:.9rem;letter-spacing:.01em}.assignment-form-wow input,.assignment-form-wow select{width:100%;min-width:0;height:48px}.assignment-form-row{display:grid;grid-template-columns:minmax(0,230px) minmax(210px,max-content);gap:14px;align-items:end}.assignment-form-row .btn{min-height:48px;justify-content:center;padding-inline:20px}
.review-register-empty{margin-top:.35rem}.review-metrics-subcard .review-progress-meter{margin-top:.8rem}
.workflow-bottom-grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)}
@media(max-width:1200px){.workflow-bottom-grid{grid-template-columns:1fr}.assignment-form-row{grid-template-columns:1fr}.review-assignment-badges{justify-content:flex-start}}
@media(max-width:700px){.review-workspace-head{flex-direction:column}.review-overview-inline{width:100%}.assignment-management-panel{padding:.9rem}.assignment-form-row .btn{width:100%}}
/* v1.49.11 · Role-based editorial wizards and simplified workflow dashboard. */
.wizard-shell{width:min(1040px,100%);margin:0 auto 2rem}.wizard-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.wizard-back{display:inline-flex;align-items:center;gap:.5rem;color:#31587f;font-weight:800;text-decoration:none}.wizard-role-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.48rem .75rem;border-radius:999px;background:#eef6ff;color:#155d9f;font-size:.82rem;font-weight:900}.wizard-header{margin-bottom:1.1rem}.wizard-header h1{margin:.15rem 0 .25rem;color:#10254b;font-family:'Roboto Condensed',sans-serif;font-size:clamp(2rem,4vw,2.7rem)}.wizard-header p{margin:0;color:#667a92;font-size:1rem}.wizard-form{background:#fff;border:1px solid #dce7f4;border-radius:26px;box-shadow:0 16px 42px rgba(16,45,82,.07);overflow:hidden}.wizard-stepper{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0;border-bottom:1px solid #e4edf6;background:#f8fbff}.wizard-step{appearance:none;border:0;background:transparent;padding:1rem .8rem;display:flex;align-items:center;justify-content:center;gap:.65rem;color:#71849a;font:inherit;cursor:pointer;position:relative}.wizard-step span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e8eef5;color:#58708c;font-weight:900}.wizard-step b{font-size:.86rem}.wizard-step.is-active{color:#0a63cd;background:#fff}.wizard-step.is-active span{background:#0865d9;color:#fff;box-shadow:0 6px 14px rgba(8,101,217,.2)}.wizard-step.is-complete span{background:#e7f7ef;color:#147348}.wizard-step.is-complete span:before{content:'✓';font-size:.9rem}.wizard-step.is-complete span{font-size:0}.wizard-panel{display:none;padding:clamp(1.25rem,3vw,2rem)}.wizard-panel.is-active{display:block}.wizard-panel-title{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.35rem}.wizard-panel-title h2{margin:0 0 .25rem;color:#102f59;font-size:1.45rem}.wizard-panel-title p{margin:0;color:#687b92;line-height:1.5}.material-icon{width:50px;height:50px;flex:0 0 50px;display:grid;place-items:center;border-radius:16px;background:#eaf3ff;color:#0865d9;font-size:1.2rem}.material-icon.success{background:#e8f8ef;color:#137543}.wizard-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.wizard-summary-grid>div{padding:1rem;border:1px solid #e1eaf4;border-radius:16px;background:#fbfdff}.wizard-summary-grid small{display:block;color:#70839a;text-transform:uppercase;font-weight:900;font-size:.72rem;letter-spacing:.05em}.wizard-summary-grid strong{display:block;margin-top:.3rem;color:#12355f;line-height:1.35}.wizard-info,.wizard-final-card{display:flex;gap:.9rem;align-items:flex-start;margin-top:1.1rem;padding:1rem;border-radius:16px;background:#f2f8ff;border:1px solid #d8e8f7;color:#315574}.wizard-info>i,.wizard-final-card>i{margin-top:.15rem;color:#0865d9;font-size:1.15rem}.wizard-info strong,.wizard-final-card strong{display:block;color:#12355f}.wizard-info p,.wizard-final-card p{margin:.25rem 0 0;line-height:1.5}.wizard-info.warning{background:#fff8e8;border-color:#f0d99b;color:#725810}.wizard-info.warning>i{color:#b27b00}.wizard-field{gap:8px}.wizard-field label{font-size:.92rem}.wizard-field .optional{font-weight:600;color:#8999aa}.wizard-field input,.wizard-field select,.wizard-field textarea{width:100%;box-sizing:border-box;min-width:0;outline:none;transition:.18s}.wizard-field input:focus,.wizard-field select:focus,.wizard-field textarea:focus{border-color:#0865d9;box-shadow:0 0 0 4px rgba(8,101,217,.1)}.wizard-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.wizard-actions{display:flex;align-items:center;gap:.8rem;padding:1rem 1.25rem;border-top:1px solid #e4edf6;background:#fbfdff}.wizard-progress-text{margin:auto;color:#71849a;font-size:.86rem;font-weight:800}.wizard-submit{margin-left:auto}.wizard-assignment{display:flex;gap:1rem;align-items:center;padding:1rem;border:1px solid #e0eaf4;border-radius:18px;background:#fbfdff}.wizard-assignment>span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#eaf3ff;color:#0865d9}.wizard-assignment small{display:block;color:#71849a;font-size:.72rem;font-weight:900;letter-spacing:.06em}.wizard-assignment strong{display:block;color:#102f59;font-size:1.15rem;margin:.18rem 0}.wizard-assignment p{margin:0;color:#657a92}.wizard-inline-action{margin-top:1rem}.wizard-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:1.25rem}.wizard-checklist label{display:flex;gap:.7rem;align-items:flex-start;padding:.9rem 1rem;border:1px solid #e1eaf4;border-radius:15px;background:#fbfdff;color:#304c6b;font-weight:700}.wizard-checklist input{margin-top:.15rem;accent-color:#0865d9}.wizard-correction-form{padding:1rem;border:1px solid #e0eaf4;border-radius:18px;background:#fbfdff}.wizard-review-list{display:grid;gap:12px;margin-top:1rem}.wizard-review-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding:1rem;border:1px solid #e0e9f4;border-radius:16px;background:#fff}.wizard-review-list article>div>strong{display:block;margin:.45rem 0 .2rem;color:#12355f}.wizard-review-list small{display:block;color:#687c94}.wizard-review-list p{margin:.5rem 0 0;color:#4f6580;line-height:1.5}.wizard-review-list form{align-self:center}.wizard-empty{display:flex;gap:.65rem;align-items:center;padding:1rem;border-radius:16px;background:#edf9f3;color:#187249}.wizard-item-resolution{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:.65rem;align-items:end}.wizard-item-resolution input{min-width:0}.wizard-outcome-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.wizard-outcome{padding:1.2rem;border:1px solid #e0e9f4;border-radius:20px;background:#fbfdff}.wizard-outcome>i{font-size:1.6rem}.wizard-outcome.success>i{color:#16845b}.wizard-outcome.warning>i{color:#b47d00}.wizard-outcome h3{margin:.65rem 0 .3rem;color:#12355f}.wizard-outcome p{color:#667b93;line-height:1.5}.wizard-outcome .btn{margin-top:.8rem}.wizard-outcome small{display:block;margin-top:.5rem;color:#8a6400}.wizard-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:1rem 0}.wizard-dashboard-card{padding:1.1rem;border:1px solid #e0e9f4;border-radius:20px;background:#fff}.wizard-dashboard-card small{display:block;color:#75889f;font-size:.72rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.wizard-dashboard-card strong{display:block;margin:.3rem 0;color:#12355f;font-size:1.08rem}.wizard-dashboard-card p{margin:0;color:#697d94}.workflow-primary-action{padding:1.25rem;border-radius:22px;background:linear-gradient(135deg,#0a69dc,#25b7ca);color:#fff;display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:1rem 0}.workflow-primary-action h2{margin:0 0 .25rem;color:#fff}.workflow-primary-action p{margin:0;color:rgba(255,255,255,.85)}.workflow-primary-action .btn{background:#fff;color:#0b5fbd;white-space:nowrap}.workflow-advanced-details{margin-top:1rem;border:1px solid #e0e9f4;border-radius:18px;background:#fff}.workflow-advanced-details summary{cursor:pointer;padding:1rem 1.1rem;font-weight:900;color:#315777}.workflow-advanced-inner{padding:0 1.1rem 1.1rem}
@media(max-width:800px){.wizard-summary-grid,.wizard-two-columns,.wizard-checklist,.wizard-outcome-grid,.wizard-dashboard-grid{grid-template-columns:1fr}.wizard-review-list article{grid-template-columns:1fr}.wizard-item-resolution{grid-template-columns:1fr}.wizard-actions{flex-wrap:wrap}.wizard-progress-text{order:-1;width:100%;text-align:center}.workflow-primary-action{align-items:flex-start;flex-direction:column}.workflow-primary-action .btn{width:100%;justify-content:center}.wizard-step b{display:none}}
/* v1.49.12 · Wizard assignment management for Admin / Direzione scientifica. */
.wizard-assignment-manager{margin-top:1.25rem;padding:1.15rem;border:1px solid #dce7f4;border-radius:20px;background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%)}
.wizard-assignment-manager-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding-bottom:1rem;border-bottom:1px solid #e4edf6}.wizard-assignment-manager-head span{display:block;color:#4e7398;font-size:.7rem;letter-spacing:.09em;font-weight:900}.wizard-assignment-manager-head h3{margin:.2rem 0 .28rem;color:#102f59;font-size:1.12rem}.wizard-assignment-manager-head p{margin:0;color:#667b93;line-height:1.5;max-width:680px}.wizard-assignment-manager-head>i{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#eaf3ff;color:#0865d9;flex:0 0 42px}
.wizard-assignment-manager-form{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:16px;margin-top:1rem;align-items:end}.wizard-assignment-manager-action{grid-column:1/-1;display:flex;justify-content:flex-end;padding-top:.15rem}.wizard-assignment-manager-action .btn{min-width:210px;justify-content:center}.wizard-assignment-manager .wizard-field small{color:#71849a;font-size:.78rem}.wizard-assignment-manager select,.wizard-assignment-manager input{height:48px}
@media(max-width:800px){.wizard-assignment-manager-form{grid-template-columns:1fr}.wizard-assignment-manager-action{grid-column:auto}.wizard-assignment-manager-action .btn{width:100%}.wizard-assignment-manager-head>i{display:none}}
/* v1.49.13 · Guided open/assigned review behavior in request wizard. */
.wizard-assignment-choice .wizard-field{position:relative}.wizard-assignment-choice .wizard-field small{display:block;min-height:2.35em;color:#71849a;line-height:1.4}.wizard-assignment-choice .wizard-field.is-disabled{opacity:.72}.wizard-assignment-choice .wizard-field.is-disabled input{background:#f3f6fa;color:#8b9aad;cursor:not-allowed}.assignment-open-info{margin-top:1rem;background:#f5f9ff}.wizard-confirm-assignment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:1rem}.wizard-confirm-assignment>div{padding:1rem;border:1px solid #e1eaf4;border-radius:16px;background:#fbfdff}.wizard-confirm-assignment small{display:block;color:#71849a;font-size:.72rem;font-weight:900;letter-spacing:.06em}.wizard-confirm-assignment strong{display:block;margin-top:.28rem;color:#12355f;font-size:1.02rem}.wizard-info[hidden]{display:none!important}@media(max-width:800px){.wizard-confirm-assignment{grid-template-columns:1fr}}

/* v1.49.16 · Backup quarantine exclusion policy. */
.backup-quarantine-policy{display:flex;align-items:flex-start;gap:9px;margin-top:10px;padding:10px 12px;border:1px solid #dce8f4;border-radius:12px;background:#f7fbff;color:#49637f;font-size:12px;line-height:1.45}.backup-quarantine-policy i{margin-top:2px;color:#0865d9}.backup-quarantine-policy strong{color:#173e6d}
/* v1.49.21 · Legal documents: readable compiled-preview modal and deliberate placeholder insertion. */
body.legal-modal-open{overflow:hidden}.legal-preview-modal,.legal-placeholder-modal{position:fixed;inset:0;z-index:14000;display:grid;place-items:center;padding:24px}.legal-preview-modal[hidden],.legal-placeholder-modal[hidden]{display:none}.legal-modal-backdrop{position:absolute;inset:0;background:rgba(9,28,54,.62);backdrop-filter:blur(5px)}.legal-preview-dialog,.legal-placeholder-dialog{position:relative;width:min(980px,calc(100vw - 48px));max-height:calc(100dvh - 48px);overflow:hidden;background:#fff;border:1px solid #d6e3f2;border-radius:26px;box-shadow:0 32px 90px rgba(8,28,57,.30);display:grid;grid-template-rows:auto minmax(0,1fr)}.legal-placeholder-dialog{width:min(880px,calc(100vw - 48px))}.legal-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 28px 20px;border-bottom:1px solid #e2ebf5;background:linear-gradient(180deg,#fff,#f8fbff)}.legal-modal-head h2{margin:.25rem 0 .35rem;color:#102f59;font-size:1.55rem}.legal-modal-head p{margin:0;color:#667b93}.legal-modal-close{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border:1px solid #d8e4f2;border-radius:50%;background:#fff;color:#17395f;cursor:pointer;font-size:1rem;transition:background .18s ease,transform .18s ease}.legal-modal-close:hover{background:#edf5ff;transform:rotate(4deg)}.legal-preview-modal-content{overflow:auto;padding:30px 34px 42px;line-height:1.7;color:#263b53}.legal-preview-modal-content h2{margin:1.7rem 0 .7rem;color:#102f59;font-size:1.45rem}.legal-preview-modal-content h3{margin:1.35rem 0 .6rem;color:#173f70}.legal-preview-modal-content p{margin:.65rem 0}.legal-preview-modal-content ul,.legal-preview-modal-content ol{padding-left:1.5rem}.legal-preview-modal-content blockquote{margin:1rem 0;padding:1rem 1.15rem;border-left:4px solid #0d6dde;background:#f5f9ff;border-radius:0 12px 12px 0}.legal-toolbar-token-button{width:auto!important;padding:0 11px!important;gap:7px!important;font-weight:800!important}.legal-toolbar-token-button span{font-size:.78rem}.legal-placeholder-picker{overflow:auto;padding:22px 24px 28px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.legal-placeholder-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;text-align:left;padding:13px 14px;border:1px solid #d5e4f4;border-radius:14px;background:#fff;cursor:pointer;color:#173f70;transition:border-color .18s ease,background .18s ease,transform .18s ease}.legal-placeholder-choice code{grid-column:1;font-size:.82rem;font-weight:900;color:#0865d9;overflow-wrap:anywhere}.legal-placeholder-choice span{grid-column:1;color:#637890;font-size:.82rem}.legal-placeholder-choice i{grid-column:2;grid-row:1/3;align-self:center;color:#b77a00}.legal-placeholder-choice:hover{border-color:#8ab9ee;background:#f7fbff;transform:translateY(-1px)}.legal-placeholder-chip{transition:border-color .18s ease,background .18s ease,transform .18s ease}.legal-placeholder-chip.is-copied{border-color:#65bd8c!important;background:#effbf4!important;transform:translateY(-1px)}.legal-placeholder-chip.is-copied i:before{content:"\f00c"}.legal-live-preview{display:none!important}@media(max-width:760px){.legal-preview-modal,.legal-placeholder-modal{padding:0}.legal-preview-dialog,.legal-placeholder-dialog{width:100%;height:100dvh;max-height:100dvh;border-radius:0}.legal-modal-head{padding:18px 20px}.legal-preview-modal-content{padding:22px 20px 34px}.legal-placeholder-picker{grid-template-columns:1fr;padding:18px}.legal-toolbar-token-button span{display:none}}

/* v1.49.24 — anteprima documenti legali fedele alla pagina pubblica. */
.legal-preview-modal-content{background:#f3f7fc;padding:28px;overflow:auto}.legal-preview-public-shell{width:100%;max-width:1040px;margin:0 auto}.legal-preview-public-page{padding:0!important;margin:0!important}.legal-preview-public-card{box-sizing:border-box;width:100%;max-width:none!important;margin:0!important;padding:38px 42px!important;border-radius:22px!important;box-shadow:0 12px 34px rgba(16,37,75,.07)}.legal-preview-public-card>h1{margin:0 0 7px;color:#10254b;font-family:'Roboto Condensed',sans-serif;font-size:36px;line-height:1.1}.legal-preview-public-card>small{display:block;margin-bottom:24px;color:#6c8098}.legal-preview-public-card .legal-public-content{font-size:15px;line-height:1.75;color:#263b53}.legal-preview-public-card .legal-public-content h2{margin:1.65em 0 .55em;font-size:1.42em}.legal-preview-public-card .legal-public-content h3{margin:1.3em 0 .45em;font-size:1.16em}.legal-preview-public-card .legal-public-content p{margin:.7em 0}.legal-preview-public-card .legal-public-content li{margin:.34em 0}.legal-preview-public-card .legal-public-content a{color:#0865d9}.legal-placeholder-dialog{grid-template-rows:auto minmax(0,1fr) auto}
@media(max-width:760px){.legal-preview-modal-content{padding:14px}.legal-preview-public-card{padding:24px 20px!important;border-radius:16px!important}.legal-preview-public-card>h1{font-size:30px}}

/* v1.49.26: seconda riga KPI corso */
.course-kpi-grid-secondary{margin-top:7px}
/* v1.49.27: stima preventiva ottimizzazione multimediale */
.slide-optimize-estimate{padding:11px 13px;border:1px dashed #bed5ec;border-radius:13px;background:#f8fbff;color:#315273;font-size:12px;font-weight:700}

/* v1.49.47 - diagnostica persistente convalida risorse */
.resource-queue-item.is-error{border-color:#efb6b1;background:#fff8f7;grid-template-columns:minmax(0,1fr) auto auto}
.resource-queue-item.is-error .resource-queue-status{background:#fee4e2;color:#b42318}
.resource-queue-error{grid-column:1/-1;border-top:1px solid #f1c7c3;padding-top:10px;color:#8f1d18;display:grid;gap:4px;font-size:12px;line-height:1.45}
.resource-queue-error>strong{font-size:12px;color:#b42318}
.resource-queue-error-details{margin-top:4px;border:1px solid #f0c9c5;border-radius:9px;background:#fff;padding:7px 9px}
.resource-queue-error-details summary{cursor:pointer;font-weight:800;color:#8f1d18}
.resource-queue-error-details pre,[data-resource-error] pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:7px 0 0;font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#5e2a27;background:#fff7f6;border-radius:7px;padding:8px}
[data-resource-error] strong,[data-resource-error] div{display:block}
[data-resource-error] details{margin-top:8px}
[data-resource-error] summary{cursor:pointer;font-weight:800}
@media(max-width:760px){.resource-queue-item.is-error{grid-template-columns:1fr}.resource-queue-error{grid-column:1}}

/* v1.49.48 - dichiarazione anonimizzazione risorse */
.resource-health-attestation{align-items:flex-start;padding:12px 14px;border:1px solid #b9d5f7;border-radius:12px;background:#f4f9ff;line-height:1.4}.resource-health-attestation input{margin-top:3px}.resource-health-attestation strong{color:#0b376d}


/* v1.49.68 · Course Builder lesson quiz status */
.course-quiz-overview{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:-7px 0 14px;padding:8px 10px;border:1px solid #dbe6f2;border-radius:11px;background:#f8fbff;color:#526780;font-size:11px}.course-quiz-overview strong{margin-right:auto;color:#173b66;font-size:11px}.quiz-overview-dot{min-width:24px;height:24px;padding:0 7px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:900}.quiz-overview-dot.ready{background:#e5f7ee;color:#147650}.quiz-overview-dot.incomplete{background:#fff1d8;color:#9a6400}.quiz-overview-dot.disabled{background:#fde9e7;color:#a33b33}.quiz-overview-dot.missing{background:#edf1f5;color:#65788e}
.lesson-quiz-status-button{width:30px;height:30px;border-radius:8px;display:inline-grid;place-items:center;text-decoration:none;border:1px solid transparent;transition:transform .12s ease,background .12s ease,border-color .12s ease;color:#6f829a}.lesson-quiz-status-button:hover{transform:translateY(-1px)}.lesson-quiz-status-button.is-ready{background:#e5f7ee;border-color:#b8e4cf;color:#147650}.lesson-quiz-status-button.is-ready:hover{background:#d8f1e5}.lesson-quiz-status-button.is-disabled{background:#fde9e7;border-color:#f0c4bf;color:#a33b33}.lesson-quiz-status-button.is-disabled:hover{background:#f9dcd9}.lesson-quiz-status-button.is-incomplete{background:#fff1d8;border-color:#efd49a;color:#9a6400}.lesson-quiz-status-button.is-incomplete:hover{background:#ffe9bf}.lesson-quiz-status-button.is-missing{background:#edf1f5;border-color:#d8e0e8;color:#65788e}.lesson-quiz-status-button.is-missing:hover{background:#e2e8ee}.lesson-quiz-status-button:focus-visible{outline:3px solid rgba(8,101,217,.22);outline-offset:2px}
.tree-lesson.sortable-lesson{grid-template-columns:auto minmax(0,1fr) repeat(4,30px)}

/* v1.49.73 - wizard Vimeo + timeline risorse */
.resource-vimeo-entry{margin-top:9px;border:1px solid #b9d3ef;background:#f4f9ff;border-radius:12px;padding:10px 11px;display:flex;align-items:center;justify-content:space-between;gap:12px}.resource-vimeo-entry[hidden]{display:none!important}.resource-vimeo-entry>div{display:flex;align-items:center;gap:10px;min-width:0}.resource-vimeo-entry>div>i{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#e9f3ff;color:#0865d9;font-size:18px}.resource-vimeo-entry strong,.resource-vimeo-entry small{display:block}.resource-vimeo-entry strong{font-size:12px;color:var(--b-navy)}.resource-vimeo-entry small{font-size:10px;color:var(--b-muted);margin-top:2px}.resource-badge.vimeo{background:#edf5ff;color:#0865d9;display:inline-flex;align-items:center;gap:5px}.resource-modal-backdrop.is-vimeo-wizard-suspended{visibility:hidden;pointer-events:none}
.resource-vimeo-wizard-backdrop{position:fixed;inset:0;z-index:10070;background:rgba(8,24,45,.74);display:grid;place-items:center;padding:18px}.resource-vimeo-wizard{width:min(820px,100%);max-height:94vh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 28px 90px rgba(0,0,0,.35);padding:22px;position:relative}.resource-wizard-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 20px}.resource-wizard-steps span{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dbe6f2;border-radius:11px;background:#f7f9fc;padding:9px;color:#6a7d92;font-size:12px;font-weight:800}.resource-wizard-steps span b{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#e7eef7}.resource-wizard-steps span.is-active{border-color:#9fc7f2;background:#eef6ff;color:#0865d9}.resource-wizard-steps span.is-active b{background:#0865d9;color:#fff}.resource-wizard-info{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:11px 12px;border:1px solid #d7e5f3;border-radius:11px;background:#f8fbff;color:#526b84;font-size:12px;line-height:1.45}.resource-wizard-info.is-valid{border-color:#b9dfc9;background:#f1fbf5;color:#176b45}.resource-wizard-info.is-error{border-color:#efc2bd;background:#fff5f3;color:#9a332b}.resource-wizard-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px}.resource-timeline-builder{border:1px solid #d9e4f0;border-radius:13px;padding:12px;background:#fbfdff;min-height:260px}.resource-timeline-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;color:var(--b-navy)}.resource-timeline-row{display:grid;grid-template-columns:92px minmax(0,1fr) 32px;gap:7px;align-items:center;margin-top:7px}.resource-timeline-row input{min-width:0}.resource-timeline-fields{display:grid;gap:6px;min-width:0}.resource-timeline-fields textarea{width:100%;min-height:54px;resize:vertical;font:inherit}.resource-timeline-empty{padding:26px 12px;text-align:center;border:1px dashed #c8d8e9;border-radius:10px;color:#7b8da1;font-size:12px}.resource-vimeo-wizard-error{margin-top:12px;padding:10px 12px;border-radius:10px;background:#fff1ef;border:1px solid #efc0ba;color:#8b2f28;font-size:12px;font-weight:700}.resource-vimeo-summary-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #c8ddf3;background:#f4f9ff;border-radius:13px}.resource-vimeo-logo{width:44px;height:44px;border-radius:12px;background:#0865d9;color:#fff;display:grid;place-items:center;font-size:22px}.resource-vimeo-summary-card strong,.resource-vimeo-summary-card span{display:block}.resource-vimeo-summary-card strong{color:var(--b-navy)}.resource-vimeo-summary-card span{font-size:12px;color:var(--b-muted);margin-top:3px}.resource-vimeo-summary ol{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:6px}.resource-vimeo-summary li{display:grid;grid-template-columns:68px 1fr;gap:10px;padding:8px 10px;border-bottom:1px solid #e5edf5;color:#36506d;font-size:12px}.resource-vimeo-summary li b{color:#0865d9}.resource-vimeo-summary p{color:var(--b-muted);font-size:12px}.resource-vimeo-wizard-actions{align-items:center}.resource-vimeo-wizard-actions [data-vimeo-wizard-close]{margin-right:auto}@media(max-width:760px){.resource-vimeo-entry{align-items:stretch;flex-direction:column}.resource-vimeo-entry .btn{width:100%}.resource-wizard-steps span{font-size:0}.resource-wizard-steps span b{font-size:12px}.resource-wizard-grid{grid-template-columns:1fr}.resource-vimeo-wizard-actions{display:grid;grid-template-columns:1fr}.resource-vimeo-wizard-actions>*{width:100%;margin:0!important}}

/* v1.50.03 - salvataggio a livello lezione */
.lesson-floating-actions{position:fixed;left:50%;bottom:24px;z-index:10020;display:block;transform:translateX(-50%);max-width:calc(100vw - 24px)}.lesson-floating-save,.lesson-floating-discard{position:relative;display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:13px 20px;font:inherit;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease,background-color .18s ease,border-color .18s ease;white-space:nowrap}.lesson-floating-save{border:0;background:#b3261e;color:#fff;box-shadow:0 16px 38px rgba(179,38,30,.32)}.lesson-floating-save:hover{transform:translateY(-2px);background:#8c1d18;box-shadow:0 20px 44px rgba(179,38,30,.38)}.lesson-floating-discard{position:absolute;right:calc(100% + 10px);top:0;border:1px solid #b8c0cc;background:#fff;color:#3f4753;box-shadow:0 12px 30px rgba(15,23,42,.14)}.lesson-floating-discard:hover{transform:translateY(-2px);border-color:#7a8492;background:#f7f8fa;box-shadow:0 16px 34px rgba(15,23,42,.18)}.lesson-floating-save.is-hidden,.lesson-floating-discard.is-hidden{display:none}.lesson-floating-save strong,.lesson-save-count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:rgba(255,255,255,.2);font-size:12px}.lesson-floating-save.is-saving{pointer-events:none;opacity:.72}.slide-list-item.has-local-draft{border-color:#f2b84b!important;background:#fffaf0!important}.slide-list-item.has-local-draft.active{box-shadow:0 0 0 2px rgba(242,184,75,.24)!important}.lesson-save-toast{position:fixed;left:50%;bottom:30px;z-index:10060;transform:translateX(-50%);max-width:min(680px,calc(100vw - 32px));padding:12px 18px;border-radius:14px;background:#0f172a;color:#fff;box-shadow:0 14px 36px rgba(15,23,42,.3);font-weight:700}.lesson-save-toast.is-error{background:#b3261e}.lesson-discard-modal{position:fixed;inset:0;z-index:10070;display:grid;place-items:center;padding:24px}.lesson-discard-modal.is-hidden{display:none}.lesson-discard-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62);backdrop-filter:blur(4px)}.lesson-discard-dialog{position:relative;width:min(560px,100%);background:#fff;border-radius:24px;padding:32px;box-shadow:0 28px 80px rgba(15,23,42,.3);outline:none}.lesson-discard-close{position:absolute;top:18px;right:18px;width:40px;height:40px;border:0;border-radius:50%;background:#f1f5f9;color:#334155;cursor:pointer}.lesson-discard-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:18px;border-radius:18px;background:#fff1f0;color:#b3261e;font-size:25px}.lesson-discard-dialog h2{margin:6px 0 10px;color:#0f172a}.lesson-discard-dialog p{margin:0;color:#475569;line-height:1.6}.lesson-discard-warning{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:13px 14px;border-radius:14px;background:#fff8e6;color:#765100;font-size:13px;line-height:1.45}.lesson-discard-warning i{margin-top:2px}.lesson-discard-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:28px}.lesson-discard-modal-open{overflow:hidden}.slide-editor-save-actions [data-discard-current-draft].is-hidden,.lesson-mobile-actions [data-discard-current-draft].is-hidden{display:none}@media(max-width:700px){.lesson-floating-actions{bottom:14px}.lesson-floating-save,.lesson-floating-discard{padding:12px 14px}.lesson-floating-discard{right:calc(100% + 8px)}.lesson-floating-save span,.lesson-floating-discard span{display:none}.lesson-discard-dialog{padding:26px 20px 20px;border-radius:20px}.lesson-discard-actions{display:grid;grid-template-columns:1fr}.lesson-discard-actions .btn{width:100%}}

/* v1.50.10 - stato visivo delle eliminazioni differite */
.is-pending-delete{position:relative;border-color:#e68a8a!important;background:#fff7f7!important;box-shadow:0 0 0 2px rgba(205,45,45,.08)!important}
.is-pending-delete>.media-preview,.is-pending-delete>.media-file-info,.is-pending-delete>.resource-summary,.is-pending-delete>.resource-type-icon,.is-pending-delete>img,.is-pending-delete>small{opacity:.42}
.is-pending-delete .js-preview{pointer-events:none;filter:grayscale(.35)}
.is-pending-delete .js-saved-media-delete,.is-pending-delete .resource-actions,.is-pending-delete>[data-delete-presentation-image]{display:none!important}
.draft-delete-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0;padding:11px 12px;border:1px solid #efb3b3;border-radius:11px;background:#fff0f0;color:#7a1d1d}
.draft-delete-banner>span{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center;min-width:0}.draft-delete-banner>span>i{grid-row:1/3}.draft-delete-banner strong{font-size:12px}.draft-delete-banner small{display:block;margin-top:2px;color:#945252;font-size:11px;line-height:1.35}.draft-delete-banner .btn{flex:0 0 auto}
.resource-row.is-pending-delete,.presentation-editor-item.is-pending-delete{padding-bottom:12px}.resource-row.is-pending-delete .draft-delete-banner,.presentation-editor-item.is-pending-delete .draft-delete-banner{grid-column:1/-1;width:100%;margin:8px 0 0}
@media(max-width:760px){.draft-delete-banner{align-items:stretch;flex-direction:column}.draft-delete-banner .btn{width:100%;justify-content:center}}

/* v1.50.11 - uscita di emergenza solo dopo un errore reale di salvataggio */
.lesson-save-failure{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:14px 16px;border:1px solid #fecaca;border-radius:14px;background:#fff7f7;color:#991b1b}.lesson-save-failure.is-hidden{display:none}.lesson-save-failure>i{margin-top:3px}.lesson-save-failure div{display:grid;gap:3px}.lesson-save-failure span{color:#7f1d1d;font-size:13px;line-height:1.45}.lesson-unsaved-actions [data-unsaved-force-exit].is-hidden{display:none}

/* v1.50.18 · Stato salvataggio multiplo Material Design 3 */
.lesson-save-progress{position:fixed;right:24px;bottom:24px;z-index:10070;width:min(440px,calc(100vw - 32px));overflow:hidden;border:1px solid #d9e2f0;border-radius:22px;background:#fff;color:#172033;box-shadow:0 20px 55px rgba(15,23,42,.24);transition:opacity .18s ease,transform .18s ease;transform-origin:bottom right}.lesson-save-progress.is-hidden{display:none}.lesson-save-progress-header{display:grid;grid-template-columns:42px 1fr auto 32px;gap:10px;align-items:center;padding:16px 16px 10px}.lesson-save-progress-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#e8f1ff;color:#0b63ce;font-size:18px}.lesson-save-progress-heading{display:flex;min-width:0;flex-direction:column;gap:2px}.lesson-save-progress-heading strong{font-size:14px;line-height:1.2}.lesson-save-progress-heading span{overflow:hidden;color:#65738a;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.lesson-save-progress-percent{font-size:13px;color:#0b63ce}.lesson-save-progress-close{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:#5d6a7d;cursor:pointer}.lesson-save-progress.is-saving .lesson-save-progress-close{visibility:hidden}.lesson-save-progress-track{height:5px;margin:0 16px;border-radius:999px;background:#e7edf5;overflow:hidden}.lesson-save-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:#0b63ce;transition:width .18s linear}.lesson-save-progress-current{display:flex;gap:11px;align-items:flex-start;margin:12px 16px 10px;padding:11px 12px;border-radius:14px;background:#f4f8ff;color:#234}.lesson-save-progress-current>i{margin-top:2px;color:#0b63ce}.lesson-save-progress-current span{display:flex;min-width:0;flex-direction:column;gap:2px}.lesson-save-progress-current strong{font-size:13px}.lesson-save-progress-current small{overflow:hidden;color:#64748b;font-size:11px;line-height:1.35;text-overflow:ellipsis}.lesson-save-progress-timeline{max-height:190px;overflow:auto;padding:0 16px 14px}.lesson-save-progress-step{display:grid;grid-template-columns:24px 1fr auto;gap:9px;align-items:center;min-height:45px;padding:7px 0;border-top:1px solid #edf1f6}.lesson-save-progress-step:first-child{border-top:0}.lesson-save-progress-step-dot{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#eef2f7;color:#8a97a9;font-size:7px}.lesson-save-progress-step>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.lesson-save-progress-step strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.lesson-save-progress-step small{color:#778398;font-size:10px}.lesson-save-progress-step em{font-style:normal;color:#7b8798;font-size:10px;font-weight:800}.lesson-save-progress-step.is-active .lesson-save-progress-step-dot{background:#e7f0ff;color:#0b63ce}.lesson-save-progress-step.is-active em{color:#0b63ce}.lesson-save-progress-step.is-complete .lesson-save-progress-step-dot{background:#dff6e8;color:#137a3d;font-size:10px}.lesson-save-progress-step.is-complete em{color:#137a3d}.lesson-save-progress.is-complete .lesson-save-progress-icon{background:#dff6e8;color:#137a3d}.lesson-save-progress.is-complete .lesson-save-progress-track span{background:#137a3d}.lesson-save-progress.is-complete .lesson-save-progress-percent{color:#137a3d}.lesson-save-progress.is-error{border-color:#efc2bd}.lesson-save-progress.is-error .lesson-save-progress-icon,.lesson-save-progress.is-error .lesson-save-progress-current{background:#fff0ee;color:#b3261e}.lesson-save-progress.is-error .lesson-save-progress-current>i,.lesson-save-progress.is-error .lesson-save-progress-percent{color:#b3261e}.lesson-save-progress.is-error .lesson-save-progress-track span{background:#b3261e}@media(max-width:700px){.lesson-save-progress{right:12px;bottom:12px;width:calc(100vw - 24px);border-radius:18px}.lesson-save-progress-header{grid-template-columns:38px 1fr auto 30px;padding:13px 13px 9px}.lesson-save-progress-icon{width:38px;height:38px}.lesson-save-progress-track{margin:0 13px}.lesson-save-progress-current{margin:10px 13px 8px}.lesson-save-progress-timeline{max-height:150px;padding:0 13px 12px}.lesson-floating-save.is-saving{opacity:0;pointer-events:none}}

/* v1.50.25 - anteprima immediata nel passaggio fra modalità narrate */
.presentation-carried-preview{border-color:#8ebff1;background:#f4f9ff;box-shadow:0 0 0 2px rgba(8,101,217,.06)}.presentation-carried-preview small{white-space:normal!important;color:#37658f!important}.media-upload-card.carryover-preview{border-color:#8ebff1;background:#f8fbff}.media-upload-card.carryover-preview .pending-upload-note{background:#eef6ff;border-color:#bfd9f6;color:#244d7a}
/* v1.50.54 · gestione lezione: copia, sposta, esporta, importa */
.content-transfer-operation{grid-template-columns:repeat(2,minmax(0,1fr))}.content-transfer-operation label[hidden]{display:none!important}.content-transfer-body input[type=file]{width:100%;padding:12px;border:1px solid #c9d8e9;border-radius:14px;background:#fff}.content-transfer-body [data-ct-progress]{color:#61738a;line-height:1.4}

/* v1.50.55 - lesson package contextual UI + Material progress timeline */
.ct-transfer-progress{padding:16px;border:1px solid #d7e4f2;border-radius:16px;background:#f8fbff}.ct-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:#173b67}.ct-progress-head span{font-variant-numeric:tabular-nums;color:#0865d9;font-weight:800}.ct-linear{height:6px;overflow:hidden;border-radius:999px;background:#dfe9f5;position:relative}.ct-linear>span{display:block;height:100%;width:0;border-radius:inherit;background:#0865d9;transition:width .25s ease}.ct-linear.indeterminate>span{position:absolute;width:38%!important;animation:ct-indeterminate 1.15s ease-in-out infinite}@keyframes ct-indeterminate{0%{left:-42%}100%{left:105%}}.ct-timeline{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));list-style:none;padding:0;margin:17px 0 8px;gap:0}.ct-timeline li{position:relative;text-align:center;color:#8494a8;font-size:11px;min-width:0}.ct-timeline li:before{content:"";position:absolute;top:10px;left:-50%;width:100%;height:2px;background:#d9e4ef}.ct-timeline li:first-child:before{display:none}.ct-timeline li.done:before,.ct-timeline li.active:before{background:#0865d9}.ct-timeline li span{position:relative;z-index:1;display:grid;place-items:center;width:22px;height:22px;margin:0 auto 6px;border-radius:50%;background:#f8fbff;color:#a5b3c3}.ct-timeline li.done span,.ct-timeline li.active span{color:#0865d9}.ct-timeline li.active em{color:#173b67;font-weight:800}.ct-timeline li.done em{color:#49647f}.ct-timeline em{font-style:normal;display:block;white-space:normal;line-height:1.2}.ct-progress-message{margin:8px 0 0;color:#61738a;font-size:13px;line-height:1.35}.content-transfer-card [hidden]{display:none!important}@media(max-width:600px){.ct-timeline{overflow-x:auto;grid-template-columns:repeat(6,92px);padding-bottom:5px}.ct-transfer-progress{padding:13px}}
/* v1.50.56 - modalità Nuova/Importa lezione */
.lesson-create-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lesson-create-mode label{cursor:pointer}.lesson-create-mode input{position:absolute;opacity:0;pointer-events:none}.lesson-create-mode span{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:12px 14px;border:1px solid #d5e2f0;border-radius:14px;background:#fbfdff;color:#173657;transition:.18s ease}.lesson-create-mode i{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#edf5ff;color:#0865d9}.lesson-create-mode strong{font-size:14px}.lesson-create-mode small{font-size:11px;color:#6f8198}.lesson-create-mode input:checked+span{border-color:#0865d9;background:#eef6ff;box-shadow:0 0 0 2px rgba(8,101,217,.08)}.lesson-create-modal [hidden]{display:none!important}@media(max-width:520px){.lesson-create-mode{grid-template-columns:1fr}}

/* 1.50.70: sequenza vicina al bordo quando l’intestazione scorre fuori vista. */
@media(min-width:821px){
 .lesson-builder > .slides-panel{top:12px;height:calc(100vh - 24px);height:calc(100dvh - 24px);box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:auto}
 .lesson-builder > .slides-panel > .panel-heading,
 .lesson-builder > .slides-panel > .slides-order-help,
 .lesson-builder > .slides-panel > .compact-form{flex:0 0 auto}
 .lesson-builder > .slides-panel > .slides-list{flex:1 1 0;min-height:0;max-height:none;overflow:auto}
}
/* Capitoli del video principale */
.video-chapters-editor{margin:18px 0;padding:18px;border:1px solid #d7e3f2;border-radius:16px;background:#f8fbff}
.video-chapters-editor summary{cursor:pointer;color:#075fc8;font-weight:800}
.video-chapters-editor>p{color:#60738f;font-size:14px;line-height:1.5}
.video-chapter-editor-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:12px;padding:14px 0;border-bottom:1px solid #d7e3f2;margin-bottom:12px}
.video-chapter-editor-row label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}
.video-chapter-editor-row .chapter-description{grid-column:1/3;grid-row:2}
.video-chapter-editor-row button{grid-column:3;grid-row:1/3;align-self:center}
.video-chapter-editor-row input,.video-chapter-editor-row textarea{width:100%;min-width:0;box-sizing:border-box}
@media(max-width:640px){.video-chapter-editor-row{grid-template-columns:90px minmax(0,1fr)}.video-chapter-editor-row button{grid-column:1/3;grid-row:3}.video-chapter-editor-row .chapter-description{grid-column:1/3}}
/* Evita che una sola diapositiva si dilati nella colonna a tutta altezza. */
@media(min-width:821px){.lesson-builder>.slides-panel>.slides-list{align-content:start}}

.video-chapters-editor[hidden]{display:none!important;}
.video-chapters-editor [data-video-timeline-paste]{display:block;width:100%;box-sizing:border-box;margin:8px 0;}
