@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap";:root{--color-primary: #007aff;--color-accent: #ff9500;--color-success: #34c759;--color-danger: #ff3b30;--color-bg: #f5f5f7;--color-card: #fff;--color-text: #111;--color-label: #555;--color-hint: #777;font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Helvetica Neue,Segoe UI,sans-serif;line-height:1.6;color:var(--color-text);background-color:var(--color-bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;padding:16px}main{max-width:720px;margin:0 auto}.brand-header{display:flex;justify-content:center;margin:0 0 12px}.brand-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:var(--color-text);font-weight:700;font-size:14px}.brand-link img{display:block;border-radius:6px}h1{font-size:20px;text-align:center;margin:0 0 16px}h2{font-size:16px;margin:0 0 12px}h3{font-size:15px;margin:0 0 8px}.lead{font-size:13px;color:var(--color-label);line-height:1.7;text-align:center;margin:0 0 16px}.mode-tabs{display:flex;gap:8px;margin-bottom:16px}.mode-tabs button{flex:1;padding:10px 12px;font-size:14px;font-weight:700;border:none;border-radius:12px;background:var(--color-card);color:var(--color-label);cursor:pointer;font-family:inherit;box-shadow:0 1px 4px #0000000f}.mode-tabs button.active{background:var(--color-primary);color:#fff}.mode-tabs button:not(.active):hover{background:#e8f0fe;color:var(--color-primary)}.import-notice{display:flex;align-items:flex-start;gap:8px;background:#e8f5ee;border:1px solid #c5e6d3;border-left:4px solid var(--color-success);border-radius:12px;padding:10px 12px;margin-bottom:16px;font-size:13px;color:#1b6b34;line-height:1.6}.import-notice-icon{flex-shrink:0;width:18px;height:18px;border-radius:50%;background:var(--color-success);color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;margin-top:2px}.import-notice-close{margin-left:auto;flex-shrink:0;border:none;background:transparent;color:#1b6b34;font-size:18px;line-height:1;padding:0 4px;cursor:pointer}.import-notice-close:hover{color:#0f4a23}.card{background:var(--color-card);border-radius:16px;padding:16px;margin-bottom:16px;box-shadow:0 4px 12px #0000000a}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field label{font-size:13px;color:var(--color-label);font-weight:400}.field input[type=number],.field select{font:inherit;font-size:14px;padding:6px 8px;border:1px solid #ccc;border-radius:8px;background:#fff;width:100%}.field input[type=number]:focus,.field select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #007aff33}.field small{color:var(--color-hint);font-size:12px;line-height:1.5}.field-checkbox label{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--color-text);font-weight:400;cursor:pointer}.field-checkbox input{width:18px;height:18px;accent-color:var(--color-primary)}.result-main{background:linear-gradient(135deg,#007aff,#5e5ce6);color:#fff;border-radius:16px;padding:24px 20px;margin-bottom:16px;text-align:center;box-shadow:0 4px 16px #007aff2e}.result-label{font-size:13px;margin:0 0 10px;opacity:.85;letter-spacing:.05em}.result-value{font-size:28px;font-weight:700;margin:0 0 8px;letter-spacing:.02em}.result-note{font-size:12px;margin:0;opacity:.85}.result-detail{display:grid;grid-template-columns:max-content 1fr;gap:8px 16px;margin:0;font-size:13px}.result-detail dt{color:var(--color-label)}.result-detail dd{margin:0;font-weight:700;color:var(--color-text)}.badge{display:inline-block;background:#fff8e1;color:#92400e;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;margin-left:8px;vertical-align:middle;border:1px solid #ffe082}.breakdown{font-weight:400;font-size:13px;line-height:1.8;color:var(--color-label)}.breakdown>div{display:block}.breakdown-warn{color:#92400e;font-weight:700}.warnings{list-style:none;margin:12px 0 0;padding:0}.warnings li{background:#fff8e1;border-left:4px solid var(--color-accent);border-radius:8px;padding:10px 14px;margin-bottom:8px;font-size:13px;line-height:1.7;color:var(--color-text)}.warnings li:last-child{margin-bottom:0}.error{font-size:13px;color:var(--color-danger);margin:0}.validation-errors{border-left:4px solid var(--color-danger)}.validation-errors .error{font-weight:700;margin-bottom:8px}.validation-errors ul{margin:0;padding-left:20px;font-size:13px;color:var(--color-text);line-height:1.7}.validation-errors li{margin-bottom:4px}.validation-errors li:last-child{margin-bottom:0}.validation-errors strong{color:var(--color-danger);font-weight:700}.error-boundary{border-left:4px solid var(--color-danger)}.error-boundary h2{color:var(--color-danger)}.error-boundary p{font-size:14px;color:var(--color-text);margin:0 0 12px;line-height:1.7}.reload-button{display:inline-block;padding:10px 20px;font-size:14px;font-weight:700;font-family:inherit;background:var(--color-primary);color:#fff;border:none;border-radius:12px;cursor:pointer;margin-top:8px}.reload-button:hover{background:#006fe6}.error-details{margin-top:16px;padding:12px;background:#f5f5f7;border-radius:8px;font-size:12px}.error-details summary{cursor:pointer;font-weight:700;color:var(--color-label)}.error-details pre{margin:8px 0 0;padding:8px;background:#fff;border-radius:6px;font-size:11px;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.disclaimer{background:var(--color-card);border-radius:16px;padding:16px;margin-bottom:16px;box-shadow:0 4px 12px #0000000a}.disclaimer h3{font-size:14px;margin:0 0 8px;color:var(--color-text)}.disclaimer ul{font-size:13px;color:var(--color-text);line-height:1.8;padding-left:20px;margin:0}.disclaimer li{margin-bottom:6px}.disclaimer li:last-child{margin-bottom:0}.disclaimer strong{font-weight:700;color:var(--color-text)}.site-footer{margin-top:24px;padding:20px 16px 8px;text-align:center;font-size:12px;color:var(--color-hint);line-height:1.7;border-top:1px solid #e5e5e7}.footer-brand{font-size:14px;font-weight:700;margin-bottom:4px}.footer-brand a{color:var(--color-primary);text-decoration:none}.footer-brand a:hover{text-decoration:underline}.footer-meta a{color:var(--color-primary);text-decoration:none}.footer-meta a:hover{text-decoration:underline}.footer-nav{margin:8px 0 6px;font-size:12px;line-height:1.9}.footer-nav a{color:var(--color-primary);text-decoration:none;margin:0 2px}.footer-nav a:hover{text-decoration:underline}.footer-copy{margin-top:6px;font-size:11px;color:var(--color-hint)}.ad-footer{margin:24px auto 0;max-width:728px;text-align:center}.ad-label{font-size:.7rem;color:#999;margin-bottom:4px}@media(max-width:600px){body{padding:8px}h1{font-size:18px}.result-value{font-size:24px}}
