:root{--calculator-paper:#f4f6fa;--calculator-ink:#12213e;--calculator-ink-soft:#4a5a78;--calculator-surface:#fff;--calculator-line:#e1e6ef;--calculator-accent:#1769aa;--calculator-accent-deep:#0f3d6e;--calculator-accent-soft:#e8f1fa;--calculator-deep:var(--calculator-accent-deep);--calculator-soft:var(--calculator-accent-soft);--calculator-warning:#c9832b;--calculator-warning-soft:#fbf0e1;--calculator-danger:#b23b3b;--calculator-radius:14px;--calculator-control-radius:9px;--calculator-shadow:0 1px 2px #12213e0a, 0 8px 24px #12213e0f;--calculator-content-max:1180px;--calculator-layout-gap:24px;--calculator-page-padding:32px 20px 80px;--calculator-font:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*,:before,:after{box-sizing:border-box}html{background:var(--calculator-paper);min-width:320px}body{background:var(--calculator-paper);min-width:320px;min-height:100dvh;color:var(--calculator-ink);font-family:var(--calculator-font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}button,input,select,textarea{font:inherit}button,select,a{color:inherit}.button{border-radius:var(--calculator-control-radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 14px;font-weight:700;display:inline-flex}.button:disabled{cursor:not-allowed;opacity:.6}.button-primary{background:var(--calculator-accent);color:#fff}.button-primary:hover:not(:disabled){background:var(--calculator-deep)}.button-secondary{border-color:var(--calculator-line);background:var(--calculator-surface);color:var(--calculator-ink)}.dialog-body{gap:20px;padding:24px;display:grid}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.feedback{border-radius:10px;grid-template-columns:auto 1fr;gap:6px 10px;padding:12px;display:grid}.feedback>span{color:var(--calculator-ink-soft);grid-column:2}.feedback-error{color:#8f2f2a;background:#ab3d3714;border:1px solid #ab3d3759}.button-ghost{background:0 0;border-color:#0000}.button-sm{min-height:34px;padding:6px 10px;font-size:.875rem}.legacy-stack{gap:12px;display:grid}.legacy-inline{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.legacy-card{border:1px solid var(--calculator-line);border-radius:var(--calculator-radius);background:var(--calculator-surface)}.legacy-card-header{gap:6px;padding:18px 20px 0;display:grid}.legacy-card-content{gap:16px;padding:18px 20px 20px;display:grid}.legacy-card h2,.legacy-empty h2{margin:0;font-size:1.1rem}.legacy-badge{background:var(--calculator-soft);color:var(--calculator-deep);border-radius:999px;padding:4px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.legacy-alert{background:#ab3d3714;border:1px solid #ab3d3759;border-radius:10px;gap:6px;padding:12px;display:grid}.legacy-empty{border:1px dashed var(--calculator-line);border-radius:var(--calculator-radius);text-align:center;place-items:center;gap:12px;padding:36px 24px;display:grid}.legacy-empty p{max-width:55ch;color:var(--calculator-ink-soft);margin:0}.legacy-field{gap:6px;min-width:0;display:grid}.legacy-field input{border:1px solid var(--calculator-line);border-radius:8px;min-height:40px;padding:8px}.legacy-error{color:#8f2f2a}.legacy-table-wrap{max-width:100%;overflow-x:auto}.legacy-table-wrap table{border-collapse:collapse;width:100%}.legacy-table-wrap th,.legacy-table-wrap td{border-bottom:1px solid var(--calculator-line);text-align:left;vertical-align:top;padding:10px}.legacy-dropdown{position:relative}.legacy-dropdown-menu{z-index:5;border:1px solid var(--calculator-line);background:var(--calculator-surface);min-width:180px;box-shadow:var(--calculator-shadow);border-radius:8px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);right:0}.legacy-dropdown [role=menuitem]{text-align:left;background:0 0;border:0;padding:8px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--calculator-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
