.calcgen-widget{--calcgen-border:#e2e8f0;--calcgen-muted:#64748b;--calcgen-text:#1e293b;--calcgen-panel:#f8fafc;--calcgen-error:#dc2626;box-sizing:border-box;background:#fff;color:var(--calcgen-text);border:1px solid var(--calcgen-border);border-radius:var(--calcgen-radius,10px);box-shadow:var(--calcgen-shadow,0 4px 20px rgba(0,0,0,.08));max-width:var(--calcgen-max-width,760px);margin:2em auto;padding:28px;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}.calcgen-widget *,.calcgen-widget *:before,.calcgen-widget *:after{box-sizing:border-box}.calcgen-widget-header{position:relative;margin:0 0 22px;padding-bottom:14px;border-bottom:1px solid var(--calcgen-border)}.calcgen-widget-header:after{content:"";position:absolute;left:0;bottom:-2px;width:56px;height:3px;border-radius:2px;background:var(--calcgen-primary,#2563eb)}.calcgen-widget-title{display:block;margin:0;font-size:1.35em;font-weight:700;line-height:1.3;color:var(--calcgen-text)}.calcgen-fields{display:grid;grid-template-columns:1fr;gap:16px 20px;margin:0 0 20px}@media (min-width:640px){.calcgen-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.calcgen-field{min-width:0}.calcgen-widget .calcgen-label{display:block;margin:0 0 6px;font-size:.9em;font-weight:600;color:#334155;line-height:1.3}.calcgen-widget .calcgen-input-wrap{display:flex;align-items:stretch;width:100%;background-color:#fff;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.calcgen-widget .calcgen-input-wrap:hover{border-color:#94a3b8}.calcgen-widget .calcgen-input-wrap:focus-within{border-color:var(--calcgen-primary,#2563eb);box-shadow:0 0 0 3px rgba(37,99,235,.18)}@supports (color:color-mix(in srgb,red 50%,transparent)){.calcgen-widget .calcgen-input-wrap:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--calcgen-primary,#2563eb) 20%,transparent)}}.calcgen-widget .calcgen-unit{display:flex;flex:0 0 auto;align-items:center;justify-content:center;max-width:45%;padding:0 12px;overflow:hidden;font-size:.9em;font-weight:600;color:#475569;white-space:nowrap;text-overflow:ellipsis;background-color:#f1f5f9;pointer-events:none}.calcgen-widget .calcgen-unit-prefix{border-right:1px solid #cbd5e1}.calcgen-widget .calcgen-unit-suffix{order:2;border-left:1px solid #cbd5e1}.calcgen-widget .calcgen-input-wrap .calcgen-input{flex:1 1 auto;min-width:0;background-color:transparent;border:0;border-radius:0}.calcgen-widget .calcgen-input-wrap .calcgen-input:hover,.calcgen-widget .calcgen-input-wrap .calcgen-input:focus,.calcgen-widget .calcgen-input-wrap .calcgen-input.calcgen-input-error,.calcgen-widget .calcgen-input-wrap .calcgen-input.calcgen-input-error:focus{border:0;box-shadow:none}.calcgen-widget .calcgen-input-wrap.calcgen-input-error,.calcgen-widget .calcgen-input-wrap.calcgen-input-error:focus-within{border-color:var(--calcgen-error);box-shadow:0 0 0 3px rgba(220,38,38,.15)}.calcgen-widget .calcgen-input-wrap.calcgen-input-error .calcgen-unit{border-color:var(--calcgen-error)}.calcgen-widget .calcgen-input{display:block;width:100%;margin:0;padding:10px 12px;font-family:inherit;font-size:1em;line-height:1.4;color:var(--calcgen-text);background-color:#fff;border:1px solid #cbd5e1;border-radius:8px;outline:none;box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.calcgen-widget input.calcgen-input[type=number]{-moz-appearance:textfield;appearance:textfield}.calcgen-widget input.calcgen-input::-webkit-outer-spin-button,.calcgen-widget input.calcgen-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.calcgen-widget .calcgen-input::placeholder{color:#94a3b8;opacity:1}.calcgen-widget .calcgen-input:hover{border-color:#94a3b8}.calcgen-widget .calcgen-input:focus{border-color:var(--calcgen-primary,#2563eb);box-shadow:0 0 0 3px rgba(37,99,235,.18)}@supports (color:color-mix(in srgb,red 50%,transparent)){.calcgen-widget .calcgen-input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--calcgen-primary,#2563eb) 20%,transparent)}}.calcgen-widget .calcgen-select{cursor:pointer;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px 8px}.calcgen-widget .calcgen-field-error{display:block;min-height:1.1em;margin-top:4px;font-size:.8em;line-height:1.35;color:var(--calcgen-error)}.calcgen-widget .calcgen-input.calcgen-input-error,.calcgen-widget .calcgen-input.calcgen-input-error:focus{border-color:var(--calcgen-error);box-shadow:0 0 0 3px rgba(220,38,38,.15)}.calcgen-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}.calcgen-widget .calcgen-btn{display:inline-block;margin:0;padding:11px 22px;font-family:inherit;font-size:1em;font-weight:600;line-height:1.2;text-align:center;text-decoration:none;text-transform:none;letter-spacing:normal;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,filter .15s ease,transform .05s ease;-webkit-appearance:none;appearance:none}.calcgen-widget .calcgen-btn:active{transform:translateY(1px)}.calcgen-widget .calcgen-btn-calculate{flex:1 1 auto;background:var(--calcgen-primary,#2563eb);border-color:var(--calcgen-primary,#2563eb);color:var(--calcgen-btn-text,#fff)}.calcgen-widget .calcgen-btn-calculate:hover,.calcgen-widget .calcgen-btn-calculate:focus{background:var(--calcgen-primary,#2563eb);color:var(--calcgen-btn-text,#fff);filter:brightness(.92)}.calcgen-widget .calcgen-btn-reset{background:#f1f5f9;border-color:#cbd5e1;color:#334155}.calcgen-widget .calcgen-btn-reset:hover,.calcgen-widget .calcgen-btn-reset:focus{background:#e2e8f0;color:#1e293b}.calcgen-widget .calcgen-btn:focus-visible{outline:2px solid var(--calcgen-secondary,#0ea5e9);outline-offset:2px}.calcgen-results{background:var(--calcgen-panel);border:1px solid var(--calcgen-border);border-left:4px solid var(--calcgen-secondary,#0ea5e9);border-radius:8px;padding:6px 18px}.calcgen-result{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px dashed var(--calcgen-border)}.calcgen-result:last-child{border-bottom:none}.calcgen-result-label{font-size:.92em;font-weight:500;color:var(--calcgen-muted)}.calcgen-result-value{font-weight:700;font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere;color:var(--calcgen-text)}.calcgen-result-primary .calcgen-result-label{font-weight:600;color:#334155}.calcgen-result-primary .calcgen-result-value{font-size:1.45em;line-height:1.25;color:var(--calcgen-primary,#2563eb)}.calcgen-toc{box-sizing:border-box;background:#f8fafc;border:1px solid #e2e8f0;border-left:4px solid var(--calcgen-secondary,#0ea5e9);border-radius:var(--calcgen-radius,10px);padding:18px 22px;margin:2em 0}.calcgen-toc>:first-child{margin-top:0}.calcgen-toc>:last-child{margin-bottom:0}.calcgen-toc ul,.calcgen-toc ol{margin:.5em 0 0;padding-left:1.25em;list-style-position:outside}.calcgen-toc li{margin:.3em 0}.calcgen-toc a{color:var(--calcgen-primary,#2563eb);text-decoration:none}.calcgen-toc a:hover,.calcgen-toc a:focus{text-decoration:underline}@media (max-width:480px){.calcgen-widget{padding:18px}.calcgen-widget .calcgen-btn{flex:1 1 100%}}@media print{.calcgen-widget{box-shadow:none;border:1px solid #bbb;break-inside:avoid}.calcgen-actions{display:none}.calcgen-results,.calcgen-toc{border-left-color:#bbb;background:#fff}.calcgen-toc a{color:#000;text-decoration:none}}