body { background:#f5f7fa; color:#1f2937; }
.page-wrap { max-width:1120px; margin:0 auto; padding:32px 16px; }
.panel,.result-panel { background:#fff; border:1px solid #d8dee8; border-radius:8px; box-shadow:0 12px 28px rgba(15,23,42,.07); }
.result-panel { background:#eef8f3; border-color:#b8dfcc; }
.muted-text { color:#667085; font-size:.93rem; }
.formula { font-family:Consolas, Monaco, "Courier New", monospace; word-break:break-word; }
.table-wrap { max-height:420px; overflow:auto; }
.context-box { background:#fafbfd; border:1px solid #e2e8f0; border-radius:8px; padding:18px; height:100%; }
.context-title { color:#344054; font-size:.98rem; font-weight:700; margin-bottom:14px; }
.choice-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:10px; }
.choice-card { display:block; min-height:74px; border:1px solid #cfd8e3; border-radius:8px; background:#fff; padding:12px 14px; cursor:pointer; transition:border-color .15s ease, box-shadow .15s ease, background .15s ease; }
.choice-card strong { display:block; font-size:.96rem; line-height:1.2; }
.choice-card span { color:#667085; display:block; font-size:.82rem; margin-top:4px; }
.btn-check:checked + .choice-card { background:#eef6ff; border-color:#0d6efd; box-shadow:0 0 0 3px rgba(13,110,253,.12); }
.input-disabled { opacity:.55; }
.context-disabled { opacity:.55; }
.action-row { border-top:1px solid #e4e7ec; padding-top:18px; }
.stat-card { background:#fff; border:1px solid #e7ebf0; border-radius:8px; padding:18px; box-shadow:0 8px 22px rgba(15,23,42,.05); height:100%; }
.stat-kicker { color:#475467; font-size:.78rem; text-transform:uppercase; letter-spacing:.02em; }
.stat-main { color:#0d6efd; font-size:2rem; font-weight:800; line-height:1.05; }
.stat-main.success { color:#138557; }
.stat-icon { width:56px; height:56px; border-radius:8px; background:#eaf2ff; color:#0d6efd; display:flex; align-items:center; justify-content:center; font-size:1.6rem; }
.stat-icon.success { background:#e7f5ee; color:#138557; }
.help-btn { border:0; background:#eef6ff; color:#0d6efd; width:24px; height:24px; border-radius:50%; font-weight:700; line-height:1; }
.quick-help-strip { display:flex; align-items:center; justify-content:space-between; gap:18px; background:#fff; border:1px solid #dbe5ef; border-left:4px solid #0d6efd; border-radius:8px; padding:18px 20px; box-shadow:0 8px 22px rgba(15,23,42,.05); }
.quick-help-title { color:#1f2937; font-weight:800; margin-bottom:4px; }
.quick-help-strip p { color:#667085; line-height:1.5; }
.quick-help-action { flex:0 0 auto; font-weight:700; }
.quick-guide { color:#344054; line-height:1.58; }
.quick-guide .guide-lead { color:#1f2937; font-size:1.02rem; font-weight:650; }
.quick-guide h6 { margin:1.25rem 0 .45rem; color:#12263a; font-size:.95rem; font-weight:800; }
.quick-guide ul { padding-left:1.2rem; margin-bottom:.75rem; }
.quick-guide li { margin-bottom:.38rem; }
.guide-preview { margin-top:1rem; border:1px solid #d8e3ed; border-radius:10px; background:#fff; overflow:hidden; box-shadow:0 8px 18px rgba(15,23,42,.05); }
.guide-preview-header { display:flex; justify-content:space-between; gap:16px; padding:16px; border-bottom:1px solid #e3eaf1; background:#f7fafc; color:#344054; font-size:.86rem; }
.guide-preview-name { color:#12263a; font-size:1rem; font-weight:800; }
.guide-preview-date { flex:0 0 auto; color:#667085; font-weight:700; white-space:nowrap; }
.guide-preview-case { padding:14px 16px; border-bottom:1px solid #e3eaf1; color:#344054; font-size:.88rem; }
.guide-preview-table-wrap { overflow:auto; }
.guide-preview-table { width:100%; min-width:680px; border-collapse:collapse; font-size:.82rem; }
.guide-preview-table th { padding:9px 10px; background:#12263a; color:#fff; border:1px solid #263b50; font-weight:750; white-space:nowrap; }
.guide-preview-table td { padding:9px 10px; border:1px solid #e3eaf1; color:#344054; white-space:nowrap; }
.guide-preview-note { padding:10px 16px; background:#fbfcfd; color:#667085; font-size:.8rem; }
.guide-note { margin-top:1.1rem; padding:14px 16px; border-left:4px solid #17755b; border-radius:8px; background:#eef8f3; color:#173c35; font-weight:650; }
.field-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.export-row { display:flex; flex-wrap:wrap; gap:8px; justify-content:space-between; align-items:center; margin-bottom:14px; }
.table-counter { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; margin:-6px 0 14px; padding:9px 12px; border:1px solid #d9e6e1; border-radius:8px; background:#fbfefd; }
.table-counter-main { color:#475467; font-size:.88rem; font-weight:650; }
.table-counter-main .badge { color:#173c35; font-size:.86rem; font-weight:750; }
.table-counter-note { color:#667085; font-size:.86rem; font-weight:650; }
.practice-header { background:#fff; border:1px solid #d8dee8; border-radius:8px; padding:14px; margin-bottom:14px; }
.practice-consultant { border-bottom:1px solid #e4e7ec; margin-bottom:10px; padding-bottom:10px; }
.practice-consultant-name { font-size:1.05rem; font-weight:700; }
.modal-section-title { color:#344054; font-weight:700; margin-top:4px; }
.beta-welcome-modal { overflow:hidden; border:0; border-radius:18px; box-shadow:0 28px 80px rgba(18,38,58,.28); }
.beta-welcome-hero { padding:30px 32px; color:#fff; background:linear-gradient(135deg,#12263a 0%,#245b87 56%,#17755b 100%); }
.beta-welcome-kicker { margin-bottom:10px; color:#cce9dd; font-size:.76rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.beta-welcome-hero h2 { max-width:680px; margin:0; font-size:clamp(1.65rem,3.4vw,2.55rem); font-weight:850; line-height:1.08; }
.beta-welcome-hero p { max-width:720px; margin:14px 0 0; color:#e6f2f1; font-size:1rem; line-height:1.55; }
.beta-welcome-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:22px; }
.beta-flow-step { position:relative; min-height:104px; padding:14px 14px 13px; border:1px solid rgba(255,255,255,.2); border-radius:12px; background:rgba(255,255,255,.1); color:#eaf7f3; transform:translateY(8px); opacity:.72; transition:opacity .35s ease, transform .35s ease, background .35s ease, border-color .35s ease; }
.beta-flow-step span { width:28px; height:28px; display:inline-flex; align-items:center; justify-content:center; margin-bottom:10px; border-radius:8px; background:rgba(255,255,255,.16); color:#fff; font-size:.78rem; font-weight:850; }
.beta-flow-step strong { display:block; color:#fff; font-size:.94rem; line-height:1.2; }
.beta-flow-step small { display:block; margin-top:5px; color:#cfece3; font-size:.78rem; line-height:1.35; }
.beta-flow-step.is-active { opacity:1; transform:translateY(0); border-color:rgba(255,255,255,.42); background:rgba(255,255,255,.18); box-shadow:0 14px 30px rgba(0,0,0,.12); }
.beta-flow-step.is-active span { background:#fff; color:#17755b; }
.beta-welcome-body { padding:26px 30px 28px; background:#fff; }
.beta-feature-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.beta-feature { display:grid; grid-template-columns:auto 1fr; gap:4px 12px; padding:14px; border:1px solid #dce5ee; border-radius:12px; background:#f8fafb; }
.beta-feature-icon { grid-row:1 / span 2; width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center; background:#e5f3ee; color:#17755b; font-weight:850; font-size:.82rem; }
.beta-feature strong { color:#12263a; font-size:.96rem; }
.beta-feature span { color:#627083; font-size:.86rem; line-height:1.42; }
.beta-welcome-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.beta-welcome-actions .btn { border-radius:10px; font-weight:800; }
.beta-welcome-actions .btn-primary { border-color:#17755b; background:#17755b; }
.beta-welcome-actions .btn-primary:hover { border-color:#105c47; background:#105c47; }
.beta-welcome-small { margin:16px 0 0; color:#667085; font-size:.88rem; line-height:1.5; }
.action-icon { width:1.15rem; height:1.15rem; fill:currentColor; display:block; }
.icon-label-btn { display:inline-flex; align-items:center; gap:.4rem; }
.history-actions { display:flex; justify-content:flex-end; gap:.35rem; white-space:nowrap; }
.history-icon-btn { width:2.15rem; height:2.15rem; padding:0; display:inline-flex; align-items:center; justify-content:center; }
.success-modal { border:0; border-radius:1rem; box-shadow:0 1rem 3rem rgba(16,24,40,.18); }
.success-modal-icon { width:4.25rem; height:4.25rem; margin:0 auto; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; background:linear-gradient(135deg,#198754,#20b26b); box-shadow:0 .6rem 1.5rem rgba(25,135,84,.25); }
.success-modal-icon svg { width:2.5rem; height:2.5rem; fill:currentColor; }
.message-modal-icon { width:3.75rem; height:3.75rem; margin:0 auto; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; background:#198754; }
.message-modal-icon.is-error { background:#dc3545; }
.message-modal-icon svg { width:2.2rem; height:2.2rem; fill:currentColor; }
.shared-calculation-header { position:relative; overflow:hidden; color:#fff; background:linear-gradient(135deg,#0b3f39 0%,#126b58 58%,#1b8d70 100%); border:0; border-radius:20px; padding:28px; margin-bottom:24px; box-shadow:0 20px 45px rgba(11,63,57,.22); }
.shared-calculation-header::after { content:""; position:absolute; width:260px; height:260px; right:-90px; top:-130px; border-radius:50%; background:rgba(255,255,255,.08); }
.shared-hero-top { position:relative; z-index:1; display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
.shared-eyebrow { display:flex; align-items:center; gap:8px; color:#c9f4e6; font-size:.76rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.shared-status-dot { width:8px; height:8px; border-radius:50%; background:#67f2bf; box-shadow:0 0 0 5px rgba(103,242,191,.14); }
.shared-title { max-width:700px; margin:10px 0 0; font-size:clamp(1.6rem,3.4vw,2.6rem); font-weight:850; line-height:1.08; letter-spacing:-.035em; }
.shared-signature { min-width:190px; padding:12px 14px; border:1px solid rgba(255,255,255,.2); border-radius:12px; background:rgba(255,255,255,.1); backdrop-filter:blur(8px); }
.shared-professional { font-size:1rem; font-weight:800; color:#fff; }
.shared-professional-role { color:#c9f4e6; font-size:.86rem; margin-top:2px; }
.shared-period { position:relative; z-index:1; display:grid; grid-template-columns:auto minmax(70px,1fr) auto; align-items:center; gap:18px; margin-top:30px; padding:18px 0; border-top:1px solid rgba(255,255,255,.16); border-bottom:1px solid rgba(255,255,255,.16); }
.shared-date-block { display:flex; flex-direction:column; gap:2px; }
.shared-date-block span,.shared-fact span { color:#bde8dc; font-size:.75rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.shared-date-block strong { font-size:1.25rem; font-weight:800; }
.shared-period-line { height:1px; background:rgba(255,255,255,.3); position:relative; }
.shared-period-line::before,.shared-period-line::after { content:""; position:absolute; top:50%; width:9px; height:9px; border:2px solid #75e7c3; border-radius:50%; background:#126b58; transform:translateY(-50%); }
.shared-period-line::before { left:0; }.shared-period-line::after { right:0; }
.shared-facts { position:relative; z-index:1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:16px; }
.shared-fact { padding:14px 16px; border-radius:12px; background:rgba(255,255,255,.09); }
.shared-fact-primary { background:#fff; }
.shared-fact strong { display:block; margin-top:4px; font-size:1.1rem; }
.shared-fact-primary span { color:#568077; }.shared-fact-primary strong { color:#0b3f39; font-size:1.35rem; }
.summary-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:12px; }
.summary-item { background:#fff; border:1px solid #d8dee8; border-radius:8px; padding:12px 14px; }
.summary-label { color:#667085; font-size:.86rem; margin-bottom:3px; display:flex; align-items:center; justify-content:space-between; gap:8px; }
.summary-value { font-size:1.08rem; font-weight:700; }
.history-table-wrap { max-height:380px; overflow:auto; }
.detail-toggle { color:var(--rv-blue,#245b87); font-weight:800; text-decoration:none; }
.detail-toggle::after { content:" +"; font-weight:900; }
.detail-toggle[aria-expanded="true"]::after { content:""; }
.detail-row > td { background:#eef5f2 !important; padding:0 !important; }
.detail-panel { padding:16px; border-top:1px solid #cfe0d9; border-bottom:1px solid #cfe0d9; background:#f5faf8; }
.detail-title { margin-bottom:10px; color:#173c35; font-weight:800; }
.detail-table-wrap { overflow:auto; border:1px solid #d8e6e0; border-radius:8px; background:#fff; }
.detail-table { min-width:1060px; font-size:.82rem; }
.detail-table thead th { background:#e8f2ee !important; color:#173c35 !important; border-color:#d3e2dc !important; position:static !important; }
.detail-table td { background:#fff !important; }
body.no-ads .adsbygoogle,
body.no-ads .adsense,
body.no-ads .adsense-laterale,
body.no-ads .pubblicita,
body.no-ads [id^="google_ads"],
body.no-ads [id*="google_ads"],
body.no-ads [id*="div-gpt-ad"],
body.no-ads iframe[src*="googlesyndication"],
body.no-ads iframe[src*="doubleclick"],
body.no-ads iframe[src*="juiceadv"],
body.no-ads script[src*="googlesyndication"],
body.no-ads script[src*="pagead2"],
body.no-ads script[src*="doubleclick"],
body.no-ads script[src*="juiceadv"] { display:none !important; visibility:hidden !important; }
body.shared-table-view .panel,
body.shared-table-view main > header,
body.shared-table-view main > .row.g-3.mb-4 { display:none !important; }
body.shared-table-view .result-panel { margin-top:0; }
body.shared-table-view { background:linear-gradient(180deg,#e9f5f1 0,#f5f7fa 420px); }
body.shared-table-view .page-wrap { max-width:1240px; padding-top:24px; }
body.shared-table-view .result-panel { border:0; border-radius:22px; background:#fff; box-shadow:0 24px 60px rgba(15,23,42,.12); }
body.shared-table-view .export-row { padding:4px 2px 10px; }
body.shared-table-view .export-row h2 { color:#163c35; font-weight:800; font-size:1.18rem; }
body.shared-table-view .table-wrap { border-color:#dce9e4 !important; border-radius:14px !important; }
body.shared-table-view #tabellaExport thead th { position:sticky; top:0; z-index:2; background:#153f38; color:#fff; border-color:#2b5c53; white-space:nowrap; }
body.shared-table-view #tabellaExport tbody tr:nth-child(even) td { background:#f4faf7; }
body.shared-table-view #tabellaExport td { border-color:#e2ece8; }
body.shared-table-view #risultato .border-top { display:block !important; }
body.shared-table-view .export-row .d-flex,
body.shared-table-view #intestazionePratica { display:none !important; }
@media (max-width:700px) {
  .shared-calculation-header { padding:22px 18px; border-radius:16px; }
  .shared-hero-top { display:block; }
  .shared-signature { margin-top:18px; min-width:0; }
  .shared-period { grid-template-columns:1fr; gap:10px; }
  .shared-period-line { display:none; }
  .shared-date-block.text-end { text-align:left !important; }
  .shared-facts { grid-template-columns:1fr; }
}
@media print {
  .panel, .export-row { display:none !important; }
  body { background:#fff; }
  .page-wrap { max-width:none; padding:0; }
  .result-panel { box-shadow:none; border:0; background:#fff; }
  .table-wrap { max-height:none; overflow:visible; }
}

/* Professional calculator theme */
:root {
  --rv-navy:#12263a;
  --rv-blue:#245b87;
  --rv-green:#17755b;
  --rv-ink:#172333;
  --rv-muted:#627083;
  --rv-line:#d9e1e8;
  --rv-soft:#f4f7f9;
  --rv-white:#fff;
}

body:not(.shared-table-view) {
  background:
    radial-gradient(circle at 10% 0%, rgba(36,91,135,.08), transparent 28rem),
    linear-gradient(180deg,#f2f6f8 0,#f8fafb 35rem);
  color:var(--rv-ink);
  font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;
}

body:not(.shared-table-view) .page-wrap { max-width:1180px; padding:42px 20px 64px; }
body:not(.shared-table-view) main > header { position:relative; padding:0 0 24px 20px; margin-bottom:24px !important; border-left:4px solid var(--rv-green); }
body:not(.shared-table-view) main > header::before { content:"STRUMENTI DI CALCOLO"; display:block; margin-bottom:8px; color:var(--rv-green); font-size:.72rem; font-weight:800; letter-spacing:.14em; }
body:not(.shared-table-view) main > header h1 { margin:0 0 8px !important; color:var(--rv-navy); font-size:clamp(1.75rem,3vw,2.55rem); font-weight:800; letter-spacing:-.035em; }
body:not(.shared-table-view) main > header .muted-text { max-width:760px; color:var(--rv-muted); font-size:1rem; line-height:1.55; }

body:not(.shared-table-view) .stat-card { position:relative; overflow:hidden; padding:22px 24px; border:1px solid rgba(18,38,58,.1); border-radius:14px; box-shadow:0 10px 30px rgba(18,38,58,.07); }
body:not(.shared-table-view) .stat-card::after { content:""; position:absolute; right:-42px; top:-52px; width:130px; height:130px; border-radius:50%; background:rgba(36,91,135,.05); }
body:not(.shared-table-view) .stat-icon { position:relative; z-index:1; width:52px; height:52px; flex:0 0 52px; border-radius:12px; background:#e9f0f6; color:var(--rv-blue); font-size:0; }
body:not(.shared-table-view) .stat-icon::before { content:"FOI"; font-size:.82rem; font-weight:900; letter-spacing:.05em; }
body:not(.shared-table-view) .stat-icon.success { background:#e5f3ee; color:var(--rv-green); }
body:not(.shared-table-view) .stat-icon.success::before { content:"%"; font-size:1.35rem; }
body:not(.shared-table-view) .stat-icon.inflation { background:#fff2df; color:#a66012; }
body:not(.shared-table-view) .stat-icon.inflation::before { content:"NIC"; font-size:.82rem; font-weight:900; letter-spacing:.05em; }
body:not(.shared-table-view) .stat-kicker { color:var(--rv-muted); font-size:.7rem; font-weight:800; letter-spacing:.1em; }
body:not(.shared-table-view) .stat-main { color:var(--rv-blue); font-size:1.85rem; letter-spacing:-.03em; }
body:not(.shared-table-view) .stat-main.success { color:var(--rv-green); }
body:not(.shared-table-view) .stat-main.inflation { color:#a66012; }
body:not(.shared-table-view) .inflation-value { color:#a66012; font-weight:700; }
body:not(.shared-table-view) .stat-card .border-top { border-color:var(--rv-line) !important; line-height:1.8; }
body:not(.shared-table-view) .stat-card a { color:var(--rv-blue); font-weight:700; }

body:not(.shared-table-view) .panel,
body:not(.shared-table-view) .result-panel { border:1px solid rgba(18,38,58,.11); border-radius:16px; box-shadow:0 16px 42px rgba(18,38,58,.08); }
body:not(.shared-table-view) .panel { padding:28px !important; }
body:not(.shared-table-view) .context-box { padding:22px; border:1px solid var(--rv-line); border-radius:12px; background:var(--rv-white); }
body:not(.shared-table-view) .context-title { display:flex; align-items:center; gap:10px; margin-bottom:20px; color:var(--rv-navy); font-size:1.02rem; }
body:not(.shared-table-view) .context-title::before { content:""; width:4px; height:20px; border-radius:4px; background:var(--rv-green); }
body:not(.shared-table-view) .form-label { color:#34465a; font-size:.84rem; font-weight:700; }
body:not(.shared-table-view) .form-control,
body:not(.shared-table-view) .form-select,
body:not(.shared-table-view) .input-group-text { min-height:46px; border-color:#cbd5df; }
body:not(.shared-table-view) .form-control,
body:not(.shared-table-view) .form-select { border-radius:9px; background-color:#fbfcfd; color:var(--rv-ink); }
body:not(.shared-table-view) .input-group .form-control { border-radius:0 9px 9px 0; }
body:not(.shared-table-view) .input-group-text { border-radius:9px 0 0 9px; background:#edf2f5; color:var(--rv-navy); font-weight:800; }
body:not(.shared-table-view) .form-control:focus,
body:not(.shared-table-view) .form-select:focus { border-color:var(--rv-blue); box-shadow:0 0 0 3px rgba(36,91,135,.12); background:#fff; }
body:not(.shared-table-view) .form-check { min-height:48px; display:flex; align-items:center; padding:10px 14px 10px 3rem; border:1px solid var(--rv-line); border-radius:10px; background:var(--rv-soft); }
body:not(.shared-table-view) .form-check-input { margin-top:0; }
body:not(.shared-table-view) .form-check-input:checked { background-color:var(--rv-green); border-color:var(--rv-green); }
body:not(.shared-table-view) .form-check-label { color:#33485b; font-size:.88rem; font-weight:650; }
body:not(.shared-table-view) .help-btn { flex:0 0 auto; width:23px; height:23px; background:#e7eef4; color:var(--rv-blue); font-size:.75rem; }
body:not(.shared-table-view) .quick-help-strip { border-color:rgba(18,38,58,.11); border-left-color:var(--rv-green); border-radius:14px; box-shadow:0 12px 30px rgba(18,38,58,.07); }
body:not(.shared-table-view) .quick-help-title { color:var(--rv-navy); }
body:not(.shared-table-view) .quick-help-strip p { color:var(--rv-muted); }
body:not(.shared-table-view) .quick-help-action { border-color:var(--rv-blue); color:var(--rv-blue); border-radius:9px; }
body:not(.shared-table-view) .quick-help-action:hover { background:var(--rv-blue); color:#fff; }

body:not(.shared-table-view) .action-row { align-items:center; margin-top:2px; padding-top:22px; border-color:var(--rv-line); }
body:not(.shared-table-view) .action-row .btn { min-height:44px; padding:.62rem 1.15rem; border-radius:9px; font-weight:750; }
body:not(.shared-table-view) .action-row .btn-primary { min-width:150px; border-color:var(--rv-green); background:var(--rv-green); box-shadow:0 8px 18px rgba(23,117,91,.18); }
body:not(.shared-table-view) .action-row .btn-primary:hover { border-color:#105c47; background:#105c47; }
body:not(.shared-table-view) .btn-outline-secondary { border-color:#b9c5d0; color:#405266; background:#fff; }

body:not(.shared-table-view) .result-panel { padding:26px !important; background:#fff; }
body:not(.shared-table-view) .export-row { margin-bottom:18px; padding-bottom:15px; border-bottom:1px solid var(--rv-line); }
body:not(.shared-table-view) .export-row h2,
body:not(.shared-table-view) #risultato > .border-top h2 { color:var(--rv-navy); font-weight:800; }
body:not(.shared-table-view) .export-row .btn { border-radius:8px; font-weight:700; }
body:not(.shared-table-view) .table-wrap { max-height:520px; border-color:var(--rv-line) !important; border-radius:12px !important; }
body:not(.shared-table-view) #tabellaExport { font-size:.84rem; }
body:not(.shared-table-view) #tabellaExport thead th { position:sticky; top:0; z-index:2; padding:.72rem .55rem; border-color:#34546f; background:var(--rv-navy); color:#fff; font-size:.75rem; font-weight:750; white-space:nowrap; }
body:not(.shared-table-view) #tabellaExport tbody td { padding:.65rem .55rem; border-color:#e3e9ee; vertical-align:middle; }
body:not(.shared-table-view) #tabellaExport tbody tr:nth-child(even) td { background:#f6f8fa; }
body:not(.shared-table-view) #tabellaExport tbody tr:hover td { background:#edf5f2; }
body:not(.shared-table-view) .summary-grid { gap:10px; }
body:not(.shared-table-view) .summary-item { padding:14px 16px; border-color:var(--rv-line); border-radius:10px; background:#f8fafb; }
body:not(.shared-table-view) .summary-label { color:var(--rv-muted); font-size:.78rem; font-weight:650; }
body:not(.shared-table-view) .summary-value { color:var(--rv-navy); font-size:1rem; }
body:not(.shared-table-view) .related-topics { margin-top:28px; padding:26px; border:1px solid rgba(18,38,58,.11); border-radius:16px; background:linear-gradient(180deg,#fff 0,#f7faf9 100%); box-shadow:0 16px 42px rgba(18,38,58,.07); }
body:not(.shared-table-view) .related-topics-head { max-width:760px; margin-bottom:18px; }
body:not(.shared-table-view) .related-topics-kicker { display:block; margin-bottom:7px; color:var(--rv-green); font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
body:not(.shared-table-view) .related-topics h2 { margin:0; color:var(--rv-navy); font-size:1.28rem; font-weight:800; letter-spacing:-.015em; }
body:not(.shared-table-view) .related-topics-head p { margin:8px 0 0; color:var(--rv-muted); line-height:1.55; }
body:not(.shared-table-view) .related-topics-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; padding:0; list-style:none; }
body:not(.shared-table-view) .related-topics-list li { position:relative; padding:16px 16px 16px 18px; border:1px solid var(--rv-line); border-radius:12px; background:#fff; }
body:not(.shared-table-view) .related-topics-list li::before { content:""; position:absolute; left:0; top:16px; bottom:16px; width:4px; border-radius:0 4px 4px 0; background:var(--rv-green); }
body:not(.shared-table-view) .related-topics-list a { color:var(--rv-blue); font-weight:800; line-height:1.3; text-decoration:none; }
body:not(.shared-table-view) .related-topics-list a:hover { color:var(--rv-green); text-decoration:underline; text-underline-offset:3px; }
body:not(.shared-table-view) .related-topics-list p { margin:7px 0 0; color:#526273; font-size:.91rem; line-height:1.5; }

body:not(.shared-table-view) .modal-content { overflow:hidden; border:0; border-radius:15px; box-shadow:0 24px 70px rgba(18,38,58,.22); }
body:not(.shared-table-view) .modal-header { padding:18px 22px; border-color:var(--rv-line); background:#f6f8fa; }
body:not(.shared-table-view) .modal-title { color:var(--rv-navy); font-weight:800; }
body:not(.shared-table-view) .modal-body { padding:22px; }
body:not(.shared-table-view) .modal-footer { border-color:var(--rv-line); background:#fafbfc; }

@media (max-width:767.98px) {
  body:not(.shared-table-view) .page-wrap { padding:26px 12px 44px; }
  body:not(.shared-table-view) main > header { padding-left:14px; }
  body:not(.shared-table-view) main > header h1 { font-size:1.65rem; }
  body:not(.shared-table-view) .panel,
  body:not(.shared-table-view) .result-panel { padding:17px !important; border-radius:13px; }
  body:not(.shared-table-view) .context-box { padding:16px; }
  body:not(.shared-table-view) .quick-help-strip { display:block; padding:16px; }
  body:not(.shared-table-view) .quick-help-action { width:100%; margin-top:14px; }
  body:not(.shared-table-view) .beta-welcome-hero { padding:24px 20px; }
  body:not(.shared-table-view) .beta-welcome-flow { grid-template-columns:1fr; }
  body:not(.shared-table-view) .beta-flow-step { min-height:0; }
  body:not(.shared-table-view) .beta-welcome-body { padding:20px; }
  body:not(.shared-table-view) .beta-feature-grid { grid-template-columns:1fr; }
  body:not(.shared-table-view) .beta-welcome-actions .btn { width:100%; }
  body:not(.shared-table-view) .action-row .btn { flex:1 1 100%; }
  body:not(.shared-table-view) .export-row { align-items:flex-start; }
  body:not(.shared-table-view) .export-row > .d-flex { width:100%; }
  body:not(.shared-table-view) .export-row .btn { flex:1 1 auto; }
  body:not(.shared-table-view) .related-topics { padding:18px; border-radius:13px; }
  body:not(.shared-table-view) .related-topics-list { grid-template-columns:1fr; }
  body:not(.shared-table-view) .related-topics h2 { font-size:1.14rem; }
}

@media (prefers-reduced-motion: no-preference) {
  .beta-welcome-modal { animation:betaModalIn .28s ease-out both; }
  .beta-welcome-hero h2,
  .beta-welcome-hero p,
  .beta-welcome-flow,
  .beta-welcome-body { animation:betaFadeUp .45s ease-out both; }
  .beta-welcome-hero p { animation-delay:.08s; }
  .beta-welcome-flow { animation-delay:.16s; }
  .beta-welcome-body { animation-delay:.24s; }
}

@keyframes betaModalIn {
  from { opacity:0; transform:scale(.975); }
  to { opacity:1; transform:scale(1); }
}

@keyframes betaFadeUp {
  from { opacity:0; transform:translateY(12px); }
  to { opacity:1; transform:translateY(0); }
}
