:root{--ink-muted: oklch(.5 .008 280);--ink-0: oklch(.985 .003 90);--ink-1: oklch(.97 .003 90);--ink-2: oklch(.93 .004 90);--ink-3: oklch(.55 .006 280);--line-subtle: oklch(.75 .005 90);--ink-4: oklch(.45 .008 280);--ink-5: oklch(.18 .01 280);--ink-6: oklch(.1 .012 280);--accent: oklch(.62 .14 145);--accent-soft: oklch(.94 .04 145);--accent-solid: oklch(.5 .13 145);--accent-ink: oklch(.32 .08 145);--danger: oklch(.52 .18 28);--danger-soft: oklch(.96 .03 28);--warn: oklch(.74 .14 75);--warn-soft: oklch(.97 .04 75);--info: oklch(.62 .1 240);--info-soft: oklch(.96 .02 240);--star: oklch(.78 .13 80);--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--hairline: 1px solid var(--ink-2);--hairline-strong: 1px solid oklch(.85 .005 90);--font-jp: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--font-en: "Inter Tight", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-sans: var(--font-jp), var(--font-en)}[data-theme=dark]{--accent-solid: oklch(.62 .14 145);--line-subtle: oklch(.5 .008 280);--ink-muted: oklch(.72 .008 280);--ink-0: oklch(.16 .008 280);--ink-1: oklch(.2 .008 280);--ink-2: oklch(.26 .008 280);--ink-3: oklch(.5 .008 280);--ink-4: oklch(.7 .008 280);--ink-5: oklch(.94 .005 90);--ink-6: oklch(.99 .003 90);--accent-soft: oklch(.28 .06 145);--accent-ink: oklch(.85 .1 145);--danger-soft: oklch(.28 .07 28);--warn-soft: oklch(.28 .07 75);--info-soft: oklch(.26 .06 240);--hairline: 1px solid oklch(.26 .008 280);--hairline-strong: 1px solid oklch(.32 .008 280)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--ink-0);color:var(--ink-5)}body{font-family:var(--font-sans);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.005em;line-height:1.5}button{font-family:inherit;cursor:pointer}input,textarea{font-family:inherit}.app{min-height:100vh;background:var(--ink-0);color:var(--ink-5)}.topnav{position:sticky;top:0;z-index:50;background:color-mix(in oklch,var(--ink-0) 88%,transparent);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-bottom:var(--hairline)}.topnav-inner{max-width:1320px;margin:0 auto;padding:14px 24px;display:grid;grid-template-columns:220px 1fr 280px;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:17px;letter-spacing:-.02em;color:var(--ink-6)}.brand-mark{width:22px;height:22px;border-radius:6px;background:var(--ink-6);position:relative;display:grid;place-items:center}.brand-mark:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--accent);top:4px;right:4px}.brand-jp{font-family:var(--font-jp);font-size:12px;font-weight:400;color:var(--ink-muted);letter-spacing:0}.search{height:38px;display:flex;align-items:center;gap:10px;padding:0 14px;border:var(--hairline);border-radius:999px;background:var(--ink-1);color:var(--ink-muted);font-size:13px}.search input{flex:1;border:0;background:transparent;outline:none;font-size:13px;color:var(--ink-5)}.search kbd{font-family:var(--font-mono);font-size:11px;padding:2px 5px;border-radius:4px;background:var(--ink-2);color:var(--ink-4)}.nav-right{display:flex;align-items:center;gap:10px;justify-content:flex-end}.icon-btn{width:36px;height:36px;display:grid;place-items:center;border-radius:999px;border:var(--hairline);background:var(--ink-1);color:var(--ink-5);position:relative}.icon-btn:hover{background:var(--ink-2)}.icon-btn .dot{position:absolute;top:7px;right:8px;width:7px;height:7px;border-radius:50%;background:var(--danger);border:2px solid var(--ink-0)}.avatar{width:36px;height:36px;border-radius:999px;background:linear-gradient(135deg,#7cb57d,#3c9e87 50%,#239889 62.5%,#0e958a,#00918a 75%,#008a8a,#008287);display:grid;place-items:center;color:#fff;font-size:12px;font-weight:600;letter-spacing:.02em;border:1.5px solid var(--ink-0);box-shadow:0 0 0 1px var(--ink-2)}.layout{max-width:1040px;margin:0 auto;padding:24px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px;align-items:start}.sidebar{position:sticky;top:90px}.side-section{margin-bottom:28px}.side-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);padding:0 12px 8px}.side-link{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:var(--r-md);color:var(--ink-4);font-size:14px;font-weight:500;border:0;background:transparent;width:100%;text-align:left}.side-link:hover{background:var(--ink-1);color:var(--ink-6)}.side-link.active{background:var(--ink-6);color:var(--ink-0)}.side-link.active .side-icon{color:var(--ink-0)}.side-icon{color:var(--ink-3);display:grid;place-items:center}.side-link.active .side-count{color:var(--ink-0);opacity:.7}.side-count{margin-left:auto;font-size:12px;font-family:var(--font-mono);color:var(--ink-muted)}.neighborhood-card{margin-top:4px;padding:14px;border:var(--hairline);border-radius:var(--r-lg);background:var(--ink-1)}.nh-jp{font-family:var(--font-jp);font-size:12px;color:var(--ink-muted);margin-bottom:4px}.nh-name{font-size:15px;font-weight:600;color:var(--ink-6);letter-spacing:-.01em;margin-bottom:8px}.nh-stats{display:flex;gap:14px;font-size:12px;color:var(--ink-4);border-top:var(--hairline);padding-top:10px;margin-top:10px}.nh-stat strong{display:block;font-family:var(--font-mono);font-size:14px;font-weight:500;color:var(--ink-6);margin-bottom:2px;letter-spacing:-.02em}.feed{min-width:0}.composer{border:var(--hairline);border-radius:var(--r-lg);background:var(--ink-1);padding:14px 16px;margin-bottom:16px;display:flex;align-items:center;gap:12px}.composer-input{flex:1;height:40px;border:0;background:transparent;color:var(--ink-5);font-size:14px;outline:none}.composer-input::placeholder{color:var(--ink-muted)}.composer-actions{display:flex;gap:6px}.composer-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--r-md);border:0;background:transparent;color:var(--ink-4)}.composer-icon:hover{background:var(--ink-2);color:var(--ink-6)}.chips-wrap{margin-bottom:14px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:0}.chip{flex:0 0 auto;height:28px;padding:0 11px;border-radius:999px;border:var(--hairline);background:var(--ink-0);color:var(--ink-4);font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.chip:hover{color:var(--ink-6);border-color:var(--line-subtle)}.chip.active{background:var(--ink-6);color:var(--ink-0);border-color:var(--ink-6)}.chip .chip-jp{font-family:var(--font-jp);font-size:12px;opacity:.6}.post{border-bottom:var(--hairline);padding:20px 4px;display:grid;grid-template-columns:44px 1fr;gap:14px}.post:first-child{padding-top:4px}.post-avatar{width:44px;height:44px;border-radius:999px;display:grid;place-items:center;color:#fff;font-size:14px;font-weight:600;letter-spacing:.02em;flex-shrink:0}.post-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:2px}.post-author{font-weight:600;font-size:14px;color:var(--ink-6);letter-spacing:-.01em}.post-meta{font-size:12px;color:var(--ink-muted);display:inline-flex;align-items:center;gap:6px}.post-meta .dotsep{width:3px;height:3px;border-radius:50%;background:var(--line-subtle)}.post-loc{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--ink-4);font-family:var(--font-mono)}.post-stars{display:inline-flex;align-items:center;gap:1px;margin-left:auto}.star{width:11px;height:11px;color:var(--star)}.star.empty{color:var(--ink-2)}.resident-badge{display:inline-flex;align-items:center;gap:5px;height:19px;padding:0 7px;border-radius:4px;background:var(--accent-soft);color:var(--accent-ink);font-size:12px;font-weight:600;letter-spacing:.01em;font-family:var(--font-mono)}.resident-badge .dot{width:5px;height:5px;border-radius:50%;background:var(--accent)}.post-body{font-size:14.5px;line-height:1.55;color:var(--ink-5);margin:8px 0 0;letter-spacing:-.005em;text-wrap:pretty}.post-body .jp{font-family:var(--font-jp)}.post-tag{color:var(--accent-ink);font-weight:500}.post-image{margin-top:12px;border:var(--hairline);border-radius:var(--r-md);overflow:hidden;background:var(--ink-1);position:relative;aspect-ratio:16 / 10}.post-image-placeholder{width:100%;height:100%;background-image:repeating-linear-gradient(45deg,var(--ink-1),var(--ink-1) 10px,var(--ink-2) 10px,var(--ink-2) 11px);display:grid;place-items:center;color:var(--ink-muted);font-family:var(--font-mono);font-size:12px;letter-spacing:.05em}.post-image-grid{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:2px;height:100%}.post-image-grid>div{background:var(--ink-2)}.post-image-grid>div:first-child{grid-row:1 / 3}.post-actions{margin-top:12px;display:flex;align-items:center;gap:4px}.post-action{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;border:0;background:transparent;color:var(--ink-4);font-size:13px;font-weight:500;border-radius:var(--r-md);font-variant-numeric:tabular-nums;transition:color .12s ease}.post-action:hover{background:var(--ink-1);color:var(--ink-6)}.post-action.active{color:var(--accent-ink)}.post-action.active svg{fill:var(--accent);stroke:var(--accent)}.post-action svg{width:16px;height:16px}.post-pin{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:6px}.post-pin .pin-line{flex:1;height:1px;background:linear-gradient(to right,var(--accent),transparent)}.new-posts-indicator{position:sticky;top:80px;z-index:30;display:flex;justify-content:center;margin-bottom:12px}.new-posts-pill{height:34px;padding:0 16px;background:var(--ink-6);color:var(--ink-0);border:0;border-radius:999px;font-size:12.5px;font-weight:600;letter-spacing:-.005em;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 16px #0000001f;animation:pop-in .25s ease}.new-posts-pill .pulse{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}@keyframes pop-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.skeleton-post{padding:20px 4px;border-bottom:var(--hairline);display:grid;grid-template-columns:44px 1fr;gap:14px}.sk{background:linear-gradient(90deg,var(--ink-1) 0%,var(--ink-2) 50%,var(--ink-1) 100%);background-size:200% 100%;animation:shimmer 1.4s linear infinite;border-radius:var(--r-sm)}.sk-circle{border-radius:50%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.rail{position:sticky;top:90px}.rail-card{border:var(--hairline);border-radius:var(--r-lg);padding:16px;margin-bottom:16px;background:var(--ink-1)}.rail-title{font-size:13px;font-weight:600;color:var(--ink-6);display:flex;align-items:center;gap:8px;margin-bottom:12px;letter-spacing:-.01em}.rail-title .jp{font-family:var(--font-jp);font-size:12px;font-weight:400;color:var(--ink-muted);margin-left:auto}.group-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:var(--hairline)}.group-item:last-child{border-bottom:0;padding-bottom:0}.group-item:first-child{padding-top:0}.group-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-size:14px;background:var(--ink-2);color:var(--ink-5);flex-shrink:0}.group-info{min-width:0;flex:1}.group-name{font-size:13px;font-weight:600;color:var(--ink-6);margin-bottom:1px}.group-jp{font-family:var(--font-jp);font-size:12px;color:var(--ink-muted)}.group-meta{font-size:12px;color:var(--ink-muted);font-family:var(--font-mono)}.group-join{height:26px;padding:0 10px;border-radius:6px;border:var(--hairline-strong);background:var(--ink-0);color:var(--ink-6);font-size:12px;font-weight:600}.group-join.joined{background:var(--ink-6);color:var(--ink-0);border-color:var(--ink-6)}.footer{max-width:1320px;margin:32px auto 0;padding:24px;border-top:var(--hairline);display:flex;justify-content:space-between;font-size:12px;color:var(--ink-muted);font-family:var(--font-mono)}.alert{margin-bottom:16px;border-radius:var(--r-lg);overflow:hidden;position:relative}.alert.var-hairline{border:1px solid var(--danger);background:var(--danger-soft);padding:14px 16px;display:flex;align-items:center;gap:14px}.alert.var-hairline .alert-tag{font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--danger);padding:3px 7px;border:1px solid var(--danger);border-radius:4px;white-space:nowrap}.alert.var-hairline .alert-msg{flex:1;font-size:13.5px;color:var(--ink-6);font-weight:500}.alert.var-hairline .alert-time{font-size:12px;color:var(--ink-4);font-family:var(--font-mono)}.alert.var-solid{background:var(--ink-6);color:var(--ink-0);padding:0;display:flex;align-items:stretch;height:56px}.alert.var-solid .alert-icon-box{width:56px;flex-shrink:0;display:grid;place-items:center;background:var(--danger);color:#fff}.alert.var-solid .alert-icon-box svg{width:22px;height:22px;animation:alert-pulse 1.6s infinite}@keyframes alert-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.alert.var-solid .alert-content{flex:1;display:flex;flex-direction:column;justify-content:center;padding:0 16px;min-width:0}.alert.var-solid .alert-tag{font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.12em;color:#ef7f72;margin-bottom:2px}.alert.var-solid .alert-msg{font-size:13.5px;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alert.var-solid .alert-cta{align-self:center;margin-right:14px;height:30px;padding:0 14px;background:#fff;color:var(--ink-6);border:0;border-radius:6px;font-size:12px;font-weight:600}.alert.var-card{border:var(--hairline);background:var(--ink-1);padding:16px 18px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;border-left:3px solid var(--warn)}.alert.var-card .alert-icon-circle{width:36px;height:36px;border-radius:50%;background:var(--warn-soft);color:oklch(.42 .14 75);display:grid;place-items:center}.alert.var-card .alert-text{min-width:0}.alert.var-card .alert-title{font-size:13.5px;font-weight:600;color:var(--ink-6);margin-bottom:2px;letter-spacing:-.01em}.alert.var-card .alert-sub{font-size:12px;color:var(--ink-4);display:flex;align-items:center;gap:8px}.alert.var-card .alert-sub .dotsep{width:3px;height:3px;border-radius:50%;background:var(--line-subtle)}.alert.var-card .alert-actions{display:flex;gap:6px}.alert.var-card .alert-link{height:30px;padding:0 12px;border:var(--hairline-strong);background:var(--ink-0);color:var(--ink-6);border-radius:6px;font-size:12px;font-weight:600}.alert.var-card .alert-dismiss{width:30px;height:30px;border:0;background:transparent;color:var(--ink-3);border-radius:6px}.alert.var-card .alert-dismiss:hover{background:var(--ink-2);color:var(--ink-6)}.modal-backdrop{position:fixed;inset:0;background:#03030666;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:100;display:grid;place-items:center;animation:fade-in .15s ease;padding:20px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal{width:100%;max-width:560px;background:var(--ink-0);border:var(--hairline);border-radius:var(--r-lg);box-shadow:0 32px 80px #0000002e;display:flex;flex-direction:column;max-height:90vh}.modal-head{padding:16px 20px;border-bottom:var(--hairline);display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:14px;font-weight:600;color:var(--ink-6);letter-spacing:-.01em}.modal-title .jp{font-family:var(--font-jp);font-size:12px;color:var(--ink-muted);margin-left:8px}.modal-body{padding:18px 20px;overflow-y:auto}.modal-textarea{width:100%;min-height:110px;border:0;outline:none;resize:none;font-family:inherit;font-size:15px;line-height:1.55;color:var(--ink-5);background:transparent}.modal-textarea::placeholder{color:var(--ink-muted)}.location-tag{margin-top:12px;border:var(--hairline);border-radius:var(--r-md);padding:12px 14px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:var(--ink-1)}.location-tag-icon{width:32px;height:32px;border-radius:8px;background:var(--accent-soft);color:var(--accent-ink);display:grid;place-items:center}.location-tag-info{min-width:0}.location-tag-name{font-size:13px;font-weight:600;color:var(--ink-6)}.location-tag-coord{font-family:var(--font-mono);font-size:12px;color:var(--ink-muted)}.location-radius{display:flex;gap:6px}.radius-btn{height:28px;padding:0 10px;border-radius:6px;border:var(--hairline);background:var(--ink-0);color:var(--ink-4);font-size:12px;font-weight:600;font-family:var(--font-mono)}.radius-btn.active{background:var(--ink-6);color:var(--ink-0);border-color:var(--ink-6)}.modal-extras{display:flex;gap:4px;margin-top:12px;flex-wrap:wrap}.modal-extra{height:32px;padding:0 12px;border:var(--hairline);border-radius:999px;background:var(--ink-0);color:var(--ink-4);font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:6px}.modal-extra:hover{color:var(--ink-6)}.modal-foot{padding:14px 20px;border-top:var(--hairline);display:flex;align-items:center;justify-content:space-between}.char-count{font-family:var(--font-mono);font-size:12px;color:var(--ink-muted)}.btn-primary{height:36px;padding:0 18px;background:var(--ink-6);color:var(--ink-0);border:0;border-radius:8px;font-size:13px;font-weight:600;letter-spacing:-.005em}.btn-primary:disabled{background:var(--ink-2);color:var(--ink-3)}.btn-secondary{height:36px;padding:0 14px;background:transparent;color:var(--ink-4);border:0;border-radius:8px;font-size:13px;font-weight:500}.bottom-nav{display:none}@media (max-width: 1100px){.topnav-inner{grid-template-columns:1fr auto;gap:12px;padding:12px 16px}.topnav-inner .search{display:none}.layout{grid-template-columns:1fr;padding:12px 12px 80px;gap:0}.feed{padding:0}.sidebar,.rail{display:none}.footer{padding:16px;margin-bottom:70px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:64px;background:color-mix(in oklch,var(--ink-0) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:var(--hairline);z-index:100;padding:0 8px;justify-content:space-around;align-items:center}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;border:0;background:transparent;color:var(--ink-muted);padding:8px 0}.bottom-nav-item span{font-size:11px;font-weight:500;letter-spacing:.02em}.bottom-nav-item.active{color:var(--accent-ink)}.bottom-nav-item.active svg{color:var(--accent)}.screen{padding:8px 4px}.comment-section,.detail-post{border-radius:var(--r-md);padding:12px}}.screen{max-width:760px;margin:0 auto;padding:8px 0}.detail-back-bar{padding:4px 0 16px}.back-btn{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;background:transparent;border:var(--hairline);border-radius:999px;color:var(--ink-5);font-size:12.5px;font-weight:500}.back-btn:hover{background:var(--ink-1)}.detail-post{border:var(--hairline);border-radius:var(--r-lg);padding:8px 18px 4px;background:var(--ink-1);margin-bottom:18px}.detail-post .post{border-bottom:0;padding-bottom:12px}.comment-section{border:var(--hairline);border-radius:var(--r-lg);background:var(--ink-0);padding:4px 18px 18px}.comment-header{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:var(--hairline)}.sort-btn{height:28px;padding:0 10px;background:var(--ink-1);border:var(--hairline);border-radius:6px;color:var(--ink-5);font-size:12px;font-weight:500;font-family:var(--font-mono)}.comment-composer{display:flex;gap:12px;padding:16px 0;border-bottom:var(--hairline)}.comment-input{width:100%;min-height:60px;border:var(--hairline);border-radius:var(--r-md);background:var(--ink-1);padding:10px 12px;font-family:inherit;font-size:13.5px;color:var(--ink-5);resize:none;outline:none}.comment-input:focus{border-color:var(--ink-4);background:var(--ink-0)}.comment-composer-foot{margin-top:8px;display:flex;align-items:center;justify-content:space-between}.comment-list{padding-top:6px}.comment{display:grid;grid-template-columns:36px 1fr;gap:12px;padding:14px 0;border-bottom:var(--hairline)}.comment:last-child{border-bottom:0}.comment.is-reply{border-bottom:0;margin-left:12px;border-left:2px solid var(--ink-2);padding:12px 0 4px 14px;display:grid;grid-template-columns:30px 1fr}.comment-avatar{width:36px;height:36px;border-radius:999px;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:600}.comment.is-reply .comment-avatar{width:30px;height:30px;font-size:12px}.comment-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:4px}.comment-author{font-size:13px;font-weight:600;color:var(--ink-6)}.comment-time{font-size:12px;color:var(--ink-muted);font-family:var(--font-mono);margin-left:auto}.comment-body{font-size:13.5px;line-height:1.55;color:var(--ink-5);font-family:var(--font-jp)}.comment-actions{display:flex;gap:4px;margin-top:6px}.comment-action{height:26px;padding:0 8px;border:0;background:transparent;color:var(--ink-muted);font-size:12px;font-weight:500;border-radius:6px;display:inline-flex;align-items:center;gap:5px}.comment-action:hover{background:var(--ink-1);color:var(--ink-6)}.comment-action.active{color:var(--accent-ink)}.comment-action.active svg{stroke:var(--accent)}a.brand,a.side-link,a.chip,a.post-action,a.group-item,a.bottom-nav-item{text-decoration:none}a.side-link{color:var(--ink-4)}a.side-link:hover{text-decoration:none}a.side-link.active{color:var(--ink-0)}a.chip{color:var(--ink-4)}a.chip.active{color:var(--ink-0)}a.chip:hover{text-decoration:none}a.post-action{color:var(--ink-4)}a.post-action:hover{text-decoration:none}a.group-item{color:inherit}a.bottom-nav-item{color:var(--ink-muted)}a.bottom-nav-item.active{color:var(--accent-ink)}a.bottom-nav-item:hover{text-decoration:none}.brand-mark{color:var(--ink-0);font-family:var(--font-jp);font-size:12px;font-weight:700;line-height:1}.brand-name{font-size:15px}.brand-sub{font-family:var(--font-jp);font-size:12px;font-weight:400;color:var(--ink-muted)}.post-content{min-width:0}.page-title{font-size:22px;line-height:1.35;font-weight:600;letter-spacing:-.02em;color:var(--ink-6);margin:0 0 10px}.muted{color:var(--ink-4)}.card{background:var(--ink-1);border:var(--hairline);border-radius:var(--r-lg);min-width:0;max-width:100%}.crumb{font-size:12px;color:var(--ink-muted);margin:0 0 10px}.crumb a{color:var(--ink-4)}.badge{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:4px;border:var(--hairline);font-size:12px;font-weight:600;text-decoration:none}.badge-p0,.badge-alert{background:var(--danger-soft);color:var(--danger);border-color:transparent}.badge-p1{background:var(--accent-soft);color:var(--accent-ink);border-color:transparent}.warn-banner{background:var(--warn-soft);border:var(--hairline);border-radius:var(--r-md);padding:10px 12px;font-size:12.5px;line-height:1.6}.field,.search-input{border:var(--hairline);border-radius:8px;background:var(--ink-0);color:var(--ink-5);font:inherit}.search-input{flex:1;height:38px;padding:0 12px}.stack{display:grid}.chip-row,.chips{align-items:center}.meta-box{display:grid;grid-template-columns:7em minmax(0,1fr);gap:6px 10px;font-size:13px;margin:0 0 14px;min-width:0}.meta-box dd,.meta-box a,.source-link,.warn-banner{min-width:0;overflow-wrap:anywhere}.prose-box{background:var(--ink-0);border:var(--hairline);border-radius:var(--r-md);padding:12px}.callout{border:var(--hairline);border-radius:var(--r-md);padding:12px;background:var(--ink-0)}.callout-accent{background:var(--accent-soft)}.callout-danger{background:var(--danger-soft)}.callout-warn{background:var(--warn-soft)}.reaction-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}.reaction-btn,a.reaction-btn{display:inline-flex;align-items:center;height:32px;padding:0 10px;border-radius:var(--r-md);border:var(--hairline);background:var(--ink-0);color:var(--ink-5);font-size:12.5px;text-decoration:none}.source-link{color:var(--accent-ink);font-weight:600}.footer.site-footer{display:block;font-family:var(--font-jp);font-size:13px;color:var(--ink-4)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr .8fr;gap:28px}.footer-title{font-weight:600;color:var(--ink-6);margin-bottom:8px;font-size:13px}.footer-links{display:grid;gap:0}footer.site-footer .footer-links a{color:var(--ink-5);display:flex;align-items:center;min-height:44px}.article-body{min-width:0;font-size:15px;line-height:1.8;overflow-wrap:anywhere}.article-body h2{font-size:17px;margin:1.2em 0 .4em}.article-body p{margin:.6em 0}.article-body ul,.article-body ol{padding-left:1.2em}.article-table-scroll{max-width:100%;overflow-x:auto;margin:12px 0;-webkit-overflow-scrolling:touch}.article-body table{border-collapse:collapse;width:max-content;min-width:100%}.article-body th,.article-body td{border:var(--hairline);padding:6px 8px;font-size:13px;text-align:left;vertical-align:top}.rail-scroll{max-height:480px;overflow:auto}.group-name{overflow-wrap:anywhere}@media (max-width: 800px){.footer-grid{grid-template-columns:1fr}}.btn-primary{min-height:44px}a.post-action{display:inline-flex;align-items:center;min-height:44px;padding:0 12px}.crumb a{display:inline-block;padding:8px 2px}form input[type=text],form input[type=number],form input[type=search],form select,form textarea{min-height:44px}.hp input{min-height:0}.bottom-nav-item{min-height:52px}a.card,a.card strong,a.card h2,a.card h3{text-decoration:none}a.card:hover strong,a.card:hover h2,a.card:hover h3,a.card:focus-visible strong,a.card:focus-visible h2,a.card:focus-visible h3{text-decoration:underline}a.card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}code{font-size:12px}a.chip{display:inline-flex;align-items:center;min-height:44px;height:auto;max-width:100%;white-space:normal;padding-top:6px;padding-bottom:6px}a.brand{min-height:44px}.skip-link{position:absolute;left:8px;top:-48px;z-index:1000;padding:10px 16px;border-radius:var(--r-md);background:var(--ink-6);color:var(--ink-0);font-size:14px;font-weight:600;text-decoration:none}.skip-link:focus{top:8px;outline:2px solid var(--accent);outline-offset:2px}main:focus{outline:none}@media (hover: none){.search kbd{display:none}}main [id]{scroll-margin-top:88px}.article-body a,.callout a,.prose-box a,.warn-banner a,.hoiku-notice a,.hoiku-twin a,.school-section a{color:var(--accent-ink)}a.btn,button.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 16px;border-radius:10px;border:var(--hairline-strong);background:var(--ink-0);color:var(--ink-6);font-size:13.5px;font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .12s ease}a.btn:hover,button.btn:hover{background:var(--ink-1);border-color:var(--line-subtle);text-decoration:none}a.btn.btn-primary,button.btn.btn-primary{background:var(--accent-solid);border-color:var(--accent-solid);color:#fff}a.btn.btn-primary:hover,button.btn.btn-primary:hover{background:var(--accent-ink);border-color:var(--accent-ink);color:#fff}.comm-hero{background:linear-gradient(135deg,var(--accent-soft) 0%,var(--ink-0) 75%);border:1px solid color-mix(in oklch,var(--accent) 30%,var(--ink-2));border-left:4px solid var(--accent-solid);border-radius:var(--r-lg);padding:16px 18px;margin:0 0 14px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.comm-hero-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:var(--accent-ink);background:var(--ink-0);border:1px solid color-mix(in oklch,var(--accent) 35%,transparent);padding:2px 9px;border-radius:999px;margin-bottom:6px}.comm-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.comm-tab{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 13px;border-radius:999px;font-size:13px;font-weight:600;text-decoration:none;border:1px solid var(--ink-2);background:var(--ink-0);color:var(--ink-5);transition:transform .12s ease,box-shadow .12s ease}.comm-tab:hover{text-decoration:none;transform:translateY(-1px)}.comm-tab-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.comm-tab[data-cat=all] .comm-tab-dot{background:var(--accent-solid)}.comm-tab[data-cat=all].active{background:var(--accent-solid);border-color:var(--accent-solid);color:#fff}.comm-tab[data-cat=all].active .comm-tab-dot{background:#fff}.comm-tab[data-cat=kosodate]{background:var(--accent-soft);border-color:color-mix(in oklch,var(--accent) 35%,transparent);color:var(--accent-ink)}.comm-tab[data-cat=kosodate] .comm-tab-dot{background:var(--accent-solid)}.comm-tab[data-cat=kosodate].active{background:var(--accent-solid);border-color:var(--accent-solid);color:#fff}.comm-tab[data-cat=kosodate].active .comm-tab-dot{background:#fff}.comm-tab[data-cat=school]{background:var(--info-soft);border-color:color-mix(in oklch,var(--info) 35%,transparent);color:oklch(.38 .12 240)}.comm-tab[data-cat=school] .comm-tab-dot{background:var(--info)}.comm-tab[data-cat=school].active{background:oklch(.48 .14 240);border-color:oklch(.48 .14 240);color:#fff}.comm-tab[data-cat=school].active .comm-tab-dot{background:#fff}.comm-tab[data-cat=life]{background:#d4f8ed;border-color:#8bd6c1;color:oklch(.34 .1 175)}.comm-tab[data-cat=life] .comm-tab-dot{background:oklch(.55 .13 175)}.comm-tab[data-cat=life].active{background:oklch(.44 .12 175);border-color:oklch(.44 .12 175);color:#fff}.comm-tab[data-cat=life].active .comm-tab-dot{background:#fff}.comm-tab[data-cat=question]{background:var(--warn-soft);border-color:color-mix(in oklch,var(--warn) 45%,transparent);color:oklch(.42 .13 65)}.comm-tab[data-cat=question] .comm-tab-dot{background:oklch(.68 .16 65)}.comm-tab[data-cat=question].active{background:oklch(.55 .16 55);border-color:oklch(.55 .16 55);color:#fff}.comm-tab[data-cat=question].active .comm-tab-dot{background:#fff}[data-theme=dark] .comm-tab[data-cat=school]{color:#9ed5fd}[data-theme=dark] .comm-tab[data-cat=life]{background:oklch(.26 .05 175);border-color:#044e40;color:#95dfcb}[data-theme=dark] .comm-tab[data-cat=question]{color:#fbd094}.comm-search-bar{background:var(--ink-0);border:var(--hairline);border-radius:var(--r-lg);padding:10px 12px;margin:0 0 14px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.comm-search-row{display:flex;flex:1 1 240px;gap:8px;min-width:0}.comm-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;text-align:left}@media (max-width: 600px){.comm-topic-grid{grid-template-columns:1fr}}.comm-topic-card{display:block;padding:12px 14px;border-radius:var(--r-md);border:var(--hairline);text-decoration:none;color:var(--ink-5);transition:transform .12s ease,border-color .12s ease}.comm-topic-card:hover{transform:translateY(-1px);text-decoration:none}.comm-topic-card[data-cat=kosodate]{background:var(--accent-soft);border-color:color-mix(in oklch,var(--accent) 30%,transparent)}.comm-topic-card[data-cat=school]{background:var(--info-soft);border-color:color-mix(in oklch,var(--info) 30%,transparent)}.comm-topic-card[data-cat=life]{background:#def9f1;border-color:#a5dbcb}.comm-topic-card[data-cat=question]{background:var(--warn-soft);border-color:color-mix(in oklch,var(--warn) 35%,transparent)}[data-theme=dark] .comm-topic-card[data-cat=life]{background:#05251e;border-color:#10473b}.form-card{background:var(--ink-1);border:var(--hairline);border-radius:var(--r-lg);padding:18px 20px;display:grid;gap:14px;margin-bottom:16px}.form-row-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.form-field{display:grid;gap:6px}.form-label{display:block;font-size:13px;font-weight:700;color:var(--ink-5)}.form-hint{font-size:12px;color:var(--ink-4);margin:0;line-height:1.55}.form-input,.form-select,.form-textarea{width:100%;border:var(--hairline-strong);border-radius:var(--r-md);font-size:14px;font-family:inherit;background:var(--ink-0);color:var(--ink-5);box-sizing:border-box}.form-input,.form-select{height:38px;padding:0 10px}.form-input[type=file]{height:auto;padding:10px 12px}.form-textarea{padding:10px 12px;line-height:1.6;resize:vertical}.form-actions-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.turnstile-box{border:1px dashed var(--line-subtle);border-radius:var(--r-md);padding:14px;background:var(--ink-0)}.comm-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin:14px 0 6px}.comm-photo-item{display:block;border:var(--hairline);border-radius:var(--r-md);overflow:hidden;background:var(--ink-0);aspect-ratio:4 / 3}.comm-photo-item img{width:100%;height:100%;object-fit:cover;display:block}.comm-detail-card{padding:20px;margin-bottom:16px}.comm-detail-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.comm-detail-title{margin:0 0 14px;font-size:20px;line-height:1.45}.comm-detail-body{font-size:15px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.comm-detail-note{margin:16px 0 0;font-size:12px;border-top:var(--hairline);padding-top:10px}.comm-comments-list{display:grid;gap:10px;margin-bottom:16px}.comm-comment-card{padding:14px 16px}.comm-comment-body{font-size:14px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.konest-flow-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:11px 14px;margin:0 0 14px;border:var(--hairline);border-radius:var(--r-md);background:var(--ink-1);font-size:12.5px;color:var(--ink-5)}.konest-flow-step{display:inline-flex;align-items:center;gap:6px;font-weight:600}.konest-flow-num{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:999px;background:var(--accent-solid);color:#fff;font-size:11px;font-weight:700;font-family:var(--font-mono);flex-shrink:0}.konest-flow-arrow{color:var(--ink-3);font-weight:700}.konest-forum{background:var(--ink-0);border:var(--hairline);border-radius:var(--r-lg);overflow:hidden;margin-bottom:18px}.konest-forum-head{display:grid;grid-template-columns:minmax(0,1fr) 110px 84px 96px;gap:12px;align-items:center;padding:10px 18px;background:var(--ink-1);border-bottom:var(--hairline);font-size:12px;font-weight:700;color:var(--ink-4)}.konest-forum-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 84px 96px;gap:12px;align-items:center;padding:14px 18px;border-bottom:var(--hairline);text-decoration:none;color:inherit;transition:background-color .12s ease}.konest-forum-row:last-child{border-bottom:0}.konest-forum-row:hover,.konest-forum-row:focus-visible{background:color-mix(in oklch,var(--accent-soft) 35%,var(--ink-0));text-decoration:none}.konest-forum-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.konest-forum-main{min-width:0;display:grid;gap:5px}.konest-forum-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.konest-cat-badge{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:4px;font-size:11.5px;font-weight:700}.konest-cat-badge[data-cat=kosodate]{background:var(--accent-soft);color:var(--accent-ink)}.konest-cat-badge[data-cat=school]{background:var(--info-soft);color:oklch(.38 .12 240)}.konest-cat-badge[data-cat=life]{background:#d4f8ed;color:oklch(.34 .1 175)}.konest-cat-badge[data-cat=question]{background:var(--warn-soft);color:oklch(.42 .13 65)}.konest-city-badge{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:4px;background:var(--ink-1);border:var(--hairline);font-size:11.5px;font-weight:600;color:var(--ink-4)}.konest-approved-badge{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:4px;background:var(--accent-soft);color:var(--accent-ink);font-size:11px;font-weight:700}.konest-photo-badge{display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 7px;border-radius:4px;background:var(--info-soft);color:oklch(.38 .12 240);font-size:11px;font-weight:700}[data-theme=dark] .konest-cat-badge[data-cat=school],[data-theme=dark] .konest-photo-badge{color:#9ed5fd}[data-theme=dark] .konest-cat-badge[data-cat=life]{background:oklch(.26 .05 175);color:#95dfcb}[data-theme=dark] .konest-cat-badge[data-cat=question]{color:#fbd094}.konest-forum-title{font-size:15px;font-weight:700;line-height:1.45;color:var(--ink-6);overflow-wrap:anywhere}.konest-forum-desc{font-size:13px;line-height:1.55;color:var(--ink-4);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.konest-forum-author{font-size:12.5px;color:var(--ink-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.konest-forum-comments{display:flex;justify-content:center}.konest-comment-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;background:var(--ink-1);border:var(--hairline);font-size:12px;font-weight:600;color:var(--ink-5);font-family:var(--font-mono);white-space:nowrap}.konest-comment-pill.has-comments{background:var(--accent-soft);border-color:color-mix(in oklch,var(--accent) 30%,transparent);color:var(--accent-ink)}.konest-forum-date{font-size:12px;font-family:var(--font-mono);color:var(--ink-muted);text-align:right;white-space:nowrap}@media (max-width: 720px){.konest-forum-head{display:none}.konest-forum-row{grid-template-columns:minmax(0,1fr) auto auto;gap:8px 12px;padding:13px 14px}.konest-forum-main{grid-column:1 / -1}.konest-forum-comments{justify-content:flex-start}}:root{--shell-max: 1120px;--tap: 44px}.site-header{position:sticky;top:0;z-index:50;background:var(--ink-0);border-bottom:var(--hairline)}.site-strip{background:var(--accent-ink);color:var(--ink-0);font-size:12px}.site-strip-inner,.site-header-inner,.band-inner,.shell{max-width:var(--shell-max);margin:0 auto;padding-left:24px;padding-right:24px}.site-strip-inner{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:28px}.site-strip a{color:inherit;text-decoration:none;opacity:.92}.site-strip a:hover{text-decoration:underline;opacity:1}.site-strip-links{display:flex;gap:16px}.site-header-inner{display:flex;align-items:center;gap:28px;min-height:56px}.gnav{display:flex;gap:4px;margin-left:auto;overflow-x:auto;scrollbar-width:none}.gnav::-webkit-scrollbar{display:none}.gnav a{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 14px;font-family:var(--font-jp);font-size:14px;font-weight:600;color:var(--ink-5);text-decoration:none;white-space:nowrap;border-bottom:3px solid transparent}.gnav a:hover{color:var(--accent-ink)}.gnav a[aria-current=page]{color:var(--accent-ink);border-bottom-color:var(--accent)}.band{background:var(--ink-1);border-bottom:var(--hairline)}.band-inner{display:flex;align-items:center;gap:10px;min-height:48px}.band-icon{color:var(--accent);display:inline-flex}.band-title{margin:0;font-size:18px;font-weight:700;letter-spacing:-.01em;color:var(--ink-6)}.band-crumb{max-width:var(--shell-max);margin:0 auto;padding:10px 24px 0}.band-crumb .crumb{margin:0}.shell{padding-top:20px;padding-bottom:40px;display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:start}.shell.has-aside{grid-template-columns:minmax(0,1fr) 300px}.shell-main{min-width:0}.shell-aside{display:grid;gap:16px}.rail-box{background:var(--ink-1);border:var(--hairline);border-radius:var(--r-lg);padding:14px}.rail-title{margin:0 0 10px;padding:6px 12px;border-radius:999px;background:var(--accent-solid);color:var(--ink-0);font-size:13px;font-weight:700;text-align:center}.rail-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.rail-list a{display:flex;gap:8px;align-items:flex-start;padding:8px 4px;min-height:var(--tap);font-size:13.5px;line-height:1.5;color:var(--ink-5);text-decoration:none;border-radius:var(--r-sm)}.rail-list a:hover{background:var(--accent-soft)}.rail-num{flex:0 0 22px;height:22px;border-radius:4px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-ink);font-size:12px;font-weight:700;margin-top:1px}.rail-list li:nth-child(-n+3) .rail-num{background:var(--accent-solid);color:var(--ink-0)}.rail-sub{display:block;font-size:12px;color:var(--ink-muted)}.rail-count{margin-left:auto;font-size:12px;color:var(--ink-muted);font-family:var(--font-mono)}.rail-cta{display:flex;justify-content:center;align-items:center;min-height:52px;border-radius:999px;background:var(--accent-ink);color:var(--ink-0);font-weight:700;font-size:15px;text-decoration:none}.rail-cta:hover{filter:brightness(1.1);text-decoration:none}.rail-note{margin:6px 4px 0;font-size:12px;line-height:1.6;color:var(--ink-muted)}.board-toolbar{margin-bottom:12px}.board-tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:0 4px}.board-tabs::-webkit-scrollbar{display:none}.board-tab{flex:0 0 auto;min-height:var(--tap);padding:0 16px;border:0;border-radius:var(--r-md) var(--r-md) 0 0;background:transparent;color:var(--ink-4);font:600 14px var(--font-jp);cursor:pointer;border-bottom:3px solid transparent}.board-tab:hover{color:var(--ink-6)}.board-tab[aria-pressed=true]{background:var(--ink-1);color:var(--accent-ink);border-bottom-color:var(--accent)}.board-tab small{font:500 12px var(--font-mono);color:var(--ink-muted);margin-left:4px}.board-filter{display:flex;gap:8px;flex-wrap:wrap;background:var(--ink-1);padding:12px;border-radius:0 var(--r-lg) 0 0}.board-filter select,.board-filter input[type=search]{min-height:var(--tap);border:var(--hairline);border-radius:999px;background:var(--ink-0);color:var(--ink-5);font:400 14px var(--font-jp);padding:0 16px}.board-filter select{flex:0 1 180px}.board-filter input[type=search]{flex:1 1 220px;min-width:0}.board-filter :focus-visible,.board-tab:focus-visible,.board-pager button:focus-visible,.board-row:focus-visible,.gnav a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.board-count{margin:0;padding:10px 12px 0;background:var(--ink-1);font-size:14px;color:var(--ink-4)}.board-count strong{color:var(--ink-6);font-size:15px}.board-list{background:var(--ink-1);padding:12px;display:grid;gap:8px;border-radius:0 0 var(--r-lg) var(--r-lg)}.board-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto 16px;gap:12px;align-items:center;padding:12px 14px;min-height:var(--tap);background:var(--ink-0);border:var(--hairline);border-radius:var(--r-md);color:var(--ink-5);text-decoration:none}.board-row[hidden]{display:none}.board-row:hover{border-color:var(--accent);background:color-mix(in oklch,var(--accent-soft) 40%,var(--ink-0))}.board-row-icon{color:var(--accent);display:grid;place-items:center}.board-row-body{min-width:0;display:grid;gap:4px}.board-row-title{font-size:15.5px;font-weight:700;line-height:1.45;color:var(--ink-6);overflow-wrap:anywhere}.board-row-desc{font-size:13px;line-height:1.6;color:var(--ink-4)}.board-row-meta{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;font-size:12px;color:var(--ink-muted)}.board-row-date{font:400 12px var(--font-mono);color:var(--ink-muted);white-space:nowrap}.board-row-arrow{color:var(--accent-ink);font-size:18px;line-height:1;text-align:right}.board-row.is-compact{padding:8px 14px}.board-row.is-compact .board-row-title{font-size:14.5px}.board-empty{margin:0;padding:28px 12px;text-align:center;font-size:14px;color:var(--ink-4);background:var(--ink-0);border-radius:var(--r-md)}.board-pager{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;padding:14px 8px 4px}.board-pager[hidden]{display:none}.board-pager button{min-width:var(--tap);min-height:var(--tap);padding:0 10px;border:var(--hairline);border-radius:var(--r-md);background:var(--ink-0);color:var(--ink-5);font:600 14px var(--font-jp);cursor:pointer}.board-pager button:hover:not(:disabled){border-color:var(--accent);color:var(--accent-ink)}.board-pager button[aria-current=page]{background:var(--accent-solid);border-color:var(--accent);color:var(--ink-0)}.board-pager button:disabled{opacity:.45;cursor:default}.board-pager .gap{align-self:center;color:var(--ink-muted);padding:0 2px}.board-source{margin:16px 0 0;font-size:12px;line-height:1.7;color:var(--ink-muted)}.site-footer{max-width:var(--shell-max);margin:24px auto 0;padding:28px 24px 24px;display:block;border-top:var(--hairline);font-family:var(--font-jp)}.site-footer-brand{font-size:17px;font-weight:700;color:var(--accent-ink);margin:0 0 8px}@media (max-width: 900px){.shell.has-aside{grid-template-columns:minmax(0,1fr)}.shell-aside{position:static}}@media (max-width: 640px){.site-strip-inner,.site-header-inner,.band-inner,.shell,.band-crumb{padding-left:16px;padding-right:16px}.site-strip-inner>span{display:none}.site-strip-links{margin-left:auto}.site-header-inner{flex-wrap:wrap;gap:0;padding-top:8px}.gnav{margin-left:0;width:100%}.shell{padding-top:14px;padding-bottom:88px}.board-row{grid-template-columns:24px minmax(0,1fr) 12px;gap:10px}.board-row-date{display:none}.board-filter select{flex:1 1 100%}.site-footer{padding-bottom:90px}}@media (prefers-reduced-motion: no-preference){.board-row{transition:border-color .12s,background-color .12s}}.school-head{margin:0 0 16px}.school-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.school-name{margin:0 0 6px;font-size:28px;line-height:1.3;font-weight:700;letter-spacing:-.02em;color:var(--ink-6);overflow-wrap:anywhere}.school-summary{margin:0 0 12px;font-size:15px;line-height:1.7;color:var(--ink-5)}.school-facts{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:4px;font-size:14px;line-height:1.6}.school-facts li{display:grid;grid-template-columns:4.5em minmax(0,1fr);gap:10px}.fact-label{color:var(--ink-muted);font-size:13px}.map-link{display:inline-flex;align-items:center;min-height:var(--tap);font-weight:600;font-size:14px;color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px}.school-tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;margin:0 0 16px;border-bottom:2px solid var(--ink-2)}.school-tabs::-webkit-scrollbar{display:none}.school-tabs a{flex:0 0 auto;display:inline-flex;align-items:center;min-height:var(--tap);padding:0 16px;margin-bottom:-2px;font:600 14px var(--font-jp);color:var(--ink-4);text-decoration:none;border-bottom:3px solid transparent}.school-tabs a:hover{color:var(--accent-ink);border-bottom-color:var(--accent)}.school-tabs a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.school-callout{display:flex;align-items:center;gap:14px;margin:0 0 20px;padding:14px 18px;min-height:var(--tap);border-radius:var(--r-lg);background:var(--accent-soft);color:var(--accent-ink);font-weight:700;font-size:14.5px;text-decoration:none}.school-callout:hover{filter:brightness(.97);text-decoration:none}.callout-tag{flex:0 0 auto;padding:3px 10px;border-radius:4px;background:var(--accent-ink);color:var(--ink-0);font:700 12px var(--font-mono);letter-spacing:.06em}.school-section{margin:0 0 28px;scroll-margin-top:80px}.sec-title{margin:0 0 12px;padding-left:10px;border-left:4px solid var(--accent);font-size:18px;line-height:1.4;font-weight:700;color:var(--ink-6)}.info-table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.7}.info-table th,.info-table td{padding:10px 12px;border-bottom:var(--hairline);text-align:left;vertical-align:top}.info-table th{width:7.5em;font-weight:600;color:var(--ink-4);background:var(--ink-1)}.info-table td{overflow-wrap:anywhere}.event-list{margin:0;padding-left:18px;font-size:13.5px;line-height:1.8}.event-list li{margin-bottom:10px}@media (max-width: 640px){.school-name{font-size:23px}.school-callout{padding:12px 14px;font-size:14px}.info-table th{width:6.5em}}.article-head{margin:0 0 16px}.article-title{margin:0 0 12px;font-size:26px;line-height:1.45;font-weight:700;letter-spacing:-.01em;color:var(--ink-6);overflow-wrap:anywhere}.article-meta{display:flex;flex-wrap:wrap;gap:4px 20px;margin:0;font-size:13px;line-height:1.7}.article-meta div{display:flex;gap:8px}.article-meta dt{color:var(--ink-muted)}.article-meta dd{margin:0;color:var(--ink-5)}.toc{margin:0 0 24px;padding:14px 18px;background:var(--ink-1);border:var(--hairline);border-radius:var(--r-lg)}.toc-title{margin:0 0 6px;font-size:13px;font-weight:700;color:var(--accent-ink)}.toc ol{margin:0;padding-left:1.4em;font-size:14px;line-height:1.6}.toc li{margin:0}.toc a{display:inline-block;padding:8px 0;color:var(--accent-ink)}.article-body{font-size:15.5px;line-height:1.9}.article-body h2{margin:2em 0 .6em;padding-left:10px;border-left:4px solid var(--accent);font-size:19px;line-height:1.45;font-weight:700;color:var(--ink-6);scroll-margin-top:80px}.article-body h3{margin:1.6em 0 .4em;font-size:16px;font-weight:700;color:var(--ink-6)}.article-body th{background:var(--ink-1);font-weight:600}.source-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.source-list li{padding:10px 12px;background:var(--ink-1);border:var(--hairline);border-radius:var(--r-md);font-size:13.5px;line-height:1.6;overflow-wrap:anywhere}.source-date{display:block;font-size:12px;margin-top:2px}@media (max-width: 640px){.article-title{font-size:21px}.article-body h2{font-size:17.5px}}.school-facts a,.info-table a{color:var(--accent-ink)}.coverage th,.coverage td{text-align:center}.coverage thead th{background:var(--ink-1);font-size:13px}.coverage tbody th{width:auto;text-align:left;white-space:nowrap}.coverage .cov-yes a{font-weight:600;color:var(--accent-ink)}.coverage .cov-no{color:var(--ink-muted)}
