.uc-page { color:#233d50; font-size:16px; line-height:1.65; min-width:0; }
.uc-page * { box-sizing:border-box; }
#content.uc-page h1 { font-size:2rem; line-height:1.3; letter-spacing:0; color:#152c41; margin:0 0 12px; word-break:keep-all; overflow-wrap:break-word; }
#content.uc-page h2 { color:#203c50; font-size:1.3rem; line-height:1.45; letter-spacing:0; margin:0 0 18px; }
#content.uc-page h3 { color:#294e60; font-size:1.05rem; font-weight:700; margin:0 0 16px; }
.uc-page p,.uc-page li { color:#4d6579; }
.uc-page a { color:#087b72; }
.uc-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; font-size:.82rem; color:#6b8596; margin-bottom:20px; }
.uc-header { display:flex; align-items:center; gap:18px; margin-bottom:20px; }
.uc-header > div { min-width:0; flex:1; }
.uc-header img { width:72px; height:72px; flex:none; object-fit:cover; border-radius:4px; }
.uc-header p:last-child { font-size:1rem; margin:0; }
.uc-kicker { font-size:.84rem; font-weight:700; color:#08786f!important; margin:0 0 9px; }
.uc-jump { display:flex; flex-wrap:wrap; gap:12px 22px; border-top:1px solid #d7e3ea; border-bottom:1px solid #d7e3ea; padding:11px 0; margin-bottom:20px; }
.uc-jump a { font-size:.86rem; font-weight:700; text-decoration:none; }
.uc-notice { border-left:3px solid #0b8375; background:#f0f7f5; padding:12px 14px; font-size:.84rem; margin:18px 0 22px; }
.uc-section { padding-top:25px; margin-top:30px; border-top:1px solid #d4e2e9; scroll-margin-top:90px; }
.uc-mode { border:0; padding:0; margin:0 0 20px; min-width:0; }
.uc-mode legend { color:#335164; font-weight:700; font-size:.9rem; margin-bottom:9px; }
.uc-mode > div { display:flex; border:1px solid #bed1dc; border-radius:4px; overflow:hidden; }
.uc-mode label { display:flex; align-items:center; gap:7px; flex:1; padding:10px 12px; font-size:.85rem; font-weight:700; color:#35556b; cursor:pointer; }
.uc-mode label + label { border-left:1px solid #bed1dc; }
.uc-mode label:has(input:checked) { background:#eaf5f2; color:#096f65; }
.uc-page input[type="radio"],.uc-page input[type="checkbox"] { appearance:auto; width:17px; height:17px; margin:0; accent-color:#087d70; flex:none; }
.uc-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px 20px; }
.uc-grid label { display:block; min-width:0; color:#305266; font-weight:700; font-size:.9rem; }
.uc-page :is(input:not([type="checkbox"]):not([type="radio"]),select) { display:block; height:44px; width:100%; min-width:0; margin-top:7px; padding:8px 10px; border:1px solid #b9ccd9; border-radius:4px; background:#fff; color:#233e51; font:inherit; font-size:.9rem; box-shadow:none; }
.uc-unit { position:relative; }
.uc-unit input { padding-right:45px!important; }
.uc-unit > span { position:absolute; top:12px; right:10px; font-size:.8rem; font-weight:400; color:#688496; }
.uc-grid small { display:block; font-size:.77rem; font-weight:400; line-height:1.5; color:#6d8392; margin-top:6px; }
.uc-checkbox { display:flex; gap:9px; align-items:flex-start; color:#375a6e; font-size:.85rem; margin:14px 0; }
.uc-checkbox input { margin-top:4px!important; }
.uc-hint { font-size:.82rem; line-height:1.6; color:#647e90!important; margin:12px 0; }
.uc-lower-note { margin:16px 0; border-left:3px solid #b08b39; background:#fbf8f0; padding:12px 14px; }
.uc-lower-note p { font-size:.83rem; margin:0; }
.uc-lower-note label { margin-bottom:0; }
.uc-error { font-size:.86rem; font-weight:700; color:#9c3636!important; margin:12px 0 8px; min-height:1.2em; }
.uc-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:13px; }
#content.uc-page button { appearance:none; width:auto; min-height:44px; border:1px solid #087c70; border-radius:4px; padding:10px 16px; background:#087c70; color:#fff; font:inherit; font-size:.9rem; font-weight:700; cursor:pointer; box-shadow:none; }
#content.uc-page button:hover { background:#076459; }
#content.uc-page button.uc-secondary { color:#315367; background:#fff; border-color:#b8ceda; }
#content.uc-page button.uc-secondary:hover { background:#f1f7f6; }
.uc-result { border-top:1px solid #bfd9d4; margin-top:25px; padding-top:22px; }
.uc-monthly { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); background:#0d7066; color:#fff; margin:0 0 16px; }
.uc-monthly > div { min-width:0; padding:18px 20px; }
.uc-monthly > div + div { border-left:1px solid #4e9990; }
.uc-monthly span { display:block; font-size:.83rem; color:#e4f4ef; }
#content.uc-page .uc-monthly strong { display:block; color:#fff; font-size:1.65rem; line-height:1.4; margin-top:6px; overflow-wrap:anywhere; }
.uc-page dl { margin:0; }
.uc-page dl > div { display:flex; justify-content:space-between; align-items:flex-start; gap:15px; padding:10px 0; border-bottom:1px solid #dce6ec; font-size:.9rem; }
.uc-page dt { color:#607f91; }
.uc-page dd { margin:0; color:#24475b; font-weight:700; text-align:right; overflow-wrap:anywhere; }
.uc-page .uc-total-row { background:#f2f6fa; padding:10px 12px; }
.uc-process { margin:20px 0; padding:15px 0; border-top:1px solid #d3e3eb; border-bottom:1px solid #d3e3eb; }
.uc-process summary,.uc-faq summary { cursor:pointer; color:#345569; font-size:.9rem; font-weight:700; }
.uc-process ol { margin:14px 0; padding-left:22px; font-size:.84rem; }
.uc-process li { margin-bottom:8px; }
#uc-copy-status { font-size:.82rem; color:#668495; min-height:1.2em; margin:8px 0; }
.uc-check-result { border-top:2px solid #8dbaaf; margin:22px 0 0; padding-top:17px; }
.uc-check-result ul { list-style:none; padding:0; margin:0; }
.uc-check-result li { padding:10px 0; border-bottom:1px solid #dce7ec; font-size:.85rem; }
.uc-check-result li strong { display:block; font-weight:700; color:#345667; }
#uc-deadline-date { color:#08776c; font-size:1.45rem; font-weight:700; }
.uc-guide h2 { margin:26px 0 10px!important; }
.uc-guide h2:first-child { margin-top:0!important; }
.uc-guide p,.uc-guide li,.uc-faq p,.uc-sources p,.uc-sources li { font-size:.92rem; }
.uc-table-wrap { overflow-x:auto; margin:18px 0; }
.uc-page table { width:100%; border-collapse:collapse; font-size:.86rem; table-layout:fixed; }
.uc-page caption { text-align:left; color:#668293; font-size:.8rem; padding-bottom:7px; }
.uc-page th,.uc-page td { padding:8px 12px; border-bottom:1px solid #d9e5ec; color:#375a70; text-align:left; }
.uc-page thead { background:#edf4f6; }
.uc-faq details { border:1px solid #d1e0e8; border-radius:4px; margin:0 0 8px; padding:13px 14px; }
.uc-faq p { margin:12px 0 0; }
.uc-related > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.uc-related a { border:1px solid #d0dfe8; border-radius:4px; padding:13px 14px; font-size:.88rem; font-weight:700; color:#315669; text-decoration:none; }
.uc-page [hidden] { display:none!important; }
.uc-page :is(input,select,button,summary,a):focus-visible { outline:3px solid #d29a37; outline-offset:2px; }
@media (max-width:700px) { .uc-grid { grid-template-columns:1fr; } }
@media (max-width:480px) { #content.uc-page h1 { font-size:1.55rem; } .uc-header img { display:none; } .uc-mode > div { flex-direction:column; } .uc-mode label + label { border-left:0; border-top:1px solid #bed1dc; } .uc-monthly { grid-template-columns:1fr; } .uc-monthly > div + div { border-left:0; border-top:1px solid #4e9990; } .uc-page dl > div { flex-direction:column; gap:3px; } .uc-page dd { text-align:left; } .uc-related > div { grid-template-columns:1fr; } }
