.ccp-title-part{display:inline-block;white-space:nowrap}
.ccp{color:#203e34;font-size:1rem;line-height:1.8}.ccp p{text-wrap:pretty;margin:10px 0}.ccp h2{font-size:1.5rem;line-height:1.5;text-wrap:balance}.ccp h3{font-size:1.16rem;line-height:1.55;text-wrap:balance}.ccp-tail{white-space:nowrap}.ccp-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0 42px}.ccp-principles article{padding:25px;border-radius:20px;background:#204536;color:#fff}.ccp-principles h2{font-size:1.3rem}.ccp-label{font-size:.9rem;color:#ffe0a3;font-weight:700}.ccp-principles p{color:#eef5f1}.ccp-filters{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.ccp-filters button{font:inherit;font-weight:700;border:1px solid #b7c8bf;background:white;color:#254538;padding:10px 18px;border-radius:30px;cursor:pointer}.ccp-filters button[aria-pressed=true]{background:#204536;color:#fff;border-color:#204536}.ccp button:focus-visible,.ccp a:focus-visible,.ccp summary:focus-visible,.ccp-calculator>summary:focus-visible{outline:3px solid #b95723;outline-offset:4px}.ccp-count{font-size:.9rem;color:#53635a}.ccp-cards{display:grid;gap:18px}.ccp-card{border:1px solid #d4dfd8;background:#fff;border-radius:20px;overflow:hidden}.ccp-card[hidden]{display:none}.ccp-card h3{margin:0;padding:18px 24px;border-bottom:1px solid #d4dfd8}.ccp-card h3 span{color:#9d4c24;font-size:.9rem;margin-right:14px}.ccp-pair{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.ccp-pair>div{padding:20px 24px;min-width:0}.ccp-pair h4{font-size:.95rem;margin:0;color:#526059}.ccp-pair .ccp-insurance{background:#f2f5f3}.ccp-pair .ccp-ideal{background:#fff3e6;border-left:3px solid #cf7136}.ccp-ideal h4{color:#7c3815}.ccp-source{font-size:.9rem;color:#714124;text-decoration:underline;text-underline-offset:3px;display:inline-block}.ccp-condition{font-size:.95rem;color:#526059;background:#f7f8f6;padding:16px 24px;margin:0!important}.ccp-condition b{display:block;color:#714124;margin-bottom:5px}.ccp-maturity,.ccp-renewal,.ccp-detail-section{margin:40px 0;padding:28px;border:1px solid #d4dfd8;border-radius:22px;background:#fff}.ccp-maturity h2,.ccp-renewal h2,.ccp-detail-section h2{margin-top:0}.ccp-income-parts{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:22px 0}.ccp-income-parts>div{padding:20px;background:#edf5ef;border-radius:14px}.ccp-income-parts>span{font-size:1.5rem}.ccp details{margin-top:20px}.ccp summary,.ccp-calculator>summary{cursor:pointer;font-weight:700;padding:12px 0;line-height:1.6}.ccp li{margin:12px 0}.ccp-footnote{color:#59675f;font-size:.9rem}.ccp-calculator{margin-top:36px;border-top:1px solid #ccd8d0;padding-top:20px}.ccp-calculator>summary{font-size:1.2rem;color:#204536}.ccp-calculator>p{line-height:1.8;text-wrap:pretty}.ccp-calculator .mini-tool-layout{margin-top:24px}
@media(max-width:850px){.ccp-principles{grid-template-columns:1fr}.ccp-principles article{padding:22px}.ccp-principles h2{margin:5px 0}.ccp-pair{grid-template-columns:1fr}.ccp-income-parts{grid-template-columns:1fr;gap:8px}.ccp-income-parts>span{text-align:center}.ccp-maturity,.ccp-renewal,.ccp-detail-section{padding:22px}.ccp-card h3,.ccp-pair>div,.ccp-condition{padding:18px 20px}.ccp-filters button{padding:10px 14px}}
.ccp-income-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.ccp-income-grid article{padding:22px;background:#f3f6f3;border-radius:14px;min-width:0}.ccp-income-grid h3{margin-top:0}.ccp-meaning{color:#714124}.ccp-rate-table{width:100%;border-collapse:collapse;font-size:1rem;margin:24px 0}.ccp-rate-table caption{text-align:left;font-weight:700;margin-bottom:12px}.ccp-rate-table th,.ccp-rate-table td{padding:12px 8px;border-bottom:1px solid #d4dfd8;text-align:center}.ccp-rate-table th:first-child{text-align:left}.ccp-rate-table thead{background:#204536;color:#fff}.ccp-rate-table tbody tr:nth-child(even){background:#f3f6f3}.ccp-evidence{background:#f8f8f6}
@media(max-width:600px){.ccp-income-grid{grid-template-columns:1fr}.ccp-rate-table{font-size:.9rem}.ccp-rate-table th,.ccp-rate-table td{padding:12px 5px}}

.ccp .ccp-row-details{margin:0;padding:0 24px;border-top:1px solid #e3e8e4;background:#fafbf9}.ccp-row-details>summary{font-size:.9rem;font-weight:400;color:#657269;padding:9px 0}.ccp-row-details>p{font-size:.95rem}.ccp-row-details>.ccp-source{margin-bottom:14px}.ccp-more{border-top:1px solid #ccd8d0;padding-top:12px}.ccp-more>summary{font-size:1.2rem}.ccp-pair p{font-size:1.08rem;line-height:1.75}@media(max-width:850px){.ccp .ccp-row-details{padding:0 20px}}
