.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.field-group.full{grid-column:1 / -1}.geo-result{display:block;font-size:.72rem;color:var(--accent);margin-top:.25rem;min-height:1.1em;font-weight:300;opacity:.85}.geo-result:not(:empty):before{content:"✓"}.dx-header{background:var(--bg-card);border:none;box-shadow:0 0 0 1px var(--border);border-radius:var(--radius);padding:2rem;text-align:center;margin-bottom:2rem}.dx-header .dx-label{font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);font-weight:400;margin-bottom:.5rem}.dx-header .dx-title{font-family:var(--font-display);font-size:2.6rem;font-weight:300;font-variation-settings:"SOFT" 60;color:var(--accent);line-height:1.1}.dx-header .dx-sub{font-size:.85rem;color:var(--text-muted);margin-top:.5rem}.dx-block{background:var(--bg-card);border:none;box-shadow:0 0 0 1px var(--border);border-radius:var(--radius);padding:1.75rem;margin-bottom:1.5rem}.dx-block-num{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-dim);font-weight:400;margin-bottom:.2rem}.dx-block-title{font-family:var(--font-display);font-size:1.35rem;font-weight:400;color:var(--text);margin-bottom:1.25rem}.dx-row{display:flex;gap:1.25rem;padding:.7rem 0;border-top:1px solid var(--border);align-items:baseline}.dx-row:first-of-type{border-top:none}.dx-key{flex:0 0 170px;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-weight:400}.dx-val{flex:1;font-size:.9rem;color:var(--text)}.dx-val strong{font-weight:600}.dx-val .dx-em{color:var(--accent)}.dx-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.35rem}.dx-tag{background:#c9955a1f;color:var(--accent);border:none;border-radius:999px;padding:.15rem .7rem;font-size:.7rem;font-weight:300}.dx-formula{background:linear-gradient(90deg,rgba(201,149,90,.08),transparent);border:none;border-radius:var(--radius);padding:1rem 1.25rem;font-size:.95rem;color:var(--text);font-style:italic;line-height:1.5;margin-bottom:1rem}.dx-cta{background:var(--bg-card);box-shadow:0 0 0 1px var(--border);border-radius:var(--radius);padding:1.5rem;text-align:center;margin-top:1rem}.dx-cta p{color:var(--text-muted);font-size:.85rem;margin-bottom:1rem;line-height:1.5}.dx-note{margin:.25rem 0 1rem;padding:.75rem 1rem;background:linear-gradient(90deg,#c9955a12,#c9955a00);border-left:2px solid var(--accent-dim);border-radius:var(--radius);font-size:.82rem;color:var(--text-muted);line-height:1.55}.dx-axis{display:flex;gap:.75rem;padding:.75rem 0;border-top:1px solid var(--border);align-items:baseline}.dx-axis-label{flex:0 0 92px;font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600;padding-top:.15rem}.dx-axis-val{flex:1;font-size:.84rem;color:var(--text);line-height:1.5}.btn-row{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}#diagResult.pdf{background:#faf6ef!important;color:#2a2620!important}#diagResult.pdf .dx-block,#diagResult.pdf .dx-header{background:#fff;box-shadow:0 0 0 1px #e5ddce}#diagResult.pdf .dx-block-title{color:#2a2620}#diagResult.pdf .dx-block-num{color:#a67c52}#diagResult.pdf .dx-key{color:#8a7a66}#diagResult.pdf .dx-val{color:#2a2620}#diagResult.pdf .dx-em{color:#a67c52}#diagResult.pdf .dx-tag{background:#a67c521f;color:#8a5f35}#diagResult.pdf .dx-row{border-top-color:#eee5d6}#diagResult.pdf .dx-formula{background:#f6efe2;color:#2a2620}#diagResult.pdf .dx-cta{background:#fff;box-shadow:0 0 0 1px #e5ddce}#diagResult.pdf .dx-cta p{color:#6a5f4f}#diagResult.pdf .dx-note{background:#f6efe2;border-left-color:#a67c52;color:#6a5f4f}#diagResult.pdf .dx-axis{border-top-color:#eee5d6}#diagResult.pdf .dx-axis-label{color:#a67c52}#diagResult.pdf .dx-axis-val{color:#2a2620}.dx-donut-flex{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}.dx-donut-col{min-width:0}.dx-donut-col canvas{width:100%!important}#diagElemChart,#diagQuadChart{height:260px!important}.dx-chip-cap{margin-top:.5rem;font-size:.68rem;color:var(--text-muted);text-align:center}@media(max-width:700px){.dx-donut-flex{grid-template-columns:1fr}}
