.studio-body{min-height:100vh;background:linear-gradient(180deg,#fff8fc,#fff1f7 52%,#fff8f1);color:var(--choco)}
.studio-shell{width:min(1500px,calc(100% - 28px));margin:18px auto 64px}
.hidden{display:none!important}
.studio-topbar{padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:22px;position:sticky;top:10px;z-index:30;backdrop-filter:blur(18px)}
.studio-brand h1{max-width:none;margin:4px 0 0;font-size:clamp(32px,4vw,50px)}
.studio-brand p{margin:3px 0 0;color:var(--muted)}
.studio-top-actions,.studio-form-actions,.media-actions,.dashboard-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}
.button.compact{min-height:36px;padding:8px 12px;font-size:13px}
.connection-pill,.admin-account{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border-radius:999px;background:#f6e7ed;color:var(--choco-soft);font-size:12px;font-weight:900}
.connection-pill.ready{background:#fff0dc;color:#815f37}.connection-pill.online{background:#eaf4e5;color:#58724a}.connection-pill.error{background:#fff0f2;color:#a54d61}
.admin-account{background:#fff5fa;border:1px solid #f0dce5;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.auth-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:16px;margin-top:16px}
.connection-card,.login-card{padding:22px;display:grid;gap:12px;align-content:start}.connection-card h2,.login-card h2{font-size:28px}.connection-card p,.login-card p{margin:0}.connection-detail{color:var(--muted);line-height:1.5}.login-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.login-form label{display:grid;gap:6px}.login-form label span,.list-tools label>span,.field-label,.studio-editor label>span,.file-drop>span,.url-field>span{font-size:11px;font-weight:900;color:var(--choco-soft);text-transform:uppercase;letter-spacing:.055em}.login-form input,.list-tools input,.list-tools select,.studio-editor input,.studio-editor textarea,.studio-editor select,.library-tools input,.library-tools select,.file-drop{width:100%;border:1px solid #efdce2;background:#fffafb;color:var(--choco);border-radius:13px;padding:11px 12px;font:inherit;outline:none}.login-form input:focus,.list-tools input:focus,.list-tools select:focus,.studio-editor input:focus,.studio-editor textarea:focus,.studio-editor select:focus,.library-tools input:focus,.library-tools select:focus{border-color:#e982aa;box-shadow:0 0 0 4px rgba(233,130,170,.12)}
.studio-tabs{margin:16px 0;padding:7px;display:flex;gap:6px;overflow:auto;position:sticky;top:111px;z-index:24}.studio-tab{border:0;background:transparent;color:var(--choco-soft);font-weight:900;padding:11px 15px;border-radius:13px;white-space:nowrap;cursor:pointer}.studio-tab.active{background:var(--pink-50);color:var(--pink-500)}
.studio-pane{display:none}.studio-pane.active{display:block}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr);gap:16px}.dashboard-hero{padding:26px;display:flex;align-items:center;justify-content:space-between;gap:24px;grid-column:1/-1;background:linear-gradient(135deg,#fffafd,#fff0f6 55%,#fff8e9)}.dashboard-hero h2{font-size:34px;margin:5px 0 7px}.dashboard-hero p{margin:0;max-width:720px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;grid-column:1/-1}.stat-card{padding:18px;display:grid;gap:6px}.stat-card>span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;color:var(--choco-soft)}.stat-card strong{font-size:36px;line-height:1}.stat-card strong.stat-date{font-size:19px;line-height:1.3}.stat-card small{color:var(--muted)}.recent-card,.shortcuts-card{padding:22px}.recent-card h2,.shortcuts-card h2{font-size:28px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.recent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.recent-item{border:1px solid #f0dfe4;background:#fffafb;border-radius:15px;padding:13px;text-align:left;cursor:pointer;display:grid;gap:4px}.recent-item:hover{border-color:#e982aa;background:#fff3f8}.recent-item strong{color:var(--choco)}.recent-item small{color:var(--muted)}.shortcut-list{display:grid;gap:10px;margin-top:15px}.shortcut-list>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.shortcut-list p{margin:0 0 0 4px;color:var(--muted);font-size:13px}.shortcut-list kbd{background:#fff8fb;border:1px solid #ead9df;border-bottom-width:2px;border-radius:8px;padding:5px 8px;font:700 12px/1 system-ui}
.studio-grid{display:grid;grid-template-columns:370px minmax(0,1fr);gap:16px;align-items:start}.studio-list,.studio-editor,.backup-card{padding:20px}.studio-list{position:sticky;top:174px;max-height:calc(100vh - 190px);overflow:auto}.studio-list-head,.studio-editor-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.studio-list h2,.studio-editor h2,.backup-card h2,.media-uploader h2,.media-library-card h2{font-size:28px}.list-tools{display:grid;grid-template-columns:1fr 145px;gap:8px}.list-tools label{display:grid;gap:6px}.studio-items{display:grid;gap:8px;margin-top:13px}.studio-item{width:100%;border:1px solid #f0dfe4;background:#fffafb;border-radius:15px;padding:11px;text-align:left;cursor:pointer;display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:center}.studio-item:hover,.studio-item.active{border-color:#e982aa;background:#fff2f7}.studio-item-thumb{width:52px;height:52px;border-radius:12px;overflow:hidden;background:#f7e7ee;display:grid;place-items:center}.studio-item-thumb img{width:100%;height:100%;object-fit:cover}.studio-item-thumb span{width:18px;height:18px;border-radius:50%;background:#e9afc5}.studio-item-copy{display:grid;gap:3px;min-width:0}.studio-item-copy strong{color:var(--choco);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-item-copy small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-item-badges{display:flex;gap:5px;flex-wrap:wrap}.mini-admin-badge{font-size:10px;font-weight:900;border-radius:999px;padding:3px 7px;background:#f8e9f0;color:#865d6c}
.studio-editor{display:grid;gap:14px}.studio-editor textarea{resize:vertical;line-height:1.5}.field-grid{display:grid;gap:11px}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-editor label{display:grid;gap:6px}.check-row{display:flex!important;align-items:center;gap:10px;padding:11px 13px;border:1px solid #efdce2;border-radius:13px;background:#fffafb}.check-row input{width:18px!important;height:18px}.check-row span{text-transform:none!important;letter-spacing:0!important;font-size:14px!important}.studio-status{padding:7px 10px;border-radius:999px;background:#f7e8ee;color:var(--choco-soft);font-size:12px;font-weight:900}.studio-status.saved{background:#edf4e7;color:#617451}.button.soft{background:var(--pink-50);color:var(--pink-500)}.button.danger{color:#a54d61;border-color:#efc9d3;background:#fff4f6}
.media-field{border:1px solid #efdce2;border-radius:18px;background:#fffafb;padding:12px;display:grid;grid-template-columns:210px 1fr;gap:14px;transition:.18s ease}.media-field.dragover{border-color:#e982aa;box-shadow:0 0 0 4px rgba(233,130,170,.12);background:#fff3f8}.media-preview{height:150px;border-radius:14px;overflow:hidden;background:linear-gradient(135deg,#f9e9f0,#f3edf9);display:grid;place-items:center;color:var(--muted);font-size:12px;font-weight:800}.media-preview img{width:100%;height:100%;object-fit:cover}.media-field-body{display:grid;gap:10px;align-content:start}.media-field-body p{margin:3px 0 0;color:var(--muted);font-size:13px}.url-field{display:grid;gap:6px}.upload-status{color:var(--muted)}.upload-status.busy{color:#8b5a70;font-weight:800}.upload-status.success{color:#58724a;font-weight:800}.upload-status.error{color:#a54d61;font-weight:800}
.sticky-form-actions{position:sticky;bottom:10px;z-index:12;margin:3px -5px -5px;padding:10px;border:1px solid #efdce2;border-radius:16px;background:rgba(255,250,252,.94);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 10px 32px rgba(92,58,70,.08)}.sticky-form-actions>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.autosave-label{font-size:12px;color:var(--muted);font-weight:800}.autosave-label.dirty{color:#9a6076}
.media-library-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:16px;align-items:start}.media-uploader,.media-library-card{padding:22px}.media-uploader{position:sticky;top:174px}.media-uploader p{margin:5px 0 15px}.media-folder-choice{display:grid;gap:6px;margin-bottom:10px}.media-folder-choice span{font-size:11px;font-weight:900;color:var(--choco-soft);text-transform:uppercase;letter-spacing:.055em}.media-folder-choice select{width:100%;border:1px solid #efdce2;background:#fffafb;color:var(--choco);border-radius:13px;padding:11px 12px;font:inherit;outline:none}.big-drop-zone{border:2px dashed #e9c8d5;border-radius:20px;background:#fff8fb;min-height:260px;padding:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;outline:none;transition:.18s ease}.big-drop-zone:hover,.big-drop-zone:focus,.big-drop-zone.dragover{border-color:#e982aa;background:#fff1f7;box-shadow:0 0 0 5px rgba(233,130,170,.1)}.big-drop-zone strong{font-size:19px}.big-drop-zone span{color:var(--muted);font-size:13px;max-width:260px}.upload-queue{display:grid;gap:7px;margin-top:12px}.queue-item{padding:9px 10px;border-radius:12px;background:#fffafb;border:1px solid #f0dfe4;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.queue-item strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.queue-item span{color:var(--muted)}.queue-item.success span{color:#58724a}.queue-item.error span{color:#a54d61}.library-tools{display:flex;gap:7px;flex-wrap:wrap}.library-tools input{width:210px}.library-tools select{width:125px}.media-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:16px}.media-card{border:1px solid #f0dfe4;background:#fffafb;border-radius:16px;overflow:hidden;display:grid}.media-card-image{aspect-ratio:4/3;background:#f6e7ee}.media-card-image img{width:100%;height:100%;object-fit:cover}.media-card-body{padding:10px;display:grid;gap:7px}.media-card-body strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-card-body small{color:var(--muted)}.media-card-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.media-card-actions .button{min-height:34px;padding:7px 9px;font-size:11px}.media-empty{grid-column:1/-1;padding:36px;text-align:center;color:var(--muted);border:1px dashed #ead6de;border-radius:18px}
.backup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.backup-card p{min-height:65px}.file-drop{cursor:pointer;margin-top:10px;display:grid;gap:8px}.file-drop input{margin-top:3px}.danger-card{border-color:#efc9d3}#studioToast{right:24px;bottom:24px}
@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(2,1fr)}.media-library-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.studio-grid{grid-template-columns:320px minmax(0,1fr)}}
@media(max-width:980px){.studio-topbar{position:static}.studio-tabs{top:8px}.studio-grid,.media-library-layout{grid-template-columns:1fr}.studio-list,.media-uploader{position:static;max-height:none}.studio-list{display:block}.media-library-grid{grid-template-columns:repeat(3,1fr)}.backup-grid{grid-template-columns:1fr}.login-form{grid-template-columns:1fr 1fr}.login-form .button{grid-column:1/-1}.media-field{grid-template-columns:180px 1fr}.auth-grid{grid-template-columns:1fr}}
@media(max-width:720px){.studio-shell{width:min(100% - 14px,720px);margin-top:7px}.studio-topbar{padding:16px;align-items:flex-start;flex-direction:column}.studio-top-actions{width:100%}.studio-top-actions .button{flex:1}.dashboard-hero{padding:19px;align-items:flex-start;flex-direction:column}.dashboard-actions{width:100%}.dashboard-actions .button{flex:1}.stats-grid{grid-template-columns:1fr 1fr}.recent-grid{grid-template-columns:1fr}.field-grid.two,.field-grid.three,.list-tools{grid-template-columns:1fr}.studio-list,.studio-editor,.backup-card,.media-uploader,.media-library-card{padding:16px}.media-field{grid-template-columns:1fr}.media-preview{height:190px}.media-library-grid{grid-template-columns:repeat(2,1fr)}.section-head{align-items:flex-start;flex-direction:column}.library-tools{width:100%}.library-tools input,.library-tools select{width:auto;flex:1}.sticky-form-actions{align-items:stretch;flex-direction:column}.sticky-form-actions>div{display:grid;grid-template-columns:1fr 1fr}.sticky-form-actions>div .button.primary{grid-column:1/-1}.studio-editor-head{align-items:flex-start;flex-direction:column}}
@media(max-width:480px){.stats-grid{grid-template-columns:1fr}.media-library-grid{grid-template-columns:1fr}.login-form{grid-template-columns:1fr}.studio-tab{padding:10px 12px}.studio-brand h1{font-size:34px}.media-preview{height:170px}}

/* FASE 7 — icone studio */
.studio-brand-wrap{display:flex;align-items:center;gap:16px}.studio-hero-icon{width:72px;height:72px;border-radius:24px;box-shadow:0 14px 28px rgba(117,78,84,.10)}
.card-head-with-icon{display:flex;align-items:center;gap:14px}.panel-icon{width:56px;height:56px;border-radius:18px;box-shadow:0 10px 22px rgba(117,78,84,.08)}
.studio-tab{display:inline-flex;align-items:center;gap:8px}.tab-icon{width:22px;height:22px;border-radius:8px;flex:0 0 22px}
@media(max-width:720px){.studio-brand-wrap{align-items:flex-start}.studio-hero-icon{width:62px;height:62px;border-radius:20px}.panel-icon{width:48px;height:48px;border-radius:16px}}

/* FASE 8 — gestione categorie */
.stats-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.studio-helper{margin:-4px 0 12px;color:var(--muted);font-size:12px;line-height:1.5}
.category-media-preview{height:190px}
.color-field-grid input[type="color"]{height:48px;padding:4px;cursor:pointer}
#studioCategoryList .studio-item{grid-template-columns:70px 1fr}
#studioCategoryList .studio-item-thumb{width:70px;height:52px;border-radius:13px}
@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.stats-grid{grid-template-columns:1fr 1fr}.category-media-preview{height:200px}}
@media(max-width:480px){.stats-grid{grid-template-columns:1fr}}

/* FASE 10.2.2 — Team, ruoli e moderazione */
.staff-page-grid{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:16px;align-items:start}.staff-page-head{grid-column:1/-1;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:22px}.staff-page-head h2{font-size:32px;margin:5px 0 7px}.staff-page-head p{margin:0;max-width:760px}.staff-page-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.staff-page-tools input{min-width:290px;border:1px solid #efdce2;background:#fffafb;color:var(--choco);border-radius:13px;padding:11px 12px;font:inherit;outline:none}.staff-page-tools input:focus{border-color:#e982aa;box-shadow:0 0 0 4px rgba(233,130,170,.12)}.moderation-summary{padding:22px;display:grid;gap:7px}.moderation-summary strong{font-size:44px;line-height:1}.moderation-summary small{color:var(--muted)}.staff-list-card{grid-column:1/-1;padding:22px}.moderation-list,.staff-members-list{display:grid;gap:10px}.moderation-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:start;padding:14px;border:1px solid #f0dfe4;border-radius:16px;background:#fffafb}.moderation-avatar,.staff-avatar{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,#fbd9e5,#fff0dc);color:var(--choco);font-weight:950}.moderation-copy{min-width:0}.moderation-meta{display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap}.moderation-meta strong{color:var(--choco)}.moderation-meta small,.moderation-target{color:var(--muted);font-size:12px}.moderation-target{display:inline-flex;margin-top:5px;font-weight:800;color:var(--pink-500)}.moderation-item p{margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.moderation-actions{display:flex;align-items:center;gap:7px}.staff-empty{margin:0;padding:30px;text-align:center;color:var(--muted);border:1px dashed #ead6de;border-radius:16px}.role-guide-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.role-guide{padding:17px;box-shadow:none}.role-guide strong{font-size:16px;color:var(--choco)}.role-guide p{font-size:12px;line-height:1.55;margin:6px 0 0}.role-guide.owner{background:linear-gradient(135deg,#fff8eb,#fff1f6)}.staff-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.staff-list-head h2{font-size:28px}.staff-member{display:grid;grid-template-columns:52px minmax(0,1fr) 190px auto;gap:12px;align-items:center;padding:13px;border:1px solid #f0dfe4;border-radius:16px;background:#fffafb}.staff-member-copy{min-width:0;display:grid;gap:3px}.staff-member-copy strong,.staff-member-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-member-copy small{color:var(--muted)}.staff-role-select{width:100%;border:1px solid #efdce2;background:white;color:var(--choco);border-radius:12px;padding:10px 11px;font:inherit;font-weight:800}.staff-role-select:disabled{opacity:.7;background:#f7f0f2}.staff-role-badge{display:inline-flex;width:max-content;margin-top:3px;padding:4px 8px;border-radius:999px;background:var(--pink-50);color:var(--pink-500);font-size:10px;font-weight:900}.staff-role-badge.owner{background:#fff0dc;color:#815f37}.staff-role-badge.admin{background:#f3e9fb;color:#70578c}.staff-role-badge.moderator{background:#e8f2ff;color:#496988}.staff-role-badge.editor{background:#eaf4e5;color:#58724a}
@media(max-width:980px){.staff-page-grid{grid-template-columns:1fr}.moderation-summary{grid-column:1/-1}.role-guide-grid{grid-template-columns:repeat(2,1fr)}.staff-member{grid-template-columns:52px minmax(0,1fr);}.staff-member .staff-role-select,.staff-member .button{grid-column:2}.staff-page-head{align-items:flex-start;flex-direction:column}.staff-page-tools{width:100%}.staff-page-tools input{min-width:0;flex:1}}
@media(max-width:620px){.role-guide-grid{grid-template-columns:1fr}.moderation-item{grid-template-columns:42px minmax(0,1fr)}.moderation-actions{grid-column:2}.staff-page-tools{display:grid;grid-template-columns:1fr auto}.staff-member{grid-template-columns:44px minmax(0,1fr);padding:11px}.staff-avatar,.moderation-avatar{width:44px;height:44px}.staff-list-card,.staff-page-head{padding:16px}.staff-page-head h2{font-size:28px}}

/* FASE 10.3.6 - Moderazione Forum */
.forum-moderation-head{margin-top:10px}.moderation-actions{flex-wrap:wrap;justify-content:flex-end}.moderation-meta .staff-role-badge{margin-top:0}
@media(max-width:620px){.moderation-actions{justify-content:flex-start}.forum-moderation-head{margin-top:4px}}

/* FASE 10.3.6 — icone anche nelle sezioni operative dello Studio */
.studio-main .heading-icon{width:42px;height:42px;flex-basis:42px;border-radius:13px}

/* ===== FASE 10.4 — rifiniture Studio ===== */
.studio-topbar, .dashboard-hero, .staff-page-head, .studio-editor-head, .studio-list-head { min-width: 0; }
.studio-brand, .studio-brand-wrap, .studio-top-actions { min-width: 0; }
.studio-brand h1, .studio-brand p, .admin-account { overflow-wrap: anywhere; }
.studio-top-actions { justify-content: flex-end; }
.studio-editor, .studio-list, .media-library-card, .media-uploader { min-width: 0; }
.studio-editor input, .studio-editor textarea, .studio-editor select, .library-tools input, .library-tools select { min-width: 0; }
.media-card-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.media-card-actions .button { min-width: 0; white-space: normal; }

@media (max-width: 720px) {
  .studio-top-actions { justify-content: stretch; }
  .studio-top-actions .button { min-width: 0; }
  .studio-tabs { max-width: 100%; }
  .sticky-form-actions > div { width: 100%; }
}

@media (max-width: 420px) {
  .studio-shell { width: calc(100% - 10px); }
  .studio-topbar { padding: 14px; }
  .studio-brand-wrap { gap: 10px; }
  .studio-hero-icon { width: 52px; height: 52px; flex: 0 0 52px; border-radius: 17px; }
  .studio-brand h1 { font-size: 29px; }
  .studio-top-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .studio-top-actions .admin-account, .studio-top-actions .connection-pill { grid-column: 1 / -1; max-width: 100%; }
  .media-card-actions { grid-template-columns: 1fr; }
}
