:root{
  --bg:#eef1f4;--panel:#fff;--panel-soft:#f8f9fb;--text:#1f2933;--muted:#667085;--line:#d6dce3;--accent:#5f7588;--accent-dark:#34495e;--ok:#2f6f4e;--danger:#9b2c2c;
  --topbar:56px;--sidebar:320px;--radius:3px;--wide:1280px;--measure:820px
}
*{box-sizing:border-box}html{font-size:16px}body.app{margin:0;min-height:100vh;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}img{max-width:100%;height:auto}a{color:var(--accent-dark);text-decoration-thickness:1px;text-underline-offset:3px}button,input,select,textarea{font:inherit}.app-topbar{position:sticky;top:0;z-index:50;height:var(--topbar);display:flex;align-items:center;gap:16px;padding:0 18px;background:var(--panel);border-bottom:1px solid var(--line)}.app-brand{font-weight:850;letter-spacing:.04em;color:var(--text);text-decoration:none}.app-actions{display:flex;align-items:center;gap:14px;margin-left:auto}.app-actions a{color:var(--muted);text-decoration:none;font-size:.92rem}.app-actions a:hover{color:var(--text)}.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);grid-template-areas:"sidebar main";min-height:calc(100vh - var(--topbar))}.app-sidebar{grid-area:sidebar;position:sticky;top:var(--topbar);height:calc(100vh - var(--topbar));background:var(--panel);border-right:1px solid var(--line);overflow:hidden}.app-main{grid-area:main;min-width:0;padding:24px}.workspace-head,.workspace{width:min(100%,var(--wide));margin-inline:auto}.workspace-head{margin-bottom:18px}.workspace-head h1,.document-head h1{margin:0;font-size:clamp(1.5rem,2vw,2.25rem);line-height:1.15}.eyebrow{margin:0 0 6px;color:var(--accent-dark);font-size:.76rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.lead{max-width:var(--measure);color:var(--muted);font-size:1.04rem}.meta{color:var(--muted);font-size:.9rem}.panel,.card,.article,.tool,.filter-bar{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.panel,.article,.tool,.filter-bar{padding:clamp(18px,3vw,34px)}.card{padding:18px}.grid,.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.list{display:grid;gap:10px}.card-title,.card h2{margin:.45rem 0 .5rem;font-size:1.05rem;line-height:1.3}.card p{margin:.4rem 0}.badge{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border:1px solid var(--line);background:var(--panel-soft);color:var(--muted);font-size:.78rem;font-weight:650}.button,.nav-toggle,.nav-close,.nav-next,.nav-back{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.button,.nav-toggle{min-height:38px;padding:8px 13px;border:1px solid var(--accent);background:var(--accent);color:#fff;text-decoration:none;font-weight:650}.button-soft{background:var(--panel);color:var(--accent-dark)}.nav-toggle{gap:7px;border-color:var(--line);background:var(--panel);color:var(--text)}.sidebar-head{height:56px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 14px;border-bottom:1px solid var(--line)}.nav-close{width:36px;height:36px;border:1px solid var(--line);background:var(--panel-soft);color:var(--text)}.quick-nav{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px;border-bottom:1px solid var(--line)}.quick-nav a{display:flex;align-items:center;min-height:34px;padding:6px 8px;background:var(--panel-soft);border:1px solid var(--line);color:var(--text);text-decoration:none;font-size:.88rem}.nav-tree{position:relative;height:calc(100vh - var(--topbar) - 56px);overflow:hidden}.nav-level{position:absolute;inset:0;list-style:none;margin:0;padding:8px;background:var(--panel);overflow-y:auto;transform:translateX(100%);transition:transform .22s ease}.nav-level.is-active{transform:translateX(0)}.nav-level.is-parent{transform:translateX(-25%)}.nav-row{border-bottom:1px solid var(--line)}.nav-row.is-current>a,.nav-row.current-menu-item>a,.nav-row.current-menu-ancestor>a{font-weight:750;color:var(--accent-dark);background:var(--panel-soft)}.sidebar-empty{padding:16px;color:var(--muted);font-size:.92rem}.sidebar-empty p{margin:.4rem 0}.nav-row:not(.nav-row-title){display:grid;grid-template-columns:minmax(0,1fr) 44px}.nav-row a,.nav-back,.nav-row-title span{min-height:44px;display:flex;align-items:center;gap:8px;width:100%;padding:9px 8px;color:var(--text);text-decoration:none}.nav-next,.nav-back{border:0;background:transparent;color:var(--muted)}.nav-next{border-left:1px solid var(--line);font-size:1.25rem}.nav-back{justify-content:flex-start;color:var(--accent-dark);font-weight:750}.nav-row-back{grid-template-columns:1fr!important}.nav-row-title{padding:10px 8px;background:var(--panel-soft);color:var(--muted);font-size:.82rem;font-weight:750;text-transform:uppercase;letter-spacing:.07em}.nav-count{margin-left:auto;color:var(--muted);font-size:.78rem}.nav-backdrop{position:fixed;inset:0;background:rgb(0 0 0 / .28);opacity:0;pointer-events:none;transition:opacity .22s ease;z-index:70}body.nav-open .nav-backdrop{opacity:1;pointer-events:auto}.document{max-width:var(--wide)}.document-head{margin-bottom:20px}.document-body{max-width:100%}.document-body h2,.document-body h3{margin-top:2em;line-height:1.25}.document-body p,.document-body ul,.document-body ol,.document-body table{margin-bottom:1.1em}.document-body table{width:100%;border-collapse:collapse;background:var(--panel);font-size:.95rem}.document-body th,.document-body td{border:1px solid var(--line);padding:9px 10px;text-align:left}.document-body blockquote,.notice{margin:22px 0;padding:14px 16px;border-left:4px solid var(--accent);background:var(--panel-soft)}.hero-media{margin:0 0 22px}.hero-media img{display:block;border:1px solid var(--line)}.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.post-nav>div{background:var(--panel);border:1px solid var(--line);padding:12px}.post-nav>div:last-child{text-align:right}.pagination{width:min(100%,var(--wide));margin:20px auto}.pagination ul{list-style:none;display:flex;gap:6px;flex-wrap:wrap;padding:0;margin:0}.pagination a,.pagination span{display:inline-flex;min-height:34px;align-items:center;padding:6px 10px;border:1px solid var(--line);background:var(--panel);text-decoration:none}.pagination .current{background:var(--accent);border-color:var(--accent);color:#fff}.filter-bar{margin:16px 0;display:flex;gap:12px;align-items:end;flex-wrap:wrap}.filter-bar label{display:grid;gap:4px}.filter-bar input,.filter-bar select{min-height:38px;border:1px solid var(--line);background:var(--panel);padding:7px 9px}.section-title{width:min(100%,var(--wide));margin:26px auto 12px}.app-footer{padding:18px 24px;border-top:1px solid var(--line);background:var(--panel);color:var(--muted);font-size:.9rem}.app-footer p{margin:0}.wp-caption,.gallery{max-width:100%}.alignleft{float:left;margin:0 18px 14px 0}.alignright{float:right;margin:0 0 14px 18px}.aligncenter{display:block;margin-inline:auto}
@media (max-width:1023px){.app-actions{display:none}.app-shell{display:block}.app-main{padding:16px}.app-sidebar{position:fixed;inset:0 auto 0 0;top:0;width:min(90vw,360px);height:100vh;transform:translateX(-100%);transition:transform .22s ease;z-index:80}.sidebar-head{height:var(--topbar)}.nav-tree{height:calc(100vh - var(--topbar) - 57px)}body.nav-open .app-sidebar{transform:translateX(0)}.post-nav{grid-template-columns:1fr}.post-nav>div:last-child{text-align:left}}
@media (min-width:1024px){.nav-toggle,.nav-close{display:none}.nav-backdrop{display:none!important}}

/* Italfaber Atlante Carpenterie: il plugin porta dati, il tema porta forma */
.ifb-atlante{display:grid;gap:16px}.ifb-atlante .ifb-breadcrumb,.ifb-breadcrumb{font-size:.9rem;color:var(--muted);margin:0 0 12px}.ifb-breadcrumb a{color:var(--accent-dark);text-decoration:none}.ifb-company-grid{display:grid;gap:10px}.ifb-company-card h2{margin:.35rem 0 .45rem;font-size:1.05rem;line-height:1.28}.ifb-company-card-body{grid-column:1/-1}.ifb-tags,.ifb-tags-large,.ifb-pill-list,.ifb-related-links{display:flex;flex-wrap:wrap;gap:6px}.ifb-tags span,.ifb-tags-large span,.ifb-pill-list a,.ifb-related-links a{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border:1px solid var(--line);background:var(--panel-soft);color:var(--text);font-size:.82rem;text-decoration:none}.ifb-company-meta,.meta-list{display:grid;gap:7px;margin:12px 0 0}.ifb-company-meta div,.meta-list div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;border-top:1px solid var(--line);padding-top:7px}.ifb-company-meta dt,.meta-list dt{color:var(--muted);font-size:.82rem;font-weight:750;text-transform:uppercase;letter-spacing:.035em}.ifb-company-meta dd,.meta-list dd{margin:0;min-width:0;overflow-wrap:anywhere}.ifb-company-sheet{display:grid;gap:18px}.ifb-company-hero-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:18px}.ifb-company-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.ifb-sheet-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:14px}.ifb-sheet-grid-lists{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.ifb-sheet-block h3,.ifb-company-updates h3,.ifb-related-territory h3{margin-top:0}.ifb-check-list{margin:0;padding-left:1.2rem}.ifb-context-box,.ifb-update-box,.ifb-archive-seo{border-left:4px solid var(--accent)}.ifb-company-updates{display:grid;gap:14px}.ifb-update-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.ifb-update-card{display:block}.ifb-update-card-has-image{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px}.ifb-update-thumb img{width:120px;height:120px;object-fit:cover;border:1px solid var(--line)}.ifb-update-body h4{margin:0 0 7px;font-size:1rem}.ifb-small-note,.ifb-update-excerpt,.ifb-ethical-note,.ifb-archive-ethic{color:var(--muted);font-size:.94rem}.ifb-regioni{margin-top:16px}.ifb-hidden-title{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (max-width:760px){.ifb-company-hero-card,.ifb-sheet-grid,.ifb-update-card-has-image{grid-template-columns:1fr}.ifb-company-actions{justify-content:flex-start}.ifb-company-meta div,.meta-list div{grid-template-columns:1fr;gap:2px}.ifb-update-thumb img{width:100%;height:auto;max-height:220px}}


/* Italfaber Appalti e Lavori: il plugin porta dati, il tema porta forma */
.ifb-appalti-archive,.ifb-appalto-scheda,.ifb-front-form,.ifb-submit-intro{width:min(100%,var(--wide));margin-inline:auto}.ifb-appalto-scheda{display:grid;gap:16px}.ifb-app-hero{position:relative;overflow:hidden}.ifb-app-hero:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--accent)}.ifb-app-hero.ifb-status-open:before{background:var(--ok)}.ifb-app-hero.ifb-status-soon:before{background:#a15c07}.ifb-app-hero.ifb-status-expired:before{background:var(--danger)}.ifb-app-hero.ifb-status-awarded:before{background:#345d8c}.ifb-app-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.ifb-app-eyebrow,.ifb-eyebrow{margin:0 0 6px;color:var(--accent-dark);font-size:.76rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.ifb-app-title{margin:0;font-size:clamp(1.55rem,2.6vw,2.75rem);line-height:1.08;letter-spacing:-.035em}.ifb-app-subline,.ifb-app-actions,.ifb-app-badges,.ifb-badges,.ifb-mini-actions,.ifb-filter-actions{display:flex;flex-wrap:wrap;gap:8px 12px}.ifb-app-subline{margin-top:12px;color:var(--muted)}.ifb-app-actions{margin-top:16px}.ifb-app-badges span,.ifb-status-badge,.ifb-badge-neutral,.ifb-badge-verified,.ifb-badge-unverified,.ifb-badges span{display:inline-flex;align-items:center;min-height:25px;padding:3px 9px;border:1px solid var(--line);background:var(--panel-soft);color:var(--text);font-size:.78rem;font-weight:700}.ifb-status-badge.ifb-status-open,.ifb-badge-verified{color:var(--ok);background:#f3faf6}.ifb-status-badge.ifb-status-soon{color:#a15c07;background:#fff8ed}.ifb-status-badge.ifb-status-expired,.ifb-badge-unverified{color:var(--danger);background:#fff5f5}.ifb-app-kpi-grid{margin:16px 0}.ifb-app-kpi{display:block;min-height:100%;position:relative}.ifb-app-kpi span,.ifb-kpi span,.ifb-data-item dt,.ifb-side-row span,.ifb-filter-grid label,.ifb-front-form label span{display:block;color:var(--muted);font-size:.78rem;font-weight:750;text-transform:uppercase;letter-spacing:.045em}.ifb-app-kpi strong,.ifb-kpi strong{display:block;margin-top:5px;font-size:1.08rem;line-height:1.25;overflow-wrap:anywhere}.ifb-app-kpi em{display:block;margin-top:6px;color:var(--muted);font-style:normal;font-size:.88rem}.ifb-app-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}.ifb-app-main{display:grid;gap:14px}.ifb-app-side{position:sticky;top:calc(var(--topbar) + 16px);display:grid;gap:12px}.ifb-app-panel h2,.ifb-side-card h2,.ifb-app-warning h2{margin-top:0}.ifb-app-summary p,.ifb-evidence p{line-height:1.65}.ifb-app-object,.ifb-evidence,.ifb-card-mini,.ifb-policy-box,.ifb-policy-small{border:1px solid var(--line);background:var(--panel-soft);padding:11px 12px}.ifb-evidence{margin:10px 0}.ifb-evidence span{display:block;color:var(--muted);font-size:.78rem;font-weight:750;text-transform:uppercase;letter-spacing:.045em}.ifb-evidence strong{display:block;margin-top:4px}.ifb-data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;margin:0}.ifb-data-item{border:1px solid var(--line);background:var(--panel);padding:11px}.ifb-data-item dd{margin:5px 0 0;overflow-wrap:anywhere}.ifb-value-muted dd{color:var(--muted)}.ifb-side-row{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px;border-top:1px solid var(--line);padding-top:8px}.ifb-side-row:first-of-type{border-top:0}.ifb-side-row strong{text-align:right;overflow-wrap:anywhere}.ifb-side-link{display:block;margin-top:7px;padding:9px 10px;border:1px solid var(--line);background:var(--panel-soft);text-decoration:none;font-weight:650;overflow-wrap:anywhere}.ifb-filter-form{display:block;margin-bottom:16px}.ifb-filter-form:before{content:"Trova appalti e lavori";display:block;margin-bottom:12px;font-weight:800;font-size:1.1rem}.ifb-filter-grid,.ifb-front-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.ifb-filter-grid p,.ifb-front-grid p{margin:0}.ifb-filter-grid input,.ifb-filter-grid select,.ifb-front-form input,.ifb-front-form textarea{width:100%;min-height:38px;border:1px solid var(--line);background:var(--panel);padding:8px 9px}.ifb-front-form textarea{resize:vertical}.ifb-check{display:flex;align-items:end}.ifb-check input{width:auto}.ifb-results-head{margin:12px 0 14px}.ifb-result-card{display:flex;flex-direction:column;gap:8px}.ifb-result-card h3{margin:.25rem 0;font-size:1.04rem;line-height:1.25}.ifb-place-small{margin:0;color:var(--muted)}.ifb-badges{margin:2px 0}.ifb-card-mini{margin-top:auto;font-size:.92rem}.ifb-mini-actions,.ifb-filter-actions{margin-top:10px}.ifb-archive-pages{margin-top:18px}.ifb-submit-intro{margin-bottom:14px}.ifb-form-title{margin-top:0}.ifb-form-help,.ifb-small-note{color:var(--muted)}.ifb-form-section-title{margin-top:22px;padding-top:14px;border-top:1px solid var(--line)}.ifb-field-wide{margin:12px 0}.ifb-required{color:var(--danger)}.ifb-privacy-check label{display:flex;gap:8px;align-items:flex-start}.ifb-privacy-check input{width:auto;margin-top:4px}
@media (max-width:900px){.ifb-app-layout{grid-template-columns:1fr}.ifb-app-side{position:static;grid-template-columns:1fr 1fr}.ifb-app-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}
@media (max-width:640px){.ifb-app-hero-top,.ifb-app-subline,.ifb-app-actions,.ifb-app-badges,.ifb-mini-actions,.ifb-filter-actions{display:grid;grid-template-columns:1fr}.ifb-app-side{grid-template-columns:1fr}.ifb-side-row{grid-template-columns:1fr}.ifb-side-row strong{text-align:left}.ifb-btn,.ifb-mini-actions .button,.ifb-filter-actions .button{width:100%}.ifb-data-grid,.ifb-front-grid,.ifb-filter-grid{grid-template-columns:1fr}}

.archive-tools{margin-bottom:16px}.archive-tools .ifb-filter-form{margin-top:0;margin-bottom:0}.workspace-head + .archive-tools{margin-top:-2px}

/* Italfaber Lean Console 0.2 - template pubblici nel tema */
.item-rich { display: grid; gap: 14px; }
.item-main > :first-child { margin-top: 0; }
.compact-list { gap: 4px; font-size: .92rem; }
.compact-list div { grid-template-columns: minmax(105px, 150px) 1fr; }
.details-panel { margin-top: 10px; padding: 0; overflow: hidden; }
.details-panel > summary { cursor: pointer; padding: 12px 14px; font-weight: 700; color: var(--accent-dark); background: var(--panel-soft); }
.details-panel[open] > summary { border-bottom: 1px solid var(--line); }
.details-panel .meta-list { padding: 14px; }
.technical-sheet { background: transparent; border: 0; padding: 0; max-width: var(--wide); }
.sheet-hero { margin-bottom: 16px; }
.sheet-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; }
.kpi-grid { margin: 0 0 16px; }
.kpi-grid .card { display: grid; gap: 5px; }
.kpi-grid strong { font-size: 1.02rem; line-height: 1.25; }
.sheet-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 16px; align-items: start; }
.sheet-main, .sheet-side { display: grid; gap: 16px; }
.sheet-side { position: sticky; top: calc(var(--topbar) + 16px); }
.all-data-grid div { align-items: start; }
@media (max-width: 1080px) {
  .sheet-layout { grid-template-columns: 1fr; }
  .sheet-side { position: static; }
}
@media (max-width: 640px) {
  .compact-list div, .all-data-grid div { grid-template-columns: 1fr; }
}


/* Carpenterie 0.2.1: contatti cliccabili e schede più complete */
.contact-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.mini-actions.contact-actions { margin-top: 12px; }
.contact-actions .button { min-height: 34px; padding: 7px 10px; font-size: .9rem; }
.sheet-carpenteria .panel h2 { margin-top: 0; }
.sheet-carpenteria .meta-list dd a,
.card-carpenteria .meta-list dd a,
.kpi-grid a { font-weight: 650; overflow-wrap: anywhere; }
.card-carpenteria .compact-list { margin-top: 4px; }
.card-carpenteria .details-panel { border: 1px solid var(--line); background: var(--panel); }
.sheet-carpenteria .details-panel { margin-top: 0; }
@media (max-width: 640px) {
  .contact-actions { display: grid; grid-template-columns: 1fr; }
  .contact-actions .button { width: 100%; }
}

/* 0.2.3: archivio articoli uniforme, senza formattazioni ereditarie strane */
.archive-item { display: block; width: 100%; }
.archive-item-head { display: grid; gap: 8px; }
.archive-item .badge { width: max-content; max-width: 100%; }
.archive-item-title { margin: 0; font-size: 1.08rem; line-height: 1.28; }
.archive-item-title a { color: var(--text); text-decoration: none; }
.archive-item-title a:hover { color: var(--accent-dark); text-decoration: underline; }
.archive-item-excerpt { margin: 10px 0 0; color: var(--text); max-width: 92ch; }
.archive-item-meta { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--line); }
.archive-item-meta span + span:before { content: ""; }
.archive-post-item { overflow: hidden; }
.archive-post-item * { overflow-wrap: anywhere; }
.list > .archive-item + .archive-item { margin-top: 0; }


/* 0.2.4: breadcrumb e descrizione SEO visuale gestiti dal tema, dati dal plugin SEO */
.breadcrumb {
  width: min(100%, var(--wide));
  margin: 0 auto 14px;
  color: var(--muted);
  font-size: .88rem;
}
.breadcrumb a {
  color: var(--accent-dark);
  text-decoration: none;
}
.breadcrumb a:hover { text-decoration: underline; }
.lb-breadcrumb-separator { color: var(--muted); margin: 0 6px; }
.lb-breadcrumb-current { color: var(--text); }
.seo-description { margin-top: 12px; }
.sheet-subtitle { margin: 10px 0 0; }
.document-head .seo-description,
.workspace-head .seo-description { max-width: var(--measure); }
.breadcrumb-wrap { width: min(100%, var(--wide)); margin: 0 auto 14px; }
.breadcrumb-wrap .lb-breadcrumb { margin: 0; color: var(--muted); font-size: .88rem; }
.breadcrumb-wrap .lb-breadcrumb a { color: var(--accent-dark); text-decoration: none; }
.breadcrumb-wrap .lb-breadcrumb a:hover { text-decoration: underline; }
.breadcrumb-wrap .lb-breadcrumb-current { color: var(--text); }


/* 0.2.5: contenuto prima della sidebar nel DOM, sidebar a sinistra solo via CSS */
.app-main { grid-area: main; }
.app-sidebar { grid-area: sidebar; }
.comment-respond, .comments-area, .wp-block-post-comments, .wp-block-comments, #comments { display: none !important; }
@media (max-width:1023px){ .app-shell{display:block;} .app-main{grid-area:auto;} .app-sidebar{grid-area:auto;} }

/* Hard reset menu/list markers: il menu applicazione non deve mai mostrare pallini da lista. */
.app-topbar ul,
.app-topbar li,
.app-actions ul,
.app-actions li,
.app-sidebar ul,
.app-sidebar li,
.nav-tree ul,
.nav-tree li,
.nav-level,
.nav-level li,
.quick-nav ul,
.quick-nav li {
  list-style: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

.app-topbar li::marker,
.app-actions li::marker,
.app-sidebar li::marker,
.nav-tree li::marker,
.nav-level li::marker,
.quick-nav li::marker {
  content: "" !important;
  font-size: 0 !important;
}

.app-actions .menu,
.app-actions .menu > ul {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0;
  padding: 0;
}

.nav-tree .menu,
.nav-tree .sub-menu {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 0.2.9: dettagli grafici funzionali, leggeri e reversibili */
:root{
  --steel-blue:#5f7588;
  --steel-blue-soft:#eef4f8;
  --tender-accent:#a15c07;
  --tender-soft:#fff8ed;
  --company-accent:#2f6f4e;
  --company-soft:#f3faf6;
  --doc-accent:#44576a;
}
.card,
.panel,
.article,
.filter-bar{
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.card:hover,
.panel:hover{
  border-color:#c3ccd5;
  box-shadow:0 1px 0 rgb(31 41 51 / .04);
}
.archive-post-item,
.document:not(.technical-sheet){
  border-left:4px solid var(--doc-accent);
}
.card-appalto,
.sheet-appalto .sheet-hero,
.ifb-result-card{
  border-left:4px solid var(--tender-accent);
}
.card-carpenteria,
.sheet-carpenteria .sheet-hero,
.ifb-company-card{
  border-left:4px solid var(--company-accent);
}
.card-appalto .badge,
.sheet-appalto .badge,
.ifb-status-badge{
  background:var(--tender-soft);
  border-color:#ead5b7;
}
.card-carpenteria .badge,
.sheet-carpenteria .badge,
.ifb-badge-verified{
  background:var(--company-soft);
  border-color:#cfe4d8;
}
.breadcrumb-wrap,
.breadcrumb{
  padding:9px 12px;
  border:1px solid var(--line);
  background:var(--panel-soft);
  border-radius:var(--radius);
}
.filter-bar,
.archive-tools .ifb-filter-form{
  border-top:3px solid var(--steel-blue);
}
.filter-bar:before,
.archive-tools .ifb-filter-form:before{
  color:var(--accent-dark);
}
.button:hover,
.nav-toggle:hover,
.contact-actions .button:hover{
  filter:brightness(.96);
}
.button-soft:hover,
.nav-row a:hover,
.quick-nav a:hover,
.side-link:hover{
  background:var(--steel-blue-soft);
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.button:focus-visible{
  outline:2px solid var(--accent-dark);
  outline-offset:2px;
}
.contact-actions .button[href^="tel:"],
.contact-actions .button[href^="mailto:"],
.contact-actions .button[target="_blank"]{
  border-color:var(--line);
  background:var(--panel-soft);
  color:var(--accent-dark);
}
.contact-actions .button[href^="tel:"]{
  border-left:4px solid var(--company-accent);
}
.contact-actions .button[href^="mailto:"]{
  border-left:4px solid var(--steel-blue);
}
.contact-actions .button[target="_blank"]{
  border-left:4px solid var(--doc-accent);
}
.meta-list dt,
.ifb-data-item dt,
.ifb-side-row span{
  color:#566678;
}
.details-panel > summary:hover{
  background:var(--steel-blue-soft);
}
