/*! Business Value Visualizer | © 2026 Saurea Oy · Teemu Holmi · +358 50 573 2959 | businessvaluevisualizer.com | Kaikki oikeudet pidätetään — luvaton kopiointi kielletty. */
:root{--color-cash:#3d7a86;--color-ap:#8a6d3b;--color-neg:#c0392b}.back-link{display:inline-block;margin-bottom:18px;color:var(--color-kate);text-decoration:none;font-size:13px;font-weight:bold}.back-link:hover{text-decoration:underline}.num-input{font-family:Georgia,serif;font-size:16px;font-weight:bold;color:var(--color-text);width:9ch;padding:2px 7px;border:none;border-bottom:2px solid rgba(79,127,82,0.45);background:rgba(79,127,82,0.07);border-radius:5px 5px 0 0;text-align:right;-moz-appearance:textfield;vertical-align:baseline}.num-input:focus{outline:none;border-bottom-color:var(--color-kate);background:rgba(79,127,82,0.14)}.num-input::-webkit-outer-spin-button,.num-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.num-unit{font-weight:bold;color:var(--color-text);margin-left:3px}.unit-toggle{display:inline-flex;gap:0;border:1.5px solid var(--color-kate);border-radius:8px;overflow:hidden;margin-left:8px;vertical-align:middle}.unit-toggle button{font-family:Georgia,serif;font-size:13px;padding:4px 12px;border:none;background:transparent;color:var(--color-kate);cursor:pointer}.unit-toggle button.is-active{background:var(--color-kate);color:#fff;font-weight:bold}.stat-list{margin-top:22px;border-top:1px solid rgba(46,43,39,0.12)}.stat{display:flex;align-items:center;gap:10px;padding:11px 2px;border-bottom:1px solid rgba(46,43,39,0.12)}.stat__label{flex:1;font-size:14px;color:var(--color-text);display:flex;align-items:center;gap:7px}.stat__val{font-size:19px;font-weight:bold;color:var(--color-kate);white-space:nowrap}.stat__val--muted{color:var(--color-text)}.stat__val--cash{color:var(--color-cash)}.stat__val--gold{color:var(--color-profit)}.stat__val--muku{color:var(--color-muku)}.stat__val small{font-size:12px;font-weight:normal;color:var(--color-muted)}.nwc-viz{--labgap:128px;display:grid;grid-template-columns:118px 1fr;gap:7px 10px;align-items:center;position:relative;margin:14px 0 6px}.nwc-viz__lab{font-size:11.5px;line-height:1.25;color:var(--color-muted);text-align:right}.nwc-viz__lab--net{color:var(--color-text);font-weight:bold}.nwc-viz__track{position:relative;height:38px}.nwc-viz__seg{position:absolute;top:0;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:bold;white-space:nowrap;overflow:hidden;border-radius:4px;box-shadow:0 2px 6px rgba(0,0,0,0.12)}.nwc-viz__seg--ms{background:var(--color-muku)}.nwc-viz__seg--inv{background:var(--color-profit)}.nwc-viz__seg--ap{background:var(--color-kate)}.nwc-viz__seg--netpos{background:var(--color-neg)}.nwc-viz__seg--netneg{background:var(--color-kate)}.nwc-zero{position:absolute;top:0;bottom:0;width:2px;background:var(--color-text);left:calc(var(--labgap) + (100% - var(--labgap)) * var(--x0,0));transform:translateX(-1px);z-index:3}.nwc-zero::after{content:"0";position:absolute;top:-14px;left:50%;transform:translateX(-50%);font-size:9px;font-weight:bold;color:var(--color-muted);background:var(--color-bg);padding:0 3px}@media (max-width:600px){.nwc-viz{--labgap:90px;grid-template-columns:82px 1fr;gap:6px 8px}.nwc-viz__lab{font-size:10px}}.nwc-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--color-muted);margin-top:8px}.nwc-legend span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:baseline}.nwc-legend .lg-ms::before{background:var(--color-muku)}.nwc-legend .lg-inv::before{background:var(--color-profit)}.nwc-legend .lg-ap::before{background:var(--color-kate)}.contrib-table{width:100%;border-collapse:collapse;margin-top:18px;font-size:14px}.contrib-table th,.contrib-table td{padding:9px 8px;text-align:right;border-bottom:1px solid rgba(46,43,39,0.12)}.contrib-table th{color:var(--color-muted);font-size:12px;font-weight:bold}.contrib-table td:first-child,.contrib-table th:first-child{text-align:left}.contrib-table .ct-name{display:flex;align-items:center;gap:6px}.contrib-table .ct-dot{width:10px;height:10px;border-radius:2px;flex-shrink:0}.contrib-table .row-total td{font-weight:bold;border-top:2px solid var(--color-border)}.scenario-controls{background:#fff;border-radius:12px;padding:20px 22px;box-shadow:0 2px 12px rgba(0,0,0,0.07);margin-bottom:22px}.sc-slider-row{margin-bottom:18px}.sc-slider-row:last-child{margin-bottom:0}.sc-slider-row p{margin:0 0 4px;font-size:14px}.sc-beforeafter{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--color-muted);margin:0 0 8px}.sc-ba__lab{font-size:9.5px;letter-spacing:1px;text-transform:uppercase;color:var(--color-muted);margin-right:4px}.sc-ba__arrow{color:var(--color-muted)}.sc-ba__after{color:var(--color-kate);font-weight:bold}.result-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media (max-width:620px){.result-cols{grid-template-columns:1fr}}.result-card{background:#fff;border-radius:12px;padding:22px;box-shadow:0 2px 12px rgba(0,0,0,0.08);border-top:4px solid var(--color-cash)}.result-card--value{border-top-color:var(--color-profit)}.result-card__tag{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--color-muted);font-weight:bold}.result-card__title{font-size:17px;color:var(--color-text);margin:4px 0 4px}.result-card__lead{font-size:13px;color:var(--color-muted);line-height:1.6;margin:0 0 16px}.result-card__big{font-size:30px;font-weight:bold;color:var(--color-cash);line-height:1.1}.result-card--value .result-card__big{color:var(--color-profit)}.result-card__bigsub{font-size:12px;color:var(--color-muted);margin:2px 0 14px}.result-card__line{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;padding:7px 0;border-top:1px solid rgba(46,43,39,0.1)}.result-card__line b{color:var(--color-text);white-space:nowrap}.result-card__boxes{display:flex;flex-wrap:wrap;gap:2px;margin-top:12px}.result-card__box{width:7px;height:7px;border-radius:1.5px}.result-card__box--cash{background:var(--color-cash)}.result-card__box--gold{background:var(--color-profit)}.keyfact{margin:18px 0 4px;padding:14px 16px;background:rgba(184,148,74,0.09);border-left:3px solid var(--color-profit);border-radius:6px;font-size:14px;line-height:1.65}.keyfact b{color:var(--color-profit)}.stat__label .info-btn{position:relative;top:0}.value-float__row-val--cash{color:var(--color-kate)}.value-float__row-val--profit{color:var(--color-profit)}.value-float__bar{width:96px;height:8px;background:rgba(46,43,39,0.10);border-radius:4px;overflow:hidden;flex-shrink:0}.value-float__barfill{display:block;height:100%;width:0;border-radius:4px;background:var(--color-profit);transition:width 0.15s ease}.value-float__barfill--cash{background:var(--color-kate)}.value-float__or{display:flex;align-items:center;gap:8px;margin:9px 0;font-size:9px;font-weight:bold;letter-spacing:1.5px;color:var(--color-muted)}.value-float__or::before,.value-float__or::after{content:"";flex:1;height:1px;background:rgba(0,0,0,0.14)}.value-float__main{margin-top:6px;padding-top:0;border-top:none}.value-float__axis{position:relative;width:96px;margin:6px 0 0 auto;height:15px;border-top:1px solid rgba(46,43,39,0.22)}.value-float__tick{position:absolute;top:0;font-size:7.5px;line-height:1;color:var(--color-muted);white-space:nowrap;padding-top:4px;transform:translateX(-50%)}.value-float__tick::before{content:"";position:absolute;top:0;left:50%;width:1px;height:3px;background:rgba(46,43,39,0.28);transform:translateX(-50%)}.value-float__tick--first{transform:translateX(0)}.value-float__tick--first::before{left:0;transform:none}.value-float__tick--last{transform:translateX(-100%)}.value-float__tick--last::before{left:auto;right:0;transform:none}.value-float--hidden .value-float__axis{display:none}@media (max-width:520px){.value-float__axis{width:70px}.value-float__tick{font-size:7px}}@media (max-width:520px){.value-float__bar{width:70px}}body.compact .step--haslider{display:block;padding:11px 16px;margin:0 0 8px}body.compact .step--haslider p{flex:none;max-width:none;margin:0 0 5px;font-size:.9rem;line-height:1.35}body.compact .step--haslider .slider{flex:none;display:block;width:100%;margin:0 0 4px}body.compact .step--haslider p + .slider{margin-bottom:10px}body.compact .step--haslider .num-input{max-width:9ch}body.compact .step--haslider .unit-toggle{display:inline-flex}