.tax-calc-widget{margin:2rem 0;padding:1.75rem;background:rgba(255,255,255,3%);border:1px solid rgba(255,255,255,.12);border-radius:1rem;box-shadow:0 10px 25px -5px rgba(0,0,0,.2),0 8px 10px -6px rgba(0,0,0,.1);font-family:inherit;color:inherit}:root:not(.dark) .tax-calc-widget{background:#fdfdfe;border:1px solid #e2e8f0;box-shadow:0 10px 25px -5px rgba(0,0,0,5%),0 8px 10px -6px rgba(0,0,0,3%)}.tax-calc-header{margin-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:1rem}:root:not(.dark) .tax-calc-header{border-bottom-color:#e2e8f0}.tax-calc-title{font-size:1.5rem;font-weight:700;margin:0 0 .25rem;display:flex;align-items:center;gap:.5rem}.tax-calc-subtitle{font-size:.9rem;opacity:.8;margin:0}.tax-calc-grid{display:grid;grid-template-columns:1fr;gap:2rem}.tax-calc-widget [hidden]{display:none!important}.tax-calc-widget{container-type:inline-size}.tax-calc-widget *,.tax-calc-widget *::before{box-sizing:border-box}.tax-calc-controls,.tax-calc-results,.tax-input-group{min-width:0}.tax-calc-widget .tax-input-help{margin:0;line-height:1.5;opacity:.85}.tax-control-label{font-size:.9rem;font-weight:600}.tax-calc-widget button:focus-visible,.tax-calc-widget select:focus-visible,.tax-calc-widget input:focus-visible{outline:3px solid #60a5fa;outline-offset:3px}.dark .tax-select{color-scheme:dark}.tax-calc-widget #tax-calc-social{padding-left:.75rem;font-size:1rem}@container(min-width:780px){.tax-calc-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  }
}.tax-calc-controls{display:flex;flex-direction:column;gap:1.25rem}.tax-input-group{display:flex;flex-direction:column;gap:.4rem}.tax-input-group label{font-size:.9rem;font-weight:600}.tax-input-help{font-size:.78rem;opacity:.7}.tax-salary-input-wrap{position:relative;display:flex;align-items:center}.tax-currency-symbol{position:absolute;left:.85rem;font-size:1.1rem;font-weight:700;opacity:.7;pointer-events:none}.tax-input-text{width:100%;padding:.65rem 1rem .65rem 2.2rem;font-size:1.25rem;font-weight:700;border-radius:.5rem;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,5%);color:inherit;transition:border-color .2s,box-shadow .2s}:root:not(.dark) .tax-input-text{background:#fff;border:1px solid #cbd5e1}.tax-input-text:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.25)}.tax-slider{width:100%;height:6px;border-radius:3px;background:#4b5563;outline:none;cursor:pointer;accent-color:#3b82f6;margin-top:.4rem}:root:not(.dark) .tax-slider{background:#cbd5e1}.tax-presets{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.25rem}.tax-preset-btn{background:rgba(255,255,255,8%);border:1px solid rgba(255,255,255,.15);color:inherit;font-size:.8rem;font-weight:600;padding:.25rem .65rem;border-radius:9999px;cursor:pointer;transition:all .15s ease}:root:not(.dark) .tax-preset-btn{background:#f1f5f9;border-color:#e2e8f0}.tax-preset-btn:hover{background:#3b82f6;color:#fff;border-color:#3b82f6}.tax-segment-group{display:flex;gap:.5rem;background:rgba(255,255,255,6%);padding:.25rem;border-radius:.5rem;border:1px solid rgba(255,255,255,.1)}:root:not(.dark) .tax-segment-group{background:#f1f5f9;border-color:#e2e8f0}.tax-segment-btn{flex:1;text-align:center;padding:.45rem .5rem;font-size:.85rem;font-weight:600;border-radius:.35rem;background:0 0;border:none;cursor:pointer;color:inherit;transition:all .15s ease}.tax-segment-btn.active{background:#3b82f6;color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.15)}.tax-row-2{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1fr);gap:1rem}.tax-select{width:100%;padding:.5rem .75rem;border-radius:.5rem;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,5%);color:inherit;font-size:.9rem}:root:not(.dark) .tax-select{background:#fff;border-color:#cbd5e1}.tax-calc-results{display:flex;flex-direction:column;gap:1.25rem}.tax-card-takehome{background:linear-gradient(135deg,rgba(34,197,94,.15),rgba(16,185,129,5%));border:1px solid rgba(34,197,94,.3);border-radius:.75rem;padding:1.25rem;text-align:center}:root:not(.dark) .tax-card-takehome{background:linear-gradient(135deg,#ecfdf5,#f0fdf4);border-color:#a7f3d0}.tax-takehome-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;opacity:.8;margin-bottom:.25rem}.tax-takehome-amount{font-size:2.2rem;font-weight:800;color:#10b981;line-height:1.1;margin:.25rem 0}:root:not(.dark) .tax-takehome-amount{color:#059669}.tax-takehome-sub{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;font-size:.85rem;margin-top:.4rem;font-weight:600;opacity:.85}.tax-visual-bar-wrap{display:flex;flex-direction:column;gap:.4rem}.tax-visual-bar{display:flex;height:1.2rem;border-radius:9999px;overflow:hidden;background:rgba(255,255,255,.1)}.tax-bar-segment{height:100%;transition:width .3s ease}.tax-bar-takehome{background-color:#10b981}.tax-bar-social{background-color:#3b82f6}.tax-bar-income{background-color:#f59e0b}.tax-bar-inhabitant{background-color:#8b5cf6}.tax-bar-ideco{background-color:#64748b}.tax-bar-legend{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;font-size:.75rem}.tax-legend-item{display:flex;align-items:center;gap:.35rem}.tax-legend-dot{width:8px;height:8px;border-radius:50%}.tax-card-furusato{background:linear-gradient(135deg,rgba(239,68,68,.1),rgba(244,63,94,5%));border:1px solid rgba(239,68,68,.25);border-radius:.75rem;padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem}:root:not(.dark) .tax-card-furusato{background:linear-gradient(135deg,#fff1f2,#fff5f5);border-color:#fecdd3}.tax-furusato-icon{font-size:2rem;line-height:1}.tax-furusato-icon .tax-line-icon{width:2rem;height:2rem}.tax-calc-widget .tax-income-value{color:#b45309}.tax-calc-widget .tax-residence-value{color:#6d28d9}.dark .tax-calc-widget .tax-income-value{color:#fbbf24}.dark .tax-calc-widget .tax-residence-value{color:#c4b5fd}.dark .tax-furusato-val{color:#fda4af}.tax-furusato-text{flex:1}.tax-furusato-title{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.8;margin-bottom:.15rem}.tax-furusato-val{font-size:1.4rem;font-weight:800;color:#e11d48}.tax-furusato-note{font-size:.75rem;opacity:.75;margin-top:.1rem}.tax-table-wrap{border:1px solid rgba(255,255,255,.1);border-radius:.5rem;overflow:hidden;font-size:.85rem}:root:not(.dark) .tax-table-wrap{border-color:#e2e8f0}.tax-breakdown-table{width:100%;border-collapse:collapse;margin:0}.tax-breakdown-table th,.tax-breakdown-table td{padding:.5rem .75rem;text-align:left}.tax-breakdown-table th:last-child,.tax-breakdown-table td:last-child{text-align:right;font-weight:600;white-space:nowrap}.tax-breakdown-table tr:not(:last-child){border-bottom:1px solid rgba(255,255,255,6%)}:root:not(.dark) .tax-breakdown-table tr:not(:last-child){border-bottom-color:#f1f5f9}.tax-breakdown-table tr.total-row{background:rgba(255,255,255,4%);font-weight:700}:root:not(.dark) .tax-breakdown-table tr.total-row{background:#f8fafc}.tax-calc-footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,8%);font-size:.75rem;opacity:.7;line-height:1.4}:root:not(.dark) .tax-calc-footer{border-top-color:#e2e8f0}@container(max-width:440px){.tax-row-2 { grid-template-columns: 1fr; }
  .tax-takehome-sub { gap: .3rem; flex-direction: column; }
  .tax-breakdown-table th, .tax-breakdown-table td { padding: .6rem .4rem; }
  .tax-calc-title { font-size: 1.3rem; }
  .tax-takehome-amount { font-size: clamp(1.5rem, 8cqi, 2.2rem); }
}@media(max-width:480px){.tax-calc-widget{padding:1rem}.tax-card-furusato{padding:.85rem;gap:.6rem}.tax-card-takehome{padding:1rem .5rem}}@media(prefers-reduced-motion:reduce){.tax-calc-widget *{transition:none}}