:root{--color-bg:#f8fafc;--color-surface:#fff;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-text-main:#1e293b;--color-text-sub:#64748b;--color-text-muted:#94a3b8;--accent:#4f46e5;--accent-light:#eef2ff;--accent-hover:#4338ca;--color-net:#16a34a;--color-net-light:#f0fdf4;--color-tax:#dc2626;--color-tax-light:#fef2f2;--color-social:#ea580c;--color-social-light:#fff7ed;--color-profit:#2563eb;--color-profit-light:#eff6ff;--color-deficit:#ef4444;--shadow-sm:0 1px 3px #00000012, 0 1px 2px #0000000a;--shadow-md:0 4px 6px -1px #00000014, 0 2px 4px -1px #0000000d;--radius:12px;--radius-sm:8px;color:var(--color-text-main);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,system-ui,sans-serif;font-size:14px;line-height:1.6}*,:before,:after{box-sizing:border-box}body{margin:0;padding:0}h1,h2,h3,h4{color:var(--color-text-main);margin:0;line-height:1.3}p{margin:0}ul{margin:0;padding:0 0 0 1.4em}li{margin:4px 0}#root{min-height:100vh}.app-container{background:var(--color-bg);flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);padding:20px 24px}.header-inner{max-width:1400px;margin:0 auto}.app-title{color:var(--color-text-main);letter-spacing:-.3px;font-size:22px;font-weight:700}.app-subtitle{color:var(--color-text-sub);margin-top:4px;font-size:13px}.app-main{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:24px 16px 40px}.layout-grid{grid-template-columns:320px 1fr;align-items:start;gap:20px;display:grid}@media (width<=900px){.layout-grid{grid-template-columns:1fr}}.sidebar{flex-direction:column;gap:16px;display:flex;position:sticky;top:16px}@media (width<=900px){.sidebar{position:static}}.results-column{flex-direction:column;gap:20px;display:flex}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px}.panel-title{color:var(--color-text-main);border-bottom:1px solid var(--color-border);margin-bottom:16px;padding-bottom:10px;font-size:15px;font-weight:700}.form-group{margin-bottom:16px}.form-label{color:var(--color-text-sub);text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.form-label-sub{color:var(--color-text-muted);text-transform:none;letter-spacing:0;margin-top:2px;font-size:11px;font-weight:400;display:block}.main-input-label{color:var(--accent)}.input-with-unit{align-items:center;gap:8px;display:flex}.input-with-unit.narrow{flex-shrink:0;width:96px}.form-input{border:1px solid var(--color-border);border-radius:var(--radius-sm);height:38px;color:var(--color-text-main);background:var(--color-surface);outline:none;flex:1;min-width:0;padding:0 10px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.form-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.form-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-input[type=number]{-moz-appearance:textfield}.unit{color:var(--color-text-sub);white-space:nowrap;font-size:13px}.slider-row{align-items:center;gap:10px;display:flex}.slider{-webkit-appearance:none;background:var(--color-border);cursor:pointer;border-radius:4px;outline:none;flex:1;min-width:0;height:5px}.slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--color-text-sub);width:18px;height:18px;box-shadow:var(--shadow-sm);cursor:pointer;border:2px solid #fff;border-radius:50%;transition:background .15s,transform .1s}.slider::-webkit-slider-thumb:hover{background:var(--color-text-main);transform:scale(1.15)}.accent-slider{background:linear-gradient(to right, var(--accent-light), var(--accent-light))}.accent-slider::-webkit-slider-thumb{background:var(--accent)}.accent-slider::-webkit-slider-thumb:hover{background:var(--accent-hover)}.derived-value{color:var(--color-text-sub);margin-top:6px;font-size:12px}.derived-value strong{color:var(--color-text-main);font-weight:600}.highlight-group{background:var(--accent-light);border-radius:var(--radius-sm);border:1px solid #4f46e533;margin-left:-12px;margin-right:-12px;padding:12px}.form-select{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;height:38px;color:var(--color-text-main);background:var(--color-surface);cursor:pointer;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;outline:none;padding:0 30px 0 10px;font-family:inherit;font-size:14px;transition:border-color .15s}.form-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.kpi-card{padding:16px}.kpi-item{flex-direction:column;gap:2px;padding:8px 0;display:flex}.kpi-label{color:var(--color-text-sub);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.kpi-value{font-size:22px;font-weight:700;line-height:1.2}.kpi-value.net{color:var(--color-net)}.kpi-value.burden{color:var(--color-tax)}.kpi-value.accent{color:var(--accent)}.kpi-sub{color:var(--color-text-muted);font-size:11px}.kpi-divider{background:var(--color-border-light);height:1px;margin:4px 0}.chart-card{padding:16px 16px 12px}.chart-title{color:var(--color-text-main);margin-bottom:12px;font-size:14px;font-weight:700}.table-wrapper{overflow-x:auto}.summary-table{border-collapse:collapse;width:100%;font-size:13px}.summary-table th{text-align:left;color:var(--color-text-sub);background:var(--color-bg);border-bottom:2px solid var(--color-border);white-space:nowrap;padding:8px 10px;font-size:11px;font-weight:600}.summary-table th.table-value-yen,.summary-table th.table-value-man{text-align:right}.table-label{color:var(--color-text-main);padding:7px 10px}.table-label.indent{color:var(--color-text-sub);padding-left:22px}.table-value-yen,.table-value-man{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;padding:7px 10px}.table-value-yen{font-size:13px}.table-value-man{color:var(--color-text-sub);font-size:12px}.table-row{border-bottom:1px solid var(--color-border-light);transition:background .1s}.table-row:hover{background:var(--color-bg)}.bold-row td{font-weight:600}.tax-row .table-value-yen,.tax-row .table-value-man{color:var(--color-tax)}.social-row .table-value-yen,.social-row .table-value-man{color:var(--color-social)}.net-row .table-value-yen,.net-row .table-value-man{color:var(--color-net)}.profit-row .table-value-yen,.profit-row .table-value-man{color:var(--color-profit)}.deficit-row .table-value-yen,.deficit-row .table-value-man{color:var(--color-deficit)}.burden-row td{background:var(--color-tax-light)}.section-header td{color:var(--color-text-sub);text-transform:uppercase;letter-spacing:.6px;background:var(--color-bg);border-top:2px solid var(--color-border);border-bottom:none;padding:10px 10px 6px;font-size:12px;font-weight:700}.subsection-header td{color:var(--color-text-muted);background:0 0;border-bottom:none;padding:8px 22px 4px;font-size:12px;font-weight:600}.total-section td{border-top:3px solid var(--color-border)}.totals-highlight{border:1px solid var(--color-border);border-radius:var(--radius-sm);gap:0;margin-top:16px;display:flex;overflow:hidden}.totals-item{border-right:1px solid var(--color-border);flex-direction:column;flex:1;gap:3px;padding:14px 16px;display:flex}.totals-item:last-child{border-right:none}.totals-label{color:var(--color-text-sub);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.totals-value{font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.totals-value.burden{color:var(--color-tax)}.totals-value.net{color:var(--color-net)}.totals-sub{color:var(--color-text-muted);font-size:11px}.deficit-note{color:var(--color-tax);background:var(--color-tax-light);border-radius:var(--radius-sm);margin-top:12px;padding:8px 12px;font-size:12px}.disclaimer{background:#fffbeb;border-color:#fde68a;margin-top:20px}.disclaimer-title{color:#92400e;margin-bottom:12px;font-size:13px;font-weight:700}.disclaimer-content{flex-wrap:wrap;gap:24px;display:flex}.disclaimer-section{flex:1;min-width:240px}.disclaimer-section h4{color:#78350f;margin-bottom:6px;font-size:12px;font-weight:700}.disclaimer-section ul{color:#92400e;font-size:12px;line-height:1.8}.disclaimer-section p{color:#92400e;font-size:12px;line-height:1.7}.disclaimer-section.warning{border-radius:var(--radius-sm);background:#fef3c7;padding:12px}.error-card{color:var(--color-tax);font-size:14px;line-height:1.7}.error-note{color:var(--color-text-sub);margin-top:8px;font-size:12px}.app-footer{border-top:1px solid var(--color-border);background:var(--color-surface);text-align:center;padding:16px 24px}.app-footer p{color:var(--color-text-muted);font-size:12px}@media (width<=600px){.app-main{padding:16px 12px 32px}.card{padding:14px}.totals-highlight{flex-direction:column}.totals-item{border-right:none;border-bottom:1px solid var(--color-border)}.totals-item:last-child{border-bottom:none}.disclaimer-content{flex-direction:column}}
