:root{--bg:#f4f1e9;--text:#211d17;--accent:#8f2d2d;--accent-hover:#5f1d1d;--sub:#635c4d;--sub-weak:#6f6858;--body-weak:#4d4638;--rule-strong:#211d17;--rule-mid:#ddd6c6;--rule-weak:#e2dccd;--rule-race:#eee8d9;--chip-border:#d3ccbb;--filter-border:#c9c1ae;--hero-bg:#ede7d7;--note-bg:#faf7ef;--note-border:#d8d2c2;--num-border:#a29a87;--num-bg:#fff;--no-mark:#b3ab98;--font-sans:"Noto Sans JP";--font-serif:"Shippori Mincho"}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans), sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6}h1,h2,h3,p,figure{margin:0}a{color:var(--accent)}a:hover{color:var(--accent-hover)}button{font-family:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mincho{font-family:var(--font-serif), serif}.num{font-variant-numeric:tabular-nums}.top-bar{background:var(--accent);height:4px}.page{background:var(--bg);min-height:100dvh}.shell{max-width:680px;margin:0 auto;padding:0 18px 48px}.masthead{text-align:center;border-bottom:4px double var(--rule-strong);color:inherit;gap:4px;padding:22px 0 14px;text-decoration:none;display:grid}.masthead-eyebrow{letter-spacing:.3em;color:var(--sub);font-size:11px}.masthead-title{font-family:var(--font-serif), serif;letter-spacing:.08em;font-size:34px;font-weight:800;line-height:1.1}.masthead-tagline{color:var(--sub-weak);letter-spacing:.15em;font-size:11px}.filters{border-bottom:1px solid var(--rule-mid);gap:8px;padding:14px 0 4px;display:flex}.filter{letter-spacing:.05em;cursor:pointer;color:var(--body-weak);border:1px solid var(--filter-border);background:0 0;padding:5px 14px;font-size:12px}.filter:not([aria-pressed=true]):hover{border-color:var(--num-border);color:var(--text)}.filter[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:700}.day-group{padding-top:18px}.day-heading{font-family:var(--font-serif), serif;letter-spacing:.1em;align-items:baseline;gap:8px;font-size:15px;font-weight:700;display:flex}.day-heading:before{content:"";background:var(--accent);width:8px;height:8px;display:inline-block}.article-item{border-bottom:1px solid var(--rule-weak);cursor:pointer;color:inherit;gap:6px;padding:14px 0;text-decoration:none;display:grid}.meta-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.category-label{color:var(--accent);letter-spacing:.1em;font-size:11px;font-weight:700}.chip{color:var(--sub);border:1px solid var(--chip-border);padding:1px 6px;font-size:10px}.article-title{font-family:var(--font-serif), serif;font-size:18px;font-weight:700;line-height:1.4}.article-lead{color:var(--sub-weak);font-size:12px}.hot-row{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.hot-badge{color:var(--bg);background:var(--accent);letter-spacing:.08em;padding:2px 7px;font-size:10px;font-weight:700}.hot-pick{font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.hot-value{color:var(--sub);font-variant-numeric:tabular-nums;font-size:12px}.empty-note{color:var(--sub-weak);padding:28px 0;font-size:13px}.back-link{color:var(--accent);padding:16px 0 0;font-size:13px;text-decoration:none;display:inline-block}.article-header{border-bottom:1px solid var(--rule-mid);gap:8px;padding:14px 0 10px;display:grid}.article-date{color:var(--sub-weak);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px}.article-h1{font-family:var(--font-serif), serif;font-size:22px;font-weight:700;line-height:1.45}.article-hot-pick{font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.commentary{color:var(--text);margin-top:16px;font-size:14px;line-height:2}.legend{border:1px solid var(--note-border);background:var(--note-bg);color:var(--body-weak);margin-top:14px;padding:12px 14px;font-size:12px;line-height:1.8}.legend strong{color:var(--accent)}.race{border-bottom:1px solid var(--rule-weak);padding:22px 0 6px}.race-head{flex-wrap:wrap;align-items:baseline;gap:8px;padding-bottom:10px;display:flex}.race-no{font-family:var(--font-serif), serif;font-size:19px;font-weight:700}.race-name{font-size:13px;font-weight:500}.race-course{color:var(--sub);border:1px solid var(--chip-border);padding:1px 7px;font-size:11px}.race-note{color:var(--sub-weak);padding-bottom:8px;font-size:11px}.entry{grid-template-columns:24px 26px 1fr auto;align-items:center;gap:10px;display:grid}.entry-hero{background:var(--hero-bg);padding:12px}.entry-rest{border-bottom:1px solid var(--rule-race);padding:9px 12px}.mark-hero{color:var(--accent);font-size:20px;font-weight:700;line-height:1}.mark{color:var(--text);font-size:15px;font-weight:700;line-height:1}.mark-none{color:var(--no-mark);font-size:14px;line-height:1}.num-box{border:1px solid var(--num-border);font-variant-numeric:tabular-nums;background:var(--num-bg);place-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:grid}.num-box-hero{border:1.5px solid var(--text);font-size:13px}.entry-name-block{gap:1px;display:grid}.entry-name-block-hero{gap:2px}.entry-name-hero{font-family:var(--font-serif), serif;font-size:16px;font-weight:700;line-height:1.3}.entry-name{font-size:13.5px;font-weight:500;line-height:1.3}.entry-stats-hero{color:var(--sub);font-variant-numeric:tabular-nums;font-size:11px}.entry-stats{color:var(--sub-weak);font-variant-numeric:tabular-nums;font-size:10.5px}.entry-score-block{text-align:right;gap:1px;display:grid}.entry-score-hero{color:var(--accent);font-variant-numeric:tabular-nums;font-size:18px;font-weight:700;line-height:1}.entry-score-label{color:var(--sub-weak);letter-spacing:.1em;font-size:10px}.entry-score{font-variant-numeric:tabular-nums;color:var(--body-weak);font-size:14px;font-weight:700}.fold summary{width:100%;color:var(--sub);cursor:pointer;text-align:center;letter-spacing:.05em;padding:10px 0;font-size:12px;list-style:none;display:block}.fold summary::-webkit-details-marker{display:none}.fold .fold-close,.fold[open] .fold-open{display:none}.fold[open] .fold-close{display:inline}.disclaimer{color:var(--sub-weak);padding:16px 0;font-size:11px;line-height:1.9}.share{flex-wrap:wrap;gap:14px;padding:4px 0 8px;font-size:12px;display:flex}.share a{border:1px solid var(--chip-border);color:var(--body-weak);padding:6px 12px;text-decoration:none}.share a:hover{color:var(--accent-hover)}.footer{border-top:4px double var(--rule-strong);text-align:center;gap:8px;margin-top:36px;padding:18px 0;display:grid}.footer-title{font-family:var(--font-serif), serif;letter-spacing:.1em;font-size:14px;font-weight:700}.footer-meta{color:var(--sub-weak);font-size:11px}@media print{.filters,.share,.back-link{display:none}}
