body.view-hub{
  background:#fff;
  background-image:none;
  --bg:#fff; --surface:#fff; --surface-2:#f6f6f6; --surface-3:#f1f1f1;
  --text:#111; --muted:#6f6f6f; --line:#ececec; --line-strong:#e4e4e4;
  --topbar:#fff;
  color-scheme:light;
}
body.view-hub .topbar{background:#fff;border-bottom-color:#eee}
body.view-hub .wrap{max-width:1080px;padding:40px 32px 96px}
.hub{display:flex;flex-direction:column;gap:44px;word-break:keep-all}
.hub-head h1,.notice-page h1{margin:0;font-size:34px;font-weight:700;letter-spacing:-.05em;line-height:1.15}
.hub-head p{margin:8px 0 0;color:#6f6f6f;font-size:15px}
.feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,380px);gap:36px;align-items:center}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.02em;color:#111}
.feature h2{margin:10px 0 0;font-size:40px;font-weight:700;letter-spacing:-.05em;line-height:1.15}
.feature p{margin:14px 0 0;max-width:34em;color:#4a4a4a;font-size:15px;line-height:1.65}
.feature .btn{margin-top:22px}
.btn.ink{background:#111;border-color:#111;color:#fff;border-radius:999px;padding:11px 18px}
.btn.ink:hover{background:#000;border-color:#000;filter:none}
.feature-visual{background:#f5f5f5;border-radius:20px;min-height:260px;display:grid;place-items:center}
.feature-visual img{width:200px;height:200px}
.hub-cols{display:grid;grid-template-columns:1.35fr .8fr;gap:64px}
.sec{margin:0 0 4px;font-size:15px;font-weight:700;letter-spacing:-.03em}
.sec-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.sec-line .sec{margin:0}
.text-link{border:0;background:none;padding:0;font-size:13px;font-weight:600;color:#111}
.text-link:hover{opacity:.55}
.rows{display:flex;flex-direction:column}
.hub-row{display:flex;align-items:center;gap:16px;width:100%;padding:16px 2px;border:0;border-bottom:1px solid #eee;background:none;text-align:left}
.rows .hub-row:first-child{border-top:1px solid #eee}
.hub-row .t{display:block;font-size:15px;font-weight:600;letter-spacing:-.02em}
.hub-row .m{display:block;margin-top:3px;color:#8a8a8a;font-size:12.5px}
.hub-row svg{width:16px;height:16px;margin-left:auto;flex:none;fill:none;stroke:#c4c4c4;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s,stroke .15s}
.hub-row:hover svg{stroke:#111;transform:translateX(3px)}
.hub-items{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px 14px;margin-top:16px}
.hub-item{display:flex;flex-direction:column;gap:8px;align-items:flex-start;border:0;background:none;padding:0;text-align:left}
.hub-item .th{width:100%;display:grid;place-items:center;background:#f5f5f5;border-radius:16px;aspect-ratio:1;overflow:hidden}
.hub-item .th img{width:72%;height:72%;object-fit:contain}
.hub-item:hover .th{background:#efefef}
.hub-item .nm{font-weight:600;font-size:14px;letter-spacing:-.02em}
.hub-item .pr{display:flex;align-items:center;gap:4px;color:#6f6f6f;font-size:13px;font-weight:600;margin-top:-4px}
.notice-page{max-width:720px;word-break:keep-all}
.crumb{display:inline-flex;align-items:center;gap:4px;border:0;background:none;padding:0 0 8px;color:#6f6f6f;font-size:13px;font-weight:600}
.crumb svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;transform:scaleX(-1)}
.crumb:hover{color:#111}
.notice-page h1{margin-top:18px;font-size:36px}
.notice-page .when{margin:10px 0 0;color:#8a8a8a;font-size:13px}
.notice-page .prose{margin-top:32px;font-size:16px;line-height:1.8;color:#222}
.notice-page .prose p{margin:0 0 16px}
.notice-page .more{margin-top:56px}
@media (max-width:860px){
  body.view-hub .wrap{padding:20px 16px calc(104px + env(safe-area-inset-bottom,0px))}
  .hub{gap:24px}
  .hub-head h1{font-size:28px}
  .hub-head p{margin-top:4px}
  .feature,.hub-cols{grid-template-columns:1fr;gap:20px}
  .feature h2,.notice-page h1{font-size:28px}
  .feature p{margin-top:8px}
  .feature .btn{margin-top:14px}
  .feature-visual{min-height:132px;order:-1}
  .feature-visual img{width:112px;height:112px}
  .hub-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px}
}
