:root{--navy:#171917;--blue:#f26a2e;--cyan:#f26a2e;--orange:#f26a2e;--green:#62685f;--ink:#171917;--muted:#63655e;--paper:#f4f3ee;--line:#d6d6ce;--white:#fff;--red:#a44446;--amber:#956114;--soft-blue:#e9e8e2;--shadow:none}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP","Yu Gothic UI",Meiryo,system-ui,sans-serif;line-height:1.65}
a{color:inherit}
.site-header{height:68px;padding:0 clamp(18px,5vw,64px);display:flex;align-items:center;justify-content:space-between;background:rgba(15,30,61,.97);border-bottom:1px solid rgba(42,184,224,.28);color:#fff}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand-mark{width:37px;height:37px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(135deg,var(--blue),var(--cyan));font:700 22px Rajdhani,"Segoe UI",sans-serif}
.brand b{display:block;font-size:16px;letter-spacing:.05em}
.brand small{display:block;color:#a8d9ec;font:600 9px Rajdhani,"Segoe UI",sans-serif;letter-spacing:.16em}
.header-link{font-size:13px;color:rgba(255,255,255,.8);text-decoration:none}
.header-link:hover{color:var(--cyan)}
.page-shell{max-width:1200px;margin:0 auto;padding:0 24px 50px}
.hero{padding:58px 0 34px;border-bottom:1px solid var(--line)}
.eyebrow{margin:0 0 10px;color:#1879ad;font:700 11px Rajdhani,"Segoe UI",sans-serif;letter-spacing:.2em}
.hero h1{margin:0;color:var(--navy);font-size:clamp(32px,5vw,52px);line-height:1.15;letter-spacing:.02em}
.hero-copy{max-width:760px;margin:16px 0;color:var(--muted);font-size:15px}
.status-line{display:flex;align-items:center;gap:9px;margin-top:19px;font-size:13px;color:#3e4a62}
.status-dot{width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(42,184,224,.12)}
.notice{display:inline-block;margin:15px 0 0;padding:5px 10px;border:1px solid #c9dcec;border-radius:4px;background:#edf6fc;color:#36556b;font-size:11px}
.section-block{padding:36px 0 8px}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:17px}
.section-heading h2{margin:0;color:var(--navy);font-size:clamp(21px,3vw,28px);line-height:1.25}
.section-heading .eyebrow{margin-bottom:6px}
.section-note{margin:0;color:var(--muted);font-size:12px;text-align:right}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.portfolio-card,.history-card,.case-person{background:var(--white);border:1px solid rgba(30,111,207,.14);border-radius:11px;box-shadow:var(--shadow)}
.portfolio-card{padding:18px;min-width:0}
.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.card-name{margin:0;color:var(--navy);font-size:17px}
.role-tag,.state-tag{display:inline-flex;align-items:center;border-radius:99px;padding:3px 9px;font-size:10px;font-weight:700;white-space:nowrap}
.role-tag{background:#edf5ff;color:#2866a5}
.role-tag.benchmark{background:#eff5f2;color:#38735e}
.portfolio-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:17px 0 12px}
.metric{padding:10px;background:#f6f9fc;border-radius:7px;min-width:0}
.metric-label{display:block;color:var(--muted);font-size:10px}
.metric-value{display:block;margin-top:3px;font-size:16px;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.portfolio-foot{padding-top:11px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}
.portfolio-foot p{margin:4px 0}
.date-pair{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 14px}
.date-chip{padding:9px 11px;background:#eaf2fa;border-radius:7px;color:#294d70;font-size:11px}
.date-chip b{display:block;color:#59738e;font-size:9px;font-weight:600}
.history-list,.case-list{display:grid;gap:13px}
.history-card{padding:18px 20px}
.history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.history-title{margin:0;color:var(--navy);font-size:17px}
.history-meta{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0;color:var(--muted);font-size:11px}
.history-summary{margin:12px 0 0;padding:12px 14px;background:#f7f9fc;border-left:3px solid var(--cyan);white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}
.state-tag{background:#f0f3f8;color:#4e5c70}
.state-tag.ok{background:#e8f6ef;color:#276347}
.state-tag.pending{background:#fff5df;color:var(--amber)}
.case-intro{margin:-5px 0 17px;color:var(--muted);font-size:13px}
.case-person{overflow:hidden}
.case-person-head{padding:17px 20px;background:linear-gradient(100deg,#102548,#153a65);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:14px}
.case-person-head h3{margin:0;font-size:17px}
.case-person-head p{margin:3px 0 0;color:#c4d8ec;font-size:10px}
.case-body{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:15px}
.case-card{border:1px solid var(--line);border-radius:8px;padding:15px;min-width:0}
.case-card h4{margin:0 0 12px;padding-bottom:9px;border-bottom:1px solid var(--line);font-size:14px;color:var(--navy)}
.case-card h4 span{display:block;color:var(--muted);font-size:10px;font-weight:400}
.field-list{display:grid;gap:9px}
.field{display:grid;grid-template-columns:minmax(105px,.72fr) minmax(0,1.5fr);gap:12px;padding-bottom:8px;border-bottom:1px solid #edf1f6}
.field:last-child{border-bottom:0;padding-bottom:0}
.field-label{color:#53627a;font-size:11px}
.field-value{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}
.field-value.missing{color:#7d8593;font-style:italic}
.field-value code,.mono{font:11px Consolas,"SFMono-Regular",monospace;overflow-wrap:anywhere}
.scenario-list{padding-left:18px;margin:0}
.scenario-list li+li{margin-top:7px}
.raw-details{margin:0 15px 15px;border-top:1px solid var(--line);padding-top:11px}
.raw-details summary{color:#315f91;font-size:12px;cursor:pointer;font-weight:600}
.raw-meta{font-size:10px;color:var(--muted);margin:8px 0}
.raw-answer{padding:13px;background:#101a2c;color:#e1edf9;border-radius:7px;max-height:480px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.55 Consolas,"SFMono-Regular",monospace}
.empty-state,.load-error{padding:18px;border:1px dashed #c5d0dd;border-radius:8px;color:var(--muted);font-size:13px;background:rgba(255,255,255,.65)}
.load-error{margin-top:16px;border-color:#e1b6b6;background:#fff4f2;color:#823d3d}
.page-footer{margin-top:46px;padding:17px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;color:#66738a;font-size:10px}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:20}

@media(max-width:900px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.section-heading{align-items:flex-start;flex-direction:column}
.section-note{text-align:left}
.date-pair{grid-template-columns:1fr 1fr 1fr}
}

@media(max-width:620px){.site-header{height:60px;padding:0 16px}
.page-shell{padding:0 15px 32px}
.hero{padding:42px 0 27px}
.hero-copy{font-size:13px}
.section-block{padding-top:29px}
.portfolio-grid{grid-template-columns:1fr}
.portfolio-card{padding:15px}
.portfolio-metrics{grid-template-columns:1fr 1fr}
.date-pair{grid-template-columns:1fr}
.date-chip{padding:8px 10px}
.history-card{padding:15px}
.history-head{flex-direction:column}
.case-body{grid-template-columns:1fr;padding:10px}
.case-person-head{padding:15px}
.field{grid-template-columns:minmax(95px,.68fr) minmax(0,1.4fr);gap:8px}
.raw-details{margin:0 10px 12px}
.page-footer{flex-direction:column;gap:3px}
}

button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}

.compact-details{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}

.compact-details summary{color:#315f91;font-size:11px;cursor:pointer;font-weight:600}

.compact-details[open]>.field-list{margin-top:10px}
.history-meta span{overflow-wrap:anywhere}.case-person-head>*{min-width:0}.case-person-head>.mono{max-width:55%;overflow-wrap:anywhere}
@media(max-width:620px){.case-person-head{align-items:flex-start;flex-direction:column}.case-person-head>.mono{max-width:100%}}

.supplement-heading{display:flex;align-items:baseline;gap:12px;margin:24px 0 10px}
.supplement-heading h3{margin:0;color:var(--navy);font-size:15px}
.supplement-heading p{margin:0;color:var(--muted);font-size:11px}


.raw-block{display:grid;gap:6px}.raw-details,.source-hash-details{margin:0 15px 12px;border-top:1px solid var(--line);padding-top:9px}.source-hash-details summary{color:#526780;font-size:10px;cursor:pointer}.source-hash-details .raw-meta{overflow-wrap:anywhere}
:root{--navy:#171917;--blue:#f26a2e;--cyan:#f26a2e;--orange:#f26a2e;--green:#62685f;--ink:#171917;--muted:#63655e;--paper:#f4f3ee;--line:#d6d6ce;--white:#fff;--red:#a44446;--amber:#956114;--soft-blue:#e9e8e2;--shadow:none}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{background:var(--paper);color:var(--ink);font-family:"Noto Sans JP","Yu Gothic",Meiryo,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.site-header{height:76px;padding:0 40px;display:flex;align-items:center;gap:28px;background:var(--paper);border-bottom:1px solid var(--line);color:var(--ink);position:relative;z-index:5}
.brand{display:flex;align-items:center;gap:10px;margin-right:0;color:var(--ink);font-size:25px;font-weight:800;letter-spacing:-1.5px;text-decoration:none;flex-shrink:0}
.brand img{width:34px;height:34px;object-fit:cover;border-radius:50%}
.header-note{font-size:11px;color:var(--muted);margin-right:auto;white-space:nowrap}
.header-nav{display:flex;align-items:center;gap:25px;flex-shrink:0}
.header-nav .header-link{font-size:12px;color:var(--ink);text-decoration:none;white-space:nowrap;padding:12px 0}
.header-nav .header-link:hover,.header-nav .header-link[aria-current=page]{color:var(--orange,var(--blue))}
.menu-toggle{display:none}
.page-shell{width:min(1320px,calc(100% - 80px));max-width:1320px;margin:0 auto;padding:0 0 40px}
.hero{padding:28px 0 22px;border-bottom:1px solid var(--line)}
.eyebrow{margin:0 0 8px;color:var(--muted);font:700 9px/1.4 "Noto Sans JP","Yu Gothic",Meiryo,system-ui,sans-serif;letter-spacing:.12em}
.hero h1{margin:0;color:var(--ink);font-size:clamp(34px,4.4vw,56px);line-height:1.15;letter-spacing:-.065em}
.hero-copy{max-width:760px;margin:10px 0 0;color:var(--muted);font-size:12px;line-height:1.7}
.status-line{display:flex;align-items:center;gap:9px;margin-top:10px;font-size:11px;color:var(--muted)}
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:none}
.notice{display:inline-block;margin:11px 0 0;padding:5px 8px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font-size:10px}
.section-block{padding:25px 0 0}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px}
.section-heading h2{margin:0;color:var(--ink);font-size:clamp(22px,2.4vw,28px);line-height:1.2;letter-spacing:-.065em}
.section-heading .eyebrow{margin-bottom:5px}
.section-note{margin:0;color:var(--muted);font-size:11px;text-align:right}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.portfolio-card,.history-card,.case-person{background:var(--white);border:1px solid var(--line);border-radius:0;box-shadow:none}
.portfolio-card{padding:15px;min-width:0}
.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.card-name{margin:0;color:var(--ink);font-size:17px;letter-spacing:-.04em}
.role-tag,.state-tag{display:inline-flex;align-items:center;border-radius:0;padding:3px 7px;font-size:9px;font-weight:700;white-space:nowrap}
.role-tag{background:#f5e6dc;color:#713d26}
.role-tag.benchmark{background:#e9e8e2;color:#56584f}
.portfolio-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 9px}
.metric{padding:8px;background:#f4f3ee;border-radius:0;min-width:0}
.metric-label{display:block;color:var(--muted);font-size:9px}
.metric-value{display:block;margin-top:2px;color:var(--ink);font-size:15px;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.portfolio-foot{padding-top:8px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;line-height:1.65}
.portfolio-foot p{margin:3px 0}
.portfolio-judgment{margin-top:8px;color:var(--ink)}
.portfolio-judgment>.metric-label{margin-bottom:3px}
.portfolio-judgment .text-excerpt{font-size:11px;line-height:1.65}
.date-pair{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 14px}
.date-chip{padding:8px 10px;background:#e9e8e2;border-radius:0;color:#363832;font-size:10px}
.date-chip b{display:block;color:var(--muted);font-size:9px;font-weight:600}
.history-list,.case-list{display:grid;gap:11px;grid-template-columns:minmax(0,1fr)}
.history-card{padding:15px 17px;min-width:0}
.history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.history-title{margin:0;color:var(--ink);font-size:16px;letter-spacing:-.04em}
.history-meta{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0;color:var(--muted);font-size:10px}
.history-summary{margin:9px 0 0;padding:9px 11px;background:#f4f3ee;border-left:2px solid var(--blue);white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}
.state-tag{background:#ecebe5;color:#56584f}
.state-tag.ok{background:#e5eee3;color:#31523a}
.state-tag.pending{background:#f6ebd7;color:#71501e}
.case-intro{margin:-3px 0 13px;color:var(--muted);font-size:11px}
.case-person{overflow:hidden;min-width:0}
.case-person-head{padding:13px 15px;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:14px}
.case-person-head h3{margin:0;color:var(--paper);font-size:16px;letter-spacing:-.04em}
.case-person-head p{margin:3px 0 0;color:#c5c6bf;font-size:9px}
.case-body{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px}
.case-card{border:1px solid var(--line);border-radius:0;padding:12px;min-width:0}
.case-card h4{margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--line);font-size:13px;color:var(--ink)}
.case-card h4 span{display:block;color:var(--muted);font-size:9px;font-weight:400}
.field{border-color:var(--line)}
.field-label{color:var(--muted)}
.field-value{color:var(--ink)}
.field-value.missing{color:#77786f}
.raw-details,.source-hash-details,.compact-details{border-color:var(--line)}
.raw-details summary,.compact-details summary,.source-hash-details summary,.text-details summary{color:var(--ink);font-size:10px;cursor:pointer;text-decoration:underline;text-decoration-color:var(--orange,var(--blue));text-underline-offset:3px}
.compact-details{margin-top:8px;padding-top:7px}
.compact-details summary{font-weight:600}
.raw-meta{color:var(--muted);overflow-wrap:anywhere}
.raw-answer,.text-full{overflow-wrap:anywhere}
.empty-state,.load-error{background:var(--white);border:1px solid var(--line);border-radius:0;color:var(--muted)}
.load-error{background:#fff4f2;border-color:#e1b6b6;color:#823d3d}
.case-common-priority{margin:0 12px 13px;padding:12px;border:1px solid var(--line);border-radius:0;background:#f4f3ee}
.case-common-priority h4{margin:0 0 10px;color:var(--ink);font-size:13px}
.long-text .text-excerpt{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.text-details{margin-top:5px}
.text-full{margin:7px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;color:inherit}
.supplement-heading{display:flex;align-items:baseline;gap:12px;margin:20px 0 9px}
.supplement-heading h3{margin:0;color:var(--ink);font-size:15px}
.supplement-heading p{margin:0;color:var(--muted);font-size:10px}
.page-footer{margin-top:32px;padding:14px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:9px}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:10px;top:10px;background:var(--ink);color:var(--paper);padding:8px;z-index:20}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
@media(max-width:1000px){.site-header{padding-inline:24px;gap:18px}.header-note{display:none}.header-nav{gap:16px}.page-shell{width:calc(100% - 48px)}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{align-items:flex-start;flex-direction:row}.section-note{text-align:right}}
@media(max-width:640px){html{scroll-padding-top:68px}.site-header{height:62px;padding:0 18px;gap:12px}.brand{font-size:22px;margin-right:auto}.brand img{width:28px;height:28px}.menu-toggle{display:flex;align-items:center;gap:14px;border:0;background:transparent;padding:10px 0;color:var(--ink);font-size:11px}.menu-toggle>span:last-child{font-size:24px;line-height:1}.header-nav{display:none;position:absolute;top:61px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:12px 18px 22px;flex-direction:column;align-items:stretch;gap:0}.header-nav.open{display:flex}.header-nav .header-link{font-size:18px;min-height:46px;border-bottom:1px solid var(--line);padding:10px 0}.page-shell{width:calc(100% - 36px);padding-bottom:30px}.hero{padding:19px 0 16px}.hero h1{font-size:34px}.hero-copy{font-size:11px}.section-block{padding-top:21px}.section-heading{flex-wrap:wrap;gap:8px;margin-bottom:12px}.section-heading h2{font-size:22px}.section-note{text-align:left;font-size:10px}.portfolio-grid{grid-template-columns:1fr;gap:9px}.portfolio-card{padding:13px}.portfolio-metrics{grid-template-columns:1fr 1fr}.date-pair{grid-template-columns:1fr;gap:5px}.date-chip{padding:7px 9px}.history-card{padding:13px}.history-head{flex-direction:column;gap:3px}.history-meta span{overflow-wrap:anywhere}.history-summary{font-size:11px}.case-body{grid-template-columns:1fr;padding:9px}.case-person-head{padding:13px;align-items:flex-start;flex-direction:column}.case-person-head>*{min-width:0}.case-person-head>.mono{max-width:100%;overflow-wrap:anywhere}.case-card{padding:11px}.field{grid-template-columns:minmax(0,1fr);gap:2px}.field-value{min-width:0}.raw-details,.source-hash-details{margin:0 9px 10px}.raw-meta{font-size:9px}.page-footer{flex-direction:column;gap:3px;margin-top:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Current-day decision comparison: original note and structured fields stay distinct. */
.current-decisions{padding-top:28px}
.current-decision-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;align-items:start}
.current-decision-card{min-width:0;padding:14px;background:var(--white);border:1px solid var(--line);border-radius:8px}
.current-decision-head{display:flex;justify-content:space-between;align-items:flex-start;gap:9px;margin-bottom:8px}
.current-decision-name{margin:0;font-size:17px;line-height:1.35}
.current-decision-dates{display:grid;gap:5px;margin:0 0 12px}
.current-decision-dates .date-chip{padding:6px 8px;font-size:10px}
.current-decision-label{margin:0 0 6px;color:var(--muted);font-size:10px;font-weight:700}
.current-decision-note{padding-top:10px;border-top:1px solid var(--line)}
.current-decision-note .long-text{font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.current-decision-note .text-details summary,.current-decision-card .raw-details summary,.current-decision-card .source-hash-details summary{font-size:10px}
.current-decision-fields{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.current-order-state{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:7px 0;border-bottom:1px solid var(--line);font-size:11px}
.current-order-value{font-weight:700}
.current-decision-structured .field{grid-template-columns:minmax(85px,.7fr) minmax(0,1.3fr);gap:7px;padding:6px 0}
.current-decision-structured .field-label,.current-decision-structured .field-value{font-size:10px}
.current-decision-missing{margin:4px 0;font-size:11px}
.current-decisions-note{margin:10px 0 0;color:var(--muted);font-size:10px}
@media(max-width:1000px){.current-decision-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.current-decisions{padding-top:21px}.current-decision-grid{grid-template-columns:minmax(0,1fr);gap:9px}.current-decision-card{padding:13px}.current-decision-structured .field{grid-template-columns:minmax(0,1fr);gap:2px}}
