/* OBS-002 additions. The shell, hero, vitals, tabs and stage are shared with OBS-001. */
.earnings-page .monitor-hero h1{font-size:clamp(3.6rem,7.2vw,8rem)}
.earnings-page .monitor-hero__summary{max-width:50rem}
.earnings-page .monitor-stage>*{min-width:0;max-width:100%}

.earnings-verdict{display:grid;grid-template-columns:minmax(16rem,.44fr) minmax(0,1fr);margin-bottom:2.5rem;border-block:1px solid var(--hair);background:color-mix(in srgb,var(--reading) 64%,transparent)}
.earnings-verdict__portrait{position:relative;min-height:35rem;overflow:hidden;border-right:1px solid var(--hair)}
.earnings-verdict__portrait img{display:block;width:100%;height:100%;min-height:35rem;object-fit:cover;object-position:50% 20%;filter:saturate(.84) contrast(.98)}
.earnings-verdict__portrait::after{content:"TOK-64 / 司曆・刻綺";position:absolute;left:1rem;bottom:1rem;padding:.4rem .55rem;background:color-mix(in srgb,var(--void) 76%,transparent);font:600 var(--fs-label)/1.4 var(--mono);letter-spacing:.12em}
.earnings-verdict__copy{display:flex;min-width:0;flex-direction:column;justify-content:space-between;padding:clamp(1.5rem,4vw,4rem)}
.earnings-verdict__copy>span{color:var(--acc);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.16em}
.earnings-verdict blockquote{min-width:0;margin:clamp(2rem,5vw,5rem) 0;font:400 clamp(1.45rem,3vw,3rem)/1.5 var(--mincho);letter-spacing:-.02em;overflow-wrap:anywhere}
.earnings-verdict__metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--hair)}
.earnings-verdict__metrics div{min-width:0;padding:1rem;border-right:1px solid var(--hair)}
.earnings-verdict__metrics div:last-child{border-right:0}
.earnings-verdict__metrics span{display:block;color:var(--faint);font:var(--fs-label)/1.5 var(--mono);letter-spacing:.08em}
.earnings-verdict__metrics b{display:block;margin-top:.35rem;font:400 clamp(1.2rem,2.3vw,2rem)/1.25 var(--mincho);overflow-wrap:anywhere}
.earnings-lineage{margin-top:1rem;border-top:1px solid var(--hair)}
.earnings-lineage summary{padding:1rem 0;color:var(--faint);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.1em;cursor:pointer}
.earnings-lineage__body{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:1rem;padding-bottom:1rem}
.earnings-lineage__body img{width:7rem;height:9rem;object-fit:cover;object-position:50% 20%;border:1px solid var(--hair)}
.earnings-lineage dl{margin:0}.earnings-lineage dl div{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:1rem;padding:.45rem 0;border-bottom:1px solid var(--hair2)}
.earnings-lineage dt,.earnings-lineage dd{min-width:0;margin:0;font:var(--fs-label)/1.55 var(--mono);overflow-wrap:anywhere}.earnings-lineage dt{color:var(--faint)}.earnings-lineage a{color:var(--acc);text-underline-offset:.25em}

.chapter-plate{display:grid;align-items:center;margin:0 0 clamp(2rem,5vw,4rem);border-block:1px solid var(--hair);background:color-mix(in srgb,var(--reading) 66%,transparent)}
.chapter-plate--landscape{grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr)}
.chapter-plate--portrait{grid-template-columns:minmax(21rem,.72fr) minmax(24rem,1fr)}
.chapter-plate__image{display:grid;min-width:0;place-items:center;border-right:1px solid var(--hair);background:color-mix(in srgb,var(--void) 3%,transparent)}
.chapter-plate__image img{display:block;width:100%;height:auto;min-height:0;object-fit:contain;filter:saturate(.88) contrast(.99)}
.chapter-plate--portrait .chapter-plate__image img{max-width:42rem}
.chapter-plate figcaption{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:clamp(1.5rem,4vw,4rem)}.chapter-plate figcaption>span{color:var(--acc);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.14em}.chapter-plate h3{margin:clamp(1.4rem,3vw,2.5rem) 0 0;font:400 clamp(1.6rem,3.2vw,3rem)/1.55 var(--mincho);letter-spacing:-.02em}.chapter-plate p{margin:1.4rem 0 0;color:var(--dim);line-height:1.95}
.chapter-plate__lineage{width:100%;margin-top:2rem}.chapter-plate__lineage summary{color:var(--acc)}.chapter-plate__lineage a{margin:0;color:var(--acc)}

.earnings-table-wrap{max-width:100%;overflow-x:auto;border-block:1px solid var(--hair);scrollbar-width:thin}
.earnings-table{width:100%;min-width:49rem;border-collapse:collapse;font-variant-numeric:tabular-nums}
.earnings-table th,.earnings-table td{padding:1rem .85rem;border-bottom:1px solid var(--hair2);text-align:right;white-space:nowrap}
.earnings-table th:first-child,.earnings-table td:first-child{text-align:left}
.earnings-table th{color:var(--faint);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.08em}.earnings-table td{font:400 1rem/1.5 var(--mono)}
.earnings-table tbody tr:last-child td{border-bottom:0}.earnings-table tbody tr.is-forecast{background:color-mix(in srgb,var(--acc) 7%,transparent)}
.earnings-table__period b{font-weight:600}.earnings-table__period small{display:block;color:var(--acc);font:var(--fs-label)/1.4 var(--mono);letter-spacing:.08em}
.earnings-trend{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;height:10rem;margin-top:1rem;border-bottom:1px solid var(--hair)}
.earnings-trend i{display:block;width:min(2.4rem,48%);height:var(--h);margin:0 auto;background:linear-gradient(to top,var(--acc),color-mix(in srgb,var(--acc) 18%,transparent));border-top:1px solid var(--acc)}

.segment-ledger{border-top:1px solid var(--hair)}
.segment-leaf{display:grid;grid-template-columns:3rem minmax(12rem,.48fr) minmax(9rem,.25fr) minmax(9rem,.25fr) minmax(16rem,1fr);gap:1rem;align-items:start;padding:1.4rem 0;border-bottom:1px solid var(--hair)}
.segment-leaf__no{color:var(--faint);font:var(--fs-label)/1.5 var(--mono)}.segment-leaf h3{margin:0;font:400 1.35rem/1.45 var(--mincho)}.segment-leaf dl{margin:0}
.segment-leaf dt{color:var(--faint);font:var(--fs-label)/1.4 var(--mono);letter-spacing:.08em}.segment-leaf dd{margin:.3rem 0 0;font:600 .95rem/1.5 var(--mono)}.segment-leaf dd.is-negative{color:var(--seal)}
.segment-leaf p{min-width:0;margin:0;color:var(--dim);font-size:var(--fs-small);line-height:1.85;overflow-wrap:anywhere}
.segment-summary{max-width:62rem;margin:2rem 0 0;padding:1.5rem 0 1.5rem clamp(1.2rem,3vw,3rem);border-left:1px solid var(--acc);font:400 var(--fs-lede)/1.9 var(--mincho)}

.ai-leaf{display:grid;grid-template-columns:minmax(0,1fr) minmax(15rem,.36fr);border-block:1px solid var(--hair)}
.ai-leaf__statement{padding:clamp(1.5rem,4vw,4rem) clamp(1.5rem,5vw,5rem) clamp(1.5rem,4vw,4rem) 0}.ai-leaf__judgment{padding:clamp(1.5rem,4vw,4rem);border-left:1px solid var(--hair);background:color-mix(in srgb,var(--acc) 5%,transparent)}
.ai-leaf__statement>span,.ai-leaf__judgment>span{color:var(--faint);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.14em}.ai-leaf__statement p{margin:2rem 0 0;font:400 clamp(1.2rem,2.3vw,2rem)/1.75 var(--mincho)}.ai-leaf__judgment p{margin:2rem 0 0;color:var(--dim);line-height:1.9}
.ai-cross{margin-top:2rem;padding-top:1.4rem;border-top:1px solid var(--hair)}.ai-cross b{display:block;color:var(--acc);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.12em}.ai-cross p{margin:.9rem 0 0;font-size:var(--fs-small);line-height:1.9}.ai-cross a{display:inline-block;margin-top:1rem;color:var(--acc);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.08em;text-underline-offset:.25em}
.ai-pages{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}.ai-pages button,.ai-pages a{display:inline-grid;place-items:center;min-width:3rem;height:2.2rem;padding:0 .55rem;border:1px solid var(--hair);background:transparent;color:var(--faint);font:var(--fs-label)/1 var(--mono);cursor:pointer;text-decoration:none}.ai-pages button:hover,.ai-pages a:hover{border-color:var(--acc);color:var(--acc)}

.leaf-atlas{margin:0 0 clamp(2.5rem,6vw,5rem);border-block:1px solid var(--hair);background:color-mix(in srgb,var(--reading) 48%,transparent);overflow:hidden}
.leaf-atlas__head{display:grid;grid-template-columns:minmax(15rem,.42fr) minmax(0,1fr);gap:clamp(1rem,4vw,4rem);align-items:end;padding:clamp(1.2rem,3vw,2.4rem);border-bottom:1px solid var(--hair)}.leaf-atlas__head span{color:var(--acc);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.18em}.leaf-atlas__head h3{margin:.7rem 0 0;font:400 clamp(2rem,4vw,4.6rem)/1 var(--mincho);letter-spacing:.04em}.leaf-atlas__head p{max-width:45rem;margin:0;color:var(--dim);line-height:1.9}
.leaf-atlas__viewport{position:relative;height:clamp(20rem,38vw,35rem);overflow:hidden;background:radial-gradient(ellipse at 52% 48%,color-mix(in srgb,var(--acc) 9%,transparent),transparent 55%),linear-gradient(180deg,color-mix(in srgb,var(--world-sky) 70%,transparent),transparent)}
.leaf-atlas__viewport::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-radial-gradient(circle at 0 0,color-mix(in srgb,var(--ink) 5%,transparent) 0 1px,transparent 1px 4px);mix-blend-mode:multiply;opacity:.23}
#leafAtlasCanvas{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;cursor:crosshair;touch-action:pan-y}
.leaf-atlas__cursor{position:absolute;top:1.2rem;left:1.2rem;z-index:2;display:flex;align-items:baseline;gap:.8rem;pointer-events:none}.leaf-atlas__cursor span{font:400 clamp(1.5rem,3vw,3rem)/1 var(--mincho)}.leaf-atlas__cursor small{color:var(--acc);font:600 var(--fs-label)/1 var(--mono);letter-spacing:.14em}
.leaf-atlas__tip{position:absolute;left:0;top:0;z-index:4;width:min(19rem,calc(100% - 1rem));padding:.8rem 1rem;background:color-mix(in srgb,var(--void) 90%,transparent);border:1px solid var(--hair);box-shadow:var(--shadow-soft);pointer-events:none}.leaf-atlas__tip b,.leaf-atlas__tip span{display:block}.leaf-atlas__tip b{color:var(--acc);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.1em}.leaf-atlas__tip span{margin-top:.45rem;color:var(--dim);font-size:var(--fs-small);line-height:1.55}
.leaf-atlas__wheel{position:absolute;right:1.2rem;bottom:1rem;z-index:2;color:var(--faint);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.12em;text-align:right;pointer-events:none}.leaf-atlas__wheel small{opacity:.72}
.leaf-atlas__filters{display:flex;max-width:100%;overflow-x:auto;border-top:1px solid var(--hair);scrollbar-width:thin}.leaf-atlas__filters button{flex:1 0 auto;min-height:3rem;padding:.7rem 1rem;border:0;border-right:1px solid var(--hair);background:transparent;color:var(--faint);font:600 var(--fs-label)/1 var(--mono);letter-spacing:.08em;cursor:pointer}.leaf-atlas__filters button[aria-pressed="true"]{color:var(--ink);background:color-mix(in srgb,var(--acc) 9%,transparent);box-shadow:inset 0 -2px var(--acc)}
.leaf-atlas__range{display:grid;grid-template-columns:4rem minmax(0,1fr) 4rem;gap:.8rem;align-items:center;padding:1rem 1.2rem;border-top:1px solid var(--hair)}.leaf-atlas__range>span{color:var(--dim);font:600 var(--fs-label)/1 var(--mono);letter-spacing:.08em}.leaf-atlas__range>span:last-child{text-align:right}.leaf-range{position:relative;height:1.7rem}.leaf-range i{position:absolute;left:0;right:0;top:50%;height:1px;background:var(--hair)}.leaf-range input{position:absolute;inset:0;width:100%;height:100%;margin:0;background:transparent;pointer-events:none;appearance:none}.leaf-range input::-webkit-slider-runnable-track{height:1px;background:transparent}.leaf-range input::-webkit-slider-thumb{width:1rem;height:1.7rem;margin-top:-.8rem;border:1px solid var(--acc);border-radius:0;background:var(--void);appearance:none;pointer-events:auto;cursor:ew-resize}.leaf-range input::-moz-range-track{height:1px;background:transparent}.leaf-range input::-moz-range-thumb{width:1rem;height:1.7rem;border:1px solid var(--acc);border-radius:0;background:var(--void);pointer-events:auto;cursor:ew-resize}

.pdf-observer{border-block:1px solid var(--hair);background:color-mix(in srgb,var(--reading) 62%,transparent)}
.pdf-observer__toolbar{display:grid;grid-template-columns:3.5rem minmax(9rem,.4fr) minmax(11rem,.5fr) 3.5rem minmax(9rem,.38fr);align-items:center;border-bottom:1px solid var(--hair)}
.pdf-observer__toolbar button,.pdf-observer__toolbar select,.pdf-observer__toolbar a{min-width:0;height:3.5rem;border:0;border-right:1px solid var(--hair);border-radius:0;background:transparent;color:var(--ink);font:600 var(--fs-label)/1.3 var(--mono);letter-spacing:.08em}
.pdf-observer__toolbar button{cursor:pointer;font-size:1.1rem}.pdf-observer__toolbar button:hover{background:color-mix(in srgb,var(--acc) 7%,transparent);color:var(--acc)}
.pdf-observer__counter{padding:0 1rem;color:var(--acc);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.14em}.pdf-observer__toolbar select{padding:0 .8rem}.pdf-observer__toolbar a{display:grid;place-items:center;border-right:0;text-decoration:none}.pdf-observer__toolbar a:hover{color:var(--acc)}
.pdf-observer__page{position:relative;display:grid;grid-template-columns:clamp(3.4rem,5vw,5.25rem) minmax(0,1fr) clamp(3.4rem,5vw,5.25rem);align-items:stretch;width:100%;min-height:36rem;padding:clamp(.6rem,2vw,1.5rem);background:#d5d9d6}
.pdf-observer__page a{display:block;width:100%;text-decoration:none;touch-action:pan-y}
.pdf-observer__page img{display:block;width:100%;height:auto;margin:0 auto;background:#fff;box-shadow:0 14px 42px rgba(15,24,21,.14)}
.pdf-page-nav{position:sticky;top:42vh;align-self:start;display:grid;place-items:center;gap:.45rem;width:calc(100% - .45rem);height:clamp(5.5rem,12vw,9rem);margin-top:clamp(8rem,28vw,24rem);border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);border-radius:0;background:color-mix(in srgb,var(--reading) 82%,transparent);color:var(--ink);cursor:pointer;backdrop-filter:blur(8px);z-index:2;transition:background .18s ease,color .18s ease,border-color .18s ease}
.pdf-page-nav--prev{justify-self:start}.pdf-page-nav--next{justify-self:end}.pdf-page-nav span{font:400 clamp(1.6rem,3vw,2.8rem)/1 var(--mincho)}.pdf-page-nav small{font:600 var(--fs-label)/1 var(--mono);letter-spacing:.08em}.pdf-page-nav:hover,.pdf-page-nav:focus-visible{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 13%,var(--reading));color:var(--acc);outline:0}.pdf-observer__sheet{grid-column:2;min-width:0}
.leaf-reader{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(20rem,.55fr);align-items:start}.leaf-reader .pdf-observer__page{border-right:1px solid var(--hair)}.leaf-reader__judgment{position:sticky;top:5.5rem;display:flex;min-width:0;min-height:34rem;flex-direction:column;justify-content:space-between;padding:clamp(1.5rem,4vw,3.5rem)}.leaf-reader__judgment>span,.leaf-reader__judgment small{color:var(--acc);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.13em}.leaf-reader__judgment blockquote{margin:clamp(1.7rem,4vw,4rem) 0;font:400 clamp(1.35rem,2.4vw,2.5rem)/1.62 var(--mincho);overflow-wrap:anywhere}.leaf-reader__judgment>div{padding-top:1.2rem;border-top:1px solid var(--hair)}.leaf-reader__judgment p{margin:.8rem 0 0;color:var(--dim);line-height:1.9;overflow-wrap:anywhere}
.pdf-observer__notes{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--hair)}
.pdf-note{min-width:0;padding:clamp(1.3rem,3vw,2.5rem)}.pdf-note+ .pdf-note{border-left:1px solid var(--hair)}
.pdf-note span{color:var(--faint);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.12em}.pdf-note p{margin:1.2rem 0 0;line-height:1.9;overflow-wrap:anywhere}.pdf-note--kokki{background:color-mix(in srgb,var(--acc) 5%,transparent)}.pdf-note--kokki p{font-family:var(--mincho);font-size:var(--fs-lede)}
.pdf-observer__visual{display:grid;grid-template-columns:minmax(0,1fr) minmax(14rem,.4fr);border-top:1px solid var(--hair)}.pdf-observer__visual img{display:block;width:100%;height:auto}.pdf-observer__visual figcaption{padding:1.5rem;border-left:1px solid var(--hair)}
.pdf-observer__strip{display:flex;gap:0;max-width:100%;overflow-x:auto;border-top:1px solid var(--hair);scrollbar-width:thin}.pdf-observer__strip button{flex:0 0 3.4rem;height:3rem;border:0;border-right:1px solid var(--hair);background:transparent;color:var(--faint);font:var(--fs-label)/1 var(--mono);cursor:pointer}.pdf-observer__strip button[aria-pressed="true"]{color:var(--ink);background:color-mix(in srgb,var(--acc) 10%,transparent);box-shadow:inset 0 -2px var(--acc)}

.source-leaves{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--hair)}.source-leaf{display:flex;min-width:0;flex-direction:column;gap:2rem;padding:1.5rem;text-decoration:none}.source-leaf+ .source-leaf{border-left:1px solid var(--hair)}.source-leaf span{color:var(--acc);font:600 var(--fs-label)/1.5 var(--mono);letter-spacing:.12em}.source-leaf strong{min-width:0;font:400 1.25rem/1.65 var(--mincho);overflow-wrap:anywhere}.source-leaf small{margin-top:auto;color:var(--faint);font:var(--fs-label)/1.5 var(--mono)}.source-leaf:hover{background:color-mix(in srgb,var(--acc) 6%,transparent)}
.earnings-disclosure{margin:1.5rem 0 0;color:var(--faint);font-size:var(--fs-small);line-height:1.85}

@media(max-width:1180px){.segment-leaf{grid-template-columns:3rem minmax(10rem,.65fr) minmax(8rem,.3fr) minmax(8rem,.3fr);grid-template-areas:"no name rev profit" ". note note note"}.segment-leaf__no{grid-area:no}.segment-leaf h3{grid-area:name}.segment-leaf dl:nth-of-type(1){grid-area:rev}.segment-leaf dl:nth-of-type(2){grid-area:profit}.segment-leaf p{grid-area:note;padding-top:.35rem}}
@media(max-width:900px){.earnings-page .monitor-hero__ledger{min-height:0}.earnings-page .monitor-hero__ledger dl{position:static;margin-top:1.5rem}.earnings-verdict{grid-template-columns:minmax(13rem,.38fr) minmax(0,1fr)}.earnings-verdict__portrait,.earnings-verdict__portrait img{min-height:30rem}.chapter-plate--landscape,.chapter-plate--portrait{grid-template-columns:1fr}.chapter-plate__image{border-right:0;border-bottom:1px solid var(--hair)}.chapter-plate--portrait .chapter-plate__image img{max-width:35rem}.ai-leaf{grid-template-columns:1fr}.ai-leaf__judgment{border-left:0;border-top:1px solid var(--hair)}.pdf-observer__toolbar{grid-template-columns:3.2rem minmax(7rem,.45fr) minmax(9rem,.55fr) 3.2rem}.pdf-observer__toolbar a{grid-column:1/-1;border-top:1px solid var(--hair)}.pdf-observer__page{min-height:31rem}}
@media(max-width:680px){.earnings-verdict{grid-template-columns:1fr}.earnings-verdict__portrait{min-height:27rem;border-right:0;border-bottom:1px solid var(--hair)}.earnings-verdict__portrait img{min-height:27rem;max-height:34rem}.earnings-verdict__metrics{grid-template-columns:1fr}.earnings-verdict__metrics div{border-right:0;border-bottom:1px solid var(--hair)}.earnings-lineage__body{grid-template-columns:6rem minmax(0,1fr)}.earnings-lineage__body img{width:6rem;height:8rem}.earnings-lineage dl div{grid-template-columns:1fr;gap:.1rem}.segment-leaf{grid-template-columns:2rem minmax(0,1fr) minmax(7rem,.48fr);grid-template-areas:"no name name" ". rev profit" ". note note"}.source-leaves,.pdf-observer__notes{grid-template-columns:1fr}.source-leaf+ .source-leaf,.pdf-note+ .pdf-note{border-left:0;border-top:1px solid var(--hair)}.pdf-observer__page{grid-template-columns:2.7rem minmax(0,1fr) 2.7rem;min-height:27rem;padding:.45rem}.pdf-page-nav{position:sticky;top:40vh;width:2.45rem;height:5.25rem;margin-top:7rem;background:color-mix(in srgb,var(--reading) 90%,transparent)}.pdf-page-nav small{font-size:.5rem;writing-mode:vertical-rl}.pdf-observer__toolbar{grid-template-columns:3rem minmax(5.5rem,.4fr) minmax(7rem,.6fr) 3rem}.pdf-observer__counter{padding:.4rem}.pdf-observer__visual{grid-template-columns:1fr}.pdf-observer__visual figcaption{border-left:0;border-top:1px solid var(--hair)}}
@media(max-width:420px){.segment-leaf{grid-template-columns:2rem minmax(0,1fr);grid-template-areas:"no name" ". rev" ". profit" ". note"}}
@media(max-width:900px){.leaf-reader{grid-template-columns:1fr}.leaf-reader .pdf-observer__page{border-right:0}.leaf-reader__judgment{position:relative;top:auto;min-height:0;border-top:1px solid var(--hair)}}
@media(max-width:680px){.leaf-atlas__head{grid-template-columns:1fr}.leaf-atlas__viewport{height:20rem}.leaf-atlas__wheel{font-size:.52rem}.leaf-atlas__range{grid-template-columns:3.4rem minmax(0,1fr) 3.4rem;padding-inline:.7rem}}
