:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#172d41;background:#f3f6fa}*{box-sizing:border-box}body{margin:0;font-size:15px;line-height:1.56}.container{max-width:1100px;padding:24px 18px 42px;margin:0 auto}.intro{padding:2px 2px 8px}.intro h1{font-size:clamp(1.55rem,3.5vw,2rem);margin:0 0 5px;letter-spacing:-.025em}.intro p{margin:0;color:#526579;max-width:780px}.panel{background:#fff;border:1px solid #dbe5f0;border-radius:12px;padding:23px 24px;margin:18px 0;box-shadow:0 2px 10px #17345408}.panel h2{font-size:1.2rem;margin:0 0 9px;color:#173d62}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.panel-heading h2{margin:0}.eyebrow{font-size:.7rem;font-weight:750;letter-spacing:.1em;color:#527a9b;margin:0 0 2px}.pill{font-size:.72rem;white-space:nowrap;color:#37648a;background:#edf4fb;border:1px solid #d6e7f7;padding:4px 9px;border-radius:24px}.pill-success{background:#eef8f4;border-color:#d0e8db;color:#176643}label{font-weight:650;font-size:.83rem;color:#284761;margin-bottom:4px;display:block}select,input{font:inherit;border:1px solid #b6c7d8;border-radius:7px;background:#fff;color:#172d41;padding:9px 10px;max-width:100%}select:focus-visible,input:focus-visible,button:focus-visible{outline:3px solid #8fc2f9;outline-offset:1px}.operation-bar{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:19px}.operation-field{min-width:250px;width:min(360px,100%)}.operation-field select{width:100%;font-weight:650}.op-hint{font-size:.86rem;color:#597084;margin:0 0 9px;flex:1;min-width:220px}.matrices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.matrices:has(#matrix-b-panel[hidden]){grid-template-columns:minmax(0,1fr)}.matrix-panel{min-width:0;margin:0;border:1px solid #dfe8f2;background:#fbfcfe;border-radius:9px;padding:14px 15px 18px}.matrix-panel[hidden],.additional[hidden],.field[hidden],[hidden]{display:none!important}.matrix-panel legend{font-weight:700;color:#234e79;padding:0 7px;font-size:.96rem}.dimension-controls{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:20px}.dimension-controls select{min-width:75px;padding:6px 8px}.dimension-label{margin-bottom:8px;color:#698098;font-size:.85rem;font-variant-numeric:tabular-nums}.matrix-input-scroller{overflow-x:auto;max-width:100%;padding:2px}.input-bracket,.output-bracket{display:inline-flex;align-items:stretch;max-width:100%;gap:8px}.input-bracket:before,.output-bracket:before,.input-bracket:after,.output-bracket:after{content:"";width:9px;flex-shrink:0;border-top:2px solid #294f71;border-bottom:2px solid #294f71}.input-bracket:before,.output-bracket:before{border-left:2px solid #294f71}.input-bracket:after,.output-bracket:after{border-right:2px solid #294f71}.matrix-input-grid{display:grid;gap:8px;align-items:center;justify-content:start}.matrix-input-grid input{width:clamp(48px,8vw,76px);min-width:0;padding:9px 4px;text-align:center;font-size:1rem;font-variant-numeric:tabular-nums;background:#fff}.matrix-input-grid input:focus{background:#fff}.additional{margin:15px 0 5px;padding:13px 15px;display:flex;gap:15px;background:#f6f9fd;border-radius:9px}.additional input{max-width:125px}.hint{color:#607487;font-size:.85rem;line-height:1.55;margin:11px 0}code{font-size:.92em;background:#eef3f8;padding:2px 5px;border-radius:3px}.actions{display:flex;gap:9px;margin:16px 0 0}button{font:inherit;cursor:pointer;border:0;border-radius:7px;padding:10px 17px;font-weight:700}button.primary{color:#fff;background:#1766a7}button.primary:hover{background:#0c508e}button.secondary{background:#e8eff6;color:#244a6b}button.secondary:hover{background:#dae7f3}.examples{display:flex;gap:6px 13px;align-items:center;flex-wrap:wrap;margin-top:20px;padding-top:12px;border-top:1px solid #edf1f5;font-size:.83rem}.examples span{color:#607487}.examples button{padding:2px 0;background:none;color:#16639f;font-weight:550;text-decoration:underline;text-underline-offset:3px}.examples button:hover{color:#073d70}.results .panel{margin-top:16px}.result-output{overflow-x:auto;background:#f4f8fd;border-radius:9px;border:1px solid #e1eaf4;padding:18px 14px;min-height:75px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.result-output .equation-label{font-weight:700;font-size:1.18rem;color:#244b6b;white-space:nowrap}.result-output .scalar-value{font-weight:750;font-size:1.55rem;color:#136092}.result-output .equals{color:#67869f;font-weight:700;font-size:1.2rem}.result-note{color:#445d72;margin:13px 0 0}.steps{display:grid;gap:10px}.step{background:#fbfcfe;border:1px solid #e2eaf2;border-radius:8px;padding:13px 15px}.step-heading{font-weight:670;color:#344d66;line-height:1.55}.step-number{color:#fff;background:#276ca4;border-radius:5px;font-size:.72rem;font-weight:750;padding:3px 6px;margin-right:7px;display:inline-block;vertical-align:baseline;min-width:25px;text-align:center}.step-matrix{padding:12px 4px 2px;overflow-x:auto}.output-grid{border-collapse:separate;border-spacing:10px 6px;margin:0}.output-grid td{text-align:center;white-space:nowrap;padding:2px 3px;font-size:1.05rem;font-variant-numeric:tabular-nums}.output-grid td.partition{border-left:2px solid #a7bacb;padding-left:12px}.fraction{display:inline-flex;flex-direction:column;vertical-align:middle;align-items:center;font-size:.93em;line-height:1.15}.fraction .top{border-bottom:1px solid currentColor;padding:0 3px 2px}.fraction .bottom{padding:2px 3px 0}.warning{background:#fff9ef;border:1px solid #efdcb2;border-radius:9px;padding:13px 16px;color:#664a18;font-size:.9rem}.about p{margin:10px 0;color:#435a70}.container footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;padding:18px 2px 0;color:#607587;font-size:.85rem}.container footer a{color:#1766a7}#message{margin:15px 0;background:#fff2f0;color:#923225;border:1px solid #e9b4ae;border-radius:9px;padding:12px 17px;font-weight:600}.short-note{font-size:.85rem;color:#657d93;margin:8px 0 0}@media(max-width:700px){.matrices{grid-template-columns:minmax(0,1fr)}.panel{padding:18px 15px}.container{padding:18px 12px 34px}.op-hint{min-width:0}.dimension-controls{gap:9px}.matrix-input-grid input{width:clamp(47px,14vw,66px)}.pill{font-size:.69rem}.result-output{padding:14px 10px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s ease}}

/* Guida contestuale e passaggi di Gauss. */
.matrix-workspace{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(205px,.8fr);gap:22px;align-items:start}
.matrix-edit{min-width:0}
.matrix-guide{background:#f0f6fc;border:1px solid #dce8f5;border-radius:9px;padding:14px 16px;color:#34556f;min-width:0}
.matrix-guide h3{font-size:.88rem;color:#173d62;margin:0 0 8px}
.matrix-guide p{font-size:.86rem;line-height:1.55;margin:0 0 10px}
.guide-formulas{display:flex;flex-direction:column;gap:8px}
.guide-formulas .math-formula{padding:6px 0;display:block;overflow-x:auto;font-size:1.05rem}
.math-working{margin:9px 0 4px;display:grid;gap:8px}
.math-work-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:7px 15px;padding:6px 10px;border-left:3px solid #d3e5f4;background:#f3f8fd;border-radius:0 5px 5px 0;min-width:0}
.work-label{font-weight:670;color:#325d7e;font-size:.8rem;min-width:145px}
.math-formula{font-size:1.02rem;min-width:0;overflow-x:auto;max-width:100%;display:inline-block;vertical-align:middle}
.step-reason{font-size:.87rem;color:#4d667b;margin:7px 0 3px}
.step-matrix{max-width:100%}
.pill-error{background:#fff1ef;border-color:#efc7c2;color:#9a382c}
.result-output strong{color:#83382e}
.matrix-input-scroller{scrollbar-color:#aec4d6 transparent;scrollbar-width:thin}
.output-grid{border-spacing:9px 7px}
@media(max-width:850px){.matrix-workspace{grid-template-columns:minmax(0,1fr)}.matrix-guide{max-width:none}.matrix-input-grid input{width:clamp(52px,8vw,70px)}}
@media(max-width:700px){.matrix-workspace{gap:10px}.matrix-guide{padding:11px 12px}.work-label{min-width:120px}.matrix-input-grid input{width:clamp(48px,13vw,65px)}.math-work-row{gap:4px 10px}}

.remaining-steps{border:1px solid #c9dce9;border-radius:8px;padding:10px 12px;background:#f7fafd}
.remaining-steps summary{cursor:pointer;font-weight:680;color:#225b87;padding:4px 0}
.remaining-steps summary:focus-visible{outline:2px solid #8fc2f9;outline-offset:4px}
.extra-steps{margin-top:12px}

/* v1.02 — formule e matrici sempre visibili con HTML nativo: nessun CDN. */
.guide-formulas .math-equation{display:block;margin:0 0 6px;font-family:"Cambria Math","STIX Two Math","Times New Roman",serif;font-size:1.06rem}
.guide-formulas{margin-top:6px;min-width:0}
.math-equation,.math-formula{font-family:"Cambria Math","STIX Two Math","Times New Roman",serif;font-size:1.13rem;line-height:1.5;display:inline-flex;align-items:center;gap:3px;flex-wrap:wrap;min-width:0;max-width:100%;overflow-wrap:anywhere;color:#244b6b}
.math-equation sub,.math-equation sup{font-size:.72em;line-height:0}
.ratio{display:inline-flex;flex-direction:column;align-items:center;vertical-align:middle;line-height:1.12;min-width:24px;font-family:"Cambria Math","Times New Roman",serif;margin:0 3px}
.ratio>span:first-child{border-bottom:1.5px solid currentColor;width:100%;text-align:center;padding:0 5px 3px}
.ratio>span:last-child{text-align:center;padding:3px 5px 0}
.math-work-row{align-items:center;overflow-wrap:anywhere}
.step-matrix>.output-bracket{vertical-align:middle}
.matrix-guide{align-self:start}
.result-output .scalar-value{display:inline-flex;align-items:center;min-height:36px}
@media(max-width:700px){.math-work-row{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.ratio{margin:0 4px}}

/* v1.03 — controllo per matrici quadrate, metodi e didattica visuale. */
.square-toggle{display:inline-flex;align-items:center;gap:7px;margin:0 0 5px 7px;padding:7px 11px;border:1px solid #c9daea;border-radius:7px;background:#edf5fc;white-space:nowrap;color:#204f77;font-size:.84rem;font-weight:650;cursor:pointer}
.square-toggle input{appearance:auto;width:16px;height:16px;accent-color:#1766a7;cursor:pointer;margin:0;flex-shrink:0}
.square-toggle:has(input:focus-visible){outline:2px solid #8fc2f9;outline-offset:1px}
.method-panel{align-items:center;flex-wrap:wrap;gap:12px 22px;background:#f4f8fc;border:1px solid #e0ebf5}
.method-panel select{min-width:min(315px,100%)}
.method-help{margin:0;max-width:470px;color:#526e85;font-size:.86rem}
.dimension-feedback{padding:9px 12px;background:#edf8f2;border:1px solid #c9e7d4;border-radius:7px;color:#226447;margin:11px 0 5px;font-size:.86rem}
.dimension-feedback.invalid{background:#fff6e8;border-color:#f0d9b4;color:#7c4b13}
.output-grid td.pivot-cell{background:#deebfb;border-radius:5px;box-shadow:0 0 0 1px #92b6df inset}
.output-grid td.target-cell{background:#e7f7ed;border-radius:5px;box-shadow:0 0 0 1px #b0dec5 inset}
.step-heading sub{font-size:.75em;vertical-align:sub}
.math-equation sub{font-size:.72em;vertical-align:sub;position:static}
@media(max-width:700px){.square-toggle{margin-left:0}.method-panel select{min-width:0;width:100%}.method-panel .field{width:100%}}


/* v1.04 — non usare flex per singole espressioni tipografiche:
   <sub>/<sup> devono condividere la linea di base con la lettera. */
.math-equation,.math-formula{
  display:inline-block;
  vertical-align:baseline;
  white-space:nowrap;
  overflow-wrap:normal;
  max-width:none;
}
.math-equation sub,.math-equation sup,
.math-formula sub,.math-formula sup{
  display:inline;
  position:static;
  font-size:.72em;
  line-height:0;
}
.math-equation sub,.math-formula sub{vertical-align:sub}
.math-equation sup,.math-formula sup{vertical-align:super}
.math-work-row{overflow-x:auto;max-width:100%;align-items:baseline}
.guide-formulas .math-equation{overflow-x:auto;max-width:100%}
.math-work-row .math-equation,.math-work-row .math-formula{flex-shrink:0}
.legend-text{font-size:.85rem;color:#526c81;margin:3px 0 10px}
.legend-swatch{display:inline-block;width:11px;height:11px;border-radius:3px;margin:0 4px 0 10px;vertical-align:middle;box-shadow:0 0 0 1px #afc6da inset}
.legend-swatch:first-child{margin-left:0}
.legend-swatch.pivot{background:#deebfb}
.legend-swatch.target{background:#e7f7ed}

/* v1.1 — unica pagina, sezioni indipendenti Matrici / Sistemi lineari */
.module-tabs{display:flex;gap:8px;margin:14px 0 7px;flex-wrap:wrap;border-bottom:1px solid #d8e4ee;padding-bottom:10px}
.module-tab{background:#e7eef6;border:1px solid #d2e1ee;color:#25547b;padding:10px 19px;border-radius:8px;font-size:.94rem}
.module-tab.is-active{background:#1766a7;color:#fff;border-color:#1766a7}
.module-tab:hover:not(.is-active){background:#dceaf7}
.systems-controls{display:flex;align-items:end;flex-wrap:wrap;gap:12px 18px;margin-bottom:10px}
.systems-controls .field select{min-width:95px}
.systems-method select{min-width:min(280px,100%)!important}
.systems-matrix{padding-top:15px}
.systems-grid-scroller{max-width:100%;overflow-x:auto;padding:6px 3px 10px}
.systems-grid{display:grid;gap:6px;min-width:max-content;align-items:center;justify-items:center;width:max-content}
.systems-grid .systems-grid-header{font-size:.83rem;font-weight:700;color:#376181;white-space:nowrap;padding:2px 3px}
.systems-grid .systems-grid-header.rhs-header{color:#88541d}
.systems-grid .systems-row-label{font-weight:650;font-size:.8rem;color:#617d94;padding-right:7px}
.systems-grid input{width:clamp(49px,7vw,72px);font-size:.99rem;text-align:center;padding:9px 4px}
.systems-grid input.systems-rhs{background:#fffbf2;border-color:#e7c99a}
.systems-grid .systems-bar{align-self:stretch;width:2px;background:#91a9bf;margin:0 4px}
.equations-preview{background:#f4f8fc;border-radius:9px;border:1px solid #deebf5;padding:12px 16px;margin-top:13px}
.equations-preview h3{font-size:.9rem;margin:0 0 9px;color:#2f5677}
.system-equation-line{font-family:"Cambria Math","Times New Roman",serif;font-size:1.08rem;padding:3px 0;white-space:nowrap;overflow-x:auto}
.system-equation-line sub,.solution-line sub,.sys-step-formula sub{font-size:.73em;vertical-align:sub;line-height:0}
.systems-solution{margin:12px 0 0;padding:15px 16px;border-radius:9px;background:#f4f8fd;border:1px solid #dfeaf4;min-height:60px}
.systems-solution .solution-line{font-family:"Cambria Math","Times New Roman",serif;font-size:1.25rem;line-height:1.9;white-space:nowrap;overflow-x:auto}
.systems-solution .sol-interpretation{font-size:.88rem;color:#3d627c;margin:8px 0 0}
.systems-solution .no-solutions{color:#8b3730;font-weight:650}
.ranks-box{display:flex;flex-wrap:wrap;gap:9px 16px;padding:9px 12px;background:#f1f6fc;border:1px solid #e1ebf5;border-radius:8px;font-size:.89rem}
.ranks-box span strong{color:#1b587e}
.sys-step-formula{font-family:"Cambria Math","Times New Roman",serif;font-size:1.1rem;display:inline-block;white-space:nowrap;max-width:none}
.sys-step-detail{padding:7px 10px;margin-top:7px;border-left:3px solid #d3e5f4;background:#f3f8fd;border-radius:0 6px 6px 0;overflow-x:auto}
.sys-step-detail .work-label{display:inline-block;min-width:110px}
.systems-method-note{font-size:.86rem;color:#925b26;padding:9px 11px;background:#fff8e8;border:1px solid #eed7aa;border-radius:7px;margin-top:10px}
.systems-matrix .input-bracket:before,.systems-matrix .input-bracket:after{height:auto}
@media(max-width:600px){.systems-controls{gap:10px}.systems-controls .field{flex:1 1 42%;min-width:0}.systems-method{flex-basis:100%!important}.systems-method select{width:100%}.systems-grid input{width:52px}.system-equation-line{font-size:1.03rem}.sys-step-detail .work-label{display:block}}

/* v1.11: i metodi mantengono distinte le rispettive spiegazioni. */
.systems-method-guide{background:#f0f6fd;border:1px solid #dbe9f6;border-left:3px solid #3579af;border-radius:6px;padding:9px 11px;margin:4px 0 12px;color:#365b79;font-size:.88rem}
.det-work{margin:9px 0 4px;border:1px solid #d7e6f2;border-radius:7px;background:#f7fbff;padding:9px 12px;color:#344f66}
.det-work summary{cursor:pointer;font-weight:700;color:#1e5e91}
.det-work ol{padding-left:24px;margin:12px 0 4px}
.det-work li{padding:4px 0}
.det-gauss-formula{font-family:"Cambria Math","Times New Roman",serif;color:#174f7c}

/* v1.12 — due ranghi visibili e didattica di Rouché-Capelli. */
.rank-explanation{font-size:.91rem;line-height:1.6;color:#365a75;margin:9px 2px 8px}
.output-grid td.rank-pivot-cell{background:#d9ebfb;box-shadow:inset 0 0 0 1px #87b6dc;border-radius:4px;font-weight:700}
.output-grid td.rank-rhs-pivot{background:#fff0ce;box-shadow:inset 0 0 0 1px #dbac56;border-radius:4px;font-weight:700}
.output-grid td.rank-zero-cell{color:#71889d;background:#f2f5f8}
.classification-only{font-size:1rem;color:#214e70;line-height:1.6}
.classification-only>strong{font-size:1.07rem}
.classification-only p{margin:7px 0 0}

/* Versione 1.2 — sistemi parametrici, stesso layout delle sezioni esistenti. */
.param-intro{color:#385975;line-height:1.65;margin:4px 0 15px}
.param-limits,.param-note{background:#eef6fd;border-left:3px solid #2472aa;border-radius:4px;padding:11px 13px;color:#2c526e;font-size:.88rem;line-height:1.6;margin:12px 0}
.param-case-grid{display:grid;gap:11px;margin-top:15px}
.param-case{background:#f4f8fc;border:1px solid #dbe7f2;border-radius:8px;padding:15px 17px;line-height:1.65;overflow-x:auto}
.param-case-generic{border-left:4px solid #196eae}
.param-case h3{margin:0 0 10px;font-size:1rem;color:#193e60;font-weight:750}
.param-case p{margin:9px 0 0}
.param-ranks{display:flex;gap:10px 16px;flex-wrap:wrap;font-size:.91rem;background:#eaf2fb;border-radius:5px;padding:9px 11px;color:#234e72}
.param-approximations{font-size:.84rem;color:#506d83}
.param-formula{background:#eef5fd;border-left:3px solid #c2dced;padding:11px 12px;overflow-x:auto;white-space:nowrap;line-height:1.7;font-family:"Cambria Math","STIX Two Math",Georgia,serif;font-size:1.05rem;margin:8px 0 5px}
.param-critical-list{margin:9px 0 2px;padding-left:28px;line-height:1.7}
.param-solution-list{display:grid;gap:9px;margin-top:9px}
.param-solution-line{display:flex;align-items:center;gap:5px;white-space:nowrap;overflow-x:auto;padding:7px 9px;background:#eef5fd;border-radius:6px;font-family:"Cambria Math",Georgia,serif;font-size:1.09rem}
.param-fraction{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;vertical-align:middle;line-height:1.3;margin:0 3px}
.param-fraction>span:first-child{border-bottom:1.2px solid currentColor;padding:0 8px 3px;text-align:center;min-width:25px}
.param-fraction>span:last-child{padding:3px 8px 0;text-align:center}
.param-error{color:#8e2a21;border:1px solid #eab6b0;background:#fff2f1;padding:15px 17px;border-radius:8px;margin:14px 0}
#param-steps .step{overflow-x:auto}
#param-steps .rank-explanation{line-height:1.65}
#param-steps .output-grid td{min-width:37px}
@media(max-width:650px){.param-ranks{display:grid;gap:5px}.param-case{padding:12px}.param-solution-line{font-size:.98rem}.param-intro{font-size:.91rem}}

/* 1.21 — procedimenti parametrici con prove dei ranghi leggibili anche su mobile. */
.param-guide,.param-conclusion{background:#f0f6fc;border:1px solid #dce7f2;border-radius:8px;padding:16px 18px;margin:0 0 15px;line-height:1.6;color:#2f536e}
.param-guide h3,.param-conclusion h3{font-size:1.02rem;color:#183e61;margin:0 0 10px}
.param-guide p,.param-conclusion p{margin:5px 0}
.param-conclusion{margin:15px 0 0}
.param-proof{background:#f8fbfe;border:1px solid #dceaf5;border-radius:7px;padding:12px 14px;margin:11px 0;line-height:1.6;color:#31546d}
.param-proof h4{font-size:.97rem;margin:0 0 7px;color:#1d507c}
.param-proof p{margin:6px 0 10px}
.param-proof .param-proof-final{border-top:1px solid #dbe7f1;padding-top:9px;margin-top:11px}
.param-minor-row{display:grid;grid-template-columns:minmax(140px,36%) minmax(0,1fr);gap:8px;padding:7px 0;border-bottom:1px solid #e1edf5;align-items:start}
.param-minor-name{font-weight:700;font-size:.88rem;color:#225d87}
.param-minor-math{font-family:"Cambria Math",Georgia,serif;font-size:1.02rem;overflow-wrap:anywhere}
.param-critical-formula{display:grid;gap:3px;white-space:normal}
.param-solution-line{display:block;white-space:normal;overflow-wrap:anywhere;line-height:1.8}
.param-solution-line span{display:inline}
.param-solution-line .param-fraction{display:inline-flex}
@media(max-width:650px){.param-minor-row{grid-template-columns:1fr;gap:2px}.param-guide,.param-conclusion{padding:12px 13px}.param-proof{padding:10px}}

/* v1.22 – dimostrazione delle contraddizioni e schede complete per Cramer. */
.param-original-equations,.param-direct-check,.param-cramer-intro{background:#f1f7fd;border:1px solid #dce9f5;border-radius:7px;padding:11px 13px;margin:10px 0;line-height:1.7}
.param-original-equations>strong{display:block;margin-bottom:7px;color:#244d70}
.param-equation{display:flex;align-items:baseline;gap:14px;font-family:"Cambria Math","Times New Roman",serif;font-size:1.09rem;margin:2px 0}
.param-equation>span:first-child{min-width:50px;color:#54748f;font-family:system-ui,sans-serif;font-size:.76rem;font-weight:700}
.param-equation>span:last-child{overflow-x:auto;max-width:100%}
.param-direct-check{background:#fff8ec;border-color:#eedcbd}
.param-direct-check p{margin:3px 0 8px}
.param-cramer-intro{border-left:3px solid #2677ac}
.param-cramer-case{padding:12px 14px;margin:12px 0;background:#f7fafc;border:1px solid #d8e6f3;border-radius:8px;overflow-x:auto}
.param-cramer-case h4{color:#1f577c;font-size:1rem;margin:0 0 8px}
.param-cramer-case p{line-height:1.65;margin:7px 0 10px}
.param-cramer-case>.output-bracket{margin:4px 0 8px}
.param-cramer-case .param-formula{white-space:normal;overflow-wrap:anywhere}
.param-cramer-case .param-solution-line{padding:10px 12px;background:#e9f3fc;line-height:2.1}
.param-cramer-case .det-work .param-formula{white-space:normal}
@media(max-width:600px){.param-cramer-case{padding:10px}.param-original-equations,.param-direct-check{padding:10px}.param-equation{font-size:1.03rem}}

/* 1.23 — evidenziazione delle radici esatte, minori e sistemi rettangolari. */
.param-root-proof,.param-root-substitution,.param-rectangle-guide{border:1px solid #d1e3f2;background:#f2f8fd;border-radius:8px;padding:12px 14px;margin:12px 0;line-height:1.7}
.param-root-proof{border-left:4px solid #256c9e}
.param-root-proof p,.param-root-substitution p,.param-rectangle-guide p{margin:6px 0}
.param-rectangle-guide h4{margin:0 0 8px;font-size:1rem;color:#245175}
.param-root-substitution>.output-bracket{margin:12px 0 4px}
.param-minor-substitution{background:#eaf3fc;padding:8px 10px;border-radius:5px;overflow-wrap:anywhere}
.param-rectangular-minors{background:#f4f9fe;border:1px solid #d3e5f2;border-radius:8px;padding:11px 14px;margin:11px 0}
.param-rectangular-minors summary{cursor:pointer;font-weight:700;color:#205d8c}
.param-rectangular-minors h5{font-size:.92rem;color:#245272;margin:14px 0 5px}
@media(max-width:600px){.param-root-proof,.param-root-substitution,.param-rectangle-guide{padding:10px}.param-root-substitution .output-grid td{min-width:44px}.param-rectangular-minors{padding:10px}}
/* v1.3 — vettori: griglie compatte, pedici autentici e grafico cartesiano 2D. */
.vector-operation-field select{min-width:min(330px,100%)}
.vector-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0}
.vector-inputs:has(#vector-w-panel[hidden]){grid-template-columns:repeat(2,minmax(0,1fr))}
.vector-inputs:has(#vector-v-panel[hidden]){grid-template-columns:minmax(0,1fr)}
.vector-input-panel{min-width:0;padding:13px 12px 16px}
.vector-input-grid{display:flex;flex-wrap:wrap;gap:8px;align-items:end}
.vector-field{max-width:70px;min-width:58px;flex:1 1 55px}
.vector-field label{font-size:.75rem;white-space:nowrap}
.vector-field input{padding:9px 4px;text-align:center;width:100%}
.vector-scalars{display:flex;align-items:flex-end;gap:15px;flex-wrap:wrap}
.vector-scalars .field input{max-width:120px}
.vector-output{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:18px;background:#f2f7fd;border:1px solid #dce8f5;border-radius:8px;min-height:69px}
.vector-result-equation{color:#174f7c;font-family:"Cambria Math",Georgia,serif;font-size:1.55rem;font-weight:650}
.vector-approx{font-size:1.1rem;color:#576d7f}
.vector-judgment{font-size:1.18rem;color:#20567f}
.vector-output p{margin:4px 0}
.vector-vector{display:inline-block;vertical-align:middle;white-space:nowrap;line-height:2;font-family:"Cambria Math",Georgia,serif}
.vector-separator{margin-right:.2em}
.vector-step-result{font-size:1.2rem;padding:8px 10px;background:#eff6fd;border-radius:5px;margin-top:8px;max-width:100%;overflow-x:auto}
.vector-formula{display:block;overflow-x:auto;white-space:nowrap;padding:10px 12px;margin-top:9px;background:#edf5fc;border-left:3px solid #bfd9ed;color:#1e517b;font-size:1.11rem;font-family:"Cambria Math",Georgia,serif;line-height:1.9}
.vector-formula sub{font-size:.72em;line-height:0;vertical-align:sub;position:static}
.vector-matrix-scroller{margin-top:10px;overflow-x:auto}
.output-grid td.vector-pivot{background:#deebfb;box-shadow:inset 0 0 0 1px #9cbedd;border-radius:4px}
#vector-graphic svg{display:block;max-width:520px;width:100%;height:auto;margin:10px auto}
#vector-graphic h3{font-size:1.04rem;margin:0 0 8px;color:#25516f}
@media(max-width:760px){.vector-inputs,.vector-inputs:has(#vector-w-panel[hidden]){grid-template-columns:minmax(0,1fr)}.vector-inputs .matrix-panel{width:100%}.vector-formula{font-size:1.04rem}.vector-output{padding:13px}}

/* v1.4 — Spazi vettoriali, interfaccia coerente con le altre sezioni. */
.spaces-operation-field select{min-width:min(340px,100%)}
.spaces-grid-scroller,.spaces-matrix-scroll{max-width:100%;overflow-x:auto;padding:4px 0 9px}
.spaces-input-grid{display:grid;width:max-content;gap:7px 8px;align-items:center;justify-items:center}
.spaces-input-grid input{width:65px;min-width:52px;text-align:center;padding:8px 4px;font-variant-numeric:tabular-nums}
.spaces-head,.spaces-row-label{font-size:.85rem;color:#2e6086;font-weight:700;text-align:center}
.spaces-row-label{font-size:.8rem;color:#647f94;padding-right:9px}
.spaces-target{margin-top:15px}
.spaces-target-grid{display:flex;flex-wrap:wrap;gap:9px}
.spaces-target-field{width:90px;min-width:0}
.spaces-target-field input{width:100%;text-align:center;margin-top:5px}
.spaces-result{background:#f3f8fe;border:1px solid #dce9f5;border-radius:8px;padding:16px 18px;line-height:1.75}
.spaces-result p{margin:5px 0 11px}
.spaces-result h3{font-size:1rem;color:#1c4d77;margin:15px 0 8px}
.spaces-key-result{font-size:1.2rem;color:#19577e}
.spaces-yes{color:#176346}.spaces-no{color:#95412a}
.spaces-vector-set{display:flex;flex-wrap:wrap;gap:10px 20px;font-family:"Cambria Math",Georgia,serif;font-size:1.13rem;line-height:2}
.spaces-vector-set>span{background:#fff;border:1px solid #d9e8f3;border-radius:6px;padding:7px 12px}
.spaces-operation{background:#eef6fd;border-left:3px solid #b9d9ee;padding:9px 12px;margin-top:8px;color:#21547a;font-family:"Cambria Math",Georgia,serif;font-size:1.1rem;line-height:2;overflow-x:auto}
.spaces-operation sub{vertical-align:sub;font-size:.72em;line-height:0}
.spaces-matrix-scroll{margin-top:9px}.spaces-matrix-scroll .output-grid td{min-width:24px}
.spaces-matrix-scroll .output-grid td.spaces-pivot{background:#dcecff;box-shadow:inset 0 0 0 1px #91b7db;border-radius:4px}
.spaces-work-vectors{margin-top:10px}
@media(max-width:680px){.spaces-operation-field{width:100%}.spaces-operation-field select{width:100%}.spaces-result{padding:12px}.spaces-vector-set>span{width:100%;font-size:1rem}.spaces-input-grid input{width:53px}}

.spaces-input-grid sub,.spaces-vector-set sub{vertical-align:sub;font-size:.72em;line-height:0}

/* v1.41 — Equazioni guidate per basi, nucleo e rango-nullità. */
.spaces-equations{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-top:9px;padding:10px 12px;background:#eef6fd;border-left:3px solid #b9d9ee;color:#21547a;font:1.07rem/1.9 "Cambria Math",Georgia,serif;overflow-x:auto;max-width:100%}
.spaces-equations>div{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.spaces-equations sub{vertical-align:sub;font-size:.72em;line-height:0}
@media(max-width:680px){.spaces-equations{font-size:1rem;padding:9px 10px}}

/* v1.5 Autovalori: HTML nativo con pedici autentici e formule scorrevoli. */
.eigen-input-scroller{max-width:100%;overflow-x:auto;padding:10px 4px}
.eigen-input-grid{display:grid;gap:8px;justify-content:start;align-items:center}
.eigen-input-grid input{width:66px;min-width:52px;padding:8px 4px;text-align:center;font-variant-numeric:tabular-nums}
.eigen-spectrum-list{display:grid;gap:8px;margin:12px 0}
.eigen-spectrum-list>div{padding:10px 12px;background:#fff;border:1px solid #d9e7f4;border-radius:6px;line-height:1.7}
.eigen-summary{margin:0 0 12px;font-size:1.12rem}
.eigen-warning{padding:12px;background:#fff8ed;border:1px solid #edd6a8;border-radius:7px;color:#79501c}
.eigen-math{font:1.08rem/1.75 "Cambria Math","STIX Two Math",Georgia,serif;color:#164873;white-space:nowrap;vertical-align:baseline}
.eigen-math sub,.eigen-math sup{font-size:.72em;line-height:0;position:static}
.eigen-math sub{vertical-align:sub}.eigen-math sup{vertical-align:super}
.eigen-basis{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}
.eigen-basis>span{padding:8px 12px;background:#edf5fc;border:1px solid #d5e6f5;border-radius:6px}
.eigen-vector{font:1.05rem/1.9 "Cambria Math",Georgia,serif}
.eigen-matrix-row{display:flex;gap:20px;flex-wrap:wrap;margin:10px 0}
.eigen-matrix-row>div{border:1px solid #d9e7f2;padding:12px;border-radius:8px;min-width:0}
.eigen-matrix-row strong{color:#214b6a}
.eigen-math .fraction{font-size:.88em}
@media(max-width:650px){.eigen-input-grid input{width:55px}.eigen-matrix-row{gap:9px}.eigen-matrix-row>div{width:100%}}

/* v1.51: passaggi guidati per autovalori, sistemi e autospazi. */
.eigen-explanation{margin-top:8px}
.eigen-equations{display:grid;gap:5px;margin:8px 0 12px}
.eigen-choice{margin:10px 0;padding:9px 12px;border-left:3px solid #2878b6;border-radius:5px;background:#f3f8fe}
.eigen-choice .spaces-operation{margin-top:8px}
.eigen-choice .step-reason{margin:5px 0}
.eigen-matrix-row>div{flex:0 1 auto;max-width:100%}
.eigen-math{white-space:normal;overflow-wrap:anywhere}

/* v1.6 – Trasformazioni lineari nel piano, SVG responsivo. */
.transform-preset-field select{min-width:min(320px,100%)}
.transform-layout{display:grid;grid-template-columns:minmax(250px,.76fr) minmax(320px,1.24fr);align-items:start;gap:18px;margin:14px 0}
.transform-controls{display:grid;gap:12px;min-width:0}
.transform-controls .matrix-panel{margin:0;padding:14px}
.transform-input-grid{display:grid;grid-template-columns:repeat(2,70px);gap:8px}
.transform-input-grid input{width:70px;min-width:0;text-align:center;padding:9px 3px}
.transform-vector-grid{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
.transform-vector-grid .field{flex:1 1 95px;min-width:0}
.transform-vector-grid input{width:100%;text-align:center;padding:9px 6px}
.transform-visual{border:1px solid #d9e7f3;border-radius:9px;background:#fff;min-width:0;padding:12px 14px}
.transform-visual h3{font-size:1.05rem;color:#1c4d77;margin:0 0 8px}
#transform-chart{width:100%;max-width:570px;margin:auto;aspect-ratio:1;touch-action:pan-y}
#transform-chart svg{width:100%;height:100%;display:block;overflow:hidden}
#transform-drag{cursor:grab;touch-action:none;outline:0}
#transform-drag:focus{stroke:#132b43;stroke-width:4}
#transform-drag:active{cursor:grabbing}
.transform-legend{display:flex;flex-wrap:wrap;gap:9px 16px;margin:8px 0;font-size:.82rem;color:#335b77}
.transform-legend span{display:inline-flex;align-items:center;gap:6px}
.transform-legend i{width:13px;height:13px;border-radius:3px;display:inline-block}
.transform-legend-blue{background:#2e78b7}.transform-legend-orange{background:#d96f32}.transform-legend-green{background:#21815c}
.transform-output{background:#f3f8fe;border:1px solid #dae9f6;border-radius:8px;padding:16px 18px}
.transform-output>p{margin:4px 0 12px}
.transform-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.transform-result-grid>div{background:#fff;border:1px solid #dae9f6;border-radius:7px;padding:10px 12px;min-width:0}
.transform-result-grid span{display:block;color:#536f87;font-size:.85rem;margin-bottom:5px}
.transform-result-grid strong{color:#174e7b;font:1.18rem/1.5 'Cambria Math',Georgia,serif;overflow-wrap:anywhere}
.transform-approx-note{background:#fff7e8;border:1px solid #eddab7;padding:9px;border-radius:6px;color:#765226}
@media(max-width:900px){.transform-layout{grid-template-columns:minmax(0,1fr)}.transform-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.transform-visual{padding:9px}.transform-result-grid{grid-template-columns:minmax(0,1fr)}.transform-input-grid input{width:63px}.transform-preset-field{width:100%}.transform-preset-field select{min-width:0;width:100%}}

/* v1.7 — metodi avanzati */
.advanced-grid-scroll,.advanced-matrix-scroll{max-width:100%;overflow-x:auto;padding:4px 0}
.advanced-grid{display:grid;gap:7px;align-items:center;width:max-content;max-width:none}
.advanced-grid input{width:60px;text-align:center}
.advanced-b-grid{display:flex;flex-wrap:wrap;gap:12px}
.advanced-b-field{display:flex;flex-direction:column;font-weight:600;font-size:12px;gap:5px}
.advanced-b-field input{width:76px;text-align:center}
.advanced-output{background:#f1f6fc;border:1px solid #dce8f6;border-radius:7px;padding:14px}
.advanced-output h3{font-size:15px;margin:16px 0 8px}
.advanced-factor-grid{display:flex;flex-wrap:wrap;gap:12px}
.advanced-quantity{background:#fff;border:1px solid #dfe9f4;border-radius:7px;padding:12px;margin:8px 0;min-width:0}
.advanced-quantity>span{font-size:12px;color:#405d78;font-weight:700}
.advanced-quantity>div{margin-top:7px;color:#123a61;overflow-x:auto}
.advanced-matrix-scroll{width:max-content;max-width:100%}
.advanced-matrix-scroll .output-grid{white-space:nowrap}
.advanced-matrix-scroll .output-grid td{min-width:27px;padding:8px 7px;text-align:center}
.advanced-keynote{font-size:13px;color:#405f7c}
.advanced-step-formula{background:#edf4fc;border-left:3px solid #b4d4f2;padding:9px 12px;margin:8px 0;color:#16446e;overflow-x:auto}
.advanced-vector{white-space:nowrap}
@media(max-width:540px){.advanced-factor-grid{display:block}.advanced-quantity{padding:8px}.advanced-b-grid{gap:6px}}


/* v1.71 — valori dei metodi avanzati senza falsi scrollbar verticali. */
.advanced-quantity>div{overflow:visible;min-width:0;line-height:1.9}
.advanced-quantity .advanced-matrix-scroll{overflow-x:auto;overflow-y:hidden;max-width:100%}
.advanced-vector{display:inline;white-space:normal;overflow-wrap:anywhere;line-height:1.9}
.advanced-vector-sep{white-space:normal}
.advanced-equality{display:inline;line-height:2;overflow-wrap:anywhere}
.advanced-equality>span[aria-label="uguale"]{display:inline-block;padding:0 8px;font-weight:700}
.advanced-ls-explain{font-size:.9rem;color:#335a76;margin:12px 0 15px;line-height:1.65}
/* v1.8 — SVD numerica e risultati di Moore-Penrose */
.advanced-verification{display:grid;gap:7px;font-size:.86rem}
.advanced-verification>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;border-bottom:1px solid #e5edf6;padding:5px 0}
.advanced-verification>div>span{color:#526d84;font-variant-numeric:tabular-nums}
#advanced-output .advanced-factor-grid>.advanced-quantity{flex:1 1 170px}
#advanced-steps .advanced-step-formula .advanced-factor-grid>.advanced-quantity{flex:1 1 140px}
#advanced-output .advanced-quantity>div{overflow:visible;overflow-wrap:anywhere}
#advanced-output .advanced-matrix-scroll,#advanced-steps .advanced-matrix-scroll{overflow-x:auto;overflow-y:hidden;max-width:100%}
#advanced-output .advanced-matrix-scroll .output-grid td,#advanced-steps .advanced-matrix-scroll .output-grid td{min-width:36px;font-size:.92rem;font-variant-numeric:tabular-nums;padding:7px 5px}
@media(max-width:540px){#advanced-output .advanced-factor-grid>.advanced-quantity{width:100%}#advanced-steps .advanced-step-formula{padding:8px 6px}}

/* v1.81 — spiegazione della norma minima */
.advanced-minnorm-lesson{background:#eaf3fc;border-left:3px solid #2c6fa3;border-radius:5px;padding:10px 14px;margin-top:12px;line-height:1.65;color:#173e60}
.advanced-minnorm-lesson p{margin:7px 0}
.advanced-minnorm-lesson .advanced-quantity{background:#fff}
.advanced-kernel-vector{display:inline-block;margin:5px 14px 5px 0}
.advanced-minnorm-lesson .advanced-vector{overflow-wrap:normal}
@media(max-width:540px){.advanced-minnorm-lesson{padding:9px}.advanced-kernel-vector{display:block}}

/* v1.82 — navigazione per fasi e proiettori ortogonali */
.advanced-step-nav{background:#eff6fd;border:1px solid #d7e5f3;border-radius:8px;padding:11px 14px;margin:14px 0}
.advanced-step-nav[hidden]{display:none}
.advanced-navigation-hint{font-size:.88rem;color:#375c7c;margin:0 0 8px}
.advanced-navigation-actions{display:flex;gap:8px;flex-wrap:wrap}
button.advanced-nav-button{font-size:.86rem;padding:7px 12px;line-height:1.35}
.advanced-stage{border:1px solid #cbddeb;border-radius:8px;background:#fbfdff;margin:12px 0;overflow:hidden}
.advanced-stage>summary{cursor:pointer;padding:13px 16px;font-weight:700;color:#16466e;background:#eaf3fd;list-style-position:inside}
.advanced-stage>summary:focus-visible{outline:3px solid #227bb4;outline-offset:-3px}
.advanced-stage[open]>summary{border-bottom:1px solid #d0e0f1}
.advanced-stage-content{padding:8px 11px}
.advanced-stage-content>.step{margin:8px 0}
@media(max-width:540px){.advanced-stage>summary{padding:11px;font-size:.91rem}.advanced-stage-content{padding:5px}}

/* v1.83 — grafico geometrico 3D dei proiettori e certificazione esatta distinta dalla SVD numerica */
.projection3d-panel{margin:18px 0 12px;padding:14px;background:#fff;border:1px solid #cedfed;border-radius:9px}
.projection3d-panel h3{margin:0 0 8px!important;color:#174d79;font-size:1.1rem}
.projection3d-panel>p{margin:5px 0 12px;color:#355a78;font-size:.91rem;line-height:1.65}
.projection3d-chart{max-width:100%;min-width:0}
.projection3d-view{background:linear-gradient(145deg,#f7fbff,#fff);border:1px solid #e0eaf3;border-radius:8px;overflow:hidden}
.projection3d-view svg{display:block;width:100%;height:auto;aspect-ratio:640/430;max-height:470px;cursor:grab;user-select:none}
.projection3d-view svg:active{cursor:grabbing}
.projection3d-view svg:focus-visible{outline:3px solid #2b85c7;outline-offset:-3px}
.projection3d-controls{display:flex;gap:8px 18px;flex-wrap:wrap;align-items:center;margin:12px 0 8px}
.projection3d-controls label{font-size:.84rem;color:#355a78;display:flex;gap:7px;align-items:center;flex:1 1 170px}
.projection3d-controls input{width:100%;max-width:160px;accent-color:#226fa8;cursor:pointer}
.projection3d-controls button{font-size:.81rem;line-height:1.2;padding:8px 10px;flex:0 0 auto}
.projection3d-legend{display:flex;gap:12px 20px;flex-wrap:wrap;color:#345a76;font-size:.84rem;margin:7px 0}
.projection3d-legend span{display:inline-flex;gap:6px;align-items:center}
.projection3d-dot{display:inline-block;width:11px;height:11px;border-radius:50%}
.projection3d-green{background:#21805e}.projection3d-blue{background:#2273b5}.projection3d-orange{background:#d97732}
.projection3d-caption,.advanced-geometry-note{margin:10px 0 0;padding:10px 12px;background:#eef6fd;border-left:3px solid #6babd5;border-radius:4px;color:#335c7c;font-size:.87rem;line-height:1.55}
.projection3d-sr-summary.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:650px){.projection3d-panel{padding:9px}.projection3d-controls{gap:8px}.projection3d-controls label{flex-basis:100%;justify-content:space-between}.projection3d-controls input{max-width:55%}.projection3d-view svg{max-height:none}}

/* v1.84: nota matematica essenziale, collassabile e leggibile su mobile */
.audit-help {margin:0 0 14px;border:1px solid #d9e5f0;border-radius:9px;background:#fbfdff;}
.audit-help details {padding:12px 16px;}
.audit-help summary {font-size:.92rem;color:#174b74;font-weight:700;cursor:pointer;line-height:1.45;}
.audit-help details[open] summary {margin-bottom:9px;}
.audit-help p {margin:0;font-size:.91rem;line-height:1.65;color:#3b5267;}
.audit-help summary:focus-visible {outline:2px solid #2679b8;outline-offset:3px;}


/* Versione 1.90 — navigazione, accessibilità e procedimenti lunghi. */
.module-mobile-hint{display:none;font-size:.81rem;color:#4e6881;margin:9px 2px 0}
.module-tabs{scrollbar-color:#a7bfd4 #eef3f9;scrollbar-width:thin}
.module-tab[aria-selected="true"]{background:#1766a7;color:#fff;border-color:#1766a7}
.module-tab:focus-visible{outline:3px solid #1b78be;outline-offset:2px}
.module-tab{touch-action:manipulation}
.ui-result-jump{display:inline-flex;align-items:center;justify-content:center;margin:12px 0 3px;padding:7px 12px;background:#edf5fc;border:1px solid #bcd3e7;border-radius:7px;color:#154f7b;font-size:.88rem;font-weight:700;cursor:pointer}
.ui-result-jump:hover{background:#dbeafa}
.ui-result-jump:focus-visible{outline:3px solid #76b3e4;outline-offset:2px}
.ui-back-toolbar{display:flex;justify-content:flex-end;margin:0 0 9px}
.ui-back-toolbar .ui-result-jump{margin:0}
.ui-step-index{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px;margin:12px 0;padding:12px 14px;background:#f1f7fd;border:1px solid #d4e5f2;border-radius:8px}
.ui-step-index label{margin:0;flex:1 1 100%;font-size:.9rem}
.ui-step-index select{flex:1 1 300px;width:min(100%,550px)}
.ui-step-index button{background:#dfeefa;color:#164d76;border:1px solid #bfd7ea;padding:9px 13px}
.ui-step-index button:hover{background:#cfe4f6}
input.is-invalid-input{border:2px solid #bb3c30!important;background:#fff5f3!important;box-shadow:0 0 0 2px #ffe4de}
.ui-invalid-help{font-size:.83rem;color:#98392e;margin:4px 0 0}
@media(max-width:700px){
 .module-mobile-hint{display:block}
 .module-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:7px;padding:8px 2px 11px;margin:0 0 10px;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
 .module-tab{flex:0 0 auto;white-space:nowrap;padding:10px 13px;min-height:44px}
 .ui-result-jump{min-height:42px}
 .ui-step-index{padding:11px}
 .ui-step-index button{width:100%}
}
@media(prefers-reduced-motion:reduce){.module-tabs{scroll-behavior:auto!important}}

/* 2.0 Beta: avviso informativo sobrio; nessuna modifica ai motori. */
.beta-release-note{margin:9px 0 17px;color:#345872;font-size:.87rem;line-height:1.55}
.beta-release-note strong{color:#164a70}
@media(max-width:700px){.beta-release-note{font-size:.85rem}}
