:root{font-family:"Noto Sans JP","Hiragino Sans","Yu Gothic",sans-serif;color:#14233e;background:#f3f6fa;font-size:16px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:#164c93;text-underline-offset:4px}button,input,select{font:inherit}button,a,summary{touch-action:manipulation}button,select,input{border:1px solid #a7b5c8;border-radius:9px;background:#fff;color:#14233e}button{cursor:pointer;padding:10px 13px;min-height:44px}button:hover{background:#edf3fc}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bd7717;outline-offset:3px}input,select{padding:11px;min-width:0;max-width:100%;min-height:44px}input[type=checkbox]{min-height:20px;width:20px;height:20px;accent-color:#164c93}.bar{display:flex;justify-content:space-between;gap:24px;align-items:center;background:#0b1736;color:white;padding:20px max(24px,calc((100vw - 1400px)/2))}.brand{font-weight:800;letter-spacing:.02em;font-size:1.3rem;color:white;text-decoration:none}.brand span{font-size:.875rem;font-weight:500;margin-left:12px}.bar nav{display:flex;gap:24px}.bar nav a{font-size:.875rem;color:#e3eafa}main{max-width:1400px;margin:auto;padding:32px 24px}.intro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.eyebrow{color:#5c6472;font-size:.875rem;margin:0 0 8px}h1{font-size:clamp(1.5rem,2.5vw,2.3rem);letter-spacing:-.03em;line-height:1.45;margin:0 0 12px}p{line-height:1.8}h2{font-size:1.125rem;margin:0 0 15px}h3{font-size:1rem}.intro p:last-child{margin:0;color:#46546a}.dated{font-size:.875rem;line-height:1.8;color:#46546a;white-space:nowrap}.workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:start}.controls{background:white;padding:24px;border:1px solid #d8e0eb;border-radius:16px}.controls>label:not(.check){display:block;font-size:.875rem;font-weight:700;margin:22px 0 8px}.controls>label:first-of-type{margin-top:0}.controls>select{width:100%}.amount{display:flex;gap:10px;align-items:center}.amount input{width:100%;font-weight:700;font-size:1.1rem}.amount span{white-space:nowrap;font-size:.875rem}.hint{font-size:.875rem;color:#526077;line-height:1.65;margin:8px 0 12px}.presets{display:flex;gap:5px}.presets button{font-size:.875rem;flex:1;padding:8px 3px}.check{display:flex;gap:10px;align-items:flex-start;margin-top:20px;font-size:.875rem;line-height:1.65}.check input{flex:0 0 20px;margin:2px 0 0}.button-row{display:grid;gap:8px;margin-top:24px}.primary{background:#164c93;color:white;border-color:#164c93}.primary:hover{background:#123e79}.resultbar{display:flex;justify-content:space-between;gap:20px;align-items:start}.resultbar h2{margin:0 0 5px}.resultbar p{font-size:.875rem;margin:0;color:#526077}.resultbar label{font-size:.875rem;display:grid;gap:5px}.resultbar select{padding:7px}.valuation-note{font-size:.875rem;border-left:3px solid #b88635;padding:8px 14px;background:#fff9ee;margin:18px 0;color:#55421f}#summary{font-size:.875rem;margin:16px 0;color:#3c4f6c}#validation{color:#912525;padding:12px;background:#ffeded;border-radius:8px}.card{border:1px solid #d8e0eb;border-radius:16px;background:white;margin:0 0 16px;overflow:hidden}.card-top{display:grid;grid-template-columns:1fr auto;gap:20px;padding:22px 24px 16px}.card h3{font-size:1.08rem;line-height:1.6;margin:3px 0 7px}.issuer{font-size:.875rem;color:#526077}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tag{font-size:.8rem;border:1px solid #d8e0eb;border-radius:5px;padding:3px 7px;line-height:1.5}.tag.owned{border-color:#acc6d7;background:#eaf4fb;color:#184b6c}.net{text-align:right;align-self:start}.net small{display:block;font-size:.875rem;color:#526077}.net strong{display:block;font-size:1.9rem;font-variant-numeric:tabular-nums;color:#124c6e;letter-spacing:-.04em;white-space:nowrap}.net.negative strong{color:#7d4d38}.numbers{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #edf0f5;border-bottom:1px solid #edf0f5;padding:14px 24px;gap:12px}.numbers span{display:block;font-size:.8rem;color:#526077;margin-bottom:5px}.numbers b{font-size:1rem;font-variant-numeric:tabular-nums}.card-actions{display:flex;justify-content:space-between;gap:15px;padding:14px 24px;align-items:center}.card-actions label{display:flex;gap:8px;align-items:center;font-size:.875rem}.card-actions a{font-size:.875rem;font-weight:700}.card details{padding:0 24px 16px}.card summary{font-size:.875rem;padding:10px 0;cursor:pointer;font-weight:700}.card details p{font-size:.875rem;color:#46546a}.card details .edit{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.875rem;margin:12px 0}.card details .edit input{width:160px}.card ul{padding-left:20px;font-size:.875rem;color:#46546a;line-height:1.85}.source{font-size:.8rem}.empty{background:#fff;border:1px solid #d8e0eb;padding:24px;border-radius:12px}.method{margin:38px 0 16px;background:#e7edf5;padding:28px;border-radius:16px}.method-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 35px}.method h3{margin:0 0 8px}.method p{font-size:.875rem;color:#3c4f6c;margin:0 0 10px}footer{display:flex;gap:20px;justify-content:space-between;margin-top:25px;font-size:.875rem;color:#526077;padding-bottom:30px}@media(max-width:900px){.workspace{grid-template-columns:260px minmax(0,1fr);gap:18px}.card-top{grid-template-columns:1fr}.net{text-align:left}.numbers{grid-template-columns:repeat(2,1fr)}.resultbar{flex-direction:column}.controls{padding:18px}.card-actions{flex-wrap:wrap}}@media(max-width:680px){main{padding:24px 16px}.bar{padding:17px 16px;flex-wrap:wrap;gap:14px}.bar nav{gap:20px}.intro{display:block}.dated{display:block;margin-top:12px}.dated br{display:none}.dated b{margin-left:10px}.workspace{display:block}.controls{margin-bottom:25px}.intro h1{font-size:1.6rem}.card-top,.card-actions{padding-left:18px;padding-right:18px}.card details{padding-left:18px;padding-right:18px}.numbers{padding:14px 18px}.method{padding:22px}.method-grid{grid-template-columns:1fr}.method-grid>div+div{margin-top:8px}footer{flex-direction:column}.resultbar{flex-direction:row;flex-wrap:wrap}.net strong{font-size:1.8rem}}@media print{.controls,.bar nav,.card-actions,.card details,#export,footer{display:none}.workspace{display:block}.card{break-inside:avoid}.method{background:#fff}.intro{margin-bottom:10px}main{padding:0}.card-top{grid-template-columns:1fr auto}}

.numbers{margin:0}.numbers dt{font-size:.8rem;color:#526077;margin-bottom:5px}.numbers dd{margin:0;font-size:1rem;font-weight:700}.card>.source{padding:0 24px}.card details .edit>label:not(.check){display:grid;gap:6px}.card details .edit .check{width:100%;margin-top:0}.card details .edit input[type=checkbox]{width:20px}.official{display:inline-flex;align-items:center;min-height:44px}button:disabled{cursor:default;opacity:.5}

.annual-options{margin-top:20px}.annual-options summary{cursor:pointer;min-height:44px;align-content:center;font-size:.875rem;font-weight:700}.annual-options>label:not(.check){display:block;font-size:.875rem;font-weight:700;margin:18px 0 8px}
