/* RC193: isolated public commercial planner, no portal selectors. */
.cm-page .bb-skip{position:fixed;left:12px;top:-100px;padding:12px;background:white;color:#07563f}.cm-page #simulazione,.cm-page #metodo,.cm-page #cm-results,.cm-page #cm-contracts{scroll-margin-top:150px}.cm-page main input,.cm-page main select{font-size:16px}
.cm-page{margin:0;background:#f2f7f4;color:#142d26;font:16px/1.65 system-ui,-apple-system,sans-serif}
.cm-page *{box-sizing:border-box}.cm-page main{max-width:1120px;margin:auto;padding:24px 20px 50px}.cm-page h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.12;letter-spacing:-.035em;max-width:900px;margin:16px 0 24px}.cm-page h2{font-size:1.45rem;line-height:1.3}.cm-page h3{font-size:1.1rem}.cm-page a{color:#07654e;text-underline-offset:3px}.cm-page .cm-hero{padding:32px 0 24px}.cm-page .cm-kicker{font-weight:750;letter-spacing:.08em;font-size:.8rem}.cm-page .cm-lead{font-size:1.16rem;max-width:800px}.cm-page .cm-badge{border-left:4px solid #08785b;padding:12px 16px;background:white;border-radius:8px;max-width:850px}
.cm-card{background:white;border:1px solid #cfddd5;border-radius:18px;padding:24px;margin:22px 0;box-shadow:0 4px 18px #123c2510;min-width:0}.cm-card h2:first-child{margin-top:0}.cm-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0}.cm-page label{display:flex;flex-direction:column;gap:7px;font-size:.92rem;font-weight:600;min-width:0}.cm-page input,.cm-page select{font:inherit;color:#142d26;background:#fff;border:1px solid #a3b8ab;border-radius:9px;padding:12px;min-width:0;width:100%;min-height:46px}.cm-page fieldset{border:1px solid #c5d8cc;border-radius:10px;padding:12px 16px;margin:16px 0}.cm-page legend{font-weight:700;padding:0 5px}.cm-page label.cm-check{display:inline-flex;flex-direction:row;align-items:center;margin:6px 14px 6px 0;min-height:32px}.cm-page .cm-check input{min-height:22px;width:22px;accent-color:#08785b}.cm-page main button,.cm-page .cm-cta{font:650 1rem/1.4 system-ui;background:#08785b;color:#fff;border:1px solid #08785b;border-radius:10px;min-height:46px;padding:12px 18px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;white-space:normal}.cm-page main button:hover,.cm-page .cm-cta:hover{background:#06533f;color:white}.cm-page main button.secondary{background:#f2f7f4;color:#164a38;border-color:#b8cfc0}.cm-page main button.secondary:hover{background:#dfeee4}.cm-page :focus-visible{outline:3px solid #226fba;outline-offset:3px}.cm-page [hidden]{display:none!important}.cm-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.cm-note{color:#455e53;font-size:.92rem;font-weight:400}.cm-slot{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end;padding:12px 0;border-bottom:1px solid #e2ebe5}.cm-status:not(:empty){position:sticky;bottom:12px;z-index:5;max-width:100%;padding:14px 18px;background:#e7f6ee;border:1px solid #20744b;border-radius:10px;box-shadow:0 4px 18px #14382524}.cm-status.cm-error{background:#fff2ed;color:#8a2913;border-color:#ac4325}.cm-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cm-metrics>div{padding:16px;background:#f3f8f5;border:1px solid #dce8df;border-radius:12px}.cm-metrics dt{font-size:.86rem;color:#405d50}.cm-metrics dd{font-size:1.45rem;font-weight:750;margin:8px 0 0;overflow-wrap:anywhere}.cm-contract{padding:16px 0;border-top:1px solid #d4e2d9}.cm-table-scroll{overflow:auto;max-width:100%;margin:20px 0;border:1px solid #cbded1;border-radius:10px}.cm-page table{border-collapse:collapse;width:100%;font-size:.9rem}.cm-page th,.cm-page td{text-align:left;padding:12px;border-bottom:1px solid #dce7e0;white-space:nowrap}.cm-page th{background:#eaf4ed}.cm-page td{font-variant-numeric:tabular-nums}.cm-page main details{margin:18px 0}.cm-page main summary{cursor:pointer;font-weight:700;min-height:44px}.cm-page footer.cm-footer{padding:30px 20px;text-align:center;background:#142d26;color:white}.cm-page .cm-footer a{color:#d4f5e4;margin:0 12px}.cm-page .cm-footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
@media(max-width:800px){.cm-fields,.cm-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.cm-card{padding:20px}.cm-slot{grid-template-columns:1fr 1fr}.cm-slot button{grid-column:1/-1}}
@media(max-width:520px){.cm-page main{padding:20px 14px 36px}.cm-page .cm-hero{padding-top:18px}.cm-page h1{font-size:2.25rem}.cm-fields,.cm-metrics{grid-template-columns:1fr}.cm-card{padding:18px 15px;border-radius:14px}.cm-actions{flex-direction:column}.cm-actions button,.cm-actions a{width:100%}.cm-metrics dd{font-size:1.55rem}}
@media(prefers-reduced-motion:reduce){.cm-page *{scroll-behavior:auto!important}}
