/* Shared depth and interaction treatment for all three calculators. */
:root{--calc-shadow:0 3px 7px #102e2910,0 14px 30px -12px #102e292b;--calc-lift:0 5px 10px #102e2914,0 18px 34px -12px #102e293d}
.mode-selector,.deployment-selector,.config-panel,.result-panel,.results-panel,.context-panel,.wizard-controller,.wizard-navigation,.wizard-actions,.omni-flow-nav,.scenario-board{box-shadow:var(--calc-shadow);transition:box-shadow .24s ease,border-color .24s ease}
.mode-options button,.deployment-options button,.module-tile,.wizard-progress button,.segmented button,.omni-button,.wizard-next,.wizard-back{box-shadow:0 2px 3px #102e2908,0 5px 12px -6px #102e2930;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease}
.mode-options button.active,.deployment-options button.active,.module-tile.active,.wizard-progress button.active,.segmented button.active{box-shadow:inset 0 1px 0 #ffffff70,0 3px 0 #95b42c45,0 9px 20px -8px #718f2b65}
input:not([type=checkbox]):not([type=radio]),select{transition:box-shadow .2s ease,border-color .2s ease;box-shadow:inset 0 1px 2px #102e2907,0 3px 8px -5px #102e2930}
input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid #0074b8;outline-offset:3px;box-shadow:0 0 0 5px #0074b812,var(--calc-shadow)}
@media(hover:hover){.mode-options button:hover,.deployment-options button:hover,.module-tile:hover,.wizard-progress button:hover,.segmented button:hover,.omni-button:hover,.wizard-next:hover,.wizard-back:hover{transform:translateY(-2px);box-shadow:var(--calc-lift)}.mode-selector:hover,.deployment-selector:hover,.config-panel:hover,.context-panel:hover{box-shadow:var(--calc-lift)}}
.mode-options button:active,.deployment-options button:active,.module-tile:active,.wizard-progress button:active,.segmented button:active,.omni-button:active,.wizard-next:active,.wizard-back:active{transform:translateY(1px);box-shadow:0 2px 5px #102e2920}
button:disabled{transform:none!important;box-shadow:none!important}
.deployment-selector,.module-strip,.report-gate,.main-grid.wizard-config-only,.main-grid.wizard-result-only{animation:calc-stage-enter .3s ease both}
@keyframes calc-stage-enter{from{opacity:.65;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.mode-selector,.deployment-selector,.config-panel,.result-panel,.results-panel,.context-panel,.wizard-controller,.wizard-navigation,.wizard-actions,.omni-flow-nav,.scenario-board,.mode-options button,.deployment-options button,.module-tile,.wizard-progress button,.segmented button,.omni-button,.wizard-next,.wizard-back,input,select{transition:none!important;transform:none!important}.deployment-selector,.module-strip,.report-gate,.main-grid{animation:none!important}}
@media print{.mode-selector,.deployment-selector,.config-panel,.result-panel,.results-panel,.context-panel,.scenario-board{box-shadow:none!important;animation:none!important}}
