/* EAFC suite plugin: every selector is scoped; does not style the WP theme. */
.eafc-g2{font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic",Meiryo,system-ui,sans-serif;color:#16283c;background:#eef3f6;font-size:15px}
.eafc-g2, .eafc-g2 *{box-sizing:border-box}
.eafc-g2{margin:0}
.eafc-g2{max-width:1184px;margin:auto;padding:0 24px 44px}
.eafc-g2 h1, .eafc-g2 h2, .eafc-g2 h3, .eafc-g2 p{margin:0}
.eafc-g2 .page-head{padding:28px 0 26px}
.eafc-g2 .brand{display:flex;gap:11px;align-items:center;font-size:12px;letter-spacing:.13em}
.eafc-g2 .brand .mark{font-size:20px;font-weight:850;background:#193954;color:#fff;width:36px;height:36px;display:grid;place-items:center;border-radius:10px}
.eafc-g2 .brand strong{display:block}
.eafc-g2 .brand small{display:block;font-size:10px;font-weight:500;letter-spacing:.03em;color:#667d8e;margin-top:2px}
.eafc-g2 .top-tag{display:inline-flex;align-items:center;gap:6px;margin-top:24px;color:#72552c;background:#fcf0d9;padding:6px 12px;border-radius:5px;font-size:12px;font-weight:750}
.eafc-g2 .page-head h1{font-size:clamp(25px,3.1vw,36px);font-weight:820;letter-spacing:-.035em;margin:13px 0 10px}
.eafc-g2 .page-head h1 span{color:#bd7940}
.eafc-g2 .page-head>p{font-size:14px;color:#587083;line-height:1.8;max-width:700px}
.eafc-g2 .shared, .eafc-g2 .workarea{background:#fff;border:1px solid #dce5eb;border-radius:13px;box-shadow:0 10px 28px rgba(28,53,75,.045);margin-bottom:18px}
.eafc-g2 .shared{padding:20px 22px 24px}
.eafc-g2 .shared-head, .eafc-g2 .tools-head, .eafc-g2 .wide-head{display:flex;justify-content:space-between;gap:14px;align-items:start}
.eafc-g2 .shared h2, .eafc-g2 .tools-head h2{font-size:17px;font-weight:800}
.eafc-g2 .shared-head p, .eafc-g2 .tools-head p{font-size:12px;color:#708294;margin-top:5px;line-height:1.6}
.eafc-g2 .model-tag{white-space:nowrap;background:#ecf1f5;padding:6px 9px;color:#52697d;border:1px solid #dce4ec;border-radius:5px;font:700 10px/1.3 ui-monospace,SFMono-Regular,monospace;letter-spacing:.04em}
.eafc-g2 .model-tag.muted{background:#f8fafb}
.eafc-g2 .settings-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:16px;margin-top:22px}
.eafc-g2 label{display:flex;flex-direction:column;font-size:12px;font-weight:740;gap:8px;color:#31475a;min-width:0}
.eafc-g2 .help{font-size:10px;color:#8b9ca9;font-weight:500;margin-top:-6px}
.eafc-g2 input, .eafc-g2 select{width:100%;height:42px;font:500 14px/1.4 inherit;font-family:inherit;border:1px solid #cddae3;border-radius:6px;background:white;padding:9px 10px;color:#1d3448;min-width:0}
.eafc-g2 input:focus, .eafc-g2 select:focus, .eafc-g2 button:focus-visible{outline:3px solid #efad6b;outline-offset:2px}
.eafc-g2 .inline-fields{display:flex;gap:6px;min-width:0}
.eafc-g2 .workarea{padding:0;overflow:hidden}
.eafc-g2 .tools-head{padding:20px 22px 18px}
.eafc-g2 .tablist{display:flex;gap:0;border-bottom:1px solid #dbe5eb;padding:0 22px}
.eafc-g2 .tab{font-family:inherit;position:relative;flex:1;text-align:center;background:transparent;border:0;border-bottom:3px solid transparent;padding:16px 10px;color:#688194;font-size:14px;font-weight:780;cursor:pointer}
.eafc-g2 .tab span{color:#94a7b6;font-size:10px;display:inline-block;margin-right:8px;font-weight:750}
.eafc-g2 .tab.is-active{color:#163a58;border-bottom-color:#cc874e;background:#fbfcfd}
.eafc-g2 .tab.is-active span{color:#ba7840}
.eafc-g2 .panel{padding:23px 22px 26px}
.eafc-g2 .two-col{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:20px;align-items:start}
.eafc-g2 .panel-card, .eafc-g2 .results, .eafc-g2 .wide-card{border:1px solid #dce5eb;border-radius:9px;min-width:0;overflow:hidden}
.eafc-g2 .panel-card{padding:22px}
.eafc-g2 .card-top{margin-bottom:20px}
.eafc-g2 .eyebrow{font-size:10px;font-weight:800;letter-spacing:.16em;color:#b87949;display:block;margin-bottom:9px}
.eafc-g2 h3{font-size:20px;letter-spacing:-.035em}
.eafc-g2 .card-top p{font-size:12px;line-height:1.7;color:#6b8091;margin-top:6px}
.eafc-g2 .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}
.eafc-g2 .primary{background:#234762;border:0;border-radius:6px;padding:13px 17px;color:white;font-family:inherit;font-size:13px;font-weight:750;cursor:pointer;margin-top:23px;width:100%;display:flex;justify-content:space-between}
.eafc-g2 .primary:hover{background:#315e7e}
.eafc-g2 .results{background:#f6f9fb;padding:23px;min-height:270px}
.eafc-g2 .results-heading h3{font-size:17px}
.eafc-g2 .stat-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:19px}
.eafc-g2 .stat{background:#fff;border:1px solid #e3ebf0;padding:15px 12px;border-radius:7px;min-height:84px}
.eafc-g2 .stat.primary-stat{background:#e9f1f5;border-color:#d6e4ed}
.eafc-g2 .stat small{display:block;font-size:11px;font-weight:650;color:#627789}
.eafc-g2 .stat strong{font-weight:800;font-size:clamp(15px,1.7vw,22px);line-height:1.3;display:block;margin-top:8px;overflow-wrap:anywhere;white-space:normal}
.eafc-g2 .stat strong.danger{color:#b75750}
.eafc-g2 .stat em{font-size:11px;color:#798e9b;font-style:normal}
.eafc-g2 .result-message{font-size:12px;color:#62768a;line-height:1.75;margin-top:15px}
.eafc-g2 .alert{border-left:3px solid #c17951;background:#fff2e8;padding:11px 12px;margin-top:17px;color:#804d2d;font-size:12px;line-height:1.7;word-break:break-word}
.eafc-g2 .alert.neutral{border-color:#869aa8;background:#edf1f4;color:#506678}
.eafc-g2 .nanpin-intro{display:flex;justify-content:space-between;gap:16px;margin:0 0 22px}
.eafc-g2 .nanpin-intro p{font-size:12px;color:#667f90;max-width:650px;line-height:1.8;margin-top:7px}
.eafc-g2 .nanpin-intro .emphasis{background:#edf3f7;border:1px solid #d9e6ee;border-radius:30px;color:#506c81;padding:6px 11px;font-size:11px;white-space:nowrap;height:max-content}
.eafc-g2 .nanpin-upper{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:17px;align-items:start}
.eafc-g2 .nanpin-result{min-height:500px}
.eafc-g2 .wide-card{padding:20px;margin-top:20px}
.eafc-g2 .wide-head{align-items:baseline;margin-bottom:14px}
.eafc-g2 .wide-head h3{font-size:15px}
.eafc-g2 .wide-head small{font-size:10px;color:#7e95a6;margin-left:7px}
.eafc-g2 .tiny{font-size:10px;color:#8398a8}
.eafc-g2 #price-map{min-height:154px;background:#f5f8fa;border-radius:7px;padding:18px}
.eafc-g2 .map-axis{position:relative;height:60px;margin:34px 12px 0;border-top:2px solid #afc1d0}
.eafc-g2 .map-axis:before, .eafc-g2 .map-axis:after{content:attr(data-min);position:absolute;top:-40px;left:0;font-size:10px;color:#778d9c}
.eafc-g2 .map-axis:after{content:attr(data-max);left:auto;right:0}
.eafc-g2 .map-marker{position:absolute;top:-18px;height:30px;width:2px;background:#7d95a7}
.eafc-g2 .map-marker strong{position:absolute;font:700 10px/1.35 inherit;font-family:inherit;white-space:nowrap;display:block;left:5px;top:-20px;color:#40546b}
.eafc-g2 .map-marker:nth-child(odd) strong{top:27px}
.eafc-g2 .map-marker.be{background:#b47746}
.eafc-g2 .map-marker.tp{background:#39816e}
.eafc-g2 .map-marker.stop{background:#c3564f}
.eafc-g2 .map-marker.mid{background:#6c90a9}
.eafc-g2 .map-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px;font-size:10px;color:#66798b}
.eafc-g2 .map-legend i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px;background:#839bac}
.eafc-g2 .map-legend i.tp{background:#39816e}
.eafc-g2 .map-legend i.be{background:#b47746}
.eafc-g2 .map-legend i.stop{background:#c3564f}
.eafc-g2 .table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.eafc-g2 table{border-collapse:separate;border-spacing:0;width:100%;min-width:810px;font-size:11px;text-align:right}
.eafc-g2 th{padding:11px 10px;background:#f2f6f8;color:#587183;white-space:nowrap;position:sticky;top:0}
.eafc-g2 td{padding:11px 10px;border-top:1px solid #e7edf1;white-space:nowrap;font-variant-numeric:tabular-nums}
.eafc-g2 th:first-child, .eafc-g2 td:first-child{text-align:center}
.eafc-g2 th:nth-child(2), .eafc-g2 td:nth-child(2){text-align:left}
.eafc-g2 tr:nth-child(even) td{background:#fbfcfd}
.eafc-g2 .state{border-radius:4px;padding:4px 7px;font-weight:700;font-size:10px;background:#e6f1f0;color:#37675a}
.eafc-g2 .state.warn{background:#ffece0;color:#955438}
.eafc-g2 .state.muted{background:#edf1f4;color:#687e8e}
.eafc-g2 .footnote{font-size:12px;color:#64798b;line-height:1.9;padding:19px 4px}
.eafc-g2 .footnote strong{color:#334c61}
.eafc-g2 .foot-bottom{display:flex;justify-content:space-between;font:700 10px/1.4 ui-monospace,monospace;letter-spacing:.07em;border-top:1px solid #d6e0e7;margin-top:23px;padding-top:17px;color:#8495a3}
@media (max-width:900px){.eafc-g2 .settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.eafc-g2 .two-col, .eafc-g2 .nanpin-upper{grid-template-columns:1fr}
.eafc-g2 .nanpin-result{min-height:0}}
@media (max-width:570px){.eafc-g2{padding:0 12px 32px}
.eafc-g2 .page-head{padding:20px 0}
.eafc-g2 .page-head h1{font-size:26px}
.eafc-g2 .shared{padding:16px 14px}
.eafc-g2 .shared-head, .eafc-g2 .tools-head{display:block}
.eafc-g2 .model-tag{display:inline-flex;margin-top:10px}
.eafc-g2 .settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 9px}
.eafc-g2 .settings-grid label{font-size:11px}
.eafc-g2 input, .eafc-g2 select{font-size:13px}
.eafc-g2 .tools-head{padding:16px 14px 13px}
.eafc-g2 .tablist{padding:0 8px}
.eafc-g2 .tab{font-size:11px;padding:13px 3px}
.eafc-g2 .tab span{display:block;margin:0 0 4px}
.eafc-g2 .panel{padding:15px 12px 19px}
.eafc-g2 .panel-card, .eafc-g2 .results, .eafc-g2 .wide-card{padding:17px 13px}
.eafc-g2 .form-grid{gap:15px 10px}
.eafc-g2 h3{font-size:18px}
.eafc-g2 .stat{min-height:76px;padding:10px}
.eafc-g2 .stat strong{font-size:17px}
.eafc-g2 .nanpin-intro{display:block}
.eafc-g2 .nanpin-intro .emphasis{display:inline-block;margin-top:11px}
.eafc-g2 .wide-head{display:block}
.eafc-g2 .wide-head .tiny{display:block;margin-top:6px}
.eafc-g2 .foot-bottom{display:block}
.eafc-g2 .foot-bottom span{display:block;margin-top:6px}}
@media (max-width:360px){.eafc-g2 .settings-grid, .eafc-g2 .form-grid{grid-template-columns:1fr}
.eafc-g2 .tab{font-size:10px;letter-spacing:-.02em}
.eafc-g2 .stat-row{grid-template-columns:1fr 1fr}
.eafc-g2 .stat strong{font-size:15px}}
/* Visual review remediation: overlapping price labels were removed from marker stems. */
.eafc-g2 .map-axis{margin:24px 12px 0;height:25px}
.eafc-g2 .map-marker{top:-18px;height:29px;width:3px}
.eafc-g2 .map-legend{margin-top:13px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}
.eafc-g2 .map-legend-item{display:flex;gap:7px;align-items:center;background:#fff;border:1px solid #e1e9ee;border-radius:5px;padding:9px;min-width:0;font-size:11px}
.eafc-g2 .map-legend-item span{flex:1;color:#5c7184}
.eafc-g2 .map-legend-item strong{font-variant-numeric:tabular-nums;white-space:nowrap;color:#213d53;font-size:12px}
.eafc-g2 .map-legend-item i{flex-shrink:0;width:10px;height:10px;border-radius:2px}
.eafc-g2 .map-legend-item i.mid{background:#7d95a7}
.eafc-g2 .map-legend-item i.be{background:#b47746}
.eafc-g2 .map-legend-item i.tp{background:#39816e}
.eafc-g2 .map-legend-item i.stop{background:#c3564f}
@media (max-width:570px){.eafc-g2 .page-head h1{font-size:25px}
.eafc-g2 .page-head h1 span{display:block;font-size:.76em;margin-top:4px;white-space:nowrap}}
@media (max-width:360px){.eafc-g2 .map-legend{grid-template-columns:1fr}}
/* G3: scoped per-symbol profile manager; isolated inside the EAFC page. */
.eafc-g2 .profile-panel{border:1px solid var(--line,#d8dde7);border-radius:16px;background:var(--card,#fff);padding:20px;margin:20px 0;max-width:100%;min-width:0}
.eafc-g2 .profile-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}
.eafc-g2 .profile-title h4{font-size:19px;margin:6px 0}
.eafc-g2 .profile-title p, .eafc-g2 .profile-caveat{font-size:13px;line-height:1.65;color:var(--sub,#546174);margin:8px 0}
.eafc-g2 .profile-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end;margin:16px 0}
.eafc-g2 .profile-fields label{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:13px;font-weight:650}
.eafc-g2 .profile-fields input, .eafc-g2 .profile-fields select{box-sizing:border-box;width:100%;min-width:0;border:1px solid #c8d1e0;border-radius:9px;padding:10px 12px;background:#fff;color:#17263b;max-width:100%;font-size:14px}
.eafc-g2 .profile-count{white-space:nowrap;font-size:12px;padding-bottom:10px;color:#46546a}
.eafc-g2 .profile-actions{display:flex;gap:8px;flex-wrap:wrap}
.eafc-g2 .profile-actions button{border:1px solid #bdcadb;border-radius:9px;background:#fff;color:#243651;font-size:13px;font-weight:650;min-height:38px;padding:8px 11px;cursor:pointer}
.eafc-g2 .profile-actions button.primary{background:#1b3c63;color:#fff;border-color:#1b3c63}
.eafc-g2 .profile-actions button:disabled{opacity:.46;cursor:not-allowed}
.eafc-g2 .profile-actions button:focus-visible{outline:3px solid #ec9c35;outline-offset:2px}
.eafc-g2 .profile-status{margin:12px 0 5px;padding:10px 12px;background:#f1f6fc;color:#17385b;font-size:13px;border-radius:9px;line-height:1.55}
.eafc-g2 .profile-status.is-error{background:#fff0ed;color:#842318}
.eafc-g2 .profile-legacy-wrap{overflow:auto;max-width:100%;max-height:420px;margin-top:10px}
.eafc-g2 .profile-legacy-wrap table{border-collapse:collapse;min-width:480px;width:100%;font-size:12px}
.eafc-g2 .profile-legacy-wrap th, .eafc-g2 .profile-legacy-wrap td{padding:7px 9px;text-align:left;border-bottom:1px solid #e0e7ee}
.eafc-g2 #np-legacy-details summary{cursor:pointer;padding:8px 0;font-weight:700}
@media (max-width:690px){.eafc-g2 .profile-panel{padding:13px;margin:13px 0}
.eafc-g2 .profile-fields{grid-template-columns:minmax(0,1fr)}
.eafc-g2 .profile-count{padding:0}
.eafc-g2 .profile-actions button{flex:1 1 43%;font-size:12px}}
@media (max-width:355px){.eafc-g2 .profile-actions button{flex-basis:100%}}
/* WordPress embedding differences */
.eafc-suite-notice{box-sizing:border-box;max-width:1184px;margin:12px auto;padding:14px 16px;background:#fff7e7;border:1px solid #e2b66b;border-radius:8px;color:#533718;font-size:13px;line-height:1.8}
.eafc-suite-noscript{padding:12px;background:#fff2e9;border:1px solid #c78e71;color:#74391b}
.eafc-g2{background:#f4f7fa;border-radius:10px;isolation:isolate;max-width:100%;box-sizing:border-box}
.eafc-g2 .page-head .suite-main-heading{font-size:clamp(22px,3vw,30px);line-height:1.35}
.eafc-g2 [hidden]{display:none!important}
.eafc-g2 button{touch-action:manipulation}
.eafc-g2 .tab{border-radius:0}
.eafc-g2 .profile-panel button.primary{margin-top:0;width:auto;display:inline-flex}
.eafc-g2 .footnote{padding:16px;line-height:1.7}

/* RC4 — detailed stage plan. Scoped to calculator UI. */
.eafc-g2 .stage-options{border-top:1px solid #dfe6eb;margin-top:16px;padding-top:16px}
.eafc-g2 .stage-options h4{font-size:14px;margin:0 0 12px;color:#31475a}
.eafc-g2 .stage-rounding-note,.eafc-g2 .stage-grid-caveat{font-size:12px;line-height:1.8;color:#685336;margin:10px 0}
.eafc-g2 .stage-input-table{min-width:480px;width:100%}
.eafc-g2 .stage-input-table td{padding:6px 9px}
.eafc-g2 .stage-input-table input{max-width:170px;width:100%;height:37px;font-size:13px;text-align:right}
.eafc-g2 .stage-input-table td:first-child{font-weight:700;color:#31475a}
.eafc-g2 .stage-input-table input:disabled{background:#edf0f2;color:#526475}
.eafc-g2 .stage-input-table td:nth-child(2){text-align:right}
.eafc-g2 .stage-input-table td:nth-child(3){text-align:right}

.eafc-g2 .stage-run{min-height:43px;margin-top:12px;border:0;border-radius:7px;background:#20455f;color:#fff;font-size:13px;font-weight:750;padding:10px 15px;cursor:pointer}
.eafc-g2 .stage-run:hover{background:#123c59}
/* RC6: narrow scoped unit-confirmation input. Avoid WordPress/theme-wide selectors. */
.eafc-g2 .settings-grid label.rc6-checkbox{display:flex;flex-direction:column;justify-content:center;gap:6px;align-items:flex-start}
.eafc-g2 .settings-grid input#conversion-confirmed{width:20px;min-width:20px;height:20px;cursor:pointer;margin:2px 0 0}

/* RC8 targeted parity: pips/points magnitude workspace and risk thresholds, fully scoped. */
.eafc-g2 .pips-workspace{margin-top:24px;padding-top:22px;border-top:1px solid #dce5eb;min-width:0}
.eafc-g2 .pips-intro{margin:0 0 15px}
.eafc-g2 .pips-intro h3{font-size:18px}
.eafc-g2 .pips-intro p{margin-top:7px;font-size:12px;line-height:1.7;color:#667d8e}
.eafc-g2 .pips-workspace .stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}
.eafc-g2 .risk-tier-table{min-width:440px;font-size:12px}
.eafc-g2 .risk-tier-table caption{caption-side:top;text-align:left;font-weight:750;padding:13px 8px 8px;color:#31475a}
.eafc-g2 .risk-tier-table td{text-align:right}
.eafc-g2 .risk-tier-table td:first-child{text-align:center}
@media(max-width:570px){.eafc-g2 .pips-workspace .stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* RC9: four-column theoretical tier is table-local scroll only. */
.eafc-g2 .risk-tier-table{min-width:570px;}
.eafc-g2 #risk-out .stat-row{min-width:0;}

.eafc-g2 .risk-tier-hint{font-size:12px;line-height:1.6;color:#536a7e;margin:12px 4px 6px;}

/* RC10 isolated multi-quote worksheet, not persisted in RC7 schema. */
.eafc-g2 .quote-lab{margin:22px 0;padding:18px;border:1px solid #cbd5e1;border-radius:14px;background:#f8fafc;color:#0f172a}
.eafc-g2 .quote-lab>summary{font-weight:750;cursor:pointer;line-height:1.6}
.eafc-g2 .quote-lab>p{margin:12px 0;font-size:14px;line-height:1.7}
.eafc-g2 .quote-model-banner{font-size:13px;background:#e2e8f0;padding:8px 12px;border-radius:8px}
.eafc-g2 .quote-lab .form-grid{margin-top:14px}
.eafc-g2 .quote-lab input,.eafc-g2 .quote-lab select{max-width:100%;min-width:0;box-sizing:border-box}
.eafc-g2 .rc10-check{display:flex!important;align-items:center;gap:12px;margin:12px 0;line-height:1.6}
.eafc-g2 .rc10-check input{width:18px!important;height:18px!important;flex:none}
.eafc-g2 .quote-actions{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}
.eafc-g2 .quote-actions button{max-width:100%;padding:12px 18px;border:1px solid #94a3b8;border-radius:8px;font-weight:600}
.eafc-g2 .quote-output{padding:14px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow-wrap:anywhere}
.eafc-g2 .quote-output .stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:12px}
.eafc-g2 .quote-output .stat strong{overflow-wrap:anywhere}
.eafc-g2 .quote-result-notice{font-size:13px;line-height:1.65;margin:12px 0}
.eafc-g2 .quote-result-notice.is-error{color:#a21caf}
@media(max-width:600px){.eafc-g2 .quote-lab{padding:10px}.eafc-g2 .quote-actions{flex-direction:column}.eafc-g2 .quote-actions button{width:100%}}

/* RC11 — optional display settings and independent direction comparison, scoped. */
.eafc-g2 .rc11-target-panel,.eafc-g2 .rc11-display-panel{margin:16px 0;padding:13px;background:#edf5fa;border:1px solid #c8d8e4;border-radius:10px}
.eafc-g2 .rc11-target-panel h4,.eafc-g2 .rc11-display-panel h4{margin:0 0 9px;font-size:15px}
.eafc-g2 .rc11-target-panel p,.eafc-g2 .rc11-display-panel p{font-size:12px;line-height:1.7;margin:7px 0}
.eafc-g2 .rc11-target-row{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.eafc-g2 .rc11-target-row label{flex:1;min-width:160px}
.eafc-g2 .rc11-target-row button{border:0;border-radius:8px;background:#1c496a;color:#fff;padding:12px;min-height:43px;cursor:pointer}
.eafc-g2 .rc11-target-panel .is-error{color:#a12525}
.eafc-g2 .rc11-display-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.eafc-g2 .rc11-display-row label{min-width:0;font-size:12px}
.eafc-g2 .rc11-display-row select{width:100%;min-width:0;max-width:100%}
.eafc-g2 .rc11-compare{margin:16px 0}
.eafc-g2 .rc11-compare-side{margin:15px 0;padding:12px;border:1px solid #d8e3ea;border-radius:8px;min-width:0}
.eafc-g2 .rc11-compare-side h4{font-size:16px;margin:0 0 8px}
.eafc-g2 .rc11-compare-side p{font-size:13px;line-height:1.65}
.eafc-g2 .rc11-compare-side table{min-width:850px;font-size:12px}
.eafc-g2 .rc11-compare-side caption{text-align:left;font-weight:bold;padding:8px}
.eafc-g2 .rc11-compare-error{color:#aa2730}
@media(max-width:670px){.eafc-g2 .rc11-display-row{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* RC13 quote-aware plan; never affect JIN:R global tables/forms. */
.eafc-g2 .rc13-quote-stage{border:1px solid #d5e3ea;border-radius:8px;padding:18px;margin:18px 0;background:#f7fafc}
.eafc-g2 .rc13-quote-stage h4{font-size:15px;margin:0 0 8px}
.eafc-g2 .rc13-quote-stage p{font-size:12px;line-height:1.7;margin:8px 0 15px;color:#5c7180}
.eafc-g2 #quote-stage-result-rc13{margin-top:15px;max-width:100%;overflow-wrap:anywhere}
.eafc-g2 .rc13-plan-table-wrap{max-width:100%;overflow-x:auto}
.eafc-g2 .rc13-plan-table{min-width:770px;width:100%;border-collapse:collapse}
.eafc-g2 .rc13-plan-table th,.eafc-g2 .rc13-plan-table td{padding:8px;white-space:nowrap;font-size:11px}
.eafc-g2 .rc13-plan-table th:first-child,.eafc-g2 .rc13-plan-table td:first-child{text-align:left}
.eafc-g2 .rc13-plan-error{color:#a23d30;font-weight:700}

/* RC14 detailed quote plan inputs & charts; local-scoped, no global theme impact. */
.eafc-g2 .rc14-plan-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}
.eafc-g2 .rc14-plan-options label{min-width:0}
.eafc-g2 .rc14-stage-detail{margin:14px 0 20px;padding:12px;border:1px solid #d3dde5;border-radius:9px;background:#fff}
.eafc-g2 .rc14-stage-detail p{font-size:12px;line-height:1.65}
.eafc-g2 .rc14-table-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}
.eafc-g2 .rc14-table-wrap table{min-width:520px;width:100%}
.eafc-g2 .rc14-table-wrap th,.eafc-g2 .rc14-table-wrap td{padding:6px 8px;text-align:left;white-space:nowrap}
.eafc-g2 .rc14-table-wrap input{width:100%;min-width:115px;max-width:170px}
.eafc-g2 .rc14-plan-visual{margin-top:20px;padding:14px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;max-width:100%;min-width:0}
.eafc-g2 .rc14-plan-visual h5{margin:0 0 8px;font-size:14px;color:#1e3a52}
.eafc-g2 .rc14-plan-visual p{font-size:12px;line-height:1.6}
.eafc-g2 .rc14-curve{display:block;width:100%;height:auto;max-width:100%;border:1px solid #e2e8f0;border-radius:6px}
.eafc-g2 .rc14-plan-visual .rc14-curr-label{font-weight:650}
@media(max-width:650px){.eafc-g2 .rc14-plan-options{grid-template-columns:minmax(0,1fr)}}

/* RC15 isolated quote-plan profile panel; no global typography or form changes. */
#eafc-g2 .rc15-profile-panel{margin:1.25rem 0;padding:1rem;border:1px solid #94a3b8;border-radius:.75rem;background:#f8fafc;color:#0f172a}
#eafc-g2 .rc15-profile-panel h5{margin:.1rem 0 .5rem;font-size:1.05rem;color:#0f172a}
#eafc-g2 .rc15-profile-panel p{line-height:1.65;margin:.5rem 0}
#eafc-g2 .rc15-profile-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:.75rem;align-items:end}
#eafc-g2 .rc15-profile-fields label{display:flex;flex-direction:column;gap:.25rem;min-width:0}
#eafc-g2 .rc15-profile-fields input,#eafc-g2 .rc15-profile-fields select{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
#eafc-g2 .rc15-profile-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0}
#eafc-g2 .rc15-profile-actions button{max-width:100%;white-space:normal;overflow-wrap:anywhere;min-height:40px}
#eafc-g2 #quote-plan-status-rc15.is-error{color:#991b1b;font-weight:700}
@media(max-width:420px){#eafc-g2 .rc15-profile-panel{padding:.65rem}#eafc-g2 .rc15-profile-actions button{flex:1 1 44%}}

/* RC16 manual held snapshot: completely separated from RC13 planned basket and RC15 storage. */
#eafc-g2 .rc16-held-panel{margin:20px 0;padding:16px;border:1px solid #a0b6c9;border-radius:11px;background:#f5f9fc;min-width:0;overflow-wrap:anywhere}
#eafc-g2 .rc16-held-panel h4{font-size:16px;margin:0 0 10px}
#eafc-g2 .rc16-held-panel p{font-size:12px;line-height:1.7;margin:8px 0 14px}
#eafc-g2 .rc16-held-panel input,#eafc-g2 .rc16-held-panel select{min-width:0;max-width:100%;width:100%;box-sizing:border-box}
#eafc-g2 .rc16-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:12px 0}
#eafc-g2 .rc16-stress-table,#eafc-g2 .rc16-held-inputs{min-width:650px;width:100%;border-collapse:collapse}
#eafc-g2 .rc16-table-wrap th,#eafc-g2 .rc16-table-wrap td{font-size:11px;padding:8px;white-space:nowrap;text-align:left}
#eafc-g2 .rc16-held-inputs input{min-width:120px}
#eafc-g2 .rc16-held-inputs select{min-width:82px}
#eafc-g2 .rc16-check{display:flex;gap:9px;align-items:flex-start;margin:12px 0;line-height:1.6}
#eafc-g2 .rc16-check input{flex:none!important;width:20px!important;height:20px!important;margin:3px 0}
#eafc-g2 #quote-held-result-rc16{margin-top:14px;padding:12px;background:#fff;border:1px solid #dae2e8;border-radius:8px;overflow-wrap:anywhere}
#eafc-g2 #quote-held-result-rc16 h5{font-size:14px}
#eafc-g2 .rc16-error{color:#991b1b;font-weight:700}
@media(max-width:500px){#eafc-g2 .rc16-held-panel{padding:10px}}

/* RC18 isolated reference-risk workspace (all styles scoped to suite). */
#eafc-g2 .rc18-inverse{margin:22px 0;padding:15px;border:1px solid #a7bdca;border-radius:10px;background:#f7fafc;min-width:0}
#eafc-g2 .rc18-inverse summary{cursor:pointer;font-size:15px;font-weight:760;line-height:1.6}
#eafc-g2 .rc18-inverse p{font-size:12px;line-height:1.7;margin:9px 0 15px}
#eafc-g2 .rc18-inverse input,#eafc-g2 .rc18-inverse select{width:100%;max-width:100%;min-width:0}
#eafc-g2 .rc18-check{display:flex;flex-direction:row;align-items:flex-start;gap:10px;line-height:1.5;font-size:12px}
#eafc-g2 .rc18-check input{width:20px;min-width:20px;height:20px;margin:0}
#eafc-g2 #quote-stopout-result-rc18{margin-top:12px;padding:14px;border:1px solid #cbd5e1;background:#fff;border-radius:8px;overflow-wrap:anywhere}
#eafc-g2 .rc18-disclaimer{color:#6b3c2d;font-weight:600}
@media(max-width:640px){#eafc-g2 .rc18-inverse{padding:10px}}

/* RC20W1 (layout-only): fixed page 2352 /calculation-tools/.
   Match legacy nanpin's 1280px centered breakout without changing JIN:R globally.
   Use the JIN:R custom wide template (one-column) on this page to avoid sidebar overlap.
   At tablet/mobile widths, existing 100%-of-parent responsive behavior is retained.
   Do not loosen table internal scrolling for 31-stage/held tables. */
@media (min-width: 1024px) {
  body.page-id-2352 #eafc-g2.eafc-g2,
  body.page-id-2352 .eafc-suite-notice {
    --eafc-suite-wide: min(1280px, calc(100vw - 48px));
    width: var(--eafc-suite-wide);
    max-width: none;
    margin-left: calc((100% - var(--eafc-suite-wide)) / 2);
    margin-right: calc((100% - var(--eafc-suite-wide)) / 2);
  }
}

/* RC18W2 (readability + page-only article width; 2026-10-14)
 * Scope is fixed page 2352 only. JIN:R uses #postContent for its article body.
 * Keep RC20W1 calculator width at 1280px, without touching other site pages.
 * Do not touch math, shortcode, storage, or JS. WCAG AA-inspired readable ink.
 */
@media (min-width:768px) {
  body.page-id-2352 #postContent {
    --eafc-article-wide: min(1280px, calc(100vw - 48px));
    box-sizing: border-box;
    width: var(--eafc-article-wide);
    max-width: none;
    margin-left: calc((100% - var(--eafc-article-wide)) / 2);
    margin-right: calc((100% - var(--eafc-article-wide)) / 2);
  }
}
/* Gutenberg/JIN:R headings, prose, tables and FAQ inherit the wider body;
 * preserve their native typography, margins, TOC and block semantics. */
body.page-id-2352 .eafc-suite-notice {
  font-size: 14px;
  line-height: 1.85;
  color: #543719;
}
body.page-id-2352 #eafc-g2.eafc-g2 {
  --eafc-ink: #263d51;
  --eafc-subtext: #42596b;
  --eafc-hint: #4a6172;
  --eafc-warn: #85401d;
  font-size: 16px;
  line-height: 1.65;
  color: var(--eafc-ink);
  -webkit-text-size-adjust: 100%;
}
/* Primary content hierarchy. */
body.page-id-2352 #eafc-g2 .page-head .suite-main-heading { font-size: clamp(26px, 2.9vw, 34px); line-height: 1.42; color: #1d354a; }
body.page-id-2352 #eafc-g2 :is(h2, h3, h4, h5) { color: #20384c; line-height: 1.5; }
body.page-id-2352 #eafc-g2 :is(.shared h2, .tools-head h2) { font-size: 20px; }
body.page-id-2352 #eafc-g2 :is(.card-top h3, .results-heading h3, .nanpin-intro h3, .pips-intro h3) { font-size: 20px; }
body.page-id-2352 #eafc-g2 :is(.wide-head h3, .rc16-held-panel h4, .rc13-quote-stage h4, .rc11-target-panel h4, .rc11-display-panel h4, .rc14-plan-visual h5, .rc15-profile-panel h5) { font-size: 17px; }
body.page-id-2352 #eafc-g2 .brand {font-size: 14px;}
body.page-id-2352 #eafc-g2 .brand small {font-size: 12px;color:var(--eafc-subtext);}
body.page-id-2352 #eafc-g2 .top-tag {font-size: 13px;color: #85401d;}
body.page-id-2352 #eafc-g2 .eyebrow {font-size: 12px;color: #85401d;}
body.page-id-2352 #eafc-g2 .model-tag {font-size: 12px;color: #344d61;}
/* Form captions and explanatory microcopy previously varied from 10px to 12px. */
body.page-id-2352 #eafc-g2 label,
body.page-id-2352 #eafc-g2 .profile-fields label,
body.page-id-2352 #eafc-g2 .rc11-display-row label {font-size: 15px;line-height: 1.55;color:var(--eafc-ink);font-weight: 700;}
body.page-id-2352 #eafc-g2 :is(.help, .tiny, small, .wide-head small, .map-legend, .map-legend-item span, .profile-count) {
  font-size: 13px;
  line-height: 1.55;
  color: var(--eafc-hint);
}
body.page-id-2352 #eafc-g2 :is(.page-head>p, .shared-head p, .tools-head p, .card-top p, .nanpin-intro p, .pips-intro p,
  .result-message, .quote-result-notice, .rc11-target-panel p, .rc11-display-panel p, .rc11-compare-side p,
  .rc13-quote-stage p, .rc14-stage-detail p, .rc14-plan-visual p, .rc16-held-panel p,
  .rc18-inverse p, .profile-title p, .profile-caveat, .risk-tier-hint, .footnote) {
  font-size: 14px;
  line-height: 1.8;
  color: var(--eafc-subtext);
}
body.page-id-2352 #eafc-g2 :is(.alert, .alert.neutral, .stage-rounding-note, .stage-grid-caveat) {
  font-size: 14px;
  line-height: 1.75;
  color: var(--eafc-warn);
}
body.page-id-2352 #eafc-g2 .alert.neutral {color: var(--eafc-subtext);}
body.page-id-2352 #eafc-g2 :is(.rc18-disclaimer, .rc13-plan-error, .rc16-error, .profile-status.is-error) {color:#91412c;}
/* Legible controls, especially on mobile (no iOS <16px zoom). */
body.page-id-2352 #eafc-g2 :is(input, select, textarea),
body.page-id-2352 #eafc-g2 :is(.profile-fields input, .profile-fields select, .stage-input-table input) {
  font-family: inherit;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 560;
  color: #18354a;
  min-height: 44px;
  background-color: #fff;
  border-color: #aebdc9;
}
body.page-id-2352 #eafc-g2 input::placeholder {color:#566c7d;opacity:1;}
body.page-id-2352 #eafc-g2 :is(input:disabled, input[readonly], select:disabled) {color:#485f70;background:#e9eff3;opacity:1;}
body.page-id-2352 #eafc-g2 :is(button, .primary, .stage-run, .profile-actions button, .rc11-target-row button, .quote-actions button) {
  font-family: inherit;
  font-size: 15px;
  line-height: 1.5;
  font-weight: 700;
  min-height: 44px;
}
body.page-id-2352 #eafc-g2 .profile-actions button:disabled {
  opacity: 1;
  background: #ebeff2;
  color: #526a7b;
  border-color: #bfccd5;
  cursor: not-allowed;
}
/* Tabs must stay readable and allow wrapping on narrow screens. */
body.page-id-2352 #eafc-g2 .tab {font-size: 16px;color:#34566d;line-height: 1.45;white-space: normal;overflow-wrap:anywhere;}
body.page-id-2352 #eafc-g2 .tab span {font-size: 13px;color:#526a7b;}
body.page-id-2352 #eafc-g2 .tab.is-active {color:#103d5d;}
/* Values, tables, badges, legends. Preserve internal horizontal scrolling. */
body.page-id-2352 #eafc-g2 .stat small {font-size: 13px;color:#42596b;}
body.page-id-2352 #eafc-g2 .stat strong {font-size: clamp(20px, 1.8vw, 25px);color:#18354b;}
body.page-id-2352 #eafc-g2 .stat strong.danger {color:#91412c;}
body.page-id-2352 #eafc-g2 .stat em {font-size: 13px;color:#4a6172;}
body.page-id-2352 #eafc-g2 :is(table, .risk-tier-table, .rc11-compare-side table, .rc13-plan-table, .rc16-stress-table, .rc16-held-inputs, .profile-legacy-wrap table) {
  font-size: 13px;
  line-height: 1.6;
  color: #233c50;
}
body.page-id-2352 #eafc-g2 :is(th, td, .rc13-plan-table th, .rc13-plan-table td, .rc16-table-wrap th, .rc16-table-wrap td) {font-size: 13px;line-height:1.55;}
body.page-id-2352 #eafc-g2 th {color:#2f4a5c;}
body.page-id-2352 #eafc-g2 .state {font-size: 12px;color:#315c50;}
body.page-id-2352 #eafc-g2 .state.warn {color:#874226;}
body.page-id-2352 #eafc-g2 .state.muted {color:#465d6e;}
body.page-id-2352 #eafc-g2 :is(.map-legend-item, .map-legend-item span) {font-size: 13px;}
body.page-id-2352 #eafc-g2 .map-legend-item strong {font-size: 14px;color:#243d50;}
body.page-id-2352 #eafc-g2 .map-axis::before,
body.page-id-2352 #eafc-g2 .map-axis::after,
body.page-id-2352 #eafc-g2 .map-marker strong {font-size: 12px;color:#435a6e;}
body.page-id-2352 #eafc-g2 :is(.rc14-plan-visual svg text, .rc14-curve text) {font-size: 12px;fill:#304b60;}
body.page-id-2352 #eafc-g2 :is(.profile-status, .foot-bottom) {font-size: 13px;color:#344f63;}
/* Mobile: inputs and long Japanese tab names remain readable with no page overflow. */
@media (max-width:570px) {
  body.page-id-2352 #eafc-g2 .settings-grid label {font-size: 14px;}
  body.page-id-2352 #eafc-g2 .tab {font-size: 14px;padding: 14px 5px;min-height: 64px;}
  body.page-id-2352 #eafc-g2 .tab span {font-size: 12px;}
  body.page-id-2352 #eafc-g2 .stat strong {font-size: 19px;}
  body.page-id-2352 #eafc-g2 .page-head .suite-main-heading {font-size: 26px;}
}
@media (max-width:420px) {
  body.page-id-2352 #eafc-g2 .settings-grid,
  body.page-id-2352 #eafc-g2 .form-grid {grid-template-columns: minmax(0,1fr);}
}

/* RC18W3: compact, aligned form surfaces. Only main calculator page #2352.
   Presentation CSS only. Per-table horizontal scrolling and >=16px control text retained. */
body.page-id-2352 #eafc-g2 .page-head{padding:15px 0 14px}
body.page-id-2352 #eafc-g2 .brand{gap:9px}
body.page-id-2352 #eafc-g2 .top-tag{margin-top:9px;padding:4px 9px}
body.page-id-2352 #eafc-g2 .page-head .suite-main-heading{margin:8px 0 5px;font-size:clamp(22px,2.4vw,30px)}
body.page-id-2352 #eafc-g2 .shared,
body.page-id-2352 #eafc-g2 .workarea{margin-bottom:11px}
body.page-id-2352 #eafc-g2 .shared{padding:14px 18px 16px}
body.page-id-2352 #eafc-g2 .settings-grid{margin-top:12px;gap:10px 14px}
body.page-id-2352 #eafc-g2 .tools-head{padding:13px 18px 11px}
body.page-id-2352 #eafc-g2 .tab{padding:11px 8px}
body.page-id-2352 #eafc-g2 .tablist{padding:0 17px}
body.page-id-2352 #eafc-g2 .panel{padding:16px 17px 18px}
body.page-id-2352 #eafc-g2 .two-col,
body.page-id-2352 #eafc-g2 .nanpin-upper{gap:13px}
body.page-id-2352 #eafc-g2 .panel-card,
body.page-id-2352 #eafc-g2 .results{padding:15px}
body.page-id-2352 #eafc-g2 .results{min-height:0}
body.page-id-2352 #eafc-g2 .nanpin-result{min-height:0}
body.page-id-2352 #eafc-g2 .card-top{margin-bottom:12px}
body.page-id-2352 #eafc-g2 .form-grid{gap:10px 13px;align-items:stretch}
body.page-id-2352 #eafc-g2 .settings-grid,
body.page-id-2352 #eafc-g2 .form-grid,
body.page-id-2352 #eafc-g2 .rc11-display-row,
body.page-id-2352 #eafc-g2 .profile-fields{grid-auto-flow:row;align-items:stretch}
/* Labels align inputs on a shared baseline across each grid row.
   No rigid fixed label height; allow multiline Japanese captions and help. */
body.page-id-2352 #eafc-g2 .settings-grid>label,
body.page-id-2352 #eafc-g2 .form-grid>label{
  display:flex;flex-direction:column;min-width:0;gap:4px;
  justify-content:flex-end;
}
body.page-id-2352 #eafc-g2 .settings-grid>label :is(input:not([type=checkbox]),select,.inline-fields),
body.page-id-2352 #eafc-g2 .form-grid>label :is(input:not([type=checkbox]),select),
body.page-id-2352 #eafc-g2 .profile-fields>label :is(input,select){
  flex:0 0 auto;min-height:44px;height:44px;max-width:100%;margin-top:auto;
}
body.page-id-2352 #eafc-g2 .settings-grid .inline-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;height:44px}
body.page-id-2352 #eafc-g2 .settings-grid .inline-fields input{width:100%;height:44px;min-width:0}
body.page-id-2352 #eafc-g2 .settings-grid>label.rc6-checkbox,
body.page-id-2352 #eafc-g2 .form-grid>label:has(input[type=checkbox]){
  justify-content:center;align-items:flex-start;
}
body.page-id-2352 #eafc-g2 :is(.rc6-checkbox input[type=checkbox],.rc10-check input[type=checkbox],.rc18-check input[type=checkbox]){
  min-width:20px;width:20px;min-height:20px;height:20px;flex:none;margin-top:4px;
}
body.page-id-2352 #eafc-g2 .wide-card,
body.page-id-2352 #eafc-g2 .profile-panel,
body.page-id-2352 #eafc-g2 .rc13-quote-stage,
body.page-id-2352 #eafc-g2 .rc18-inverse{margin-top:13px;margin-bottom:13px;padding:14px}
body.page-id-2352 #eafc-g2 .pips-workspace{margin-top:15px;padding-top:15px}
body.page-id-2352 #eafc-g2 .quote-lab{margin:13px 0;padding:14px}
body.page-id-2352 #eafc-g2 :is(.rc11-target-panel,.rc11-display-panel,.rc11-compare,.rc11-compare-side){margin-top:10px;margin-bottom:10px;padding:10px}
body.page-id-2352 #eafc-g2 .nanpin-intro{margin-bottom:12px}
body.page-id-2352 #eafc-g2 .stat-row{margin-top:11px;gap:8px}
body.page-id-2352 #eafc-g2 .stat{min-height:0;padding:10px 11px}
body.page-id-2352 #eafc-g2 .stat strong{font-size:clamp(17px,1.5vw,22px);line-height:1.4;margin-top:3px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
body.page-id-2352 #eafc-g2 .stat em{font-size:12px}
body.page-id-2352 #eafc-g2 :is(.alert,.result-message,.risk-tier-hint){margin-top:10px}
body.page-id-2352 #eafc-g2 :is(.footnote,.foot-bottom){margin-top:10px;padding-top:10px}
body.page-id-2352 #eafc-g2 :is(.primary,.stage-run){margin-top:12px}
body.page-id-2352 #eafc-g2 .profile-fields{margin:11px 0}
body.page-id-2352 #eafc-g2 .profile-actions{gap:7px;margin:8px 0}
body.page-id-2352 #eafc-g2 .profile-actions button{padding:7px 10px}
body.page-id-2352 #eafc-g2 .eafc-legacy-actions{flex:1 1 100%;border-top:1px solid #d9e4eb;margin-top:6px}
body.page-id-2352 #eafc-g2 .eafc-legacy-actions>summary{padding:8px 3px;cursor:pointer;font-size:14px;color:#37566d;font-weight:750}
body.page-id-2352 #eafc-g2 .eafc-legacy-actions-grid{display:flex;flex-wrap:wrap;gap:7px;padding:6px 0}
body.page-id-2352 #eafc-g2 :is(.eafc-suite-notice,.profile-caveat){line-height:1.65}
body.page-id-2352 .eafc-suite-notice{padding:10px 13px;margin-top:8px;margin-bottom:11px;font-size:13px;line-height:1.6}
/* Table density without degrading text clarity. */
body.page-id-2352 #eafc-g2 :is(.stage-input-table,.rc13-plan-table,.rc16-stress-table) th,
body.page-id-2352 #eafc-g2 :is(.stage-input-table,.rc13-plan-table,.rc16-stress-table) td,
body.page-id-2352 #eafc-g2 .table-wrap th,
body.page-id-2352 #eafc-g2 .table-wrap td{padding:7px 9px;line-height:1.5;font-variant-numeric:tabular-nums}
body.page-id-2352 #eafc-g2 .table-wrap,
body.page-id-2352 #eafc-g2 .rc13-plan-table-wrap,
body.page-id-2352 #eafc-g2 .rc16-table-wrap{max-width:100%;overflow-x:auto}
/* Explanatory article: modest vertical rhythm while maintaining the 1280px width. */
body.page-id-2352 #postContent> :is(h2,.wp-block-heading){scroll-margin-top:70px}
body.page-id-2352 #postContent>h2{margin-top:24px;margin-bottom:10px}
body.page-id-2352 #postContent>h3{margin-top:13px;margin-bottom:7px}
body.page-id-2352 #postContent>p{margin-top:0;margin-bottom:12px;line-height:1.8}
body.page-id-2352 #postContent .wp-block-table{margin-top:10px;margin-bottom:15px}
body.page-id-2352 #postContent .wp-block-table :is(th,td){padding:9px 12px;line-height:1.55}
@media(max-width:670px){
  body.page-id-2352 #eafc-g2 .settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  body.page-id-2352 #eafc-g2 .panel{padding:11px}
  body.page-id-2352 #eafc-g2 .panel-card,body.page-id-2352 #eafc-g2 .results{padding:12px}
  body.page-id-2352 #eafc-g2 .form-grid{gap:9px}
  body.page-id-2352 #eafc-g2 .quote-lab{padding:12px}
  body.page-id-2352 #eafc-g2 .stat strong{font-size:17px}
}
/* Keep paired inputs on standard phones and align control baselines.
   Use a single column only on extra narrow screens. */
@media(max-width:360px){
  body.page-id-2352 #eafc-g2 .settings-grid,
  body.page-id-2352 #eafc-g2 .form-grid{grid-template-columns:minmax(0,1fr)}
}

@media (min-width:361px) and (max-width:570px){
 body.page-id-2352 #eafc-g2 .settings-grid,
 body.page-id-2352 #eafc-g2 .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* RC18W4 editorial readability / H1 alignment (2026-10-14).
   Restrict to the single integrated calculator page, ID 2352.
   The theme owns its page title (outside #postContent); calculator fragment uses H2.
   No modification to other pages, arithmetic, input values, or storage. */
@media (min-width: 768px) {
  body.page-id-2352 :is(main h1, #mainContent h1, h1.entry-title, h1.page-title, h1.a--post-title, h1.c--post-title, h1.jinr-post-title) {
    --eafc-title-wide: min(1280px, calc(100vw - 48px));
    box-sizing: border-box;
    display: block;
    width: var(--eafc-title-wide);
    max-width: none;
    margin-left: calc((100% - var(--eafc-title-wide)) / 2);
    margin-right: calc((100% - var(--eafc-title-wide)) / 2);
    text-align: left;
    line-height: 1.45;
  }
}
/* Gutenberg native Details FAQ; accessible native keyboard interaction.
   Answers remain in the document's HTML (no JS-only hidden fetch). */
body.page-id-2352 #postContent details.wp-block-details.eafc-calc-faq {
  box-sizing: border-box;
  background: #fff;
  color: #263d51;
  border: 1px solid #d5e1e9;
  border-left: 4px solid #315d7d;
  border-radius: 8px;
  margin: 9px 0;
  padding: 0;
  overflow: hidden;
}
body.page-id-2352 #postContent details.eafc-calc-faq > summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: 12px;
  padding: 13px 16px;
  cursor: pointer;
  font-size: 16px;
  font-weight: 750;
  line-height: 1.6;
  color: #20394e;
  background: #f7fafc;
}
body.page-id-2352 #postContent details.eafc-calc-faq > summary::-webkit-details-marker {display:none;}
body.page-id-2352 #postContent details.eafc-calc-faq > summary::after {
  content: "+";
  color: #315d7d;
  font-size: 20px;
  font-weight: 800;
  flex: 0 0 auto;
  line-height: 1;
}
body.page-id-2352 #postContent details.eafc-calc-faq[open] > summary::after {content:"−";}
body.page-id-2352 #postContent details.eafc-calc-faq > summary:focus-visible {
  outline: 3px solid #0c79b8;
  outline-offset: -3px;
}
body.page-id-2352 #postContent details.eafc-calc-faq > p {
  margin: 0;
  padding: 13px 16px 16px;
  font-size: 15px;
  line-height: 1.85;
  color: #2d4354;
}
body.page-id-2352 #postContent details.eafc-calc-faq[open] > summary {border-bottom:1px solid #d5e1e9;}
/* Balanced editorial body. Avoid making a wider article harder to read. */
body.page-id-2352 #postContent > p,
body.page-id-2352 #postContent > .wp-block-paragraph {
  line-height: 1.9;
  font-size: clamp(15px, 1.06vw, 17px);
  color: #273b4d;
}
body.page-id-2352 #postContent .wp-block-table {
  width:100%;
  overflow-x:auto;
}
body.page-id-2352 #postContent .wp-block-table table {
  width:100%;
  border-collapse:collapse;
}
body.page-id-2352 #postContent .wp-block-table th {
  background: #f0f5f9;
  color: #263d51;
  font-weight: 750;
}
body.page-id-2352 #postContent .wp-block-table td {color:#263d51;vertical-align:top;}
@media(max-width:767px){
  body.page-id-2352 #postContent details.eafc-calc-faq > summary {padding:12px;font-size:15px;}
  body.page-id-2352 #postContent details.eafc-calc-faq > p {padding:11px 12px 14px;font-size:14px;}
}

/* Prevent theme/UA figure margins from shifting responsive comparison tables.
   On small screens, only the table itself scrolls; the page stays fixed. */
body.page-id-2352 #postContent figure.wp-block-table {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  overflow-x: auto;
}
body.page-id-2352 #postContent .wp-block-table table {
  min-width: 0;
  table-layout: fixed;
}

/* UX-R1 task-first progressive workflow. No engine or persistence changes. */
.eafc-g2 .uxr1-context{background:#f1f6f9;padding:13px 19px;border-block:1px solid #dbe7ee}
.eafc-g2 .uxr1-context-row{display:flex;flex-wrap:wrap;align-items:center;gap:7px 11px;color:#28485f;font-size:14px}
.eafc-g2 .uxr1-context-row>span:not(.uxr1-context-status){padding:3px 9px;border-radius:5px;background:#fff;border:1px solid #d5e2ea;font-size:13px;font-weight:700}
.eafc-g2 .uxr1-context-row .uxr1-context-status{font-size:13px;color:#76522b;font-weight:750}
.eafc-g2 .uxr1-context p{margin:6px 0 0;font-size:13px;line-height:1.6;color:#486479}
.eafc-g2 .uxr1-common{margin:0 17px;border-bottom:1px solid #dbe5eb}
.eafc-g2 .uxr1-common>summary,.eafc-g2 .uxr1-profile-shell>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 6px;cursor:pointer;color:#234762;font-size:15px;font-weight:750;line-height:1.6}
.eafc-g2 .uxr1-common>summary:focus-visible,.eafc-g2 .uxr1-profile-shell>summary:focus-visible{outline:3px solid #0c79b8;outline-offset:-1px}
.eafc-g2 .uxr1-common .shared{box-shadow:none;border:1px solid #dce5eb;margin:0 0 13px;border-radius:8px}
.eafc-g2 .uxr1-profile-shell{margin:0 0 14px;border:1px solid #dce5eb;border-radius:8px;background:#fff;padding:0 12px}
.eafc-g2 .uxr1-profile-shell>.profile-panel{margin:0 0 12px}
.eafc-g2 .uxr1-workflows{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:0 0 15px;padding:12px;background:#f6f9fb;border:1px solid #dce5eb;border-radius:9px}
.eafc-g2 .uxr1-choice-label{width:100%;font-size:13px;font-weight:760;color:#314c62}
.eafc-g2 .uxr1-choice{background:#fff;border:1px solid #b8cbd8;border-radius:7px;padding:10px 13px;min-height:44px;color:#264a66;font-weight:740;font-size:14px;line-height:1.4;font-family:inherit;cursor:pointer;white-space:normal}
.eafc-g2 .uxr1-choice:hover{border-color:#315d7d;background:#f0f5f8}
.eafc-g2 .uxr1-choice.is-active,.eafc-g2 .uxr1-choice[aria-pressed="true"]{background:#234762;color:#fff;border-color:#234762}
.eafc-g2 .uxr1-choice:focus-visible{outline:3px solid #0c79b8;outline-offset:2px}
.eafc-g2 .uxr1-helper,.eafc-g2 .uxr1-held-route{border:1px solid #d8e5ee;background:#f5f9fc;color:#28485f;padding:14px 16px;border-radius:8px;font-size:14px;line-height:1.7;margin:0 0 13px}
.eafc-g2 .uxr1-held-route h4{font-size:17px;margin:0 0 7px}
.eafc-g2 .uxr1-held-route p{margin:0 0 10px}
.eafc-g2 .uxr1-held-route button{background:#234762;color:white;padding:10px 15px;border:0;border-radius:6px;cursor:pointer;min-height:44px;font-weight:700;font-size:14px;line-height:1.4;font-family:inherit}
/* Prevent plugin/theme display declarations from overriding navigation state. */
.eafc-g2 [data-uxr1-section][hidden],
.eafc-g2 #rc16-held-panel[hidden],
.eafc-g2 .uxr1-workflows~[hidden],
.eafc-g2 .uxr1-profile-shell[hidden],
.eafc-g2 .uxr1-held-route[hidden],
.eafc-g2 .uxr1-helper[hidden],
.eafc-g2 .rc11-compare[hidden],
.eafc-g2 .nanpin-upper[hidden],
.eafc-g2 .wide-card[hidden],
.eafc-g2 #eafc-quote-lab [hidden]{display:none!important}
@media(max-width:700px){
 .eafc-g2 .uxr1-context{padding:10px 12px}
 .eafc-g2 .uxr1-context-row{gap:6px;font-size:13px}
 .eafc-g2 .uxr1-common{margin:0 10px}
 .eafc-g2 .uxr1-workflows{padding:10px;gap:7px}
 .eafc-g2 .uxr1-choice{flex:1 1 calc(50% - 7px);font-size:13px}
}

/* Narrow devices: prefer legible full tab names over mid-word breaks. */
@media(max-width:570px){
 body.page-id-2352 #eafc-g2 .tab{font-size:clamp(11px,3.1vw,13px);padding:10px 2px;overflow-wrap:normal;word-break:normal;line-height:1.35;min-height:65px}
}

/* Word-grouped tab labels prevent broken Japanese words on narrow phones. */
body.page-id-2352 #eafc-g2 .tab .uxr1-tab-unit{display:inline-flex;flex-wrap:wrap;justify-content:center;align-items:center;color:inherit;font-size:inherit;font-weight:inherit;margin:0;vertical-align:middle;gap:0}
body.page-id-2352 #eafc-g2 .tab .uxr1-tab-unit b{display:inline-block;white-space:nowrap;font-size:inherit;font-weight:inherit;color:inherit}
@media(max-width:570px){body.page-id-2352 #eafc-g2 .tab .uxr1-tab-unit{display:flex}}


/* UX-R2: calculator-only visual boundary, task emphasis and compact input/result architecture.
   Affected: the single suite shortcode on WordPress page 2352, never the editorial article or old tool pages. */
body.page-id-2352 #eafc-g2.eafc-g2 {
  background:#e4edf4;
  border:2px solid #a9c2d3;
  border-radius:16px;
  box-shadow:0 14px 34px rgba(24,52,77,.16);
  padding:0 15px 23px;
  overflow:visible;
  isolation:isolate;
}
body.page-id-2352 #eafc-g2 .page-head {
  background:#173d59;
  color:#fff;
  padding:19px 24px;
  margin:0 -15px 12px;
  border-radius:13px 13px 0 0;
  border-bottom:5px solid #d89453;
}
body.page-id-2352 #eafc-g2 .page-head :is(.suite-main-heading,.brand strong) {color:#fff}
body.page-id-2352 #eafc-g2 .page-head :is(p,.brand small) {color:#e3eef6}
body.page-id-2352 #eafc-g2 .page-head .top-tag {background:#f8e7cb;color:#4b351a;border:1px solid #cba46a;}
body.page-id-2352 #eafc-g2 .page-head .brand .mark {background:#fff;color:#173d59}
body.page-id-2352 #eafc-g2 .workarea {background:#fff;border:1px solid #bdcedc;box-shadow:0 2px 12px rgba(18,45,67,.08)}
body.page-id-2352 #eafc-g2 .tools-head {background:#f2f6f9;border-bottom:1px solid #cbdbe6;}
body.page-id-2352 #eafc-g2 .tablist {
  gap:9px;padding:10px 14px 0;background:#e8f0f5;
  border-bottom:2px solid #a9c0d0;
}
body.page-id-2352 #eafc-g2 .tab {
  border:1px solid #a9c2d3;
  border-bottom:4px solid #b1c6d5;
  border-radius:10px 10px 0 0;
  background:#f9fbfd;
  color:#284b64;
  min-height:64px;
  font-size:15px;
  font-weight:800;
  line-height:1.45;
  padding:9px 8px 8px;
  box-shadow:inset 0 0 0 1px #fff;
  transition:background-color .12s ease;
}
body.page-id-2352 #eafc-g2 .tab[aria-selected="true"] {
  color:#fff;
  background:#193f5d;
  border-color:#193f5d;
  border-bottom-color:#efb673;
  box-shadow:0 2px 10px rgba(21,55,80,.2);
}
body.page-id-2352 #eafc-g2 .tab[aria-selected="true"] span,
body.page-id-2352 #eafc-g2 .tab[aria-selected="true"] .uxr1-tab-unit b {color:#fff}
body.page-id-2352 #eafc-g2 .tab[aria-selected="true"]::after {
  content:"選択中";
  display:inline-block;
  margin-left:9px;
  padding:2px 6px;
  background:#fae3bf;
  color:#4c3116;
  border-radius:4px;
  font-size:11px;
  font-weight:850;
  vertical-align:middle;
}
body.page-id-2352 #eafc-g2 .tab[aria-selected="false"]:hover {background:#e0ebf3;color:#183a54}
body.page-id-2352 #eafc-g2 .tab:focus-visible,
body.page-id-2352 #eafc-g2 .uxr1-choice:focus-visible {outline:3px solid #e7a45c;outline-offset:2px}
body.page-id-2352 #eafc-g2 .uxr1-workflows {
  background:#f0f5f9;border-color:#c1d3df;border-left:4px solid #4a748d;padding:12px 14px;
}
body.page-id-2352 #eafc-g2 .uxr1-choice-label {font-size:14px;color:#203c52}
body.page-id-2352 #eafc-g2 .uxr1-choice {
  min-height:46px;position:relative;border:2px solid #a8bece;background:#fff;color:#284b65;
  font-size:14px;border-radius:8px;padding:8px 12px;font-weight:760;
}
body.page-id-2352 #eafc-g2 .uxr1-choice[aria-pressed="true"] {
  background:#214e6d;border-color:#214e6d;color:#fff;box-shadow:0 2px 8px rgba(18,49,74,.13);
}
body.page-id-2352 #eafc-g2 .uxr1-choice[aria-pressed="true"]::before {content:"✓ ";font-weight:900;color:#ffcf90}
body.page-id-2352 #eafc-g2 .uxr1-choice[aria-pressed="true"]::after {
  content:" 表示中";margin-left:4px;font-size:11px;color:#fff3db;font-weight:750;
}
body.page-id-2352 #eafc-g2 .panel-card {background:#fff}
body.page-id-2352 #eafc-g2 .results {background:#f2f7fa;border-color:#b9cfdf}
body.page-id-2352 #eafc-g2 .results .primary-stat {background:#e2f0f7;border-color:#bad7e8;box-shadow:inset 3px 0 0 #337499}
body.page-id-2352 #eafc-g2 .uxr2-input-heading {display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:6px 0 9px;color:#233d51}
body.page-id-2352 #eafc-g2 .uxr2-input-heading strong {font-size:16px}
body.page-id-2352 #eafc-g2 .uxr2-input-heading span {font-size:12px;color:#46677e}
body.page-id-2352 #eafc-g2 .uxr2-advanced {border:1px solid #cedee9;background:#f7fafc;border-radius:9px;margin:13px 0;padding:0 12px}
body.page-id-2352 #eafc-g2 .uxr2-advanced>summary {padding:12px 3px;cursor:pointer;display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px 12px;color:#244862;font-size:15px;font-weight:800;line-height:1.6}
body.page-id-2352 #eafc-g2 .uxr2-advanced>summary small {font-size:12px;color:#4c6577;font-weight:600}
body.page-id-2352 #eafc-g2 .uxr2-advanced>summary::marker {color:#244862}
body.page-id-2352 #eafc-g2 .uxr2-advanced[open] {padding-bottom:13px;background:#fff}
body.page-id-2352 #eafc-g2 .uxr2-advanced-grid {margin-top:10px;border-top:1px solid #e1ebf0;padding-top:15px}
body.page-id-2352 #eafc-g2 .uxr2-back-button {border:1px solid #24536e;border-radius:7px;background:#fff;color:#24536e;font-size:14px;font-weight:750;cursor:pointer;padding:9px 13px;margin-bottom:10px;min-height:44px}
body.page-id-2352 #eafc-g2 .uxr2-compare-summary {margin-top:16px;border:1px solid #b2c9d7;border-radius:9px;background:#f2f8fb;padding:16px}
body.page-id-2352 #eafc-g2 .uxr2-compare-summary h4 {margin:0 0 7px;font-size:18px;color:#1b3e59}
body.page-id-2352 #eafc-g2 .uxr2-compare-summary p {margin:0 0 12px;line-height:1.65;font-size:13px;color:#415d70}
body.page-id-2352 #eafc-g2 .uxr2-compare-table {width:100%;min-width:440px;border-collapse:collapse;font-size:14px;text-align:left}
body.page-id-2352 #eafc-g2 .uxr2-compare-table th,
body.page-id-2352 #eafc-g2 .uxr2-compare-table td {padding:10px 12px;text-align:left;white-space:normal;vertical-align:top;border:1px solid #d4e2ec;overflow-wrap:anywhere}
body.page-id-2352 #eafc-g2 .uxr2-compare-table thead th {background:#dcecf5;color:#1c425d}
body.page-id-2352 #eafc-g2 .uxr2-compare-table tbody th {background:#f5f9fc;color:#314d61;font-weight:750}
body.page-id-2352 #eafc-g2 .uxr2-state-cell {font-size:13px;line-height:1.6}
body.page-id-2352 #eafc-g2 .uxr2-compare-details {border:1px solid #c4d7e3;background:#fff;padding:0 12px;margin-top:10px}
body.page-id-2352 #eafc-g2 .uxr2-compare-details>summary {cursor:pointer;color:#214b69;font-size:15px;font-weight:780;padding:13px 4px;min-height:44px}
body.page-id-2352 #eafc-g2 .uxr2-compare-details[open]>summary {border-bottom:1px solid #e2ecf1}
body.page-id-2352 #eafc-g2 .uxr2-compare-details .table-wrap {margin:10px 0}
/* A tall input panel keeps its result in view on sufficiently large desktops.
   Never use sticky result panes on smartphones/tablets or short screens. */
@media(min-width:1050px) and (min-height:760px) {
  body.page-id-2352 #eafc-g2 .nanpin-upper>.nanpin-result {position:sticky;top:20px;align-self:start;}
}
@media(max-width:700px) {
  body.page-id-2352 #eafc-g2.eafc-g2 {padding:0 9px 14px;border-radius:12px}
  body.page-id-2352 #eafc-g2 .page-head {margin:0 -9px 9px;padding:15px 12px;border-radius:10px 10px 0 0}
  body.page-id-2352 #eafc-g2 .tablist {gap:4px;padding:8px 5px 0}
  body.page-id-2352 #eafc-g2 .tab {min-height:78px;line-height:1.3;padding:9px 3px 7px;font-size:12px}
  body.page-id-2352 #eafc-g2 .tab[aria-selected="true"]::after {display:block;width:max-content;margin:4px auto 0;font-size:10px}
  body.page-id-2352 #eafc-g2 .tab span{font-size:11px}
  body.page-id-2352 #eafc-g2 .uxr1-choice {flex:1 1 calc(50% - 8px);padding:8px 6px;font-size:13px}
  body.page-id-2352 #eafc-g2 .uxr1-choice[aria-pressed="true"]::after {display:block;font-size:10px}
  body.page-id-2352 #eafc-g2 .uxr2-advanced>summary {font-size:14px}
}
@media(prefers-reduced-motion:reduce){body.page-id-2352 #eafc-g2 .tab {transition:none}}

/* UX-R2 compact masthead: clear tool/article boundary without pushing calculators down. */
@media(min-width:801px){
 body.page-id-2352 #eafc-g2 .page-head{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,310px);
  grid-template-areas:"brand tag" "title explanation";
  align-items:center;column-gap:20px;row-gap:4px;
  padding:12px 22px 14px;
 }
 body.page-id-2352 #eafc-g2 .page-head .brand{grid-area:brand}
 body.page-id-2352 #eafc-g2 .page-head .top-tag{grid-area:tag;justify-self:end;margin:0;font-size:11px;max-width:100%;text-align:right}
 body.page-id-2352 #eafc-g2 .page-head .suite-main-heading{grid-area:title;margin:0;font-size:clamp(20px,2vw,27px)}
 body.page-id-2352 #eafc-g2 .page-head>p{grid-area:explanation;max-width:none;margin:0;font-size:12px;line-height:1.55;text-align:right}
}
@media(max-width:800px){
 body.page-id-2352 #eafc-g2 .page-head{display:grid;grid-template-columns:1fr;gap:5px;padding:13px 14px}
 body.page-id-2352 #eafc-g2 .page-head .top-tag{margin:1px 0;padding:4px 8px;justify-self:start;font-size:11px}
 body.page-id-2352 #eafc-g2 .page-head .suite-main-heading{margin:2px 0;font-size:clamp(20px,4.8vw,26px)}
 body.page-id-2352 #eafc-g2 .page-head>p{font-size:12px;line-height:1.5}
}

/* Never present the simple workflow as default-style while a detailed stage plan remains effective. */
body.page-id-2352 #eafc-g2 .uxr2-mode-warning{border:1px solid #e3c599;border-left:4px solid #b47536;background:#fff6e7;color:#69441b;font-size:14px;line-height:1.7;padding:10px 13px;border-radius:7px;margin:0 0 12px}
body.page-id-2352 #eafc-g2 .uxr2-mode-warning[hidden]{display:none!important}

/* UX-R2.1: common multiplier + opt-in per-stage overrides. Page-only. */
body.page-id-2352 #eafc-g2 .stage-grid-caveat{background:#eaf3f7;border-left:4px solid #286183;color:#183b51;padding:10px 13px;border-radius:5px;font-size:14px;line-height:1.65}
body.page-id-2352 #eafc-g2 .stage-input-table input::placeholder{color:#44657b;opacity:1;font-style:normal}
body.page-id-2352 #eafc-g2 .stage-input-table input:not(:placeholder-shown){border-color:#347092;background:#f4faff}
body.page-id-2352 #eafc-g2 .stage-rounding-note{color:#344f63;background:#f6f9fb;border:1px solid #d7e4ed;border-radius:6px;padding:10px 12px;font-size:13px}

body.page-id-2352 #eafc-g2 .uxr21-rounding-row{display:grid;grid-template-columns:minmax(180px,0.9fr) minmax(200px,1.1fr);align-items:end;gap:12px;padding:10px 12px;margin:12px 0 4px;background:#eef6fa;border:1px solid #bdd3e0;border-radius:7px}
body.page-id-2352 #eafc-g2 .uxr21-rounding-row label{font-weight:780;color:#183c54;font-size:14px}
body.page-id-2352 #eafc-g2 .uxr21-rounding-row p{font-size:13px;color:#405c70;line-height:1.65;margin:0 0 3px}
@media(max-width:680px){body.page-id-2352 #eafc-g2 .uxr21-rounding-row{grid-template-columns:1fr}}

/* TR01-R4: Calculator 01 local compact presentation only. Global layout unchanged. */
body.page-id-2352 #eafc-g2 #panel-trade .uxr1-workflows [data-uxr1-flow][aria-pressed="true"]::after{content:none;display:none}
body.page-id-2352 #eafc-g2 #panel-trade .uxr1-workflows .uxr1-choice{white-space:nowrap;min-width:0;flex:1 1 auto}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-price-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-price-actions .uxr1-choice{flex:1 1 auto;min-width:96px;padding:6px 8px;font-size:12px;min-height:38px;white-space:nowrap}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-price-cell{min-width:0}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-price-cell>label{display:block}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-price-cell input{width:100%;box-sizing:border-box}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-price-cell .help{display:block;line-height:1.5;margin-top:5px}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-fx-card{border:1px solid #dce5eb;border-radius:7px;padding:10px 12px;margin-top:12px;background:#f6f9fb;min-width:0}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-fx-head{display:flex;flex-direction:column;gap:2px;min-width:0}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-fx-head strong{font-size:14px;color:#244762;overflow-wrap:anywhere}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-fx-head span{font-size:11px;color:#657d8d;overflow-wrap:anywhere}
body.page-id-2352 #eafc-g2 #panel-trade #tr01-fx-details{margin-top:7px}
body.page-id-2352 #eafc-g2 #panel-trade #tr01-fx-details summary{font-size:12px;cursor:pointer}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-fx-action{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-fx-action .help{overflow-wrap:anywhere}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-manual-check{display:flex;align-items:center;gap:10px}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-manual-check[hidden]{display:none!important}
body.page-id-2352 #eafc-g2 #panel-trade .tr01-fx-card label[hidden]{display:none!important}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade>button.primary{margin-top:12px}
body.page-id-2352 #eafc-g2 #panel-trade #tr01-specification,body.page-id-2352 #eafc-g2 #panel-trade #tr01-costs,body.page-id-2352 #eafc-g2 #panel-trade #tr01-risk-costs{margin-top:10px}
body.page-id-2352 #eafc-g2 #panel-trade #tr01-local-hint{font-size:11px;line-height:1.55;margin-top:9px}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-core-formula{font-size:12px;line-height:1.65;overflow-wrap:anywhere;word-break:normal;margin-top:13px}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-result-details{margin-top:9px}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-result-details summary{font-size:12px;font-weight:700;cursor:pointer}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-result-details p{overflow-wrap:anywhere;font-size:12px;line-height:1.7}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-mini-note{font-size:11px;line-height:1.55;color:#506678;margin-top:9px}
@media(max-width:570px){body.page-id-2352 #eafc-g2 #panel-trade .uxr1-workflows .uxr1-choice{flex:1 1 calc(50% - 7px);font-size:12px;padding:8px 5px}body.page-id-2352 #eafc-g2 #panel-trade .tr01-price-actions{flex-wrap:nowrap}body.page-id-2352 #eafc-g2 #panel-trade .tr01-price-actions .uxr1-choice{min-width:0}body.page-id-2352 #eafc-g2 #panel-trade #trade-out .stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:360px){body.page-id-2352 #eafc-g2 #panel-trade #trade-out .stat-row{grid-template-columns:minmax(0,1fr)}}

body.page-id-2352 #eafc-g2 #panel-trade .tr01-price-status-row{grid-column:1/-1;display:block;font-size:11px;line-height:1.55;margin-top:-5px;overflow-wrap:anywhere;color:#536d80}


/* TR01-R4.1 / Owner screenshot correction: ONLY the 01 calculator inside #panel-trade.
   Soft blue-grey functional groups; no global theme or 02/03 layout changes. */
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-basic-fields{
  display:flex;flex-direction:column;gap:9px;min-width:0;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-form-group{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;
  min-width:0;padding:10px 12px;border-radius:7px;
  border:1px solid #d7e2e9;border-left:3px solid #90a9b9;background:#f7f9fb;
  box-sizing:border-box;align-items:start;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-group-context{
  background:#f6f9fb;border-left-color:#97aebe;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-group-order{
  background:#f3f7fa;border-left-color:#708da2;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-group-price{
  background:#eef5fa;border-color:#cadde9;border-left-color:#42799b;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-group-options{
  background:#f8f9fb;border-left-color:#9aabba;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-form-group>label{
  display:flex;flex-direction:column;justify-content:flex-end;gap:5px;min-width:0;
  margin:0;font-size:14px;line-height:1.5;min-height:0;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-form-group>label :is(input,select){
  box-sizing:border-box;display:block;width:100%;min-width:0;margin:0;min-height:44px;height:44px;
  font-size:16px;flex:none;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-group-price>label :is(input,select){
  background-color:#fff;border:1px solid #84aac2;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-form-group>[hidden]{display:none!important;}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-group-price .tr01-price-actions{
  grid-column:1/-1;display:flex;flex-wrap:nowrap;gap:8px;
  align-items:center;margin:0;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-group-price .tr01-price-actions .uxr1-choice{
  flex:0 1 146px;min-width:0;min-height:40px;font-size:14px;
  line-height:1.4;padding:7px 11px;white-space:nowrap;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-group-price .tr01-price-status-row{
  grid-column:1/-1;display:block;min-width:0;margin:0;
  font-size:13px;line-height:1.55;color:#47677c;overflow-wrap:anywhere;
}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade #tr01-trade-intro[hidden]{display:none!important;}
body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-fx-head span{
  font-size:13px;line-height:1.55;
}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-core-formula{
  font-size:15px;line-height:1.8;margin-top:14px;
  padding:10px 12px;background:#fff;border:1px solid #d6e4ec;border-radius:6px;
  overflow-wrap:anywhere;word-break:normal;
}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-core-formula p{
  margin:5px 0;font-size:15px;line-height:1.8;color:#243f54;
}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-result-details{
  margin-top:13px;border-top:1px solid #d7e3ea;padding-top:10px;
}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-result-details summary{
  font-size:15px;line-height:1.65;font-weight:750;cursor:pointer;
}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-result-details p{
  margin:10px 0;font-size:15px;line-height:1.75;color:#2e4b60;
  overflow-wrap:anywhere;word-break:normal;
}
body.page-id-2352 #eafc-g2 #panel-trade #trade-out .tr01-mini-note{
  font-size:14px;line-height:1.65;margin-top:12px;color:#4b6678;
}
@media(max-width:410px){
  body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-form-group{
    padding:9px 10px;gap:8px;
  }
  body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-form-group>label{
    font-size:13px;
  }
  body.page-id-2352 #eafc-g2 #panel-trade #form-trade .tr01-group-price .tr01-price-actions .uxr1-choice{
    flex:1 1 0;padding:7px 6px;font-size:13px;
  }
}

/* TR01-R5A: nested navigation consolidation; only the affected workspaces. */
body.page-id-2352 #eafc-g2 #uxr5-pips-tool{border:1px solid #c9d9e4;background:#f4f8fb;border-radius:8px;padding:10px 13px;margin-top:14px;min-width:0}
body.page-id-2352 #eafc-g2 #uxr5-pips-tool>summary{cursor:pointer;color:#254c67;font-weight:750;font-size:14px;line-height:1.6}
body.page-id-2352 #eafc-g2 #uxr5-pips-tool .pips-workspace{margin-top:10px;padding-top:12px}
body.page-id-2352 #eafc-g2 .uxr5-mode-caption{margin:8px 0 12px;color:#3a586a;font-size:14px;line-height:1.6}
body.page-id-2352 #eafc-g2 .uxr5-mode-workflows .uxr1-choice{flex:1 1 0;white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
body.page-id-2352 #eafc-g2 .uxr5-mode-workflows .uxr1-choice[aria-pressed="true"]::after{display:none;content:none}
body.page-id-2352 #eafc-g2 #uxr5-risk-held[hidden],body.page-id-2352 #eafc-g2 #uxr5-nanpin-quote[hidden],body.page-id-2352 #eafc-g2 #eafc-quote-lab[hidden]{display:none!important}
@media(max-width:570px){body.page-id-2352 #eafc-g2 .uxr5-mode-workflows .uxr1-choice{flex:1 1 100%;white-space:normal;text-overflow:clip;min-height:42px}}

/* R5B-01: shared quote specification, used only in 02-held and 03-extra-plan. */
body.page-id-2352 #eafc-g2 #eafc-quote-lab .r5b01-brief{font-size:14px;line-height:1.6;margin:8px 0 10px;color:#405e72}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end;margin:6px 0 10px}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-identity label{font-size:14px;min-width:0;margin:0}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-identity :is(input,select){width:100%;height:43px;min-width:0;font-size:15px}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-fold{margin:9px 0;border:1px solid #cbdce7;border-radius:8px;background:#f3f7fa;overflow:visible}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-fold>summary{list-style:revert;cursor:pointer;min-height:44px;line-height:1.5;padding:10px 12px;font-size:15px;font-weight:750;color:#21445d;display:flex;gap:10px;align-items:center;justify-content:space-between}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-fold>summary small{font-size:12px;color:#547185;font-weight:500;margin-left:4px}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-inner{border-top:1px solid #dce7ef;padding:12px;background:#fff;border-radius:0 0 8px 8px}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-subtitle{font-size:14px;font-weight:750;line-height:1.5;margin:8px 0 0;color:#25495f}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-note{font-size:14px;line-height:1.6;color:#38596d;margin:0 0 10px}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-inner>.form-grid{margin:6px 0 12px;gap:11px 13px}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-inner .r5b01-rate-button .help{font-size:13px;line-height:1.5}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-model-hint{font-size:13px;line-height:1.5;margin:10px 0}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-state{flex:none;color:#8b5a28;font-weight:700;font-size:12px;border:1px solid #e6d7bd;background:#fbf6ee;border-radius:4px;padding:4px 7px;white-space:nowrap}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-state[data-ready="true"]{color:#335c55;border-color:#bedbd3;background:#eef7f3}
body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-ack{background:#f3f7fa;border-radius:6px;padding:10px 8px;font-size:14px}
@media(max-width:390px){body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-identity{grid-template-columns:1fr}body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-fold>summary{font-size:14px}body.page-id-2352 #eafc-g2 #form-quote-rc10 .r5b01-fold>summary small{font-size:11px}}

/* EAFC R5B-02: scope strictly to 02/XAG-BTC inverse; no global layout. */
#eafc-g2 .r5b02-inverse .r5b02-section{padding:14px;border:1px solid #d5e1e7;border-radius:8px;background:#f5f8fb;margin:10px 0}
#eafc-g2 .r5b02-inverse .r5b02-section-title{font-size:15px;color:#203d51;margin:0 0 10px}
#eafc-g2 .r5b02-inverse .r5b02-fold{margin:10px 0;border:1px solid #cbd9e2;border-radius:8px;background:#fff;overflow:hidden}
#eafc-g2 .r5b02-inverse .r5b02-fold > summary{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:revert;cursor:pointer;padding:13px 15px;font-weight:700;font-size:14px;line-height:1.5;color:#24435a;background:#f3f7fa}
#eafc-g2 .r5b02-inverse .r5b02-state{font-size:12px;white-space:nowrap;border-radius:4px;background:#fff3e5;color:#835123;padding:3px 7px;border:1px solid #e8d7be}
#eafc-g2 .r5b02-inverse .r5b02-state[data-ready="true"]{background:#eef5f4;color:#315e50;border-color:#c9dfd6}
#eafc-g2 .r5b02-inverse .r5b02-fold-content{padding:14px 12px 10px}
#eafc-g2 .r5b02-inverse .r5b02-help{font-size:14px;line-height:1.65;margin:0 0 14px}
#eafc-g2 .r5b02-inverse [hidden]{display:none!important}
#eafc-g2 .r5b02-inverse .r5b02-confirm{margin:16px 0;font-size:14px;align-items:center}
#eafc-g2 .r5b02-inverse .r5b02-result-title{font-size:17px;line-height:1.5;margin:0 0 12px;color:#1b4057}
#eafc-g2 .r5b02-inverse .r5b02-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
#eafc-g2 .r5b02-inverse .r5b02-result-row{background:#f2f6f8;padding:9px;border:1px solid #d9e2e8;border-radius:5px;min-width:0}
#eafc-g2 .r5b02-inverse .r5b02-result-label{display:block;font-size:13px;line-height:1.5;color:#50687a}
#eafc-g2 .r5b02-inverse .r5b02-result-value{display:block;font-size:17px;line-height:1.45;color:#213c50;overflow-wrap:anywhere}
#eafc-g2 .r5b02-inverse .r5b02-result-note{font-size:13px;line-height:1.7;margin:12px 0 0;color:#4f6474}
#eafc-g2 .r5b02-inverse #quote-stopout-result-rc18{font-size:14px;line-height:1.65}
#eafc-g2 .r5b02-inverse #quote-stopout-result-rc18 .r5b02-notice{margin:0}
@media(max-width:540px){#eafc-g2 .r5b02-inverse .r5b02-result-grid{grid-template-columns:1fr}#eafc-g2 .r5b02-inverse .r5b02-fold > summary{padding:10px;flex-wrap:wrap}}
#eafc-g2 .r5b02-inverse .r5b02-result-context{font-size:13px;line-height:1.6;color:#42586a;margin:10px 0 0}

/* R5D UX01 — presentation-only progressive disclosure. No JS or computation changes. */
#eafc-g2 .eafc-optional-inputs{margin:12px 0;border:1px solid #cbdce7;border-radius:8px;background:#f4f8fa;min-width:0}
#eafc-g2 .eafc-optional-inputs>summary{display:list-item;list-style:revert;cursor:pointer;min-height:44px;padding:11px 12px;font-size:15px;line-height:1.55;font-weight:750;color:#22445b;overflow-wrap:anywhere}
#eafc-g2 .eafc-optional-inputs>summary small{font-size:13px;font-weight:500;color:#4d6676;margin-left:8px}
#eafc-g2 .eafc-optional-inputs[open]{background:#fff}
#eafc-g2 .eafc-optional-inner{border-top:1px solid #d7e4eb;padding:12px;min-width:0}
#eafc-g2 .eafc-optional-inner>p,#eafc-g2 .eafc-compact-hint{font-size:14px;line-height:1.7;color:#41596a;margin:8px 0 10px;overflow-wrap:anywhere}
#eafc-g2 .eafc-optional-inner .form-grid{margin:6px 0;min-width:0}
#eafc-g2 .eafc-optional-inner :is(input,select){max-width:100%;min-width:0}
#eafc-g2 .eafc-display-fold>.rc11-display-panel{margin:0;border:0;border-radius:0;background:#fff;padding:12px}
#eafc-g2 .eafc-optional-inputs>summary:focus-visible{outline:2px solid #245677;outline-offset:3px}
@media(max-width:410px){#eafc-g2 .eafc-optional-inputs>summary{font-size:14px;padding:10px}#eafc-g2 .eafc-optional-inputs>summary small{display:block;margin-left:0;font-size:12px}}

/* R5D-UX02: 01 result proximity on stacked displays. The result DOM is moved,
   not cloned. All calculation, provider, and 02/03 selectors remain untouched. */
@media (max-width:900px){
 #eafc-g2 #panel-trade #form-trade > .results{
  display:block;margin:12px 0 2px;padding:13px 12px;min-height:0;
  border:1px solid #b9cfdf;border-radius:8px;background:#f2f7fa;
  scroll-margin-top:78px;
 }
 #eafc-g2 #panel-trade #form-trade > .results .results-heading{
  padding:0;margin:0;
 }
 #eafc-g2 #panel-trade #form-trade > .results .stat-row{
  margin-top:10px;
 }
}

/* R5E-RISK02: new hybrid account-risk view only; no 01/03 styling mutation. */
#eafc-g2 #r5e-legacy-risk[hidden]{display:none!important}
#eafc-g2 #panel-risk .r5e-risk-intro{margin:0 0 15px}
#eafc-g2 #panel-risk .r5e-risk-intro h3{margin:.3rem 0;font-size:clamp(20px,2.2vw,26px)}
#eafc-g2 #panel-risk .r5e-risk-intro p{line-height:1.7}
#eafc-g2 #panel-risk .r5e-risk-layout{align-items:start}
#eafc-g2 #panel-risk .r5e-risk-form{min-width:0}
#eafc-g2 #panel-risk .r5e-risk-mode{background:#f2f6fb;border:1px solid #d8e3ef;padding:10px;border-radius:9px;margin-bottom:12px}
#eafc-g2 #panel-risk .r5e-risk-mode small{display:block;color:#586575;margin-top:4px}
#eafc-g2 #panel-risk .r5e-risk-fx{padding:12px;margin:12px 0;border:1px solid #d9e3ec;border-radius:10px;background:#fafbfc}
#eafc-g2 #panel-risk .r5e-risk-fx p{margin:0 0 10px;font-size:13px;line-height:1.6}
#eafc-g2 #panel-risk .r5e-risk-fx label{display:block;margin-top:8px}
#eafc-g2 #panel-risk .r5e-positions{width:100%;border-collapse:collapse}
#eafc-g2 #panel-risk .r5e-positions th,#eafc-g2 #panel-risk .r5e-positions td{padding:6px;border-bottom:1px solid #e5e9ef;text-align:left}
#eafc-g2 #panel-risk .r5e-positions td select,#eafc-g2 #panel-risk .r5e-positions td input{width:100%;min-width:0}
#eafc-g2 #panel-risk .r5e-positions td button{white-space:nowrap;min-width:0;padding:7px 9px}
#eafc-g2 #panel-risk .r5e-row-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:9px 0}
#eafc-g2 #panel-risk .r5e-risk-details{margin:12px 0;padding:10px 12px;border:1px solid #d9e1ea;border-radius:9px}
#eafc-g2 #panel-risk .r5e-risk-details>summary{font-weight:650;cursor:pointer;line-height:1.5}
#eafc-g2 #panel-risk .r5e-risk-details>summary small{font-weight:400;color:#586575}
#eafc-g2 #panel-risk .r5e-risk-details .form-grid{margin-top:12px}
#eafc-g2 #panel-risk .r5e-risk-details p{font-size:13px;line-height:1.65;margin:10px 0}
#eafc-g2 #panel-risk .r5e-ack{display:flex;gap:10px;line-height:1.65;margin:14px 0}
#eafc-g2 #panel-risk .r5e-ack input{flex:none;width:auto}
#eafc-g2 #panel-risk .r5e-risk-output{min-width:0;scroll-margin-top:78px}
#eafc-g2 #panel-risk .r5e-risk-output:focus{outline:none}
#eafc-g2 #panel-risk .r5e-result-model,#eafc-g2 #panel-risk .r5e-disclaimer,#eafc-g2 #panel-risk .r5e-conditional-note{font-size:13px;line-height:1.7;margin:12px 0}
#eafc-g2 #panel-risk .r5e-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}
#eafc-g2 #panel-risk .r5e-metric{padding:12px 10px;border:1px solid #dbe4ed;border-radius:9px;min-width:0}
#eafc-g2 #panel-risk .r5e-metric-label{display:block;font-size:12px;line-height:1.5;color:#526274}
#eafc-g2 #panel-risk .r5e-metric-value{display:block;font-size:clamp(14px,1.55vw,20px);overflow-wrap:anywhere}
#eafc-g2 #panel-risk .r5e-metric-primary{border-color:#aec8e6;background:#f1f7fd}
#eafc-g2 #panel-risk .r5e-inverse-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#eafc-g2 #panel-risk .r5e-inverse-card{padding:12px;border:1px solid #dbe4ed;border-radius:9px;min-width:0}
#eafc-g2 #panel-risk .r5e-inverse-card h5{margin:0 0 9px;font-size:13px;line-height:1.5}
#eafc-g2 #panel-risk .r5e-inverse-card strong{display:block;overflow-wrap:anywhere;font-size:clamp(15px,1.5vw,20px)}
#eafc-g2 #panel-risk .r5e-inverse-card p,#eafc-g2 #panel-risk .r5e-inverse-card small{font-size:12px;line-height:1.6;margin:6px 0}
#eafc-g2 #panel-risk .r5e-inline-error{color:#a33131;line-height:1.6}
#eafc-g2 #panel-risk .r5e-stress-wrap{overflow-x:auto;max-width:100%;margin:10px 0}
#eafc-g2 #panel-risk .r5e-stress-table{min-width:610px;width:100%;border-collapse:collapse;font-size:12px}
#eafc-g2 #panel-risk .r5e-stress-table td,#eafc-g2 #panel-risk .r5e-stress-table th{border-bottom:1px solid #e2e8ef;padding:9px;text-align:left;white-space:nowrap}
@media(max-width:900px){
 #eafc-g2 #panel-risk .r5e-risk-layout{display:block}
 #eafc-g2 #panel-risk .r5e-risk-output{margin-top:16px}
 #eafc-g2 #panel-risk .r5e-inverse-grid{grid-template-columns:1fr}
}
@media(max-width:390px){
 #eafc-g2 #panel-risk .r5e-metrics{grid-template-columns:1fr 1fr}
 #eafc-g2 #panel-risk .r5e-positions td,#eafc-g2 #panel-risk .r5e-positions th{padding:4px}
 #eafc-g2 #panel-risk .r5e-positions td button{padding:5px;font-size:12px}
}

/* R5E-P3: 02-only compact held positions, progressive details and FX provenance. */
#eafc-g2 #panel-risk .r5e-simple-hint,
#eafc-g2 #panel-risk .r5e-assumption-hint,
#eafc-g2 #panel-risk .r5e-reset-hint{font-size:12px;line-height:1.65;color:#526778;margin:8px 0 13px}
#eafc-g2 #panel-risk .r5e-assumption-hint{border-left:3px solid #d3a16e;padding:8px 10px;background:#fbf7f1}
#eafc-g2 #panel-risk .r5e-fx-heading{font-size:13px;display:block;margin:0 0 8px}
#eafc-g2 #panel-risk .r5e-risk-fx [hidden]{display:none!important}
#eafc-g2 #panel-risk .r5e-fx-auto{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}
#eafc-g2 #panel-risk .r5e-fx-auto button{max-width:100%;min-height:38px;cursor:pointer}
#eafc-g2 #panel-risk .r5e-fx-auto small{font-size:11px;color:#536577;line-height:1.5}
#eafc-g2 #panel-risk #r5e-fx-status{font-size:12px;line-height:1.6;margin:10px 0 0;overflow-wrap:anywhere}
#eafc-g2 #panel-risk #r5e-fx-box[data-status="unconfirmed"]{border-color:#dbb7a1}
#eafc-g2 #panel-risk #r5e-fx-box[data-status="auto-confirmed"]{border-color:#9fc4b0}
#eafc-g2 #panel-risk .r5e-risk-fx #r5e-fx-controls label{display:flex;flex-direction:column;gap:6px;margin-top:10px}
#eafc-g2 #panel-risk .r5e-risk-fx #r5e-manual-confirm{flex-direction:row;align-items:flex-start}
#eafc-g2 #panel-risk .r5e-risk-fx #r5e-manual-confirm input{flex:none;width:auto;height:auto;margin-top:2px}
#eafc-g2 #panel-risk .r5e-position-wrap{width:100%;max-width:100%;min-width:0;overflow:visible}
#eafc-g2 #panel-risk .r5e-positions{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}
#eafc-g2 #panel-risk .r5e-positions th,#eafc-g2 #panel-risk .r5e-positions td{padding:5px 5px;white-space:normal;vertical-align:middle;min-width:0}
#eafc-g2 #panel-risk .r5e-positions th:first-child{width:38px}
#eafc-g2 #panel-risk .r5e-positions th:nth-child(2){width:32%}
#eafc-g2 #panel-risk .r5e-positions th:nth-child(4){width:63px}
#eafc-g2 #panel-risk .r5e-positions td select,#eafc-g2 #panel-risk .r5e-positions td input{width:100%;max-width:100%;min-width:0;height:38px;padding:6px;font-size:13px}
#eafc-g2 #panel-risk .r5e-positions td button{padding:7px 5px;max-width:100%;white-space:nowrap;font-size:11px}
#eafc-g2 #panel-risk .r5e-risk-advanced{background:#f9fbfd}
#eafc-g2 #panel-risk .r5e-risk-advanced>summary{font-size:14px}
#eafc-g2 #panel-risk .r5e-risk-advanced>.r5e-risk-details{background:white;margin:9px 0;padding:10px}
#eafc-g2 #panel-risk .r5e-submit-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:13px}
#eafc-g2 #panel-risk .r5e-submit-actions .primary{margin-top:0}
#eafc-g2 #panel-risk .r5e-reset{border:1px solid #c3d1dc;color:#385169;background:#fff;border-radius:7px;padding:10px 12px;font:650 12px/1.45 inherit;cursor:pointer}
#eafc-g2 #panel-risk .r5e-reset:hover{background:#f0f5f9}
@media(max-width:900px){
 #eafc-g2 #panel-risk .r5e-positions,#eafc-g2 #panel-risk .r5e-positions tbody{display:block;width:100%;min-width:0}
 #eafc-g2 #panel-risk .r5e-positions thead{display:none}
 #eafc-g2 #panel-risk .r5e-positions tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:7px 10px;padding:10px;margin-bottom:10px;border:1px solid #dbe5ee;border-radius:8px;min-width:0}
 #eafc-g2 #panel-risk .r5e-positions tbody th{display:block;grid-column:1;grid-row:1;border:0;position:static;text-align:left;background:transparent;padding:0;font-size:12px;min-width:0;width:auto}
 #eafc-g2 #panel-risk .r5e-positions tbody td{display:block;width:100%;padding:0;border:0;min-width:0;white-space:normal}
 #eafc-g2 #panel-risk .r5e-positions tbody td:nth-of-type(1){grid-column:1;grid-row:2}
 #eafc-g2 #panel-risk .r5e-positions tbody td:nth-of-type(2){grid-column:2;grid-row:2}
 #eafc-g2 #panel-risk .r5e-positions tbody td:nth-of-type(3){grid-column:2;grid-row:1;text-align:right;align-self:start}
 #eafc-g2 #panel-risk .r5e-positions tbody td:nth-of-type(1):before,
 #eafc-g2 #panel-risk .r5e-positions tbody td:nth-of-type(2):before{content:attr(data-label);display:block;font-size:11px;font-weight:650;color:#526274;line-height:1.6;margin:0 0 3px}
 #eafc-g2 #panel-risk .r5e-positions tbody td:nth-of-type(3) button{width:auto;font-size:12px;min-height:30px}
}
@media(max-width:390px){
 #eafc-g2 #panel-risk .r5e-positions tbody tr{gap:6px 8px;padding:8px}
 #eafc-g2 #panel-risk .r5e-positions tbody td input,#eafc-g2 #panel-risk .r5e-positions tbody td select{font-size:13px;height:38px}
 #eafc-g2 #panel-risk .r5e-fx-auto{align-items:stretch;flex-direction:column}
}
/* Keep the editable Lot field compact on wide screens as well as mobile. */
#eafc-g2 #panel-risk .r5e-positions tbody td:nth-of-type(2) input{max-width:8rem}

/* R5E-P4: Risk02 compact hierarchy, explicit zero-position state, stress summaries. */
#eafc-g2 #panel-risk .r5e-risk-intro p{font-size:13px;margin:6px 0 12px;line-height:1.6;color:#516374}
#eafc-g2 #panel-risk .r5e-risk-mode{padding:9px 11px;font-size:12px;color:#3c5469;background:#f5f8fb}
#eafc-g2 #panel-risk .r5e-row-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px}
#eafc-g2 #panel-risk #r5e-position-count{margin-left:auto;font-size:12px;color:#506273;white-space:nowrap}
#eafc-g2 #panel-risk .r5e-clear-positions{border:1px solid #c7d0d9;background:#fff;color:#7b3940;border-radius:7px;padding:9px 11px;font-size:12px;line-height:1.35;cursor:pointer}
#eafc-g2 #panel-risk .r5e-clear-positions:hover:not(:disabled){background:#fff5f4}
#eafc-g2 #panel-risk .r5e-clear-positions:disabled{opacity:.55;cursor:not-allowed}
#eafc-g2 #panel-risk #r5e-clear-confirm[hidden],#eafc-g2 #panel-risk #r5e-position-empty[hidden]{display:none!important}
#eafc-g2 #panel-risk .r5e-clear-confirm{margin:8px 0 10px;padding:11px;border:1px solid #d7a6a6;background:#fff8f6;border-radius:8px}
#eafc-g2 #panel-risk .r5e-clear-confirm p{font-size:12px;line-height:1.55;margin:0 0 9px;color:#723f40}
#eafc-g2 #panel-risk .r5e-clear-confirm-actions{display:flex;flex-wrap:wrap;gap:9px}
#eafc-g2 #panel-risk .r5e-clear-confirm-actions button{border-radius:6px;border:1px solid #b9bec5;padding:8px 11px;font-size:12px;cursor:pointer;background:#fff;color:#36485a}
#eafc-g2 #panel-risk #r5e-clear-commit{border-color:#a45156;background:#a45156;color:white}
#eafc-g2 #panel-risk .r5e-position-empty{padding:10px;margin:8px 0;border-radius:7px;border:1px solid #d2dde6;background:#f7fafc;color:#40556b;font-size:13px}
#eafc-g2 #panel-risk .r5e-risk-output> .r5e-reference-note{font-size:12px;line-height:1.55;color:#536678;margin:14px 0 8px}
#eafc-g2 #panel-risk .r5e-risk-assumptions,#eafc-g2 #panel-risk .r5e-result-breakdown,#eafc-g2 #panel-risk .r5e-net-details{border-top:1px solid #e2e8ef;padding-top:9px;margin:12px 0}
#eafc-g2 #panel-risk :is(.r5e-risk-assumptions,.r5e-result-breakdown,.r5e-net-details,.r5e-inverse-detail)>summary{cursor:pointer;color:#355b77;font-size:12px;line-height:1.55;font-weight:600;list-style-position:outside}
#eafc-g2 #panel-risk .r5e-assumptions-content p{font-size:12px;line-height:1.7;color:#536678;margin:8px 0}
#eafc-g2 #panel-risk .r5e-result-model{font-size:12px;color:#536678;line-height:1.5;margin:4px 0 10px}
#eafc-g2 #panel-risk .r5e-metrics{margin:8px 0}
#eafc-g2 #panel-risk .r5e-metrics-secondary{margin:10px 0 2px}
#eafc-g2 #panel-risk .r5e-inverse-card{padding:11px}
#eafc-g2 #panel-risk .r5e-inverse-detail{border-top:1px solid #ebf0f4;margin-top:10px;padding-top:6px}
#eafc-g2 #panel-risk .r5e-inverse-detail p{font-size:12px;line-height:1.65;margin:7px 0}
#eafc-g2 #panel-risk .r5e-conditional-note{font-size:12px;margin:8px 0 12px;color:#855125}
#eafc-g2 #panel-risk .r5e-risk-output h4{font-size:14px;margin:16px 0 10px}
#eafc-g2 #panel-risk .r5e-stress-list{min-width:0;width:100%;margin:8px 0;box-sizing:border-box;border:1px solid #e2e9f0;border-radius:8px;overflow:hidden}
#eafc-g2 #panel-risk .r5e-stress-head,#eafc-g2 #panel-risk .r5e-stress-summary{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.05fr) minmax(0,.85fr);gap:8px;align-items:center;padding:10px 11px;box-sizing:border-box}
#eafc-g2 #panel-risk .r5e-stress-head{font-size:11px;font-weight:650;color:#4d6173;background:#f2f6fa}
#eafc-g2 #panel-risk .r5e-stress-item{border-top:1px solid #e4eaf0;min-width:0}
#eafc-g2 #panel-risk .r5e-stress-summary{cursor:pointer;font-size:12px;line-height:1.55;color:#364d62;list-style:none;overflow-wrap:anywhere;padding-left:22px;position:relative}
#eafc-g2 #panel-risk .r5e-stress-summary::-webkit-details-marker{display:none}
#eafc-g2 #panel-risk .r5e-stress-summary:before{content:'›';position:absolute;left:8px;font-weight:bold;color:#466680;font-size:17px;transform:rotate(0deg);transition:transform .1s}
#eafc-g2 #panel-risk .r5e-stress-item[open]>.r5e-stress-summary:before{transform:rotate(90deg)}
#eafc-g2 #panel-risk .r5e-stress-item[open]>.r5e-stress-summary{background:#f6f9fc}
#eafc-g2 #panel-risk .r5e-stress-level{font-weight:650;justify-self:start}
#eafc-g2 #panel-risk .r5e-stress-breakdown{padding:9px 13px 12px;background:#fbfcfe;display:grid;gap:8px;min-width:0}
#eafc-g2 #panel-risk .r5e-stress-detail-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;min-width:0;font-size:12px;color:#526779}
#eafc-g2 #panel-risk .r5e-stress-detail-row strong{font-size:12px;color:#2f465c;overflow-wrap:anywhere;text-align:right}
#eafc-g2 #panel-risk .r5e-stress-summary:focus-visible,#eafc-g2 #panel-risk :is(.r5e-clear-positions,.r5e-clear-confirm-actions button):focus-visible{outline:2px solid #24638d;outline-offset:2px}
@media(max-width:480px){
 #eafc-g2 #panel-risk .r5e-stress-head{display:none}
 #eafc-g2 #panel-risk .r5e-stress-summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3px 9px;padding:9px 10px 10px 22px}
 #eafc-g2 #panel-risk .r5e-stress-name{grid-column:1/-1;font-weight:650}
 #eafc-g2 #panel-risk .r5e-stress-mid:before{content:'Mid ';font-weight:400;color:#6a7b88;font-size:10px}
 #eafc-g2 #panel-risk .r5e-stress-level:before{content:'維持率 ';font-weight:400;color:#6a7b88;font-size:10px}
 #eafc-g2 #panel-risk .r5e-stress-detail-row{flex-direction:column;align-items:flex-start;gap:1px}
 #eafc-g2 #panel-risk .r5e-stress-detail-row strong{text-align:left}
}


/* R5E-P4-F01: field-level validation scoped to Risk02 only. */
#eafc-g2 #panel-risk .r5e-risk-form [aria-invalid="true"]:is(input,select,button){
 border:2px solid #b42332!important;
 background:#fff5f5!important;
 outline:0;
 box-shadow:0 0 0 2px rgba(180,35,50,.1);
}
#eafc-g2 #panel-risk .r5e-risk-form [aria-invalid="true"]:focus-visible{
 outline:2px solid #b42332!important;
 outline-offset:2px;
}
#eafc-g2 #panel-risk .r5e-input-error{display:block;margin:5px 0 0;color:#9a1724;font-size:12px;line-height:1.55;font-weight:600;overflow-wrap:anywhere}
#eafc-g2 #panel-risk .r5e-positions .r5e-input-error{font-size:11px;font-weight:600}


/* R5E-P4-F02: reset buttons are prominent and scoped to 01/02 only. */
#eafc-g2 #panel-trade #tr01-reset,
#eafc-g2 #panel-risk #r5e-reset {
 display:block;width:100%;min-height:44px;box-sizing:border-box;
 margin:12px 0 0;padding:10px 14px;border:1px solid #8b1926;
 border-radius:7px;background:#b42332;color:#fff;font:700 13px/1.5 inherit;
 cursor:pointer;text-align:center;
}
#eafc-g2 #panel-risk #r5e-reset{margin:0;}
#eafc-g2 #panel-trade #tr01-reset:hover,
#eafc-g2 #panel-risk #r5e-reset:hover{background:#8b1926;color:#fff;}
#eafc-g2 #panel-trade #tr01-reset:focus-visible,
#eafc-g2 #panel-risk #r5e-reset:focus-visible{
 outline:3px solid #f1b35a;outline-offset:2px;
}
#eafc-g2 :is(#tr01-draft-status,#r5e-draft-status){
 margin:9px 0 2px;color:#526778;font-size:12px;line-height:1.65;
 overflow-wrap:anywhere;
}
#eafc-g2 :is(#tr01-draft-status,#r5e-draft-status)[data-state="error"]{color:#981b2a;font-weight:650;}
body.page-id-2352 #eafc-g2 #panel-trade #tr01-reset,
body.page-id-2352 #eafc-g2 #panel-risk #r5e-reset{
 background:#b42332;color:#fff;border-color:#8b1926;
 font:700 14px/1.5 inherit;min-height:44px;
}
body.page-id-2352 #eafc-g2 #panel-trade #tr01-reset:hover,
body.page-id-2352 #eafc-g2 #panel-risk #r5e-reset:hover{background:#8b1926;color:#fff;}
