:root{--bg:#f5f7fb;--panel:#fff;--primary:#2563eb;--header:#111827;--danger:#dc2626;--shadow:0 10px 30px rgba(23,32,51,.07)}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text)}a{color:var(--primary);text-decoration:none}.topbar{color:#fff;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;}.topbar a{color:#dbeafe}.topbar nav{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.brand{font-weight:850;color:#fff!important}.container{margin:0 auto}.login-card{width:min(430px,calc(100% - 28px));background:var(--panel);border:1px solid var(--border);border-radius:22px;padding:36px;box-shadow:var(--shadow);text-align:center;margin:10vh auto}.hero-icon{font-size:3rem}.page-head{display:flex;justify-content:space-between;gap:20px}h1{margin:.2rem 0 .35rem;font-size:2rem}h2{margin:0 0 14px;font-size:1.15rem}.muted,.empty,small{color:var(--muted)}.button{border:0;background:var(--primary);color:#fff!important;padding:11px 16px;cursor:pointer}.button.ghost{background:transparent;color:var(--text)!important;border:1px solid var(--border)}.danger-button{background:var(--danger)}.panel,.stat{padding:22px;}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stat span{display:block;color:var(--muted);font-size:.9rem;margin-bottom:8px}.stat strong{font-size:1.75rem}.danger-stat strong,.link-danger{color:var(--danger)}.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:22px}.list-row,.user-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-top:1px solid var(--border);color:var(--text)}.list-row small,.user-row small,td small,label small{display:block;margin-top:4px}.advanced-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.advanced-filters .wide{grid-column:span 2}input,select,textarea{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:11px 12px;font:inherit;background:#fff;color:var(--text)}input:focus,select:focus,textarea:focus{outline:3px solid color-mix(in srgb,var(--primary) 18%,transparent);border-color:var(--primary)}label{font-weight:650;font-size:.92rem;display:flex;flex-direction:column;gap:7px}.stack{display:flex;flex-direction:column;gap:17px}.narrow{max-width:560px}.table-wrap{overflow:auto;padding:0}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:15px;border-bottom:1px solid var(--border);vertical-align:middle}th{font-size:.76rem;text-transform:uppercase;color:var(--muted);background:#f9fafb}.form-grid,.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}.span-2{grid-column:1/-1}.actions{display:flex;gap:10px;align-items:center;justify-content:flex-end}.actions form{margin:0}.detail-grid>div{padding:6px}.detail-grid small{display:block;margin-bottom:8px}.top-gap{margin-top:22px}.alert{padding:13px 16px;border-radius:10px;margin-bottom:18px;border:1px solid var(--border);background:#fff}.alert.success{background:#ecfdf5;color:#065f46;border-color:#a7f3d0}.alert.danger{background:#fef2f2;color:#991b1b;border-color:#fecaca}.filter-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px}.inline-check{display:flex;flex-direction:row;align-items:center;gap:9px;font-weight:600}.inline-check input{width:auto}.input-action{gap:7px}.input-action button,.md-toolbar button{border:1px solid var(--border);border-radius:8px;background:#f9fafb;cursor:pointer}.md-toolbar{margin-bottom:2px}.md-toolbar button{padding:7px 10px}.markdown-body{line-height:1.65}.markdown-body pre,.markdown-body code{background:#f1f5f9;border-radius:6px}.markdown-body pre{padding:12px;overflow:auto}.attachment-list>div,.attachment-head{display:flex;justify-content:space-between;gap:12px;padding:10px;border-bottom:1px solid var(--border)}.attachment-list form{display:inline}.link-danger{border:0;background:none;cursor:pointer}.preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.attachment-preview{display:block;}.pdf-preview{width:100%;height:500px;border:0}.file-placeholder{display:grid;place-items:center;height:180px;font-size:1.5rem}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tabs a{padding:9px 13px;border-radius:9px;background:#fff;border:1px solid var(--border)}.tabs a.active{background:var(--primary);color:#fff}.user-row:first-of-type,.list-row:first-of-type{border-top:0}hr{border:0;border-top:1px solid var(--border);width:100%}
@media(max-width:950px){.stats{grid-template-columns:1fr 1fr}.grid-two{grid-template-columns:1fr}.advanced-filters{grid-template-columns:repeat(2,1fr)}.preview-grid{grid-template-columns:1fr}.topbar nav a{font-size:.9rem}}@media(max-width:620px){.container{padding:24px 14px}.stats,.form-grid,.detail-grid,.advanced-filters{grid-template-columns:1fr}.span-2,.advanced-filters .wide{grid-column:auto}.page-head{flex-direction:column}.topbar{align-items:flex-start}.topbar nav{gap:10px}.preview-grid{grid-template-columns:1fr}.pdf-preview{height:60vh}.actions{flex-wrap:wrap;justify-content:flex-start}}

/* Archvio v4 — responsive navigation and visual polish */

.topbar{padding:0 20px;}.topbar-inner{max-width:1280px;min-height:72px;}.brand{display:flex;align-items:center}
.main-nav{display:flex;align-items:center;gap:5px}.nav-link,.nav-group-button{display:flex;align-items:center;gap:7px;color:#eaf0ff!important;border:0;background:transparent;padding:11px 12px;border-radius:10px;font:inherit;font-weight:680;cursor:pointer}.nav-link:hover,.nav-group-button:hover{background:rgba(255,255,255,.1)}.nav-group{position:relative}.nav-dropdown{position:absolute;top:calc(100% + 8px);left:0;min-width:215px;padding:8px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 45px rgba(15,23,42,.18);opacity:0;visibility:hidden;transform:translateY(-5px);transition:.18s}.nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown,.nav-group.open .nav-dropdown{opacity:1;visibility:visible;transform:none}.nav-dropdown a{display:block;color:var(--text)!important;padding:11px 12px;border-radius:9px}.nav-dropdown a:hover{background:#f2f6ff}.nav-dropdown-right{right:0;left:auto}.dropdown-caption{padding:9px 12px;color:var(--muted);font-size:.8rem;border-bottom:1px solid var(--border);margin-bottom:4px}.profile-button{padding:7px 9px}.menu-toggle{display:none;color:#fff;background:rgba(255,255,255,.1);border:0;border-radius:10px;font-size:1.35rem;width:44px;height:44px}
.panel,.stat{border-radius:20px}.panel:hover,.stat:hover{border-color:color-mix(in srgb,var(--primary) 18%,var(--border))}.button{box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 20%,transparent)}.button.ghost,.button.secondary{box-shadow:none}.stat{position:relative;overflow:hidden}.stat:after{content:"";position:absolute;inset:auto -25px -35px auto;width:90px;height:90px;border-radius:50%;background:color-mix(in srgb,var(--primary) 8%,transparent)}
.avatar{display:inline-grid;place-items:center;object-fit:cover;border-radius:50%;flex:0 0 auto;border:2px solid rgba(255,255,255,.7)}.avatar-small{width:32px;height:32px;font-size:.82rem}.avatar-large{width:92px;height:92px;font-size:2rem;border:4px solid #fff;box-shadow:0 8px 24px rgba(15,23,42,.15)}.avatar-fallback{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 60%,#8b5cf6));color:#fff;font-weight:850}.profile-hero{display:flex;align-items:center;gap:18px;padding:8px 0 14px}.profile-hero strong{font-size:1.35rem;display:block}.profile-hero small{margin-top:5px}.section-label{text-transform:uppercase;letter-spacing:.08em;font-weight:850;padding-top:10px;border-top:1px solid var(--border)}
.import-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.import-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;background:#fff;border:1px solid var(--border);border-radius:20px;padding:24px;color:var(--text);box-shadow:var(--shadow);transition:.2s}.import-card:hover{transform:translateY(-3px);border-color:var(--primary);box-shadow:0 18px 44px rgba(23,32,51,.12)}.import-card h2{margin:0 0 7px}.import-card p{margin:0;color:var(--muted);line-height:1.5}.import-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:17px;background:color-mix(in srgb,var(--primary) 10%,white);font-size:1.8rem}.arrow{font-size:1.4rem;color:var(--primary)}.info-box{display:flex;flex-direction:column;gap:8px;padding:15px;border-radius:12px;background:#f8fafc;border:1px solid var(--border)}.info-box code{display:block;overflow:auto;padding:10px;background:#eef2ff;border-radius:8px}
@media(max-width:900px){.topbar-inner{padding:10px 0}.nav-dropdown,.nav-dropdown-right{position:static;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;margin:3px 0 8px 16px;width:calc(100% - 16px);min-width:0;background:rgba(255,255,255,.96)}.nav-group:hover .nav-dropdown:not(.open){opacity:1}.profile-group{order:10}.import-grid{grid-template-columns:1fr}.container{padding-top:25px}}
@media(max-width:620px){body{background:var(--bg)}.topbar{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.container{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));padding-bottom:max(70px,env(safe-area-inset-bottom))}.panel,.stat{border-radius:16px;padding:17px}.page-head h1{font-size:1.65rem}.button{width:100%}.actions{display:grid;width:100%;grid-template-columns:1fr}.filter-actions{display:grid;grid-template-columns:1fr;width:100%}.table-wrap{border-radius:14px}.import-card{padding:18px;grid-template-columns:auto 1fr}.import-card .arrow{display:none}.import-icon{width:48px;height:48px}.profile-hero{align-items:flex-start}.avatar-large{width:76px;height:76px}}
/* Archvio v5 */
.stats-five{grid-template-columns:repeat(5,minmax(0,1fr))}.stat small{display:block;margin-top:8px}.dropdown-action{display:block;width:100%;border:0;background:transparent;color:var(--text);text-align:left;padding:11px 12px;border-radius:9px;font:inherit;cursor:pointer}.dropdown-action:hover{background:#f2f6ff}.nav-dropdown form{margin:0}.favicon-current{display:flex;align-items:center;gap:16px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#f8fafc}.favicon-current img{width:64px;height:64px;object-fit:contain;border-radius:12px;background:#fff;border:1px solid var(--border)}.favicon-current .check{flex-direction:row;align-items:center}.favicon-current input{width:auto}
@media(max-width:1150px){.stats-five{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.stats-five{grid-template-columns:repeat(2,1fr)}}
@media(max-width:460px){.stats-five{grid-template-columns:1fr}}
/* Archvio v6 — menu mobile, bulk edit, quick edit, emoji picker */
@media(max-width:900px){
  .main-nav{max-height:calc(100dvh - 82px);}
  
  .nav-group:hover .nav-dropdown{display:none;opacity:1;visibility:visible;transform:none}
  .nav-group.open .nav-dropdown{display:block!important}
  
  
  .topbar-inner{align-items:center}
}
.bulk-panel{display:none;position:sticky;top:82px;z-index:20;border:2px solid color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 18px 45px rgba(15,23,42,.14)}.bulk-panel.active{display:block}.bulk-summary{display:flex;justify-content:space-between;gap:14px;margin-bottom:14px}.bulk-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.apply-field>span{display:flex;align-items:center;gap:7px}.apply-field>span input{width:auto}.bulk-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:15px}.check-col{width:42px;text-align:center}.check-col input{width:18px;height:18px}.icon-button{border:1px solid var(--border);background:#fff;border-radius:9px;cursor:pointer;width:38px;height:38px;font-size:1rem}.icon-button:hover{border-color:var(--primary);background:#f5f8ff}.quick-dialog,.emoji-dialog{border:0;border-radius:20px;padding:0;box-shadow:0 30px 90px rgba(15,23,42,.3);width:min(720px,calc(100% - 24px));max-height:90dvh}.quick-dialog::backdrop,.emoji-dialog::backdrop{background:rgba(15,23,42,.55);backdrop-filter:blur(3px)}.quick-form{padding:22px;display:flex;flex-direction:column;gap:16px}.dialog-head,.emoji-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.dialog-head strong,.emoji-head strong{font-size:1.15rem}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.emoji-dialog{padding:20px}.emoji-close{border:0;background:#eef2f7;border-radius:50%;width:36px;height:36px;font-size:1.4rem;cursor:pointer}.emoji-grid{display:grid;gap:7px;margin-top:14px;overflow:auto}.emoji-choice{border:1px solid var(--border);background:#fff;border-radius:10px;aspect-ratio:1;cursor:pointer}.emoji-choice:hover{background:#eef4ff;border-color:var(--primary);transform:scale(1.06)}
@media(max-width:1050px){.bulk-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.bulk-panel{top:72px}.bulk-summary{flex-direction:column}.bulk-grid,.quick-grid{grid-template-columns:1fr}.bulk-actions{display:grid;grid-template-columns:1fr}.emoji-grid{grid-template-columns:repeat(6,1fr)}.quick-form{padding:17px}.table-wrap table{min-width:980px}}
/* Archvio v7 — mobile-first refresh, robust previews, templates and Markdown */
:root{--radius:18px;--radius-sm:12px;--surface-soft:#f8fafc}body{line-height:1.5}.container{padding-top:26px}.panel{border-radius:var(--radius);box-shadow:0 8px 28px rgba(15,23,42,.055)}.page-head{align-items:flex-end}.page-head h1{letter-spacing:-.035em}.button{min-height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:720}.button.small{min-height:36px;padding:7px 12px;font-size:.9rem}.form-grid{gap:18px}.form-grid label{font-weight:680}.form-grid input,.form-grid select,.form-grid textarea{margin-top:7px;border-radius:12px;min-height:46px;background:#fff}.form-grid textarea{min-height:150px}.input-action{margin-top:7px}.input-action select{margin-top:0}.input-action button{min-width:46px;border-radius:12px}.attachment-card{overflow:hidden;border-radius:16px}.attachment-head{padding:14px}.attachment-preview{width:100%;height:260px;object-fit:contain;background:var(--surface-soft)}.pdf-card-preview{min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:linear-gradient(145deg,#f8fafc,#eef2ff)}.pdf-card-preview>span{font-size:4rem}.pdf-card-preview p{margin:0;font-weight:800;color:var(--muted)}.preview-page{padding:12px;min-height:70vh}.full-preview-image{display:block;max-width:100%;max-height:78vh;margin:auto;object-fit:contain}.preview-fallback{min-height:58vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px}.preview-fallback-icon{font-size:5rem}.actions.center{justify-content:center}.mobile-preview-actions{display:none;padding:12px}.notice{padding:16px 18px;border-radius:14px;margin-bottom:18px}.notice.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a}.sync-status{padding:14px;border-radius:12px;background:#f8fafc;border:1px solid var(--border)}.stack-lg{display:flex;flex-direction:column;gap:20px}.section-title{margin:0}.page-head.compact{margin-bottom:14px}.template-tabs{display:grid;gap:12px}.template-card{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#fff}.template-card summary{cursor:pointer;padding:16px 18px;font-weight:800;background:#f8fafc}.template-fields{padding:18px;display:grid;gap:14px}.template-fields label{font-weight:680}.template-fields input,.template-fields textarea{display:block;width:100%;margin-top:7px}.sticky-save{position:sticky;bottom:14px;z-index:5;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:16px;padding:12px;box-shadow:0 12px 40px rgba(15,23,42,.14)}.md-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:9px;border:1px solid var(--border);border-bottom:0;border-radius:12px 12px 0 0;background:#f8fafc;margin-top:7px}.md-toolbar button{min-width:38px;min-height:36px;border:1px solid #dbe2ea;border-radius:8px;background:#fff;cursor:pointer;font-weight:700}.md-toolbar button:hover{border-color:var(--primary);background:#eff6ff}.md-toolbar+.markdown-preview+textarea,.md-toolbar+textarea{margin-top:0;border-radius:0 0 12px 12px}.md-separator{width:1px;height:26px;background:#d8dee8;margin:0 3px}.md-preview-toggle{margin-left:auto}.markdown-preview{padding:16px;border:1px solid var(--border);border-bottom:0;background:#fff;min-height:120px}.emoji-dialog{width:min(680px,calc(100% - 20px))}.emoji-grid{grid-template-columns:repeat(10,1fr);max-height:52vh}.emoji-choice{font-size:1.45rem}.topbar{box-shadow:0 4px 18px rgba(15,23,42,.18)}
@media(max-width:900px){.page-head{align-items:flex-start;gap:14px}.page-head>.actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.panel{border-radius:15px}.form-grid{grid-template-columns:1fr!important;padding:16px}.form-grid>.span-2{grid-column:auto}.button{width:100%}.actions{gap:8px}.attachment-preview{height:220px}.full-pdf-preview{display:none}.mobile-preview-actions{display:block}.preview-page{min-height:auto}.preview-fallback{min-height:45vh}.emoji-grid{grid-template-columns:repeat(8,1fr)}.sticky-save{display:grid;grid-template-columns:1fr 1fr}.md-preview-toggle{margin-left:0}.md-toolbar{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin}.md-toolbar button{flex:0 0 auto}.md-separator{flex:0 0 1px}}
@media(max-width:560px){.page-head>.actions,.sticky-save,.detail-grid{grid-template-columns:1fr}.detail-grid .span-2{grid-column:auto}.preview-grid{grid-template-columns:1fr}.emoji-grid{grid-template-columns:repeat(6,1fr)}.emoji-choice{font-size:1.35rem}.topbar{padding-left:12px;padding-right:12px}.brand span:last-child{max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* Archvio v7.1 — redesign moderno, prestazioni e Firefly */
:root{--surface:#ffffff;--surface-2:#f7f9fc;--surface-3:#eef3f9;--text:#142033;--muted:#68758a;--border:rgba(148,163,184,.25);--shadow-sm:0 8px 24px rgba(15,23,42,.06);--shadow-lg:0 22px 60px rgba(15,23,42,.10)}
body{background:radial-gradient(circle at 10% -10%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 30%),linear-gradient(180deg,#f8fafc 0%,var(--bg) 45%);min-height:100vh}
.topbar{min-height:76px;background:color-mix(in srgb,var(--header) 92%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.topbar-inner{width:min(1380px,100%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{font-size:1.18rem;gap:10px}.brand-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:rgba(255,255,255,.12)}
.container{max-width:1380px;padding:32px 28px 70px}.panel,.stat{background:rgba(255,255,255,.94);border:1px solid var(--border);box-shadow:var(--shadow-sm)}
.panel:hover{box-shadow:0 14px 36px rgba(15,23,42,.075)}.page-head{margin-bottom:22px}.eyebrow{display:block;color:var(--primary);font-size:.74rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}.page-head h1,.record-hero h1{font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.06;margin:0 0 8px;letter-spacing:-.045em}
.button{transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.button:hover{transform:translateY(-1px);box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 18%,transparent)}.button.secondary{background:color-mix(in srgb,var(--primary) 12%,white);color:var(--primary)!important}
input,select,textarea{border-color:rgba(148,163,184,.36);box-shadow:0 1px 2px rgba(15,23,42,.02);transition:.16s ease}input:hover,select:hover,textarea:hover{border-color:rgba(100,116,139,.52)}
.record-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px 30px;margin-bottom:22px;border-radius:24px;color:#fff;background:linear-gradient(135deg,var(--header),color-mix(in srgb,var(--primary) 70%,var(--header)));box-shadow:var(--shadow-lg)}.record-hero p{margin:0;color:rgba(255,255,255,.72)}.record-type-pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.14);font-weight:800;font-size:.78rem;margin-bottom:12px}.record-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:22px;align-items:start}.modern-detail>div{padding:17px;border-radius:15px;background:var(--surface-2);border:1px solid rgba(148,163,184,.14)}.modern-detail small{font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.modern-detail strong{font-size:1.04rem}.amount-value{font-size:1.35rem!important;color:var(--primary)}.notes-card{background:#fff!important;padding:22px!important}.attachments-panel{position:sticky;top:98px}.section-heading{display:flex;align-items:center;justify-content:space-between}.section-heading h2{margin:0}.count-badge{min-width:34px;height:34px;border-radius:999px;background:var(--surface-3);display:grid;place-items:center;font-weight:850}.compact-preview{grid-template-columns:1fr}.compact-preview .attachment-preview{height:210px}.attachment-card{border:1px solid var(--border);background:#fff;transition:.18s ease}.attachment-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.attachment-head>div{min-width:0}.attachment-head strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-head small{display:block;margin-top:3px}.pdf-card-preview{text-decoration:none;cursor:pointer}.pdf-card-preview:hover{background:linear-gradient(145deg,#eef2ff,#e0e7ff)}
.pdf-viewer-shell{display:grid;gap:14px}.full-pdf-preview{display:block!important;width:100%;height:76vh;min-height:560px;border:1px solid var(--border);border-radius:14px;background:#e5e7eb}.pdf-viewer-actions{display:flex;justify-content:center;gap:10px}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px}.mode-card{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start}.mode-card.accent{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--primary) 5%,white))}.mode-icon{width:52px;height:52px;border-radius:16px;background:var(--surface-3);display:grid;place-items:center;font-size:1.65rem}.mode-card h2{margin:2px 0 7px}.mode-card p{margin:0;color:var(--muted)}.mapping-card{padding:17px;border-radius:16px;background:var(--surface-2);border:1px solid var(--border)}.mapping-row{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--border)}.mapping-row:first-of-type{margin-top:10px}.mapping-row b{color:var(--primary)}.auto-sync-box{border:1px solid var(--border);border-radius:15px;background:#fff}.auto-sync-box summary{padding:15px 17px;font-weight:850;cursor:pointer}.auto-sync-content{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:0 17px 17px}.auto-sync-content p{grid-column:1/-1;margin:0}.action-grid{display:grid;grid-template-columns:auto 1fr 1fr;gap:10px}.firefly-form{max-width:980px;margin-inline:auto}
.stats .stat{position:relative;overflow:hidden}.stats .stat:after{content:"";position:absolute;width:80px;height:80px;border-radius:50%;right:-30px;bottom:-35px;background:color-mix(in srgb,var(--primary) 9%,transparent)}
@media(max-width:980px){.record-layout,.mode-grid{grid-template-columns:1fr}.attachments-panel{position:static}.record-hero{align-items:flex-start;flex-direction:column}.record-hero .actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.full-pdf-preview{height:68vh;min-height:480px}}
@media(max-width:700px){.container{padding:20px 13px 56px}.record-hero{padding:22px 18px;border-radius:19px}.record-hero .actions,.action-grid,.auto-sync-content,.modern-detail{grid-template-columns:1fr}.full-pdf-preview{height:62vh;min-height:420px}.pdf-viewer-actions{display:grid;grid-template-columns:1fr}.mode-card{grid-template-columns:1fr}.mode-icon{width:46px;height:46px}.topbar{min-height:68px}}

/* Archivio v7.2 — grafici, paginazione e mapping */
.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.chart-card{min-width:0}.donut-layout{display:grid;grid-template-columns:190px 1fr;gap:24px;align-items:center;margin-top:18px}.donut{width:180px;aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--segments));display:grid;place-items:center;position:relative}.donut:after{content:"";position:absolute;inset:28px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px var(--border)}.donut>div{position:relative;z-index:1;text-align:center;display:grid}.donut strong{font-size:1.7rem}.donut small{color:var(--muted)}.donut.small{width:150px}.chart-legend{display:grid;gap:10px}.chart-legend>div{display:grid;grid-template-columns:12px minmax(0,1fr) auto auto;gap:9px;align-items:center}.chart-legend i{width:11px;height:11px;border-radius:50%}.chart-legend small{color:var(--muted)}.bar-chart{display:grid;gap:14px;margin-top:18px}.bar-row>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px}.bar-track{height:10px;border-radius:999px;background:#eef2f7;overflow:hidden}.bar-track i{display:block;height:100%;border-radius:inherit;min-width:3px}.vertical-bars{height:260px;display:flex;align-items:flex-end;gap:12px;padding:30px 8px 0;overflow-x:auto}.vbar{height:100%;min-width:62px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}.vbar i{width:34px;max-height:190px;min-height:3px;border-radius:9px 9px 3px 3px;background:linear-gradient(180deg,var(--primary),color-mix(in srgb,var(--primary) 60%,#7c3aed))}.vbar span{margin-top:8px;font-weight:750;color:var(--muted)}.vbar-value{font-size:.72rem;position:absolute;}.pagination-wrap{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:16px 0;flex-wrap:wrap}.pagination-wrap nav{display:flex;gap:8px}.per-page label{display:flex;align-items:center;gap:8px}.per-page select{width:auto}.lookup-list{display:grid;gap:10px}.lookup-edit-row{display:grid;grid-template-columns:130px minmax(160px,1fr) auto auto;gap:8px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:12px}.mapping-editor{border:1px solid var(--border);border-radius:15px;background:#fff}.mapping-editor summary{cursor:pointer;padding:15px 17px;font-weight:850}.mapping-editor>p,.mapping-editor>.mapping-grid{margin-left:17px;margin-right:17px}.mapping-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-bottom:18px}.mapping-grid label{font-weight:700}.mapping-grid input,.mapping-grid select{display:block;width:100%;margin-top:6px}
@media(max-width:900px){.chart-grid{grid-template-columns:1fr}.donut-layout{grid-template-columns:150px 1fr}.lookup-edit-row{grid-template-columns:100px 1fr}.lookup-edit-row .button,.lookup-edit-row .link-danger{width:100%}.mapping-grid{grid-template-columns:1fr}}
@media(max-width:560px){.donut-layout{grid-template-columns:1fr;justify-items:center}.chart-legend{width:100%}.pagination-wrap,.pagination-wrap nav{display:grid;width:100%}.lookup-edit-row{grid-template-columns:1fr}.vertical-bars{height:230px}}

/* v7.2.1: dizionari senza emoji */
.lookup-edit-row.lookup-label-only{grid-template-columns:minmax(180px,1fr) auto auto}
@media(max-width:700px){.lookup-edit-row.lookup-label-only{grid-template-columns:1fr}.lookup-edit-row.lookup-label-only .button,.lookup-edit-row.lookup-label-only .link-danger{width:100%}}


/* Archivio v7.3.1 — dashboard interattiva e palette visuale */
.dashboard-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dashboard-editor{display:grid;gap:18px;margin-bottom:18px}.dashboard-editor[hidden]{display:none}.dashboard-grid{display:grid;grid-template-columns:repeat(var(--dashboard-columns),minmax(0,1fr));gap:20px}.dashboard-widget{grid-column:span var(--widget-span);min-width:0;position:relative}.dashboard-widget>.panel,.dashboard-widget>.stats{height:100%;margin:0}.widget-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;margin-bottom:7px;border:1px dashed color-mix(in srgb,var(--primary) 40%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--primary) 5%,white)}.widget-tools[hidden]{display:none}.widget-tools label{display:flex;align-items:center;gap:7px;font-size:.78rem}.widget-tools select{width:64px;padding:6px}.drag-handle{font-size:1.2rem;cursor:grab;user-select:none}.dashboard-grid.editing .dashboard-widget{padding:7px;border-radius:16px;outline:2px dashed transparent}.dashboard-grid.editing .dashboard-widget:hover{outline-color:color-mix(in srgb,var(--primary) 40%,transparent)}.dashboard-widget.dragging{opacity:.45}.palette-field{display:grid;gap:8px}.color-palette-grid{display:grid;grid-template-columns:repeat(8,minmax(42px,1fr));gap:10px}.color-swatch{position:relative;display:block;cursor:pointer}.color-swatch input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.color-swatch span{display:block;height:48px;border-radius:12px;border:2px solid #fff;box-shadow:0 0 0 1px var(--border),0 4px 12px rgba(15,23,42,.08)}
@media(max-width:1050px){.dashboard-widget[data-size="1"]{grid-column:span 1}.dashboard-widget[data-size="2"],.dashboard-widget[data-size="3"],.dashboard-widget[data-size="4"]{grid-column:span 2}}
@media(max-width:700px){.dashboard-grid{--dashboard-columns:1!important}.dashboard-widget{grid-column:1/-1}.dashboard-head-actions{width:100%}.dashboard-head-actions>*{flex:1}.color-palette-grid{grid-template-columns:repeat(4,1fr)}}


/* Archivio v7.3.2 — impostazioni più leggibili */
.settings-stack{display:grid}.settings-section{padding:0;overflow:hidden}.settings-section-head{display:flex;gap:14px;align-items:center;border-bottom:1px solid var(--border);}.settings-section-head h2{margin:0 0 4px}.settings-section-head p{margin:0}.settings-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--primary) 12%,white);color:var(--primary);font-weight:900;font-size:1.05rem}.settings-section>.form-grid{padding:22px}.settings-subcard{padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.settings-subcard>div:first-child{display:grid;gap:4px}.color-settings-grid input[type="color"]{height:50px;padding:5px;cursor:pointer}.warning-check{padding:12px 14px;border-radius:12px;background:#fff7ed;border:1px solid #fed7aa}.settings-savebar{position:sticky;bottom:14px;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--border);border-radius:15px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);box-shadow:var(--shadow-lg)}.settings-savebar span{color:var(--muted);font-size:.9rem}.settings-section code{font-size:.85em;overflow-wrap:anywhere}
@media(max-width:700px){.settings-section-head{align-items:flex-start}.settings-savebar{display:grid}.settings-savebar .button{width:100%}}


/* Archivio v7.3.3 — dashboard responsive e pagine gestione uniformate */
.settings-list,.settings-section-body{padding:22px}.settings-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.settings-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:22px}.settings-action-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px;border:1px solid var(--border);border-radius:15px;color:var(--text);background:var(--surface-2);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.settings-action-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:var(--shadow)}.settings-action-card h3{margin:0 0 6px}.settings-action-card p{margin:0;color:var(--muted)}.settings-action-icon{width:52px;height:52px;border-radius:15px;background:color-mix(in srgb,var(--primary) 12%,white);color:var(--primary);display:grid;place-items:center;font-weight:900}.settings-section>.form-grid{margin:0}.settings-section-body>.info-box{margin-bottom:18px}
@media(max-width:1050px){.dashboard-grid{--dashboard-columns:1!important}.dashboard-widget,.dashboard-widget[data-size="1"],.dashboard-widget[data-size="2"],.dashboard-widget[data-size="3"],.dashboard-widget[data-size="4"]{grid-column:1/-1!important;width:100%}.dashboard-widget>.panel,.dashboard-widget>.stats{width:100%}.dashboard-grid .stats{grid-template-columns:1fr}.dashboard-grid .donut-layout{grid-template-columns:minmax(150px,190px) minmax(0,1fr)}.settings-card-grid{grid-template-columns:1fr}}
@media(max-width:700px){.settings-choice-grid{grid-template-columns:1fr}.settings-list,.settings-section-body,.settings-card-grid{padding:16px}.settings-action-card{grid-template-columns:auto minmax(0,1fr)}.settings-action-card>strong{grid-column:2}.dashboard-grid .donut-layout,.dashboard-grid .stats{grid-template-columns:1fr}.dashboard-grid .stat,.dashboard-grid .panel{width:100%}}

/* Archivio 7.3.4 — allegati apribili direttamente, senza pagina anteprima intermedia */
.attachment-open{display:block;position:relative;cursor:pointer;text-decoration:none;overflow:hidden}
.attachment-open:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 35%,transparent);outline-offset:3px}
.attachment-open .attachment-preview{display:block}
@media(max-width:900px){
  .compact-preview .attachment-card{width:100%}
  .compact-preview .attachment-open{width:100%;min-height:180px}
  .compact-preview .attachment-preview{width:100%;height:auto;max-height:68vh;min-height:180px;object-fit:contain}
  .compact-preview .pdf-card-preview{min-height:190px}
}

/* Archivio v7.3.5 — elenco allegati compatto */
.attachment-section-heading{gap:14px;align-items:flex-start}.attachment-heading-actions{display:flex;align-items:center;gap:10px}.attachment-list{display:grid;gap:10px;margin-top:18px}.attachment-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 13px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.attachment-file-link{min-width:0;font-weight:780}.attachment-file-link:before{content:"📎";flex:0 0 auto}.attachment-file-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-file-link small{flex:0 0 auto;font-size:.7rem;padding:3px 6px;border-radius:999px;background:var(--surface-3)}.attachment-download{white-space:nowrap}
@media(max-width:700px){.attachment-section-heading{align-items:stretch;flex-direction:column}.attachment-heading-actions{display:grid;grid-template-columns:auto 1fr}.attachment-heading-actions .button{width:100%}.attachment-list-row{grid-template-columns:minmax(0,1fr) auto}.attachment-download{width:auto!important}.attachment-file-link small{display:none}}
@media(max-width:430px){.attachment-list-row{grid-template-columns:1fr}.attachment-download{width:100%!important}.attachment-file-link{padding:3px 1px}}

/* v7.4 responsive forms, dashboard links and reference metadata */
.form-grid>*{min-width:0}.form-grid input,.form-grid select,.form-grid textarea,.input-action{max-width:100%;min-width:0}.input-action{display:grid;grid-template-columns:minmax(0,1fr) auto}.input-action select{width:100%;min-width:0}.dashboard-filter-link,.chart-legend-link{color:inherit}.dashboard-filter-link:hover,.chart-legend-link:hover{filter:brightness(.96)}.chart-legend-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:9px;align-items:center;padding:4px;border-radius:8px}.reference-lookup-row{display:grid!important;grid-template-columns:1fr;gap:12px;padding:18px 0;border-bottom:1px solid var(--border)}.reference-lookup-row .span-2{grid-column:1/-1}.reference-files{display:grid;gap:8px}.reference-files>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:10px}.reference-files .actions{display:flex}.lookup-row-actions{display:flex;gap:10px;align-items:center}.reference-notes-preview{padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
@media(max-width:900px){.record_form,.form-grid{width:100%;max-width:100%;overflow:hidden}.form-grid label,.form-grid input,.form-grid select,.form-grid textarea,.input-action{width:100%;max-width:100%}.input-action button{width:auto!important;min-width:44px}.quick-dialog{width:min(96vw,680px)}.quick-form,.quick-grid{min-width:0}.quick-grid{grid-template-columns:1fr!important}.reference-files>div{align-items:stretch;flex-direction:column}.reference-files .actions,.lookup-row-actions{display:grid;grid-template-columns:1fr;width:100%}}

/* v7.4.1 navigation hubs, references and footer */
.app-footer{display:flex;justify-content:space-between;gap:18px;max-width:1500px;margin:24px auto 0;padding:20px 24px;color:var(--muted);font-size:.86rem;border-top:1px solid var(--border)}
.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.info-card{display:grid;gap:6px;padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.info-card small{color:var(--muted)}.info-card strong{font-size:1.15rem}
.reference-filter-grid{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;gap:16px;align-items:end}.reference-summary{margin:16px 0;color:var(--muted)}.reference-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.reference-card{padding:20px;display:grid;gap:16px}.reference-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.reference-card-head h2{margin:0 0 4px}.reference-card-notes{max-height:220px;overflow:auto;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.reference-card-files{display:grid;gap:8px}.reference-card-files>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:10px}.reference-card-actions{padding-top:4px;border-top:1px solid var(--border)}.empty.compact{padding:10px 0;margin:0}
.reference-editor-list{display:grid;gap:18px}.reference-editor-card{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:#fff}.reference-editor-card>form{padding:20px}.reference-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.reference-editor-head h3{margin:3px 0}.reference-file-list{padding:0 20px 20px}.reference-file-list h4{margin:0 0 10px}.reference-file-list>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--border)}
@media(max-width:900px){.reference-cards{grid-template-columns:1fr}.reference-filter-grid{grid-template-columns:1fr 1fr}.reference-filter-grid>label:first-child,.reference-filter-grid>.actions{grid-column:1/-1}.info-grid{grid-template-columns:1fr 1fr}.app-footer{padding:18px;flex-direction:column;gap:6px}.reference-editor-head{display:grid}.reference-editor-head .actions{display:grid;grid-template-columns:1fr}.reference-file-list>div{align-items:stretch;flex-direction:column}.reference-file-list .actions{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:600px){.reference-filter-grid,.info-grid{grid-template-columns:1fr}.reference-filter-grid>*{grid-column:1!important}.reference-card-head{display:grid}.reference-card-head .button{width:100%}.reference-card-files>div{align-items:stretch;flex-direction:column}.reference-card-files .button{width:100%}.dictionary-tabs{overflow-x:auto;white-space:nowrap}.settings-action-card{grid-template-columns:auto minmax(0,1fr)}.settings-action-card>strong{grid-column:2}.app-footer{font-size:.8rem}}

/* Archivio v7.4.3 — gestione riferimenti dedicata e responsive */
.reference-card-toolbar{display:flex;flex-wrap:wrap;gap:10px;padding-top:6px;border-top:1px solid var(--border)}
.attachment-dialog{width:min(760px,calc(100vw - 28px));max-height:min(82vh,760px);padding:0;border:0;border-radius:18px;box-shadow:0 24px 80px rgba(15,23,42,.28);overflow:hidden}
.attachment-dialog::backdrop{background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}
.dialog-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:20px 22px;border-bottom:1px solid var(--border);background:var(--surface-2)}
.dialog-head h2,.dialog-head h3{margin:0 0 4px}.dialog-head p{margin:0}.dialog-close{width:42px;height:42px;border:0;border-radius:12px;background:#fff;font-size:1.6rem;cursor:pointer}
.dialog-file-list{display:grid;gap:10px;padding:18px 22px;max-height:62vh;overflow:auto}.dialog-file-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:12px}.dialog-file-list>div>a:first-child{min-width:0;overflow-wrap:anywhere;font-weight:700}.dialog-file-list .actions{display:flex;align-items:center;gap:8px}
.reference-form{overflow:hidden}.file-upload-card{min-width:0;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.file-upload-card input[type=file]{display:block;width:100%;max-width:100%;min-width:0;overflow:hidden}.reference-existing-files{display:flex;justify-content:flex-start}
.reference-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px}.reference-detail-main,.reference-detail-side{min-width:0}.reference-detail-side{align-self:start}.reference-linked-list{display:grid;}.reference-linked-list>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 4px;border-bottom:1px solid var(--border);color:inherit}.reference-linked-list>a:last-child{border-bottom:0}.reference-linked-list small{display:block;margin-top:4px;color:var(--muted)}
@media(max-width:900px){.reference-detail-grid{grid-template-columns:1fr}.reference-card-toolbar,.reference-form .actions{display:grid;grid-template-columns:1fr 1fr}.dialog-file-list>div{grid-template-columns:1fr}.dialog-file-list .actions{display:grid;grid-template-columns:1fr 1fr}.attachment-dialog{max-height:88vh}}
@media(max-width:600px){.reference-card-toolbar,.reference-form .actions{grid-template-columns:1fr}.reference-card-toolbar .button,.reference-form .actions .button,.reference-existing-files .button{width:100%}.attachment-dialog{width:calc(100vw - 16px);border-radius:14px}.dialog-head{padding:16px}.dialog-file-list{padding:14px;max-height:68vh}.dialog-file-list .actions{grid-template-columns:1fr}.dialog-file-list .button{width:100%}.reference-linked-list>a{grid-template-columns:1fr}.md-toolbar{max-width:100%;overflow-x:auto;flex-wrap:nowrap}.reference-form textarea{width:100%;max-width:100%}}

.upload-overlay{position:fixed;inset:0;background:#0008;z-index:9999;display:grid;place-items:center;padding:20px}.upload-overlay[hidden]{display:none}.upload-box{background:white;border-radius:16px;padding:24px;min-width:min(420px,90vw);display:grid;gap:12px;text-align:center}.upload-box progress{width:100%;height:20px}.system-grid,.maintenance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.metric{display:flex;flex-direction:column;gap:6px}.metric strong{font-size:1.8rem}.package-list{columns:3;column-gap:24px}.package-list>div{display:flex;justify-content:space-between;gap:10px;padding:5px 0;break-inside:avoid;border-bottom:1px solid #e5e7eb}.backup-list>div,.audit-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #e5e7eb}.backup-list>div span{flex:1}.log-view{white-space:pre-wrap;overflow:auto;max-height:520px;background:#111827;color:#e5e7eb;padding:16px;border-radius:12px;font-size:.82rem}.reference-link-panel{display:flex;justify-content:space-between;align-items:center;gap:20px}@media(max-width:900px){.system-grid,.maintenance-grid{grid-template-columns:1fr}.package-list{columns:1}.backup-list>div,.audit-row,.reference-link-panel{align-items:stretch;flex-direction:column}.log-view{max-height:65vh;font-size:.76rem}}

.editor-image{display:block;max-width:100%;max-height:70vh;margin:auto;object-fit:contain}.attachment-row-actions{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:700px){.attachment-row-actions{width:100%}.attachment-row-actions .button{flex:1}}

/* Archivio v7.6 — menu mobile overlay, pannelli amministrativi e bilancio */
@media(max-width:900px){
 .topbar{position:sticky;top:0;z-index:1000}.topbar-inner{flex-wrap:nowrap}
 .main-nav:not(.open){display:none!important}.nav-dropdown{margin-left:0!important;}
}
.security-status{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}.security-status .status-icon{font-size:2.2rem}.security-status.ok{border-left:6px solid #16a34a}.security-status.action{border-left:6px solid #dc2626}.security-status.review{border-left:6px solid #d97706}.plain-list{display:grid;gap:10px}.plain-list>div{padding:12px;border:1px solid var(--border);border-radius:12px}.progress-shell{display:grid;gap:10px}.progress-shell progress{width:100%;height:22px}.disk-bar{height:14px;border-radius:999px;background:#e5e7eb;overflow:hidden}.disk-bar i{display:block;height:100%;background:var(--primary)}.log-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.log-tab{border:1px solid var(--border);background:#fff;border-radius:10px;padding:9px 12px;cursor:pointer}.log-tab.active{background:var(--primary);color:#fff}.balance-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.balance-stats>div{padding:15px;border-radius:14px;background:var(--surface-soft);border:1px solid var(--border)}@media(max-width:700px){.balance-stats{grid-template-columns:1fr}}

/* Collabora Online v7.6.1 */
.collabora-status{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.2rem;margin-bottom:1rem;border-left:4px solid;border-radius:10px}.collabora-status.is-ok{background:#dcfce7;border-color:#15803d;color:#14532d}.collabora-status.is-error{background:#fee2e2;border-color:#b91c1c;color:#7f1d1d}.supported-formats{display:flex;flex-wrap:wrap;gap:.4rem}.supported-formats span{padding:.25rem .55rem;border-radius:999px;background:var(--surface-2,#eef2f7);font-family:monospace}.collabora-editor-page{height:calc(100vh - 120px);display:flex;flex-direction:column;min-height:520px}.collabora-editor-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.75rem}.collabora-editor-head h1{font-size:1.15rem;margin:.15rem 0}.collabora-frame-wrap{flex:1;min-height:0;border:1px solid var(--border,#d8dee8);border-radius:12px;overflow:hidden;background:#fff}.collabora-frame-wrap iframe{width:100%;height:100%;border:0;display:block}.checkbox-card{display:flex!important;align-items:flex-start;gap:.75rem;padding:.85rem;border:1px solid var(--border,#d8dee8);border-radius:10px}.checkbox-card input{width:auto!important;margin-top:.2rem}.checkbox-card span{display:flex;flex-direction:column;gap:.2rem}.checkbox-card small{color:var(--muted,#667085)}
@media(max-width:900px){.collabora-editor-page{height:calc(100dvh - 86px);min-height:420px}.collabora-editor-head{align-items:flex-start}.collabora-editor-head .button{flex:none}.collabora-frame-wrap{border-radius:8px}}

/* Archivio v7.6.2 — navigazione mobile, log leggibili e import Firefly */
@media(max-width:900px){
  body.menu-open{touch-action:none}
  .topbar{height:64px;min-height:64px;padding:0 12px;align-items:center}
  .topbar-inner{min-height:64px;gap:10px}
  .brand{min-width:0;max-width:calc(100vw - 70px);font-size:1rem}
  .brand>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .brand-icon{width:36px;height:36px;flex:0 0 auto}
  .menu-toggle{display:grid!important;place-items:center;flex:0 0 46px;width:46px;height:46px;padding:0;font-size:0;border:1px solid rgba(255,255,255,.16)}
  .menu-toggle span{font-size:1.45rem;line-height:1}
  .main-nav{align-items:stretch!important;color:var(--text)!important;-webkit-overflow-scrolling:touch}
  .main-nav.open{display:flex!important}
  .main-nav::before{content:"Menu";padding:6px 8px 10px;color:var(--muted);font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
  .nav-link,.nav-group-button{width:100%!important;min-height:48px!important;justify-content:flex-start!important;padding:12px 14px!important;border-radius:12px!important;color:var(--text)!important;background:#f8fafc!important;border:1px solid #eef2f7!important;font-size:.98rem!important;text-align:left}
  .nav-new{background:color-mix(in srgb,var(--primary) 10%,#fff)!important;color:var(--primary)!important;border-color:color-mix(in srgb,var(--primary) 22%,#fff)!important}
  .nav-group{width:100%!important;position:static!important}
  .nav-group-button::after{content:"+";margin-left:auto;font-size:1.2rem;color:var(--muted);font-weight:500}
  .nav-group.open>.nav-group-button::after{content:"−"}
  .nav-dropdown{position:static!important;display:none!important;opacity:1!important;visibility:visible!important;transform:none!important;min-width:0!important;width:100%!important;margin:5px 0 2px!important;padding:5px!important;background:#f3f6fb!important;border:0!important;border-radius:12px!important;box-shadow:none!important}
  .nav-group.open>.nav-dropdown{display:grid!important;gap:3px}
  .nav-dropdown a,.dropdown-action{display:flex!important;align-items:center!important;min-height:44px!important;width:100%!important;padding:10px 12px!important;border-radius:9px!important;color:var(--text)!important;background:#fff!important;border:1px solid #e8edf4!important;font-size:.94rem!important;text-align:left!important}
  .dropdown-caption{padding:8px 10px!important;border:0!important;margin:0!important}
  .profile-group{padding-top:7px;border-top:1px solid var(--border)}
  .profile-button{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important}
  .profile-button>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .container{width:100%;max-width:100%;padding:20px 12px 48px;overflow-x:hidden}
  .page-head,.section-heading{min-width:0}.page-head h1{font-size:1.65rem;overflow-wrap:anywhere}
  .panel,.stat{max-width:100%;min-width:0;padding:17px;border-radius:16px}
  .table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  input,select,textarea,button{max-width:100%}
}
@media(min-width:901px){.menu-toggle{display:none!important}}

.log-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.log-summary-card{display:grid;gap:4px;padding:17px;border-radius:16px;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow)}.log-summary-card strong{font-size:1.8rem}.log-summary-card.error{border-left:5px solid #dc2626}.log-summary-card.warning{border-left:5px solid #d97706}.log-summary-card.slow{border-left:5px solid #7c3aed}.log-summary-card.db{border-left:5px solid #2563eb}.log-help{margin-bottom:16px}.log-help p{margin:7px 0 0}.friendly-log{display:grid;gap:8px;max-height:620px;overflow:auto;padding:3px}.log-entry{display:grid;grid-template-columns:74px minmax(0,1fr);gap:10px;align-items:start;padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:#f8fafc}.log-entry code{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.82rem}.log-entry.error{background:#fff1f2;border-color:#fecdd3}.log-entry.warning{background:#fffbeb;border-color:#fde68a}.log-entry.slow{background:#faf5ff;border-color:#e9d5ff}.log-level{font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.log-entry.error .log-level{color:#b91c1c}.log-entry.warning .log-level{color:#b45309}.log-entry.slow .log-level{color:#6d28d9}.log-filter{min-width:180px}.technical-log{margin-top:16px}.technical-log summary{cursor:pointer;font-weight:750}.status-pill{background:#eaf0ff}.db-waiting{background:#fff7ed}

.firefly-guide{display:grid;gap:16px}.mapping-explanation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mapping-explanation>div{display:grid;gap:6px;padding:14px;border:1px solid var(--border);border-radius:13px;background:#f8fafc}.mapping-explanation span{color:var(--primary);font-weight:800}.firefly-progress-dialog{width:min(760px,calc(100vw - 24px));max-height:92vh;padding:0;border:0;border-radius:20px;overflow:hidden}.firefly-progress-dialog::backdrop{background:rgba(15,23,42,.68)}.firefly-progress-shell{background:#fff}.progress-main{display:grid;gap:16px;padding:20px}.progress-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px;align-items:center}.progress-line progress{width:100%;height:23px}.progress-line strong{min-width:52px;text-align:right;font-size:1.15rem}.progress-message{margin:0;font-weight:750}.progress-current{padding:11px 13px;border-radius:11px;background:#eef4ff;color:#1e3a8a;overflow-wrap:anywhere}.progress-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.progress-metrics>div{display:grid;gap:4px;padding:11px;border-radius:11px;background:#f8fafc;border:1px solid var(--border);text-align:center}.progress-metrics strong{font-size:1.15rem}.progress-heartbeat{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:.88rem}.progress-heartbeat span:last-child{margin-left:auto}.pulse-dot{width:10px;height:10px;border-radius:50%;background:#16a34a;box-shadow:0 0 0 0 rgba(22,163,74,.5);animation:ffpulse 1.5s infinite}@keyframes ffpulse{70%{box-shadow:0 0 0 8px rgba(22,163,74,0)}100%{box-shadow:0 0 0 0 rgba(22,163,74,0)}}.progress-result{display:grid;gap:9px;padding:16px;border-radius:14px;background:#ecfdf5;border:1px solid #a7f3d0}.progress-result .button{margin-top:6px}

@media(max-width:900px){.log-summary{grid-template-columns:1fr 1fr}.mapping-explanation{grid-template-columns:1fr}.progress-metrics{grid-template-columns:repeat(3,1fr)}.log-filter{width:100%;min-width:0}.section-heading{display:grid!important;gap:10px}.firefly-progress-dialog{width:calc(100vw - 12px);max-height:96dvh}.progress-main{padding:15px}.dialog-head{padding:16px}}
@media(max-width:520px){.log-summary{grid-template-columns:1fr}.progress-metrics{grid-template-columns:1fr 1fr}.progress-heartbeat{display:grid;grid-template-columns:auto 1fr auto}.action-grid{grid-template-columns:1fr!important}.action-grid .button{width:100%}}

/* Archivio v7.6.3 — cache busting, menu mobile stabile, log e reset */
.log-entry[hidden],.menu-backdrop[hidden]{display:none!important}
.log-entry-meta{display:flex;flex-direction:column;gap:5px}.log-entry-meta time{font-size:.72rem;color:var(--muted);font-variant-numeric:tabular-nums}.danger-zone{border:2px solid #fecaca;background:#fff7f7}.danger-zone h2{color:#991b1b}.reset-form{display:grid;gap:14px;max-width:620px}.reset-form code{padding:2px 6px;border-radius:6px;background:#fee2e2}.button.danger{background:#b91c1c;color:#fff;border-color:#b91c1c}.button.danger:hover{background:#991b1b}.mobile-menu-head,.menu-backdrop{display:none}
@media(max-width:900px){
  body.menu-open{overflow:hidden!important;position:fixed;width:100%;inset:0}
  .menu-backdrop{display:block;position:fixed;inset:0;background:rgba(15,23,42,.62);backdrop-filter:blur(2px)}
  .main-nav{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;width:min(88vw,390px)!important;max-width:390px!important;height:100dvh!important;margin:0!important;padding:0 14px 24px!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:-18px 0 55px rgba(15,23,42,.38)!important;overflow-y:auto!important;overscroll-behavior:contain!important;transform:translateX(105%);opacity:0;visibility:hidden;display:flex!important;flex-direction:column!important;gap:8px!important;transition:transform .22s ease,opacity .22s ease,visibility .22s ease}
  .main-nav.open{transform:translateX(0);opacity:1;visibility:visible}
  
  .mobile-menu-head{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;min-height:66px;margin:0 -14px 6px;padding:0 16px;background:#fff;border-bottom:1px solid var(--border)}
  .mobile-menu-head strong{font-size:1.08rem}.mobile-menu-head button{display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:12px;border:1px solid var(--border);background:#f8fafc;font-size:1.7rem;color:var(--text)}
  .nav-link,.nav-group-button{flex:0 0 auto!important;white-space:normal!important;line-height:1.25!important}
  .nav-dropdown{flex:0 0 auto!important}
  .profile-group{margin-top:8px!important}
  .topbar-inner{width:100%!important;max-width:none!important}.brand{flex:1 1 auto!important}.menu-toggle{margin-left:auto!important}
  .log-entry{grid-template-columns:1fr!important}.log-entry-meta{flex-direction:row;align-items:center;justify-content:space-between}.log-entry code{font-size:.78rem}
  .reset-form{max-width:100%}.reset-form .button{width:100%}
}
@media(max-width:480px){.main-nav{width:94vw!important}.brand-icon{width:34px!important;height:34px!important}.brand{font-size:.98rem!important}.container{padding-left:10px!important;padding-right:10px!important}.panel{padding:15px!important}}


/* Archivio v7.6.4 — menu mobile a livelli e modifiche multiple */
.bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.bulk-edit-row{grid-template-columns:42px minmax(0,1fr) auto}.bulk-check{display:grid;place-items:center}.bulk-check input,.reference-select-line input{width:20px;height:20px}.reference-select-line{display:flex;justify-content:flex-end;margin-bottom:6px}.reference-inline-name{font-size:1.08rem;font-weight:800;padding:8px 10px}.bulk-reference-form{display:block}.bulk-reference-form>.panel{margin-bottom:14px}
@media(max-width:900px){
  .main-nav{overflow-x:hidden!important}
  .main-nav.submenu-open>.nav-link,.main-nav.submenu-open>.nav-group:not(.open){display:none!important}
  .main-nav.submenu-open>.mobile-menu-head strong{font-size:0}
  .main-nav.submenu-open>.mobile-menu-head strong::after{content:'Sezione';font-size:1.08rem}
  .main-nav.submenu-open>.nav-group.open{display:block!important;width:100%!important;min-width:0!important}
  .main-nav.submenu-open>.nav-group.open>.nav-group-button{display:none!important}
  .main-nav.submenu-open>.nav-group.open>.nav-dropdown{position:static!important;inset:auto!important;display:grid!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important;background:transparent!important}
  .main-nav.submenu-open .nav-dropdown a,.main-nav.submenu-open .dropdown-action{width:100%!important;max-width:100%!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .mobile-submenu-back{display:flex!important;align-items:center;width:100%;min-height:48px;margin-bottom:8px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:#eef4ff;color:var(--primary);font:inherit;font-weight:800;text-align:left}
  .bulk-toolbar{display:grid;grid-template-columns:1fr}.bulk-toolbar .actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.bulk-edit-row{grid-template-columns:36px minmax(0,1fr)}.bulk-edit-row>.button{grid-column:1/-1}.reference-inline-name{width:100%;font-size:1rem}.reference-select-line{justify-content:flex-start}
}
@media(max-width:520px){.bulk-toolbar .actions{grid-template-columns:1fr}.bulk-toolbar .actions .button{width:100%}}

/* v7.6.7 - progress Firefly dettagliato */
.ff-event-head{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.ff-event-list{max-height:240px;overflow:auto;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);padding:.4rem}.ff-event{display:grid;grid-template-columns:64px 1fr;gap:.65rem;padding:.55rem .6rem;border-bottom:1px solid var(--border);font-size:.86rem}.ff-event:last-child{border-bottom:0}.ff-event time{font-variant-numeric:tabular-nums;color:var(--muted)}.ff-event div{min-width:0}.ff-event strong,.ff-event small{display:block;overflow-wrap:anywhere}.ff-event.success strong{color:#15803d}.ff-event.warning strong{color:#b45309}.ff-event.error strong,.danger-text{color:#b91c1c}.firefly-progress-dialog .progress-main{max-height:min(78vh,760px);overflow:auto}@media(max-width:700px){.firefly-progress-dialog{width:calc(100vw - 16px);max-width:none}.firefly-progress-dialog .firefly-progress-shell{padding:.8rem}.progress-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ff-event{grid-template-columns:54px 1fr;padding:.5rem .35rem}}

/* v7.7.0 temi e ricerca */
body[data-theme="dark"] .card,body[data-theme="dark"] .panel,body[data-theme="dark"] table,body[data-theme="dark"] input,body[data-theme="dark"] select,body[data-theme="dark"] textarea{background:#242b35!important;color:#e7edf5!important;border-color:#394452!important}.global-search-mini{max-width:560px;flex:1;margin:0 1rem}.global-search-mini input,.search-page-form input{width:100%}.theme-switcher{right:12px;bottom:12px;z-index:30}.search-result{padding:1rem 0;border-bottom:1px solid var(--border,#ddd)}@media(prefers-color-scheme:dark){body[data-theme="system"] .card,body[data-theme="system"] input,body[data-theme="system"] select,body[data-theme="system"] textarea{background:#242b35!important;color:#e7edf5!important;border-color:#394452!important}}

/* v7.7.5 - Nord theme, responsive search, backup/2FA/token GUI */
body[data-theme="dark"] .panel,body[data-theme="dark"] .card,body[data-theme="dark"] table,body[data-theme="dark"] dialog,body[data-theme="dark"] .global-search-bar{background:#2e3440!important;color:#eceff4!important;border-color:#4c566a!important}body[data-theme="dark"] input,body[data-theme="dark"] select,body[data-theme="dark"] textarea{background:#3b4252!important;color:#eceff4!important;border-color:#596579!important}body[data-theme="dark"] input::placeholder{color:#aeb8c6}body[data-theme="dark"] a{color:#8fbcbb}body[data-theme="dark"] .button{background:#5e81ac;color:#fff;border-color:#5e81ac}body[data-theme="dark"] .button.ghost,body[data-theme="dark"] .button.secondary{background:#3b4252;color:#eceff4;border-color:#596579}body[data-theme="dark"] .muted,body[data-theme="dark"] small{color:#c3cad5!important}body[data-theme="dark"] .record-type-pill,body[data-theme="dark"] .status-pill{background:#434c5e;color:#eceff4}.global-search-bar{padding:10px 16px;}.global-search-bar form{display:grid;grid-template-columns:auto minmax(0,760px) auto;justify-content:center;align-items:center;gap:10px;margin:auto}.global-search-bar span{font-size:1.45rem;color:var(--muted)}.global-search-bar input{width:100%;min-height:44px;border-radius:14px}.theme-switcher{position:static;display:flex;justify-content:center;margin:18px auto}.search-results{display:grid;gap:14px}.search-result h2{margin:.5rem 0}.search-attachment{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;padding:10px;margin-top:8px;border:1px solid var(--border);border-radius:12px;text-decoration:none}.search-attachment small{display:block;white-space:normal;overflow-wrap:anywhere}.attachment-file-link{display:flex!important;align-items:center;gap:9px}.attachment-file-icon{font-size:1.35rem}.weekday-field{display:flex;flex-wrap:wrap;gap:12px;border:1px solid var(--border);border-radius:12px;padding:12px}.weekday-field label{display:flex;align-items:center;gap:5px}.two-factor-setup{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start}.secret-code{display:block;padding:12px;overflow-wrap:anywhere}.status-success{padding:14px;border-radius:12px;background:#dcfce7;color:#166534;font-weight:800}.security-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.token-created textarea{width:100%}.token-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px;border-bottom:1px solid var(--border)}
@media(max-width:900px){.two-factor-setup{grid-template-columns:1fr;text-align:center}.two-factor-setup form{text-align:left}.theme-switcher select{max-width:calc(100vw - 24px)}.search-result{padding:14px!important}}

/* Archivio v7.7.6 — ricerca non sovrapposta e tema Nord ad alto contrasto */
.global-search-bar{
  position:relative!important;
  top:auto!important;
  z-index:1!important;
  isolation:isolate;
  background:var(--bg)!important;
  border-bottom:1px solid var(--border)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.topbar{z-index:1100!important}
.main-nav{z-index:1150}
.nav-dropdown{z-index:1200!important}
.menu-backdrop{z-index:1140!important}

body[data-theme="dark"]{
  --bg:#20252d;
  --panel:#2b313c;
  --card:#2b313c;
  --surface:#2b313c;
  --surface-2:#333b48;
  --surface-3:#414b5b;
  --surface-soft:#333b48;
  --text:#f2f5f8;
  --muted:#b9c3cf;
  --border:#566274;
  --primary:#72b7c5;
  --primary-strong:#5e81ac;
  --danger:#ef6f73;
  --shadow:0 12px 34px rgba(8,12,18,.32);
  background:var(--bg)!important;
  color:var(--text)!important;
}
body[data-theme="dark"] .topbar{
  background:#252b35!important;
  border-bottom:1px solid #566274!important;
}
body[data-theme="dark"] .global-search-bar{
  background:#20252d!important;
  border-color:#414b5b!important;
}
body[data-theme="dark"] .global-search-bar input{
  background:#313946!important;
  color:#f2f5f8!important;
  border-color:#657286!important;
  box-shadow:0 4px 16px rgba(8,12,18,.2);
}
body[data-theme="dark"] .global-search-bar input::placeholder{color:#aeb9c7!important}
body[data-theme="dark"] .panel,
body[data-theme="dark"] .stat,
body[data-theme="dark"] .card,
body[data-theme="dark"] table,
body[data-theme="dark"] dialog,
body[data-theme="dark"] .dashboard-editor{
  background:#2b313c!important;
  color:#f2f5f8!important;
  border-color:#566274!important;
  box-shadow:0 12px 34px rgba(8,12,18,.3)!important;
}
body[data-theme="dark"] .stat:after{
  background:rgba(114,183,197,.09)!important;
}
body[data-theme="dark"] .stat span,
body[data-theme="dark"] .stat small,
body[data-theme="dark"] .muted,
body[data-theme="dark"] small,
body[data-theme="dark"] .empty{
  color:#bac4d0!important;
}
body[data-theme="dark"] .stat strong,
body[data-theme="dark"] h1,
body[data-theme="dark"] h2,
body[data-theme="dark"] h3,
body[data-theme="dark"] strong{
  color:#f5f7fa;
}
body[data-theme="dark"] .count-badge{
  background:#414b5b!important;
  color:#f5f7fa!important;
  border:1px solid #657286;
}
body[data-theme="dark"] .donut:after{
  background:#2b313c!important;
  box-shadow:inset 0 0 0 1px #657286!important;
}
body[data-theme="dark"] .donut strong{color:#f5f7fa!important}
body[data-theme="dark"] .donut small{color:#c1cad5!important}
body[data-theme="dark"] .bar-track,
body[data-theme="dark"] .disk-bar{
  background:#465163!important;
}
body[data-theme="dark"] .chart-legend-link,
body[data-theme="dark"] .bar-row,
body[data-theme="dark"] .dashboard-filter-link{
  color:#d8e1ea!important;
}
body[data-theme="dark"] .chart-legend-link:hover,
body[data-theme="dark"] .bar-row:hover,
body[data-theme="dark"] .dashboard-filter-link:hover{
  background:#333b48!important;
  filter:none!important;
}
body[data-theme="dark"] .balance-stats>div{
  background:#333b48!important;
  border-color:#566274!important;
}
body[data-theme="dark"] input,
body[data-theme="dark"] select,
body[data-theme="dark"] textarea{
  background:#333b48!important;
  color:#f2f5f8!important;
  border-color:#657286!important;
}
body[data-theme="dark"] .button.secondary,
body[data-theme="dark"] .button.ghost{
  background:#414b5b!important;
  color:#f2f5f8!important;
  border-color:#657286!important;
}
body[data-theme="dark"] .list-row,
body[data-theme="dark"] .user-row,
body[data-theme="dark"] .search-attachment{
  color:#e5ebf1!important;
  border-color:#4b5668!important;
}
body[data-theme="dark"] th{background:#333b48!important;color:#c7d0da!important}
body[data-theme="dark"] .alert{background:#333b48!important;color:#f2f5f8!important}

@media(max-width:900px){
  .global-search-bar{position:relative!important;z-index:1!important;padding:9px 10px!important}
  .global-search-bar form{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}
  .global-search-bar form>span{display:none!important}
  .global-search-bar button{grid-column:auto!important;width:auto!important;min-width:88px}
  .main-nav{z-index:1300!important}
  .menu-backdrop{z-index:1250!important}
  .mobile-menu-head{z-index:5!important}
}
@media(max-width:520px){
  .global-search-bar form{grid-template-columns:1fr!important}
  .global-search-bar button{width:100%!important}
}

@media(prefers-color-scheme:dark){
  body[data-theme="system"]{
    --bg:#20252d;--panel:#2b313c;--card:#2b313c;--surface:#2b313c;--surface-2:#333b48;--surface-3:#414b5b;--surface-soft:#333b48;--text:#f2f5f8;--muted:#b9c3cf;--border:#566274;--primary:#72b7c5;
    background:var(--bg)!important;color:var(--text)!important
  }
  body[data-theme="system"] .panel,body[data-theme="system"] .stat,body[data-theme="system"] .card{background:#2b313c!important;color:#f2f5f8!important;border-color:#566274!important}
  body[data-theme="system"] .donut:after{background:#2b313c!important;box-shadow:inset 0 0 0 1px #657286!important}
  body[data-theme="system"] .bar-track{background:#465163!important}
}

/* Archivio v7.7.7 — contrasto completo tema Nord: menu, note e superfici chiare */
body[data-theme="dark"] .nav-dropdown,
body[data-theme="dark"] .main-nav,
body[data-theme="dark"] .mobile-menu-head{
  background:#2b313c!important;
  color:#f2f5f8!important;
  border-color:#566274!important;
}
body[data-theme="dark"] .nav-dropdown{
  box-shadow:0 18px 45px rgba(8,12,18,.46)!important;
}
body[data-theme="dark"] .nav-dropdown a,
body[data-theme="dark"] .dropdown-action,
body[data-theme="dark"] .dropdown-caption,
body[data-theme="dark"] .main-nav .nav-link,
body[data-theme="dark"] .main-nav .nav-group-button,
body[data-theme="dark"] .mobile-menu-head strong{
  color:#f2f5f8!important;
}
body[data-theme="dark"] .dropdown-caption{
  color:#bac4d0!important;
  border-color:#4b5668!important;
}
body[data-theme="dark"] .nav-dropdown a:hover,
body[data-theme="dark"] .nav-dropdown a:focus-visible,
body[data-theme="dark"] .dropdown-action:hover,
body[data-theme="dark"] .dropdown-action:focus-visible,
body[data-theme="dark"] .main-nav .nav-link:hover,
body[data-theme="dark"] .main-nav .nav-group-button:hover{
  background:#414b5b!important;
  color:#fff!important;
}
body[data-theme="dark"] .mobile-menu-head button{
  background:#414b5b!important;
  color:#f2f5f8!important;
  border-color:#657286!important;
}
body[data-theme="dark"] .mobile-submenu-back{
  background:#333b48!important;
  color:#9bd3dc!important;
  border-color:#657286!important;
}

body[data-theme="dark"] .notes-card,
body[data-theme="dark"] .markdown-body,
body[data-theme="dark"] .markdown-preview,
body[data-theme="dark"] .reference-card-notes{
  background:#333b48!important;
  color:#f2f5f8!important;
  border-color:#566274!important;
}
body[data-theme="dark"] .markdown-body p,
body[data-theme="dark"] .markdown-body li,
body[data-theme="dark"] .markdown-body blockquote,
body[data-theme="dark"] .markdown-body td,
body[data-theme="dark"] .markdown-body th,
body[data-theme="dark"] .markdown-preview p,
body[data-theme="dark"] .markdown-preview li,
body[data-theme="dark"] .markdown-preview blockquote{
  color:#e7edf3!important;
}
body[data-theme="dark"] .markdown-body a,
body[data-theme="dark"] .markdown-preview a{
  color:#9bd3dc!important;
  text-decoration:underline;
}
body[data-theme="dark"] .markdown-body pre,
body[data-theme="dark"] .markdown-body code,
body[data-theme="dark"] .markdown-preview pre,
body[data-theme="dark"] .markdown-preview code{
  background:#252b35!important;
  color:#f4f7fa!important;
  border:1px solid #566274;
}
body[data-theme="dark"] .markdown-body blockquote,
body[data-theme="dark"] .markdown-preview blockquote{
  border-left:4px solid #72b7c5;
  background:#2b313c!important;
  padding:.7rem 1rem;
}
body[data-theme="dark"] .md-toolbar{
  background:#2b313c!important;
  border-color:#566274!important;
}
body[data-theme="dark"] .md-toolbar button,
body[data-theme="dark"] .input-action button{
  background:#414b5b!important;
  color:#f2f5f8!important;
  border-color:#657286!important;
}
body[data-theme="dark"] .md-toolbar button:hover,
body[data-theme="dark"] .md-toolbar button:focus-visible,
body[data-theme="dark"] .input-action button:hover,
body[data-theme="dark"] .input-action button:focus-visible{
  background:#506078!important;
  color:#fff!important;
}
body[data-theme="dark"] .md-separator{background:#657286!important}

/* Altre superfici nate chiare che possono contenere testo del tema scuro */
body[data-theme="dark"] .tabs a,
body[data-theme="dark"] .attachment-card,
body[data-theme="dark"] .template-card,
body[data-theme="dark"] .template-card summary,
body[data-theme="dark"] .log-summary-card,
body[data-theme="dark"] .mapping-explanation>div,
body[data-theme="dark"] .progress-metrics>div,
body[data-theme="dark"] .firefly-progress-shell,
body[data-theme="dark"] .favicon-current,
body[data-theme="dark"] .sticky-save{
  background:#2b313c!important;
  color:#f2f5f8!important;
  border-color:#566274!important;
}
body[data-theme="dark"] .tabs a.active{background:#5e81ac!important;color:#fff!important}
body[data-theme="dark"] .attachment-preview,
body[data-theme="dark"] .file-placeholder,
body[data-theme="dark"] .pdf-card-preview{
  background:#333b48!important;
  color:#e7edf3!important;
}

@media(prefers-color-scheme:dark){
  body[data-theme="system"] .nav-dropdown,
  body[data-theme="system"] .main-nav,
  body[data-theme="system"] .mobile-menu-head,
  body[data-theme="system"] .notes-card,
  body[data-theme="system"] .markdown-body,
  body[data-theme="system"] .markdown-preview,
  body[data-theme="system"] .reference-card-notes{
    background:#2b313c!important;
    color:#f2f5f8!important;
    border-color:#566274!important;
  }
  body[data-theme="system"] .nav-dropdown a,
  body[data-theme="system"] .dropdown-action,
  body[data-theme="system"] .main-nav .nav-link,
  body[data-theme="system"] .main-nav .nav-group-button{color:#f2f5f8!important}
}

/* Archivio v7.7.8 — revisione completa contrasto tema Nord */
body[data-theme="dark"] .settings-section-head,
body[data-theme="dark"] .profile-section-head,
body[data-theme="dark"] .section-heading,
body[data-theme="dark"] .settings-savebar,
body[data-theme="dark"] .settings-subcard,
body[data-theme="dark"] .settings-action-card,
body[data-theme="dark"] .info-box,
body[data-theme="dark"] .info-card,
body[data-theme="dark"] .import-card,
body[data-theme="dark"] .log-summary-card,
body[data-theme="dark"] .log-entry,
body[data-theme="dark"] .technical-log,
body[data-theme="dark"] .status-success,
body[data-theme="dark"] .warning-check,
body[data-theme="dark"] .alert,
body[data-theme="dark"] .sticky-save,
body[data-theme="dark"] .settings-section-body,
body[data-theme="dark"] .settings-list,
body[data-theme="dark"] .settings-card-grid {
  background:#2b313c!important;
  color:#f4f7fa!important;
  border-color:#596579!important;
}

body[data-theme="dark"] .settings-section-head h2,
body[data-theme="dark"] .settings-section-head h3,
body[data-theme="dark"] .settings-section-head strong,
body[data-theme="dark"] .profile-section-head h2,
body[data-theme="dark"] .section-heading h2,
body[data-theme="dark"] .settings-action-card h3,
body[data-theme="dark"] .info-box strong,
body[data-theme="dark"] .info-card strong,
body[data-theme="dark"] .import-card h2,
body[data-theme="dark"] .import-card strong {
  color:#f7f9fb!important;
}
body[data-theme="dark"] .settings-section-head p,
body[data-theme="dark"] .settings-section-head .muted,
body[data-theme="dark"] .settings-action-card p,
body[data-theme="dark"] .info-box,
body[data-theme="dark"] .info-card small,
body[data-theme="dark"] .import-card p,
body[data-theme="dark"] .settings-savebar span {
  color:#c6d0dc!important;
}
body[data-theme="dark"] .settings-icon,
body[data-theme="dark"] .settings-action-icon,
body[data-theme="dark"] .import-icon {
  background:#3b4655!important;
  color:#8fced9!important;
  border:1px solid #607084!important;
}
body[data-theme="dark"] .settings-action-card:hover,
body[data-theme="dark"] .import-card:hover {
  background:#333b48!important;
  border-color:#78b8c5!important;
}
body[data-theme="dark"] .settings-action-card>strong,
body[data-theme="dark"] .arrow {
  color:#9bd6df!important;
}
body[data-theme="dark"] .info-box code,
body[data-theme="dark"] code,
body[data-theme="dark"] pre {
  background:#20252d!important;
  color:#e8edf3!important;
  border-color:#526071!important;
}
body[data-theme="dark"] .alert.success,
body[data-theme="dark"] .status-success {
  background:#263e35!important;
  color:#bfe9d5!important;
  border-color:#3f7f63!important;
}
body[data-theme="dark"] .alert.danger,
body[data-theme="dark"] .danger-zone {
  background:#472c32!important;
  color:#ffd4da!important;
  border-color:#8b4a57!important;
}
body[data-theme="dark"] .warning-check,
body[data-theme="dark"] .alert.warning,
body[data-theme="dark"] .db-waiting {
  background:#463b27!important;
  color:#f4dfad!important;
  border-color:#8a7340!important;
}
body[data-theme="dark"] .log-entry {
  background:#2f3743!important;
  color:#eef3f8!important;
}
body[data-theme="dark"] .log-entry code,
body[data-theme="dark"] .log-entry .log-message {
  color:#e7edf4!important;
  background:transparent!important;
}
body[data-theme="dark"] .log-entry.error {
  background:#472c32!important;
  border-color:#8b4a57!important;
}
body[data-theme="dark"] .log-entry.warning {
  background:#463b27!important;
  border-color:#8a7340!important;
}
body[data-theme="dark"] .log-entry.slow {
  background:#3d3348!important;
  border-color:#76608b!important;
}
body[data-theme="dark"] .log-entry-meta time,
body[data-theme="dark"] .log-entry-meta,
body[data-theme="dark"] .technical-log,
body[data-theme="dark"] .technical-log summary {
  color:#bdc8d4!important;
}
body[data-theme="dark"] .tabs a,
body[data-theme="dark"] .button.secondary,
body[data-theme="dark"] .button.ghost {
  background:#333b48!important;
  color:#edf2f7!important;
  border-color:#607084!important;
}
body[data-theme="dark"] .tabs a:hover,
body[data-theme="dark"] .button.secondary:hover,
body[data-theme="dark"] .button.ghost:hover {
  background:#414b5b!important;
  color:#fff!important;
}
body[data-theme="dark"] .settings-savebar {
  box-shadow:0 18px 40px rgba(0,0,0,.35)!important;
  backdrop-filter:none!important;
}
body[data-theme="dark"] .settings-section-body>.info-box,
body[data-theme="dark"] .info-grid .info-card,
body[data-theme="dark"] .settings-action-card,
body[data-theme="dark"] .import-card {
  background:#333b48!important;
}
body[data-theme="dark"] .settings-action-card p,
body[data-theme="dark"] .import-card p {
  color:#c8d2de!important;
}
body[data-theme="dark"] .settings-action-card strong,
body[data-theme="dark"] .import-card .arrow {
  color:#f0f4f8!important;
}
body[data-theme="dark"] .settings-section-head code {
  color:#dce5ee!important;
  background:#222831!important;
  padding:.1rem .3rem;
  border-radius:5px;
}

@media(prefers-color-scheme:dark){
  body[data-theme="system"] .settings-section-head,
  body[data-theme="system"] .profile-section-head,
  body[data-theme="system"] .section-heading,
  body[data-theme="system"] .settings-savebar,
  body[data-theme="system"] .settings-subcard,
  body[data-theme="system"] .settings-action-card,
  body[data-theme="system"] .info-box,
  body[data-theme="system"] .info-card,
  body[data-theme="system"] .import-card,
  body[data-theme="system"] .log-summary-card,
  body[data-theme="system"] .log-entry,
  body[data-theme="system"] .technical-log,
  body[data-theme="system"] .sticky-save {
    background:#2b313c!important;color:#f4f7fa!important;border-color:#596579!important;
  }
  
  body[data-theme="system"] .settings-section-head h2,
  body[data-theme="system"] .settings-action-card h3,
  body[data-theme="system"] .info-box strong,
  body[data-theme="system"] .info-card strong{color:#f7f9fb!important}
  body[data-theme="system"] .settings-section-head p,
  body[data-theme="system"] .settings-action-card p,
  body[data-theme="system"] .info-card small{color:#c6d0dc!important}
  body[data-theme="system"] .settings-icon,
  body[data-theme="system"] .settings-action-icon{background:#3b4655!important;color:#8fced9!important;border:1px solid #607084!important}
}


/* Archivio v7.7.13 — Nord mobile, riferimenti, grafico mensile e Collabora */
.reference-badge{display:inline-flex!important;align-items:center;gap:.4rem;width:max-content;max-width:100%;padding:.48rem .72rem;border-radius:999px;border:1px solid #9ddfcd;font-weight:850;overflow-wrap:anywhere}
.reference-link-panel{background:linear-gradient(135deg,#effcf8,#e8f6ff)!important;border-color:#a8ddcf!important}
.reference-link-panel .eyebrow,.reference-link-panel h2{color:#145c50!important}

.reference-linked-list{gap:10px!important}
.reference-linked-list>a.linked-record-button{padding:14px 16px!important;border:1px solid #a9ddcf!important;border-radius:14px!important;background:linear-gradient(135deg,#effcf8,#e8f6ff)!important;box-shadow:0 5px 14px rgba(15,118,110,.08);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.reference-linked-list>a.linked-record-button:hover{transform:translateY(-1px);box-shadow:0 9px 20px rgba(15,118,110,.15);border-color:#4fbda2!important}
.reference-linked-list>a.linked-record-button>span{display:flex;align-items:center;gap:10px;color:#12614f;font-weight:850}.reference-linked-list>a.linked-record-button b{font-size:1.15rem}
.collabora-create-bar{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,220px) auto;gap:10px;padding:14px;margin:0 0 16px;border:1px solid #b7ddea;border-radius:14px;background:#eff9fc}.collabora-create-bar input,.collabora-create-bar select{min-width:0}.collabora-create-bar .button{white-space:nowrap}
.vbar-value{writing-mode:horizontal-tb!important;top:4px!important;bottom:auto!important;padding:3px 6px;border-radius:7px;background:rgba(255,255,255,.94);color:#253044!important;border:1px solid rgba(70,80,95,.18);font-weight:850;white-space:nowrap;box-shadow:0 2px 7px rgba(15,23,42,.10);z-index:2;transform:translateY(-4px)}
.vbar i{position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.vertical-bars{padding-top:48px!important}
body[data-theme="dark"] .reference-badge{background:#244a43!important;color:#bff4e6!important;border-color:#3f7e70!important}
body[data-theme="dark"] .reference-link-panel,body[data-theme="dark"] .reference-linked-list>a.linked-record-button{background:linear-gradient(135deg,#263f3b,#293b49)!important;border-color:#46766d!important;color:#eef7f5!important}
body[data-theme="dark"] .reference-link-panel .eyebrow,body[data-theme="dark"] .reference-link-panel h2,body[data-theme="dark"] .reference-linked-list>a.linked-record-button>span{color:#bff4e6!important}
body[data-theme="dark"] .collabora-create-bar{background:#293844!important;border-color:#466574!important}
body[data-theme="dark"] .vbar-value{background:#2f3743!important;color:#f4f7fa!important;border-color:#5b6879!important;box-shadow:0 3px 9px rgba(0,0,0,.35)}
@media(max-width:700px){.collabora-create-bar{grid-template-columns:1fr}.collabora-create-bar .button{width:100%}.vertical-bars{gap:8px}.vbar{min-width:68px}.vbar-value{font-size:.68rem}}
@media(max-width:900px){
 body[data-theme="dark"] .main-nav,body[data-theme="dark"] .mobile-menu-head,body[data-theme="dark"] .nav-dropdown,body[data-theme="dark"] .main-nav.submenu-open>.nav-group.open>.nav-dropdown{background:#222831!important;color:#f4f7fa!important;border-color:#4b5869!important}
 body[data-theme="dark"] .nav-group>button,body[data-theme="dark"] .nav-dropdown a,body[data-theme="dark"] .dropdown-action{background:#2f3743!important;color:#f4f7fa!important;border-color:#4f5e70!important}
 body[data-theme="dark"] .nav-group>button:hover,body[data-theme="dark"] .nav-dropdown a:hover,body[data-theme="dark"] .dropdown-action:hover{background:#3a4655!important;color:#fff!important}
 body[data-theme="dark"] .mobile-submenu-back,body[data-theme="dark"] .mobile-menu-head button{background:#354252!important;color:#b9e7ef!important;border-color:#5b6c80!important}
}
@media(prefers-color-scheme:dark){
 
 
 body[data-theme="system"] .collabora-create-bar{background:#293844!important;border-color:#466574!important}
 body[data-theme="system"] .vbar-value{background:#2f3743!important;color:#f4f7fa!important;border-color:#5b6879!important}
}

/* Archivio v7.7.14 — menu mobile Nord: contrasto definitivo */
@media(max-width:900px){
  
  body[data-theme="dark"] .main-nav>.nav-link,
  body[data-theme="dark"] .main-nav>.nav-link:link,
  body[data-theme="dark"] .main-nav>.nav-link:visited{
    background:#303b49!important;
    color:#f4f7fb!important;
    border:1px solid #516174!important;
    opacity:1!important;
    -webkit-text-fill-color:#f4f7fb!important;
  }
  body[data-theme="dark"] .main-nav>.nav-link.nav-new,
  body[data-theme="dark"] .main-nav>.nav-link.nav-new:link,
  body[data-theme="dark"] .main-nav>.nav-link.nav-new:visited{
    background:#315b73!important;
    color:#f5fbff!important;
    border-color:#5f91aa!important;
    -webkit-text-fill-color:#f5fbff!important;
  }
  body[data-theme="dark"] .main-nav>.nav-link:hover,
  body[data-theme="dark"] .main-nav>.nav-link:focus-visible,
  body[data-theme="dark"] .main-nav>.nav-link:active{
    background:#3b4858!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
  body[data-theme="dark"] .main-nav>.nav-link.nav-new:hover,
  body[data-theme="dark"] .main-nav>.nav-link.nav-new:focus-visible,
  body[data-theme="dark"] .main-nav>.nav-link.nav-new:active{
    background:#3b718d!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
  body[data-theme="dark"] .main-nav .nav-group-button,
  body[data-theme="dark"] .main-nav .profile-button{
    background:#303b49!important;
    color:#f4f7fb!important;
    border:1px solid #516174!important;
    opacity:1!important;
    -webkit-text-fill-color:#f4f7fb!important;
  }
  body[data-theme="dark"] .main-nav .nav-group-button::after{
    color:#c9d5e2!important;
  }
  body[data-theme="dark"] .main-nav .nav-dropdown{
    background:#27313d!important;
    border:1px solid #455467!important;
  }
  body[data-theme="dark"] .main-nav .nav-dropdown a,
  body[data-theme="dark"] .main-nav .dropdown-action{
    background:#333f4e!important;
    color:#f4f7fb!important;
    border:1px solid #516174!important;
    opacity:1!important;
    -webkit-text-fill-color:#f4f7fb!important;
  }
  body[data-theme="dark"] .main-nav .nav-dropdown a:hover,
  body[data-theme="dark"] .main-nav .nav-dropdown a:focus-visible,
  body[data-theme="dark"] .main-nav .dropdown-action:hover,
  body[data-theme="dark"] .main-nav .dropdown-action:focus-visible{
    background:#425164!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }
}
@media(max-width:900px) and (prefers-color-scheme:dark){
  
  body[data-theme="system"] .main-nav>.nav-link,
  body[data-theme="system"] .main-nav .nav-group-button,
  body[data-theme="system"] .main-nav .profile-button{background:#303b49!important;color:#f4f7fb!important;border:1px solid #516174!important;opacity:1!important;-webkit-text-fill-color:#f4f7fb!important}
  body[data-theme="system"] .main-nav>.nav-link.nav-new{background:#315b73!important;color:#f5fbff!important;border-color:#5f91aa!important;-webkit-text-fill-color:#f5fbff!important}
  body[data-theme="system"] .main-nav .nav-dropdown{background:#27313d!important;border:1px solid #455467!important}
  body[data-theme="system"] .main-nav .nav-dropdown a,
  body[data-theme="system"] .main-nav .dropdown-action{background:#333f4e!important;color:#f4f7fb!important;border:1px solid #516174!important;opacity:1!important;-webkit-text-fill-color:#f4f7fb!important}
}

/* Archivio v7.7.15 — login, profilo, valuta e dizionari */
.login-shell{min-height:calc(100vh - 190px);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);align-items:stretch;gap:0;max-width:1100px;margin:28px auto;border:1px solid #d7e0ea;border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 24px 60px rgba(15,23,42,.14)}
.login-brand-panel{padding:clamp(32px,6vw,76px);display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,#edf8ff,#e9f8f3);color:#19334a}.login-brand-icon{font-size:4rem;margin-bottom:18px}.login-brand-panel h1{font-size:clamp(2.4rem,5vw,4.6rem);margin:.25rem 0}.login-brand-panel p{font-size:1.08rem;max-width:38rem;color:#4b6479}.login-meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:32px;font-weight:750;color:#42647b}
.professional-login-card{margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:clamp(32px,5vw,64px)!important;display:flex;flex-direction:column;justify-content:center}.professional-login-card h2{margin-bottom:.25rem}.login-submit{width:100%;margin-top:8px}
.linked-items-cta{background:#dff7ef!important;color:#12614f!important;border-color:#84d2bd!important;font-weight:850!important}.linked-items-cta:hover{background:#c8efe4!important;color:#0b4f40!important}
.dictionary-help{margin-bottom:18px;background:linear-gradient(135deg,#f3fbff,#f0fbf7)!important}.dictionary-help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dictionary-help-grid>div{padding:15px;border:1px solid #cfe2e8;border-radius:14px;background:rgba(255,255,255,.76)}.dictionary-help-grid p{margin:.35rem 0 0;color:#526579}
.currency-options{border:1px solid #cbd7e4;border-radius:14px;background:#f8fbfd}.currency-options summary{cursor:pointer;padding:14px 16px;font-weight:850;display:flex;justify-content:space-between;gap:12px}.currency-options summary span{padding:.2rem .55rem;border-radius:999px;background:#e4f4ff;color:#245c78}.currency-options-grid{padding:0 14px 14px}
body[data-theme="dark"] .login-shell{background:#26303c;border-color:#526174;box-shadow:0 24px 60px rgba(0,0,0,.45)}body[data-theme="dark"] .login-brand-panel{background:linear-gradient(145deg,#24343d,#263b38);color:#f3f7fa}body[data-theme="dark"] .login-brand-panel p,body[data-theme="dark"] .login-meta{color:#c5d5df}body[data-theme="dark"] .professional-login-card{background:#2b3542!important}body[data-theme="dark"] .linked-items-cta{background:#244a43!important;color:#bff4e6!important;border-color:#467b70!important}body[data-theme="dark"] .linked-items-cta:hover{background:#2e5a51!important;color:#e7fff8!important}body[data-theme="dark"] .dictionary-help{background:linear-gradient(135deg,#283642,#283b38)!important;border-color:#516274!important}body[data-theme="dark"] .dictionary-help-grid>div{background:#303b48;border-color:#526174}body[data-theme="dark"] .dictionary-help-grid p{color:#c7d2de}body[data-theme="dark"] .currency-options{background:#2b3542;border-color:#536174}body[data-theme="dark"] .currency-options summary span{background:#24485a;color:#c8edf7}
@media(prefers-color-scheme:dark){body[data-theme="system"] .login-shell{background:#26303c;border-color:#526174}body[data-theme="system"] .login-brand-panel{background:linear-gradient(145deg,#24343d,#263b38);color:#f3f7fa}body[data-theme="system"] .professional-login-card{background:#2b3542!important}body[data-theme="system"] .linked-items-cta{background:#244a43!important;color:#bff4e6!important;border-color:#467b70!important}body[data-theme="system"] .dictionary-help{background:linear-gradient(135deg,#283642,#283b38)!important}body[data-theme="system"] .dictionary-help-grid>div{background:#303b48;border-color:#526174}body[data-theme="system"] .currency-options{background:#2b3542;border-color:#536174}}
@media(max-width:760px){.login-shell{grid-template-columns:1fr;margin:12px;border-radius:20px}.login-brand-panel{padding:28px}.login-brand-panel h1{font-size:2.2rem}.professional-login-card{padding:28px!important}.dictionary-help-grid{grid-template-columns:1fr}}
/* v7.8.0 - sicurezza, cestino, cronologia, salute sistema */
.progress-card{padding:1rem 0}.progress-card+ .progress-card{border-top:1px solid var(--border,#dbe3ee)}.progress-head{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:.55rem}.progress-card progress{width:100%;height:18px;accent-color:var(--primary)}
.health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.8rem}.health-card{display:flex;gap:.7rem;align-items:center;padding:.9rem;border:1px solid var(--border,#dbe3ee);border-radius:12px;background:rgba(255,255,255,.7)}.health-card small{display:block;margin-top:.2rem}.health-dot{width:12px;height:12px;border-radius:50%;background:#dc2626;box-shadow:0 0 0 4px rgba(220,38,38,.12)}.health-card.ok .health-dot{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.12)}.health-card.warn .health-dot{background:#d97706;box-shadow:0 0 0 4px rgba(217,119,6,.12)}
.timeline{display:grid;gap:.75rem}.timeline-item{border-left:3px solid var(--primary);padding:.6rem .8rem;background:rgba(37,99,235,.05);border-radius:0 10px 10px 0}.timeline-item span,.timeline-item small{display:block;margin-top:.2rem}.danger-zone{border-color:rgba(220,38,38,.4)!important}.search-advanced{display:flex;gap:.65rem}.search-advanced input{flex:1}.notification-row.unread{border-left:4px solid var(--primary);padding-left:.7rem;font-weight:500}.inline-form{display:inline}.reference-select-line .count-badge{margin-left:auto}
body[data-theme="dark"] .health-card,body[data-theme="dark"] .timeline-item,body[data-theme="dark"] .search-help code{background:#202b3b;color:#e5edf7;border-color:#3b4a60}body[data-theme="dark"] .progress-card+ .progress-card{border-color:#3b4a60}
@media (prefers-color-scheme:dark){body[data-theme="system"] .health-card,body[data-theme="system"] .timeline-item,body[data-theme="system"] .search-help code{background:#202b3b;color:#e5edf7;border-color:#3b4a60}}
@media(max-width:700px){.search-advanced{display:grid}.health-grid{grid-template-columns:1fr}.progress-head{align-items:flex-start}.timeline-item{font-size:.95rem}}

/* v8.0.0 - Selettore multi-archivio */
.brand-stack{display:flex;align-items:center;gap:.65rem}.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy strong{font-size:1rem}.brand-copy small{font-size:.72rem;opacity:.78;margin-top:.18rem}.archive-switcher{display:flex;align-items:center;padding:.2rem .45rem;border-radius:12px;background:rgba(255,255,255,.08)}.archive-switcher>span{font-size:.72rem;opacity:.7;margin-right:.15rem}.archive-switch-link{text-decoration:none;font-size:.82rem;color:inherit;white-space:nowrap}
.archive-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.archive-home-card{display:flex;gap:1rem;align-items:flex-start;padding:1.4rem;border:1px solid var(--border,#d8dee9);border-radius:18px;background:var(--panel,#fff);text-decoration:none;color:inherit;box-shadow:0 8px 24px rgba(15,23,42,.06);transition:.18s transform,.18s box-shadow}.archive-home-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(15,23,42,.10)}.archive-home-icon{font-size:2rem}.archive-home-card h2{margin:.05rem 0 .3rem}.archive-home-card p{margin:0 0 .7rem;color:var(--muted,#64748b)}.dashboard-grid-simple{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.dicom-ready{flex-wrap:wrap;padding:.9rem;border-radius:12px;margin-bottom:1rem}.dicom-ready code{word-break:break-all}
body[data-theme="dark"] .archive-home-card,body[data-theme="dark"] .dicom-ready{background:#202a38;border-color:#3b4758;color:#e8edf4}body[data-theme="dark"] .archive-home-card p{color:#bac5d4}body[data-theme="dark"] .archive-switcher{background:rgba(255,255,255,.06)}
@media(max-width:900px){.archive-home-grid,.dashboard-grid-simple{grid-template-columns:1fr}.archive-switcher{width:100%;margin:.5rem 0}.archive-switcher>span{padding:.25rem .4rem}.archive-switch-link{display:block;padding:.7rem}.brand-copy small{display:block}}


/* Archivio v8.0.1 — navigazione desktop, menu mobile chiaro, strumenti medici */
@media(min-width:901px){
  .topbar{padding-top:10px!important;padding-bottom:10px!important}
  .topbar-inner{align-items:stretch!important;min-height:88px!important}
  .brand-stack{align-self:center;min-width:170px}
  .main-nav-v801{display:grid!important;grid-template-rows:auto auto;gap:7px!important;flex:1;min-width:0}
  .nav-primary-row,.nav-secondary-row{display:flex;align-items:center;gap:6px;min-width:0}
  .nav-primary-row{justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.13);padding-bottom:6px}
  .nav-secondary-row{justify-content:flex-end;flex-wrap:wrap}
  .nav-primary-row .archive-switcher{background:rgba(255,255,255,.07);padding:4px 6px}
  .nav-account-zone{display:flex;align-items:center;gap:6px;margin-left:auto}
  .nav-account-zone .notification-link{padding:8px 10px}
  .nav-account-zone .profile-group{margin:0!important}
  .archive-switch-link{font-weight:780}
  .archive-switch-link.active{background:#fff!important;color:#16325c!important;box-shadow:0 3px 10px rgba(0,0,0,.12)}
  body[data-theme="dark"] .archive-switch-link.active{background:#88c0d0!important;color:#1f2937!important}
}
@media(max-width:900px){
  /* Il tema chiaro deve avere contrasto esplicito: niente ereditarietà dalla topbar scura. */
  body[data-theme="light"] .main-nav{background:#f7f9fc!important;color:#172033!important;border-left:1px solid #d7e0ea!important}
  body[data-theme="light"] .mobile-menu-head{background:#f7f9fc!important;color:#172033!important;border-color:#d7e0ea!important}
  body[data-theme="light"] .main-nav .archive-switcher{background:#eaf1f8!important;border:1px solid #d1ddea!important}
  body[data-theme="light"] .main-nav .archive-switch-link{background:#fff!important;color:#243247!important;-webkit-text-fill-color:#243247!important;border:1px solid #d4deea!important;opacity:1!important}
  body[data-theme="light"] .main-nav .archive-switch-link.active{background:#dbeafe!important;color:#174ea6!important;-webkit-text-fill-color:#174ea6!important;border-color:#93b4ec!important}
  body[data-theme="light"] .main-nav .nav-link,body[data-theme="light"] .main-nav .nav-group-button,body[data-theme="light"] .main-nav .profile-button{background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important;border:1px solid #d4deea!important;opacity:1!important}
  body[data-theme="light"] .main-nav .nav-new{background:#e6f4ff!important;color:#135f8d!important;-webkit-text-fill-color:#135f8d!important;border-color:#a9d6ed!important}
  body[data-theme="light"] .main-nav .nav-dropdown{background:#f7f9fc!important;border-color:#d4deea!important}
  body[data-theme="light"] .main-nav .nav-dropdown a,body[data-theme="light"] .main-nav .dropdown-action{background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important;border:1px solid #d4deea!important;opacity:1!important}
  .nav-primary-row,.nav-secondary-row,.nav-account-zone{display:contents}
}
.medical-tools-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:20px;align-items:start}
.medical-tool-card{background:#fff!important;color:#172033!important;border-color:#d6e0ec!important;box-shadow:0 12px 30px rgba(15,23,42,.07)!important}
.medical-tool-card h2,.medical-tool-card strong,.medical-tool-card label{color:#172033!important}
.medical-tool-card .muted,.medical-tool-card small{color:#64748b!important}
.dicom-panel{border-left:5px solid #0ea5e9!important}
.lab-panel{border-left:5px solid #22c55e!important}
.dicom-ready{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#eaf7ff!important;border:1px solid #b8def2!important;color:#17324a!important}
.dicom-ready-main{display:grid;gap:6px;min-width:0}.dicom-ready code{background:#d9eef9!important;color:#17324a!important;padding:6px 8px;border-radius:8px}
.dicom-meta{display:flex;gap:8px;flex-wrap:wrap}.dicom-meta span{background:#fff;border:1px solid #c8deeb;border-radius:999px;padding:5px 9px;font-size:.82rem}
.dicom-import-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.dicom-import-options label{padding:12px;border:1px solid #d5dfeb;border-radius:12px;background:#f8fafc}.dicom-import-options label>span{font-weight:850}.dicom-import-options input{margin-top:8px;padding:8px;background:#fff!important;color:#172033!important}
.dicom-import-status{margin:12px 0;padding:12px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe}.dicom-import-status progress{width:100%;margin:8px 0}
.lab-value-form{margin-top:14px}.lab-value-form input{background:#fff!important;color:#172033!important;border-color:#cfd9e5!important}.lab-table th{background:#f1f5f9!important;color:#475569!important}.lab-table td{color:#172033!important;background:#fff!important}
body[data-theme="dark"] .medical-tool-card{background:#2e3440!important;color:#eceff4!important;border-color:#4c566a!important}body[data-theme="dark"] .medical-tool-card h2,body[data-theme="dark"] .medical-tool-card strong,body[data-theme="dark"] .medical-tool-card label{color:#eceff4!important}body[data-theme="dark"] .medical-tool-card .muted,body[data-theme="dark"] .medical-tool-card small{color:#c3cad5!important}body[data-theme="dark"] .dicom-ready{background:#263d4a!important;border-color:#487084!important;color:#eaf7ff!important}body[data-theme="dark"] .dicom-ready code{background:#1f3440!important;color:#c8f0ff!important}body[data-theme="dark"] .dicom-meta span{background:#334553;border-color:#52697b;color:#edf7fb}body[data-theme="dark"] .dicom-import-options label{background:#353c49;border-color:#566274;color:#eceff4}body[data-theme="dark"] .dicom-import-options input,body[data-theme="dark"] .lab-value-form input{background:#3b4252!important;color:#eceff4!important;border-color:#596579!important}body[data-theme="dark"] .dicom-import-status{background:#26394b;border-color:#4f6d86;color:#e9f5ff}body[data-theme="dark"] .lab-table th{background:#353d4a!important;color:#cbd5e1!important}body[data-theme="dark"] .lab-table td{background:#2e3440!important;color:#eceff4!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .medical-tool-card{background:#2e3440!important;color:#eceff4!important;border-color:#4c566a!important}body[data-theme="system"] .medical-tool-card h2,body[data-theme="system"] .medical-tool-card strong,body[data-theme="system"] .medical-tool-card label{color:#eceff4!important}body[data-theme="system"] .dicom-ready{background:#263d4a!important;color:#eaf7ff!important;border-color:#487084!important}body[data-theme="system"] .lab-table td{background:#2e3440!important;color:#eceff4!important}}
@media(max-width:900px){.medical-tools-grid,.dicom-import-options{grid-template-columns:1fr}.dicom-ready{align-items:flex-start;flex-direction:column}.dicom-ready .button{width:100%}}
@media(max-width:900px){
  .main-nav.submenu-open .archive-switcher,.main-nav.submenu-open .nav-link,.main-nav.submenu-open .nav-group:not(.open){display:none!important}
  .main-nav.submenu-open .nav-group.open{display:block!important;width:100%!important;min-width:0!important}
  .main-nav.submenu-open .nav-group.open>.nav-group-button{display:none!important}
  .main-nav.submenu-open .nav-group.open>.nav-dropdown{position:static!important;inset:auto!important;display:grid!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important;background:transparent!important;opacity:1!important;visibility:visible!important;transform:none!important}
}


/* Archivio v8.0.2 — contrasto mobile Scuro/Automatico + progress DICOM */
@media(max-width:900px){
  body[data-theme="dark"] .main-nav .notification-link,
  body[data-theme="dark"] .main-nav .nav-link,
  body[data-theme="dark"] .main-nav .nav-link:link,
  body[data-theme="dark"] .main-nav .nav-link:visited{
    background:#2f3947!important;color:#eceff4!important;-webkit-text-fill-color:#eceff4!important;border:1px solid #536174!important;opacity:1!important
  }
  body[data-theme="dark"] .main-nav .nav-new{background:#315b73!important;color:#f5fbff!important;-webkit-text-fill-color:#f5fbff!important;border-color:#5f91aa!important}
}
@media(max-width:900px) and (prefers-color-scheme:dark){
  body[data-theme="system"] .main-nav .notification-link,
  body[data-theme="system"] .main-nav .nav-link,
  body[data-theme="system"] .main-nav .nav-link:link,
  body[data-theme="system"] .main-nav .nav-link:visited{
    background:#2f3947!important;color:#eceff4!important;-webkit-text-fill-color:#eceff4!important;border:1px solid #536174!important;opacity:1!important
  }
  body[data-theme="system"] .main-nav .nav-new{background:#315b73!important;color:#f5fbff!important;-webkit-text-fill-color:#f5fbff!important;border-color:#5f91aa!important}
}
.dicom-import-status{display:grid;grid-template-columns:1fr auto;gap:5px 12px;align-items:center}
.dicom-import-status strong{grid-column:1/2}.dicom-import-status>span{grid-column:2/3;font-weight:800}.dicom-import-status progress{grid-column:1/-1;height:14px;accent-color:#2563eb;background:#e5e7eb;color:#2563eb}
.dicom-ready-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.dicom-ready-actions form{margin:0}
.upload-overlay .upload-box{background:#fff!important;color:#172033!important}.upload-overlay .upload-box strong,.upload-overlay .upload-box span{color:#172033!important;-webkit-text-fill-color:#172033!important}.upload-overlay progress{background:#e5e7eb;color:#2563eb;accent-color:#2563eb}
body[data-theme="dark"] .upload-overlay .upload-box{background:#2e3440!important;color:#eceff4!important;border:1px solid #596579!important}body[data-theme="dark"] .upload-overlay .upload-box strong,body[data-theme="dark"] .upload-overlay .upload-box span{color:#eceff4!important;-webkit-text-fill-color:#eceff4!important}body[data-theme="dark"] .upload-overlay progress{background:#1f2937;color:#88c0d0;accent-color:#88c0d0}
body[data-theme="dark"] .dicom-import-status strong,body[data-theme="dark"] .dicom-import-status span{color:#eaf7ff!important;-webkit-text-fill-color:#eaf7ff!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .upload-overlay .upload-box{background:#2e3440!important;color:#eceff4!important;border:1px solid #596579!important}body[data-theme="system"] .upload-overlay .upload-box strong,body[data-theme="system"] .upload-overlay .upload-box span{color:#eceff4!important;-webkit-text-fill-color:#eceff4!important}body[data-theme="system"] .dicom-import-status strong,body[data-theme="system"] .dicom-import-status span{color:#eaf7ff!important;-webkit-text-fill-color:#eaf7ff!important}}

@media(max-width:900px) and (prefers-color-scheme:dark){}

/* Archivio v8.0.3 — branding chooser, login, duplica, progress e DICOM */
body .duplicate-button{background:#475569!important;color:#fff!important;border:1px solid #64748b!important;box-shadow:0 6px 16px rgba(15,23,42,.16)}
body .duplicate-button:hover{background:#334155!important;color:#fff!important;transform:translateY(-1px)}
body[data-theme="dark"] .duplicate-button{background:#4c566a!important;color:#eceff4!important;border-color:#6b7890!important}
body[data-theme="dark"] .duplicate-button:hover{background:#5e6b82!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .duplicate-button{background:#4c566a!important;color:#eceff4!important;border-color:#6b7890!important}}

.login-shell-v803{overflow:hidden;min-height:620px;background:linear-gradient(135deg,#0f2248 0%,#17376d 48%,#2563eb 100%);border:1px solid rgba(37,99,235,.18);box-shadow:0 28px 80px rgba(15,34,72,.18)}
.login-shell-v803 .login-brand-panel{background:transparent!important;position:relative}
.login-shell-v803 .login-brand-panel:after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;right:-150px;bottom:-170px;background:rgba(255,255,255,.07);pointer-events:none}
.login-shell-v803 .login-brand-icon{width:74px;height:74px;display:grid;place-items:center;border-radius:22px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.20);box-shadow:0 16px 40px rgba(0,0,0,.14);font-size:2.3rem}
.login-shell-v803 .login-lead{max-width:520px;font-size:1.05rem;line-height:1.7;color:#dbeafe}
.login-feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:24px 0}.login-feature-list span{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);font-size:.86rem;color:#eff6ff}
.login-shell-v803 .professional-login-card{align-self:center;margin:26px!important;border-radius:24px!important;padding:36px!important;max-width:470px}
.login-card-mark{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:#eff6ff;border:1px solid #bfdbfe;font-size:1.65rem;margin-bottom:4px}.login-form-v803{margin-top:10px}.login-form-v803 input{min-height:50px}.password-field{display:grid;grid-template-columns:1fr 48px;gap:7px}.password-field button{border:1px solid #d1d5db;background:#f8fafc;border-radius:11px;cursor:pointer;font-size:1rem}.login-submit{min-height:52px;font-size:1rem;box-shadow:0 10px 24px rgba(37,99,235,.22)}.login-security-note{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:12px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569}.login-security-note small{color:inherit!important}
body[data-theme="dark"] .login-shell-v803{background:linear-gradient(145deg,#1f2937,#253448 52%,#24485a)}body[data-theme="dark"] .login-card-mark,body[data-theme="dark"] .login-security-note{background:#242f3d!important;border-color:#4c566a!important;color:#e5edf7!important}body[data-theme="dark"] .password-field button{background:#3b4252;border-color:#596579;color:#eceff4}
@media(prefers-color-scheme:dark){body[data-theme="system"] .login-shell-v803{background:linear-gradient(145deg,#1f2937,#253448 52%,#24485a)}body[data-theme="system"] .login-card-mark,body[data-theme="system"] .login-security-note{background:#242f3d!important;border-color:#4c566a!important;color:#e5edf7!important}}

/* progress leggibile anche su WebKit/Firefox */
.dicom-import-status progress,.upload-overlay progress{border:0;border-radius:999px;overflow:hidden;background:#dbe4ef!important}.dicom-import-status progress::-webkit-progress-bar,.upload-overlay progress::-webkit-progress-bar{background:#dbe4ef;border-radius:999px}.dicom-import-status progress::-webkit-progress-value,.upload-overlay progress::-webkit-progress-value{background:#2563eb;border-radius:999px}.dicom-import-status progress::-moz-progress-bar,.upload-overlay progress::-moz-progress-bar{background:#2563eb;border-radius:999px}
body[data-theme="dark"] .dicom-import-status progress,body[data-theme="dark"] .upload-overlay progress{background:#17202d!important}body[data-theme="dark"] .dicom-import-status progress::-webkit-progress-bar,body[data-theme="dark"] .upload-overlay progress::-webkit-progress-bar{background:#17202d}body[data-theme="dark"] .dicom-import-status progress::-webkit-progress-value,body[data-theme="dark"] .upload-overlay progress::-webkit-progress-value{background:#88c0d0}body[data-theme="dark"] .dicom-import-status progress::-moz-progress-bar,body[data-theme="dark"] .upload-overlay progress::-moz-progress-bar{background:#88c0d0}
@media(prefers-color-scheme:dark){body[data-theme="system"] .dicom-import-status progress,body[data-theme="system"] .upload-overlay progress{background:#17202d!important}body[data-theme="system"] .dicom-import-status progress::-webkit-progress-value,body[data-theme="system"] .upload-overlay progress::-webkit-progress-value{background:#88c0d0}body[data-theme="system"] .dicom-import-status progress::-moz-progress-bar,body[data-theme="system"] .upload-overlay progress::-moz-progress-bar{background:#88c0d0}}
.dicom-cancel-button{grid-column:1/-1;justify-self:flex-start;margin-top:4px}
@media(max-width:760px){.login-shell-v803{min-height:0}.login-feature-list{grid-template-columns:1fr}.login-shell-v803 .professional-login-card{margin:0!important;max-width:none}.login-shell-v803 .login-brand-panel{padding-bottom:20px}}

/* Archivio v8.0.4 — login ad alto contrasto */
.login-shell-v803 .login-brand-panel .eyebrow,
.login-shell-v803 .login-brand-panel h1,
.login-shell-v803 .login-brand-panel .login-lead,
.login-shell-v803 .login-brand-panel .login-meta,
.login-shell-v803 .login-brand-panel .login-meta span{
  color:#f8fbff!important;-webkit-text-fill-color:#f8fbff!important
}
.login-shell-v803 .login-brand-panel .eyebrow{letter-spacing:.12em}
.login-shell-v803 .login-brand-panel h1{text-shadow:0 3px 18px rgba(0,0,0,.18);font-weight:900}
.login-shell-v803 .login-brand-panel .login-meta{opacity:.92}
.login-shell-v803 .professional-login-card{background:rgba(255,255,255,.97)!important;border:1px solid rgba(255,255,255,.65)!important}
.login-shell-v803 .professional-login-card h2{color:#101828!important;-webkit-text-fill-color:#101828!important}
.login-shell-v803 .professional-login-card .muted{color:#667085!important;-webkit-text-fill-color:#667085!important}
.login-shell-v803 .login-form-v803 label{color:#182230!important;-webkit-text-fill-color:#182230!important;font-weight:800}
.login-shell-v803 .login-form-v803 input{background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important;border:1px solid #cbd5e1!important}
.login-shell-v803 .login-form-v803 input::placeholder{color:#667085!important;-webkit-text-fill-color:#667085!important;opacity:1}
body[data-theme="dark"] .login-shell-v803 .professional-login-card{background:#262f3b!important;border-color:#4c566a!important}
body[data-theme="dark"] .login-shell-v803 .professional-login-card h2,
body[data-theme="dark"] .login-shell-v803 .login-form-v803 label{color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important}
body[data-theme="dark"] .login-shell-v803 .professional-login-card .muted{color:#c3cfdd!important;-webkit-text-fill-color:#c3cfdd!important}
body[data-theme="dark"] .login-shell-v803 .login-form-v803 input{background:#313c4b!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;border-color:#596579!important}
body[data-theme="dark"] .login-shell-v803 .login-form-v803 input::placeholder{color:#b8c4d3!important;-webkit-text-fill-color:#b8c4d3!important}
@media(prefers-color-scheme:dark){
 body[data-theme="system"] .login-shell-v803 .professional-login-card{background:#262f3b!important;border-color:#4c566a!important}
 body[data-theme="system"] .login-shell-v803 .professional-login-card h2,
 body[data-theme="system"] .login-shell-v803 .login-form-v803 label{color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important}
 body[data-theme="system"] .login-shell-v803 .professional-login-card .muted{color:#c3cfdd!important;-webkit-text-fill-color:#c3cfdd!important}
 body[data-theme="system"] .login-shell-v803 .login-form-v803 input{background:#313c4b!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;border-color:#596579!important}
}
/* Archivio v8.0.5 - login refinement */
.login-shell-v803 .login-brand-panel h1{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:clamp(2.65rem,5vw,4.9rem)!important;letter-spacing:-.04em}
.login-shell-v803 .login-brand-panel .login-lead{color:#e5efff!important;-webkit-text-fill-color:#e5efff!important;font-size:1.08rem!important}
.login-shell-v803 .login-brand-panel .login-meta,.login-shell-v803 .login-brand-panel .login-meta span{color:#d9e8ff!important;-webkit-text-fill-color:#d9e8ff!important;font-weight:800!important}
.login-shell-v803 .login-brand-panel .eyebrow{color:#8ee7ff!important;-webkit-text-fill-color:#8ee7ff!important}
.login-shell-v803 .professional-login-card{backdrop-filter:blur(8px);box-shadow:0 30px 80px rgba(15,23,42,.30)!important}
.login-shell-v803 .login-card-mark{box-shadow:0 8px 24px rgba(37,99,235,.12)}
.login-shell-v803 .login-submit{border-radius:13px!important}
.notification-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border-bottom:1px solid var(--border)}.notification-row>div:first-child{display:flex;flex-direction:column;gap:5px}.notification-row.unread{background:color-mix(in srgb,var(--primary) 7%,var(--panel))}
@media(max-width:760px){.notification-row{align-items:flex-start;flex-direction:column}.notification-row .actions{width:100%;justify-content:flex-start}}


/* Archivio v8.0.7 — notifiche, Diagnostica e header desktop Scuro */
.notification-row .notification-title{display:block;font-weight:500;color:inherit}
.notification-row .notification-body{display:block;font-weight:400;color:inherit}
.notification-row.unread .notification-title,
.notification-row.unread .notification-body{font-weight:800}
.notification-row:not(.unread){opacity:.86}

@media(min-width:901px){
  body[data-theme="dark"] .main-nav-v801{
    background:#242e3b!important;
    border:1px solid #455468!important;
    border-radius:18px!important;
    padding:8px 10px!important;
    box-shadow:0 10px 28px rgba(0,0,0,.16)!important;
    overflow:visible!important;
  }
  body[data-theme="dark"] .main-nav-v801 .nav-primary-row{
    border-bottom-color:#46566a!important;
    padding:2px 4px 8px!important;
  }
  body[data-theme="dark"] .main-nav-v801 .nav-secondary-row{padding:0 4px 2px!important}
  body[data-theme="dark"] .main-nav-v801 .archive-switcher,
  body[data-theme="dark"] .main-nav-v801 .nav-account-zone{
    border-radius:13px!important;
  }
}
@media(min-width:901px) and (prefers-color-scheme:dark){
  body[data-theme="system"] .main-nav-v801{
    background:#242e3b!important;border:1px solid #455468!important;border-radius:18px!important;
    padding:8px 10px!important;box-shadow:0 10px 28px rgba(0,0,0,.16)!important;overflow:visible!important
  }
  body[data-theme="system"] .main-nav-v801 .nav-primary-row{border-bottom-color:#46566a!important;padding:2px 4px 8px!important}
  body[data-theme="system"] .main-nav-v801 .nav-secondary-row{padding:0 4px 2px!important}
}

/* Archivio v8.0.9 — stato notifiche realmente non lette */
.notification-row.unread,
.notification-row.unread .notification-title,
.notification-row.unread .notification-body{font-weight:800!important}
.notification-row.unread small{font-weight:600!important}
.notification-row.unread::before{content:"";width:8px;height:8px;border-radius:999px;background:var(--primary);flex:0 0 auto}
.notification-row:not(.unread) .notification-title,
.notification-row:not(.unread) .notification-body{font-weight:400!important}

/* v8.2.0 - stato Updater Manager */
.manager-health{display:flex;align-items:center;gap:.8rem;padding:.8rem 1rem;border:1px solid var(--border);border-radius:14px;margin:.6rem 0 1rem}.manager-health small{display:block;margin-top:.15rem}.manager-dot{width:.75rem;height:.75rem;border-radius:50%;background:#9ca3af;box-shadow:0 0 0 4px rgba(156,163,175,.12)}.manager-health.online .manager-dot{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.14)}.manager-health.offline .manager-dot{background:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.14)}button:disabled,.button:disabled{opacity:.5;cursor:not-allowed}

@media (max-width:900px){.desktop-dicom-library{display:none !important}}
/* 8.2.13 · Export DICOM asincrono */
.dicom-export-status{flex:1 0 100%;width:100%;box-sizing:border-box;margin:4px 0 0}
.dicom-export-status small{grid-column:1/-1}
.dicom-ready-actions button[disabled]{opacity:.6;cursor:wait}

/* 8.2.14 · Risultati laboratorio OCR */
.lab-summary-panel{display:flex;flex-direction:column;gap:14px}
.lab-summary-list{display:grid;gap:8px;padding:10px 0}
.lab-summary-list>div{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:.55rem .65rem;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}
.lab-summary-list>div span{font-variant-numeric:tabular-nums;text-align:right}
.lab-summary-actions{margin-top:auto;align-items:center;flex-wrap:wrap}.lab-summary-actions form{margin:0}
.lab-extract-progress{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,2fr) auto;gap:12px;align-items:center;margin-top:14px}
.lab-extract-progress.compact{grid-template-columns:1fr auto;margin-top:0;padding:10px 0;border:0;background:transparent;box-shadow:none}.lab-extract-progress.compact .lab-progress-copy{grid-column:1/-1}.lab-extract-progress.compact progress{grid-column:1/2}
.lab-progress-copy{display:grid;gap:2px}.lab-progress-copy small{color:var(--muted,#64748b)}
.lab-extract-progress progress{width:100%;height:12px;accent-color:#22c55e}
.lab-extract-progress>span{font-weight:700;font-variant-numeric:tabular-nums}
.lab-results-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;flex-wrap:wrap}.lab-search-form{display:flex;align-items:end;gap:12px;flex:1;min-width:min(100%,520px)}.lab-search-form label{flex:1}.lab-search-form .actions{margin:0}
.lab-results-mobile{display:none}.lab-result-value{font-weight:700;font-variant-numeric:tabular-nums}.lab-manual-panel{margin-bottom:22px}
body[data-theme="dark"] .lab-summary-list>div{background:#353d4a;border-color:#566274;color:#eceff4}
@media(prefers-color-scheme:dark){body[data-theme="system"] .lab-summary-list>div{background:#353d4a;border-color:#566274;color:#eceff4}}
@media(max-width:760px){
 .lab-results-toolbar,.lab-search-form{display:grid;grid-template-columns:1fr;width:100%}.lab-search-form .actions{display:grid;grid-template-columns:1fr 1fr}.lab-search-form .button{width:100%}
 .lab-extract-progress{grid-template-columns:1fr auto}.lab-extract-progress .lab-progress-copy{grid-column:1/-1}.lab-extract-progress progress{grid-column:1/2}
 .lab-results-table{display:none}.lab-results-mobile{display:grid;gap:10px}.lab-result-card{display:grid;gap:8px;padding:12px;border:1px solid var(--border,#d8e0ea);border-radius:12px;background:var(--panel,#fff)}.lab-result-card>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.lab-result-card>div>span{font-weight:800;font-variant-numeric:tabular-nums;text-align:right}.lab-result-card p{margin:0;color:var(--muted,#64748b);font-size:.88rem}.lab-result-card form{margin:0}.lab-result-card .button{width:100%}
 .lab-summary-actions{display:grid;grid-template-columns:1fr}.lab-summary-actions .button,.lab-summary-actions form,.lab-summary-actions form .button{width:100%}
}

/* Archivio v8.2.15 — Home, navigazione mobile e colori semantici */
.archive-home-hero{
  display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:24px;align-items:center;
  margin-bottom:24px;padding:28px;border:1px solid var(--border);border-radius:24px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 9%,var(--panel)) 0,var(--panel) 58%,color-mix(in srgb,var(--primary) 4%,var(--panel)) 100%);
  box-shadow:var(--shadow);overflow:hidden;position:relative
}
.archive-home-hero:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-90px;top:-120px;background:color-mix(in srgb,var(--primary) 9%,transparent);pointer-events:none}
.archive-home-hero-copy{position:relative;z-index:1}.archive-home-hero h1{font-size:clamp(2rem,4vw,3rem);margin:.2rem 0 .55rem}.archive-home-hero p{margin:0;max-width:760px;color:var(--muted);font-size:1.03rem;line-height:1.6}
.archive-home-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;position:relative;z-index:1}.archive-home-overview>div{display:grid;gap:5px;padding:14px;border:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));border-radius:15px;background:color-mix(in srgb,var(--panel) 88%,transparent);text-align:center}.archive-home-overview span{color:var(--muted);font-size:.77rem}.archive-home-overview strong{font-size:1.5rem}
.archive-home-grid-v8215{align-items:stretch}.archive-home-grid-v8215 .archive-home-card{display:flex;flex-direction:column;gap:15px;position:relative;overflow:hidden;padding:22px}
.archive-home-grid-v8215 .archive-home-card.archive-financial{border-top-color:#16a34a}.archive-home-grid-v8215 .archive-home-card.archive-documental{border-top-color:#2563eb}.archive-home-grid-v8215 .archive-home-card.archive-medical{border-top-color:#dc2626}
.archive-home-card-top{display:flex;align-items:center;justify-content:space-between;gap:14px}.archive-home-grid-v8215 .archive-home-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;font-size:1.8rem}.archive-home-count{padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--primary) 8%,var(--panel));border:1px solid color-mix(in srgb,var(--primary) 15%,var(--border));font-size:.78rem;font-weight:800;color:var(--text)}
.archive-home-card-copy{min-height:96px}.archive-home-card-copy h2{font-size:1.3rem}.archive-home-card-copy p{line-height:1.5}
.archive-home-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.archive-home-metrics>div{display:grid;gap:4px;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--panel) 88%,var(--bg))}.archive-home-metrics span{font-size:.72rem;color:var(--muted);line-height:1.25}.archive-home-metrics strong{font-size:1.15rem}
.archive-home-last{display:grid;gap:4px;padding-top:2px;min-height:50px}.archive-home-last small{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.archive-home-last span{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.archive-home-open{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:14px;border-top:1px solid var(--border);font-weight:850;color:var(--primary)}
.archive-financial .archive-home-open{color:#15803d}.archive-medical .archive-home-open{color:#b91c1c}

.mobile-bottom-nav{display:none}
@media(max-width:900px){
  body{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
  .container{padding-bottom:34px!important}
  .app-footer{margin-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
  .mobile-bottom-nav{position:fixed;left:8px;right:8px;bottom:8px;z-index:1120;display:grid;gap:4px;padding:7px 7px calc(7px + env(safe-area-inset-bottom,0px));border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:0 16px 45px rgba(15,23,42,.22);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
  .mobile-bottom-item{min-width:0;min-height:52px;border:0;border-radius:13px;background:transparent;color:var(--muted)!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:5px 3px;font:inherit;text-decoration:none;cursor:pointer;box-shadow:none!important}
  .mobile-bottom-item>span{font-size:1.22rem;line-height:1}.mobile-bottom-item>small{font-size:.66rem;color:inherit!important;font-weight:760;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .mobile-bottom-item.active{background:color-mix(in srgb,var(--primary) 11%,var(--panel));color:var(--primary)!important}
  .mobile-bottom-new{background:var(--primary)!important;color:#fff!important}.mobile-bottom-new>small{color:#fff!important}
  .main-nav::before{display:none!important}
  .dashboard-quick-actions{width:100%;display:grid;grid-template-columns:1fr}.dashboard-quick-actions .button{width:100%}
  .archive-home-hero{grid-template-columns:1fr;padding:20px;border-radius:20px}.archive-home-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.archive-home-card-copy{min-height:0}
}
@media(max-width:520px){
  .archive-home-overview{grid-template-columns:1fr 1fr}.archive-home-overview>div:last-child{grid-column:1/-1}
  .archive-home-grid-v8215 .archive-home-card{padding:18px}.archive-home-metrics{grid-template-columns:1fr 1fr}
  .mobile-bottom-nav{left:5px;right:5px;bottom:5px;border-radius:16px}.mobile-bottom-item{min-height:50px}.mobile-bottom-item>small{font-size:.62rem}
}

/* I colori di azioni semantiche restano riconoscibili in tutti i temi. */
.button.danger,.danger-button{background:#b91c1c!important;border-color:#b91c1c!important;color:#fff!important}.button.danger:hover,.danger-button:hover{background:#991b1b!important;border-color:#991b1b!important}
.button.success,.success-button{background:#15803d!important;border-color:#15803d!important;color:#fff!important}.button.success:hover,.success-button:hover{background:#166534!important;border-color:#166534!important}
body[data-theme="dark"] .button.danger,body[data-theme="dark"] .danger-button{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important}
body[data-theme="dark"] .button.success,body[data-theme="dark"] .success-button{background:#16a34a!important;border-color:#16a34a!important;color:#fff!important}
body[data-theme="dark"] .archive-home-hero{background:linear-gradient(135deg,#2d3541,#2b313c 60%,#29313c)!important;border-color:#566274!important}
body[data-theme="dark"] .archive-home-overview>div,body[data-theme="dark"] .archive-home-metrics>div{background:#333b48!important;border-color:#566274!important}
body[data-theme="dark"] .archive-home-count{background:#36404e!important;border-color:#566274!important;color:#f2f5f8!important}
body[data-theme="dark"] .archive-home-grid-v8215 .archive-home-icon{background:#36404e!important}
body[data-theme="dark"] .mobile-bottom-nav{background:rgba(43,49,60,.96)!important;border-color:#566274!important}
body[data-theme="dark"] .mobile-bottom-item{color:#c3cad5!important}body[data-theme="dark"] .mobile-bottom-item.active{background:#3b4656!important;color:#8bd2df!important}
@media(prefers-color-scheme:dark){
 body[data-theme="system"] .button.danger,body[data-theme="system"] .danger-button{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important}
 body[data-theme="system"] .button.success,body[data-theme="system"] .success-button{background:#16a34a!important;border-color:#16a34a!important;color:#fff!important}
 body[data-theme="system"] .archive-home-hero{background:linear-gradient(135deg,#2d3541,#2b313c 60%,#29313c)!important;border-color:#566274!important}
 body[data-theme="system"] .archive-home-overview>div,body[data-theme="system"] .archive-home-metrics>div{background:#333b48!important;border-color:#566274!important}
 body[data-theme="system"] .archive-home-count{background:#36404e!important;border-color:#566274!important;color:#f2f5f8!important}
 body[data-theme="system"] .mobile-bottom-nav{background:rgba(43,49,60,.96)!important;border-color:#566274!important}
 body[data-theme="system"] .mobile-bottom-item{color:#c3cad5!important}body[data-theme="system"] .mobile-bottom-item.active{background:#3b4656!important;color:#8bd2df!important}
}

/* 8.2.16 rev2 - metadati paziente nei riferimenti medici */
.patient-data-section{border:1px solid var(--border);border-radius:16px;padding:18px;background:var(--surface-2)}
.patient-data-section .section-heading{margin-bottom:14px}.patient-data-section h2{margin:2px 0 4px;font-size:1.08rem}
.patient-metadata-grid,.patient-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.patient-detail-grid>div{display:grid;gap:5px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.patient-detail-grid small{color:var(--muted)}.patient-meta-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.patient-meta-chips span{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-size:.78rem;color:var(--muted)}
.patient-inline-summary{margin:.3rem 0 0}
@media(max-width:900px){.patient-metadata-grid,.patient-detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.patient-metadata-grid,.patient-detail-grid{grid-template-columns:1fr}.patient-data-section{padding:14px}}

/* Archivio 8.2.18 — stato valori di laboratorio rispetto al range riportato */
.lab-value-chip,.lab-status-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:800;line-height:1.2;border:1px solid currentColor}
.lab-value-chip{padding:.28rem .58rem;font-variant-numeric:tabular-nums;white-space:nowrap}.lab-status-badge{padding:.26rem .54rem;font-size:.78rem;white-space:nowrap}
.lab-status-in{color:#15803d!important;background:#dcfce7!important;border-color:#86efac!important}
.lab-status-out{color:#b91c1c!important;background:#fee2e2!important;border-color:#fca5a5!important}
.lab-status-no-range{color:#1d4ed8!important;background:#dbeafe!important;border-color:#93c5fd!important}
.lab-status-neutral{color:#475569!important;background:#f1f5f9!important;border-color:#cbd5e1!important}
.lab-status-legend{display:flex;align-items:center;gap:.38rem;flex-wrap:wrap;margin:.3rem 0 0}.lab-legend-dot{width:.72rem;height:.72rem;padding:0;border-radius:50%;display:inline-block;margin-left:.45rem}.lab-legend-dot:first-child{margin-left:0}
body[data-theme="dark"] .lab-status-in{color:#86efac!important;background:#123524!important;border-color:#22c55e!important}
body[data-theme="dark"] .lab-status-out{color:#fca5a5!important;background:#431c1c!important;border-color:#ef4444!important}
body[data-theme="dark"] .lab-status-no-range{color:#93c5fd!important;background:#172554!important;border-color:#3b82f6!important}
body[data-theme="dark"] .lab-status-neutral{color:#cbd5e1!important;background:#334155!important;border-color:#64748b!important}
@media(prefers-color-scheme:dark){
 body[data-theme="system"] .lab-status-in{color:#86efac!important;background:#123524!important;border-color:#22c55e!important}
 body[data-theme="system"] .lab-status-out{color:#fca5a5!important;background:#431c1c!important;border-color:#ef4444!important}
 body[data-theme="system"] .lab-status-no-range{color:#93c5fd!important;background:#172554!important;border-color:#3b82f6!important}
 body[data-theme="system"] .lab-status-neutral{color:#cbd5e1!important;background:#334155!important;border-color:#64748b!important}
}

/* Archivio 8.2.19 · Help, Mobile Profile, Activities, Favorites */
.mobile-account-card{display:none}
.activity-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#dc2626;color:#fff!important;font-size:.7rem;font-weight:850;margin-left:2px}
.contextual-help-link{font-size:.95rem}.contextual-help-link>span{font-size:inherit}.nav-guide-link{display:none}
.favorite-star{font-weight:900}.favorite-toggle.active,.favorite-button-active{background:#fff7d6!important;border-color:#e3b341!important;color:#8a5a00!important}.row-icon-actions{display:flex;gap:5px;align-items:center}.favorite-filter{align-self:end;padding-bottom:10px}.favorite-reference-field{padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--primary) 4%,var(--panel))}
.duplicate-check-panel{border:1px solid #f3c56a;background:#fff9e8;border-radius:14px;padding:14px 16px}.duplicate-check-panel>p{margin:.3rem 0 .7rem;color:#6d5b35}.duplicate-check-items{display:grid;gap:7px}.duplicate-check-items a{display:flex;justify-content:space-between;gap:12px;padding:9px 11px;border-radius:10px;background:#fff;border:1px solid #edd69e;color:var(--text)!important}.duplicate-check-items small{color:var(--muted)}
.help-search-panel{display:grid;gap:12px;margin-bottom:18px}.help-search-label{display:grid;gap:7px;font-weight:800}.help-search-label input{font-size:1.05rem}.help-search-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.help-quick-links{display:flex;gap:7px;flex-wrap:wrap}.help-quick-links a{padding:7px 10px;border-radius:999px;background:color-mix(in srgb,var(--primary) 8%,var(--panel));border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));font-size:.82rem;font-weight:750}.help-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px;align-items:start}.help-index{position:sticky;top:88px;padding:15px}.help-index nav{display:grid;margin-top:8px}.help-index a{padding:7px 8px;border-radius:8px;font-size:.86rem}.help-index a:hover{background:color-mix(in srgb,var(--primary) 8%,var(--panel))}.help-content{display:grid;gap:14px}.help-topic{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;scroll-margin-top:90px}.help-topic[hidden]{display:none!important}.help-topic-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 9%,var(--panel));font-size:1.35rem}.help-topic h2{margin:.15rem 0 .55rem}.help-topic p{line-height:1.62}.help-topic li{margin:.45rem 0}.help-topic-target{outline:3px solid color-mix(in srgb,var(--primary) 42%,transparent);outline-offset:3px;transition:outline .4s}.help-three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:.7rem 0}.help-three-columns>div,.help-definitions dd{padding:12px;border-radius:12px;background:color-mix(in srgb,var(--primary) 4%,var(--panel));border:1px solid var(--border)}.help-three-columns p{margin:.4rem 0 0}.help-definitions{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px 12px}.help-definitions dt{font-weight:850;padding-top:10px}.help-definitions dd{margin:0}.help-note{padding:12px 14px;border-left:4px solid var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--panel));border-radius:0 10px 10px 0}.help-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.lab-demo{padding:9px 11px;border-radius:10px;font-weight:800;border:1px solid transparent}.lab-demo.in-range{background:#e9f9ef;color:#16733b;border-color:#a9dfbb}.lab-demo.out-range{background:#fff0f0;color:#b42318;border-color:#f0b2ad}.lab-demo.no-range{background:#edf5ff;color:#175cd3;border-color:#b8d5ff}.lab-demo.unknown{background:#f2f4f7;color:#475467;border-color:#d0d5dd}.help-empty{text-align:center;padding:30px}
.activity-summary{display:flex;align-items:center;gap:15px;margin-bottom:16px}.activity-summary>div{display:flex;align-items:baseline;gap:7px}.activity-summary>div strong{font-size:2rem}.activity-summary>p{margin-left:auto}.activity-list{display:grid;gap:12px}.activity-card{border-left:5px solid #98a2b3}.activity-card.activity-running{border-left-color:#2563eb}.activity-card.activity-completed{border-left-color:#16a34a}.activity-card.activity-error{border-left-color:#dc2626}.activity-card.activity-cancelled{border-left-color:#d97706}.activity-card-head,.activity-card-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.activity-card-head h2{font-size:1rem;margin:.25rem 0 0}.activity-kind{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}.activity-state{padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--primary) 7%,var(--panel));font-size:.75rem;font-weight:800}.activity-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin:14px 0}.activity-progress progress{width:100%;height:11px}.activity-card-foot{align-items:center}.activity-card-foot small{color:var(--muted)}
body[data-theme="dark"] .favorite-toggle.active,body[data-theme="dark"] .favorite-button-active{background:#55491f!important;border-color:#9c812d!important;color:#ffe08a!important}body[data-theme="dark"] .duplicate-check-panel{background:#453a21;border-color:#8c7338}body[data-theme="dark"] .duplicate-check-panel>p{color:#e4d4a9}body[data-theme="dark"] .duplicate-check-items a{background:#303846;border-color:#6d6040}body[data-theme="dark"] .lab-demo.in-range{background:#173f2a;color:#8ee3ad;border-color:#2d7650}body[data-theme="dark"] .lab-demo.out-range{background:#4a2225;color:#ffaaa3;border-color:#8c4447}body[data-theme="dark"] .lab-demo.no-range{background:#1f3555;color:#9bc5ff;border-color:#3d6395}body[data-theme="dark"] .lab-demo.unknown{background:#343b46;color:#d0d5dd;border-color:#596273}
@media(prefers-color-scheme:dark){body[data-theme="system"] .favorite-toggle.active,body[data-theme="system"] .favorite-button-active{background:#55491f!important;border-color:#9c812d!important;color:#ffe08a!important}body[data-theme="system"] .duplicate-check-panel{background:#453a21;border-color:#8c7338}body[data-theme="system"] .duplicate-check-items a{background:#303846;border-color:#6d6040}}
@media(max-width:900px){
  .nav-account-zone{display:none!important}.mobile-account-card{display:grid;gap:10px;margin:4px 4px 10px;padding:13px;border:1px solid rgba(255,255,255,.24);border-radius:15px;background:rgba(255,255,255,.09);color:#fff}.mobile-account-identity{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center}.mobile-account-identity strong,.mobile-account-identity small{display:block;color:#fff}.mobile-account-identity small{opacity:.74;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-account-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}.mobile-account-actions a,.mobile-account-actions button{width:100%;min-height:38px;padding:8px 9px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(255,255,255,.08);color:#fff!important;text-align:left;font:inherit;font-size:.78rem;font-weight:740;cursor:pointer}.mobile-account-actions form{margin:0}.mobile-account-actions a:hover,.mobile-account-actions button:hover{background:rgba(255,255,255,.16)}.nav-guide-link{display:flex}.help-layout{grid-template-columns:1fr}.help-index{position:static}.help-index nav{grid-template-columns:repeat(2,minmax(0,1fr))}.help-page-head .page-actions{width:100%}
}
@media(max-width:620px){.help-topic{grid-template-columns:1fr}.help-topic-icon{width:40px;height:40px}.help-three-columns,.help-definitions{grid-template-columns:1fr}.help-definitions dt{padding-top:4px}.help-status-grid{grid-template-columns:1fr}.help-search-meta{align-items:flex-start;flex-direction:column}.help-index nav{grid-template-columns:1fr 1fr}.activity-summary{display:grid;grid-template-columns:auto 1fr}.activity-summary>p{margin:0;grid-column:1/-1}.activity-card-head{align-items:flex-start}.activity-card-foot{align-items:stretch;flex-direction:column}.duplicate-check-items a{align-items:flex-start;flex-direction:column}}

.context-help-fab{display:none;position:fixed;z-index:1110;width:42px;height:42px;border-radius:50%;background:var(--primary);color:#fff!important;place-items:center;font-weight:900;font-size:1.2rem;box-shadow:0 10px 28px rgba(15,23,42,.25);border:2px solid color-mix(in srgb,var(--panel) 80%,transparent)}
@media(max-width:900px){.context-help-fab{display:grid;right:15px;bottom:calc(78px + env(safe-area-inset-bottom,0px))}}

/* Archivio 8.2.20 · Mobile drawer contrast & theme polish */
@media(max-width:900px){
  /* Il drawer usa una palette propria: evita che colori ereditati dalla topbar
     rendano Profilo/Attività/Notifiche/Guida illeggibili nel tema chiaro. */
  body[data-theme="light"] .main-nav,
  body[data-theme="system"] .main-nav{
    --drawer-bg:#f5f7fb;
    --drawer-surface:#ffffff;
    --drawer-surface-soft:#eef3f9;
    --drawer-text:#162033;
    --drawer-muted:#667085;
    --drawer-border:#d6dfeb;
    --drawer-hover:#eaf1fb;
    --drawer-active-bg:#dbeafe;
    --drawer-active-text:#174ea6;
    --drawer-shadow:rgba(15,23,42,.12);
  }
  body[data-theme="light"] .main-nav,
  body[data-theme="system"] .main-nav{background:var(--drawer-bg)!important;color:var(--drawer-text)!important;border-left:1px solid var(--drawer-border)!important}
  body[data-theme="light"] .mobile-menu-head,
  body[data-theme="system"] .mobile-menu-head{background:rgba(245,247,251,.98)!important;color:var(--drawer-text)!important;border-color:var(--drawer-border)!important;box-shadow:0 1px 0 rgba(15,23,42,.03)}
  body[data-theme="light"] .mobile-menu-head strong,
  body[data-theme="system"] .mobile-menu-head strong{color:var(--drawer-text)!important;-webkit-text-fill-color:var(--drawer-text)!important;font-weight:850;letter-spacing:-.015em}
  body[data-theme="light"] .mobile-menu-head button,
  body[data-theme="system"] .mobile-menu-head button{background:var(--drawer-surface)!important;color:#344054!important;-webkit-text-fill-color:#344054!important;border-color:var(--drawer-border)!important;box-shadow:0 2px 8px rgba(15,23,42,.04)}

  body[data-theme="light"] .mobile-account-card,
  body[data-theme="system"] .mobile-account-card{
    background:linear-gradient(145deg,#ffffff 0%,#f2f6fc 100%)!important;
    color:var(--drawer-text)!important;
    border:1px solid var(--drawer-border)!important;
    box-shadow:0 8px 24px var(--drawer-shadow)!important;
  }
  body[data-theme="light"] .mobile-account-identity strong,
  body[data-theme="system"] .mobile-account-identity strong{color:var(--drawer-text)!important;-webkit-text-fill-color:var(--drawer-text)!important;font-size:.96rem;font-weight:850;line-height:1.2}
  body[data-theme="light"] .mobile-account-identity small,
  body[data-theme="system"] .mobile-account-identity small{color:var(--drawer-muted)!important;-webkit-text-fill-color:var(--drawer-muted)!important;opacity:1!important;font-size:.74rem;line-height:1.25}
  .mobile-account-card .avatar-small{width:36px;height:36px;box-shadow:0 3px 10px rgba(15,23,42,.12)}
  .mobile-account-actions{gap:7px!important}
  .mobile-account-actions a,.mobile-account-actions button{display:flex!important;align-items:center;gap:7px;min-width:0;line-height:1.2!important}
  .mobile-account-action-icon{flex:0 0 20px;width:20px;text-align:center;font-size:.95rem;line-height:1}
  .mobile-account-action-label{min-width:0;overflow-wrap:anywhere}
  .mobile-account-actions .activity-count{margin-left:auto;flex:0 0 auto}
  body[data-theme="light"] .mobile-account-actions a,
  body[data-theme="system"] .mobile-account-actions a,
  body[data-theme="light"] .mobile-account-actions button,
  body[data-theme="system"] .mobile-account-actions button{
    background:var(--drawer-surface)!important;
    color:#27364a!important;
    -webkit-text-fill-color:#27364a!important;
    border:1px solid var(--drawer-border)!important;
    opacity:1!important;
    box-shadow:0 2px 8px rgba(15,23,42,.035)!important;
    font-size:.8rem!important;font-weight:780!important;
  }
  body[data-theme="light"] .mobile-account-actions a:hover,
  body[data-theme="system"] .mobile-account-actions a:hover,
  body[data-theme="light"] .mobile-account-actions a:focus-visible,
  body[data-theme="system"] .mobile-account-actions a:focus-visible,
  body[data-theme="light"] .mobile-account-actions button:hover,
  body[data-theme="system"] .mobile-account-actions button:hover,
  body[data-theme="light"] .mobile-account-actions button:focus-visible,
  body[data-theme="system"] .mobile-account-actions button:focus-visible{background:var(--drawer-hover)!important;border-color:#b6c7db!important;color:#172b4d!important;-webkit-text-fill-color:#172b4d!important}
  body[data-theme="light"] .mobile-account-actions .mobile-account-logout,
  body[data-theme="system"] .mobile-account-actions .mobile-account-logout{background:#fff7f7!important;border-color:#f2c3c3!important;color:#a61b1b!important;-webkit-text-fill-color:#a61b1b!important}
  body[data-theme="light"] .mobile-account-actions .mobile-account-logout:hover,
  body[data-theme="system"] .mobile-account-actions .mobile-account-logout:hover{background:#feecec!important;border-color:#e9a6a6!important;color:#8f1515!important;-webkit-text-fill-color:#8f1515!important}

  body[data-theme="light"] .main-nav .archive-switcher,
  body[data-theme="system"] .main-nav .archive-switcher{background:var(--drawer-surface-soft)!important;border:1px solid var(--drawer-border)!important}
  body[data-theme="light"] .main-nav .archive-switcher>span,
  body[data-theme="system"] .main-nav .archive-switcher>span{color:var(--drawer-muted)!important;-webkit-text-fill-color:var(--drawer-muted)!important;opacity:1!important;font-weight:750;letter-spacing:.01em}
  body[data-theme="light"] .main-nav .archive-switch-link,
  body[data-theme="system"] .main-nav .archive-switch-link{background:var(--drawer-surface)!important;color:#243247!important;-webkit-text-fill-color:#243247!important;border-color:var(--drawer-border)!important;font-weight:730}
  body[data-theme="light"] .main-nav .archive-switch-link.active,
  body[data-theme="system"] .main-nav .archive-switch-link.active{background:var(--drawer-active-bg)!important;color:var(--drawer-active-text)!important;-webkit-text-fill-color:var(--drawer-active-text)!important;border-color:#94b7ee!important;box-shadow:inset 3px 0 0 #3b82f6}
  body[data-theme="light"] .main-nav .nav-link,
  body[data-theme="system"] .main-nav .nav-link,
  body[data-theme="light"] .main-nav .nav-group-button,
  body[data-theme="system"] .main-nav .nav-group-button{font-weight:760!important;line-height:1.25!important}

  /* Il pulsante di aiuto resta disponibile nella barra/menu, ma non galleggia
     sopra il drawer quando quest'ultimo è aperto. */
  body.menu-open .context-help-fab{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(8px) scale(.9)}
}

@media(max-width:900px){
  body[data-theme="dark"] .main-nav{
    --drawer-bg:#202833;
    --drawer-surface:#303b49;
    --drawer-surface-soft:#283442;
    --drawer-text:#f4f7fb;
    --drawer-muted:#bdc8d6;
    --drawer-border:#516174;
    --drawer-hover:#3d4a5b;
    --drawer-active-bg:#334b60;
    --drawer-active-text:#9cdeea;
    background:var(--drawer-bg)!important;color:var(--drawer-text)!important;border-color:var(--drawer-border)!important;
  }
  body[data-theme="dark"] .mobile-menu-head{background:rgba(32,40,51,.98)!important;color:var(--drawer-text)!important;border-color:var(--drawer-border)!important}
  body[data-theme="dark"] .mobile-menu-head strong{color:var(--drawer-text)!important;-webkit-text-fill-color:var(--drawer-text)!important;font-weight:850;letter-spacing:-.015em}
  body[data-theme="dark"] .mobile-menu-head button{background:#303b49!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;border-color:#5c6c80!important}
  body[data-theme="dark"] .mobile-account-card{background:linear-gradient(145deg,#303b49,#283341)!important;color:var(--drawer-text)!important;border:1px solid #536377!important;box-shadow:0 10px 28px rgba(0,0,0,.2)!important}
  body[data-theme="dark"] .mobile-account-identity strong{color:#f7f9fc!important;-webkit-text-fill-color:#f7f9fc!important;font-size:.96rem;font-weight:850;line-height:1.2}
  body[data-theme="dark"] .mobile-account-identity small{color:#bdc8d6!important;-webkit-text-fill-color:#bdc8d6!important;opacity:1!important;font-size:.74rem;line-height:1.25}
  body[data-theme="dark"] .mobile-account-actions a,
  body[data-theme="dark"] .mobile-account-actions button{background:#364252!important;color:#eef3f8!important;-webkit-text-fill-color:#eef3f8!important;border:1px solid #58697d!important;opacity:1!important;box-shadow:none!important;font-size:.8rem!important;font-weight:780!important}
  body[data-theme="dark"] .mobile-account-actions a:hover,
  body[data-theme="dark"] .mobile-account-actions a:focus-visible,
  body[data-theme="dark"] .mobile-account-actions button:hover,
  body[data-theme="dark"] .mobile-account-actions button:focus-visible{background:#435165!important;border-color:#71849b!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
  body[data-theme="dark"] .mobile-account-actions .mobile-account-logout{background:#432a2d!important;border-color:#7d4449!important;color:#ffb4b4!important;-webkit-text-fill-color:#ffb4b4!important}
  body[data-theme="dark"] .main-nav .archive-switcher{background:var(--drawer-surface-soft)!important;border-color:var(--drawer-border)!important}
  body[data-theme="dark"] .main-nav .archive-switcher>span{color:var(--drawer-muted)!important;-webkit-text-fill-color:var(--drawer-muted)!important;opacity:1!important;font-weight:750}
  body[data-theme="dark"] .main-nav .archive-switch-link{background:#303b49!important;color:#eef3f8!important;-webkit-text-fill-color:#eef3f8!important;border-color:#536377!important;font-weight:730}
  body[data-theme="dark"] .main-nav .archive-switch-link.active{background:#334b60!important;color:#9cdeea!important;-webkit-text-fill-color:#9cdeea!important;border-color:#5f91aa!important;box-shadow:inset 3px 0 0 #88c0d0}
}

@media(max-width:900px) and (prefers-color-scheme:dark){
  body[data-theme="system"] .main-nav{
    --drawer-bg:#202833;--drawer-surface:#303b49;--drawer-surface-soft:#283442;--drawer-text:#f4f7fb;--drawer-muted:#bdc8d6;--drawer-border:#516174;--drawer-hover:#3d4a5b;--drawer-active-bg:#334b60;--drawer-active-text:#9cdeea;
    background:var(--drawer-bg)!important;color:var(--drawer-text)!important;border-color:var(--drawer-border)!important
  }
  body[data-theme="system"] .mobile-menu-head{background:rgba(32,40,51,.98)!important;color:var(--drawer-text)!important;border-color:var(--drawer-border)!important}
  body[data-theme="system"] .mobile-menu-head strong{color:var(--drawer-text)!important;-webkit-text-fill-color:var(--drawer-text)!important}
  body[data-theme="system"] .mobile-menu-head button{background:#303b49!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;border-color:#5c6c80!important}
  body[data-theme="system"] .mobile-account-card{background:linear-gradient(145deg,#303b49,#283341)!important;color:var(--drawer-text)!important;border-color:#536377!important;box-shadow:0 10px 28px rgba(0,0,0,.2)!important}
  body[data-theme="system"] .mobile-account-identity strong{color:#f7f9fc!important;-webkit-text-fill-color:#f7f9fc!important}
  body[data-theme="system"] .mobile-account-identity small{color:#bdc8d6!important;-webkit-text-fill-color:#bdc8d6!important;opacity:1!important}
  body[data-theme="system"] .mobile-account-actions a,
  body[data-theme="system"] .mobile-account-actions button{background:#364252!important;color:#eef3f8!important;-webkit-text-fill-color:#eef3f8!important;border-color:#58697d!important;opacity:1!important;box-shadow:none!important}
  body[data-theme="system"] .mobile-account-actions a:hover,
  body[data-theme="system"] .mobile-account-actions a:focus-visible,
  body[data-theme="system"] .mobile-account-actions button:hover,
  body[data-theme="system"] .mobile-account-actions button:focus-visible{background:#435165!important;border-color:#71849b!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
  body[data-theme="system"] .mobile-account-actions .mobile-account-logout{background:#432a2d!important;border-color:#7d4449!important;color:#ffb4b4!important;-webkit-text-fill-color:#ffb4b4!important}
  body[data-theme="system"] .main-nav .archive-switcher{background:#283442!important;border-color:#516174!important}
  body[data-theme="system"] .main-nav .archive-switcher>span{color:#bdc8d6!important;-webkit-text-fill-color:#bdc8d6!important;opacity:1!important}
  body[data-theme="system"] .main-nav .archive-switch-link{background:#303b49!important;color:#eef3f8!important;-webkit-text-fill-color:#eef3f8!important;border-color:#536377!important}
  body[data-theme="system"] .main-nav .archive-switch-link.active{background:#334b60!important;color:#9cdeea!important;-webkit-text-fill-color:#9cdeea!important;border-color:#5f91aa!important;box-shadow:inset 3px 0 0 #88c0d0}
}

@media(max-width:420px){
  .mobile-account-actions{grid-template-columns:1fr!important}
  .mobile-account-actions a,.mobile-account-actions button{min-height:40px!important;font-size:.82rem!important}
}

/* Archivio 8.2.21 · Mobile drawer navigation cleanup
   La bottom bar mobile è la navigazione primaria per Home, Dashboard, Tutti e Nuovo.
   Nel drawer restano gli strumenti che non sono già raggiungibili dalla bottom bar. */
.mobile-tools-label{display:none}
@media(max-width:900px){
  /* Evita doppioni con la bottom navigation. La Guida è già presente nella card account. */
  .main-nav .nav-secondary-row>.nav-home,
  .main-nav .nav-secondary-row>.nav-dashboard,
  .main-nav .nav-secondary-row>.nav-new,
  .main-nav .nav-secondary-row>.nav-guide-link,
  .main-nav .nav-section-tools .nav-records-link{display:none!important}

  .main-nav .nav-secondary-row{flex-direction:column!important;gap:9px!important}
  .main-nav .mobile-tools-label{display:block;margin:4px 7px 0;color:var(--drawer-muted,#667085)!important;-webkit-text-fill-color:var(--drawer-muted,#667085)!important;font-size:.72rem;font-weight:800;letter-spacing:.025em;text-transform:uppercase}

  /* Condivisione e Gestione diventano immediatamente visibili nel drawer. */
  .main-nav .nav-sharing-group{order:1}
  .main-nav .nav-management-group{order:2}
  .main-nav .nav-section-tools{order:3}
  .main-nav .mobile-tools-label{order:0}

  .main-nav .nav-sharing-group>.nav-group-button,
  .main-nav .nav-management-group>.nav-group-button,
  .main-nav .nav-section-tools>.nav-group-button{
    min-height:48px!important;
    border-radius:13px!important;
    font-size:.88rem!important;
    font-weight:800!important;
  }

  body[data-theme="light"] .main-nav .nav-sharing-group>.nav-group-button,
  body[data-theme="light"] .main-nav .nav-management-group>.nav-group-button,
  body[data-theme="light"] .main-nav .nav-section-tools>.nav-group-button,
  body[data-theme="system"] .main-nav .nav-sharing-group>.nav-group-button,
  body[data-theme="system"] .main-nav .nav-management-group>.nav-group-button,
  body[data-theme="system"] .main-nav .nav-section-tools>.nav-group-button{
    background:var(--drawer-surface,#fff)!important;
    color:#243247!important;
    -webkit-text-fill-color:#243247!important;
    border:1px solid var(--drawer-border,#d6dfeb)!important;
    box-shadow:0 2px 8px rgba(15,23,42,.035)!important;
  }

  body[data-theme="dark"] .main-nav .nav-sharing-group>.nav-group-button,
  body[data-theme="dark"] .main-nav .nav-management-group>.nav-group-button,
  body[data-theme="dark"] .main-nav .nav-section-tools>.nav-group-button{
    background:#303b49!important;
    color:#eef3f8!important;
    -webkit-text-fill-color:#eef3f8!important;
    border-color:#536377!important;
  }
}

@media(max-width:900px) and (prefers-color-scheme:dark){
  body[data-theme="system"] .main-nav .nav-sharing-group>.nav-group-button,
  body[data-theme="system"] .main-nav .nav-management-group>.nav-group-button,
  body[data-theme="system"] .main-nav .nav-section-tools>.nav-group-button{
    background:#303b49!important;
    color:#eef3f8!important;
    -webkit-text-fill-color:#eef3f8!important;
    border-color:#536377!important;
  }
}

/* Archivio 8.2.22 · Favorite CTA visibility + section dashboard category links */
.record-hero .record-favorite-action:not(.favorite-button-active){
  background:rgba(255,255,255,.97)!important;
  color:#744c00!important;
  border:2px solid #e3b341!important;
  box-shadow:0 8px 20px rgba(0,0,0,.18)!important;
  font-weight:850;
}
.record-hero .record-favorite-action:not(.favorite-button-active):hover{
  background:#fff7d6!important;
  color:#5f3e00!important;
  border-color:#d99a00!important;
  transform:translateY(-1px);
}
.record-hero .record-favorite-action.favorite-button-active{
  box-shadow:0 8px 20px rgba(0,0,0,.16)!important;
}
.dashboard-category-link{
  border-radius:10px;
  padding-left:10px;
  padding-right:10px;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.dashboard-category-link:hover{
  background:color-mix(in srgb,var(--primary) 7%,var(--panel));
  transform:translateX(2px);
}
.dashboard-category-link strong{display:flex;align-items:center;gap:6px;color:var(--primary)}
body[data-theme="dark"] .record-hero .record-favorite-action:not(.favorite-button-active){
  background:#3b4252!important;
  color:#ffe08a!important;
  border-color:#9c812d!important;
  box-shadow:0 8px 20px rgba(0,0,0,.28)!important;
}
body[data-theme="dark"] .record-hero .record-favorite-action:not(.favorite-button-active):hover{
  background:#4a4327!important;
  color:#fff0ad!important;
  border-color:#c7a43c!important;
}
@media(prefers-color-scheme:dark){
  body[data-theme="system"] .record-hero .record-favorite-action:not(.favorite-button-active){
    background:#3b4252!important;color:#ffe08a!important;border-color:#9c812d!important;box-shadow:0 8px 20px rgba(0,0,0,.28)!important
  }
  body[data-theme="system"] .record-hero .record-favorite-action:not(.favorite-button-active):hover{
    background:#4a4327!important;color:#fff0ad!important;border-color:#c7a43c!important
  }
}

/* Archivio 8.2.25 · Mobile direct access to references/dictionaries/trash */
.mobile-tools-direct{display:none!important}
@media(max-width:900px){
  .main-nav .mobile-tools-direct{display:flex!important;order:3;width:100%!important;min-height:48px!important;align-items:center!important;gap:9px!important}
  .main-nav .nav-section-tools{display:none!important}
  body[data-theme="light"] .main-nav .mobile-tools-direct,
  body[data-theme="system"] .main-nav .mobile-tools-direct{background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important;border:1px solid #d4deea!important}
  body[data-theme="dark"] .main-nav .mobile-tools-direct{background:#2f3743!important;color:#f4f7fa!important;-webkit-text-fill-color:#f4f7fa!important;border:1px solid #4f5e70!important}
}
@media(max-width:900px) and (prefers-color-scheme:dark){
  body[data-theme="system"] .main-nav .mobile-tools-direct{background:#2f3743!important;color:#f4f7fa!important;-webkit-text-fill-color:#f4f7fa!important;border-color:#4f5e70!important}
}

/* Archivio 8.2.25 · Mobile tools panel hardening
   Il pannello mobile vive fuori da nav-secondary-row per evitare conflitti tra
   i vecchi layout responsive. Desktop invariato. */
.mobile-tools-panel{display:none}
@media(max-width:900px){
  .main-nav .nav-secondary-row{display:none!important}
  .main-nav .mobile-tools-panel{
    display:grid!important;
    grid-template-columns:1fr;
    gap:8px;
    margin:2px 4px 10px;
    padding:11px;
    border-radius:15px;
    background:var(--drawer-surface-soft,#eef4fb)!important;
    border:1px solid var(--drawer-border,#d6dfeb)!important;
    order:20;
  }
  .main-nav .mobile-tools-panel-title{
    display:block;
    padding:1px 4px 3px;
    color:var(--drawer-muted,#667085)!important;
    -webkit-text-fill-color:var(--drawer-muted,#667085)!important;
    font-size:.72rem;
    font-weight:850;
    letter-spacing:.04em;
    text-transform:uppercase;
  }
  .main-nav .mobile-tool-card{
    display:grid!important;
    grid-template-columns:25px minmax(0,1fr) auto;
    align-items:center;
    gap:9px;
    min-height:48px;
    padding:11px 13px;
    border-radius:12px;
    background:#fff!important;
    color:#172033!important;
    -webkit-text-fill-color:#172033!important;
    border:1px solid #d4deea!important;
    box-shadow:0 2px 8px rgba(15,23,42,.035)!important;
    font-size:.9rem;
    font-weight:800;
    text-decoration:none!important;
  }
  .main-nav .mobile-tool-card>b{font-size:1.25rem;color:var(--drawer-muted,#667085)!important;-webkit-text-fill-color:var(--drawer-muted,#667085)!important;font-weight:600}
  .main-nav .mobile-tool-card:active{transform:scale(.992)}
}
@media(max-width:900px){
  body[data-theme="dark"] .main-nav .mobile-tools-panel{
    background:#283442!important;border-color:#516174!important
  }
  body[data-theme="dark"] .main-nav .mobile-tool-card{
    background:#303b49!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;border-color:#536377!important
  }
  body[data-theme="dark"] .main-nav .mobile-tool-card>b{color:#bdc8d6!important;-webkit-text-fill-color:#bdc8d6!important}
}
@media(max-width:900px) and (prefers-color-scheme:dark){
  body[data-theme="system"] .main-nav .mobile-tools-panel{background:#283442!important;border-color:#516174!important}
  body[data-theme="system"] .main-nav .mobile-tool-card{background:#303b49!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;border-color:#536377!important}
  body[data-theme="system"] .main-nav .mobile-tool-card>b{color:#bdc8d6!important;-webkit-text-fill-color:#bdc8d6!important}
}

/* Archivio 8.2.25 · Mobile drawer tools: mount inside the proven-visible
   archive switcher. This avoids all historic nav row / flex-order conflicts. */
.mobile-tools-inline{display:none!important}
@media(max-width:900px){
  .main-nav .archive-switcher .mobile-tools-inline{
    display:grid!important;
    grid-template-columns:1fr;
    gap:8px;
    width:100%;
    margin-top:8px;
    padding-top:10px;
    border-top:1px solid var(--drawer-border,#d6dfeb);
  }
  .main-nav .archive-switcher .mobile-tools-inline-title{
    display:block;
    padding:0 4px 2px;
    color:var(--drawer-muted,#667085)!important;
    -webkit-text-fill-color:var(--drawer-muted,#667085)!important;
    font-size:.72rem;
    font-weight:850;
    letter-spacing:.04em;
    text-transform:uppercase;
  }
  .main-nav .archive-switcher .mobile-tool-inline{
    display:grid!important;
    grid-template-columns:25px minmax(0,1fr) auto;
    align-items:center;
    gap:9px;
    width:100%;
    min-height:48px;
    padding:11px 13px;
    border-radius:12px;
    background:#fff!important;
    color:#172033!important;
    -webkit-text-fill-color:#172033!important;
    border:1px solid #d4deea!important;
    box-shadow:0 2px 8px rgba(15,23,42,.035)!important;
    font-size:.9rem;
    font-weight:800;
    text-decoration:none!important;
  }
  .main-nav .archive-switcher .mobile-tool-inline>b{
    font-size:1.25rem;
    color:var(--drawer-muted,#667085)!important;
    -webkit-text-fill-color:var(--drawer-muted,#667085)!important;
    font-weight:600;
  }
  .main-nav .archive-switcher .mobile-tool-inline:active{transform:scale(.992)}
  body[data-theme="dark"] .main-nav .archive-switcher .mobile-tools-inline{border-top-color:#516174!important}
  body[data-theme="dark"] .main-nav .archive-switcher .mobile-tool-inline{
    background:#303b49!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;border-color:#536377!important
  }
  body[data-theme="dark"] .main-nav .archive-switcher .mobile-tool-inline>b{color:#bdc8d6!important;-webkit-text-fill-color:#bdc8d6!important}
}
@media(max-width:900px) and (prefers-color-scheme:dark){
  body[data-theme="system"] .main-nav .archive-switcher .mobile-tools-inline{border-top-color:#516174!important}
  body[data-theme="system"] .main-nav .archive-switcher .mobile-tool-inline{
    background:#303b49!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;border-color:#536377!important
  }
  body[data-theme="system"] .main-nav .archive-switcher .mobile-tool-inline>b{color:#bdc8d6!important;-webkit-text-fill-color:#bdc8d6!important}
}

/* Archivio 8.2.26 · Smartphone drawer single-panel hardening
   Il selettore globale .topbar nav imposta flex-wrap:wrap: nel drawer verticale
   questo poteva creare una seconda colonna quando l'altezza non bastava. */
@media(max-width:900px){
  .topbar #main-nav.main-nav{
    flex-wrap:nowrap!important;
    align-content:stretch!important;
    overflow-x:hidden!important;
  }
  .topbar #main-nav.main-nav>.mobile-menu-head,
  .topbar #main-nav.main-nav>.mobile-account-card{
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    flex:0 0 auto!important;
  }
}
/* Phone portrait e landscape compatto: un solo pannello. */
@media(max-width:600px), (max-width:900px) and (max-height:600px){
  .topbar #main-nav.main-nav>.nav-primary-row,
  .topbar #main-nav.main-nav>.nav-secondary-row{
    display:none!important;
  }
  .topbar #main-nav.main-nav>.mobile-account-card{margin-bottom:6px!important}
}
/* I due strumenti compatti sono esclusivi del layout smartphone. */
.topbar #main-nav.main-nav .mobile-account-actions .mobile-smartphone-tool{display:none!important}
@media(max-width:600px), (max-width:900px) and (max-height:600px){
  .topbar #main-nav.main-nav .mobile-account-actions .mobile-smartphone-tool{display:flex!important}
}

/* Archivio 8.2.31 · Context-aware navigation + compact record UX */
/* Il brand cresce appena solo quando si è realmente dentro una sezione. */
.brand-section-active .brand-icon{width:42px;height:42px;border-radius:13px;font-size:1.08rem}
.brand-section-active .brand-copy strong{font-size:1.08rem;line-height:1.08}
.brand-section-active .brand-copy small{font-size:.78rem;line-height:1.12;margin-top:.22rem;font-weight:720;opacity:.82}

/* Sezioni richiudibili dei form: campi principali subito visibili, opzioni secondarie a richiesta. */
.form-section-collapse{border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--panel) 92%,var(--primary) 8%);overflow:hidden}
.form-section-collapse>summary,.collapsible-panel-summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;padding:14px 16px;user-select:none}
.form-section-collapse>summary::-webkit-details-marker,.collapsible-panel-summary::-webkit-details-marker{display:none}
.form-section-collapse>summary>span,.collapsible-panel-summary>span{display:grid;gap:2px;min-width:0}
.form-section-collapse>summary strong,.collapsible-panel-summary>span>strong{font-size:.96rem;color:var(--text)}
.form-section-collapse>summary small,.collapsible-panel-summary small{font-weight:520;color:var(--muted);margin:0}
.collapse-chevron{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:9px;background:color-mix(in srgb,var(--primary) 8%,var(--panel));color:var(--primary);font-size:1.1rem;transition:transform .18s ease}
details[open]>.form-section-collapse-summary .collapse-chevron,.form-section-collapse[open]>summary .collapse-chevron,.collapsible-panel[open]>.collapsible-panel-summary .collapse-chevron{transform:rotate(180deg)}
.form-collapse-content{padding:3px 16px 16px;border-top:1px solid var(--border)}
.form-collapse-content.form-grid{padding-top:16px}
.form-collapse-content.single-column{display:block;padding-top:16px}
.record-form-compact{align-items:start}
.record-form-actions{padding-top:2px}

/* Nella scheda elemento le funzioni meno frequenti non allungano più la pagina. */
.collapsible-panel{padding:0!important;overflow:hidden}
.collapsible-panel-summary{padding:18px 21px}
.collapsible-panel-summary .eyebrow{margin:0 0 1px}
.collapsible-panel-content{padding:0 21px 21px;border-top:1px solid var(--border)}
.collapsible-panel-content>.muted:first-child{margin-top:16px}

/* Gruppi del drawer: il markup resta compatibile con tablet; le intestazioni sono
   visibili soltanto sul layout smartphone ristretto. */
.mobile-menu-action-group{display:contents}
.mobile-menu-section-title{display:none}

body[data-theme="dark"] .form-section-collapse{background:#303846;border-color:#4c5868}
body[data-theme="dark"] .collapse-chevron{background:#3b4554;color:#9cdeea}
body[data-theme="dark"] .form-collapse-content,body[data-theme="dark"] .collapsible-panel-content{border-top-color:#4c5868}
@media(prefers-color-scheme:dark){
  body[data-theme="system"] .form-section-collapse{background:#303846;border-color:#4c5868}
  body[data-theme="system"] .collapse-chevron{background:#3b4554;color:#9cdeea}
  body[data-theme="system"] .form-collapse-content,body[data-theme="system"] .collapsible-panel-content{border-top-color:#4c5868}
}

@media(max-width:600px), (max-width:900px) and (max-height:600px){
  .brand-section-active .brand-icon{width:40px;height:40px}
  .brand-section-active .brand-copy strong{font-size:1.05rem}
  .brand-section-active .brand-copy small{font-size:.76rem}

  .mobile-account-actions{display:block!important}
  .mobile-account-actions .mobile-menu-action-group{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;padding:10px 0 2px!important;border-top:1px solid var(--drawer-border,#d6dfeb)!important}
  .mobile-account-actions .mobile-menu-action-group:first-child{padding-top:0!important;border-top:0!important}
  .mobile-account-actions .mobile-menu-section-title{display:block!important;padding:0 4px 2px;color:var(--drawer-muted,#667085)!important;-webkit-text-fill-color:var(--drawer-muted,#667085)!important;font-size:.68rem!important;font-weight:850!important;letter-spacing:.055em!important;text-transform:uppercase!important}
  .mobile-account-actions .mobile-menu-session-group{padding-top:9px!important;margin-top:2px}
  .mobile-account-actions a,.mobile-account-actions button{min-height:42px!important;font-size:.82rem!important}

  .form-section-collapse>summary{padding:13px 14px;min-height:56px}
  .form-collapse-content{padding-left:14px;padding-right:14px;padding-bottom:14px}
  .collapsible-panel-summary{padding:15px 16px;min-height:58px}
  .collapsible-panel-content{padding:0 16px 16px}
  .collapse-chevron{width:28px;height:28px;flex-basis:28px}
  .record-form-compact{gap:15px}
}
@media(max-width:900px){
  .mobile-bottom-nav.mobile-bottom-nav-neutral{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mobile-bottom-nav.mobile-bottom-nav-neutral .mobile-bottom-item{max-width:none!important}
}

/* Archivio 8.2.32 · Menu utente centralizzato + strumenti smartphone contestuali */
@media(min-width:901px){
  .profile-group .user-dropdown{min-width:255px;max-height:min(72vh,620px);overflow-y:auto}
  .profile-group .user-dropdown .dropdown-caption-secondary{margin-top:6px;padding-top:10px;border-top:1px solid var(--border);border-bottom:0;margin-bottom:1px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.045em}
  .profile-group .user-dropdown a{display:flex;align-items:center;gap:7px}
  .profile-group .user-dropdown .activity-count{margin-left:auto}
  .nav-secondary-row{gap:7px}
}
body[data-theme="dark"] .profile-group .user-dropdown .dropdown-caption-secondary{border-top-color:#4b5869}
@media(prefers-color-scheme:dark){body[data-theme="system"] .profile-group .user-dropdown .dropdown-caption-secondary{border-top-color:#4b5869}}

@media(max-width:600px), (max-width:900px) and (max-height:600px){
  .mobile-account-actions .mobile-menu-account-group{padding-bottom:4px!important}
  .mobile-account-actions .mobile-menu-archive-group{margin-top:3px!important}
  .mobile-account-actions .mobile-menu-archive-group .mobile-menu-section-title{white-space:normal!important;line-height:1.25!important}
}

/* --------------------------------------------------------------------------
   8.2.33 - Stabilità e diagnostica
   -------------------------------------------------------------------------- */
.worker-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.worker-status-card{display:grid;gap:7px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.worker-status-card.ok{border-color:color-mix(in srgb,#16a34a 38%,var(--border))}.worker-status-card.bad{border-color:color-mix(in srgb,#dc2626 42%,var(--border))}.worker-status-head{display:flex;align-items:center;gap:9px}.worker-status-card small,.worker-status-card span{overflow-wrap:anywhere}.worker-status-card.ok .health-dot{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.12)}
.diagnostic-kv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.diagnostic-kv-grid>div{display:grid;gap:5px;padding:13px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.diagnostic-kv-grid small{color:var(--muted)}.diagnostic-kv-grid strong{overflow-wrap:anywhere}.diagnostic-message{display:grid;gap:5px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.diagnostic-message code{white-space:normal;overflow-wrap:anywhere}.diagnostic-message.ok{border-color:rgba(22,163,74,.35);background:color-mix(in srgb,#dcfce7 42%,var(--panel))}.diagnostic-message.warn{border-color:rgba(217,119,6,.4);background:color-mix(in srgb,#fef3c7 46%,var(--panel))}.diagnostic-message.bad{border-color:rgba(220,38,38,.4);background:color-mix(in srgb,#fee2e2 42%,var(--panel))}
.backup-compact-list{display:grid;gap:8px}.backup-compact-list>div{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.backup-compact-list>div:last-child{border-bottom:0}.backup-compact-list span{color:var(--muted);text-align:right}.log-tabs-scroll{overflow-x:auto;scrollbar-width:thin}.db-idle-tx{background:color-mix(in srgb,#fef3c7 40%,transparent)}
body[data-theme="dark"] .worker-status-card,body[data-theme="dark"] .diagnostic-kv-grid>div,body[data-theme="dark"] .diagnostic-message{background:#202b3b;color:#e5edf7;border-color:#3b4a60}body[data-theme="dark"] .diagnostic-message.ok{background:#173328;border-color:#2f6b4e}body[data-theme="dark"] .diagnostic-message.warn{background:#3a3020;border-color:#725b2d}body[data-theme="dark"] .diagnostic-message.bad{background:#3b2328;border-color:#7a3b46}body[data-theme="dark"] .db-idle-tx{background:#3a3020}
@media (prefers-color-scheme:dark){body[data-theme="system"] .worker-status-card,body[data-theme="system"] .diagnostic-kv-grid>div,body[data-theme="system"] .diagnostic-message{background:#202b3b;color:#e5edf7;border-color:#3b4a60}body[data-theme="system"] .diagnostic-message.ok{background:#173328;border-color:#2f6b4e}body[data-theme="system"] .diagnostic-message.warn{background:#3a3020;border-color:#725b2d}body[data-theme="system"] .diagnostic-message.bad{background:#3b2328;border-color:#7a3b46}body[data-theme="system"] .db-idle-tx{background:#3a3020}}
@media(max-width:900px){.worker-status-grid,.diagnostic-kv-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.worker-status-grid,.diagnostic-kv-grid{grid-template-columns:1fr}.backup-compact-list>div{align-items:flex-start;flex-direction:column;gap:4px}.backup-compact-list span{text-align:left}.log-tabs-scroll{display:flex;flex-wrap:nowrap}.log-tabs-scroll .log-tab{flex:0 0 auto}}

/* --------------------------------------------------------------------------
   Archivio 8.2.34 - UX compatta + Centro Attività
   -------------------------------------------------------------------------- */
.record-primary-actions{align-items:center}.record-action-menu{position:relative}.record-action-menu>summary{list-style:none;min-width:44px;padding-inline:14px;font-size:1.35rem;line-height:1}.record-action-menu>summary::-webkit-details-marker{display:none}.record-action-menu-popover{position:absolute;right:0;top:calc(100% + 7px);z-index:30;display:grid;gap:4px;min-width:225px;padding:8px;border:1px solid var(--border);border-radius:13px;background:var(--panel);box-shadow:0 18px 45px rgba(15,23,42,.18)}.record-action-menu-popover form{margin:0}.record-action-menu-popover button{width:100%;border:0;background:transparent;color:var(--text);font:inherit;font-weight:720;text-align:left;padding:10px 11px;border-radius:9px;cursor:pointer}.record-action-menu-popover button:hover{background:var(--surface-2)}.record-action-menu-popover .danger-menu-action{color:#b91c1c}.record-secondary-details{grid-column:1/-1}.secondary-detail-grid{padding-top:16px}.record-essential-detail{align-self:start}

.activity-summary-v834{display:grid;grid-template-columns:auto auto 1fr auto;gap:18px;align-items:center}.activity-summary-v834>div{display:grid;gap:1px}.activity-summary-v834>div strong{font-size:1.75rem;line-height:1}.activity-summary-v834>div span{font-size:.76rem;color:var(--muted);font-weight:700}.activity-summary-v834>p{margin:0;text-align:right}.activity-runtime-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 16px}.activity-runtime-card{display:flex!important;align-items:center;gap:10px;padding:13px!important;min-width:0}.activity-runtime-card>div{display:grid;gap:2px;min-width:0}.activity-runtime-card strong{font-size:.88rem}.activity-runtime-card small{font-size:.72rem;color:var(--muted);overflow-wrap:anywhere}.activity-runtime-card.ok .health-dot{background:#16a34a}.activity-runtime-card.warn .health-dot{background:#d97706}.activity-runtime-card.bad .health-dot{background:#dc2626}.activity-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;padding:12px 14px}.activity-filter-group{display:flex;gap:7px;flex-wrap:wrap}.activity-filter{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:999px;padding:8px 12px;font:inherit;font-size:.8rem;font-weight:760;cursor:pointer}.activity-filter.active{background:color-mix(in srgb,var(--primary) 11%,var(--panel));border-color:color-mix(in srgb,var(--primary) 35%,var(--border));color:var(--primary)}.activity-kind-select{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:760}.activity-kind-select select{min-width:130px}.activity-title-line{display:flex;align-items:flex-start;gap:11px}.activity-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:var(--surface-2);font-size:1.12rem}.activity-counters{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.activity-counters span{padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-size:.72rem;color:var(--muted)}.activity-counters b{color:var(--text)}

body[data-theme="dark"] .record-action-menu-popover{background:#2b313c;border-color:#566274;box-shadow:0 18px 45px rgba(0,0,0,.35)}body[data-theme="dark"] .record-action-menu-popover button:hover{background:#384250}body[data-theme="dark"] .activity-filter{background:#2b313c;border-color:#566274;color:#eef3f8}body[data-theme="dark"] .activity-filter.active{background:#3b4656;color:#9cdeea;border-color:#64788f}body[data-theme="dark"] .activity-icon,body[data-theme="dark"] .activity-counters span{background:#303846;border-color:#4c5868}
@media(prefers-color-scheme:dark){body[data-theme="system"] .record-action-menu-popover{background:#2b313c;border-color:#566274;box-shadow:0 18px 45px rgba(0,0,0,.35)}body[data-theme="system"] .record-action-menu-popover button:hover{background:#384250}body[data-theme="system"] .activity-filter{background:#2b313c;border-color:#566274;color:#eef3f8}body[data-theme="system"] .activity-filter.active{background:#3b4656;color:#9cdeea;border-color:#64788f}body[data-theme="system"] .activity-icon,body[data-theme="system"] .activity-counters span{background:#303846;border-color:#4c5868}}

@media(max-width:900px){.activity-runtime-grid,.activity-summary-v834{grid-template-columns:1fr 1fr}.activity-summary-v834>p{grid-column:1/-1;text-align:left}.activity-summary-v834>button{grid-column:1/-1;width:100%}.activity-toolbar{align-items:stretch;flex-direction:column}.activity-kind-select{justify-content:space-between}.record-primary-actions{flex-wrap:nowrap}.record-action-menu-popover{right:0;min-width:min(260px,80vw)}}
@media(max-width:600px){.record-hero{align-items:flex-start}.record-hero .record-primary-actions{width:auto;align-self:flex-start}.record-primary-actions>.button,.record-action-menu>summary{min-height:44px}.record-action-menu-popover{position:fixed;left:12px;right:12px;top:auto;bottom:calc(86px + env(safe-area-inset-bottom,0px));min-width:0;border-radius:16px;padding:10px}.record-action-menu-popover button{min-height:44px}.activity-runtime-grid{grid-template-columns:1fr}.activity-filter-group{display:grid;grid-template-columns:1fr 1fr}.activity-filter{width:100%}.activity-card{padding:14px}.activity-title-line{gap:9px}.activity-icon{width:34px;height:34px;flex-basis:34px}.activity-card-head{gap:8px}.activity-state{white-space:nowrap}.activity-card-foot .button{width:100%;text-align:center}.record-secondary-details[open] .secondary-detail-grid{grid-template-columns:1fr}.record-form-actions{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:20;padding:10px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:0 10px 30px rgba(15,23,42,.13);backdrop-filter:blur(12px)}.record-form-actions .button{min-height:44px}}

/* Archivio 8.2.34-r1 — hotfix contrasto menu ⋮ nella scheda elemento (tema chiaro/mobile) */
body[data-theme="light"] .record-hero .record-action-menu>summary{
  background:#ffffff!important;
  color:#173b7a!important;
  -webkit-text-fill-color:#173b7a!important;
  border:1px solid rgba(255,255,255,.96)!important;
  box-shadow:0 5px 16px rgba(15,23,42,.16)!important;
  opacity:1!important;
}
body[data-theme="light"] .record-hero .record-action-menu>summary:hover,
body[data-theme="light"] .record-hero .record-action-menu>summary:focus-visible,
body[data-theme="light"] .record-hero .record-action-menu[open]>summary{
  background:#eef4ff!important;
  color:#0f3474!important;
  -webkit-text-fill-color:#0f3474!important;
  border-color:#d5e3ff!important;
}
body[data-theme="light"] .record-hero .record-action-menu>summary:focus-visible{
  outline:3px solid rgba(255,255,255,.42)!important;
  outline-offset:2px;
}
@media (prefers-color-scheme:light){
  body[data-theme="system"] .record-hero .record-action-menu>summary{
    background:#ffffff!important;
    color:#173b7a!important;
    -webkit-text-fill-color:#173b7a!important;
    border:1px solid rgba(255,255,255,.96)!important;
    box-shadow:0 5px 16px rgba(15,23,42,.16)!important;
    opacity:1!important;
  }
  body[data-theme="system"] .record-hero .record-action-menu>summary:hover,
  body[data-theme="system"] .record-hero .record-action-menu>summary:focus-visible,
  body[data-theme="system"] .record-hero .record-action-menu[open]>summary{
    background:#eef4ff!important;
    color:#0f3474!important;
    -webkit-text-fill-color:#0f3474!important;
    border-color:#d5e3ff!important;
  }
  body[data-theme="system"] .record-hero .record-action-menu>summary:focus-visible{
    outline:3px solid rgba(255,255,255,.42)!important;
    outline-offset:2px;
  }
}

/* ========================================================================== */
/* Archivio 8.2.35 - Motore Archivio                                         */
/* ========================================================================== */
.search-engine-panel{display:grid;gap:16px}.archive-search-form{display:grid;gap:14px}.archive-search-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.archive-search-main input{min-width:0;width:100%;font-size:1rem;padding:13px 14px}.archive-search-icon{font-size:1.35rem;color:var(--muted)}
.archive-search-chips{display:flex;flex-wrap:wrap;gap:8px}.search-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:.9rem;font-weight:700;cursor:pointer;user-select:none;transition:.15s ease}.search-chip input{position:absolute;opacity:0;pointer-events:none}.search-chip:hover{border-color:var(--primary);transform:translateY(-1px)}.search-chip.active{border-color:color-mix(in srgb,var(--primary) 55%,var(--line));background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary)}
.search-advanced-details,.search-syntax-help{border-top:1px solid var(--line);padding-top:12px}.search-advanced-details>summary,.search-syntax-help>summary{cursor:pointer;font-weight:800;color:var(--text)}.search-advanced-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.search-advanced-grid label{display:grid;gap:6px;font-weight:700;font-size:.88rem}.search-advanced-grid select{width:100%}.search-advanced-actions{display:flex;gap:8px;margin-top:12px}.search-help{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.search-help code{padding:6px 8px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line);font-size:.82rem}.search-parsed{margin:0}
.search-results-summary{margin:18px 2px 10px;color:var(--muted)}.search-results-group{margin-top:12px}.search-group-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px}.search-group-head>div{display:flex;align-items:center;gap:11px}.search-group-head h2{margin:0}.search-group-icon{font-size:1.6rem}.search-group-count{border:1px solid var(--line);background:var(--surface-2);padding:6px 9px;border-radius:999px;font-size:.82rem;font-weight:800}.search-result-list{display:grid;gap:9px}.search-result-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.search-result-title-row{display:flex;gap:8px;align-items:center}.search-result-title-row a{font-size:1.05rem;text-decoration:none}.favorite-star{color:#e5a000}.search-result-meta{display:flex;flex-wrap:wrap;gap:5px 12px;color:var(--muted);font-size:.88rem;margin-top:5px}.search-result-meta span:not(:last-child)::after{content:" ·";margin-left:10px;color:var(--line-strong,var(--muted))}.search-match-badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.search-match-badges span{font-size:.75rem;font-weight:800;padding:4px 7px;border-radius:999px;background:color-mix(in srgb,var(--primary) 10%,var(--surface-2));color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 25%,var(--line))}.search-result-snippet{margin:9px 0 0;color:var(--muted);font-size:.9rem;line-height:1.45}.search-start-panel{margin-top:18px}
[data-theme="dark"] .search-chip.active{background:color-mix(in srgb,var(--primary) 22%,var(--surface));border-color:color-mix(in srgb,var(--primary) 65%,var(--line))}[data-theme="dark"] .search-result-card{background:color-mix(in srgb,var(--surface) 94%,white 6%)}
@media (prefers-color-scheme:dark){html[data-theme="system"] .search-chip.active{background:color-mix(in srgb,var(--primary) 22%,var(--surface));border-color:color-mix(in srgb,var(--primary) 65%,var(--line))}}
@media (max-width:720px){.archive-search-main{grid-template-columns:auto minmax(0,1fr)}.archive-search-main .button{grid-column:1/-1;width:100%}.archive-search-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.search-chip{justify-content:center;text-align:center;min-width:0;padding:9px 7px;font-size:.82rem}.search-advanced-grid{grid-template-columns:1fr}.search-result-card{grid-template-columns:1fr;gap:11px}.search-open-button{width:100%;text-align:center;justify-content:center}.search-group-head{align-items:flex-start}.search-group-count{white-space:nowrap}.search-result-meta{display:grid;grid-template-columns:1fr 1fr;gap:3px 8px}.search-result-meta span::after{display:none}.search-help code{font-size:.75rem;max-width:100%;overflow-wrap:anywhere}}

/* Archivio 8.2.36 - gestione avanzata allegati */
.attachment-panel-intro{margin:.3rem 0 0;max-width:540px}
.attachment-dropzone{display:grid;place-items:center;text-align:center;gap:5px;padding:20px 16px;margin:0 0 16px;border:2px dashed color-mix(in srgb,var(--primary) 38%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--primary) 5%,var(--surface-2));cursor:pointer;transition:.16s ease;outline:none}
.attachment-dropzone:hover,.attachment-dropzone:focus-visible,.attachment-dropzone.is-dragover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 11%,var(--surface-2));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}
.attachment-dropzone.is-uploading{cursor:progress;opacity:.82}.attachment-drop-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--primary);color:#fff;font-size:1.35rem;font-weight:900}.attachment-dropzone small{max-width:620px}
.attachment-upload-progress{display:grid;grid-template-columns:minmax(160px,1fr) auto;align-items:center;gap:10px;width:min(100%,480px);margin-top:8px}.attachment-upload-progress progress{width:100%;height:10px;accent-color:var(--primary)}
.attachment-form-dropzone{margin:0}.attachment-selected-files{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:8px}.attachment-selected-files span{max-width:260px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:var(--panel);font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.attachment-existing-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.attachment-existing-summary small{flex:1 1 320px}
.attachment-manager-list{gap:12px}.attachment-managed-row{display:block!important;padding:13px 14px!important;transition:border-color .15s ease,box-shadow .15s ease,opacity .15s ease}.attachment-managed-row.is-primary{border-color:color-mix(in srgb,var(--primary) 48%,var(--border));box-shadow:inset 3px 0 0 var(--primary)}.attachment-managed-row.is-dragging{opacity:.45}.attachment-managed-row.is-drop-target{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}
.attachment-row-main{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px}.attachment-drag-handle{align-self:stretch;min-width:30px;border:0;background:transparent;color:var(--muted);font-size:1.2rem;font-weight:900;cursor:grab;border-radius:8px}.attachment-drag-handle:active{cursor:grabbing}.attachment-drag-handle:hover{background:var(--surface-3);color:var(--text)}
.attachment-managed-row .attachment-file-link{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;text-decoration:none}.attachment-managed-row .attachment-file-link:before{content:none!important}.attachment-file-copy,.attachment-file-copy strong,.attachment-file-copy small{display:block;min-width:0}.attachment-file-copy small{margin-top:3px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0!important;background:none!important;border-radius:0!important}.attachment-managed-row .attachment-file-icon{font-size:1.45rem}
.attachment-meta-chips{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0 0 38px}.attachment-chip{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;background:var(--surface-3);font-size:.69rem;font-weight:800}.attachment-chip.primary{background:color-mix(in srgb,var(--primary) 13%,var(--surface-2));color:var(--primary)}.attachment-chip.subtle{font-weight:700;color:var(--muted)}.attachment-chip.ocr-error{background:#fee2e2;color:#991b1b}.attachment-chip.ocr-processing,.attachment-chip.ocr-retry,.attachment-chip.ocr-pending{background:#fef3c7;color:#92400e}.attachment-chip.ocr-done{background:#dcfce7;color:#166534}
.attachment-managed-row .duplicate-warning{display:block;margin:8px 0 0 38px}.attachment-managed-row .attachment-row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:11px 0 0 38px}.attachment-order-button{min-width:34px;padding-inline:8px!important}
.attachment-management-details{margin:11px 0 0 38px;border-top:1px solid var(--border);padding-top:9px}.attachment-management-details>summary{cursor:pointer;font-weight:800;color:var(--primary);width:max-content;max-width:100%;list-style:none}.attachment-management-details>summary::-webkit-details-marker{display:none}.attachment-management-details>summary:before{content:"⚙ ";font-weight:400}.attachment-management-body{display:grid;gap:13px;margin-top:12px}.attachment-metadata-form{display:grid;grid-template-columns:minmax(160px,1.4fr) minmax(140px,1fr) minmax(140px,.8fr) auto;gap:10px;align-items:end}.attachment-metadata-form label{min-width:0}.attachment-metadata-form input{width:100%}.attachment-metadata-form .inline-check{align-self:center}.attachment-metadata-form .actions{align-self:end}.attachment-operation-grid{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.attachment-operation-grid form{margin:0}.attachment-file-picker{cursor:pointer}.attachment-move-form{display:grid;grid-template-columns:minmax(190px,1.15fr) minmax(210px,1.35fr) auto;gap:7px;align-items:center;flex:1 1 560px}.attachment-move-form input,.attachment-move-form select{min-width:0;width:100%}.attachment-move-status{grid-column:1/-1;line-height:1.25}.attachment-replace-form{display:inline-flex}
body[data-theme="dark"] .attachment-chip.ocr-error{background:#4b2225;color:#fecaca}body[data-theme="dark"] .attachment-chip.ocr-processing,body[data-theme="dark"] .attachment-chip.ocr-retry,body[data-theme="dark"] .attachment-chip.ocr-pending{background:#4a3a18;color:#fde68a}body[data-theme="dark"] .attachment-chip.ocr-done{background:#163b2b;color:#bbf7d0}
@media(prefers-color-scheme:dark){body[data-theme="system"] .attachment-chip.ocr-error{background:#4b2225;color:#fecaca}body[data-theme="system"] .attachment-chip.ocr-processing,body[data-theme="system"] .attachment-chip.ocr-retry,body[data-theme="system"] .attachment-chip.ocr-pending{background:#4a3a18;color:#fde68a}body[data-theme="system"] .attachment-chip.ocr-done{background:#163b2b;color:#bbf7d0}}
@media(max-width:760px){.attachment-metadata-form{grid-template-columns:1fr}.attachment-meta-chips,.attachment-managed-row .attachment-row-actions,.attachment-managed-row .duplicate-warning,.attachment-management-details{margin-left:0}.attachment-row-main{grid-template-columns:minmax(0,1fr)}.attachment-drag-handle{display:none}.attachment-managed-row .attachment-row-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.attachment-managed-row .attachment-row-actions .button{width:100%}.attachment-operation-grid{display:grid;grid-template-columns:1fr}.attachment-operation-grid form,.attachment-operation-grid .button{width:100%}.attachment-move-form{display:grid;grid-template-columns:1fr}.attachment-move-form input,.attachment-move-form select,.attachment-move-form button{width:100%;min-width:0}.attachment-move-status{grid-column:1}.attachment-upload-progress{grid-template-columns:1fr auto}}

/* Archivio 8.2.37 - dashboard operativa configurabile */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.dashboard-editor{grid-template-columns:minmax(0,1fr) 170px auto;align-items:start}
.dashboard-editor-copy{align-self:center}.dashboard-widget-picker{grid-column:1/-1;border-top:1px solid var(--border);padding-top:14px;display:grid;gap:12px}.dashboard-widget-picker-group{display:grid;gap:8px}.dashboard-widget-picker-items{display:flex;gap:8px;flex-wrap:wrap}.dashboard-widget-toggle{display:flex!important;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);cursor:pointer;font-size:.84rem;font-weight:750}.dashboard-widget-toggle input{width:auto;margin:0}.widget-hidden-label{font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em;padding:4px 7px;border-radius:999px;background:var(--surface-3);color:var(--muted)}
.dashboard-grid-v8237 .dashboard-widget[data-enabled="0"]{display:none}.dashboard-grid-v8237.editing .dashboard-widget[data-enabled="0"]{display:block;opacity:.58}.dashboard-grid-v8237.editing .dashboard-widget[data-enabled="0"]>.panel,.dashboard-grid-v8237.editing .dashboard-widget[data-enabled="0"]>.stats,.dashboard-grid-v8237.editing .dashboard-widget[data-enabled="0"]>.balance-stats{filter:grayscale(.35)}
.widget-kicker{display:block;margin-bottom:4px;color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.operational-widget{height:100%}.operational-widget .section-heading{align-items:flex-start;gap:10px;margin-bottom:8px}.operational-widget .section-heading h2{margin:0}.operational-list{display:grid;gap:2px}.operational-list .list-row{border-radius:10px}.widget-help{font-size:.82rem;margin:.15rem 0 .65rem}.widget-alert-line{margin:.2rem 0 .65rem;padding:8px 10px;border-radius:10px;background:#fff7ed;color:#9a3412;font-size:.82rem;font-weight:800}.dashboard-state{display:inline-flex;align-items:center;justify-content:center;padding:4px 7px;border-radius:999px;font-size:.7rem;font-weight:850;text-transform:uppercase;white-space:nowrap;background:var(--surface-3)}.dashboard-state-completed{background:#dcfce7;color:#166534}.dashboard-state-error{background:#fee2e2;color:#991b1b}.dashboard-state-running{background:#dbeafe;color:#1d4ed8}.dashboard-state-cancelled{background:#f1f5f9;color:#475569}
.storage-widget{display:grid;align-content:start}.storage-total{display:grid;gap:2px;padding:14px;border-radius:14px;background:var(--surface-2);margin:6px 0 10px}.storage-total strong{font-size:1.8rem}.storage-total span{color:var(--muted);font-size:.84rem}.storage-breakdown{display:grid;gap:7px}.storage-breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 2px;border-bottom:1px solid var(--border)}.storage-breakdown>div:last-child{border-bottom:0}.storage-breakdown span{min-width:0}.storage-breakdown small{display:block;margin-top:2px}.dashboard-year-filter select{min-width:92px}
body[data-theme="dark"] .widget-alert-line{background:#4a2c18;color:#fed7aa}body[data-theme="dark"] .dashboard-state-completed{background:#183d2a;color:#bbf7d0}body[data-theme="dark"] .dashboard-state-error{background:#4c1d1d;color:#fecaca}body[data-theme="dark"] .dashboard-state-running{background:#1e3a5f;color:#bfdbfe}body[data-theme="dark"] .dashboard-state-cancelled{background:#374151;color:#d1d5db}
@media(max-width:1050px){.dashboard-grid-v8237{--dashboard-columns:2!important}.dashboard-grid-v8237 .dashboard-widget,.dashboard-grid-v8237 .dashboard-widget[data-size="1"]{grid-column:span 1!important}.dashboard-grid-v8237 .dashboard-widget[data-size="2"],.dashboard-grid-v8237 .dashboard-widget[data-size="3"]{grid-column:span 2!important}.dashboard-editor{grid-template-columns:1fr 150px}.dashboard-editor .actions{grid-column:1/-1}}
@media(max-width:700px){.dashboard-grid-v8237{--dashboard-columns:1!important}.dashboard-grid-v8237 .dashboard-widget,.dashboard-grid-v8237 .dashboard-widget[data-size="1"],.dashboard-grid-v8237 .dashboard-widget[data-size="2"],.dashboard-grid-v8237 .dashboard-widget[data-size="3"]{grid-column:1/-1!important}.dashboard-editor{grid-template-columns:1fr}.dashboard-editor .actions{grid-column:auto}.dashboard-widget-picker-items{display:grid;grid-template-columns:1fr}.dashboard-widget-toggle{border-radius:12px}.storage-total strong{font-size:1.55rem}}
/* Archivio 8.2.37-r2 · Home globale + dashboard di sezione */
.dashboard-home-head{margin-top:1.5rem}.archive-home-grid+.dashboard-home-head{margin-top:1.75rem}.dashboard-grid-v8237{align-items:stretch}


/* Archivio 8.2.38 - Centro notifiche unificato */
.notification-channel-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.notification-channel-card{display:grid;gap:.55rem}.notification-channel-card strong{font-size:1.05rem}.notification-channel-card small{word-break:break-word}.status-pill{display:inline-flex;width:max-content;padding:.2rem .55rem;border-radius:999px;font-size:.78rem;font-weight:800}.status-pill.ok{background:rgba(5,150,105,.12);color:#047857}.status-pill.warn{background:rgba(217,119,6,.13);color:#b45309}.notification-rules-table-wrap{overflow-x:auto;margin-top:1rem}.notification-rules-table{width:100%;border-collapse:collapse;min-width:900px}.notification-rules-table th,.notification-rules-table td{padding:.7rem;border-bottom:1px solid var(--border);vertical-align:middle;text-align:left}.notification-rules-table td:nth-child(2),.notification-rules-table td:nth-child(3),.notification-rules-table td:nth-child(4),.notification-rules-table th:nth-child(2),.notification-rules-table th:nth-child(3),.notification-rules-table th:nth-child(4){text-align:center}.notification-rules-table td:first-child small{display:block;margin-top:.2rem;color:var(--muted)}.notification-silence-field{display:flex;align-items:center;gap:.35rem;min-width:120px}.notification-silence-field input{max-width:90px}.notification-test-actions{flex-wrap:wrap}.notification-global-settings>summary{cursor:pointer;display:flex;justify-content:space-between;gap:1rem;align-items:center}.notification-global-settings>summary small{color:var(--muted)}.notification-template-grid{display:grid;gap:.8rem}.notification-history-list{display:grid}.notification-history-row{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--border)}.notification-history-row>div{display:grid;gap:.18rem;min-width:0}.notification-history-row span,.notification-history-row small{word-break:break-word}.notification-history-detail{color:var(--muted)}.delivery-status{height:max-content;padding:.22rem .55rem;border-radius:999px;font-size:.75rem;font-weight:900}.delivery-sent{background:rgba(5,150,105,.12);color:#047857}.delivery-failed{background:rgba(220,38,38,.12);color:#b91c1c}.delivery-suppressed{background:rgba(100,116,139,.15);color:#475569}body[data-theme="dark"] .status-pill.ok,body[data-theme="dark"] .delivery-sent{color:#6ee7b7}body[data-theme="dark"] .status-pill.warn{color:#fbbf24}body[data-theme="dark"] .delivery-failed{color:#fca5a5}body[data-theme="dark"] .delivery-suppressed{color:#cbd5e1}@media(max-width:900px){.notification-channel-status-grid{grid-template-columns:1fr}.notification-preferences-form .section-heading{align-items:flex-start;flex-direction:column}.notification-test-actions form,.notification-test-actions button{width:100%}}@media(max-width:700px){.notification-history-row{align-items:flex-start;flex-direction:column}.delivery-status{align-self:flex-start}}


/* Archivio 8.2.38-r2 - Centro notifiche inbox-first desktop/mobile */
.notification-page-head h1{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.notification-title-badge,.notification-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.45rem;height:1.45rem;padding:0 .45rem;border-radius:999px;background:var(--primary);color:#fff;font-size:.74rem;font-weight:900;line-height:1}.notification-link{gap:.4rem}.mobile-account-actions .notification-count-badge{margin-left:auto}
.notification-subnav{display:flex;gap:.45rem;align-items:center;margin-top:1rem;padding:.4rem;background:color-mix(in srgb,var(--panel) 92%,var(--primary) 8%);border:1px solid var(--border);border-radius:14px;overflow-x:auto}.notification-subnav>a,.notification-subnav-mobile>a,.notification-more-menu>summary,.notification-more-menu-popover>a{display:flex;align-items:center;gap:.4rem;padding:.65rem .8rem;border-radius:10px;color:inherit;text-decoration:none;font-weight:750;white-space:nowrap}.notification-subnav a:hover,.notification-more-menu>summary:hover,.notification-more-menu-popover a:hover{background:color-mix(in srgb,var(--primary) 9%,var(--panel))}.notification-subnav a.active,.notification-more-menu>summary.active,.notification-more-menu-popover a.active{background:var(--primary);color:#fff}.notification-subnav a.active .notification-count-badge{background:#fff;color:var(--primary)}.notification-subnav-mobile{display:none}
.notification-inbox-heading{align-items:flex-start}.notification-inbox-actions{flex-wrap:wrap}.notification-filter-chips{display:flex;gap:.45rem;flex-wrap:wrap;margin:1rem 0}.notification-filter-chips a{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .7rem;border:1px solid var(--border);border-radius:999px;text-decoration:none;color:inherit;font-weight:750}.notification-filter-chips a span{font-size:.78rem;color:var(--muted)}.notification-filter-chips a.active{background:color-mix(in srgb,var(--primary) 12%,var(--panel));border-color:color-mix(in srgb,var(--primary) 38%,var(--border));color:var(--primary)}.notification-filter-chips a.active span{color:inherit}.notification-inbox-group{display:grid;gap:0}.notification-inbox-group+.notification-inbox-group{margin-top:1.25rem}.notification-group-title{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem .2rem;border-bottom:1px solid var(--border);color:var(--muted)}.notification-group-title strong{color:var(--text)}.notification-group-title span{display:inline-flex;min-width:1.5rem;justify-content:center}.notification-inbox-card{position:relative;padding:1rem .8rem}.notification-inbox-card.unread{border-left:4px solid var(--primary)}.notification-card-link{flex:1;min-width:0;color:inherit;text-decoration:none;border-radius:8px}.notification-card-link:hover .notification-title{color:var(--primary)}.notification-row-actions{flex-wrap:wrap}.notification-empty-compact{padding:1rem .2rem}.notification-more-menu{position:relative}.notification-more-menu>summary{list-style:none;cursor:pointer}.notification-more-menu>summary::-webkit-details-marker{display:none}.notification-more-menu-popover{position:absolute;right:0;top:calc(100% + .35rem);z-index:30;display:grid;min-width:230px;padding:.4rem;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 14px 35px rgba(15,23,42,.18)}.notification-more-menu-popover a.active{background:color-mix(in srgb,var(--primary) 14%,var(--panel));color:var(--primary)}
body[data-theme="dark"] .notification-more-menu-popover{box-shadow:0 16px 36px rgba(0,0,0,.36)}
@media(max-width:760px){.notification-subnav-desktop{display:none}.notification-subnav-mobile{display:grid;grid-template-columns:1fr 1fr auto;gap:.4rem;align-items:stretch;margin-top:.85rem}.notification-subnav-mobile>a,.notification-more-menu>summary{justify-content:center;border:1px solid var(--border);background:var(--panel)}.notification-subnav-mobile>a.active,.notification-more-menu>summary.active{background:var(--primary);border-color:var(--primary);color:#fff}.notification-more-menu{display:block}.notification-more-menu>summary{height:100%;box-sizing:border-box}.notification-more-menu-popover{right:0;min-width:min(260px,80vw)}.notification-inbox-panel{padding-left:.75rem;padding-right:.75rem}.notification-inbox-heading{gap:.75rem}.notification-inbox-actions,.notification-inbox-actions form,.notification-inbox-actions button{width:100%}.notification-filter-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem}.notification-filter-chips a{justify-content:center;padding:.48rem .35rem;font-size:.88rem}.notification-inbox-card{display:grid!important;grid-template-columns:1fr;gap:.65rem;padding:.9rem .45rem}.notification-inbox-card::before{position:absolute;left:.15rem;top:1.15rem}.notification-card-link{display:grid;gap:.28rem;padding:.1rem .25rem;min-height:44px}.notification-row-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:.45rem}.notification-row-actions form,.notification-row-actions a,.notification-row-actions button{width:100%;box-sizing:border-box}.notification-row-actions .notification-open-button{grid-column:span 1;text-align:center}.notification-rules-table{min-width:760px}.notification-channel-status-grid{gap:.65rem}.notification-title-badge{font-size:.7rem}.notification-page-head h1{gap:.45rem}.notification-global-settings .form-grid{grid-template-columns:1fr}.notification-global-settings .span-2{grid-column:auto}}
@media(max-width:430px){.notification-subnav-mobile{grid-template-columns:1fr 1fr auto}.notification-subnav-mobile>a,.notification-more-menu>summary{padding:.58rem .5rem;font-size:.85rem}.notification-filter-chips a{font-size:.8rem}.notification-filter-chips a span{font-size:.72rem}.notification-row-actions{grid-template-columns:1fr}.notification-page-head .notification-title-badge{width:100%;max-width:max-content}}

/* Archivio 8.2.39 - Importazioni e sincronizzazioni trasparenti */
.import-center{gap:1rem}.sync-observer .settings-section-head{align-items:center}.sync-observer .settings-section-head>.status-pill{margin-left:auto;text-transform:uppercase}.sync-live-grid,.import-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem;margin-top:.8rem}.sync-live-grid>div,.import-summary-grid>div{display:grid;gap:.2rem;padding:.85rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.sync-live-grid small,.import-summary-grid small{color:var(--muted);font-size:.78rem}.sync-live-grid strong,.import-summary-grid strong{font-size:1.2rem}.sync-live-message{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.35rem .55rem;align-items:center;margin-top:.85rem;padding:.8rem .9rem;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.sync-live-message small{grid-column:2;color:var(--muted);overflow-wrap:anywhere}.import-preview{display:grid;gap:1rem}.mode-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.mode-selector label{display:flex;gap:.65rem;align-items:flex-start;padding:.8rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);cursor:pointer}.mode-selector label:has(input:checked){border-color:color-mix(in srgb,var(--primary) 50%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--surface-2))}.mode-selector span{display:grid;gap:.15rem}.mode-selector small{color:var(--muted)}.compact-history{display:grid;gap:.5rem;margin-top:.8rem}.compact-history>a{display:grid;grid-template-columns:auto auto auto minmax(0,1fr);gap:.6rem;align-items:center;padding:.7rem .8rem;border:1px solid var(--border);border-radius:11px;color:inherit;text-decoration:none;background:var(--surface-2)}.compact-history>a:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 6%,var(--surface-2))}.compact-history small{color:var(--muted);min-width:0}.import-history-table .status-pill,.compact-history .status-pill{text-transform:uppercase}.status-pill.completed,.status-pill.new{background:rgba(5,150,105,.12);color:#047857}.status-pill.partial,.status-pill.updated{background:rgba(217,119,6,.13);color:#b45309}.status-pill.error{background:rgba(220,38,38,.12);color:#b91c1c}.status-pill.running{background:rgba(37,99,235,.12);color:#1d4ed8}.status-pill.skipped,.status-pill.idle{background:rgba(100,116,139,.15);color:#475569}.run-head{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.error-box{border:1px solid rgba(220,38,38,.25);background:rgba(220,38,38,.06);border-radius:12px;padding:.9rem}.error-box pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:.5rem 0 0}.error-details>summary{cursor:pointer;font-weight:800}.button.compact{padding:.35rem .55rem;font-size:.8rem}
body[data-theme="dark"] .status-pill.completed,body[data-theme="dark"] .status-pill.new{color:#6ee7b7}body[data-theme="dark"] .status-pill.partial,body[data-theme="dark"] .status-pill.updated{color:#fbbf24}body[data-theme="dark"] .status-pill.error{color:#fca5a5}body[data-theme="dark"] .status-pill.running{color:#93c5fd}body[data-theme="dark"] .status-pill.skipped,body[data-theme="dark"] .status-pill.idle{color:#cbd5e1}
@media(max-width:1050px){.sync-live-grid,.import-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.sync-observer .settings-section-head{align-items:flex-start}.sync-observer .settings-section-head>.status-pill{margin-left:0}.sync-live-grid,.import-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.sync-live-grid>div,.import-summary-grid>div{padding:.7rem}.mode-selector{grid-template-columns:1fr}.compact-history>a{grid-template-columns:1fr auto;gap:.25rem .5rem}.compact-history>a>span:first-child,.compact-history>a>strong{grid-column:1}.compact-history>a>.status-pill{grid-column:2;grid-row:1/3}.compact-history>a>small{grid-column:1/-1}.import-history-table{min-width:760px}}
@media(max-width:420px){.sync-live-grid,.import-summary-grid{grid-template-columns:1fr 1fr}.sync-live-grid strong,.import-summary-grid strong{font-size:1.05rem}}
/* Archivio 8.2.40 - Backup Center */
/* Archivio 8.3.3-r4 - profili Backup Center */
.backup-create-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.backup-create-actions form{margin:0}.backup-create-actions .button{white-space:nowrap}
@media(max-width:600px){.backup-create-actions{display:grid;grid-template-columns:1fr;width:100%}.backup-create-actions form,.backup-create-actions .button{width:100%}}
.backup-page-head{align-items:center}.backup-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.backup-summary-card{display:flex;flex-direction:column;gap:6px}.backup-summary-card span{color:var(--muted);font-size:.86rem}.backup-summary-card strong{font-size:1.55rem}.backup-catalog{display:grid;gap:0}.backup-catalog-head,.backup-catalog-row{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(180px,1fr) minmax(170px,.85fr) minmax(190px,.9fr) minmax(250px,1.3fr);gap:14px;align-items:center}.backup-catalog-head{padding:10px 12px;color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase;border-bottom:1px solid var(--border)}.backup-catalog-row{padding:14px 12px;border-bottom:1px solid var(--border)}.backup-catalog-row:last-child{border-bottom:0}.backup-file-cell,.backup-status-cell{display:flex;flex-direction:column;gap:4px;min-width:0}.backup-file-cell strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backup-file-cell small,.backup-status-cell small,.backup-catalog-row>div>small{color:var(--muted)}.backup-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.backup-actions form{margin:0}.status-pill.backup-status-ok{background:#dff7ec;color:#087a55}.status-pill.backup-status-error{background:#fee2e2;color:#b42318}.status-pill.backup-status-never{background:var(--surface-2);color:var(--muted)}.backup-mobile{display:none}.backup-restore-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.backup-restore-banner p{margin:.2rem 0 0}.backup-restore-completed{border-color:#86efac}.backup-restore-failed,.backup-restore-rolled_back{border-color:#fca5a5}.backup-settings-details summary{display:flex;justify-content:space-between;gap:16px;cursor:pointer}.backup-settings-details[open] summary{margin-bottom:16px}.backup-safety-note{border-left:4px solid #f59e0b}.warning-button{background:#fff7ed;color:#9a3412;border:1px solid #fdba74}.restore-danger-panel{border:1px solid #fca5a5;background:color-mix(in srgb,#fef2f2 65%,var(--surface))}.restore-danger-title{font-size:1.15rem;font-weight:800;color:#b42318;margin-bottom:8px}.restore-backup-summary,.restore-status-meta{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}.restore-backup-summary>div,.restore-status-meta>div{display:flex;flex-direction:column;gap:4px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.restore-backup-summary span,.restore-status-meta span{font-size:.78rem;color:var(--muted)}.restore-confirm-form{display:grid;gap:14px}.restore-confirm-form h2{margin:8px 0 0}.restore-mode-option{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--border);border-radius:12px}.restore-mode-option span{display:flex;flex-direction:column;gap:4px}.restore-mode-option small{color:var(--muted)}.restore-understand{padding:12px;background:#fff7ed;border-radius:10px}.restore-final-warning{padding:14px;border-radius:10px;background:#fee2e2;color:#991b1b;font-weight:600}.restore-submit{justify-self:start}.restore-status-panel{display:grid;gap:14px}.restore-status-head{display:flex;justify-content:space-between;align-items:center}.restore-status-panel progress{width:100%;height:18px}.restore-log{white-space:pre-wrap;max-height:380px;overflow:auto;background:#111827;color:#e5e7eb;border-radius:10px;padding:14px;font-size:.8rem}.backup-mobile-card{display:grid;gap:10px;padding:14px 0;border-bottom:1px solid var(--border)}.backup-mobile-title{display:flex;justify-content:space-between;gap:12px}.backup-mobile-title strong{overflow-wrap:anywhere}.backup-mobile-meta{color:var(--muted);font-size:.85rem}.backup-mobile-contents{display:flex;gap:6px;flex-wrap:wrap}.backup-mobile-contents span{padding:4px 8px;border-radius:999px;background:var(--surface-2);font-size:.78rem}.backup-mobile-statuses{display:grid;grid-template-columns:1fr 1fr;gap:10px}.backup-mobile-statuses>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.backup-mobile-actions{display:flex;gap:6px;flex-wrap:wrap}.backup-mobile-actions form{margin:0}
@media(max-width:1100px){.backup-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.backup-desktop{display:none}.backup-mobile{display:grid}.restore-backup-summary,.restore-status-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.backup-page-head{align-items:stretch}.backup-page-head form,.backup-page-head .button{width:100%}.backup-summary-grid{grid-template-columns:1fr 1fr;gap:8px}.backup-summary-card{padding:12px}.backup-summary-card strong{font-size:1.25rem}.backup-mobile-title{flex-direction:column}.backup-mobile-actions .button,.backup-mobile-actions form{flex:1 1 calc(50% - 6px)}.backup-mobile-actions form .button{width:100%}.restore-backup-summary,.restore-status-meta{grid-template-columns:1fr}.restore-submit{width:100%}.backup-restore-banner{align-items:stretch;flex-direction:column}}

/* Archivio 8.2.41 · dashboard ridimensionabile, bulk UX e contesto */
.dashboard-widget{min-height:var(--widget-min-height,240px);box-sizing:border-box}
.dashboard-widget[data-height]:not([data-height="auto"]){overflow-y:auto;overflow-x:hidden;}
.dashboard-widget[data-height]:not([data-height="auto"])>.panel,.dashboard-widget[data-height]:not([data-height="auto"])>.stats,.dashboard-widget[data-height]:not([data-height="auto"])>.balance-stats{min-height:0;height:auto}
.widget-tools select.widget-height{width:112px}.bulk-safety-note{padding:10px 12px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);font-size:.84rem;color:var(--muted)}
.smart-back{white-space:nowrap}
@media(max-width:700px){.dashboard-widget{min-height:var(--widget-min-height,240px)}.dashboard-widget[data-height]:not([data-height="auto"]){height:min(max(var(--widget-min-height,240px),var(--widget-height)),72vh)}.widget-tools{align-items:flex-start;flex-wrap:wrap}.widget-tools label{flex:1;min-width:120px}.widget-tools select.widget-height{width:100%}.bulk-safety-note{font-size:.8rem}}

/* Archivio 8.2.41 · libreria DICOM e manutenzione importazioni */
.dicom-study-list,.dicom-study-card{display:grid;gap:14px}.dicom-study-main{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.dicom-study-title h2{margin:.35rem 0 .2rem;font-size:1.12rem}.dicom-study-title p{margin:0}.dicom-study-date{display:grid;text-align:right;gap:3px;white-space:nowrap}.dicom-study-date small{color:var(--muted)}.modality-badges{display:flex;gap:6px;flex-wrap:wrap}.modality-badge{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:4px 8px;border-radius:999px;background:var(--surface-3);border:1px solid var(--border);font-size:.72rem;font-weight:900;letter-spacing:.04em}.modality-ct{background:rgba(37,99,235,.12);color:#1d4ed8}.modality-mr{background:rgba(124,58,237,.12);color:#6d28d9}.modality-us{background:rgba(5,150,105,.12);color:#047857}.modality-cr,.modality-dx{background:rgba(217,119,6,.13);color:#b45309}.dicom-study-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.dicom-study-meta>span{display:grid;gap:3px;padding:10px 12px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);min-width:0}.dicom-study-meta small{color:var(--muted)}.dicom-study-meta strong{overflow-wrap:anywhere}.dicom-linked-record{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid var(--border)}.dicom-associate-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding-top:10px;border-top:1px solid var(--border)}.dicom-associate-form label{display:grid;gap:6px}.dicom-study-tech{border-top:1px dashed var(--border);padding-top:8px}.dicom-study-tech summary{cursor:pointer;color:var(--muted);font-size:.82rem}.dicom-study-tech code{display:block;margin-top:8px;white-space:normal;overflow-wrap:anywhere}.maintenance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.compact-maintenance{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.compact-maintenance h3{margin:0}.compact-maintenance label:not(.inline-check){display:grid;grid-template-columns:minmax(0,1fr) 110px auto;align-items:center;gap:8px}.danger-text{color:#b91c1c}.row-actions{display:flex;gap:6px;align-items:center}.row-actions form{margin:0}.danger-zone-inline{padding-top:14px;border-top:1px solid var(--border)}
body[data-theme="dark"] .modality-ct{color:#93c5fd}body[data-theme="dark"] .modality-mr{color:#c4b5fd}body[data-theme="dark"] .modality-us{color:#6ee7b7}body[data-theme="dark"] .modality-cr,body[data-theme="dark"] .modality-dx{color:#fbbf24}body[data-theme="dark"] .danger-text{color:#fca5a5}
@media(max-width:900px){.dicom-study-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-grid{grid-template-columns:1fr}}
@media(max-width:700px){.dicom-study-main,.dicom-linked-record{align-items:flex-start;flex-direction:column}.dicom-study-date{text-align:left}.dicom-study-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.dicom-linked-record .actions,.dicom-linked-record .actions>*{width:100%}.dicom-associate-form{grid-template-columns:1fr}.dicom-associate-form button{width:100%}.compact-maintenance label:not(.inline-check){grid-template-columns:1fr}.row-actions{align-items:stretch;flex-direction:column}.row-actions>*,.row-actions form button{width:100%}.desktop-only{display:none!important}.modality-badge{min-width:38px;padding:6px 9px}}

/* Archivio 8.2.41-r2 · Indietro globale e contrasto coerente */
.global-smart-back-row{display:flex;align-items:center;}
.button.ghost.smart-back,.button.ghost.global-smart-back{background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important;border:1px solid #94a3b8!important;box-shadow:0 4px 12px rgba(15,23,42,.08)!important;font-weight:800}
.button.ghost.smart-back:hover,.button.ghost.smart-back:focus-visible{background:#f1f5f9!important;color:#0f172a!important;-webkit-text-fill-color:#0f172a!important;border-color:#64748b!important}
body[data-theme="dark"] .button.ghost.smart-back{background:#3b4252!important;color:#f2f5f8!important;-webkit-text-fill-color:#f2f5f8!important;border-color:#6b7890!important;box-shadow:0 4px 12px rgba(0,0,0,.22)!important}
body[data-theme="dark"] .button.ghost.smart-back:hover,body[data-theme="dark"] .button.ghost.smart-back:focus-visible{background:#465064!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#88c0d0!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .button.ghost.smart-back{background:#3b4252!important;color:#f2f5f8!important;-webkit-text-fill-color:#f2f5f8!important;border-color:#6b7890!important;box-shadow:0 4px 12px rgba(0,0,0,.22)!important}body[data-theme="system"] .button.ghost.smart-back:hover,body[data-theme="system"] .button.ghost.smart-back:focus-visible{background:#465064!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#88c0d0!important}}
@media(max-width:700px){.global-smart-back{min-height:42px;}}


/* Archivio 8.2.41-r3 · back compatto, dock mobile essenziale, DICOM library */
.button.ghost.smart-back.smart-back-icon{
  width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
  padding:0!important;border-radius:12px!important;display:inline-grid!important;place-items:center!important;
  font-size:1.18rem!important;line-height:1!important;font-weight:900!important;flex:0 0 38px!important;
}
.global-smart-back-row{min-height:38px!important;margin:-4px 0 14px!important}
@media(max-width:900px){
  
  body.mobile-dock-hidden{padding-bottom:0!important}
  body.mobile-dock-hidden .app-footer{margin-bottom:0!important}
}
@media(max-width:700px){
  .button.ghost.smart-back.smart-back-icon{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;flex-basis:36px!important;border-radius:11px!important;font-size:1.12rem!important}
  
}

/* Archivio 8.2.41-r4 — Libreria DICOM nuovamente visibile nella Dashboard Medico mobile */
.dicom-library-quick-action{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:900px){
  .dashboard-quick-actions .dicom-library-quick-action{display:inline-flex!important;min-height:44px;white-space:nowrap}
}
@media(max-width:560px){
  .dashboard-quick-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;width:100%}
  .dashboard-quick-actions .dicom-library-quick-action{grid-column:1/-1;width:100%;box-sizing:border-box}
  .dashboard-quick-actions .button{width:100%;box-sizing:border-box;justify-content:center}
}
body[data-theme="dark"] .dicom-library-quick-action{border-color:#65748a}
@media(prefers-color-scheme:dark){body[data-theme="system"] .dicom-library-quick-action{border-color:#65748a}}

/* Archivio 8.2.42 - Home riepilogo generale + pagine dettaglio */
.home-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.home-summary-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 16px;border:1px solid var(--border);border-radius:15px;background:var(--panel);color:var(--text);text-decoration:none;box-shadow:0 5px 16px rgba(15,23,42,.045);transition:.16s transform,.16s border-color,.16s box-shadow}.home-summary-item:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 8px 20px rgba(15,23,42,.08)}.home-summary-item>span:nth-child(2){display:grid;gap:2px;min-width:0}.home-summary-item small{font-size:.73rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.home-summary-item strong{font-size:1.12rem;line-height:1.25}.home-summary-item em{font-style:normal;color:var(--muted);font-size:.78rem;white-space:normal}.home-summary-item>b{font-size:1.15rem}.home-summary-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--surface-2);font-size:1.2rem}.home-summary-item.attention{border-left:4px solid #d97706}.home-summary-item.ok{border-left:4px solid #16a34a}.home-summary-item.running{border-left:4px solid #2563eb}.global-overview-head{align-items:flex-start}.overview-stat-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.overview-stat-strip-auto{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.overview-stat-strip>div{display:grid;gap:4px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.overview-stat-strip span{font-size:.75rem;color:var(--muted);font-weight:760}.overview-stat-strip strong{font-size:1.35rem}.overview-table-wrap{overflow:auto}.overview-table{width:100%;border-collapse:collapse;min-width:720px}.overview-table th,.overview-table td{padding:10px 9px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.overview-table th{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.overview-table td small{display:block;margin-top:2px;color:var(--muted)}.overview-list{display:grid;gap:8px}.overview-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 4px;border-bottom:1px solid var(--border)}.overview-row:last-child{border-bottom:0}.overview-row>div:first-child,.overview-row>span:first-child{min-width:0}.overview-row strong{display:block}.overview-row small{display:block;margin-top:3px;color:var(--muted)}.overview-row p{margin:5px 0 0;color:var(--muted);font-size:.82rem;overflow-wrap:anywhere}.overview-row-link{color:inherit;text-decoration:none;border-radius:10px;padding:12px}.overview-row-link:hover{background:var(--surface-2)}.overview-row-link.danger{border-left:4px solid #dc2626}.overview-row-link.warning{border-left:4px solid #d97706}.overview-date{font-weight:850;white-space:nowrap}.overview-storage-breakdown{max-width:760px}.activity-card-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.activity-card-actions form{margin:0}
@media(max-width:900px){.home-summary-grid,.overview-stat-strip{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.home-summary-grid,.overview-stat-strip{grid-template-columns:1fr}.home-summary-item{padding:13px}.overview-row{align-items:flex-start;flex-direction:column}.overview-row .actions,.activity-card-actions,.overview-row .actions .button,.overview-row .actions form,.overview-row .actions form .button,.activity-card-actions .button,.activity-card-actions form{width:100%}.overview-date{align-self:flex-start}.overview-table{min-width:650px}}

/* Archivio 8.3.1 · importazione multipla Documentale */
.bulk-document-import{max-width:1180px;margin:0 auto}.bulk-document-ocr-option{display:flex!important;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.bulk-document-ocr-option input{margin-top:4px}.bulk-document-ocr-option span{display:grid;gap:3px}.bulk-document-ocr-option small{color:var(--muted);font-weight:400}.bulk-document-dropzone{display:grid;place-items:center;gap:5px;min-height:150px;padding:24px;border:2px dashed var(--border);border-radius:18px;text-align:center;cursor:pointer;background:var(--surface-soft);transition:.16s ease}.bulk-document-dropzone:hover,.bulk-document-dropzone:focus,.bulk-document-dropzone.dragging{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 7%,var(--surface));outline:none}.bulk-document-dropzone .attachment-drop-icon{font-size:28px}.bulk-document-preview{margin-top:14px}.bulk-document-preview-list{display:grid;gap:8px}.bulk-document-preview-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.bulk-document-preview-row>span:nth-child(2){min-width:0;display:grid;gap:2px}.bulk-document-preview-row strong,.bulk-document-preview-row small{overflow-wrap:anywhere}.bulk-document-preview-row small{color:var(--muted)}.bulk-document-index{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--surface-soft);font-weight:700}.bulk-document-how p{margin:8px 0}.bulk-document-example{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.bulk-document-example code{overflow-wrap:anywhere}@media(max-width:700px){.bulk-document-import{max-width:none}.bulk-document-preview-row{grid-template-columns:30px minmax(0,1fr)}.bulk-document-preview-row>.muted{grid-column:2}.bulk-document-dropzone{min-height:130px;padding:18px}.bulk-document-example{align-items:flex-start;flex-direction:column}.bulk-document-example span{transform:rotate(90deg);margin-left:18px}}

/* Archivio 8.3.2 · rianalisi metadati OCR documentali */
.ocr-metadata-form{margin-top:14px}.ocr-metadata-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ocr-metadata-grid .inline-check{align-items:flex-start;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.ocr-metadata-grid .inline-check>span{display:grid;gap:3px}.ocr-metadata-grid .inline-check small{color:var(--muted);font-weight:400}.ocr-metadata-grid .ocr-force-option{border-style:dashed}.ocr-metadata-panel code{overflow-wrap:anywhere}@media(max-width:700px){.ocr-metadata-grid{grid-template-columns:1fr}}

/* Archivio 8.3.3 · dashboard analitiche di sezione e cestini */
.dashboard-year-form{margin:0}.dashboard-year-form label{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--muted)}.dashboard-year-form select{min-width:92px}.trash-scope-note{display:flex;gap:8px;align-items:center}
@media(max-width:700px){.dashboard-year-form{width:100%}.dashboard-year-form label{justify-content:space-between}.dashboard-year-form select{flex:1}}

/* Archivio 8.3.3-r2 · rifiniture dashboard/cestino */
.dashboard-trash-quick-action{display:none!important}
.dashboard-summary-scroll{overflow-y:auto;overflow-x:hidden;}
.dashboard-summary-scroll.bar-chart,.dashboard-summary-scroll.chart-legend{align-content:start}
@media(max-width:900px){
  .dashboard-trash-quick-action{display:inline-flex!important;align-items:center;justify-content:center}
}
@media(max-width:620px){
  .dashboard-summary-scroll{max-height:48vh}
}
.backup-bulk-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.backup-select-cell{display:flex;align-items:center;justify-content:center}
.backup-select-cell input,.backup-mobile-select input{width:18px;height:18px;margin:0}
.backup-catalog-head.backup-catalog-head-select,.backup-catalog-row.backup-catalog-row-select{grid-template-columns:42px minmax(240px,1.4fr) minmax(150px,.8fr) minmax(130px,.7fr) minmax(150px,.8fr) minmax(330px,1.5fr)}
.backup-mobile-select{display:flex;align-items:center;gap:9px;margin-bottom:10px;font-weight:750}

/* Archivio 8.3.3-r5 - avanzamento backup manuale asincrono */
.backup-job-panel{display:grid;gap:10px;margin-bottom:14px;border-left:4px solid var(--primary)}
.backup-job-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.backup-job-head p{margin:.2rem 0 0}
.backup-job-panel progress{width:100%;height:18px;accent-color:var(--primary)}
.backup-job-detail{font-size:.84rem;min-height:1.1em;overflow-wrap:anywhere}
.backup-job-done{border-left-color:#16a34a}.backup-job-error{border-left-color:#dc2626}
.backup-job-error progress{accent-color:#dc2626}
.backup-create-form button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:600px){.backup-job-head{align-items:stretch;flex-direction:column;gap:6px}}

/* Archivio 8.3.3-r10 · sblocco permanente PDF protetti in Documentale */
.pdf-unlock-box{display:grid;gap:10px;padding:13px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}
.pdf-unlock-box.compact{margin-top:4px}.pdf-unlock-fields[hidden]{display:none!important}.pdf-unlock-warning{margin:0!important;font-size:.78rem}
.bulk-pdf-file-password{display:grid!important;gap:3px;margin-top:8px;max-width:520px;font-size:.78rem}.bulk-pdf-file-password input{min-height:36px}.bulk-pdf-file-password small{font-size:.72rem}
.bulk-document-preview-row.is-pdf{align-items:start}
@media(max-width:700px){.bulk-pdf-file-password{max-width:none}.pdf-unlock-box{padding:11px 12px}}


/* ==========================================================================
   Archivio 8.4.0-r1 — GUI production-first
   Identità di sezione, scroll pagina libero, allegati quick-peek e mobile cards.
   ========================================================================== */

/* Identità semantica delle tre aree. --primary resta personalizzabile dall'utente:
   --section-accent serve soltanto a orientare visivamente il contesto. */
body[data-archive="financial"]{
  --section-accent:#16a34a;--section-accent-strong:#15803d;--section-soft:#eaf8ef;--section-ink:#14532d;
}
body[data-archive="documental"]{
  --section-accent:#2563eb;--section-accent-strong:#1d4ed8;--section-soft:#eef4ff;--section-ink:#1e3a8a;
}
body[data-archive="medical"]{
  --section-accent:#e2556f;--section-accent-strong:#be3452;--section-soft:#fff0f3;--section-ink:#881337;
}
body[data-archive="global"]{
  --section-accent:var(--primary);--section-accent-strong:var(--primary);--section-soft:var(--surface-2);--section-ink:var(--text);
}

body.archive-context-active{
  background:
    radial-gradient(circle at 8% -8%,color-mix(in srgb,var(--section-accent) 11%,transparent),transparent 30%),
    linear-gradient(180deg,color-mix(in srgb,var(--bg) 96%,var(--section-accent) 4%) 0%,var(--bg) 44%) !important;
}
body.archive-context-active .topbar{
  /* 8.4.4-r4 Stable: nessuna barra cromatica sotto la topbar.
     La sezione resta riconoscibile da switcher, label e accenti della pagina. */
  box-shadow:0 8px 24px rgba(15,23,42,.08);
}
.brand-section-label{display:flex!important;align-items:center;gap:.34rem;color:color-mix(in srgb,#fff 82%,var(--section-accent) 18%)!important}
.brand-section-label>span{font-size:.82rem}
body.archive-context-active .page-head{
  position:relative;padding-left:18px;
}
body.archive-context-active .page-head::before{
  content:"";position:absolute;left:0;top:3px;bottom:3px;width:5px;border-radius:999px;background:var(--section-accent);
  box-shadow:0 0 0 5px color-mix(in srgb,var(--section-accent) 9%,transparent);
}
body.archive-context-active .page-head .eyebrow,
body.archive-context-active .widget-kicker{color:var(--section-accent-strong)}
body.archive-context-active .record-type-pill{
  background:var(--section-soft);color:var(--section-ink);border:1px solid color-mix(in srgb,var(--section-accent) 28%,var(--border));
}

/* Selettore sezione: chiaro, compatto, colorato soltanto dove serve. */
.archive-switcher{gap:7px!important}
.archive-switch-link{
  border:1px solid transparent;border-radius:12px;padding:.62rem .78rem!important;transition:border-color .16s ease,background .16s ease,transform .16s ease;
}
.archive-switch-link:hover{transform:translateY(-1px)}
.archive-switch-financial:hover,.archive-switch-financial.active{--switch-accent:#16a34a;--switch-soft:#eaf8ef}
.archive-switch-documental:hover,.archive-switch-documental.active{--switch-accent:#2563eb;--switch-soft:#eef4ff}
.archive-switch-medical:hover,.archive-switch-medical.active{--switch-accent:#e2556f;--switch-soft:#fff0f3}
.archive-switch-link:hover,.archive-switch-link.active{
  background:var(--switch-soft)!important;color:var(--switch-accent)!important;border-color:color-mix(in srgb,var(--switch-accent) 35%,transparent)!important;
  box-shadow:0 5px 16px color-mix(in srgb,var(--switch-accent) 12%,transparent);
}
.archive-switch-link.active{font-weight:900}
.nav-secondary-row .nav-link:hover,.nav-secondary-row .nav-group-button:hover{
  border-color:color-mix(in srgb,var(--section-accent) 30%,transparent)!important;background:color-mix(in srgb,var(--section-accent) 9%,transparent)!important;
}
.nav-secondary-row .nav-new{
  background:var(--section-accent)!important;color:white!important;border-color:var(--section-accent)!important;
}
.nav-secondary-row .nav-new:hover{background:var(--section-accent-strong)!important}

/* Home: le tre scelte devono sembrare tre ambienti, non tre card identiche. */
.archive-home-grid-v8215 .archive-home-card{--card-accent:var(--primary);--card-soft:color-mix(in srgb,var(--primary) 8%,var(--panel));border-top:0!important;border-left:5px solid var(--card-accent);background:linear-gradient(145deg,var(--panel) 0%,var(--card-soft) 160%);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.archive-home-grid-v8215 .archive-home-card.archive-financial{--card-accent:#16a34a;--card-soft:#effaf2}
.archive-home-grid-v8215 .archive-home-card.archive-documental{--card-accent:#2563eb;--card-soft:#f0f5ff}
.archive-home-grid-v8215 .archive-home-card.archive-medical{--card-accent:#e2556f;--card-soft:#fff1f4}
.archive-home-grid-v8215 .archive-home-card:hover{transform:translateY(-4px);box-shadow:0 20px 48px color-mix(in srgb,var(--card-accent) 13%,rgba(15,23,42,.09));border-color:var(--card-accent)}
.archive-home-grid-v8215 .archive-home-icon{background:color-mix(in srgb,var(--card-accent) 12%,var(--panel));color:var(--card-accent);border:1px solid color-mix(in srgb,var(--card-accent) 24%,transparent)}
.archive-home-grid-v8215 .archive-home-count{background:color-mix(in srgb,var(--card-accent) 9%,var(--panel));border-color:color-mix(in srgb,var(--card-accent) 22%,var(--border));color:var(--card-accent)}
.archive-home-area-label{display:block;margin-bottom:.25rem;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--card-accent)!important}
.archive-home-grid-v8215 .archive-home-open{color:var(--card-accent)!important;border-color:color-mix(in srgb,var(--card-accent) 20%,var(--border))}
.archive-home-grid-v8215 .archive-home-open strong{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--card-accent);color:#fff}

/* Dashboard: niente più scroll annidati. L'altezza salvata è una MINIMA desktop.
   Su smartphone viene ignorata: il contenuto detta sempre l'altezza della card. */
.dashboard-widget[data-height]:not([data-height="auto"]){overscroll-behavior:auto!important;scrollbar-gutter:auto!important;
}
.dashboard-widget[data-height]:not([data-height="auto"])>.panel,
.dashboard-widget[data-height]:not([data-height="auto"])>.stats{min-height:inherit;height:auto!important}
.dashboard-summary-scroll{
  max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important;scrollbar-gutter:auto!important;padding-right:0!important;
}
.dashboard-grid{align-items:start}
.dashboard-widget>.panel{transition:border-color .16s ease,box-shadow .16s ease}
.dashboard-widget>.panel:hover{border-color:color-mix(in srgb,var(--section-accent) 20%,var(--border));box-shadow:0 16px 38px rgba(15,23,42,.075)}
.record-dashboard-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px}
.record-dashboard-main{min-width:0;color:var(--text)!important;text-decoration:none}
.record-dashboard-main>span{display:grid;gap:3px;min-width:0}.record-dashboard-main small{color:var(--muted)}
.record-dashboard-open{font-weight:900;font-size:1.15rem;color:var(--section-accent)!important}

/* Menu azioni pagina: le azioni secondarie non competono con il CTA principale. */
.page-head-actions-clean{align-items:center}
.page-action-menu{position:relative;margin:0}
.page-action-menu>summary{list-style:none;cursor:pointer;white-space:nowrap}
.page-action-menu>summary::-webkit-details-marker{display:none}
.page-action-menu[open]>summary{background:var(--surface-2)}
.page-action-popover{
  position:absolute;z-index:80;right:0;top:calc(100% + 8px);width:220px;padding:7px;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:0 20px 55px rgba(15,23,42,.18)
}
.page-action-popover a{display:flex;align-items:center;min-height:42px;padding:9px 11px;border-radius:10px;color:var(--text);font-weight:720}
.page-action-popover a:hover{background:var(--surface-2);color:var(--section-accent-strong)}

/* Filtri e analisi dell'elenco: su desktop restano immediati; su mobile si compattano. */
.records-filter-disclosure,.records-insights{padding:0!important;overflow:visible}
.records-filter-disclosure>summary,.records-insights>summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:16px 18px;
}
.records-filter-disclosure>summary::-webkit-details-marker,.records-insights>summary::-webkit-details-marker{display:none}
.records-filter-disclosure>summary>span:first-child,.records-insights>summary>span:first-child{display:grid;gap:3px}
.records-filter-disclosure>summary small,.records-insights>summary small{color:var(--muted);font-weight:520}
.records-filter-disclosure[open]>summary,.records-insights[open]>summary{border-bottom:1px solid var(--border)}
.filter-summary-count{flex:0 0 auto;padding:.35rem .65rem;border-radius:999px;background:var(--section-soft);color:var(--section-ink);font-size:.78rem;font-weight:850}
.records-filter-form{margin:0!important;padding:18px!important;border:0!important;border-radius:0 0 16px 16px!important;box-shadow:none!important}
.records-insights-content{padding:18px;margin:0!important}
.records-insights-content>.chart-card{box-shadow:none;border:1px solid var(--border);background:var(--surface-2)}
.records-mobile-list{display:none}

/* Lista mobile vera, non una tabella desktop compressa. */
.record-mobile-card{display:grid;border-left:4px solid var(--section-accent)!important}
.record-mobile-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.record-mobile-select{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.78rem;font-weight:750}
.record-mobile-select input{width:18px;height:18px;margin:0}
.record-mobile-badges{display:flex;gap:6px}.mobile-record-badge{padding:.28rem .52rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-size:.7rem;font-weight:850}.mobile-record-badge.favorite{color:#b7791f}
.record-mobile-title{font-weight:900;color:var(--text)!important;overflow-wrap:anywhere}
.record-mobile-primary-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:11px;background:var(--section-soft);color:var(--section-ink);font-size:.82rem}
.record-mobile-primary-meta span{font-weight:800}.record-mobile-primary-meta strong{font-variant-numeric:tabular-nums}
.record-mobile-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.record-mobile-meta-grid>div{display:grid;gap:2px;min-width:0;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}
.record-mobile-meta-grid small{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em}.record-mobile-meta-grid span{font-size:.84rem;font-weight:720;overflow-wrap:anywhere}
.record-mobile-actions{display:grid;grid-template-columns:auto 1fr 1fr;gap:8px;align-items:center}
.record-mobile-actions .button{margin:0}

/* Quick peek allegati. Il pannello vive nel body per non essere tagliato da table-wrap/overflow. */
.attachment-peek-host{display:inline-flex;align-items:center}
.attachment-peek-trigger{
  display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:42px;min-height:34px;padding:5px 8px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);font:inherit;font-size:.78rem;font-weight:850;cursor:pointer;transition:.15s
}
.attachment-peek-trigger:hover,.attachment-peek-trigger[aria-expanded="true"]{
  border-color:color-mix(in srgb,var(--section-accent) 42%,var(--border));background:var(--section-soft);color:var(--section-ink);
}
.attachment-peek-empty{color:var(--muted)}
.record-table-row{transition:background .14s ease}
.record-table-row:hover,.record-table-row.peek-open{background:color-mix(in srgb,var(--section-accent) 5%,var(--panel))}
.attachment-peek-floating{position:fixed;z-index:1800;pointer-events:auto}
.attachment-peek-panel{overflow:hidden;border:1px solid color-mix(in srgb,var(--section-accent) 24%,var(--border));border-radius:16px;background:var(--panel);box-shadow:0 24px 70px rgba(15,23,42,.25);color:var(--text)}
.attachment-peek-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 15px;border-bottom:1px solid var(--border);background:linear-gradient(145deg,var(--section-soft),var(--panel))}
.attachment-peek-head>span:first-child{display:grid;gap:2px;min-width:0}.attachment-peek-head small{color:var(--section-accent-strong)!important;text-transform:uppercase;letter-spacing:.08em;font-weight:900;font-size:.64rem}
.attachment-peek-head strong{font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.attachment-peek-count{display:grid;place-items:center;min-width:30px;height:30px;padding:0 7px;border-radius:999px;background:var(--section-accent);color:#fff;font-size:.78rem;font-weight:900}
.attachment-peek-files{display:grid;padding:7px}
.attachment-peek-file{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px;border-radius:11px;color:var(--text)!important;text-decoration:none}
.attachment-peek-file:hover{background:var(--section-soft)}
.attachment-peek-file-icon{font-size:1.18rem}.attachment-peek-file>span:nth-child(2){display:grid;gap:1px;min-width:0}.attachment-peek-file strong{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-peek-file small{font-size:.66rem;color:var(--muted)!important}
.attachment-peek-file>b{color:var(--section-accent);font-size:.95rem}
.attachment-peek-more{padding:4px 15px 10px;color:var(--muted);font-size:.75rem}
.attachment-peek-foot{border-top:1px solid var(--border);padding:8px}.attachment-peek-foot a{display:flex;align-items:center;justify-content:space-between;padding:8px;border-radius:9px;color:var(--section-accent-strong)!important;font-weight:850;font-size:.8rem}.attachment-peek-foot a:hover{background:var(--section-soft)}
body.attachment-peek-open{}

/* Tema scuro: i colori identificano la sezione senza trasformare l'intera UI in un semaforo. */
body[data-theme="dark"][data-archive="financial"]{--section-accent:#4ade80;--section-accent-strong:#86efac;--section-soft:#263c31;--section-ink:#dcfce7}
body[data-theme="dark"][data-archive="documental"]{--section-accent:#60a5fa;--section-accent-strong:#93c5fd;--section-soft:#28384d;--section-ink:#dbeafe}
body[data-theme="dark"][data-archive="medical"]{--section-accent:#fb7185;--section-accent-strong:#fda4af;--section-soft:#49303a;--section-ink:#ffe4e6}
body[data-theme="dark"] .archive-switch-financial:hover,body[data-theme="dark"] .archive-switch-financial.active{--switch-soft:#263c31}
body[data-theme="dark"] .archive-switch-documental:hover,body[data-theme="dark"] .archive-switch-documental.active{--switch-soft:#28384d}
body[data-theme="dark"] .archive-switch-medical:hover,body[data-theme="dark"] .archive-switch-medical.active{--switch-soft:#49303a}
body[data-theme="dark"] .page-action-popover,
body[data-theme="dark"] .attachment-peek-panel{background:#2e3440;border-color:#566274}
body[data-theme="dark"] .records-insights-content>.chart-card{background:#353d4a!important}
body[data-theme="dark"] .archive-home-grid-v8215 .archive-home-card{--card-soft:#343c49;background:linear-gradient(145deg,#2e3440,#343c49)}
body[data-theme="dark"] .archive-home-grid-v8215 .archive-home-card.archive-financial{--card-accent:#4ade80}
body[data-theme="dark"] .archive-home-grid-v8215 .archive-home-card.archive-documental{--card-accent:#60a5fa}
body[data-theme="dark"] .archive-home-grid-v8215 .archive-home-card.archive-medical{--card-accent:#fb7185}

/* Stesso comportamento per tema "Sistema" quando il device è dark. */
@media(prefers-color-scheme:dark){
  body[data-theme="system"][data-archive="financial"]{--section-accent:#4ade80;--section-accent-strong:#86efac;--section-soft:#263c31;--section-ink:#dcfce7}
  body[data-theme="system"][data-archive="documental"]{--section-accent:#60a5fa;--section-accent-strong:#93c5fd;--section-soft:#28384d;--section-ink:#dbeafe}
  body[data-theme="system"][data-archive="medical"]{--section-accent:#fb7185;--section-accent-strong:#fda4af;--section-soft:#49303a;--section-ink:#ffe4e6}
  body[data-theme="system"] .page-action-popover,body[data-theme="system"] .attachment-peek-panel{background:#2e3440;border-color:#566274}
  body[data-theme="system"] .records-insights-content>.chart-card{background:#353d4a!important}
}

/* Smartphone/tablet: niente duplicati nel drawer e nessun layout oltre i limiti stabilizzati. */
@media(max-width:900px){
  .mobile-menu-archive-group{display:none!important}
  .archive-switcher{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
  .archive-switcher>span{font-size:.7rem!important;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--muted)}
  .archive-switch-link{width:100%!important;min-height:44px!important;justify-content:flex-start!important}
  .mobile-tools-inline{margin-top:6px!important}
  .mobile-bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .dashboard-widget,.dashboard-widget[data-height]:not([data-height="auto"]){min-height:0!important;height:auto!important;overflow:visible!important}
  .dashboard-widget>.panel,.dashboard-widget>.stats{min-height:0!important}
  .records-desktop-table{display:none!important}
  .records-mobile-list{display:grid;gap:11px}
  .records-filter-disclosure>summary,.records-insights>summary{min-height:58px;padding:14px 15px}
  .records-filter-disclosure:not([open])>summary,.records-insights:not([open])>summary{border-bottom:0}
  .page-head-actions-clean{display:grid!important;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr) auto!important;width:100%}
  .page-head-actions-clean>.button{width:100%!important}
  .page-head-actions-clean>.smart-back,.page-action-menu>summary{width:44px!important;padding-left:0!important;padding-right:0!important}
  .page-action-menu>summary>span{display:none}
  .page-action-popover{right:0;width:min(260px,calc(100vw - 28px))}
}
@media(max-width:620px){
  body.archive-context-active .page-head{padding-left:13px}
  body.archive-context-active .page-head::before{width:4px}
  .archive-home-hero p strong{font-weight:850}
  .archive-home-grid-v8215 .archive-home-card{border-left-width:4px}
  .page-head-actions-clean{grid-template-columns:44px minmax(0,1fr) 44px!important}
  .page-head-actions-clean>a.button.secondary,.page-head-actions-clean>a.button.preserve-context-link{grid-column:2/3}
  .page-action-menu{grid-column:3/4;grid-row:1}
  .page-head-actions-clean>.smart-back{grid-column:1/2;grid-row:1}
  .records-filter-disclosure>summary small,.records-insights>summary small{display:none}
  .filter-summary-count{font-size:.72rem}
  .record-mobile-meta-grid{grid-template-columns:1fr}
  .record-mobile-actions{grid-template-columns:auto 1fr 1fr}
  .record-mobile-actions .attachment-peek-trigger{height:100%}
  .attachment-peek-floating{
    position:fixed!important;left:8px!important;right:8px!important;top:auto!important;
    bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;width:auto!important;max-width:none!important;
    z-index:1900;
  }
  .attachment-peek-panel{max-height:min(58vh,540px);overflow:auto;border-radius:18px}
  .attachment-peek-head{position:sticky;top:0;z-index:2}
  .attachment-peek-file{padding:11px 9px;min-height:50px}
  .attachment-peek-file strong{font-size:.86rem}
}
@media(max-width:430px){
  .record-mobile-actions{grid-template-columns:1fr 1fr}
  .record-mobile-actions .attachment-peek-host{grid-column:1/-1}
  .record-mobile-actions .attachment-peek-trigger{width:100%}
}

/* Riduce il movimento per chi lo richiede e rende il comportamento touch più prevedibile. */
@media(prefers-reduced-motion:reduce){
  .archive-home-card,.archive-switch-link,.dashboard-widget>.panel,.record-table-row,.attachment-peek-trigger{transition:none!important}
}


/* ========================================================================== 
   Archivio 8.4.0-r2 — rifiniture collaudo GUI reale
   Dashboard scroll opt-in, editor riordinabile, mobile actions e light contrast.
   ========================================================================== */

/* Personalizzazione: il drag resta disponibile, ma i pulsanti su/giu' rendono
   riordinabili anche widget piu' alti della viewport. La toolbar resta visibile. */
.dashboard-grid.editing .widget-tools{z-index:14;flex-wrap:wrap;justify-content:flex-start;}
.widget-move-controls{display:inline-flex;gap:4px;align-items:center}
.widget-move-button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:9px;background:var(--panel);color:var(--text);font:inherit;font-weight:900;cursor:pointer}
.widget-move-button:hover{border-color:color-mix(in srgb,var(--section-accent) 45%,var(--border));background:var(--section-soft);color:var(--section-ink)}
.widget-tools .widget-hidden-label{margin-left:auto}

/* L'altezza scelta torna a essere una dimensione reale del widget. Solo le zone
   che possono contenere elenchi diventano scrollabili, e soltanto dopo attivazione. */
.dashboard-widget[data-height]:not([data-height="auto"]){height:auto!important;min-height:0!important;overflow:visible!important}
.dashboard-widget[data-height]:not([data-height="auto"])>.panel{
  height:var(--widget-height)!important;min-height:var(--widget-min-height)!important;max-height:var(--widget-height)!important;overflow:hidden!important
}
.dashboard-widget[data-height]:not([data-height="auto"]) .dashboard-scroll-region,
.dashboard-widget[data-height]:not([data-height="auto"]) .dashboard-summary-scroll,
.dashboard-widget[data-height]:not([data-height="auto"]) .operational-list{
  max-height:calc(var(--widget-height) - 104px)!important;overflow-y:hidden!important;overflow-x:hidden!important;
  overscroll-behavior:auto!important;scrollbar-gutter:auto!important;padding-right:4px!important
}
.dashboard-widget[data-height]:not([data-height="auto"]) .donut-layout .dashboard-scroll-region,
.dashboard-widget[data-height]:not([data-height="auto"]) .donut-layout .dashboard-summary-scroll{max-height:calc(var(--widget-height) - 118px)!important}
.dashboard-widget.dashboard-scroll-active .dashboard-scroll-region,
.dashboard-widget.dashboard-scroll-active .dashboard-summary-scroll,
.dashboard-widget.dashboard-scroll-active .operational-list{overscroll-behavior:auto!important;}
.dashboard-scroll-toggle{
  display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:0 0 auto;min-height:30px;padding:4px 8px;
  border:1px solid color-mix(in srgb,var(--section-accent) 24%,var(--border));border-radius:999px;
  background:var(--panel);color:var(--muted);font:inherit;font-size:.70rem;font-weight:850;cursor:pointer
}
.dashboard-scroll-toggle:hover{background:var(--section-soft);color:var(--section-ink);border-color:color-mix(in srgb,var(--section-accent) 44%,var(--border))}
.dashboard-scroll-active .dashboard-scroll-toggle{background:var(--section-accent);border-color:var(--section-accent);color:#fff}
.dashboard-scroll-toggle[hidden],.dashboard-grid.editing .dashboard-scroll-toggle{display:none!important}

/* Header dashboard coerente in tutte le sezioni; DICOM resta un'azione ausiliaria
   separata nel Medico per non alterare la sequenza Tutti -> Anno -> Personalizza. */
.dashboard-aux-actions{display:flex;justify-content:flex-end;margin:-10px 0 18px}
.dashboard-aux-actions .button{white-space:nowrap}

/* Cestino mobile: in tema chiaro il ghost era troppo trasparente. Dark resta invariato. */
@media(max-width:900px){
  body[data-theme="light"] .dashboard-trash-quick-action{
    background:var(--panel)!important;color:var(--text)!important;border-color:color-mix(in srgb,var(--section-accent) 30%,var(--border))!important;
    box-shadow:0 4px 12px rgba(15,23,42,.07)
  }
}
@media(max-width:900px) and (prefers-color-scheme:light){
  body[data-theme="system"] .dashboard-trash-quick-action{
    background:var(--panel)!important;color:var(--text)!important;border-color:color-mix(in srgb,var(--section-accent) 30%,var(--border))!important;
    box-shadow:0 4px 12px rgba(15,23,42,.07)
  }
}

/* Card mobile: se non ci sono allegati, il trattino non occupa una colonna e
   Apri/Modifica rimangono sempre affiancati e simmetrici. */
.record-mobile-actions.no-attachments{grid-template-columns:1fr 1fr!important}
.record-mobile-actions.no-attachments>.attachment-peek-empty{display:none!important}
.record-mobile-actions.no-attachments .button,.record-mobile-actions.has-attachments .button{width:100%;justify-content:center}

@media(max-width:900px){
  /* Anche su mobile l'altezza scelta viene rispettata: scroll pagina libero finche'
     l'utente non attiva esplicitamente ↕ Scorri nel widget. */
  .dashboard-widget[data-height]:not([data-height="auto"])>.panel{
    height:var(--widget-height)!important;min-height:var(--widget-min-height)!important;max-height:var(--widget-height)!important
  }
  .dashboard-head-actions{display:grid!important;grid-template-columns:minmax(0,1fr) 104px;gap:8px;width:100%}
  .dashboard-head-actions>*{min-width:0;width:100%!important;box-sizing:border-box}
  .dashboard-head-actions .dashboard-trash-quick-action{grid-column:1/-1}
  .dashboard-head-actions>a.button.secondary{grid-column:1/2}
  .dashboard-head-actions .dashboard-year-filter{grid-column:2/3;grid-row:2}
  .dashboard-head-actions #dashboard-edit-toggle{grid-column:1/-1}
  .dashboard-year-filter select{width:100%;min-width:0}
  .dashboard-aux-actions{justify-content:stretch;margin:-8px 0 14px}
  .dashboard-aux-actions .button{width:100%;justify-content:center}
  .dashboard-grid.editing .widget-tools{top:78px}
}
@media(max-width:430px){
  .record-mobile-actions.has-attachments{grid-template-columns:1fr 1fr!important}
  .record-mobile-actions.has-attachments .attachment-peek-host{grid-column:1/-1}
  .dashboard-scroll-toggle span:last-child{display:none}
  .dashboard-scroll-toggle{width:32px;height:32px;padding:0}
}

/* ========================================================================== 
   Archivio 8.4.0-r3 — rifiniture UX dashboard dopo collaudo r2
   Scroll interno pilotato, editor compatto, DICOM evidente e filtri chiusi.
   ========================================================================== */

/* In personalizzazione non si trascina più il widget reale: ogni pannello diventa
   una riga compatta e ordinabile. L'ordine resta quello del DOM e viene salvato
   nello stesso layout di sempre; fuori dall'editor il contenuto torna intatto. */
.dashboard-grid.editing{
  display:flex!important;flex-direction:column!important;gap:10px!important;align-items:stretch!important
}
.dashboard-grid.editing .dashboard-widget,
.dashboard-grid-v8237.editing .dashboard-widget,
.dashboard-grid-v8237.editing .dashboard-widget[data-size="1"],
.dashboard-grid-v8237.editing .dashboard-widget[data-size="2"],
.dashboard-grid-v8237.editing .dashboard-widget[data-size="3"]{
  display:block!important;width:100%!important;grid-column:auto!important;height:auto!important;min-height:0!important;
  max-height:none!important;overflow:visible!important;opacity:1
}
.dashboard-grid.editing .dashboard-widget[data-enabled="0"]{opacity:.58}
.dashboard-grid.editing .dashboard-widget>:not(.widget-tools){display:none!important}
.dashboard-grid.editing .widget-tools{
  position:relative!important;top:auto!important;display:flex!important;align-items:center;gap:8px;min-height:64px;
  width:100%;padding:10px 12px;border:1px solid color-mix(in srgb,var(--section-accent) 18%,var(--border));
  border-radius:14px;background:var(--panel);box-shadow:0 5px 16px rgba(15,23,42,.06);backdrop-filter:none
}
.widget-edit-title{min-width:150px;flex:1 1 220px;font-size:.92rem;font-weight:900;color:var(--text);overflow-wrap:anywhere}
.dashboard-grid.editing .drag-handle{cursor:grab;flex:0 0 auto;padding:8px 5px;border-radius:8px;color:var(--muted)}
.dashboard-grid.editing .drag-handle:active{cursor:grabbing}
.dashboard-grid.editing .widget-tools .widget-hidden-label{margin-left:0}
.dashboard-grid.editing .widget-tools label{flex:0 1 150px;min-width:118px}
.dashboard-grid.editing .widget-tools select{min-width:0;width:100%}

/* Scroll opt-in: la regione deve essere realmente scrollabile e ricevere gesture
   verticali. gui.js pilota wheel/touch mentre è attiva e lascia la pagina ai bordi. */
.dashboard-widget.dashboard-scroll-active .dashboard-scroll-region,
.dashboard-widget.dashboard-scroll-active .dashboard-summary-scroll,
.dashboard-widget.dashboard-scroll-active .operational-list{
  overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;
  scrollbar-gutter:stable!important;cursor:ns-resize
}

/* Libreria DICOM: azione clinica speciale, volutamente più evidente del semplice ghost. */
.dashboard-aux-actions .dicom-library-quick-action{
  min-height:44px;padding:10px 16px;border:1px solid #0ea5e9!important;border-radius:12px;
  background:linear-gradient(135deg,#0284c7,#2563eb)!important;color:#fff!important;font-weight:900;
  box-shadow:0 8px 20px rgba(2,132,199,.20)
}
.dashboard-aux-actions .dicom-library-quick-action:hover{
  transform:translateY(-1px);box-shadow:0 12px 26px rgba(2,132,199,.27);filter:saturate(1.06)
}
body[data-theme="dark"] .dashboard-aux-actions .dicom-library-quick-action{color:#fff!important;border-color:#38bdf8!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .dashboard-aux-actions .dicom-library-quick-action{color:#fff!important;border-color:#38bdf8!important}}

@media(max-width:900px){
  .dashboard-grid.editing .widget-tools{gap:7px;flex-wrap:wrap;align-items:flex-end}
  .dashboard-grid.editing .drag-handle{order:1}
  .dashboard-grid.editing .widget-edit-title{order:2;flex:1 1 calc(100% - 110px);min-width:0}
  .dashboard-grid.editing .widget-move-controls{order:3;margin-left:auto}
  .dashboard-grid.editing .widget-hidden-label{order:4}
  .dashboard-grid.editing .widget-tools label{order:5;flex:1 1 calc(50% - 6px);min-width:130px}
  .dashboard-aux-actions .dicom-library-quick-action{width:100%;justify-content:center;min-height:48px}
}

/* --------------------------------------------------------------------------
   Archivio 8.4.1-r2 — rifiniture Home, Login, favicon e drawer smartphone
   -------------------------------------------------------------------------- */

/* Home: la scelta della sezione è il contenuto primario. */
.archive-home-hero-v841{
  grid-template-columns:1fr!important;
  gap:0!important;
  margin-bottom:18px!important;
  padding:24px 26px!important;
}
.archive-home-hero-v841 .archive-home-hero-copy{max-width:760px}
.archive-home-hero-v841 h1{margin-bottom:.35rem!important}
.archive-home-hero-v841 p{font-size:.96rem!important}
.archive-home-grid-v841 .archive-home-card{gap:12px!important;min-height:190px}
.archive-home-grid-v841 .archive-home-card-copy-v841{min-height:0!important;display:grid;align-content:center;gap:2px;flex:1}
.archive-home-grid-v841 .archive-home-card-copy-v841 h2{font-size:1.42rem;margin:.05rem 0}
.archive-home-grid-v841 .archive-home-card-copy-v841 .archive-home-area-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--muted)}
.archive-home-grid-v841 .archive-home-open{padding-top:12px}

/* Il riepilogo generale resta completo e cliccabile, ma chiuso all'apertura. */
.home-overview-disclosure{border:1px solid var(--border);border-radius:18px;background:var(--panel);box-shadow:0 7px 22px rgba(15,23,42,.05);overflow:hidden}
.home-overview-summary{list-style:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:72px;padding:15px 17px;cursor:pointer;user-select:none}
.home-overview-summary::-webkit-details-marker{display:none}
.home-overview-summary:hover{background:color-mix(in srgb,var(--primary) 4%,var(--panel))}
.home-overview-summary-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:color-mix(in srgb,var(--primary) 9%,var(--panel));color:var(--primary);font-size:1.2rem;font-weight:900}
.home-overview-summary-copy{display:grid;gap:3px;min-width:0}.home-overview-summary-copy strong{font-size:1rem}.home-overview-summary-copy small{font-size:.78rem;color:var(--muted)!important;white-space:normal}
.home-overview-summary-action{display:flex;align-items:center;gap:8px;color:var(--primary);font-size:.78rem;font-weight:850}.home-overview-summary-action b{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:color-mix(in srgb,var(--primary) 9%,var(--panel));font-size:1rem;transition:transform .16s ease}
.home-overview-disclosure[open] .home-overview-summary-action b{transform:rotate(180deg)}
.home-overview-disclosure[open] .home-overview-summary-label{font-size:0}.home-overview-disclosure[open] .home-overview-summary-label::after{content:"Nascondi";font-size:.78rem}
.home-overview-content{padding:15px 17px 17px;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg) 42%,var(--panel))}

/* Login 8.4.1: desktop più pulito, smartphone senza offset o colonne deformate. */
.login-shell-v841{
  width:min(1060px,100%);
  min-height:590px;
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)!important;
  margin:28px auto!important;
  border:1px solid color-mix(in srgb,var(--primary) 16%,var(--border))!important;
  border-radius:28px!important;
  overflow:hidden!important;
  background:var(--panel)!important;
  box-shadow:0 30px 90px rgba(15,23,42,.16)!important;
}
.login-shell-v841 .login-brand-panel{
  padding:clamp(34px,5vw,64px)!important;
  display:flex!important;flex-direction:column!important;justify-content:center!important;gap:25px!important;
  background:linear-gradient(145deg,#102554 0%,#173b78 54%,#2563eb 100%)!important;
  color:#fff!important;position:relative;overflow:hidden
}
.login-shell-v841 .login-brand-panel::before,.login-shell-v841 .login-brand-panel::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.login-shell-v841 .login-brand-panel::before{width:320px;height:320px;right:-150px;top:-170px;background:rgba(255,255,255,.07)}
.login-shell-v841 .login-brand-panel::after{width:230px;height:230px;left:-120px;bottom:-120px;background:rgba(96,165,250,.17)}
.login-brand-topline,.login-brand-copy,.login-section-strip,.login-shell-v841 .login-meta{position:relative;z-index:1}
.login-brand-topline{display:flex;align-items:center;gap:14px}.login-shell-v841 .login-brand-icon{width:62px;height:62px;margin:0!important;display:grid;place-items:center;border-radius:18px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.20);font-size:1.9rem;box-shadow:0 12px 32px rgba(0,0,0,.14)}
.login-brand-name{display:grid;gap:2px}.login-brand-name .eyebrow{color:#9bdcfb!important;-webkit-text-fill-color:#9bdcfb!important;font-size:.67rem;letter-spacing:.11em}.login-brand-name strong{font-size:1.12rem;color:#fff!important}
.login-shell-v841 .login-brand-copy h1{font-size:clamp(2.25rem,4vw,4rem)!important;line-height:1.02;letter-spacing:-.035em;color:#fff!important;-webkit-text-fill-color:#fff!important;margin:0 0 12px!important;text-shadow:0 3px 18px rgba(0,0,0,.16)}
.login-shell-v841 .login-lead{margin:0!important;max-width:560px!important;color:#deebff!important;-webkit-text-fill-color:#deebff!important;font-size:1rem!important;line-height:1.65!important}
.login-section-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.login-section-strip span{display:flex;align-items:center;gap:7px;min-width:0;padding:10px 11px;border-radius:12px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);color:#f5f9ff;font-size:.78rem;font-weight:800}.login-section-strip b{font-size:1rem}
.login-shell-v841 .login-meta{display:flex!important;gap:14px!important;flex-wrap:wrap!important;margin:0!important;color:#cfe1ff!important;-webkit-text-fill-color:#cfe1ff!important;font-size:.75rem!important;font-weight:750!important}
.login-shell-v841 .professional-login-card{margin:0!important;max-width:none!important;border:0!important;border-radius:0!important;padding:clamp(32px,4.5vw,56px)!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:20px!important;background:var(--panel)!important;text-align:left!important;min-width:0}
.login-card-heading{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:13px}.login-shell-v841 .login-card-mark{width:54px;height:54px;margin:0!important;display:grid;place-items:center;border-radius:16px;background:color-mix(in srgb,var(--primary) 9%,var(--panel));border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));font-size:1.55rem;box-shadow:none}.login-card-heading h2{margin:2px 0 3px!important;font-size:1.35rem}.login-card-heading .eyebrow{color:var(--primary)}.login-card-heading .muted{margin:0;font-size:.84rem}
.login-form-v841{gap:15px!important;margin:0!important}.login-form-v841 label{gap:7px!important;text-align:left!important;color:var(--text)!important;font-size:.84rem!important;font-weight:800!important;min-width:0}.login-form-v841 input{min-height:50px!important;width:100%!important;min-width:0!important;border-radius:12px!important;background:var(--panel)!important;color:var(--text)!important}.login-shell-v841 .password-field{display:grid!important;grid-template-columns:minmax(0,1fr) 48px!important;gap:7px!important;min-width:0}.login-shell-v841 .password-field button{width:48px;min-width:48px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);color:var(--text);cursor:pointer}.login-shell-v841 .login-submit{width:100%;min-height:52px;border-radius:13px!important;font-size:.96rem;margin-top:3px;box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 22%,transparent)}
.login-shell-v841 .login-security-note{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;margin:0!important;padding:11px 12px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);color:var(--muted)}.login-shell-v841 .login-security-note small{color:inherit!important;line-height:1.45}

/* Gli strumenti contestuali devono essere presenti nel drawer smartphone. Su
   tablet restano nell'archive-switcher per non creare doppioni. */
.mobile-menu-section-tools-group{display:none!important}

body[data-theme="dark"] .home-overview-disclosure{background:#2e3440;border-color:#566274;box-shadow:0 10px 28px rgba(0,0,0,.18)}
body[data-theme="dark"] .home-overview-summary:hover{background:#343d49}body[data-theme="dark"] .home-overview-content{background:#29313d;border-top-color:#566274}
body[data-theme="dark"] .login-shell-v841{background:#262f3b!important;border-color:#4c5868!important;box-shadow:0 30px 90px rgba(0,0,0,.42)!important}
body[data-theme="dark"] .login-shell-v841 .login-brand-panel{background:linear-gradient(145deg,#17233a 0%,#22354e 55%,#24485a 100%)!important}
body[data-theme="dark"] .login-shell-v841 .professional-login-card{background:#262f3b!important}
body[data-theme="dark"] .login-shell-v841 .login-card-mark,body[data-theme="dark"] .login-shell-v841 .login-security-note,body[data-theme="dark"] .login-shell-v841 .password-field button{background:#303b49!important;border-color:#4f5e70!important}
body[data-theme="dark"] .login-shell-v841 .login-form-v841 input{background:#313c4b!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;border-color:#596579!important}

@media(prefers-color-scheme:dark){
  body[data-theme="system"] .home-overview-disclosure{background:#2e3440;border-color:#566274}body[data-theme="system"] .home-overview-summary:hover{background:#343d49}body[data-theme="system"] .home-overview-content{background:#29313d;border-top-color:#566274}
  body[data-theme="system"] .login-shell-v841{background:#262f3b!important;border-color:#4c5868!important}body[data-theme="system"] .login-shell-v841 .login-brand-panel{background:linear-gradient(145deg,#17233a 0%,#22354e 55%,#24485a 100%)!important}body[data-theme="system"] .login-shell-v841 .professional-login-card{background:#262f3b!important}body[data-theme="system"] .login-shell-v841 .login-card-mark,body[data-theme="system"] .login-shell-v841 .login-security-note,body[data-theme="system"] .login-shell-v841 .password-field button{background:#303b49!important;border-color:#4f5e70!important}body[data-theme="system"] .login-shell-v841 .login-form-v841 input{background:#313c4b!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important;border-color:#596579!important}
}

@media(max-width:900px){
  .archive-home-grid-v841 .archive-home-card{min-height:0}
}
@media(max-width:760px){
  .login-shell-v841{grid-template-columns:1fr!important;min-height:0!important;width:100%!important;margin:4px auto 12px!important;border-radius:22px!important}
  .login-shell-v841 .login-brand-panel{padding:24px 21px 19px!important;gap:16px!important}
  .login-shell-v841 .login-brand-icon{width:50px;height:50px;border-radius:15px;font-size:1.55rem}
  .login-brand-name strong{font-size:1rem}.login-shell-v841 .login-brand-copy h1{font-size:1.85rem!important;margin-bottom:7px!important}.login-shell-v841 .login-lead{font-size:.88rem!important;line-height:1.48!important}
  .login-section-strip{gap:6px}.login-section-strip span{justify-content:center;gap:5px;padding:8px 6px;font-size:.68rem;text-align:center}.login-section-strip b{font-size:.9rem}
  .login-shell-v841 .login-meta{font-size:.68rem!important;gap:10px!important}
  .login-shell-v841 .professional-login-card{padding:23px 21px 25px!important;gap:17px!important}
  .login-card-heading{grid-template-columns:46px minmax(0,1fr);gap:11px}.login-shell-v841 .login-card-mark{width:46px;height:46px;border-radius:14px;font-size:1.35rem}.login-card-heading h2{font-size:1.18rem!important}.login-card-heading .muted{font-size:.78rem}
  .login-form-v841{gap:13px!important}.login-form-v841 input{min-height:48px!important}.login-shell-v841 .login-submit{min-height:50px}
  .home-overview-summary{padding:13px 14px;min-height:68px}.home-overview-summary-icon{width:38px;height:38px}.home-overview-summary-copy small{font-size:.72rem}.home-overview-content{padding:12px}
}
@media(max-width:600px), (max-width:900px) and (max-height:600px){
  .mobile-account-actions .mobile-menu-section-tools-group{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;padding:10px 0 2px!important;border-top:1px solid var(--drawer-border,#d6dfeb)!important}
  .mobile-account-actions .mobile-menu-section-tools-group .mobile-menu-section-title{display:block!important}
}
@media(max-width:420px){
  .archive-home-hero-v841{padding:20px!important}.archive-home-hero-v841 h1{font-size:1.85rem!important}.archive-home-hero-v841 p{font-size:.88rem!important}
  .login-shell-v841{border-radius:18px!important}.login-shell-v841 .login-brand-panel{padding:21px 18px 17px!important}.login-shell-v841 .professional-login-card{padding:21px 18px 23px!important}.login-section-strip span{font-size:.64rem;padding:7px 4px}.home-overview-summary-action .home-overview-summary-label{display:none}
}


/* ==========================================================================
   Archivio 8.4.2-r2 — identità ufficiale programma
   ========================================================================== */
.program-brand-image{display:block;width:100%;height:100%;object-fit:contain;filter:none}
.brand-icon .program-brand-image{width:34px;height:34px}
.brand-section-active .brand-icon .program-brand-image{width:38px;height:38px}
.login-brand-icon .program-brand-image{width:100%;height:100%;transform:scale(1.22)}
.login-card-mark .program-brand-image{width:100%;height:100%;object-fit:contain;transform:scale(1.12)}
@media(max-width:620px){.brand-icon .program-brand-image{width:31px;height:31px}.login-brand-icon .program-brand-image{transform:scale(1.14)}}


/* ==========================================================================
   Archivio 8.4.2-r2 — widget senza scroll interno
   ========================================================================== */
.dashboard-widget[data-height]:not([data-height="auto"]),
.dashboard-widget[data-height]:not([data-height="auto"])>.panel,
.dashboard-widget[data-height]:not([data-height="auto"])>.stats,
.dashboard-widget[data-height]:not([data-height="auto"])>.balance-stats{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
.dashboard-expand-region{max-height:none!important;height:auto!important;overflow:visible!important;overscroll-behavior:auto!important;scrollbar-gutter:auto!important;padding-right:0!important}
.dashboard-expand-region>[hidden],.dashboard-scroll-toggle{display:none!important}
.dashboard-expand-toggle{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:38px;margin-top:10px;padding:7px 11px;border:1px solid color-mix(in srgb,var(--section-accent) 24%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--section-accent) 5%,var(--panel));color:var(--section-accent-strong);font:inherit;font-size:.78rem;font-weight:850;cursor:pointer}
.dashboard-expand-toggle:hover{background:var(--section-soft);border-color:color-mix(in srgb,var(--section-accent) 42%,var(--border))}
.dashboard-expand-toggle[hidden]{display:none!important}
.dashboard-expanded .dashboard-expand-toggle{background:var(--surface-2);color:var(--muted)}
@media(max-width:700px){.dashboard-expand-toggle{min-height:42px;font-size:.82rem}}

/* 8.4.2 · Manutenzione proattiva */
.maintenance-health-hero{border-left:4px solid #16a34a;background:linear-gradient(145deg,color-mix(in srgb,#16a34a 7%,var(--panel)),var(--panel))}
.maintenance-safe-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#dcfce7;color:#166534;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.maintenance-diagnostic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.maintenance-action-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 14px;align-items:start}.maintenance-action-card form{grid-column:2}.maintenance-card-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--surface-2);font-size:1.35rem}.maintenance-action-card h2{margin:.35rem 0 .25rem}.maintenance-action-card p{margin:.2rem 0;color:var(--muted)}
.maintenance-compact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.maintenance-mini-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.maintenance-mini-card h3{margin:0}.maintenance-mini-card p{margin:0;color:var(--muted);font-size:.84rem;flex:1}.maintenance-mini-card form{margin-top:4px}
.maintenance-links .actions{flex-wrap:wrap}
body[data-theme="dark"] .maintenance-safe-pill{background:#19452b;color:#bbf7d0}
@media(prefers-color-scheme:dark){body[data-theme="system"] .maintenance-safe-pill{background:#19452b;color:#bbf7d0}}
@media(max-width:900px){.maintenance-diagnostic-grid,.maintenance-compact-grid{grid-template-columns:1fr}.maintenance-action-card{grid-template-columns:auto minmax(0,1fr)}.maintenance-action-card form{grid-column:1/-1}.maintenance-action-card form .button{width:100%}.maintenance-health-hero .section-heading{align-items:flex-start}}


/* ========================================================================== 
   Archivio 8.4.2-r2 - rifiniture collaudo: grafici, manutenzione e Home
   ========================================================================== */

/* Nei widget grafici l'altezza scelta non e' solo una densita' per le righe:
   modifica realmente lo spazio del grafico. Auto mantiene il layout naturale. */
.dashboard-widget[data-block="monthly"][data-height]:not([data-height="auto"]) .vertical-bars,
.dashboard-widget[data-block="section_monthly"][data-height]:not([data-height="auto"]) .vertical-bars{
  height:max(150px,calc(var(--widget-height) - 116px))!important;
  min-height:150px;
}
.dashboard-widget[data-block="types"][data-height]:not([data-height="auto"]) .donut-layout,
.dashboard-widget[data-block="section_types"][data-height]:not([data-height="auto"]) .donut-layout{
  min-height:max(150px,calc(var(--widget-height) - 116px));
  align-items:center;
}
.dashboard-widget[data-block="types"][data-height="260"] .donut,
.dashboard-widget[data-block="section_types"][data-height="260"] .donut{width:132px}
.dashboard-widget[data-block="types"][data-height="380"] .donut,
.dashboard-widget[data-block="section_types"][data-height="380"] .donut{width:160px}
.dashboard-widget[data-block="types"][data-height="520"] .donut,
.dashboard-widget[data-block="section_types"][data-height="520"] .donut{width:190px}
.dashboard-widget[data-block="types"][data-height="680"] .donut,
.dashboard-widget[data-block="section_types"][data-height="680"] .donut{width:220px}
.dashboard-widget[data-block="types"][data-height="260"] .donut:after,
.dashboard-widget[data-block="section_types"][data-height="260"] .donut:after{inset:20px}
.dashboard-widget[data-block="types"][data-height="380"] .donut:after,
.dashboard-widget[data-block="section_types"][data-height="380"] .donut:after{inset:24px}

/* I controlli diagnostici/ottimizzazione usano lo stesso CTA blu delle altre
   azioni di Manutenzione. Rosso resta riservato alle operazioni distruttive. */
.maintenance-action-card form .button:not(.danger),
.maintenance-mini-card form .button:not(.danger){
  background:var(--primary);border-color:var(--primary);color:#fff;
  box-shadow:0 5px 12px color-mix(in srgb,var(--primary) 20%,transparent)
}
.maintenance-action-card form .button:not(.danger):hover,
.maintenance-mini-card form .button:not(.danger):hover{
  filter:brightness(.96);transform:translateY(-1px)
}

/* Home: la freccia rimane collegata alla CTA ma respira rispetto al testo. */
.archive-home-grid-v841 .archive-home-open{
  justify-content:flex-start!important;
  gap:22px!important;
}

@media(max-width:700px){
  .dashboard-widget[data-block="monthly"][data-height]:not([data-height="auto"]) .vertical-bars,
  .dashboard-widget[data-block="section_monthly"][data-height]:not([data-height="auto"]) .vertical-bars{
    height:min(420px,max(160px,calc(var(--widget-height) - 108px)))!important;
  }
  .dashboard-widget[data-block="types"][data-height="260"] .donut,
  .dashboard-widget[data-block="section_types"][data-height="260"] .donut{width:128px}
  .dashboard-widget[data-block="types"][data-height="380"] .donut,
  .dashboard-widget[data-block="section_types"][data-height="380"] .donut{width:150px}
  .dashboard-widget[data-block="types"][data-height="520"] .donut,
  .dashboard-widget[data-block="section_types"][data-height="520"] .donut{width:170px}
  .dashboard-widget[data-block="types"][data-height="680"] .donut,
  .dashboard-widget[data-block="section_types"][data-height="680"] .donut{width:190px}
  .archive-home-grid-v841 .archive-home-open{gap:18px!important}
}


/* ==========================================================================
   Archivio 8.4.2-r3 - consolidamento globale widget, favicon e preview allegati
   ========================================================================== */
/* Le altezze salvate sono profili di densità coerenti in tutte le sezioni.
   Le liste vengono limitate dal JS e non usano mai uno scroll verticale interno. */
.dashboard-widget .dashboard-expand-region{min-height:0!important;max-height:none!important;height:auto!important;overflow:visible!important}
.dashboard-widget[data-block="section_categories"] .bar-chart,
.dashboard-widget[data-block="section_entities"] .bar-chart,
.dashboard-widget[data-block="medical_patients"] .dashboard-expand-region,
.dashboard-widget[data-block="medical_specialties"] .dashboard-expand-region,
.dashboard-widget[data-block="section_recent"] .dashboard-expand-region,
.dashboard-widget[data-block="medical_recent"] .dashboard-expand-region,
.dashboard-widget[data-block="subjects"] .dashboard-expand-region,
.dashboard-widget[data-block="categories"] .dashboard-expand-region{overflow:visible!important;max-height:none!important}
/* I grafici mensili/torta rispettano il profilo in Finanziario, Documentale e Medico. */
.dashboard-widget[data-height="260"] .vertical-bars{height:154px!important}
.dashboard-widget[data-height="380"] .vertical-bars{height:268px!important}
.dashboard-widget[data-height="520"] .vertical-bars{height:398px!important}
.dashboard-widget[data-height="680"] .vertical-bars{height:548px!important}
.dashboard-widget[data-height="260"] .donut-layout{min-height:150px!important}
.dashboard-widget[data-height="380"] .donut-layout{min-height:260px!important}
.dashboard-widget[data-height="520"] .donut-layout{min-height:390px!important}
.dashboard-widget[data-height="680"] .donut-layout{min-height:540px!important}

.attachment-preview-shell{display:grid;gap:16px;min-width:0}
.attachment-preview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap}
.attachment-preview-head h1{margin:.2rem 0;overflow-wrap:anywhere}
.attachment-preview-panel{padding:10px!important;}
.attachment-preview-frame{display:block;width:100%;height:min(76vh,860px);min-height:540px;border:0;border-radius:12px;background:#eef2f7}
.attachment-preview-image-wrap{place-items:center;border-radius:12px}
.attachment-preview-image-wrap img{max-height:76vh;object-fit:contain;border-radius:8px}
.attachment-preview-fallback{display:grid;place-items:center;align-content:center;min-height:420px;text-align:center;padding:28px}.attachment-preview-file-icon{font-size:3rem}
body[data-theme="dark"] .attachment-preview-frame{background:#111827}
@media(prefers-color-scheme:dark){body[data-theme="system"] .attachment-preview-frame{background:#111827}}
@media(max-width:700px){.attachment-preview-head{align-items:stretch}.attachment-preview-head .actions{width:100%}.attachment-preview-head .actions .button{flex:1;justify-content:center}.attachment-preview-panel{min-height:68vh}.attachment-preview-frame{height:68vh;min-height:430px;border-radius:9px}}

/* 8.4.2-r6 · consultazione pulita, elenco mobile compatto e gerarchia impostazioni */
.record-view-summary,.record-view-details,.record-view-attachments,.record-view-resource-card{padding:20px}
.record-view-summary .section-heading,.record-view-details .section-heading,.record-view-resource-card .section-heading{margin-bottom:14px}
.compact-heading h2{margin-bottom:3px}
.read-only-detail-grid{gap:10px}
.read-only-detail-grid>div{min-width:0;padding:12px 13px;border:1px solid color-mix(in srgb,var(--section-accent) 14%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--section-accent) 3%,var(--surface-2))}
.read-only-detail-grid>div>small{display:block;margin-bottom:4px;text-transform:uppercase;letter-spacing:.055em;font-size:.66rem;font-weight:850;color:var(--muted)}
.read-only-detail-grid>div>strong{display:block;overflow-wrap:anywhere}
.record-view-medical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.record-view-resource-card{min-width:0}
.dicom-ready.compact-view{margin:0}
.record-view-file-list{display:grid;gap:8px}
.record-view-file-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.record-view-file-row.is-primary{border-color:color-mix(in srgb,var(--section-accent) 34%,var(--border));background:color-mix(in srgb,var(--section-accent) 5%,var(--surface-2))}
.record-view-file-main{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-width:0;color:var(--text)!important}
.record-view-file-main>span:last-child{display:grid;gap:2px;min-width:0}.record-view-file-main strong,.record-view-file-main small{overflow-wrap:anywhere}
.record-view-file-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.record-view-edit-hint{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding:11px 12px;border-radius:11px;background:color-mix(in srgb,var(--section-accent) 5%,var(--surface-2));color:var(--muted);font-size:.82rem}
.record-edit-tools{display:grid;gap:14px}.record-edit-tools-head{margin-bottom:0;padding-top:8px}.record-edit-tool{margin:0!important;overflow:hidden}.record-edit-tool.form-section-collapse>summary{background:color-mix(in srgb,var(--primary) 5%,var(--panel))}
.record-edit-attachments{padding:0;overflow:hidden}.record-edit-attachments>.settings-section-head{margin:0}.record-edit-attachments>.settings-section-body{padding-top:14px}

/* Tutti gli elementi mobile: meno altezza, priorità a titolo/tipo/data e contesto solo se valorizzato. */
.record-mobile-card{gap:9px!important;padding:14px!important}
.record-mobile-card-head{min-height:24px}.record-mobile-select.compact-select{font-size:.70rem;gap:6px}.record-mobile-select.compact-select input{width:17px;height:17px}
.record-mobile-title{font-size:1.04rem!important;line-height:1.24!important}
.record-mobile-primary-meta{padding:8px 10px!important;min-height:38px}
.record-mobile-context{display:flex;flex-wrap:wrap;gap:6px;padding:1px 0}
.record-mobile-context>span{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-size:.73rem;line-height:1.15}
.record-mobile-context small{font-size:.61rem;text-transform:uppercase;letter-spacing:.045em;color:var(--muted)}
.record-mobile-context b{font-size:.73rem;white-space:normal;overflow-wrap:anywhere}.record-mobile-context .record-mobile-amount{border-color:color-mix(in srgb,var(--section-accent) 25%,var(--border));background:var(--section-soft);color:var(--section-ink)}
.record-mobile-actions{margin-top:2px}

/* Gerarchia visiva delle pagine impostazioni/gestione: forte in light, naturale in dark/system. */
.settings-stack{gap:18px}
.settings-stack>.panel.settings-section,.settings-section,.profile-form{border-color:color-mix(in srgb,var(--primary) 14%,var(--border));box-shadow:0 8px 24px rgba(15,23,42,.055)}
.settings-section-head{position:relative;border-left:4px solid color-mix(in srgb,var(--primary) 82%,#ffffff 18%);padding:18px 20px!important;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 7%,var(--panel)),color-mix(in srgb,var(--primary) 2%,var(--surface-2)))!important;border-bottom-color:color-mix(in srgb,var(--primary) 14%,var(--border))!important}
.settings-section-head .settings-icon{background:color-mix(in srgb,var(--primary) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));box-shadow:0 3px 10px rgba(15,23,42,.04)}
.settings-section>.form-grid,.settings-section-body,.settings-list,.settings-card-grid{background:color-mix(in srgb,var(--bg) 32%,var(--panel))}
.settings-section .settings-subcard,.profile-form .settings-subcard{border-color:color-mix(in srgb,var(--primary) 16%,var(--border));background:color-mix(in srgb,var(--primary) 3%,var(--surface-2));box-shadow:inset 3px 0 0 color-mix(in srgb,var(--primary) 45%,transparent)}
.section-label{margin-top:5px;padding:10px 12px!important;border:1px solid color-mix(in srgb,var(--primary) 16%,var(--border))!important;border-left:4px solid var(--primary)!important;border-radius:10px;background:color-mix(in srgb,var(--primary) 5%,var(--surface-2));color:color-mix(in srgb,var(--primary) 72%,var(--text));font-size:.73rem!important}
.profile-form{padding:20px;background:var(--panel)}
.profile-form>.section-label{grid-column:1/-1}

body[data-theme="dark"] .settings-section-head{background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 12%,#2d3542),#2c3440)!important;border-bottom-color:#536071!important}
body[data-theme="dark"] .settings-section>.form-grid,body[data-theme="dark"] .settings-section-body,body[data-theme="dark"] .settings-list,body[data-theme="dark"] .settings-card-grid{background:#2a313c!important}
body[data-theme="dark"] .read-only-detail-grid>div,body[data-theme="dark"] .record-view-file-row{background:#313946}
@media(prefers-color-scheme:dark){
 body[data-theme="system"] .settings-section-head{background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 12%,#2d3542),#2c3440)!important;border-bottom-color:#536071!important}
 body[data-theme="system"] .settings-section>.form-grid,body[data-theme="system"] .settings-section-body,body[data-theme="system"] .settings-list,body[data-theme="system"] .settings-card-grid{background:#2a313c!important}
 body[data-theme="system"] .read-only-detail-grid>div,body[data-theme="system"] .record-view-file-row{background:#313946}
}
@media(max-width:900px){.record-view-medical-grid{grid-template-columns:1fr}}
@media(max-width:700px){
 .record-view-summary,.record-view-details,.record-view-attachments,.record-view-resource-card{padding:15px}
 .read-only-detail-grid{grid-template-columns:1fr!important}.read-only-detail-grid>div{padding:10px 11px}
 .record-view-file-row{grid-template-columns:1fr;gap:8px}.record-view-file-actions{justify-content:flex-start;padding-left:44px}.record-view-file-actions .button{flex:1}
 .record-view-edit-hint{display:grid}.record-view-edit-hint .button{width:100%}
 .record-mobile-card{border-radius:15px!important}.record-mobile-badges .mobile-record-badge{font-size:.64rem}
 .settings-section-head{padding:15px 15px!important;gap:11px!important}.settings-section-head .settings-icon{width:38px;height:38px;border-radius:11px}.settings-section>.form-grid,.settings-section-body,.settings-list,.settings-card-grid,.profile-form{padding:15px!important}.section-label{padding:9px 10px!important}
}

/* 8.4.2-r6 · separatori coerenti anche nelle pagine impostazioni legacy/non settings-stack. */
body[data-page="account"] .container>.panel,
body[data-page="user_edit"] .container>.panel,
body[data-page="api_token_settings"] .container>.panel,
body[data-page="security_center"] .container>.panel,
body[data-page="notifications_center"] .container>.panel,
body[data-page="smtp_settings"] .container>.panel,
body[data-page="collabora_info"] .container>.panel,
body[data-page="maintenance"] .container>.panel,
body[data-page="system_status"] .container>.panel{
  border-color:color-mix(in srgb,var(--primary) 14%,var(--border));
  box-shadow:0 8px 24px rgba(15,23,42,.05)
}
body[data-page="account"] .section-heading,
body[data-page="user_edit"] .section-heading,
body[data-page="api_token_settings"] .section-heading,
body[data-page="security_center"] .section-heading,
body[data-page="notifications_center"] .section-heading,
body[data-page="smtp_settings"] .section-heading,
body[data-page="collabora_info"] .section-heading,
body[data-page="maintenance"] .section-heading,
body[data-page="system_status"] .section-heading{
  margin:-2px -2px 14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--primary) 13%,var(--border));border-left:4px solid var(--primary);border-radius:12px;background:color-mix(in srgb,var(--primary) 4%,var(--surface-2))
}
body[data-page="notifications_center"] .notification-inbox-group{padding:12px;border:1px solid color-mix(in srgb,var(--primary) 12%,var(--border));border-radius:13px;background:color-mix(in srgb,var(--primary) 2.5%,var(--surface-2))}
body[data-page="notifications_center"] .notification-inbox-group+.notification-inbox-group{margin-top:12px}
@media(max-width:700px){
 body[data-page="account"] .section-heading,body[data-page="user_edit"] .section-heading,body[data-page="api_token_settings"] .section-heading,body[data-page="security_center"] .section-heading,body[data-page="notifications_center"] .section-heading,body[data-page="smtp_settings"] .section-heading,body[data-page="collabora_info"] .section-heading,body[data-page="maintenance"] .section-heading,body[data-page="system_status"] .section-heading{padding:10px 11px;margin-bottom:11px}
}

/* 8.4.3-r2 · controlli booleani nelle impostazioni applicazione */
.settings-section .check-row{display:flex;align-items:flex-start;gap:12px}
.settings-section .check-row>input[type="checkbox"]{width:auto;min-width:18px;margin-top:3px}
.settings-section .check-row>span{display:flex;flex-direction:column;gap:4px}

/* 8.4.4-r1 · pulizia visualizzazione elementi/Home/Backup Center */
.reference-badge-link{text-decoration:none;cursor:pointer;transition:.15s transform,.15s box-shadow,.15s border-color}
.reference-badge-link:hover{transform:translateY(-1px);}
.home-summary-item.attention,.home-summary-item.ok,.home-summary-item.running{border-left-width:1px;border-left-color:var(--border)}
.backup-auto-status{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:18px;align-items:center;margin-bottom:14px}
.backup-auto-status-main{display:grid;gap:5px}.backup-auto-status-main h2{margin:0}.backup-auto-status-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.backup-auto-status-meta>div{display:grid;gap:4px;padding:11px 13px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.backup-auto-status-meta small{color:var(--muted);font-weight:750}.backup-auto-status-meta strong{overflow-wrap:anywhere}.backup-live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#16a34a;margin-right:6px}.backup-live-dot.off{background:#94a3b8}.backup-live-dot.error{background:#dc2626}
@media(max-width:800px){.backup-auto-status{grid-template-columns:1fr}.backup-auto-status-meta{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.backup-auto-status-meta{grid-template-columns:1fr}}

/* 8.4.4-r2 · Gestione, collaborazioni e filtri incomplete */
.management-page-head,.collaboration-page-head{margin-bottom:16px}
.management-quick-panel{padding:20px;border:1px solid var(--border);border-radius:20px;background:var(--panel);box-shadow:var(--shadow-sm);margin-bottom:18px}
.management-quick-panel .section-heading{margin-bottom:14px}
.management-quick-panel .section-heading h2{margin:.15rem 0}
.management-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.management-quick-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2);color:var(--text);text-decoration:none;transition:.16s ease}
.management-quick-card:hover,.management-link-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 38%,var(--border));box-shadow:var(--shadow-sm)}
.management-quick-card>span:nth-child(2){display:grid;gap:3px;min-width:0}.management-quick-card strong{font-size:.98rem}.management-quick-card small{color:var(--muted);line-height:1.35}.management-quick-card>b,.management-link-card>b{color:var(--muted)}
.management-quick-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:color-mix(in srgb,var(--primary) 10%,var(--surface-2));font-size:1.2rem}
.management-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.management-group{overflow:hidden}.management-group-info{grid-column:1/-1}.management-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 20px 20px}.management-group-info .management-link-grid{grid-template-columns:minmax(0,1fr)}
.management-link-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);color:var(--text);text-decoration:none;transition:.16s ease}.management-link-card>span{font-size:1.1rem}.management-link-card>div{display:grid;gap:2px}.management-link-card small{color:var(--muted);line-height:1.35}

.overview-filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0 18px}.overview-filter-chips a{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text);text-decoration:none;font-size:.86rem;font-weight:750}.overview-filter-chips a strong{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--panel);font-size:.77rem}.overview-filter-chips a.active{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));background:color-mix(in srgb,var(--primary) 10%,var(--surface-2));color:var(--primary-strong)}

.collaboration-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.collaboration-summary-grid>div{display:grid;gap:3px;padding:15px 17px;border:1px solid var(--border);border-radius:16px;background:var(--panel);box-shadow:var(--shadow-sm)}.collaboration-summary-grid span{font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;font-weight:800;color:var(--muted)}.collaboration-summary-grid strong{font-size:1.6rem}.collaboration-summary-grid small{color:var(--muted)}
.collaboration-guide{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;margin-bottom:16px;background:color-mix(in srgb,var(--primary) 5%,var(--panel))}.collaboration-guide-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--primary) 12%,var(--surface-2))}.collaboration-guide p{margin:.25rem 0 0;color:var(--muted);line-height:1.5}
.collaboration-form{display:grid;gap:16px;padding:20px}.collaboration-step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start}.collaboration-step label{display:grid;gap:7px}.collaboration-step-number{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--primary);color:#fff;font-weight:900;font-size:.84rem;flex:0 0 auto}
.collaboration-permissions{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.collaboration-permissions legend{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-weight:850}.permission-choice{position:relative;display:flex;gap:10px;align-items:flex-start;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);cursor:pointer}.permission-choice:has(input:checked){border-color:color-mix(in srgb,var(--primary) 55%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--surface-2));box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 10%,transparent)}.permission-choice input{margin-top:.2rem}.permission-choice span{display:grid;gap:3px}.permission-choice small{color:var(--muted);line-height:1.35}.collaboration-submit{justify-content:flex-end}
.collaboration-list{display:grid;padding:4px 20px 20px}.collaboration-row{display:grid;grid-template-columns:minmax(170px,.9fr) minmax(0,1.5fr) auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}.collaboration-row:last-child{border-bottom:0}.collaboration-row.pending{background:color-mix(in srgb,#f59e0b 5%,transparent);border-radius:12px;padding:14px 10px}.collaboration-person{display:grid;gap:2px;min-width:0}.collaboration-person small{color:var(--muted)}.collaboration-badges{display:flex;flex-wrap:wrap;gap:6px}.collaboration-badges>span{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:.76rem;font-weight:750}.collaboration-status.status-accepted{background:color-mix(in srgb,#16a34a 10%,var(--surface-2));color:#15803d}.collaboration-status.status-pending{background:color-mix(in srgb,#f59e0b 12%,var(--surface-2));color:#b45309}.collaboration-status.status-declined{background:color-mix(in srgb,#64748b 10%,var(--surface-2));color:#475569}.collaboration-actions{display:flex;gap:7px;align-items:center}.collaboration-actions form{margin:0}
body[data-theme="dark"] .collaboration-status.status-accepted{color:#86efac}body[data-theme="dark"] .collaboration-status.status-pending{color:#fbbf24}body[data-theme="dark"] .collaboration-status.status-declined{color:#cbd5e1}
@media(prefers-color-scheme:dark){body[data-theme="system"] .collaboration-status.status-accepted{color:#86efac}body[data-theme="system"] .collaboration-status.status-pending{color:#fbbf24}body[data-theme="system"] .collaboration-status.status-declined{color:#cbd5e1}}
@media(max-width:980px){.management-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.management-groups{grid-template-columns:1fr}.management-group-info{grid-column:auto}.collaboration-permissions{grid-template-columns:1fr}.collaboration-row{grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr)}.collaboration-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:620px){.management-quick-panel{padding:15px}.management-quick-grid,.management-link-grid,.collaboration-summary-grid{grid-template-columns:1fr}.management-link-grid{padding:12px 15px 16px}.management-quick-card,.management-link-card{padding:13px}.management-quick-card small,.management-link-card small{font-size:.79rem}.overview-filter-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.overview-filter-chips a{justify-content:space-between}.collaboration-form{padding:15px}.collaboration-step{grid-template-columns:1fr}.collaboration-step-number{width:28px;height:28px}.collaboration-row{grid-template-columns:1fr;gap:8px;padding:13px 0}.collaboration-actions{grid-column:auto;justify-content:stretch}.collaboration-actions form,.collaboration-actions .button{width:100%}.collaboration-guide{grid-template-columns:1fr}.collaboration-submit .button{width:100%}}


/* 8.4.4-r3 · context navigation, quick filters, dark-mode contrast, semantic colors */
.management-info-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;margin-top:16px;padding:13px 15px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);color:var(--text);text-decoration:none;transition:.16s ease}
.management-info-link:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 38%,var(--border));box-shadow:var(--shadow-sm)}
.management-info-link>span:nth-child(2){display:grid;gap:2px}.management-info-link small,.management-info-link>b{color:var(--muted)}
.management-info-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--primary) 9%,var(--surface-2))}

.records-quick-filters{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px;padding:12px 14px;border:1px solid var(--border);border-radius:16px;background:var(--panel);box-shadow:var(--shadow-sm)}
.records-quick-copy{display:grid;gap:2px;min-width:145px}.records-quick-copy small{color:var(--muted);font-size:.78rem}
.records-quick-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.records-quick-chips a{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text);font-size:.8rem;font-weight:780;text-decoration:none;transition:.15s ease}.records-quick-chips a:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.records-quick-chips a strong{display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:999px;background:var(--panel);font-size:.72rem}.records-quick-chips a.active{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));background:color-mix(in srgb,var(--primary) 9%,var(--surface-2));color:var(--primary-strong)}

/* I riferimenti sono navigazione/contesto, non uno stato di successo: niente verde semantico. */
.reference-badge{background:color-mix(in srgb,var(--primary) 8%,var(--surface-2))!important;color:var(--text)!important;border-color:color-mix(in srgb,var(--primary) 28%,var(--border))!important}
.reference-badge-link:hover{border-color:color-mix(in srgb,var(--primary) 52%,var(--border))!important;box-shadow:0 5px 14px color-mix(in srgb,var(--primary) 13%,transparent)}
.reference-link-panel,.reference-linked-list>a.linked-record-button{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 5%,var(--surface-2)),var(--surface-2))!important;border-color:color-mix(in srgb,var(--primary) 22%,var(--border))!important;color:var(--text)!important}
.reference-link-panel .eyebrow,.reference-link-panel h2,.reference-linked-list>a.linked-record-button>span{color:var(--text)!important}
.reference-link-panel .button{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}

/* Colori di stato: tinta forte solo quando rappresenta davvero successo/attenzione/errore. */
body[data-theme="dark"] .collaboration-status.status-accepted,body[data-theme="dark"] .status-pill.ok,body[data-theme="dark"] .delivery-sent{background:color-mix(in srgb,#16a34a 10%,var(--surface-2));border-color:color-mix(in srgb,#16a34a 32%,var(--border));color:#86efac!important}
body[data-theme="dark"] .collaboration-status.status-pending,body[data-theme="dark"] .status-pill.warn{background:color-mix(in srgb,#f59e0b 9%,var(--surface-2));border-color:color-mix(in srgb,#f59e0b 30%,var(--border));color:#fbbf24!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .reference-badge{background:color-mix(in srgb,var(--primary) 10%,var(--surface-2))!important;color:var(--text)!important;border-color:color-mix(in srgb,var(--primary) 30%,var(--border))!important}body[data-theme="system"] .collaboration-status.status-accepted,body[data-theme="system"] .status-pill.ok,body[data-theme="system"] .delivery-sent{background:color-mix(in srgb,#16a34a 10%,var(--surface-2));border-color:color-mix(in srgb,#16a34a 32%,var(--border));color:#86efac!important}body[data-theme="system"] .collaboration-status.status-pending,body[data-theme="system"] .status-pill.warn{background:color-mix(in srgb,#f59e0b 9%,var(--surface-2));border-color:color-mix(in srgb,#f59e0b 30%,var(--border));color:#fbbf24!important}}

@media(max-width:900px){.records-quick-filters{align-items:stretch;flex-direction:column}.records-quick-chips{justify-content:flex-start}.records-quick-copy small{display:none}}
@media(max-width:620px){.management-info-link{margin-top:12px}.records-quick-filters{padding:11px 12px}.records-quick-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.records-quick-chips a{justify-content:space-between;min-width:0}.records-quick-chips a:first-child{grid-column:1/-1}}


/* Archivio 8.4.4-r4 · single-back + semantic color contract · light/dark/mobile
   Regola: blu/ciano = contesto/navigazione; verde = solo successo; arancio = attenzione; rosso = errore. */
body[data-theme="light"]{
  --context-bg:#f3f6fb;--context-bg-hover:#eaf1fb;--context-border:#c9d6e6;--context-text:#24415f;
  --context-chip-bg:#eef4ff;--context-chip-border:#bfd0ee;--context-chip-text:#244f86;
  --success-soft-bg:#f3faf6;--success-soft-border:#9ccaae;--success-soft-text:#225c3c;
  --warning-soft-bg:#fff9ed;--warning-soft-border:#e6c985;--warning-soft-text:#7a5310;
  --danger-soft-bg:#fff4f4;--danger-soft-border:#e5a5aa;--danger-soft-text:#8a3038;
}
body[data-theme="dark"]{
  --context-bg:#303844;--context-bg-hover:#354253;--context-border:#566579;--context-text:#edf3fa;
  --context-chip-bg:#303d4d;--context-chip-border:#5d718a;--context-chip-text:#d8ecff;
  --success-soft-bg:#293a32;--success-soft-border:#4e765d;--success-soft-text:#d2f3df;
  --warning-soft-bg:#3d372b;--warning-soft-border:#786640;--warning-soft-text:#f2ddae;
  --danger-soft-bg:#402f34;--danger-soft-border:#81505a;--danger-soft-text:#ffd9de;
}

/* Riferimenti = contesto. Non devono mai apparire come stato positivo. */
body[data-theme="light"] .reference-badge,
body[data-theme="light"] .linked-items-cta{
  background:var(--context-chip-bg)!important;color:var(--context-chip-text)!important;border-color:var(--context-chip-border)!important;
}
body[data-theme="light"] .reference-badge-link:hover,
body[data-theme="light"] .linked-items-cta:hover{
  background:#e5eefb!important;color:#173f72!important;border-color:#8eadcf!important;
}
body[data-theme="light"] .reference-link-panel,
body[data-theme="light"] .reference-linked-list>a.linked-record-button{
  background:var(--context-bg)!important;color:var(--context-text)!important;border-color:var(--context-border)!important;box-shadow:0 5px 14px rgba(15,23,42,.05)!important;
}
body[data-theme="light"] .reference-linked-list>a.linked-record-button:hover{background:var(--context-bg-hover)!important;border-color:#9db5cf!important;box-shadow:0 8px 18px rgba(15,23,42,.08)!important}
body[data-theme="light"] .reference-link-panel .eyebrow,
body[data-theme="light"] .reference-link-panel h2,
body[data-theme="light"] .reference-linked-list>a.linked-record-button>span{color:var(--context-text)!important}

body[data-theme="dark"] .reference-badge,
body[data-theme="dark"] .linked-items-cta{
  background:var(--context-chip-bg)!important;color:var(--context-chip-text)!important;border-color:var(--context-chip-border)!important;
}
body[data-theme="dark"] .reference-badge-link:hover,
body[data-theme="dark"] .linked-items-cta:hover{
  background:#38495d!important;color:#eef8ff!important;border-color:#7893ae!important;
}
body[data-theme="dark"] .reference-link-panel,
body[data-theme="dark"] .reference-linked-list>a.linked-record-button{
  background:var(--context-bg)!important;color:var(--context-text)!important;border-color:var(--context-border)!important;box-shadow:none!important;
}
body[data-theme="dark"] .reference-linked-list>a.linked-record-button:hover{background:var(--context-bg-hover)!important;border-color:#71849b!important;box-shadow:0 7px 18px rgba(0,0,0,.20)!important}
body[data-theme="dark"] .reference-link-panel .eyebrow,
body[data-theme="dark"] .reference-link-panel h2,
body[data-theme="dark"] .reference-linked-list>a.linked-record-button>span{color:var(--context-text)!important}

/* Banner di stato: il colore semantico resta, ma in dark è sempre desaturato e leggibile. */
body[data-theme="light"] .collabora-status.is-ok,
body[data-theme="light"] .alert.success,
body[data-theme="light"] .status-success{background:var(--success-soft-bg)!important;border-color:var(--success-soft-border)!important;color:var(--success-soft-text)!important}
body[data-theme="light"] .collabora-status.is-error,
body[data-theme="light"] .alert.danger{background:var(--danger-soft-bg)!important;border-color:var(--danger-soft-border)!important;color:var(--danger-soft-text)!important}
body[data-theme="light"] .alert.warning{background:var(--warning-soft-bg)!important;border-color:var(--warning-soft-border)!important;color:var(--warning-soft-text)!important}
body[data-theme="dark"] .collabora-status.is-ok,
body[data-theme="dark"] .alert.success,
body[data-theme="dark"] .status-success{background:var(--success-soft-bg)!important;border-color:var(--success-soft-border)!important;color:var(--success-soft-text)!important}
body[data-theme="dark"] .collabora-status.is-error,
body[data-theme="dark"] .alert.danger{background:var(--danger-soft-bg)!important;border-color:var(--danger-soft-border)!important;color:var(--danger-soft-text)!important}
body[data-theme="dark"] .alert.warning{background:var(--warning-soft-bg)!important;border-color:var(--warning-soft-border)!important;color:var(--warning-soft-text)!important}
body[data-theme="dark"] .collabora-status small{color:#b9c7d4!important}

/* Componenti puramente informativi: nessun verde/arancio decorativo. */
body[data-theme="light"] .reference-linked-list>a.linked-record-button b{color:#56718d!important}
body[data-theme="dark"] .reference-linked-list>a.linked-record-button b{color:#a9c4db!important}
body[data-theme="light"] .management-quick-card,
body[data-theme="light"] .management-link-card,
body[data-theme="light"] .management-info-link{background:#f8fafc!important;border-color:#d8e0ea!important;color:#172033!important}
body[data-theme="dark"] .management-quick-card,
body[data-theme="dark"] .management-link-card,
body[data-theme="dark"] .management-info-link{background:#303844!important;border-color:#566274!important;color:#f1f5f9!important}

/* Automatico/System: replica esattamente il contratto dark quando il sistema è scuro. */
@media(prefers-color-scheme:dark){
  body[data-theme="system"]{
    --context-bg:#303844;--context-bg-hover:#354253;--context-border:#566579;--context-text:#edf3fa;
    --context-chip-bg:#303d4d;--context-chip-border:#5d718a;--context-chip-text:#d8ecff;
    --success-soft-bg:#293a32;--success-soft-border:#4e765d;--success-soft-text:#d2f3df;
    --warning-soft-bg:#3d372b;--warning-soft-border:#786640;--warning-soft-text:#f2ddae;
    --danger-soft-bg:#402f34;--danger-soft-border:#81505a;--danger-soft-text:#ffd9de;
  }
  body[data-theme="system"] .reference-badge,body[data-theme="system"] .linked-items-cta{background:var(--context-chip-bg)!important;color:var(--context-chip-text)!important;border-color:var(--context-chip-border)!important}
  body[data-theme="system"] .reference-badge-link:hover,body[data-theme="system"] .linked-items-cta:hover{background:#38495d!important;color:#eef8ff!important;border-color:#7893ae!important}
  body[data-theme="system"] .reference-link-panel,body[data-theme="system"] .reference-linked-list>a.linked-record-button{background:var(--context-bg)!important;color:var(--context-text)!important;border-color:var(--context-border)!important;box-shadow:none!important}
  body[data-theme="system"] .reference-linked-list>a.linked-record-button:hover{background:var(--context-bg-hover)!important;border-color:#71849b!important}
  body[data-theme="system"] .reference-link-panel .eyebrow,body[data-theme="system"] .reference-link-panel h2,body[data-theme="system"] .reference-linked-list>a.linked-record-button>span{color:var(--context-text)!important}
  body[data-theme="system"] .collabora-status.is-ok,body[data-theme="system"] .alert.success,body[data-theme="system"] .status-success{background:var(--success-soft-bg)!important;border-color:var(--success-soft-border)!important;color:var(--success-soft-text)!important}
  body[data-theme="system"] .collabora-status.is-error,body[data-theme="system"] .alert.danger{background:var(--danger-soft-bg)!important;border-color:var(--danger-soft-border)!important;color:var(--danger-soft-text)!important}
  body[data-theme="system"] .alert.warning{background:var(--warning-soft-bg)!important;border-color:var(--warning-soft-border)!important;color:var(--warning-soft-text)!important}
  body[data-theme="system"] .collabora-status small{color:#b9c7d4!important}
  body[data-theme="system"] .management-quick-card,body[data-theme="system"] .management-link-card,body[data-theme="system"] .management-info-link{background:#303844!important;border-color:#566274!important;color:#f1f5f9!important}
}

/* Mobile: una sola freccia globale; superfici compatte, touch target chiari e nessun overflow. */
@media(max-width:700px){
  .global-smart-back-row{margin:-4px 0 10px!important;min-height:42px!important}
  .global-smart-back{width:44px!important;min-width:44px!important;height:44px!important;padding:0!important}
  .page-head-actions-clean,.page-actions,.page-head>.actions{max-width:100%}
  .reference-badge{width:auto!important;max-width:100%;white-space:normal}
  .reference-linked-list>a.linked-record-button{grid-template-columns:1fr!important;gap:8px!important;padding:12px 13px!important}
  .reference-linked-list>a.linked-record-button>span{justify-content:space-between;width:100%}
  .collabora-status{padding:13px 14px!important;border-left-width:3px!important}
  .management-quick-card,.management-link-card,.management-info-link{min-height:54px}
}


/* Archivio 8.4.4-r4 Stable · topbar finale: niente linea di sezione sul bordo inferiore. */
body[data-theme="dark"].archive-context-active .topbar{box-shadow:0 8px 24px rgba(0,0,0,.22)!important}
@media(prefers-color-scheme:dark){body[data-theme="system"].archive-context-active .topbar{box-shadow:0 8px 24px rgba(0,0,0,.22)!important}}

/* 8.5.1-r1 · anteprime allegati leggere, desktop/mobile e temi light/dark/system */
.attachment-preview-title{min-width:0;flex:1 1 360px}.attachment-preview-actions{flex:0 1 auto;flex-wrap:wrap}
.attachment-preview-notice{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:13px;background:color-mix(in srgb,var(--primary) 7%,var(--panel));color:var(--text)}
.attachment-preview-notice.is-original{border-color:var(--border);background:var(--surface-2)}
.attachment-preview-notice>div{display:grid;gap:2px;min-width:0}.attachment-preview-notice strong{font-size:.93rem}.attachment-preview-notice small{display:block;margin:0;color:var(--muted)!important;overflow-wrap:anywhere}.attachment-preview-speed-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:color-mix(in srgb,var(--primary) 13%,var(--panel));font-size:1.05rem}
.optimized-image-wrap img{width:auto;height:auto;max-width:100%;max-height:76vh}
.optimized-pdf-panel{padding:0!important;overflow:visible!important;background:transparent!important;border:0!important;box-shadow:none!important;min-height:55vh}
.optimized-pdf-viewer{display:grid;gap:12px;min-width:0}.optimized-pdf-toolbar{position:sticky;top:76px;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 13px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(12px);box-shadow:0 8px 24px rgba(15,23,42,.08)}
.optimized-pdf-toolbar>div{display:grid;gap:1px}.optimized-pdf-toolbar small{margin:0}.optimized-pdf-pages{display:grid;gap:18px;justify-items:center;min-width:0}.optimized-pdf-page{width:min(100%,1120px);display:grid;gap:6px;min-width:0}.optimized-pdf-page-label{font-size:.76rem;font-weight:800;color:var(--muted);padding-left:4px}.optimized-pdf-page-canvas{position:relative;display:grid;place-items:center;width:100%;border:1px solid var(--border);border-radius:12px;background:#e8edf3;box-shadow:0 10px 30px rgba(15,23,42,.09)}
.optimized-pdf-page-canvas img{display:block;background:#fff}.optimized-pdf-loading{position:absolute;inset:0;display:grid;place-items:center;padding:24px;text-align:center;color:#64748b;font-weight:700;background:linear-gradient(110deg,#edf1f5 8%,#f8fafc 18%,#edf1f5 33%);background-size:200% 100%;animation:archivio-preview-shimmer 1.5s linear infinite}.optimized-pdf-page-error{display:grid;place-items:center;gap:10px;min-height:220px;padding:24px;text-align:center;color:var(--muted)}.optimized-pdf-page-error p{margin:0}.optimized-pdf-sentinel{height:2px;width:100%}
@keyframes archivio-preview-shimmer{to{background-position-x:-200%}}
body[data-theme="dark"] .attachment-preview-notice{background:color-mix(in srgb,var(--primary) 10%,#242b35);border-color:color-mix(in srgb,var(--primary) 34%,#4c566a)}
body[data-theme="dark"] .attachment-preview-notice.is-original{background:#303846;border-color:#4c566a}
body[data-theme="dark"] .attachment-preview-speed-icon{background:#394556}
body[data-theme="dark"] .optimized-pdf-toolbar{background:rgba(46,52,64,.94);border-color:#4c566a;box-shadow:0 8px 28px rgba(0,0,0,.3)}
body[data-theme="dark"] .optimized-pdf-page-canvas{background:#151b24;border-color:#4c566a;box-shadow:0 12px 34px rgba(0,0,0,.32)}
body[data-theme="dark"] .optimized-pdf-loading{color:#c3cad5;background:linear-gradient(110deg,#252d39 8%,#333d4c 18%,#252d39 33%);background-size:200% 100%}
@media(prefers-color-scheme:dark){
  body[data-theme="system"] .attachment-preview-notice{background:color-mix(in srgb,var(--primary) 10%,#242b35);border-color:#566274;color:#f2f5f8}
  body[data-theme="system"] .attachment-preview-notice.is-original{background:#303846;border-color:#566274}
  body[data-theme="system"] .attachment-preview-speed-icon{background:#394556}
  body[data-theme="system"] .optimized-pdf-toolbar{background:rgba(43,49,60,.94);border-color:#566274;color:#f2f5f8;box-shadow:0 8px 28px rgba(0,0,0,.3)}
  body[data-theme="system"] .optimized-pdf-page-canvas{background:#151b24;border-color:#566274;box-shadow:0 12px 34px rgba(0,0,0,.32)}
  body[data-theme="system"] .optimized-pdf-loading{color:#c3cad5;background:linear-gradient(110deg,#252d39 8%,#333d4c 18%,#252d39 33%);background-size:200% 100%}
}
@media(max-width:900px){
  .attachment-preview-shell{gap:12px}.attachment-preview-head{display:grid;gap:10px;align-items:stretch}.attachment-preview-head h1{font-size:1.32rem;line-height:1.22}.attachment-preview-head .muted{margin:.2rem 0 0}
  .attachment-preview-actions{display:grid!important;grid-template-columns:1fr 1fr;width:100%;gap:8px}.attachment-preview-actions .attachment-preview-back{grid-column:1/-1}.attachment-preview-actions .button{min-width:0;width:100%;padding-left:9px;padding-right:9px;text-align:center}
  .attachment-preview-notice{padding:10px 11px;align-items:flex-start}.attachment-preview-speed-icon{width:30px;height:30px;flex-basis:30px;border-radius:9px}.attachment-preview-notice small{font-size:.76rem;line-height:1.35}
  .optimized-pdf-toolbar{top:78px;padding:9px 10px;border-radius:11px}.optimized-pdf-toolbar .button{min-height:34px;padding:6px 9px;font-size:.78rem}.optimized-pdf-toolbar small{font-size:.7rem}
  .optimized-pdf-pages{gap:13px}.optimized-pdf-page{gap:4px}.optimized-pdf-page-label{font-size:.7rem}.optimized-pdf-page-canvas{min-height:52vh;border-radius:9px}.optimized-pdf-loading{font-size:.82rem}
}
@media(max-width:420px){.attachment-preview-actions{grid-template-columns:1fr}.attachment-preview-actions .attachment-preview-back{grid-column:auto}.optimized-pdf-toolbar{position:static;display:grid;grid-template-columns:1fr}.optimized-pdf-toolbar .button{width:100%}}
@media(prefers-reduced-motion:reduce){.optimized-pdf-loading{animation:none}}


/* 8.5.1-r2 · PDF mobile compatibile + zoom graduato desktop/touch */
.preview-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;min-width:0}
.attachment-zoom-controls{display:grid;grid-template-columns:34px minmax(110px,180px) 52px 34px auto;align-items:center;gap:6px;min-width:0}
.attachment-zoom-controls .zoom-step{width:34px;min-width:34px;height:34px;min-height:34px;padding:0;font-size:1.15rem;line-height:1}
.attachment-zoom-controls input[type="range"]{width:100%;min-width:80px;margin:0;accent-color:var(--primary);cursor:pointer}
.attachment-zoom-controls output{min-width:48px;text-align:center;font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:800;color:var(--text)}
.attachment-zoom-controls .zoom-fit{white-space:nowrap}
.attachment-image-viewer{display:grid;gap:10px;min-width:0}.attachment-image-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:9px 10px;border-bottom:1px solid var(--border);background:var(--surface-2)}
.attachment-preview-image-wrap{overflow:auto!important;overscroll-behavior:contain;}
.attachment-preview-image-wrap img{display:block!important;width:100%;height:auto!important;max-width:none!important;margin:0 auto;background:transparent;transform-origin:top center}
.optimized-pdf-page-canvas{overflow:auto!important;overscroll-behavior:contain;justify-content:flex-start!important;align-items:flex-start!important;}
.optimized-pdf-page-canvas img{margin:0 auto;transform-origin:top center}
body[data-theme="dark"] .attachment-image-toolbar{background:#303846;border-color:#4c566a}
@media(prefers-color-scheme:dark){body[data-theme="system"] .attachment-image-toolbar{background:#303846;border-color:#566274;color:#f2f5f8}}
@media(max-width:900px){
  .optimized-pdf-toolbar{display:grid;grid-template-columns:1fr;align-items:stretch}
  .preview-toolbar-actions{display:grid;grid-template-columns:1fr;justify-items:stretch}
  .attachment-zoom-controls{grid-template-columns:38px minmax(90px,1fr) 48px 38px auto;width:100%;gap:5px}
  .attachment-zoom-controls .zoom-step{width:38px;min-width:38px;height:38px;min-height:38px}
  .attachment-image-toolbar{display:grid;grid-template-columns:1fr;padding:8px}
  .original-viewer-link{width:100%;text-align:center}
}
@media(max-width:420px){
  .attachment-zoom-controls{grid-template-columns:40px minmax(70px,1fr) 46px 40px;gap:5px}
  .attachment-zoom-controls .zoom-fit{grid-column:1/-1;width:100%}
  .attachment-zoom-controls output{font-size:.76rem;min-width:44px}
}


/* 8.5.1-r3 · regressioni server worker + zoom immagini stabile + back singolo */
.attachment-preview-image-wrap{display:flex!important;justify-content:center!important;align-items:flex-start!important}
.attachment-image-viewer.is-zoomed .attachment-preview-image-wrap{justify-content:flex-start!important}
.attachment-preview-image-stage{display:block;min-width:0;margin:0 auto}
.attachment-image-viewer.is-zoomed .attachment-preview-image-stage{margin-left:0;margin-right:0}
.attachment-preview-image-stage img{display:block!important;margin:0!important;object-fit:contain}

/* 8.5.1-r4 · viewer allegati real-device: zoom desktop a pixel, mobile edge-to-edge e scroll verticale nativo */
.mobile-native-zoom-hint{display:none;color:var(--muted);font-size:.76rem;line-height:1.35}
.attachment-preview-panel{min-height:0!important;overflow:visible!important}
.attachment-preview-image-wrap{
  min-height:0!important;
  padding:12px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-x:contain;
  overscroll-behavior-y:auto;
  touch-action:auto;
  background:var(--surface-2);
}
.attachment-preview-image-stage{width:auto;max-width:none;flex:0 0 auto}
.attachment-preview-image-stage img{width:auto!important;max-width:none!important;height:auto!important;border-radius:8px}
.optimized-pdf-page-canvas{
  min-height:min(62vh,760px)!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-x:contain;
  overscroll-behavior-y:auto;
  touch-action:auto;
}
.optimized-pdf-page.is-loaded .optimized-pdf-page-canvas{min-height:0!important}
.optimized-pdf-page-canvas img{width:auto!important;max-width:none!important;height:auto!important;flex:0 0 auto}

@media(max-width:700px){
  .attachment-preview-panel{padding:0!important;border-radius:12px!important;background:transparent!important;box-shadow:none!important;border:0!important}
  .attachment-image-toolbar{padding:9px 10px;border:1px solid var(--border);border-radius:11px 11px 0 0;background:var(--surface-2)}
  .attachment-image-toolbar>.muted{display:none}
  .attachment-zoom-controls{display:none!important}
  .mobile-native-zoom-hint{display:block}
  .preview-toolbar-actions{gap:8px}
  .optimized-pdf-toolbar{position:static!important;border-radius:11px;padding:9px 10px}
  .optimized-pdf-toolbar .mobile-native-zoom-hint{order:2}
  .original-viewer-link{order:3}
  .attachment-preview-image-wrap{
    display:flex!important;
    justify-content:center!important;
    align-items:flex-start!important;
    padding:0!important;
    min-height:0!important;
    overflow:visible!important;
    overscroll-behavior:auto!important;
    touch-action:pan-y pinch-zoom!important;
    border-radius:0 0 11px 11px;
    background:transparent!important;
  }
  .attachment-preview-image-stage{width:auto!important;max-width:100%!important;margin:0 auto!important}
  .attachment-preview-image-stage img{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    height:auto!important;
    margin:0 auto!important;
    border-radius:0 0 10px 10px;
    touch-action:pan-y pinch-zoom!important;
  }
  .optimized-pdf-pages{gap:12px;width:100%}
  .optimized-pdf-page{width:100%!important;gap:4px}
  .optimized-pdf-page-canvas,
  .optimized-pdf-page.is-loaded .optimized-pdf-page-canvas{
    display:block!important;
    width:100%!important;
    min-height:0!important;
    overflow:visible!important;
    overscroll-behavior:auto!important;
    touch-action:pan-y pinch-zoom!important;
    border-radius:9px;
    background:transparent!important;
    box-shadow:none!important;
  }
  .optimized-pdf-page:not(.is-loaded) .optimized-pdf-page-canvas{min-height:42vh!important;background:var(--surface-2)!important}
  .optimized-pdf-page-canvas img{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    margin:0!important;
    border-radius:8px;
    touch-action:pan-y pinch-zoom!important;
  }
  .attachment-preview-shell{gap:10px}
}

@media(max-width:420px){
  .attachment-preview-head h1{font-size:1.18rem}
  .attachment-preview-actions{gap:6px}
  .attachment-preview-notice{border-radius:11px}
  .optimized-pdf-page-label{padding-left:2px}
}

/* 8.5.1-r5 · zoom immagini desktop reale + contrasto preview light + topbar dark senza separatore */
@media(min-width:701px){
  .attachment-preview-image-stage img[data-preview-zoom-target]{
    max-height:none!important;
    width:auto!important;
    height:auto!important;
  }
}
body[data-theme="light"] .attachment-preview-actions .button.ghost,
body[data-theme="system"] .attachment-preview-actions .button.ghost{
  background:#ffffff!important;
  color:#172033!important;
  border-color:#c5d0dc!important;
  box-shadow:0 2px 8px rgba(15,23,42,.07)!important;
}
body[data-theme="light"] .attachment-preview-actions .button.ghost:hover,
body[data-theme="system"] .attachment-preview-actions .button.ghost:hover{
  background:#f7f9fc!important;
  border-color:#9eacbd!important;
}
body[data-theme="dark"] .attachment-preview-actions .button.ghost{
  background:#3b4252!important;
  color:#eceff4!important;
  border-color:#596579!important;
  box-shadow:none!important;
}
@media(prefers-color-scheme:dark){
  body[data-theme="system"] .attachment-preview-actions .button.ghost{
    background:#3b4252!important;
    color:#eceff4!important;
    border-color:#596579!important;
    box-shadow:none!important;
  }
}
@media(min-width:901px){
  body[data-theme="dark"] .main-nav-v801 .nav-primary-row{
    border-bottom:0!important;
    padding-bottom:4px!important;
  }
}
@media(min-width:901px) and (prefers-color-scheme:dark){
  body[data-theme="system"] .main-nav-v801 .nav-primary-row{
    border-bottom:0!important;
    padding-bottom:4px!important;
  }
}


/* 8.6.2-r3 · preview desktop centrata realmente + pan bidirezionale dopo zoom */
@media(min-width:701px){
  .preview-zoom-viewer [data-preview-pan-surface]{
    display:flex!important;
    align-items:flex-start!important;
    min-width:0!important;
  }
  .preview-zoom-viewer [data-preview-pan-surface]:not(.has-horizontal-overflow){
    justify-content:center!important;
  }
  .preview-zoom-viewer [data-preview-pan-surface].has-horizontal-overflow{
    justify-content:flex-start!important;
  }
  .preview-zoom-viewer .attachment-preview-image-stage{
    flex:0 0 auto!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .preview-zoom-viewer .optimized-pdf-page-canvas>img{
    flex:0 0 auto!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .preview-zoom-viewer.is-zoomed [data-preview-pan-surface]{
    overflow:auto!important;
    max-height:76vh;
    overscroll-behavior:contain;
    cursor:grab;
    scrollbar-gutter:stable both-edges;
  }
  .preview-zoom-viewer.is-zoomed [data-preview-pan-surface].is-dragging{
    cursor:grabbing;
    user-select:none;
  }
  .preview-zoom-viewer.is-zoomed [data-preview-pan-surface] img{
    user-select:none;
    -webkit-user-drag:none;
  }
}

/* 8.7.0-r6 · DICOM settings: allineamento, cache inventory e manutenzione */
.dicom-settings-body{display:grid;gap:18px}
.dicom-settings-body>.settings-card{padding:18px;border:1px solid color-mix(in srgb,var(--primary) 14%,var(--border));border-radius:14px;background:var(--panel);min-width:0}
.dicom-settings-body .section-heading{margin-bottom:14px}
.dicom-cache-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.dicom-cache-config-grid,.dicom-limits-grid{padding:0!important;background:transparent!important;margin:0}
.dicom-cache-summary{margin-top:16px}
.dicom-cache-maintenance{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:13px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.dicom-cache-maintenance>div:first-child{display:grid;gap:4px;min-width:0}.dicom-cache-maintenance small{color:var(--muted)}
.dicom-cache-note{margin:13px 0 0}
.dicom-cache-table-wrap{overflow:auto;max-height:480px;border:1px solid var(--border);border-radius:12px}
.dicom-cache-table{margin:0;min-width:1180px}.dicom-cache-table th{position:sticky;top:0;z-index:1;background:var(--surface-2)}
.dicom-cache-table td{vertical-align:middle}.dicom-cache-row-actions{display:flex;gap:7px;flex-wrap:wrap;min-width:230px}
.button.tiny{padding:6px 9px;font-size:.72rem;min-height:31px}
.status-pill.muted{background:var(--surface-2);color:var(--muted);border-color:var(--border)}
body[data-theme="dark"] .dicom-settings-body>.settings-card{background:#313946}
@media(prefers-color-scheme:dark){body[data-theme="system"] .dicom-settings-body>.settings-card{background:#313946}}
@media(max-width:800px){.dicom-cache-heading,.dicom-cache-maintenance{display:grid}.dicom-cache-maintenance .actions{display:grid;grid-template-columns:1fr}.dicom-cache-maintenance .button{width:100%;justify-content:center}}
@media(max-width:700px){.dicom-settings-body{gap:14px}.dicom-settings-body>.settings-card{padding:14px}.dicom-cache-summary{grid-template-columns:1fr 1fr!important}}
.dicom-cache-worker-live{display:flex;align-items:center;gap:8px;margin-top:15px;padding:10px 12px;border:1px solid color-mix(in srgb,#16a34a 30%,var(--border));border-radius:11px;background:color-mix(in srgb,#16a34a 6%,var(--surface-2));font-size:.82rem}.dicom-cache-worker-live span:nth-of-type(2){color:var(--muted);min-width:0;overflow-wrap:anywhere}.dicom-cache-worker-live b{margin-left:auto}

/* Archivio 8.7.0-r7 · Pixel W/L Turbo */
.dicom-pixel-series-row>td{padding-top:0!important;background:color-mix(in srgb,var(--surface-2) 70%,transparent)}
.dicom-pixel-series-details{border-top:1px dashed var(--border);padding:9px 4px 4px}
.dicom-pixel-series-details>summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;color:var(--text)}
.dicom-pixel-series-details>summary::-webkit-details-marker{display:none}
.dicom-pixel-series-details>summary:before{content:'▸';font-size:.8rem;color:var(--muted);transition:transform .15s ease}
.dicom-pixel-series-details[open]>summary:before{transform:rotate(90deg)}
.dicom-pixel-series-details>summary span{font-weight:800;color:var(--primary)}
.dicom-pixel-series-details>summary small{margin-left:auto;color:var(--muted)}
.dicom-pixel-series-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.dicom-pixel-series-item{display:grid;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}
.dicom-pixel-series-item>div{display:grid;gap:2px;min-width:0}.dicom-pixel-series-item>div strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dicom-pixel-series-item>div small{color:var(--muted)}
.dicom-pixel-series-item>b{font-variant-numeric:tabular-nums;white-space:nowrap}
@media(max-width:900px){.dicom-pixel-series-grid{grid-template-columns:1fr}.dicom-pixel-series-details>summary{flex-wrap:wrap}.dicom-pixel-series-details>summary small{width:100%;margin-left:22px}}

/* Archivio 8.7.0-r10 · Pixel Cache proactive/manuale + progressione GUI live */
.dicom-pixel-auto{grid-column:1/-1;margin-top:2px}.dicom-pixel-series-item>.button{white-space:nowrap}
@media(max-width:640px){.dicom-pixel-series-item{grid-template-columns:minmax(0,1fr) auto}.dicom-pixel-series-item>b{grid-column:1/2}.dicom-pixel-series-item>.button{grid-column:2/3;grid-row:2}}

/* Archivio 8.7.0-r11 · configurazione DICOM leggibile e MPR Lite */
.dicom-config-board{display:grid;gap:14px}.dicom-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.dicom-config-section{display:grid;align-content:start;gap:12px;padding:16px!important;min-width:0}
.dicom-config-title{display:flex;align-items:flex-start;gap:10px}.dicom-config-title>span{display:grid;place-items:center;min-width:28px;height:28px;border-radius:9px;background:color-mix(in srgb,var(--primary) 14%,var(--surface-2));color:var(--primary);font-weight:850}
.dicom-config-title h4{margin:2px 0 3px;font-size:1rem}.dicom-config-title p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.4}
.dicom-current-value{display:flex;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:9px;background:var(--surface-2)}.dicom-current-value small{color:var(--muted)}
.dicom-feature-list{margin:0;padding-left:20px;color:var(--muted);font-size:.82rem;line-height:1.65}.dicom-config-section details>summary{cursor:pointer;color:var(--primary);font-weight:750}.dicom-config-section details .form-grid{margin-top:12px}
.dicom-config-section .actions{display:flex;gap:8px;flex-wrap:wrap}.dicom-config-section .dicom-cache-worker-live{margin:0}
.dicom-pixel-series-item{grid-template-columns:minmax(0,1fr) auto auto auto auto}
@media(max-width:900px){.dicom-config-grid{grid-template-columns:1fr}.dicom-pixel-series-item{grid-template-columns:minmax(0,1fr) auto}.dicom-pixel-series-item>[data-dicom-series-mpr]{grid-column:1/2}.dicom-pixel-series-item>[data-dicom-series-count]{grid-column:1/2}}

/* Archivio 8.7.0-r11 Stable · inventario DICOM dedicato */
.dicom-inventory-launcher{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,var(--panel)),var(--panel))!important}.dicom-inventory-launcher h3{margin:3px 0 5px}.dicom-inventory-launcher p{margin:0}.dicom-inventory-launcher-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dicom-inventory-page-head{align-items:center}.dicom-inventory-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.dicom-inventory-kpi{display:grid;gap:4px;padding:16px}.dicom-inventory-kpi>span,.dicom-inventory-kpi>small{color:var(--muted)}.dicom-inventory-kpi>span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.dicom-inventory-kpi>strong{font-size:1.45rem;font-variant-numeric:tabular-nums}
.dicom-inventory-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;margin-bottom:14px;padding:15px}.dicom-inventory-search{display:grid;gap:6px}.dicom-inventory-search>span{font-size:.78rem;font-weight:800;color:var(--muted)}.dicom-inventory-filter-actions{display:flex;align-items:center;gap:7px}.dicom-inventory-filter-actions .button{white-space:nowrap}.dicom-inventory-filters{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap}.dicom-inventory-filters .button{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.dicom-inventory-filters .button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.dicom-inventory-filters .button span{opacity:.78}.dicom-inventory-toolbar>#dicom-inventory-result-count{grid-column:1/-1;font-size:.82rem}
.dicom-inventory-worker{margin:0 0 14px}.dicom-study-list{display:grid;gap:12px}.dicom-study-card{display:grid;gap:14px;padding:18px;min-width:0}.dicom-study-card[hidden]{display:none}.dicom-study-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.dicom-study-identity{display:flex;align-items:flex-start;gap:12px;min-width:0}.dicom-study-id{display:grid;place-items:center;min-width:52px;height:34px;padding:0 8px;border-radius:10px;background:color-mix(in srgb,var(--primary) 12%,var(--surface-2));color:var(--primary);font-weight:850}.dicom-study-identity h2{margin:1px 0 5px;font-size:1.08rem;overflow-wrap:anywhere}.dicom-study-identity p{display:flex;gap:12px;flex-wrap:wrap;margin:0;color:var(--muted);font-size:.84rem}.dicom-study-identity p strong{color:var(--text)}
.dicom-study-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.dicom-study-overview>div{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}.dicom-study-overview span,.dicom-study-overview small{color:var(--muted);font-size:.78rem}.dicom-study-overview strong{font-size:1rem;font-variant-numeric:tabular-nums}.dicom-study-actions{display:flex;gap:8px;flex-wrap:wrap}.dicom-study-series{border-top:1px solid var(--border);padding-top:12px}.dicom-study-series>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.dicom-study-series>summary::-webkit-details-marker{display:none}.dicom-study-series>summary>span{display:grid;gap:2px}.dicom-study-series>summary small{color:var(--muted);font-weight:400}.dicom-study-series>summary>b{color:var(--primary);font-size:.84rem}.dicom-study-series>.dicom-pixel-series-grid{margin-top:12px}.dicom-study-no-series{margin:0;padding:10px 12px;border-radius:10px;background:var(--surface-2);color:var(--muted)}.dicom-inventory-empty{padding:28px;text-align:center}
@media(max-width:1000px){.dicom-inventory-summary{grid-template-columns:1fr 1fr}.dicom-inventory-toolbar{grid-template-columns:1fr}.dicom-inventory-filters{grid-column:auto}.dicom-inventory-filter-actions{display:grid;grid-template-columns:1fr 1fr}.dicom-inventory-toolbar>#dicom-inventory-result-count{grid-column:auto}}
@media(max-width:700px){.dicom-inventory-launcher,.dicom-study-card-head,.dicom-study-series>summary{display:grid}.dicom-inventory-launcher-actions,.dicom-inventory-launcher-actions .button{width:100%}.dicom-inventory-summary{grid-template-columns:1fr 1fr;gap:8px}.dicom-inventory-kpi{padding:12px}.dicom-inventory-kpi>strong{font-size:1.14rem}.dicom-inventory-filters{display:grid;grid-template-columns:1fr 1fr}.dicom-inventory-filters .button:first-child{grid-column:1/-1}.dicom-study-card{padding:14px}.dicom-study-overview{grid-template-columns:1fr}.dicom-study-actions{display:grid;grid-template-columns:1fr}.dicom-study-actions .button{width:100%}.dicom-study-series>summary>b{margin-top:4px}.dicom-study-identity{display:grid}.dicom-study-card-head>.status-pill{justify-self:start}}

/* Archivio 8.7.2-r1 · sezioni applicative visibili per utente */
.archive-visibility-card{display:grid;gap:14px}.archive-visibility-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.archive-visibility-option{--archive-accent:var(--primary);display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--border);border-radius:14px;background:var(--panel);cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.archive-visibility-option input{width:18px;height:18px;margin:0;accent-color:var(--archive-accent)}.archive-visibility-option>span:last-child{display:grid;gap:2px;min-width:0}.archive-visibility-option small{font-weight:500}.archive-visibility-option.active{border-color:color-mix(in srgb,var(--archive-accent) 55%,var(--border));box-shadow:inset 4px 0 0 var(--archive-accent),0 7px 20px color-mix(in srgb,var(--archive-accent) 8%,transparent)}.archive-visibility-option:hover{transform:translateY(-1px)}.archive-visibility-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--archive-accent) 10%,var(--panel));font-size:1.1rem}.archive-visibility-financial{--archive-accent:#16a34a}.archive-visibility-documental{--archive-accent:#2563eb}.archive-visibility-medical{--archive-accent:#e2556f}.archive-visibility-actions{justify-content:flex-start}.archive-home-visible-1{grid-template-columns:minmax(0,650px)!important;justify-content:center}.archive-home-visible-2{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:900px;margin-inline:auto}.archive-home-visible-1 .archive-home-card{min-height:210px}.archive-home-visible-1 .archive-home-card-copy-v841 h2{font-size:1.65rem}
body[data-theme="dark"] .archive-visibility-option{background:#2e3440;border-color:#4b5563}.archive-visibility-option.active{background:color-mix(in srgb,var(--archive-accent) 5%,var(--panel))}
@media(max-width:760px){.archive-visibility-grid{grid-template-columns:1fr}.archive-home-visible-2{grid-template-columns:1fr!important}.archive-visibility-option:hover{transform:none}}

/* Archivio 8.7.3-r1 · riepiloghi filtrati e grafici finanziari SVG */
.financial-filter-summary{display:grid;gap:12px}.financial-filter-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.financial-filter-summary-head h2{margin:2px 0 0}.financial-filter-summary-head small{color:var(--muted)}.financial-filter-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.financial-filter-stats.single{grid-template-columns:minmax(0,1fr)}.financial-filter-stat{padding:15px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);display:grid;gap:4px}.financial-filter-stat span{font-size:.8rem;color:var(--muted);font-weight:750}.financial-filter-stat strong{font-size:1.35rem}.financial-balance-state{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:850;border:1px solid var(--border);background:var(--surface-2)}.financial-balance-state.positive{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.financial-balance-state.negative{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.financial-balance-state.even{color:var(--muted)}
.financial-chart-card .section-heading{gap:12px}.financial-chart-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.financial-chart-controls label{display:flex;align-items:center;gap:7px;font-size:.8rem;color:var(--muted);font-weight:750}.financial-chart-controls select{width:auto;min-width:128px;padding:7px 30px 7px 9px}.financial-chart-controls select.save-error{outline:2px solid #dc2626}.financial-chart{width:100%;min-height:250px;overflow:hidden}.financial-chart svg{display:block;width:100%;height:auto;max-height:430px;overflow:visible}.financial-chart .fin-axis{stroke:color-mix(in srgb,var(--muted) 55%,transparent);stroke-width:1}.financial-chart .fin-grid{stroke:color-mix(in srgb,var(--border) 72%,transparent);stroke-width:1}.financial-chart .fin-axis-label{fill:var(--muted);font-size:10px}.financial-chart .fin-label{fill:var(--text);font-size:11px;font-weight:700}.financial-chart .fin-value{fill:var(--muted);font-size:10px;font-weight:700}.financial-chart .fin-line{fill:none;stroke:var(--primary);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.financial-chart .fin-area{fill:color-mix(in srgb,var(--primary) 22%,transparent);stroke:none}.financial-chart .fin-mark{transition:opacity .15s ease;cursor:default}.financial-chart a .fin-mark,.financial-chart a.fin-mark{cursor:pointer}.financial-chart .fin-mark:hover{opacity:.78}.financial-chart-legend{display:grid;gap:7px;margin-top:-4px}.financial-chart-legend>div,.financial-chart-legend>a{display:grid;grid-template-columns:11px minmax(0,1fr) auto;gap:8px;align-items:center;color:inherit;text-decoration:none;font-size:.82rem}.financial-chart-legend i{width:10px;height:10px;border-radius:50%}.financial-chart-legend span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.financial-chart-note{font-size:.76rem;color:var(--muted);margin-top:6px}
@media(max-width:760px){.financial-filter-stats{grid-template-columns:1fr}.financial-filter-summary-head{display:grid}.financial-chart-controls{width:100%}.financial-chart-controls label{width:100%;justify-content:space-between}.financial-chart-controls select{min-width:150px}.financial-chart{min-height:230px}}
body[data-theme="dark"] .financial-balance-state.positive{background:#173a29;color:#86efac;border-color:#286844}body[data-theme="dark"] .financial-balance-state.negative{background:#432426;color:#fecaca;border-color:#7f1d1d}

/* Archivio 8.7.3-r2 · bilancio: gerarchia visiva, colori semantici e form Entrata/Uscita */
.financial-kpi{--financial-kpi-color:#2563eb;position:relative;border-color:color-mix(in srgb,var(--financial-kpi-color) 32%,var(--border))!important;background:color-mix(in srgb,var(--financial-kpi-color) 7%,var(--panel))!important;box-shadow:inset 4px 0 0 var(--financial-kpi-color)}
.financial-kpi strong{color:var(--financial-kpi-color)!important}
.financial-kpi-income{--financial-kpi-color:#15803d}.financial-kpi-expense{--financial-kpi-color:#dc2626}.financial-kpi-balance{--financial-kpi-color:#2563eb}
.dashboard-balance-stats{margin-bottom:32px}.financial-dashboard-secondary-stats{margin-top:0!important}
.financial-filter-summary-spaced{margin-bottom:30px}
.financial-flow-field{padding:12px 14px;border:1px solid color-mix(in srgb,#2563eb 28%,var(--border));border-radius:14px;background:color-mix(in srgb,#2563eb 5%,var(--panel))}.financial-flow-field select{font-weight:800}.financial-flow-field small{line-height:1.35}
@media(max-width:700px){.dashboard-balance-stats,.financial-filter-summary-spaced{margin-bottom:24px}}


/* Archivio 8.7.3-r3 · chiusura finanziario desktop/mobile + OCR laboratorio esplicito */
.financial-kpi{display:grid;gap:6px}.financial-kpi>span,.financial-kpi>strong{display:block;line-height:1.2}
.financial-flow-badge{--flow-color:#64748b;--flow-ink:#475569;display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:4px 8px;border:1px solid color-mix(in srgb,var(--flow-color) 34%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--flow-color) 9%,var(--panel));color:var(--flow-ink);font-size:.76rem;font-weight:900;white-space:nowrap}.financial-flow-badge.income{--flow-color:#16a34a;--flow-ink:#15803d}.financial-flow-badge.expense{--flow-color:#ef4444;--flow-ink:#dc2626}
.financial-records-table{table-layout:fixed;width:100%;min-width:0}.financial-records-table th,.financial-records-table td{padding:10px 7px;font-size:.82rem;overflow-wrap:anywhere;word-break:normal}.financial-records-table th{font-size:.69rem}.financial-records-table .check-col{width:38px;padding-left:6px;padding-right:6px}.financial-records-table .col-title{width:15%}.financial-records-table .col-type{width:9%}.financial-records-table .col-category{width:8%}.financial-records-table .col-entity{width:9%}.financial-records-table .col-reference{width:10%}.financial-records-table .col-owner{width:8%}.financial-records-table .col-date{width:78px}.financial-records-table .col-amount{width:86px}.financial-records-table .col-flow{width:78px}.financial-records-table .col-attachments{width:62px;text-align:center}.financial-records-table .col-actions{width:44px;text-align:center;padding-left:3px;padding-right:6px}.financial-records-table .col-date,.financial-records-table .col-amount,.financial-records-table .col-flow,.financial-records-table .col-actions{white-space:nowrap}.financial-records-table .col-title a{display:block;line-height:1.28}.financial-records-table .row-icon-actions{justify-content:center}.financial-records-table .quick-edit-button{width:34px;height:34px;background:var(--panel)}.financial-records-table .attachment-peek-trigger{min-width:38px;padding-left:6px;padding-right:6px}
.quick-favorite-field{align-self:end;min-height:44px;padding:9px 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.quick-favorite-field input{width:18px;height:18px;margin:0}
.medical-lab-mode-field{align-items:flex-start;padding:13px 14px;border:1px solid color-mix(in srgb,#0f766e 30%,var(--border));border-radius:14px;background:color-mix(in srgb,#0f766e 6%,var(--panel))}.medical-lab-mode-field input{width:19px;height:19px;margin-top:2px;accent-color:#0f766e}.medical-lab-mode-field>span{display:grid;gap:3px}.medical-lab-mode-field small{line-height:1.4}.medical-lab-mode-badge{color:#0f766e}.lab-mode-warning{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;border-left:5px solid #d97706}.lab-mode-warning>div{display:grid;gap:4px}.lab-mode-warning p{margin:0;color:var(--muted);line-height:1.45}
body[data-theme="dark"] .financial-flow-badge.income{--flow-color:#22c55e;--flow-ink:#86efac}body[data-theme="dark"] .financial-flow-badge.expense{--flow-color:#ef4444;--flow-ink:#fca5a5}body[data-theme="dark"] .medical-lab-mode-badge{color:#5eead4}body[data-theme="dark"] .medical-lab-mode-field{background:color-mix(in srgb,#14b8a6 10%,var(--panel));border-color:color-mix(in srgb,#14b8a6 35%,var(--border))}
@media(prefers-color-scheme:dark){body[data-theme="system"] .financial-flow-badge.income{--flow-color:#22c55e;--flow-ink:#86efac}body[data-theme="system"] .financial-flow-badge.expense{--flow-color:#ef4444;--flow-ink:#fca5a5}body[data-theme="system"] .medical-lab-mode-badge{color:#5eead4}body[data-theme="system"] .medical-lab-mode-field{background:color-mix(in srgb,#14b8a6 10%,var(--panel));border-color:color-mix(in srgb,#14b8a6 35%,var(--border))}}
@media(max-width:1080px) and (min-width:901px){.financial-records-table th,.financial-records-table td{padding-left:5px;padding-right:5px;font-size:.78rem}.financial-records-table th{font-size:.64rem}.financial-records-table .col-title{width:14%}.financial-records-table .col-reference{width:9%}.financial-records-table .col-owner{width:7%}}
@media(max-width:700px){.lab-mode-warning{display:grid}.lab-mode-warning .button{width:100%}.medical-lab-mode-field{padding:12px}.record-mobile-context .financial-flow-badge{justify-self:start}}
/* Archivio 8.7.3-r4 Stable · asse zero evidente nei grafici di bilancio signed-aware. */
.financial-chart .fin-zero-axis{stroke:color-mix(in srgb,var(--text) 55%,transparent);stroke-width:1.4}

/* Archivio 8.8.4-r2 Candidate · UI usability, filtri multi-valore e coerenza liste */
@media(min-width:901px){
  /* Home generale: il selettore delle tre sezioni deve essere leggibile come negli screenshot approvati. */
  body.global-context .main-nav-v801 .archive-switcher{padding:7px 9px!important;gap:9px!important;border-radius:14px!important}
  body.global-context .main-nav-v801 .archive-switcher>span{font-size:.78rem!important;margin-right:.2rem!important}
  body.global-context .main-nav-v801 .archive-switch-link{font-size:.92rem!important;padding:.72rem .92rem!important;border-radius:12px!important}
  /* Nelle sezioni il tema chiaro resta invariato; in scuro torna il separatore tra navigazione primaria e secondaria. */
  body[data-theme="dark"].archive-context-active .main-nav-v801 .nav-primary-row{border-bottom:1px solid #46566a!important;padding-bottom:8px!important}
}
@media(min-width:901px) and (prefers-color-scheme:dark){
  body[data-theme="system"].archive-context-active .main-nav-v801 .nav-primary-row{border-bottom:1px solid #46566a!important;padding-bottom:8px!important}
}

/* Categorie principali r2: un solo formato in Finanziario/Documentale/Medico.
   Etichette regolari, barre più grandi e Mostra tutto/Riduci quando le categorie sono molte. */
.dashboard-widget[data-block="section_categories"] .bar-chart{gap:5px!important;margin-top:16px}
.dashboard-widget[data-block="section_categories"] .bar-row{display:grid!important;grid-template-columns:minmax(118px,38%) minmax(78px,1fr) auto;align-items:center;gap:10px;min-height:46px;padding:5px 2px;border-radius:9px;color:var(--text);text-decoration:none}
.dashboard-widget[data-block="section_categories"] .bar-row:hover{background:color-mix(in srgb,var(--section-accent) 6%,var(--surface-2))}
.dashboard-widget[data-block="section_categories"] .bar-row>div:first-child{display:contents!important}
.dashboard-widget[data-block="section_categories"] .bar-row>div:first-child span{grid-column:1;min-width:0;font-size:.86rem;font-weight:600;line-height:1.22;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dashboard-widget[data-block="section_categories"] .bar-row>div:first-child b{grid-column:3;font-size:.78rem;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.dashboard-widget[data-block="section_categories"] .bar-track{grid-column:2;grid-row:1;height:22px!important;border-radius:6px;background:transparent!important;overflow:hidden}
.dashboard-widget[data-block="section_categories"] .bar-track i{min-width:3px;border-radius:6px}
.financial-category-chart .fin-category-label{font-size:13px!important;font-weight:600!important}
.financial-category-chart .fin-category-value{font-size:12px!important;font-weight:700!important}
.financial-category-chart svg{max-height:none}
.financial-category-expand-toggle{margin-top:8px}
@media(max-width:700px){
  .dashboard-widget[data-block="section_categories"] .bar-row{grid-template-columns:minmax(104px,40%) minmax(68px,1fr) auto;gap:8px;min-height:48px;padding:5px 0}
  .dashboard-widget[data-block="section_categories"] .bar-row>div:first-child span{font-size:.88rem;text-align:left}
  .dashboard-widget[data-block="section_categories"] .bar-track{height:22px!important}
  .financial-category-chart .fin-category-label{font-size:13px!important}
}

/* Backup: il CTA Ripristina deve mantenere contrasto alto nel tema chiaro. */
body[data-theme="light"] .backup-actions .button.warning-button,
body[data-theme="light"] .backup-mobile-actions .button.warning-button{background:#fff3cd!important;color:#713f12!important;-webkit-text-fill-color:#713f12!important;border-color:#d69e2e!important;box-shadow:none!important}
@media(prefers-color-scheme:light){
  body[data-theme="system"] .backup-actions .button.warning-button,
  body[data-theme="system"] .backup-mobile-actions .button.warning-button{background:#fff3cd!important;color:#713f12!important;-webkit-text-fill-color:#713f12!important;border-color:#d69e2e!important;box-shadow:none!important}
}

/* Filtri multi-valore: checkbox nello stesso campo = OR; campi diversi restano in AND lato query. */
.records-filter-field{display:flex;flex-direction:column;gap:7px;min-width:0;font-weight:650;font-size:.92rem}
.records-filter-label{display:block;line-height:1.3}
.records-multiselect{position:relative;min-width:0}
.records-multiselect>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:9px;width:100%;min-height:44px;padding:10px 11px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text);cursor:pointer;font:inherit;font-weight:600}
.records-multiselect>summary::-webkit-details-marker{display:none}
.records-multiselect>summary>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.records-multiselect>summary>b{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:color-mix(in srgb,var(--section-accent) 12%,var(--surface-2));color:var(--section-accent-strong);font-size:.72rem}
.records-multiselect>summary::after{content:"⌄";flex:0 0 auto;color:var(--muted);font-weight:900}
.records-multiselect[open]>summary{outline:3px solid color-mix(in srgb,var(--primary) 18%,transparent);border-color:var(--primary)}
.records-multiselect[open]>summary::after{content:"⌃"}
.records-multiselect-menu{position:absolute;z-index:45;top:calc(100% + 6px);left:0;min-width:max(100%,280px);max-width:min(420px,90vw);padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--panel);box-shadow:0 16px 38px rgba(15,23,42,.16)}
.records-multiselect-menu>small{display:block;margin:0 2px 8px!important;line-height:1.35}
.records-multiselect-options{display:grid;gap:4px;max-height:260px;overflow:auto;padding-right:2px}
.records-multiselect-option{display:flex!important;flex-direction:row!important;align-items:center!important;gap:9px!important;min-height:38px;padding:7px 8px;border-radius:8px;font-size:.88rem!important;font-weight:650!important;cursor:pointer}
.records-multiselect-option:hover{background:var(--surface-2)}
.records-multiselect-option input{width:17px!important;height:17px!important;min-height:0!important;margin:0!important;flex:0 0 17px}
.records-multiselect-option span{min-width:0;overflow-wrap:anywhere}
.records-multiselect-empty{padding:8px;color:var(--muted);font-size:.85rem}
body[data-theme="dark"] .records-multiselect>summary,body[data-theme="dark"] .records-multiselect-menu{background:#3b4252;border-color:#596579;color:#eceff4}
@media(prefers-color-scheme:dark){body[data-theme="system"] .records-multiselect>summary,body[data-theme="system"] .records-multiselect-menu{background:#3b4252;border-color:#596579;color:#eceff4}}
@media(max-width:700px){.records-multiselect-menu{position:static;min-width:0;max-width:none;margin-top:6px;box-shadow:none}.records-multiselect-options{max-height:320px}}

/* Tutti gli elementi: Medico e Documentale usano la stessa densità tipografica del Finanziario. */
.records-table-unified th,.records-table-unified td{padding:10px 7px;font-size:.82rem;overflow-wrap:anywhere;word-break:normal}
.records-table-unified th{font-size:.69rem}
.records-table-unified .check-col{width:38px;padding-left:6px;padding-right:6px}
.records-table-unified .col-date{width:78px;white-space:nowrap}
.records-table-unified .col-attachments{width:62px;text-align:center}
.records-table-unified .col-actions{width:44px;text-align:center;padding-left:3px;padding-right:6px;white-space:nowrap}
.records-table-unified .col-title a{display:block;line-height:1.28}
.records-table-unified .row-icon-actions{justify-content:center}
.records-table-unified .quick-edit-button{width:34px;height:34px;background:var(--panel)}
.records-table-unified .attachment-peek-trigger{min-width:38px;padding-left:6px;padding-right:6px}
@media(max-width:1080px) and (min-width:901px){.records-table-unified th,.records-table-unified td{padding-left:5px;padding-right:5px;font-size:.78rem}.records-table-unified th{font-size:.64rem}}

/* Scheda elemento: riporta in primo piano il download cumulativo già supportato dal backend. */
.attachment-section-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
@media(max-width:700px){.attachment-section-actions{width:100%;justify-content:flex-start}.attachment-section-actions .attachment-download-all{width:auto;flex:1 1 180px}}

/* ==========================================================================
   Archivio 8.8.4-r3 Candidate · Dashboard UI consistency
   ========================================================================== */
/* Un solo ritmo visivo per i widget delle tre sezioni. Le visualizzazioni
   restano adatte al dato (torta, barre, elenco), ma header, densita' e CTA
   di espansione seguono lo stesso contratto. */
.dashboard-widget>.panel{display:flex;flex-direction:column;min-width:0}
.dashboard-widget>.panel>.section-heading{align-items:flex-start;gap:12px;min-height:46px;margin-bottom:13px}
.dashboard-widget>.panel>.section-heading>div:first-child{min-width:0}
.dashboard-widget>.panel>.section-heading h2{font-size:1.05rem;line-height:1.2;letter-spacing:-.012em}
.dashboard-widget .widget-kicker{font-size:.7rem;line-height:1.25;letter-spacing:.075em}
.dashboard-widget .count-badge{flex:0 0 auto;min-width:34px;height:34px;font-size:.82rem}
.dashboard-widget .dashboard-expand-region{min-width:0}

/* Il comando di espansione e' sempre l'ultima azione del pannello, mai dentro
   il layout del grafico/donut: questo evita pulsanti stretti o disallineati. */
.dashboard-widget>.panel>.dashboard-expand-toggle{
  display:flex;align-items:center;justify-content:center;gap:8px;width:100%;
  min-height:40px;margin:14px 0 0;padding:8px 12px;
  border:1px solid color-mix(in srgb,var(--section-accent) 28%,var(--border));
  border-radius:11px;background:color-mix(in srgb,var(--section-accent) 6%,var(--panel));
  color:var(--section-accent-strong);font:inherit;font-size:.79rem;font-weight:800;
  line-height:1.15;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease
}
.dashboard-widget>.panel>.dashboard-expand-toggle:hover{background:color-mix(in srgb,var(--section-accent) 10%,var(--panel));border-color:color-mix(in srgb,var(--section-accent) 48%,var(--border));transform:translateY(-1px)}
.dashboard-widget>.panel>.dashboard-expand-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--section-accent) 22%,transparent);outline-offset:2px}
.dashboard-widget>.panel>.dashboard-expand-toggle[hidden]{display:none!important}
.dashboard-widget.dashboard-expanded>.panel>.dashboard-expand-toggle{background:var(--surface-2);border-color:var(--border);color:var(--muted)}

/* Barre riassuntive: Categorie e Soggetti/Strutture usano lo stesso formato
   compatto del Finanziario, senza titoli pesanti sopra ogni barra. */
.dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-chart{gap:6px!important;margin-top:2px!important}
.dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-row{
  display:grid!important;grid-template-columns:minmax(118px,38%) minmax(82px,1fr) auto;
  align-items:center;gap:10px;min-height:46px;padding:5px 3px;border-radius:9px;
  color:var(--text);text-decoration:none
}
.dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-row:hover{background:color-mix(in srgb,var(--section-accent) 6%,var(--surface-2))}
.dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-row>div:first-child{display:contents!important}
.dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-row>div:first-child span{
  grid-column:1;min-width:0;font-size:.87rem;font-weight:550;line-height:1.22;text-align:right;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
.dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-row>div:first-child b{
  grid-column:3;font-size:.78rem;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums
}
.dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-track{
  grid-column:2;grid-row:1;height:22px!important;border-radius:6px;background:transparent!important;overflow:hidden
}
.dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-track i{min-width:3px;border-radius:6px}

/* Liste e legende hanno un ritmo verticale comune, mantenendo la propria
   semantica (percentuali, importi, frecce, preview allegati). */
.dashboard-widget .chart-legend.dashboard-expand-region{gap:8px}
.dashboard-widget .chart-legend.dashboard-expand-region>a,
.dashboard-widget .chart-legend.dashboard-expand-region>div{min-height:34px}
.dashboard-widget .dashboard-expand-region>.list-row,
.dashboard-widget .operational-list.dashboard-expand-region>.list-row{min-height:42px}

/* Finanziario / Categorie: dimensioni leggibili ma compatte; il numero di
   righe visibili e' deciso dallo stesso motore di densita' degli altri widget. */
.financial-category-chart .fin-category-label{font-size:14px!important;font-weight:550!important}
.financial-category-chart .fin-category-value{font-size:12.5px!important;font-weight:700!important}
.financial-category-chart svg{max-height:none!important}

@media(max-width:700px){
  .dashboard-widget>.panel>.section-heading{min-height:0;margin-bottom:12px}
  .dashboard-widget>.panel>.dashboard-expand-toggle{min-height:44px;margin-top:12px;font-size:.83rem}
  .dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-row{
    grid-template-columns:minmax(104px,40%) minmax(70px,1fr) auto;gap:8px;min-height:48px;padding:5px 0
  }
  .dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-row>div:first-child span{font-size:.88rem;font-weight:550;text-align:left}
  .dashboard-widget:is([data-block="categories"],[data-block="section_categories"],[data-block="section_entities"]) .bar-track{height:22px!important}
  .financial-category-chart .fin-category-label{font-size:14px!important}
  .financial-category-chart .fin-category-value{font-size:12.5px!important}
}

/* ==========================================================================
   Archivio 8.8.4-r4 Candidate · Dashboard final consistency
   ========================================================================== */
/* I valori 260/380/520/680 restano il formato di salvataggio compatibile,
   ma da r4 sono profili semantici condivisi: a parita' di profilo le card
   Finanziario, Documentale e Medico hanno la stessa altezza iniziale. */
.dashboard-widget[data-height="260"]{--dashboard-profile-height:310px}
.dashboard-widget[data-height="380"]{--dashboard-profile-height:430px}
.dashboard-widget[data-height="520"]{--dashboard-profile-height:570px}
.dashboard-widget[data-height="680"]{--dashboard-profile-height:720px}
.dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded):not([data-block="stats"]):not([data-block="section_stats"]){
  height:var(--dashboard-profile-height)!important;
  min-height:var(--dashboard-profile-height)!important;
  overflow:visible!important
}
.dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded):not([data-block="stats"]):not([data-block="section_stats"])>.panel{
  height:100%!important;min-height:0!important;max-height:none!important;overflow:hidden!important
}
.dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded)>.panel>.section-heading{flex:0 0 auto}
.dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded)>.panel>.dashboard-expand-toggle{flex:0 0 auto;margin-top:auto}

/* Le aree grafiche occupano il budget rimasto nella card; nessun renderer
   puo' imporre una propria altezza storica e far crescere il widget. */
.dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded) .financial-chart{
  flex:1 1 auto;min-height:0!important;max-height:none!important;overflow:hidden
}
.dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded) .financial-chart:not([data-rendered-type="bar"]):not([data-rendered-type="pie"]) svg{
  width:100%;height:100%;max-height:none!important
}
.dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded) .donut-layout{
  flex:1 1 auto;min-height:0!important;height:auto!important;margin-top:0!important;overflow:hidden
}
.dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded) .vertical-bars{
  flex:1 1 auto;min-height:145px!important;max-height:none!important;margin-top:0
}

/* Torta Finanziario: stessa grammatica del donut delle altre sezioni.
   Grafico e legenda stanno affiancati, evitando il grande vuoto verticale
   della r3. La torta usa sempre il dataset completo; la CTA espande la legenda. */
.financial-chart[data-rendered-type="pie"]{
  display:grid;grid-template-columns:minmax(145px,.78fr) minmax(180px,1.22fr);
  gap:20px;align-items:center;align-content:center
}
.financial-pie-plot{display:grid;place-items:center;min-width:0;min-height:0}
.financial-pie-plot svg{display:block;width:min(100%,220px)!important;height:auto!important;max-height:220px!important}
.financial-chart[data-rendered-type="pie"] .financial-chart-legend{margin:0;align-content:center;min-width:0}
.financial-chart-legend>div,.financial-chart-legend>a{min-height:32px;padding:3px 2px;border-radius:8px}
.financial-chart-legend>a:hover{background:color-mix(in srgb,var(--section-accent) 6%,var(--surface-2))}

/* Anche il donut Jinja di Medico/Documentale usa un corpo compatto e
   coerente. Legenda e grafico restano affiancati finche' lo spazio lo consente. */
.dashboard-widget .donut-layout{grid-template-columns:minmax(130px,180px) minmax(0,1fr);gap:20px}
.dashboard-widget .donut-layout .donut{justify-self:center}
.dashboard-widget .chart-legend{min-width:0}
.dashboard-widget .chart-legend-link{min-width:0}
.dashboard-widget .chart-legend-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Barre e liste: footer in fondo alla card quando il profilo e' esplicito,
   senza introdurre scroll interni. */
.dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded) .dashboard-expand-region{flex:0 1 auto}
.dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded) .operational-list.dashboard-expand-region{min-height:0}

/* Le KPI sono contenuto statico: la densita' non ha significato e non deve
   alterarne l'altezza. Il selettore e' nascosto nei template r4. */
.dashboard-widget[data-block="stats"],.dashboard-widget[data-block="section_stats"]{height:auto!important;min-height:0!important}

@media(max-width:700px){
  /* Su mobile il profilo mantiene la stessa densita' ma non forza card enormi:
     il limite iniziale resta 5 e la CTA conserva un touch target ampio. */
  .dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded):not([data-block="stats"]):not([data-block="section_stats"]){
    height:auto!important;min-height:min(var(--dashboard-profile-height),560px)!important
  }
  .dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded):not([data-block="stats"]):not([data-block="section_stats"])>.panel{
    min-height:min(var(--dashboard-profile-height),560px)!important;height:auto!important;overflow:hidden!important
  }
  .dashboard-grid .dashboard-widget .donut-layout{
    grid-template-columns:minmax(112px,145px) minmax(0,1fr)!important;gap:14px;justify-items:stretch!important
  }
  .dashboard-grid .dashboard-widget .donut-layout .donut{width:min(138px,100%)!important}
  .financial-chart[data-rendered-type="pie"]{grid-template-columns:minmax(112px,145px) minmax(0,1fr);gap:14px}
  .financial-pie-plot svg{width:min(100%,150px)!important;max-height:150px!important}
  .financial-chart-legend>div,.financial-chart-legend>a{min-height:34px;font-size:.8rem}
  .financial-chart-controls{align-items:flex-end}
}
@media(max-width:390px){
  .dashboard-grid .dashboard-widget .donut-layout,
  .financial-chart[data-rendered-type="pie"]{grid-template-columns:104px minmax(0,1fr);gap:10px}
  .dashboard-grid .dashboard-widget .donut-layout .donut{width:104px!important}
  .financial-pie-plot svg{width:112px!important;max-height:112px!important}
  .financial-chart-legend>div,.financial-chart-legend>a{font-size:.76rem;gap:6px}
}


/* ==========================================================================
   Archivio 8.8.4-r5 Candidate · Dashboard monthly-only chart selector
   ========================================================================== */
/* La personalizzazione deve restare una lista compatta indipendentemente dal
   profilo salvato del widget. Le regole di altezza r4 valgono solo fuori
   dall'editor: questo evita gli spazi verticali anomali visti nel collaudo r4. */
.dashboard-grid.editing .dashboard-widget,
.dashboard-grid.editing .dashboard-widget[data-height]:not([data-height="auto"]),
.dashboard-grid.editing .dashboard-widget[data-height="260"],
.dashboard-grid.editing .dashboard-widget[data-height="380"],
.dashboard-grid.editing .dashboard-widget[data-height="520"],
.dashboard-grid.editing .dashboard-widget[data-height="680"]{
  height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important
}
.dashboard-grid.editing .widget-tools{margin:0!important}

/* I tre Andamento mensile condividono lo stesso renderer e la stessa toolbar.
   Gli altri widget restano rappresentazioni canoniche (donut/barre/liste). */
.section-monthly-chart{width:100%;min-width:0}
.dashboard-widget[data-block="monthly"] .financial-chart-controls,
.dashboard-widget[data-block="section_monthly"] .financial-chart-controls{margin-left:auto}

/* Finanziario/Categorie usa esattamente la grammatica a barre delle sezioni
   Medico e Documentale; nessun renderer SVG speciale e nessun selettore grafico. */
.dashboard-widget[data-block="categories"] .bar-chart{gap:6px!important;margin-top:2px!important}

@media(max-width:700px){
  .dashboard-widget[data-block="monthly"] .financial-chart-controls,
  .dashboard-widget[data-block="section_monthly"] .financial-chart-controls{width:100%;justify-content:flex-end}
  .dashboard-widget[data-block="monthly"] .financial-chart-controls label,
  .dashboard-widget[data-block="section_monthly"] .financial-chart-controls label{min-width:min(170px,100%)}
}

/* r5 hardening: la regola di profilo r4 ha selettori molto specifici e !important.
   In editor serve una specificita' superiore, altrimenti Media/Alta continuano a
   riservare 430/570px pur con il contenuto del widget nascosto. */
.dashboard-grid.dashboard-grid-v8237.editing > .dashboard-widget[data-height]:not([data-height="auto"]):not(.dashboard-expanded):not([data-block="stats"]):not([data-block="section_stats"]),
.dashboard-grid.dashboard-grid-v8237.editing > .dashboard-widget[data-height="260"],
.dashboard-grid.dashboard-grid-v8237.editing > .dashboard-widget[data-height="380"],
.dashboard-grid.dashboard-grid-v8237.editing > .dashboard-widget[data-height="520"],
.dashboard-grid.dashboard-grid-v8237.editing > .dashboard-widget[data-height="680"]{
  height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important
}

/* ========================================================================== 
   Archivio 8.8.4-r6 Candidate · Mobile dashboard density hardening
   ========================================================================== */
/* Alcune righe a barre usano display:grid!important per uniformare
   Finanziario/Documentale/Medico. Su smartphone quella regola poteva vincere
   sulla semantica [hidden] applicata dal motore Mostra tutto, rendendo
   visibili tutte le categorie pur con il limite calcolato correttamente.
   Questa regola finale e volutamente piu specifica e rende [hidden]
   autorevole per OGNI famiglia di dashboard-expand-region, su desktop e mobile. */
.dashboard-grid .dashboard-widget .dashboard-expand-region > [hidden]{display:none!important}

/* 8.9.1-r1 · impersonificazione amministratore */
.impersonation-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px max(18px,calc((100vw - 1440px)/2));background:#fff7ed;border-bottom:1px solid #fdba74;color:#9a3412;position:sticky;top:var(--topbar-height,0);z-index:44;box-shadow:0 4px 14px rgba(154,52,18,.08)}
.impersonation-banner>div{display:flex;align-items:center;gap:10px;min-width:0}.impersonation-banner span{font-size:.9rem}.impersonation-banner form{margin:0;flex:0 0 auto}.impersonation-banner .button{background:#9a3412}
.user-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.user-row-actions form{margin:0}.user-row-891 .user-row-identity{min-width:180px}
body[data-theme="dark"] .impersonation-banner{background:#431407;color:#fed7aa;border-color:#9a3412}
@media(max-width:700px){.impersonation-banner{position:relative;top:auto;align-items:stretch;flex-direction:column;padding:10px 14px}.impersonation-banner>div{align-items:flex-start;flex-direction:column;gap:3px}.impersonation-banner .button{width:100%}.user-row-891{align-items:stretch;flex-direction:column}.user-row-actions{justify-content:flex-start}}

/* 8.9.1-r1 · ingresso documentale rapido */
.document-fast-entry-hint{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--primary) 6%,var(--panel));font-size:.92rem}.document-fast-entry-hint strong{white-space:nowrap;color:var(--primary)}.document-fast-entry-hint span{color:var(--muted);line-height:1.45}.document-auto-metadata{padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
@media(max-width:700px){.document-fast-entry-hint{flex-direction:column;gap:4px}.record-form-actions{align-items:stretch}.record-form-actions .button{width:100%}}

/* 8.9.1-r1 · revisione per-file dell'import documentale */
.bulk-document-edit-row{display:grid!important;grid-template-columns:auto minmax(160px,.65fr) minmax(320px,1.35fr)!important;align-items:start!important;gap:14px!important}.bulk-document-file-copy{min-width:0}.bulk-document-file-copy strong{display:block;overflow-wrap:anywhere}.bulk-document-per-file-fields{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(150px,.7fr);gap:10px;min-width:0}.bulk-document-per-file-fields .bulk-pdf-file-password{grid-column:1/-1}.bulk-document-per-file-fields label{font-size:.82rem}.bulk-document-per-file-fields input{margin-top:2px}
@media(max-width:760px){.bulk-document-edit-row{grid-template-columns:auto minmax(0,1fr)!important}.bulk-document-file-copy{grid-column:2}.bulk-document-per-file-fields{grid-column:1/-1;grid-template-columns:1fr}.bulk-document-per-file-fields .bulk-pdf-file-password{grid-column:auto}}

/* 8.9.1-r1 · metadati documentali visibili nell'elenco */
.document-row-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:6px}.document-row-meta span{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;font-size:.7rem;font-weight:750;line-height:1.2;background:var(--surface-2);border:1px solid var(--border);color:var(--muted)}.document-row-meta .document-expiry-chip.expired{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.document-row-meta .document-expiry-chip.active{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.document-row-meta.mobile{margin:7px 0 0}
body[data-theme="dark"] .document-row-meta .document-expiry-chip.expired{background:#450a0a;border-color:#7f1d1d;color:#fecaca}body[data-theme="dark"] .document-row-meta .document-expiry-chip.active{background:#431407;border-color:#9a3412;color:#fed7aa}
/* 8.9.1-r1 · nel nuovo Documentale il file viene prima dei metadati */
.document-new-flow .document-fast-entry-hint{order:-40}.document-new-flow .attachments-collapse{order:-30}.document-new-flow .document-title-field{order:-20}.document-new-flow #duplicate-check-panel{order:-10}

/* 8.9.1-r2 · Smart Inbox documentale */
.smart-inbox-head{align-items:flex-end}.smart-inbox{max-width:1240px}.smart-inbox-drop-panel{border-color:color-mix(in srgb,var(--primary) 24%,var(--border))}.smart-inbox-dropzone{min-height:180px;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 4%,var(--surface)),var(--surface-soft))}.smart-inbox-defaults>details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.smart-inbox-defaults>details>summary::-webkit-details-marker{display:none}.smart-inbox-defaults>details>summary span{display:grid;gap:3px}.smart-inbox-defaults .form-collapse-content{padding-top:14px}.smart-inbox-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.smart-inbox-rows{display:grid;gap:12px}.smart-inbox-row{padding:13px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 1px 0 rgba(15,23,42,.02)}.smart-inbox-file{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}.smart-inbox-primary-fields{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(160px,.6fr);gap:10px;margin-top:11px}.smart-inbox-primary-fields label,.smart-inbox-secondary-fields label{font-size:.82rem}.smart-inbox-primary-fields input,.smart-inbox-secondary-fields input,.smart-inbox-secondary-fields select{margin-top:3px}.smart-inbox-more{margin-top:10px;border-top:1px solid var(--border);padding-top:9px}.smart-inbox-more>summary{cursor:pointer;font-size:.82rem;font-weight:750;color:var(--primary);list-style:none}.smart-inbox-more>summary::-webkit-details-marker{display:none}.smart-inbox-secondary-fields{grid-template-columns:repeat(3,minmax(0,1fr));padding-top:10px}.smart-inbox-actions{position:sticky;bottom:12px;z-index:18;justify-content:flex-end;padding:10px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:0 12px 30px rgba(15,23,42,.12);backdrop-filter:blur(12px)}
@media(max-width:820px){.smart-inbox-head{align-items:flex-start}.smart-inbox-primary-fields{grid-template-columns:1fr}.smart-inbox-secondary-fields{grid-template-columns:1fr 1fr}.smart-inbox-actions{bottom:calc(78px + env(safe-area-inset-bottom,0px))}}
@media(max-width:560px){.smart-inbox-file{grid-template-columns:auto minmax(0,1fr)}.smart-inbox-file>.button{grid-column:2;justify-self:start}.smart-inbox-secondary-fields{grid-template-columns:1fr}.smart-inbox-summary small{display:none}.smart-inbox-actions{align-items:stretch}.smart-inbox-actions .button{width:100%}}
/* Resource Controller + provenienza metadati */
.resource-controller-section{overflow:hidden}
.resource-controller-head{align-items:flex-start}
.resource-controller-overview{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(360px,.8fr);gap:16px;margin-top:4px;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2)}
.resource-overview-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}
.resource-overview-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--primary) 11%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));font-size:1.15rem}
.resource-overview-main>div{display:grid;gap:3px;min-width:0}.resource-overview-main>div>strong{font-size:1.08rem}.resource-overview-main>div>small{line-height:1.35}
.resource-overview-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.resource-overview-meta>div{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}
.resource-overview-meta small{font-size:.72rem;color:var(--muted)}.resource-overview-meta strong{font-size:.88rem;line-height:1.2}
.resource-group{margin-top:22px}.resource-group-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:10px;padding:0 2px}
.resource-group-head h3{margin:.12rem 0 .2rem}.resource-group-head p{margin:0;max-width:780px}
.resource-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.resource-service-card{display:grid;gap:14px;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--panel);box-shadow:0 1px 0 rgba(15,23,42,.025)}
.resource-service-card.resource-service-error{border-color:color-mix(in srgb,#dc2626 45%,var(--border))}
.resource-service-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center}
.resource-service-icon{display:grid;place-items:center;min-width:44px;height:38px;padding:0 8px;border-radius:11px;background:color-mix(in srgb,var(--primary) 9%,var(--surface-2));border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));font-size:.72rem;font-weight:900;letter-spacing:.06em;color:var(--primary)}
.resource-service-title{display:grid;gap:2px;min-width:0}.resource-service-title h4{margin:0;font-size:1.02rem}.resource-service-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-service-title code{font-size:.72rem}
.resource-service-description{margin:0;color:var(--muted);font-size:.86rem;line-height:1.45;min-height:2.5em}
.resource-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.resource-control-grid label{display:grid;gap:6px;margin:0}.resource-control-grid label>span{font-size:.74rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.resource-control-grid select{width:100%;min-height:46px;margin:0}
.resource-service-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid var(--border);font-size:.75rem}.resource-service-foot>span{color:var(--muted)}.resource-service-foot>strong{font-size:.76rem;white-space:nowrap}
.resource-service-message{display:grid;gap:3px;padding:10px 12px;border-radius:11px;background:var(--surface-2);border:1px solid var(--border)}.resource-service-message small{overflow-wrap:anywhere}.resource-service-message.error-box{margin:0;border-color:color-mix(in srgb,#dc2626 32%,var(--border));background:color-mix(in srgb,#dc2626 5%,var(--surface))}
.resource-controller-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding:15px 16px;border:1px solid var(--border);border-radius:15px;background:color-mix(in srgb,var(--primary) 4%,var(--surface-2))}.resource-controller-actions>div{display:grid;gap:3px}.resource-controller-actions .button{flex:0 0 auto}
.resource-safety-note{display:grid;gap:5px;margin-top:12px;padding:12px 14px;border-left:4px solid color-mix(in srgb,var(--primary) 60%,var(--border));border-radius:10px;background:var(--surface-2)}.resource-safety-note p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.45}
@media(max-width:1050px){.resource-controller-overview{grid-template-columns:1fr}.resource-overview-meta{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.resource-service-grid{grid-template-columns:1fr}.resource-overview-meta{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:620px){.resource-controller-overview{padding:13px}.resource-overview-main{grid-template-columns:auto minmax(0,1fr)}.resource-overview-main>.status-pill{grid-column:2;justify-self:start}.resource-overview-meta{grid-template-columns:1fr}.resource-service-card{padding:14px}.resource-service-head{grid-template-columns:auto minmax(0,1fr)}.resource-service-head>.status-pill{grid-column:2;justify-self:start}.resource-control-grid{grid-template-columns:1fr}.resource-service-description{min-height:0}.resource-service-foot{align-items:flex-start;flex-direction:column}.resource-controller-actions{align-items:stretch;flex-direction:column}.resource-controller-actions .button{width:100%}}
.metadata-origin{display:inline-flex;align-items:center;margin-left:6px;padding:2px 7px;border-radius:999px;font-size:.72rem;font-weight:700;line-height:1.2;background:var(--surface-soft,#eef1f4);border:1px solid var(--border,#d9dde3);vertical-align:middle}
.metadata-origin.origin-ai{background:rgba(102,76,255,.10)}
.metadata-origin.origin-ocr{background:rgba(0,146,112,.10)}
.metadata-origin.origin-file{background:rgba(32,111,219,.10)}
.metadata-origin.origin-manual{background:rgba(184,112,0,.10)}
.ai-metadata-status{margin-top:12px;padding:10px 12px;border-radius:12px;background:var(--surface-soft,#eef1f4);display:flex;gap:8px;align-items:flex-start}
@media(max-width:700px){.resource-controller-status{align-items:stretch;flex-direction:column}.resource-controller-status .button{width:100%}}

/* Archivio 8.9.1-r5 · guida scorrevole, confronto risorse, pulizie configurabili */
.help-index{max-height:calc(100vh - 112px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:11px}
.help-index nav{padding-bottom:6px}
.resource-profile-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.resource-profile-compare>div{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}
.resource-profile-compare small{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:800}
.resource-profile-compare strong{font-size:.82rem;overflow-wrap:anywhere}
.cleanup-retention-card{display:grid;align-content:start;gap:10px}
.cleanup-retention-form{display:grid;gap:12px;margin-top:auto}
.cleanup-retention-form label{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:8px;align-items:center;margin:0}
.cleanup-retention-form label input{margin:0;min-width:0}
.cleanup-retention-form label small{color:var(--muted)}
.cleanup-retention-form .actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:900px){.help-index{position:static;max-height:48vh;overflow-y:auto}.resource-profile-compare{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.resource-profile-compare{grid-template-columns:1fr}.cleanup-retention-form label{grid-template-columns:1fr}.cleanup-retention-form .actions,.cleanup-retention-form .button{width:100%}}

/* Archivio 8.9.2-r1 · UI polish desktop/mobile, light/dark, Smart Inbox e filtri */
:root{
  --ui-shadow-soft:0 8px 24px rgba(15,23,42,.055);
  --ui-shadow-hover:0 14px 34px rgba(15,23,42,.085);
  --ui-ring:color-mix(in srgb,var(--primary) 20%,transparent);
}
html{scroll-padding-top:92px}
body{letter-spacing:-.004em}
.page-head{margin-bottom:18px;align-items:flex-end}
.page-head>div:first-child{min-width:0}
.page-head h1{line-height:1.12;text-wrap:balance}
.page-head p{max-width:780px;line-height:1.52}
.panel,.stat{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.panel:focus-within{border-color:color-mix(in srgb,var(--primary) 28%,var(--border))}
.button{transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-color .14s ease}
.button:not(:disabled):active{transform:translateY(1px)}
input,select,textarea{transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}
input:focus,select:focus,textarea:focus{outline:0;box-shadow:0 0 0 3px var(--ui-ring)}

/* Il ritorno deve essere sempre riconoscibile: freccia + testo, mai solo icona. */
.button.ghost.smart-back,.button.ghost.global-smart-back{
  width:auto!important;min-width:max-content!important;height:auto!important;min-height:40px!important;
  padding:9px 13px!important;border-radius:11px!important;gap:7px!important;flex-basis:auto!important;
}
.smart-back .back-arrow{display:inline-block;font-size:1.05em;line-height:1;transform:translateY(-.5px)}
.global-smart-back-row{min-height:40px!important;margin:-2px 0 14px!important}

/* Multiselezione: lo stato grafico segue subito le checkbox, prima di Applica filtri. */
.records-multiselect.has-selection>summary{
  border-color:color-mix(in srgb,var(--primary) 46%,var(--border));
  background:color-mix(in srgb,var(--primary) 5%,var(--panel));
}
.records-multiselect.has-selection>summary>span{font-weight:760}
.records-multiselect>summary>b[hidden]{display:none!important}
.records-multiselect-option:has(input:checked){
  background:color-mix(in srgb,var(--primary) 9%,var(--surface-2));
  color:var(--text);
}
.records-multiselect-option input:checked+span{font-weight:790}

/* Smart Inbox: gerarchia più chiara e touch target più comodi. */
.smart-inbox{display:grid;gap:0}
.smart-inbox-head{margin-bottom:14px}
.smart-inbox-head-actions{align-self:flex-start;flex-wrap:wrap}
.smart-inbox-step-heading>div{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}
.smart-inbox-step-heading>div>p{grid-column:2;margin-top:1px}
.smart-inbox-step{
  display:inline-grid;place-items:center;width:28px;height:28px;border-radius:9px;
  background:color-mix(in srgb,var(--primary) 12%,var(--surface-2));
  border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));
  color:var(--primary);font-size:.78rem;font-weight:900;line-height:1;flex:0 0 auto;
}
.smart-inbox-defaults>details>summary>span{grid-template-columns:auto 1fr;column-gap:10px;align-items:center}
.smart-inbox-defaults>details>summary>span>small{grid-column:2}
.smart-inbox-drop-panel,.smart-inbox-defaults,.smart-inbox-review-panel{box-shadow:var(--ui-shadow-soft)}
.smart-inbox-dropzone{border-radius:15px;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.smart-inbox-dropzone:hover,.smart-inbox-dropzone:focus-visible{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 7%,var(--surface));outline:0}
.smart-inbox-dropzone.dragging{transform:scale(1.006)}
.smart-inbox-row{transition:border-color .14s ease,box-shadow .14s ease}
.smart-inbox-row:focus-within{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));box-shadow:0 0 0 3px var(--ui-ring)}
.bulk-document-file-copy{min-width:0}
.bulk-document-file-copy strong,.bulk-document-file-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smart-inbox-more>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;padding:4px 0}
.smart-inbox-more>summary::after{content:"＋";font-weight:900;color:var(--muted)}
.smart-inbox-more[open]>summary::after{content:"−"}
.smart-inbox-actions{margin-top:14px}

/* Ritocco generale mobile: meno rumore, più gerarchia, azioni raggiungibili. */
@media(max-width:700px){
  html{scroll-padding-top:76px}
  .container{padding-top:18px!important}
  .page-head{gap:12px;margin-bottom:14px;align-items:stretch}
  .page-head h1{font-size:clamp(1.48rem,7vw,1.78rem)!important;line-height:1.08}
  .page-head p{margin:.35rem 0 0;font-size:.92rem}
  .global-smart-back-row{margin:0 0 11px!important}
  .global-smart-back{width:auto!important;justify-self:start!important}
  .panel,.stat{border-radius:15px!important;padding:15px!important}
  .section-heading{gap:10px}
  .section-heading h2{font-size:1.05rem}
  .tabs,.records-quick-chips{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:3px}
  .tabs::-webkit-scrollbar,.records-quick-chips::-webkit-scrollbar{display:none}
  .tabs>a,.records-quick-chips>a{flex:0 0 auto}
  .records-filter-form{padding:14px!important;gap:12px!important}
  .records-multiselect>summary{min-height:46px}
  .records-multiselect-menu{padding:8px;border-radius:11px}
  .records-multiselect-option{min-height:44px;padding:9px 8px}
  .filter-actions{position:sticky;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:24;padding:9px;margin:3px -5px -5px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--panel) 95%,transparent);box-shadow:0 10px 26px rgba(15,23,42,.12);backdrop-filter:blur(10px)}

  .smart-inbox-head-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%}
  .smart-inbox-head-actions .button{width:100%}
  .smart-inbox-drop-panel,.smart-inbox-defaults,.smart-inbox-review-panel{margin-top:10px!important}
  .smart-inbox-dropzone{min-height:138px!important;padding:20px 14px!important;text-align:center}
  .smart-inbox-dropzone .attachment-drop-icon{font-size:2rem}
  .smart-inbox-dropzone strong{font-size:.98rem;line-height:1.3}
  .smart-inbox-dropzone small{font-size:.82rem;line-height:1.35}
  .smart-inbox-defaults>details>summary{min-height:52px;align-items:center}
  .smart-inbox-defaults>details>summary>span{grid-template-columns:28px minmax(0,1fr)!important}
  .smart-inbox-defaults .form-collapse-content{padding-top:10px}
  .smart-inbox-defaults .form-grid{gap:12px}
  .bulk-document-ocr-option,.pdf-unlock-box{padding:12px!important;border-radius:12px!important}
  .smart-inbox-review-panel>.section-heading{align-items:flex-start;flex-direction:column}
  .smart-inbox-step-heading>div{grid-template-columns:28px minmax(0,1fr)}
  .smart-inbox-summary{width:100%;justify-content:space-between}
  .smart-inbox-row{padding:11px!important;border-radius:12px!important}
  .smart-inbox-file{grid-template-columns:30px minmax(0,1fr) auto!important;gap:8px!important}
  .bulk-document-index{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:var(--surface-2);font-weight:850;font-size:.78rem}
  .smart-inbox-file>.button{grid-column:auto!important;justify-self:end!important;width:auto!important;min-height:36px!important;padding:7px 9px!important;font-size:.78rem}
  .smart-inbox-primary-fields{gap:9px!important;margin-top:9px!important}
  .smart-inbox-primary-fields label,.smart-inbox-secondary-fields label{font-size:.8rem!important;gap:4px}
  .smart-inbox-primary-fields input,.smart-inbox-secondary-fields input,.smart-inbox-secondary-fields select{min-height:44px;margin-top:2px!important}
  .smart-inbox-more{margin-top:8px;padding-top:7px}
  .smart-inbox-more>summary{min-height:44px;font-size:.84rem}
  .smart-inbox-secondary-fields{gap:9px!important;padding-top:7px!important}
  .smart-inbox-actions{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;
    bottom:calc(68px + env(safe-area-inset-bottom,0px))!important;padding:8px!important;border-radius:13px!important;
  }
  .smart-inbox-actions .button{width:100%!important;min-width:0;padding-left:10px!important;padding-right:10px!important}
}
@media(max-width:430px){
  .smart-inbox-head-actions{grid-template-columns:1fr!important}
  .smart-inbox-file{grid-template-columns:28px minmax(0,1fr)!important}
  .smart-inbox-file>.button{grid-column:2!important;justify-self:start!important}
  .smart-inbox-actions{grid-template-columns:minmax(0,1fr)!important}
}

/* Dark + tema sistema: stessi miglioramenti, contrasto coerente. */
body[data-theme="dark"] .records-multiselect.has-selection>summary,
body[data-theme="dark"] .records-multiselect-option:has(input:checked){background:color-mix(in srgb,var(--primary) 13%,#3b4252);border-color:color-mix(in srgb,var(--primary) 55%,#596579)}
body[data-theme="dark"] .smart-inbox-dropzone:hover,body[data-theme="dark"] .smart-inbox-dropzone:focus-visible{background:color-mix(in srgb,var(--primary) 10%,var(--surface))}
body[data-theme="dark"] .filter-actions{background:color-mix(in srgb,#2b313c 96%,transparent)}
@media(prefers-color-scheme:dark){
  body[data-theme="system"] .records-multiselect.has-selection>summary,
  body[data-theme="system"] .records-multiselect-option:has(input:checked){background:color-mix(in srgb,var(--primary) 13%,#3b4252);border-color:color-mix(in srgb,var(--primary) 55%,#596579)}
  body[data-theme="system"] .smart-inbox-dropzone:hover,body[data-theme="system"] .smart-inbox-dropzone:focus-visible{background:color-mix(in srgb,var(--primary) 10%,var(--surface))}
  body[data-theme="system"] .filter-actions{background:color-mix(in srgb,#2b313c 96%,transparent)}
}

/* Archivio 8.9.2-r2 · correzione barra azioni Documentale su smartphone.
   La griglia generica <=620px riserva 44px alla freccia Indietro; nella lista
   Documenti quella posizione appartiene invece a Smart Inbox. */
@media(max-width:620px){
  .records-page-actions{
    grid-template-columns:minmax(116px,.82fr) minmax(0,1.35fr) 44px!important;
    gap:8px!important;align-items:stretch!important;
  }
  .records-page-actions>.records-smart-inbox-action{
    grid-column:1/2!important;grid-row:1!important;min-width:0!important;width:100%!important;
    padding-left:10px!important;padding-right:10px!important;justify-content:center!important;white-space:nowrap!important;
  }
  .records-page-actions>.records-manual-action{
    grid-column:2/3!important;grid-row:1!important;min-width:0!important;width:100%!important;
    padding-left:10px!important;padding-right:10px!important;justify-content:center!important;white-space:nowrap!important;
  }
  .records-page-actions>.page-action-menu{grid-column:3/4!important;grid-row:1!important}
}
@media(max-width:430px){
  .records-page-actions{grid-template-columns:minmax(0,1fr) 44px!important}
  .records-page-actions>.records-smart-inbox-action{grid-column:1/2!important;grid-row:1!important}
  .records-page-actions>.page-action-menu{grid-column:2/3!important;grid-row:1!important}
  .records-page-actions>.records-manual-action{grid-column:1/3!important;grid-row:2!important}
}

/* Archivio 8.9.3-r3 STABLE · Documentale semplificato + OCR quality UX */
.document-search-strip{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:9px;align-items:center;margin:0 0 12px;padding:10px 12px;border-radius:16px;box-shadow:var(--shadow-sm)}
.document-search-strip input[type="search"]{min-width:0;border:0;background:transparent;box-shadow:none;font-size:1rem;padding:10px 4px}
.document-search-strip input[type="search"]:focus{outline:0;box-shadow:none}
.document-search-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--primary) 9%,var(--surface-2));color:var(--primary);font-size:1.2rem;font-weight:900}
.document-primary-views{background:color-mix(in srgb,var(--primary) 2.5%,var(--panel))}
.document-secondary-filters{display:grid;gap:8px;padding:10px 0 2px}.document-secondary-filters>strong{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.records-quick-chips.compact{justify-content:flex-start}.records-quick-chips.compact a{padding:6px 9px;font-size:.76rem}
.ocr-quality-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-size:.74rem;font-weight:800}.ocr-quality-chip.good{border-color:color-mix(in srgb,#16a34a 35%,var(--border));background:color-mix(in srgb,#16a34a 8%,var(--surface-2))}.ocr-quality-chip.review{border-color:color-mix(in srgb,#f59e0b 45%,var(--border));background:color-mix(in srgb,#f59e0b 10%,var(--surface-2))}.ocr-quality-chip.error{border-color:color-mix(in srgb,#dc2626 45%,var(--border));background:color-mix(in srgb,#dc2626 9%,var(--surface-2))}
@media(max-width:620px){
  .document-search-strip{grid-template-columns:auto minmax(0,1fr) auto;padding:8px 9px}.document-search-strip .button.ghost{display:none}.document-search-strip .button{min-width:0;padding-left:10px;padding-right:10px}
  .document-primary-views .records-quick-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.document-primary-views .records-quick-chips a:first-child{grid-column:auto}
  .records-page-actions{grid-template-columns:minmax(0,1fr) 44px!important;gap:8px!important}.records-page-actions>.records-smart-inbox-action{grid-column:1/2!important;grid-row:1!important}.records-page-actions>.page-action-menu{grid-column:2/3!important;grid-row:1!important}
}

/* Archivio 8.9.4-r2 · Investimenti, Libreria Analisi e Resource Controller rifinito */
.investments-head,.lab-library-head{align-items:flex-end}
.investment-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-bottom:18px}.investment-kpi{display:grid;gap:5px;border-left:4px solid #16a34a}.investment-kpi>span{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}.investment-kpi>strong{font-size:1.35rem}.investment-kpi.positive{border-left-color:#16a34a}.investment-kpi.negative{border-left-color:#dc2626}.investment-add-panel{margin-bottom:18px}.investment-form details{grid-column:1/-1}.investment-table td{vertical-align:top}.investment-table td>small{max-width:240px}.investment-inactive{opacity:.62}.investment-actions{position:relative}.investment-actions>summary{list-style:none;cursor:pointer}.investment-actions>summary::-webkit-details-marker{display:none}.investment-actions-popover{position:absolute;right:0;z-index:25;width:min(620px,90vw);margin-top:8px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:0 18px 45px rgba(15,23,42,.18)}.investment-row-actions{margin-top:10px;border-top:1px solid var(--border);padding-top:10px}.investment-library-quick-action{border-color:color-mix(in srgb,#16a34a 40%,var(--border))!important}.text-danger{color:#dc2626!important}.text-warning{color:#b45309!important}
.lab-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}.lab-library-toolbar>div:first-of-type{display:grid;gap:3px}.lab-library-table td{vertical-align:top}.lab-library-row-actions{display:grid;gap:8px;min-width:220px}.lab-library-row-actions>form{display:flex;gap:6px;flex-wrap:wrap}.lab-library-quick-action{border-color:color-mix(in srgb,#7c3aed 38%,var(--border))!important}.lab-ocr-launcher .settings-action-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.lab-ocr-launcher .settings-action-row>div{display:grid;gap:3px}
/* I tre blocchi del Resource Controller diventano sottosezioni omogenee, senza tabulazioni visivamente sfalsate. */
.resource-group{margin-top:18px;padding:14px;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--surface-2) 72%,var(--panel))}.resource-group-head{align-items:center!important;margin:0 0 12px!important;padding:0!important;min-height:62px}.resource-group-head>div{display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:12px;align-items:center;width:100%}.resource-group-head .eyebrow{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;margin:0;border-radius:12px;background:color-mix(in srgb,var(--primary) 10%,var(--panel));border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));font-size:.7rem}.resource-group-head h3{grid-column:2;margin:0!important;align-self:end}.resource-group-head p{grid-column:2;margin:3px 0 0!important;align-self:start}.resource-service-grid{align-items:stretch}.resource-service-card{height:100%}
body[data-theme="dark"] .investment-kpi{background:#26352d}body[data-theme="dark"] .investment-kpi.negative{background:#3c292b}body[data-theme="dark"] .investment-actions-popover{background:#2e3440}.lab-library-table .status-pill.ok{color:#86efac}.lab-library-table .status-pill.warn{color:#fcd34d}
@media(max-width:760px){.investments-head,.lab-library-head{align-items:flex-start}.investment-actions-popover{position:fixed;left:12px;right:12px;bottom:calc(82px + env(safe-area-inset-bottom,0px));width:auto;max-height:70vh;overflow:auto}.lab-library-toolbar{align-items:stretch}.lab-library-toolbar .actions{width:100%;justify-content:flex-start}.lab-ocr-launcher .settings-action-row{align-items:stretch;flex-direction:column}.lab-ocr-launcher .settings-action-row .button{width:100%}.resource-group{padding:12px}.resource-group-head>div{grid-template-columns:40px minmax(0,1fr)}.resource-group-head .eyebrow{width:36px;height:36px}}

/* ========================================================================== 
   Archivio 8.9.4-r3 · Laboratorio leggibile + Investimenti dashboard guidata
   ========================================================================== */
.dashboard-aux-actions{gap:10px;flex-wrap:wrap}
.dashboard-aux-actions .lab-library-quick-action,
.dashboard-aux-actions .investment-library-quick-action{
  min-height:44px;padding:10px 16px;border-radius:12px;color:#fff!important;font-weight:900;
  text-shadow:0 1px 1px rgba(0,0,0,.12);transition:transform .16s ease,box-shadow .16s ease,filter .16s ease
}
.dashboard-aux-actions .lab-library-quick-action{
  border-color:#7c3aed!important;background:linear-gradient(135deg,#7c3aed,#c026d3)!important;box-shadow:0 8px 20px rgba(124,58,237,.22)
}
.dashboard-aux-actions .investment-library-quick-action{
  border-color:#059669!important;background:linear-gradient(135deg,#059669,#16a34a)!important;box-shadow:0 8px 20px rgba(5,150,105,.22)
}
.dashboard-aux-actions .lab-library-quick-action:hover,.dashboard-aux-actions .investment-library-quick-action:hover{transform:translateY(-1px);filter:saturate(1.06);box-shadow:0 12px 26px rgba(15,23,42,.20)}
body[data-theme="dark"] .dashboard-aux-actions .lab-library-quick-action,body[data-theme="dark"] .dashboard-aux-actions .investment-library-quick-action{color:#fff!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .dashboard-aux-actions .lab-library-quick-action,body[data-theme="system"] .dashboard-aux-actions .investment-library-quick-action{color:#fff!important}}

/* Libreria Analisi: contrasto esplicito anche nel tema chiaro. */
.lab-library-table-wrap{border:1px solid var(--border);border-radius:18px;background:var(--panel);box-shadow:var(--shadow-sm);overflow:auto}
.lab-library-table{margin:0;background:var(--panel);color:var(--text)}
.lab-library-table thead th{background:color-mix(in srgb,var(--primary) 4%,var(--surface-2));color:color-mix(in srgb,var(--text) 84%,var(--muted));border-bottom:1px solid var(--border)}
.lab-library-table tbody tr{background:var(--panel)}
.lab-library-table tbody tr:nth-child(even){background:color-mix(in srgb,var(--primary) 1.8%,var(--panel))}
.lab-library-table tbody tr:hover{background:color-mix(in srgb,var(--primary) 5%,var(--panel))}
.lab-library-table td,.lab-library-table th{border-color:var(--border)}
.lab-library-table td>strong,.lab-library-table td b{color:var(--text)}
.lab-library-table td>small{color:var(--muted)}
.lab-library-table .status-pill.ok{background:color-mix(in srgb,#16a34a 14%,var(--panel));border-color:color-mix(in srgb,#16a34a 34%,var(--border));color:#166534!important}
.lab-library-table .status-pill.warn{background:color-mix(in srgb,#f59e0b 16%,var(--panel));border-color:color-mix(in srgb,#f59e0b 38%,var(--border));color:#92400e!important}
.lab-library-table .status-pill.error{background:color-mix(in srgb,#dc2626 12%,var(--panel));border-color:color-mix(in srgb,#dc2626 32%,var(--border));color:#991b1b!important}
.lab-values-cell{min-width:210px}.lab-value-preview{display:grid;gap:3px;margin-top:5px}.lab-value-preview span{display:block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;color:var(--muted)}.lab-value-preview b{font-weight:800;margin-right:4px}
body[data-theme="dark"] .lab-library-table .status-pill.ok{color:#86efac!important}body[data-theme="dark"] .lab-library-table .status-pill.warn{color:#fcd34d!important}body[data-theme="dark"] .lab-library-table .status-pill.error{color:#fca5a5!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .lab-library-table .status-pill.ok{color:#86efac!important}body[data-theme="system"] .lab-library-table .status-pill.warn{color:#fcd34d!important}body[data-theme="system"] .lab-library-table .status-pill.error{color:#fca5a5!important}}

/* Investimenti: onboarding, monitor live e schede posizione. */
.investment-service-strip{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:-4px 0 16px;padding:10px 13px;border:1px solid color-mix(in srgb,#16a34a 25%,var(--border));border-radius:14px;background:color-mix(in srgb,#16a34a 6%,var(--panel));font-size:.84rem;color:var(--text)}
.investment-service-strip>span:last-child{color:var(--muted)}.investment-live-dot{width:9px;height:9px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px color-mix(in srgb,#22c55e 18%,transparent)}
.investment-refresh-button,.investment-add-button{background:linear-gradient(135deg,#059669,#16a34a)!important;border-color:#059669!important;color:#fff!important;font-weight:900;box-shadow:0 7px 18px rgba(5,150,105,.18)}
.investment-add-heading{align-items:flex-start}.investment-add-heading p{margin:.25rem 0 0}.investment-onboarding{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 18px}.investment-onboarding>div{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.investment-onboarding b{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;background:color-mix(in srgb,#16a34a 15%,var(--panel));color:#047857}.investment-onboarding span{display:grid;gap:2px}.investment-onboarding small{color:var(--muted);line-height:1.35}.investment-field-primary input{font-weight:850;letter-spacing:.04em;text-transform:uppercase}.investment-advanced{border-color:color-mix(in srgb,var(--primary) 18%,var(--border))}
.investment-portfolio{display:grid;gap:14px}.investment-portfolio>.section-heading{margin-bottom:0}.investment-position-card{display:grid;gap:16px;padding:18px!important;overflow:visible}.investment-position-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.investment-position-title{display:flex;gap:12px;align-items:flex-start;min-width:0}.investment-position-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,#10b981 18%,var(--panel)),color-mix(in srgb,#2563eb 10%,var(--panel)));font-size:1.25rem}.investment-position-title h3{margin:0 0 5px;font-size:1.12rem}.investment-identity{display:flex;gap:6px;flex-wrap:wrap}.investment-identity code,.investment-identity span{display:inline-flex;align-items:center;min-height:24px;padding:3px 7px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:.72rem}.investment-current{text-align:right;display:grid;gap:2px;justify-items:end;min-width:150px}.investment-current small{color:var(--muted)}.investment-current strong{font-size:1.28rem}.investment-current span{font-size:.78rem;font-weight:800}
.investment-position-body{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(360px,1.2fr);gap:16px;align-items:stretch}.investment-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.investment-metric-grid>div{display:grid;gap:4px;align-content:center;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.investment-metric-grid small{color:var(--muted);font-weight:700}.investment-metric-grid strong{font-size:1rem;overflow-wrap:anywhere}
.investment-chart-card{min-width:0;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface-2) 82%,var(--panel))}.investment-chart-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.investment-chart-head>div:first-child{display:grid;gap:2px}.investment-chart-head small{color:var(--muted);font-size:.72rem}.investment-chart-ranges{display:flex;gap:4px}.investment-chart-ranges button{appearance:none;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--muted);padding:4px 7px;font-size:.7rem;font-weight:850;cursor:pointer}.investment-chart-ranges button.active{background:var(--primary);border-color:var(--primary);color:#fff}.investment-price-chart{min-height:190px;margin-top:6px;display:grid;align-content:center}.investment-price-chart svg{display:block;width:100%;height:auto;max-height:190px}.investment-chart-grid{stroke:color-mix(in srgb,var(--border) 80%,transparent);stroke-width:1}.investment-chart-area{fill:color-mix(in srgb,#10b981 16%,transparent)}.investment-chart-line{fill:none;stroke:#10b981;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.investment-chart-last{fill:#059669;stroke:var(--panel);stroke-width:2}.investment-chart-label{fill:var(--muted);font-size:10px;font-weight:700}.investment-chart-caption{display:flex;justify-content:space-between;gap:8px;align-items:center;color:var(--muted);font-size:.72rem}.investment-chart-caption strong{color:var(--text);font-size:.82rem}
.investment-position-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;padding-top:12px;border-top:1px solid var(--border)}.investment-update-state{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-width:0}.investment-update-state small{color:var(--muted);max-width:520px}.investment-manage{position:relative}.investment-manage>summary{list-style:none;cursor:pointer}.investment-manage>summary::-webkit-details-marker{display:none}.investment-manage-panel{margin-top:12px;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2);box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 45%,transparent)}.investment-position-footer:has(.investment-manage[open]){display:grid;grid-template-columns:1fr}.investment-position-footer:has(.investment-manage[open])>.actions{display:grid;grid-template-columns:auto 1fr;align-items:start}.investment-position-footer:has(.investment-manage[open]) .investment-manage{grid-column:1/-1}.investment-position-footer:has(.investment-manage[open]) .investment-manage-panel{width:100%}.investment-edit-form{margin-top:10px}.investment-edit-actions{display:flex;justify-content:flex-end}.investment-active-check{align-self:end;min-height:46px}.investment-danger-zone{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;padding:12px;border:1px solid color-mix(in srgb,#dc2626 28%,var(--border));border-radius:13px;background:color-mix(in srgb,#dc2626 5%,var(--panel))}.investment-danger-zone>div{display:grid;gap:2px}.investment-danger-zone small{color:var(--muted)}.investment-empty{display:grid;gap:5px;text-align:center;padding:28px!important}
body[data-theme="dark"] .investment-position-card,body[data-theme="dark"] .investment-add-panel{background:#2b3441}body[data-theme="dark"] .investment-chart-card,body[data-theme="dark"] .investment-metric-grid>div,body[data-theme="dark"] .investment-onboarding>div,body[data-theme="dark"] .investment-manage-panel{background:#242c37}
@media(prefers-color-scheme:dark){body[data-theme="system"] .investment-position-card,body[data-theme="system"] .investment-add-panel{background:#2b3441}body[data-theme="system"] .investment-chart-card,body[data-theme="system"] .investment-metric-grid>div,body[data-theme="system"] .investment-onboarding>div,body[data-theme="system"] .investment-manage-panel{background:#242c37}}

@media(max-width:900px){
  .dashboard-aux-actions .dicom-library-quick-action,.dashboard-aux-actions .lab-library-quick-action,.dashboard-aux-actions .investment-library-quick-action{flex:1 1 220px;width:auto;justify-content:center;min-height:48px}
  .investment-position-body{grid-template-columns:1fr}.investment-onboarding{grid-template-columns:1fr}.investment-position-footer{align-items:flex-start;flex-direction:column}.investment-position-footer>.actions{width:100%;justify-content:flex-start}.investment-position-footer:has(.investment-manage[open])>.actions{display:flex;flex-wrap:wrap}.investment-manage{width:100%}.investment-manage>summary{width:100%;justify-content:center}.investment-current{min-width:0}
}
@media(max-width:620px){
  .lab-library-toolbar .actions{display:grid;grid-template-columns:1fr}.lab-library-toolbar .actions .button{width:100%;justify-content:center}.lab-library-table-wrap{border-radius:14px}.lab-value-preview span{max-width:190px}
  .investment-position-card{padding:14px!important}.investment-position-head{display:grid;grid-template-columns:1fr}.investment-current{text-align:left;justify-items:start}.investment-position-body{display:block}.investment-chart-card{margin-top:12px}.investment-metric-grid{grid-template-columns:1fr 1fr}.investment-chart-head{display:grid}.investment-chart-ranges{width:100%;display:grid;grid-template-columns:repeat(4,1fr)}.investment-chart-ranges button{min-height:34px}.investment-position-footer>.actions{display:grid;grid-template-columns:1fr;width:100%}.investment-position-footer>.actions>form,.investment-position-footer>.actions .button{width:100%}.investment-danger-zone{display:grid}.investment-danger-zone form,.investment-danger-zone button{width:100%}.investment-service-strip{align-items:flex-start}
}
@media(max-width:420px){.investment-metric-grid{grid-template-columns:1fr}.dashboard-aux-actions .dicom-library-quick-action,.dashboard-aux-actions .lab-library-quick-action,.dashboard-aux-actions .investment-library-quick-action{flex-basis:100%}}

/* Archivio 8.9.4-r5 · Investimenti provider WebGUI + budget giornaliero + dashboard performance */
.investment-provider-settings .form-grid>label>small,.investment-form label>small,.investment-edit-form label>small{line-height:1.45}
.investment-provider-guide{display:grid;gap:10px;padding:16px;border:1px solid color-mix(in srgb,#0ea5e9 35%,var(--border));border-radius:16px;background:color-mix(in srgb,#0ea5e9 6%,var(--panel))}
.investment-provider-guide h3{margin:2px 0 0}.investment-provider-guide ol{margin:0;padding-left:22px;display:grid;gap:6px}.investment-provider-guide .actions{justify-content:flex-start}
.investment-provider-callout{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:-4px 0 16px;border-left:4px solid #f59e0b;background:color-mix(in srgb,#f59e0b 8%,var(--panel))}.investment-provider-callout>div{display:grid;gap:4px}.investment-provider-callout span{color:var(--muted);font-size:.9rem}
.investment-dashboard-widget{display:grid;gap:14px;height:100%}.investment-dashboard-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.investment-dashboard-kpis>div{display:grid;gap:4px;padding:11px 12px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.investment-dashboard-kpis small{color:var(--muted);font-weight:700}.investment-dashboard-kpis strong{font-size:1.08rem}.investment-dashboard-kpis span{font-size:.82rem;font-weight:800}
.investment-dashboard-chart{min-height:220px;border:1px solid var(--border);border-radius:16px;padding:8px;background:linear-gradient(180deg,color-mix(in srgb,#16a34a 5%,var(--panel)),var(--panel))}.investment-dashboard-chart svg{display:block;width:100%;height:auto;min-height:190px}.investment-dashboard-band{fill:color-mix(in srgb,#8b5cf6 12%,transparent);stroke:none}.investment-dashboard-forecast{fill:none;stroke:#8b5cf6;stroke-width:2.5;stroke-dasharray:7 6;vector-effect:non-scaling-stroke}.investment-dashboard-now{stroke:color-mix(in srgb,var(--muted) 48%,transparent);stroke-width:1;stroke-dasharray:3 5;vector-effect:non-scaling-stroke}.investment-forecast-note{display:grid;gap:3px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,#8b5cf6 7%,var(--surface-2));border:1px solid color-mix(in srgb,#8b5cf6 20%,var(--border))}.investment-forecast-note strong{font-size:.86rem}.investment-forecast-note span{font-size:.78rem;color:var(--muted);line-height:1.4}
body[data-theme="dark"] .investment-provider-guide{background:color-mix(in srgb,#0ea5e9 10%,var(--panel))}body[data-theme="dark"] .investment-provider-callout{background:color-mix(in srgb,#f59e0b 9%,var(--panel))}body[data-theme="dark"] .investment-dashboard-band{fill:rgba(167,139,250,.14)}
@media(prefers-color-scheme:dark){body[data-theme="system"] .investment-provider-guide{background:color-mix(in srgb,#0ea5e9 10%,var(--panel))}body[data-theme="system"] .investment-dashboard-band{fill:rgba(167,139,250,.14)}}
@media(max-width:760px){.investment-provider-callout{align-items:stretch;flex-direction:column}.investment-provider-callout .button{width:100%}.investment-provider-guide .actions{display:grid;grid-template-columns:1fr}.investment-provider-guide .button{width:100%}.investment-dashboard-kpis{grid-template-columns:1fr 1fr}.investment-dashboard-chart{min-height:190px;padding:4px}.investment-forecast-note{padding:9px 10px}}
@media(max-width:480px){.investment-dashboard-kpis{grid-template-columns:1fr}.investment-dashboard-widget .section-heading{align-items:flex-start;gap:10px}.investment-dashboard-widget .section-heading .button{width:100%}}

/* Archivio 8.9.4-r7 · Monitor investimenti amministratore: provider separati e leggibili */
.investment-admin-body{display:grid;gap:18px;padding:20px;background:color-mix(in srgb,var(--bg) 32%,var(--panel))}
.investment-provider-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.investment-provider-status-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:center;padding:13px 14px;border:1px solid var(--border);border-radius:15px;background:var(--panel);box-shadow:0 5px 16px rgba(15,23,42,.035)}
.investment-provider-status-card>div{display:grid;gap:2px;min-width:0}.investment-provider-status-card small{color:var(--muted);font-weight:750}.investment-provider-status-card strong{font-size:.94rem;overflow-wrap:anywhere}.investment-provider-status-card span:last-child{color:var(--muted);font-size:.75rem;overflow-wrap:anywhere}
.investment-provider-status-icon{display:grid!important;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--surface-2);border:1px solid var(--border);font-weight:900;color:var(--muted)!important}
.investment-provider-status-card.active{border-color:color-mix(in srgb,#10b981 35%,var(--border));background:color-mix(in srgb,#10b981 5%,var(--panel))}.investment-provider-status-card.active .investment-provider-status-icon{background:color-mix(in srgb,#10b981 14%,var(--panel));border-color:color-mix(in srgb,#10b981 28%,var(--border));color:#047857!important}
.investment-provider-status-card.warning{border-color:color-mix(in srgb,#f59e0b 38%,var(--border));background:color-mix(in srgb,#f59e0b 6%,var(--panel))}.investment-provider-status-card.warning .investment-provider-status-icon{color:#b45309!important}.investment-provider-status-card.off{opacity:.78}
.investment-config-stack{display:grid;gap:14px}.investment-config-block{display:grid;gap:15px;padding:17px;border:1px solid color-mix(in srgb,var(--primary) 14%,var(--border));border-radius:16px;background:var(--panel);transition:opacity .18s ease,border-color .18s ease,background .18s ease}.investment-config-block.is-provider-off,.investment-key-card.is-provider-off{opacity:.62;background:color-mix(in srgb,var(--surface-2) 82%,var(--panel))}
.investment-config-heading{display:flex;gap:12px;align-items:flex-start}.investment-config-heading>div{display:grid;gap:3px}.investment-config-heading h3{margin:0;font-size:1rem;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.investment-config-heading p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.45}.investment-step{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:color-mix(in srgb,var(--primary) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));color:var(--primary);font-size:.82rem;font-weight:900}
.investment-provider-mode-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.investment-provider-choice{position:relative;display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:10px;align-items:flex-start;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);cursor:pointer;min-width:0}.investment-provider-choice>input{width:auto;margin:5px 0 0}.investment-provider-choice>span:last-child{display:grid;gap:3px}.investment-provider-choice strong{color:var(--text);font-size:.94rem}.investment-provider-choice small{color:var(--muted);font-weight:500;line-height:1.4}.investment-provider-choice em{color:var(--primary);font-size:.72rem;font-style:normal;font-weight:800;margin-top:2px}.investment-provider-choice-icon{display:grid!important;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--panel);border:1px solid var(--border);font-weight:900;color:var(--primary)}.investment-provider-choice:has(input:checked){border-color:color-mix(in srgb,var(--primary) 48%,var(--border));background:color-mix(in srgb,var(--primary) 7%,var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 16%,transparent)}
.investment-key-card{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(230px,.55fr);gap:14px;align-items:stretch}.investment-key-card>label,.investment-key-state{padding:13px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.investment-key-card>label{display:flex}.investment-key-state{display:grid;align-content:center;gap:7px}.investment-key-state small{color:var(--muted);font-weight:750}.investment-key-state strong{overflow-wrap:anywhere}.investment-key-state .button{justify-self:start}.investment-provider-note{color:var(--muted);font-size:.76rem;line-height:1.4}.investment-provider-note code{overflow-wrap:anywhere}.investment-provider-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-start}.investment-provider-actions .button{width:auto}
.investment-provider-toggle{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:11px;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2);cursor:pointer}.investment-provider-toggle>input{width:auto!important;margin:3px 0 0;min-width:18px}.investment-provider-toggle>span{display:grid;gap:3px}.investment-provider-toggle strong{color:var(--text)}.investment-provider-toggle small{color:var(--muted);font-weight:500;line-height:1.4}.investment-provider-toggle:has(input:checked){border-color:color-mix(in srgb,#10b981 35%,var(--border));background:color-mix(in srgb,#10b981 5%,var(--panel))}
.investment-budget-grid{padding:0!important}.investment-budget-grid .investment-provider-toggle{margin-top:0;align-self:stretch;justify-content:flex-start}.input-with-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid #d1d5db;border-radius:12px;background:#fff;overflow:hidden;margin-top:7px}.input-with-unit input{border:0!important;border-radius:0!important;margin:0!important;background:transparent!important}.input-with-unit span{padding:0 12px;color:var(--muted);font-size:.75rem;font-weight:800;white-space:nowrap}.input-with-unit:focus-within{outline:3px solid color-mix(in srgb,var(--primary) 18%,transparent);border-color:var(--primary)}
.investment-budget-meter{height:9px;border-radius:999px;background:color-mix(in srgb,var(--border) 62%,transparent);overflow:hidden}.investment-budget-meter-bar{height:100%;width:min(100%,var(--investment-budget-used));border-radius:inherit;background:linear-gradient(90deg,#10b981,#22c55e)}.investment-budget-caption{display:flex;gap:12px 18px;flex-wrap:wrap;color:var(--muted);font-size:.76rem}.investment-budget-caption strong{color:var(--text)}
.investment-provider-guide-collapsed{padding:0!important;overflow:hidden}.investment-provider-guide-collapsed>summary{cursor:pointer;padding:14px 16px;font-weight:850;color:var(--text);list-style:none}.investment-provider-guide-collapsed>summary::-webkit-details-marker{display:none}.investment-provider-guide-collapsed>summary::after{content:'⌄';float:right;color:var(--primary)}.investment-provider-guide-collapsed[open]>summary::after{content:'⌃'}.investment-provider-guide-body{display:grid;gap:10px;padding:0 16px 16px;border-top:1px solid color-mix(in srgb,#0ea5e9 20%,var(--border))}.investment-provider-guide-body ol{margin:12px 0 0}.investment-provider-footnote{margin:0;font-size:.8rem;line-height:1.45}
body[data-theme="dark"] .investment-admin-body{background:#2a313c}body[data-theme="dark"] .investment-config-block,body[data-theme="dark"] .investment-provider-status-card{background:#2b3441}body[data-theme="dark"] .investment-provider-choice,body[data-theme="dark"] .investment-key-card>label,body[data-theme="dark"] .investment-key-state,body[data-theme="dark"] .investment-provider-toggle{background:#242c37}body[data-theme="dark"] .input-with-unit{background:#252d38;border-color:#536071}body[data-theme="dark"] .input-with-unit input{color:#f7f9fc!important}
@media(prefers-color-scheme:dark){body[data-theme="system"] .investment-admin-body{background:#2a313c}body[data-theme="system"] .investment-config-block,body[data-theme="system"] .investment-provider-status-card{background:#2b3441}body[data-theme="system"] .investment-provider-choice,body[data-theme="system"] .investment-key-card>label,body[data-theme="system"] .investment-key-state,body[data-theme="system"] .investment-provider-toggle{background:#242c37}body[data-theme="system"] .input-with-unit{background:#252d38;border-color:#536071}body[data-theme="system"] .input-with-unit input{color:#f7f9fc!important}}
@media(max-width:900px){.investment-provider-status-grid{grid-template-columns:1fr}.investment-key-card{grid-template-columns:1fr}.investment-provider-mode-selector{grid-template-columns:1fr}.investment-budget-grid{grid-template-columns:1fr!important}.investment-provider-actions{display:grid;grid-template-columns:1fr 1fr}.investment-provider-actions .button{width:100%}}
@media(max-width:620px){.investment-admin-body{padding:14px;gap:14px}.investment-config-block{padding:13px}.investment-config-heading{gap:9px}.investment-step{width:31px;height:31px;flex-basis:31px}.investment-provider-choice{grid-template-columns:auto minmax(0,1fr)}.investment-provider-choice>input{grid-row:1;grid-column:1}.investment-provider-choice-icon{display:none!important}.investment-provider-choice>span:last-child{grid-column:2}.investment-provider-actions{grid-template-columns:1fr}.investment-budget-caption{display:grid;gap:4px}.investment-key-state .button{width:100%}}
/* Archivio 8.9.4-r11 · provider investimenti multi-provider + NAV no-key */
.investment-provider-r9-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.investment-provider-r9-card{border:1px solid var(--border);border-radius:16px;padding:1rem;display:grid;gap:.9rem;background:var(--surface)}.investment-provider-r9-card.active{box-shadow:0 0 0 1px color-mix(in srgb,var(--success) 40%,transparent)}.investment-provider-r9-card.warning{box-shadow:0 0 0 1px color-mix(in srgb,var(--warning) 40%,transparent)}.investment-provider-r9-card.off{opacity:.86}.investment-provider-r9-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.investment-provider-r9-head>div{display:grid;gap:.25rem}.investment-provider-r9-head small{color:var(--muted)}
@media(max-width:900px){.investment-provider-r9-grid{grid-template-columns:1fr}.investment-provider-r9-head{flex-direction:column}.investment-provider-r9-card{padding:.85rem}}

/* Archivio 8.9.4-r12 · Investimenti più leggibili + conversione EUR + AI locale riallineata */
.investment-kpi-grid-r12{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.investment-kpi-primary{border-left-color:#2563eb;background:color-mix(in srgb,#2563eb 6%,var(--panel))}.investment-kpi-primary>strong{font-size:1.55rem}
.investment-reading-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:-4px 0 18px;padding:14px!important}.investment-reading-guide>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start}.investment-reading-guide p{display:grid;gap:3px;margin:0}.investment-reading-guide small{color:var(--muted);line-height:1.4}.investment-guide-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:color-mix(in srgb,var(--primary) 10%,var(--surface-2));border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));color:var(--primary);font-weight:950}
.investment-current{padding:10px 12px;border:1px solid transparent;border-radius:13px;transition:background .15s ease,border-color .15s ease}.investment-current.gain{background:color-mix(in srgb,#16a34a 7%,var(--panel));border-color:color-mix(in srgb,#16a34a 26%,var(--border))}.investment-current.loss{background:color-mix(in srgb,#dc2626 7%,var(--panel));border-color:color-mix(in srgb,#dc2626 26%,var(--border))}.investment-current.gain strong{color:#15803d}.investment-current.loss strong{color:#b91c1c}
.investment-metric-help,.investment-eur-equivalent{font-size:.72rem!important;color:var(--muted)!important;font-weight:650!important}.investment-metric-positive{border-color:color-mix(in srgb,#16a34a 34%,var(--border))!important;background:color-mix(in srgb,#16a34a 5%,var(--surface-2))!important}.investment-metric-negative{border-color:color-mix(in srgb,#dc2626 34%,var(--border))!important;background:color-mix(in srgb,#dc2626 5%,var(--surface-2))!important}.investment-day-move{grid-template-columns:minmax(0,1fr) auto;column-gap:10px}.investment-day-move>small:first-child{grid-column:1/-1}.investment-day-move>.investment-eur-equivalent{text-align:right;align-self:center}
.investment-chart-svg.gain .investment-chart-area{fill:color-mix(in srgb,#10b981 16%,transparent)}.investment-chart-svg.gain .investment-chart-line{stroke:#10b981}.investment-chart-svg.gain .investment-chart-last{fill:#059669}.investment-chart-svg.loss .investment-chart-area{fill:color-mix(in srgb,#dc2626 14%,transparent)}.investment-chart-svg.loss .investment-chart-line{stroke:#dc2626}.investment-chart-svg.loss .investment-chart-last{fill:#b91c1c}.investment-chart-note{display:block;margin-top:5px;color:var(--muted);font-size:.68rem;line-height:1.35}

.ai-settings-section .settings-section-head{align-items:flex-start}.ai-settings-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:14px;margin-top:14px}.ai-settings-card{display:grid;gap:13px;padding:15px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2)}.ai-settings-card-head{display:grid;gap:3px}.ai-settings-card-head h3{margin:0;font-size:1rem}.ai-settings-card-head p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.4}.ai-feature-list{display:grid;gap:9px}.ai-feature-list .check-row{margin:0;padding:11px 12px;border:1px solid var(--border);border-radius:13px;background:var(--panel);align-items:flex-start}.ai-feature-list .check-row>input{margin-top:3px}.ai-feature-list .check-row span{display:grid;gap:3px}.ai-feature-list .check-row small{line-height:1.4}.ai-limit-grid{display:grid;grid-template-columns:1fr;gap:10px}.ai-limit-grid label{margin:0;padding:11px 12px;border:1px solid var(--border);border-radius:13px;background:var(--panel)}.ai-runtime-card{align-content:start}.ai-runtime-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ai-runtime-grid>div{display:grid;gap:4px;min-width:0;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.ai-runtime-grid small{color:var(--muted);font-size:.72rem;font-weight:750}.ai-runtime-grid strong{overflow-wrap:anywhere;font-size:.88rem}.ai-runtime-detail{margin:0;padding:10px 11px;border-radius:12px;background:color-mix(in srgb,var(--primary) 5%,var(--panel));border:1px solid color-mix(in srgb,var(--primary) 15%,var(--border));line-height:1.45;font-size:.8rem}.ai-runtime-detail strong{color:var(--text)}
body[data-theme="dark"] .investment-kpi-primary{background:color-mix(in srgb,#2563eb 10%,#2b3441)}body[data-theme="dark"] .investment-current.gain{background:rgba(22,163,74,.10)}body[data-theme="dark"] .investment-current.loss{background:rgba(220,38,38,.10)}body[data-theme="dark"] .investment-current.gain strong{color:#86efac}body[data-theme="dark"] .investment-current.loss strong{color:#fca5a5}body[data-theme="dark"] .ai-settings-card,body[data-theme="dark"] .ai-feature-list .check-row,body[data-theme="dark"] .ai-limit-grid label,body[data-theme="dark"] .ai-runtime-grid>div{background:#242c37}
@media(prefers-color-scheme:dark){body[data-theme="system"] .investment-current.gain strong{color:#86efac}body[data-theme="system"] .investment-current.loss strong{color:#fca5a5}body[data-theme="system"] .ai-settings-card,body[data-theme="system"] .ai-feature-list .check-row,body[data-theme="system"] .ai-limit-grid label,body[data-theme="system"] .ai-runtime-grid>div{background:#242c37}}
@media(max-width:900px){.investment-reading-guide{grid-template-columns:1fr}.ai-settings-layout{grid-template-columns:1fr}.ai-runtime-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.investment-day-move{grid-template-columns:1fr}.investment-day-move>.investment-eur-equivalent{text-align:left}.investment-current{width:100%;justify-items:start}.ai-settings-card{padding:12px}.ai-runtime-grid{grid-template-columns:1fr}.ai-feature-list .check-row,.ai-limit-grid label{padding:10px}}

/* Archivio 8.9.5-r2 · Observability & Integrity completa */
.observability-range-actions{align-items:center;flex-wrap:wrap}
.observability-chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.observability-chart-card{border:1px solid var(--border);border-radius:16px;padding:14px;background:var(--panel-soft,rgba(127,127,127,.04));min-width:0}
.observability-chart-head{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;margin-bottom:10px}
.observability-chart-head>div{display:flex;flex-direction:column;gap:2px}.observability-chart-head strong{font-size:1.35rem}.observability-chart-head span{font-size:.78rem;color:var(--muted);text-align:right}
.observability-sparkline{width:100%;height:96px;display:block;overflow:visible;border-bottom:1px solid var(--border)}
.observability-sparkline polyline{fill:none;stroke:currentColor;stroke-width:2}
.observability-empty{height:96px;display:grid;place-items:center;color:var(--muted);font-size:.88rem}
@media(max-width:700px){.observability-chart-grid{grid-template-columns:1fr}.observability-chart-head{align-items:center}.observability-history-panel .section-heading{gap:10px}.observability-range-actions{width:100%}}

/* Archivio 8.10.0-r1 · Libreria Analisi PDF + selettore rapido Investimenti */
.lab-library-primary-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.lab-library-no-pdf{display:inline-flex;align-items:center;min-height:28px;padding:4px 8px;border:1px dashed var(--border);border-radius:8px;color:var(--muted);font-size:.72rem;font-weight:750}.lab-library-mobile-pdf{display:none;margin-top:8px}
.investment-title-picker{display:grid;gap:8px;margin:4px 0 16px;padding:14px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:15px;background:color-mix(in srgb,var(--primary) 4%,var(--surface-2))}.investment-title-picker>label{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.investment-title-picker>label span,.investment-title-picker>small{color:var(--muted);font-size:.78rem}.investment-title-picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.investment-title-select{width:100%;min-height:44px;font-weight:750}.investment-existing-hint{margin:-6px 0 14px;padding:10px 12px;border-radius:11px;background:color-mix(in srgb,#16a34a 8%,var(--surface-2));border:1px solid color-mix(in srgb,#16a34a 24%,var(--border));font-size:.82rem}.investment-new-panel[hidden]{display:none}.investment-position-card.investment-picker-focus{animation:investmentPickerFocus 2.2s ease}@keyframes investmentPickerFocus{0%,100%{box-shadow:var(--shadow)}20%,70%{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 55%,transparent),var(--shadow)}}
@media(max-width:620px){.investment-title-picker-row{grid-template-columns:1fr}.investment-new-title-button{width:100%;justify-content:center}.lab-library-primary-actions{display:grid;grid-template-columns:1fr}.lab-library-primary-actions .button{width:100%;justify-content:center}.lab-library-mobile-pdf{display:block;min-width:150px}.lab-library-mobile-pdf .button{width:100%;justify-content:center}.lab-library-table td:nth-child(2){min-width:190px}}

.resource-background-overview{display:grid;grid-template-columns:minmax(220px,1fr) minmax(320px,1.2fr);gap:14px;align-items:center;margin:14px 0;padding:14px;border:1px solid color-mix(in srgb,#0ea5e9 24%,var(--border));border-radius:14px;background:color-mix(in srgb,#0ea5e9 5%,var(--surface-2))}.resource-background-overview>div:first-child{display:grid;gap:3px}.resource-background-overview>small{grid-column:1/-1}@media(max-width:760px){.resource-background-overview{grid-template-columns:1fr}}

/* Archivio 8.10.0-r3 — creazione/modifica Office ripristinata */
.office-create-section{padding-top:0}.office-create-section h3{margin:.15rem 0 .3rem}.office-create-panel .collabora-create-bar{margin-bottom:0}.office-create-bar label{display:grid;gap:.35rem}.office-create-bar label>span{font-size:.78rem;font-weight:800;color:var(--muted,#64748b)}.office-create-hint{grid-column:1/-1;color:var(--muted,#64748b);line-height:1.35}.office-create-bar .button{align-self:end;min-height:42px}
body[data-theme="dark"] .office-create-bar label>span,body[data-theme="dark"] .office-create-hint{color:#c5d0de}
@media(max-width:700px){.office-create-panel{padding:15px}.office-create-bar{gap:9px}.office-create-bar label>span{font-size:.76rem}.office-create-bar .button{min-height:46px}.record-view-file-actions a.button{min-width:0}}
@media(prefers-color-scheme:dark){body[data-theme="system"] .office-create-bar label>span,body[data-theme="system"] .office-create-hint{color:#c5d0de}}
