.fn-page,.fn-home,.fn-related{--fn-ink:#382f28;--fn-green:#286e62;--fn-line:#dcd7cc;color:var(--fn-ink);overflow-wrap:anywhere}.fn-page{padding-top:32px;padding-bottom:64px;max-width:1050px}.fn-page h1{font-size:clamp(30px,5vw,46px);line-height:1.5;margin:20px 0}.fn-lead{font-size:20px}.fn-home{padding-top:32px;padding-bottom:40px}.fn-home h2{font-size:clamp(25px,4vw,35px);margin:8px 0}.fn-card{background:#fffefb;border:1px solid var(--fn-line);border-left:4px solid var(--fn-green);border-radius:12px;padding:22px 24px;margin:16px 0;min-width:0}.fn-card h2,.fn-card h3{font-size:clamp(19px,2.5vw,24px);line-height:1.65;margin:12px 0;color:var(--fn-ink)}.fn-card p{margin:9px 0;line-height:1.85;font-size:15px}.fn-meta{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:13px;line-height:1.6;align-items:center}.fn-badge{padding:3px 9px;background:#e9f0e9;border-radius:5px;font-weight:700}.fn-card .fn-schedule{font-weight:700;color:#62492c}.fn-card .fn-date,.fn-card .fn-note{font-size:13px;color:#62574c}.fn-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.fn-button,.fn-page a.fn-button,.fn-home a.fn-button,.fn-related a.fn-button{box-sizing:border-box;display:inline-flex;justify-content:center;align-items:center;min-height:44px;max-width:100%;padding:10px 15px;border:1px solid #286e62;border-radius:8px;background:#286e62;color:#fff;text-decoration:none;font:inherit;font-size:14px;line-height:1.6;cursor:pointer}.fn-actions .fn-related,.fn-actions .fn-market,.fn-actions .fn-detail,.fn-filter .fn-reset{background:#fff;color:#286e62}.fn-button:focus-visible,.fn-filter select:focus-visible{outline:3px solid #b06825;outline-offset:3px}.fn-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;background:#f1eee5;padding:22px;border-radius:12px;margin:24px 0}.fn-filter label{font-size:14px;font-weight:700;min-width:0}.fn-filter select{display:block;box-sizing:border-box;max-width:100%;width:100%;min-height:46px;background:#fff;border:1px solid #a89f90;border-radius:6px;padding:8px;color:#382f28;font:inherit;margin-top:8px}.fn-body{max-width:780px;font-size:16px;line-height:1.95;margin:36px auto}.fn-body h2{font-size:24px;margin:30px 0 15px}.fn-body li{margin:8px 0}.fn-body a{color:#236659;text-decoration:underline}.fn-body .wp-block-button__link{display:inline-block;background:#286e62;color:#fff;padding:12px 18px;border-radius:8px;text-decoration:none}.fn-empty{padding:30px;background:#f7f2e9}.fn-related{margin-top:32px}.fn-purpose{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.fn-season{padding:28px 0}.fn-season-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.fn-season-grid a{display:block;padding:20px;background:#f4eddf;border:1px solid #dfd4c3;border-radius:12px;color:#574129;line-height:1.8;text-decoration:none}.fn-season-grid small{display:block;font-size:12px}.fn-market-entry{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:12px 0 20px}.fn-market-entry a{padding:17px;background:#eaf2ec;color:#286e62;text-decoration:none;border:1px solid #c9dbd0;border-radius:10px;text-align:center;line-height:1.7}.fh-home .fh-hero{padding-top:28px;padding-bottom:22px;min-height:0}.fh-home .fh-hero-art{max-height:240px;overflow:hidden}.fh-home .fh-hero-art img{max-height:240px;object-fit:contain}.fh-home .fh-hero h1{font-size:clamp(30px,4.5vw,52px)}
@media(max-width:640px){.fn-page{padding-top:20px}.fn-filter{grid-template-columns:1fr;padding:16px;gap:12px}.fn-card{padding:16px;margin:12px 0}.fn-card h2,.fn-card h3{font-size:19px}.fn-actions .fn-button{flex:1 1 180px}.fn-season-grid{grid-template-columns:1fr}.fn-market-entry{grid-template-columns:repeat(2,minmax(0,1fr))}.fn-home{padding-top:24px;padding-bottom:28px}.fn-meta{font-size:13px;gap:6px 10px}.fh-home .fh-hero-art{display:none}.fn-body{font-size:15px}.fn-purpose .fn-button{flex:1 1 90px}#wpvibe-preview-banner{max-height:48px;overflow:auto}}

/* FM-UI-1.0 compact rows and native disclosure. */
.fn-compact.fn-card{padding:12px 0 8px;border:0;border-bottom:1px solid #d9ded4;border-radius:0;margin:0;background:transparent;color:#263c40}
.fn-compact .fn-row{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;align-items:start}
.fn-thumb{position:relative;display:block;width:88px;height:88px;overflow:hidden;border-radius:10px;background:#f5efdf}.fn-thumb img.fn-photo{display:block;width:100%;height:100%;object-fit:cover;margin:0}.fn-photo-label{position:absolute;bottom:0;left:0;padding:0 5px;background:#fffdf8ed;color:#263c40;font-size:12px;line-height:1.5}.fn-no-photo{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:6px;font-size:12px}.fn-copy{min-width:0}.fn-compact p.fn-place{margin:0 0 2px;font-size:12px;line-height:1.5;color:#586760}.fn-compact .fn-title{font-size:16px;line-height:1.5;margin:0;padding:0;border:0;background:none;color:#263c40;letter-spacing:0}.fn-compact p.fn-when{margin:4px 0 0;font-size:12px;line-height:1.5;color:#286e62}.fn-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:0 10px;margin-left:100px}.fn-card-actions>a,.fn-brief>summary{display:flex;align-items:center;min-height:44px;font-size:13px;color:#286e62;cursor:pointer}.fn-card-actions>.fn-primary-source{justify-content:flex-end}.fn-brief{min-width:0}.fn-brief>summary{justify-content:space-between;list-style:none}.fn-brief>summary::-webkit-details-marker{display:none}.fn-brief[open]{grid-column:1/-1}.fn-brief[open]>summary{font-weight:700}.fn-brief[open]>summary span{transform:rotate(45deg)}.fn-brief-body{padding:14px;background:#edf3e9;border-radius:8px;font-size:14px;line-height:1.85;margin-bottom:8px}.fn-brief-body p{font-size:14px;margin:8px 0}.fn-brief-body a{display:inline-flex;align-items:center;min-height:44px}.fn-brief-body .fn-date,.fn-brief-body .fn-credit{font-size:12px;line-height:1.8;color:#586760;overflow-wrap:anywhere}.fn-actions a:not(.fn-button){color:#286e62;min-height:44px;display:inline-flex;align-items:center}.fn-button:visited{color:#fff}.fn-filter .fn-reset:visited,.fn-actions .fn-related:visited,.fn-actions .fn-market:visited{color:#286e62}.fn-credits{font-size:12px;color:#586760;margin:12px 0}.fn-credits summary{min-height:44px;display:flex;align-items:center;cursor:pointer;text-decoration:underline}.fn-credit{font-size:12px;line-height:1.8;overflow-wrap:anywhere}.fn-credit a{color:#286e62;text-decoration:underline}.fn-hero-photo{position:relative;max-width:720px;margin:20px auto}.fn-hero-photo img{display:block;width:100%;height:auto;border-radius:10px}.fn-hero-photo .fn-photo-label{position:static;display:block;background:none;padding:4px 0;color:#586760}.fn-keypoints{padding:16px 20px;background:#edf3e9;border-radius:10px;margin:20px 0}.fn-official-end{margin:24px 0;display:flex;gap:14px;flex-wrap:wrap}.fn-official-end a{min-height:44px;display:flex;align-items:center}.fn-filter select{font-size:16px}.fn-page .fn-date{font-size:12px}
@media(min-width:768px){.fn-compact .fn-row{grid-template-columns:96px minmax(0,1fr)}.fn-thumb{width:96px;height:96px}.fn-card-actions{margin-left:108px}}
@media(max-width:640px){.fn-filter{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:10px}.fn-filter label:first-of-type{grid-column:1/-1}.fn-filter select{font-size:16px}}

/* News archive mobile hierarchy: explicit child selectors and stronger specificity. */
@media(max-width:640px){body.fuku-site main.fn-page.fuku-wrap{padding-top:0!important}body.fuku-site main.fn-page>.fuku-breadcrumb{padding-top:0!important;margin:0 0 4px!important}body.fuku-site main.fn-page>.fh-kicker{margin:0 0 4px!important;padding:0!important;line-height:1.25!important}body.fuku-site main.fn-page>h1{font-size:30px!important;line-height:1.25!important;margin:0 0 12px!important;padding:0!important}body.fuku-site main.fn-page>.fn-lead{font-size:17px!important;line-height:1.45!important;margin:0 0 10px!important}body.fuku-site main.fn-page>.fn-lead+p{font-size:14px!important;line-height:1.65!important;margin:0 0 14px!important}body.fuku-site main.fn-page .fn-filter{margin:10px 0 12px!important}}
/* News archive only: reduce top whitespace without touching home or article templates. */
@media(max-width:640px){.fn-page>.fuku-breadcrumb{padding-top:4px;margin-bottom:4px}.fn-page>.fh-kicker{margin:4px 0 2px;line-height:1.3}.fn-page>h1{margin:4px 0 8px;line-height:1.3}.fn-page>p:not(.fn-lead){margin:8px 0 12px;line-height:1.65}.fn-page [data-fn-live="list"]>p{margin:8px 0}}
/* Mobile archive spacing: keep news cards visible sooner without changing desktop. */
@media(max-width:640px){.fn-page{padding-top:8px;padding-bottom:32px}.fn-page h1{font-size:30px;line-height:1.3;margin:8px 0 12px}.fn-page h2{margin-top:12px;margin-bottom:10px}.fn-page .fn-lead{font-size:16px;line-height:1.7;margin:8px 0 12px}.fn-page .fn-filter{margin:14px 0;padding:12px;gap:8px}.fn-page .fn-filter label{line-height:1.4}.fn-page .fn-filter select{margin-top:5px}.fn-page .fn-compact.fn-card{margin:0;padding:10px 0}.fn-page .fn-meta{margin:6px 0}}
/* Explicit paired colors prevent visited links from disappearing on green buttons. */
.fn-page .fn-filter a.fn-button.fn-reset,.fn-page .fn-filter a.fn-button.fn-reset:visited,.fn-page .fn-filter a.fn-button.fn-reset:hover,.fn-page .fn-filter a.fn-button.fn-reset:focus,.fn-actions a.fn-button.fn-related,.fn-actions a.fn-button.fn-related:visited,.fn-actions a.fn-button.fn-market,.fn-actions a.fn-button.fn-market:visited,.fn-actions a.fn-button.fn-detail,.fn-actions a.fn-button.fn-detail:visited{background:#fff!important;color:#286e62!important;-webkit-text-fill-color:#286e62;border-color:#286e62}
