@import url("https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,400;0,600;0,700;1,400&display=swap");:root{--black:#000000;--white:#ffffff;--gray-bg:#ececec;--text-primary:rgba(0,0,0,0.85);--text-secondary:rgba(0,0,0,0.75);--text-muted:rgba(0,0,0,0.4);--line-divider:rgba(0,0,0,0.15);--line-strong:rgba(0,0,0,0.85);--surface-page:var(--gray-bg);--surface-card:var(--white);--surface-inverse:var(--black);--text-on-inverse:var(--white);--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--text-heading-size:24.4944px;--text-heading-line:26.944px;--text-heading-tracking:-0.686px;--text-heading-weight:600;--text-body-size:16.3296px;--text-body-line:20.412px;--text-body-sm-size:14.58px;--text-body-sm-line:17.496px;--text-caption-size:13.0637px;--text-caption-line:16.33px;--text-button-size:13.9968px;--text-button-line:14.697px;--text-button-tracking:-0.28px;--text-button-weight:600;--unit:5.832px;--space-1:var(--unit);--space-2:11.664px;--space-3:15px;--space-4:23.328px;--space-6:34.992px;--radius-card:10.4976px;--radius-image:5.832px;--radius-pill:9999px;--border-card:1px dashed var(--line-strong);--border-button:2px solid var(--line-strong);--content-max-width:1001px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--surface-page);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}a{color:var(--text-secondary)}a:hover{opacity:.7}.page{min-height:100vh;flex-direction:column;padding:48px 24px 64px}.page,.row{display:flex;align-items:center}.row{width:100%;max-width:var(--content-max-width);justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.topbar{margin-bottom:var(--space-6)}.brand{font-weight:600;font-size:var(--text-body-size);letter-spacing:-.686px;color:var(--text-primary)}.portfolio-link{text-decoration:underline;font-style:italic;font-size:var(--text-body-sm-size);color:var(--text-secondary)}.card{width:100%;max-width:var(--content-max-width);background:var(--surface-card);border:var(--border-card);border-radius:var(--radius-card);padding:var(--space-6);gap:var(--space-6)}.card,.intro{display:flex;flex-direction:column}.intro{gap:var(--space-2)}.intro h1{margin:0;font-weight:var(--text-heading-weight);font-size:var(--text-heading-size);line-height:var(--text-heading-line);letter-spacing:var(--text-heading-tracking);color:var(--text-primary)}.intro p{margin:0;font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--text-secondary)}.divider{height:1px;background:var(--line-divider)}.columns{align-items:flex-start;flex-wrap:wrap}.columns,.form{display:flex;gap:var(--space-6)}.form{flex:1 1 380px;min-width:280px}.form,.group{flex-direction:column}.group{display:flex;gap:var(--space-3);border:none;margin:0;padding:0;min-width:0}.group-title{font-weight:600;font-size:var(--text-body-size);color:var(--text-primary);padding:0}.group-hint{font-size:var(--text-caption-size);line-height:var(--text-caption-line);color:var(--text-secondary)}.options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:9px 17px;border-radius:var(--radius-pill);font-family:var(--font-sans);font-weight:var(--text-button-weight);font-size:var(--text-button-size);line-height:var(--text-button-line);letter-spacing:var(--text-button-tracking);text-decoration:none;cursor:pointer;transition:opacity .15s ease;border:var(--border-button);background:transparent;color:var(--text-primary);text-align:left}.btn:hover{opacity:.7}.btn-filled,.btn[aria-pressed=true]{border-color:transparent;background:var(--surface-inverse);color:var(--text-on-inverse)}.btn-filled{width:100%;justify-content:center;padding:13px 17px}.stepper-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.stepper-label{font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--text-primary)}.stepper-note{font-size:var(--text-caption-size);line-height:var(--text-caption-line);color:var(--text-secondary)}.stepper{gap:var(--space-2)}.stepper,.stepper button{display:flex;align-items:center}.stepper button{width:32px;height:32px;border-radius:var(--radius-pill);border:var(--border-button);background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-weight:600;font-size:16px;line-height:1;cursor:pointer;justify-content:center;padding:0;transition:opacity .15s ease}.stepper button:hover:not(:disabled){opacity:.7}.stepper button:disabled{opacity:.3;cursor:not-allowed}.stepper-value{min-width:20px;text-align:center;font-weight:600;font-size:var(--text-body-size);color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.result{flex:0 0 300px;min-width:260px;position:-webkit-sticky;position:sticky;top:24px;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:var(--border-card);border-radius:var(--radius-card);background:var(--surface-page)}.result-label{font-size:var(--text-caption-size);line-height:var(--text-caption-line);color:var(--text-secondary)}.result-value{margin:0;font-weight:var(--text-heading-weight);font-size:var(--text-heading-size);line-height:var(--text-heading-line);letter-spacing:var(--text-heading-tracking);color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.result-note{margin:0;line-height:var(--text-caption-line);color:var(--text-secondary)}.footer,.result-note{font-size:var(--text-caption-size)}.footer{margin-top:var(--space-4)}.footer,.footer a{color:var(--text-muted)}.footer a{text-decoration:underline}@media (max-width:720px){.page{padding:32px 16px 48px}.card{padding:var(--space-4)}.result{order:-1;flex:1 1 100%;top:0;gap:var(--space-2);padding:var(--space-3)}.columns{gap:var(--space-4)}}