*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,sans-serif;background:#f4f7fb;color:#333;font-size:15px}.app-header{background:#2e6da4;color:#fff;padding:16px 24px;box-shadow:0 2px 8px rgba(0,0,0,.12)}.app-header h1{font-size:20px;font-weight:700}.app-header p{font-size:13px;opacity:.8;margin-top:2px}.app-main{max-width:1300px;margin:24px auto;padding:0 16px 60px}.card{background:#fff;border-radius:12px;padding:22px;margin-bottom:20px;box-shadow:0 1px 4px rgba(0,0,0,.07)}.card h2{font-size:16px;font-weight:700;margin-bottom:18px;color:#2e6da4;border-left:4px solid #2e6da4;padding-left:10px}.grid-2{grid-template-columns:1fr 1fr;grid-gap:16px}.grid-2,.grid-3{display:grid;gap:16px}.grid-3{grid-template-columns:1fr 1fr 1fr;grid-gap:16px}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:13px;color:#555;font-weight:600}.field input{padding:8px 10px;border:1px solid #d6dfe9;border-radius:8px;font-size:14px;font-family:inherit;outline:none}.field input:focus{border-color:#2e6da4}.field .unit{font-size:12px;color:#888;margin-top:2px}.scenario-row{display:grid;grid-template-columns:160px 1fr 1fr;grid-gap:12px;gap:12px;align-items:end;margin-bottom:10px}.period-group{margin-bottom:24px}.period-group h3{font-size:15px;font-weight:700;color:#2e6da4;margin-bottom:12px;padding:8px 14px;background:#eef3f9;border-radius:8px}.scenario-cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.scenario-card{border-radius:10px;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.08)}.scenario-card-header{padding:10px 14px;color:#fff;font-weight:700;font-size:14px}.scenario-card-body{background:#fff;padding:12px 14px}.yield-row{display:flex;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #f0f2f5}.yield-badge{flex:1 1;text-align:center;padding:6px;border-radius:6px;background:#eef3f9}.yield-badge .yl{font-size:11px;color:#666}.yield-badge .yv{font-size:15px;font-weight:700;color:#2e6da4}.metric-row{display:flex;justify-content:space-between;align-items:baseline;padding:5px 0;border-bottom:1px solid #f0f2f5;font-size:13px}.metric-row:last-child{border-bottom:none}.metric-label{color:#666}.metric-value{font-weight:600}.metric-value.profit{color:#2e7d50;font-size:15px}.metric-value.loss{color:#c25555;font-size:15px}.metric-value.rate{font-size:15px;color:#2e6da4}.result-table{width:100%;border-collapse:collapse;font-size:13px;min-width:700px}.result-table td,.result-table th{padding:7px 10px;border:1px solid #dde3ea;text-align:center;white-space:nowrap}.rt-label-col{background:#eef3f9;color:#2e6da4;font-weight:700;min-width:120px}.rt-scenario-th{color:#fff;font-weight:700;font-size:13px;padding:9px 12px}.rt-period-th{background:#f5f8fc;color:#2e6da4;font-weight:600;font-size:12px}.rt-label{background:#f9fafb;color:#444;font-weight:600;text-align:left;min-width:130px}.rt-val{color:#333;font-weight:600;min-width:80px}.rt-dim{color:#aaa;font-weight:400;font-size:12px}.rt-yield{color:#2e6da4;font-size:14px;font-weight:700}.rt-profit{color:#2e7d50;font-weight:700}.rt-loss{color:#c25555;font-weight:700}.rt-section-row td{background:#eef3f9;color:#2e6da4;font-size:12px;font-weight:600;text-align:left;padding:5px 10px;border-color:#d0dcea}.result-table tbody tr:hover td{background-color:#f0f5fb}.result-table tbody tr:hover .rt-section-row td,.rt-section-row:hover td{background:#eef3f9}@media (max-width:768px){.grid-2,.grid-3,.scenario-cards{grid-template-columns:1fr}.scenario-row{grid-template-columns:1fr 1fr}}