/* 食事摂取基準の早見表（/intake-reference/）専用。docs/drafts/intake-reference-tool-20260930/prototype.template.html の
   スタイルを .ni-intake-page 内に閉じて移植（テーマ共通の .container・.guide-tile・.ni-same-* などと衝突しないよう接頭辞を付けた）。
   色トークン（--ink 等）は experience.css の値と同じ。--ni-intake-header-h はテーマの sticky ヘッダーの高さ。 */
.ni-intake-page{--ni-intake-header-h:85px;--ni-rda-text:#1f4e79;--ni-rda-bg:#e3edf8;--ni-ai-text:#1d5e57;--ni-ai-bg:#dcf0ec;--ni-dg-text:#553d86;--ni-dg-bg:#f1edf8;--ni-ul-text:#3d4650;--ni-ul-bg:#e8eaed;color:var(--text);font:15px/1.85 var(--sans)}
.ni-intake-page p{margin:1em 0}
.ni-intake-page a{color:var(--ink);text-decoration:underline}
.ni-intake-page button{font-size:13.333px}
.ni-intake-container{width:min(1180px,100% - 64px);margin:0 auto}
.ni-intake-crumb{font-size:12px;color:var(--muted);margin:22px 0 8px}
.ni-intake-page .ni-intake-ad-note{font-size:12px;color:var(--muted);border:1px solid var(--line);background:var(--white);padding:8px 12px;border-radius:6px;margin:10px 0 18px}
.ni-intake-ad-note b{display:inline-block;background:var(--gold-bg);color:var(--ink);padding:0 6px;margin-right:6px;border-radius:3px}
.ni-intake-page h1{font:600 30px/1.45 var(--serif);color:var(--ink);margin:4px 0 14px}
.ni-intake-page h2{font:600 23px/1.5 var(--serif);color:var(--ink);margin:44px 0 12px;padding-top:6px;border-top:1px solid var(--line)}
.ni-intake-page h3{font:600 18px/1.5 var(--serif);color:var(--ink);margin:30px 0 10px}
.ni-intake-page h5{font-size:13px;margin:16px 0 8px;color:var(--ink)}
.ni-intake-page .ni-intake-lead p{margin:0 0 10px}
.ni-intake-page .ni-intake-watch{background:var(--white);border-left:3px solid var(--accent);padding:12px 16px;margin:16px 0;font-size:14px}
.ni-intake-watch ul{margin:4px 0 0;padding-left:1.2em}
.ni-intake-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:48px;align-items:start}
.ni-intake-side{position:sticky;top:calc(var(--ni-intake-header-h) + 16px)}
.ni-intake-panel{background:#f1f5ed;border:1px solid var(--line);border-radius:10px;padding:18px 18px 14px}
.ni-intake-page .ni-intake-panel h2{border:0;margin:0 0 8px;padding:0;font-size:19px}
.ni-intake-panel fieldset{border:0;margin:0 0 12px;padding:0}
.ni-intake-panel legend{font-size:13px;font-weight:700;margin-bottom:6px;color:var(--ink);padding:0}
.ni-intake-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.ni-intake-opts--age{grid-template-columns:repeat(3,minmax(0,1fr))}
.ni-intake-opt input{position:absolute;opacity:0;pointer-events:none}
.ni-intake-opt span{display:flex;flex-wrap:wrap;align-content:center;align-items:center;justify-content:center;min-height:48px;padding:4px 6px;border:1px solid #bdcdb3;border-radius:999px;background:var(--white);font-size:13px;text-align:center;line-height:1.35;cursor:pointer}
.ni-intake-opt input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}
.ni-intake-opt input:checked+span::before{content:"✓ "}
.ni-intake-opt input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}
.ni-intake-opt small{flex-basis:100%;font-size:11px}
.ni-intake-page .ni-intake-privacy{font-size:12px;color:var(--muted);margin:4px 0 8px}
.ni-intake-page .ni-intake-linkbtn{background:none;border:0;color:var(--ink);text-decoration:underline;font-size:13px;padding:6px 0;cursor:pointer}
.ni-intake-status{margin-top:10px;padding:10px 12px;background:var(--white);border-radius:6px;font-size:13px;font-weight:600;color:var(--ink)}
.ni-intake-jump{margin-top:14px;font-size:13px}
.ni-intake-jump a{display:block;padding:3px 0}
.ni-intake-legend{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 6px;padding:0;list-style:none}
.ni-intake-legend li{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:10px;font-size:12px;line-height:1.6}
.ni-intake-legend .ni-metric{margin-bottom:4px}
.ni-intake-more-def{font-size:13px;margin:6px 0 10px}
.ni-intake-more-def summary{cursor:pointer}
.ni-intake-more-def dl{background:var(--white);padding:10px 14px;border-radius:8px}
.ni-intake-more-def dt{font-weight:700;margin-top:6px}
.ni-intake-more-def dd{margin:0}
.ni-metric{display:inline-block;padding:1px 8px;border-radius:4px;background:var(--white);color:var(--ink);font-size:12px;font-weight:700;white-space:nowrap}
/* 指標の色: 良し悪しを連想させない色相（緑=良い・赤=危険・信号3色は使わない）。色は補助で、文字と枠線の形でも区別する */
.ni-metric--rda{color:var(--ni-rda-text);background:var(--ni-rda-bg);border:1px solid var(--ni-rda-text)}
.ni-metric--ai{color:var(--ni-ai-text);background:var(--ni-ai-bg);border:1px dashed var(--ni-ai-text)}
.ni-metric--dg{color:var(--ni-dg-text);background:var(--ni-dg-bg);border:2px double var(--ni-dg-text)}
.ni-metric--ul{forced-color-adjust:auto;color:var(--ni-ul-text);background:var(--ni-ul-bg);border:1px solid var(--ni-ul-bg);border-left:4px solid var(--ni-ul-text)}
.ni-intake-table-wrap{position:relative;overflow-x:auto;background:var(--white);border:1px solid var(--line);border-radius:10px}
.ni-intake-table-wrap:focus-visible{outline:3px solid #bd9048;outline-offset:3px}
.ni-intake-table{border-collapse:collapse;width:100%;font-size:13px}
.ni-intake-table caption{text-align:left;padding:10px 12px;font-weight:700;color:var(--ink);font-size:13px}
.ni-intake-table th,.ni-intake-table td{border-top:1px solid var(--line);padding:8px 10px;vertical-align:top}
.ni-intake-table thead th{background:var(--pale);font-size:12px;white-space:nowrap}
.ni-intake-table td{text-align:right;white-space:nowrap}
.ni-intake-table tbody th{text-align:left;white-space:nowrap;background:var(--white);position:sticky;left:0;z-index:1}
.ni-intake-table .ni-metric-col{text-align:left}
.ni-intake-subhead th{background:var(--paper)!important;font-size:12px;color:var(--muted);position:static!important}
.ni-v{font-variant-numeric:tabular-nums;font-weight:700;color:var(--ink);font-size:14px}
.ni-u{white-space:nowrap;margin-left:3px;font-size:12px;color:var(--muted)}
.ni-na{font-size:12px;color:var(--muted)}
.ni-scope{display:block;font-size:11px;color:var(--muted);white-space:normal;line-height:1.4}
.ni-cond{display:block;font-size:11px;color:var(--muted);font-weight:400}
.ni-intake-page .ni-noteref{font-size:11px;margin-left:2px;text-decoration:none}
.ni-badge-inline{display:none}
.ni-ul{border-left:3px solid var(--ni-ul-text)!important}
.ni-ul-head{border-left:3px solid var(--ni-ul-text);color:var(--ni-ul-text)}
/* 選択後は全グループの表で列幅を揃える（区切り線の位置を統一） */
.ni-intake-page.is-selected .ni-intake-table{table-layout:fixed}
.ni-intake-page.is-selected .ni-intake-table .ni-col-name{width:26%}
.ni-intake-page.is-selected .ni-intake-table thead .ni-metric-col{width:14%}
.ni-intake-page.is-selected .ni-intake-table [data-selhead]{width:30%}
.ni-intake-page.is-selected .ni-intake-table .ni-ul-head{width:30%}
.ni-intake-page.is-selected .ni-intake-table [data-selhead],.ni-intake-page.is-selected .ni-intake-table .ni-ul-head{text-align:right}
.ni-intake-notes{font-size:13px;margin:8px 0 0;padding-left:1.4em;color:var(--text)}
.ni-intake-page .ni-intake-notes-p{font-size:13px;margin:8px 0 0}
.ni-intake-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ni-intake-page .ni-intake-scroll-hint{font-size:12px;color:var(--muted);margin:0 0 6px}
.ni-intake-page.is-selected .ni-intake-scroll-hint,.ni-intake-page.is-selected [data-ul-matrix]{display:none}
.ni-intake-out{background:var(--white);border-left:3px solid var(--accent);padding:18px 20px;border-radius:0 8px 8px 0}
.ni-intake-page .ni-intake-out h2{border:0;margin:0 0 8px;padding:0}
.ni-intake-detail{background:var(--white);border:1px solid var(--line);border-radius:8px;margin:8px 0}
.ni-intake-detail summary{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:48px;padding:8px 14px;cursor:pointer}
.ni-intake-detail summary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.ni-intake-detail summary span{font-size:12px;color:var(--muted)}
.ni-intake-detail>div{padding:0 14px 14px}
.ni-intake-page .ni-intake-guide-tile{display:block;border:1px solid var(--line);border-radius:8px;padding:10px 12px;text-decoration:none;background:var(--paper)}
.ni-intake-guide-tile span{font-size:11px;color:var(--accent);font-weight:700;margin-right:6px}
.ni-intake-guide-tile small{display:block;color:var(--muted);font-size:12px}
.ni-intake-products{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.ni-intake-page .ni-intake-products li a{display:block;padding:9px 2px;border-bottom:1px solid var(--line);text-decoration:none}
.ni-intake-product-name{display:block;font-weight:600}
.ni-intake-product-meta{display:block;font-size:12px;color:var(--muted)}
.ni-intake-page .ni-intake-more{margin-top:8px;min-height:44px;padding:6px 14px;border:1px solid var(--ink);border-radius:999px;background:var(--white);color:var(--ink);cursor:pointer}
.ni-intake-page .ni-intake-callout{background:var(--gold-bg);padding:10px 12px;border-radius:6px;font-size:13px}
.ni-intake-page .ni-intake-muted{color:var(--muted);font-size:13px}
.ni-intake-products-intro{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:14px 16px;font-size:14px}
.ni-intake-products-intro ul{margin:6px 0;padding-left:1.2em}
.ni-intake-faq dt{font-weight:700;color:var(--ink);margin-top:14px}
.ni-intake-faq dd{margin:4px 0 0}
.ni-intake-sources{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:14px 18px;font-size:13px}
.ni-intake-mobile-bar{display:none}
/* ui-spec 11.8: ページ内リンクの移動先を sticky ヘッダー（SPは固定バーも）で隠さない */
.ni-intake-page [id]{scroll-margin-top:calc(var(--ni-intake-header-h) + 16px)}
@media(max-width:1050px){.ni-intake-layout{grid-template-columns:minmax(0,1fr);gap:20px}.ni-intake-side{position:static}.ni-intake-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .ni-intake-page{--ni-intake-header-h:101px}
 .ni-intake-page [id]{scroll-margin-top:calc(var(--ni-intake-header-h) + 56px)}
 .ni-intake-container{width:calc(100% - 32px)}
 .ni-intake-page h1{font-size:23px} .ni-intake-page h2{font-size:20px}
 .ni-intake-page.is-selected .ni-metric-col{display:none}
 .ni-intake-page.is-selected .ni-intake-table .ni-col-name{width:40%}
 .ni-intake-page.is-selected .ni-intake-table [data-selhead],.ni-intake-page.is-selected .ni-intake-table .ni-ul-head{width:30%}
 .ni-intake-page.is-selected .ni-badge-inline{display:block;margin-top:3px}
 .ni-intake-page.is-selected .ni-intake-table td{white-space:normal;padding:8px 6px}
 /* 320px: 「2,700μgRAE/日」は途中で折り返せないため、単位をまとまりのまま次の行へ送れるようにする（数値は分けない。試作からの修正） */
 .ni-intake-page.is-selected .ni-intake-table .ni-u{display:inline-block}
 .ni-intake-page.is-selected .ni-intake-table-wrap{overflow-x:visible}
 .ni-intake-page.is-selected .ni-intake-table tbody th{white-space:normal;position:static}
 .ni-intake-mobile-bar{position:sticky;top:var(--ni-intake-header-h);z-index:15;display:none;align-items:center;justify-content:space-between;gap:8px;background:var(--ink);color:#fff;font-size:13px;padding:8px 16px;min-height:48px}
 .ni-intake-page.is-selected.bar-on .ni-intake-mobile-bar{display:flex}
 .ni-intake-page .ni-intake-mobile-bar button{background:#fff;color:var(--ink);border:0;border-radius:999px;padding:6px 12px;min-height:36px}
}
