
:root{--bg:#fff7fb;--paper:#fff;--ink:#302532;--muted:#807282;--line:#f0dfe8;--pink:#ff6fa8;--rose:#b83b72;--lav:#7c67ff;--blue:#6fb6ff;--shadow:0 22px 60px rgba(78,38,68,.14)}
*{box-sizing:border-box}body{margin:0;font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--ink);background:radial-gradient(circle at 15% 0%,rgba(255,111,168,.28),transparent 28%),radial-gradient(circle at 90% 15%,rgba(124,103,255,.20),transparent 30%),linear-gradient(180deg,#fff7fb,#fbf8ff 60%,#fff);line-height:1.75}.app-shell{display:grid;grid-template-columns:360px minmax(0,1fr);min-height:100vh}.library{position:sticky;top:0;height:100vh;overflow:auto;padding:24px;background:rgba(255,255,255,.76);border-right:1px solid var(--line);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:10px;color:var(--rose)}.brand span{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,var(--pink),var(--lav));box-shadow:0 0 0 6px rgba(255,111,168,.12)}.library-intro h1{font-size:30px;line-height:1.1;letter-spacing:-.04em;margin:24px 0 10px}.library-intro p{color:var(--muted);font-size:14px}.search-box{display:block;margin-top:22px}.search-box span{font-size:12px;font-weight:800;color:var(--rose);text-transform:uppercase;letter-spacing:.08em}.search-box input,.filter-row select{width:100%;border:1px solid var(--line);border-radius:16px;background:#fff;padding:12px 13px;color:var(--ink);outline:none}.search-box input:focus,.filter-row select:focus{border-color:rgba(255,111,168,.85);box-shadow:0 0 0 4px rgba(255,111,168,.13)}.filter-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.quick-stats{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.quick-stats span{font-size:12px;border:1px solid #eadfff;background:#f8f3ff;color:#6a4dae;border-radius:999px;padding:4px 9px}.list-header{display:flex;justify-content:space-between;align-items:center;margin:12px 0 10px}.list-header small{color:var(--muted)}.story-list{list-style:none;padding:0;margin:0;display:grid;gap:9px}.story-list-btn{width:100%;text-align:left;border:1px solid var(--line);background:rgba(255,255,255,.8);border-radius:18px;padding:13px;cursor:pointer;color:var(--ink);transition:.18s}.story-list-btn:hover,.story-list-btn.active{border-color:rgba(255,111,168,.7);box-shadow:0 10px 26px rgba(184,59,114,.12);transform:translateY(-1px)}.story-list-btn[hidden]{display:none}.mini-genre{display:inline-block;font-size:11px;background:#fff0f6;color:var(--rose);border:1px solid #ffd5e7;border-radius:999px;padding:2px 8px;margin-bottom:6px}.story-list-btn strong{display:block;line-height:1.3}.story-list-btn small{display:block;color:var(--muted);margin-top:4px}.main-content{padding:28px clamp(18px,4vw,56px) 70px;min-width:0}.hero{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:32px;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,240,246,.86));padding:28px;box-shadow:var(--shadow);margin-bottom:22px}.eyebrow{margin:0 0 8px;color:var(--rose);font-size:12px;text-transform:uppercase;font-weight:900;letter-spacing:.1em}.hero h2{margin:0;font-size:clamp(28px,4vw,52px);line-height:1.05;letter-spacing:-.04em}.hero p:not(.eyebrow){color:var(--muted);max-width:620px}.start-btn,.mobile-library button{border:0;border-radius:999px;background:linear-gradient(135deg,var(--pink),var(--lav));color:#fff;font-weight:900;padding:13px 18px;cursor:pointer;box-shadow:0 14px 30px rgba(255,111,168,.24);white-space:nowrap}.mobile-library{display:none;margin-bottom:16px}.story-view{display:none}.story-view.active{display:block}.story-top{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:22px;align-items:stretch}.art-wrap{border-radius:32px;overflow:hidden;min-height:330px;background:linear-gradient(135deg,#ffe1ed,#e9e3ff);box-shadow:var(--shadow);border:1px solid var(--line)}.art-wrap img{width:100%;height:100%;object-fit:cover;display:block}.placeholder-art{height:100%;min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.8),transparent 20%),linear-gradient(135deg,#b8d8ff,#ffe4ef 55%,#cbc4ff);color:#7e3c62;text-align:center}.placeholder-art span{font-size:58px}.placeholder-art b{font-size:30px;line-height:1.1}.placeholder-art small{text-transform:uppercase;letter-spacing:.12em}.story-head{border:1px solid var(--line);background:rgba(255,255,255,.84);border-radius:32px;padding:28px;box-shadow:0 16px 42px rgba(78,38,68,.08);display:flex;flex-direction:column;justify-content:center}.crumb{color:var(--rose);font-weight:800;font-size:13px}.story-head h2{font-size:clamp(32px,5vw,60px);line-height:1.02;letter-spacing:-.045em;margin:12px 0}.tagline{color:var(--muted);font-size:18px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 20px}.chips span{border:1px solid #e6ddff;background:#f8f5ff;color:#6549aa;border-radius:999px;padding:4px 10px;font-size:13px}.mode-switch{display:flex;gap:8px;flex-wrap:wrap}.mode-switch button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;font-weight:800;cursor:pointer;color:var(--ink)}.mode-switch button.active{background:#302532;color:#fff;border-color:#302532}.reader-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;margin-top:22px}.reader-card{border:1px solid var(--line);background:rgba(255,255,255,.9);border-radius:30px;padding:26px;box-shadow:0 18px 45px rgba(78,38,68,.08)}.reader-card h3{margin:0 0 16px;font-size:23px;letter-spacing:-.02em}.story-text{font-family:Georgia,"Times New Roman",serif;font-size:19px}.story-text p{margin:0 0 1em}.translation-block{font-family:"Segoe UI",system-ui,sans-serif}.hidden{display:none!important}.both-mode .english-block{padding-bottom:18px;margin-bottom:22px;border-bottom:1px dashed var(--line)}.expr-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.expr-list li{border:1px solid var(--line);background:linear-gradient(135deg,#fff7fb,#f7f3ff);border-radius:18px;padding:13px}.expr-list strong{display:block;line-height:1.35;color:var(--rose)}.expr-list span{display:block;color:var(--muted);margin-top:3px}.vocab-title{margin-top:24px!important}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:520px}th,td{border-bottom:1px solid #f1e4eb;padding:11px 9px;text-align:left;vertical-align:top}th{color:var(--rose);background:#fff6fa}td:first-child{font-weight:900}.study-mode .reader-layout{grid-template-columns:1fr}.study-mode .study-section{display:block}.study-mode .text-section{display:none}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.library{position:fixed;left:-390px;z-index:10;width:min(360px,88vw);transition:.22s;box-shadow:var(--shadow)}.library.open{left:0}.backdrop.open{position:fixed;inset:0;background:rgba(35,25,35,.36);z-index:8}.main-content{padding:18px}.mobile-library{display:block}.hero{display:block}.hero .start-btn{margin-top:10px}.story-top,.reader-layout{grid-template-columns:1fr}.art-wrap,.placeholder-art{min-height:250px}}@media(max-width:620px){.hero,.story-head,.reader-card{border-radius:24px;padding:18px}.filter-row{grid-template-columns:1fr}.story-text{font-size:18px}}
.inline-art{margin:24px 0 28px;border-radius:24px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 16px 38px rgba(78,38,68,.12)}.inline-art img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.site-link{text-decoration:none}.story-list-btn{text-decoration:none;display:block}.start-btn{text-decoration:none;display:inline-flex;align-items:center}.story-index h3{margin-top:0}.story-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.story-card{display:grid;grid-template-rows:auto 1fr;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.82);color:var(--ink);text-decoration:none;box-shadow:0 14px 34px rgba(78,38,68,.08);transition:.18s}.story-card:hover{border-color:rgba(255,111,168,.7);box-shadow:0 18px 42px rgba(184,59,114,.13);transform:translateY(-2px)}.story-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.story-card div{padding:16px}.story-card h3{margin:6px 0;font-size:22px;line-height:1.2}.story-card p{margin:0 0 10px;color:var(--muted)}.story-card small{color:var(--muted)}.reader-mode-bar{position:sticky;top:12px;z-index:6;margin:18px 0 -4px;padding:10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 12px 28px rgba(78,38,68,.12);backdrop-filter:blur(14px)}.reader-mode-bar .mode-switch{justify-content:center}.bilingual-block{font-family:"Segoe UI",system-ui,sans-serif}.translation-pair{display:grid;gap:7px;margin:0 0 14px;padding:0 0 14px;border-bottom:1px dashed var(--line)}.translation-pair p{margin:0}.pair-english{font-family:Georgia,"Times New Roman",serif;font-size:19px;color:var(--ink)}.pair-japanese{font-size:16px;line-height:1.75;color:#615563;background:#fff7fb;border-left:4px solid #ffd5e7;border-radius:8px;padding:9px 12px}.bilingual-block .inline-art{margin:22px 0 24px}@media(max-width:620px){.reader-mode-bar{top:8px;border-radius:18px}.reader-mode-bar .mode-switch button{padding:8px 10px}.pair-english{font-size:18px}.pair-japanese{font-size:15px}}

.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px clamp(18px,4vw,56px);background:rgba(255,255,255,.82);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}
.site-header .brand{flex:0 0 auto}
.site-nav{display:flex;align-items:center;justify-content:flex-end;gap:6px;overflow:auto}
.site-nav-link{flex:0 0 auto;border-radius:999px;color:var(--muted);font-size:13px;font-weight:900;padding:8px 11px;text-decoration:none;white-space:nowrap}
.site-nav-link:hover,.site-nav-link.active{background:#fff0f6;color:var(--rose)}
.app-shell-single{display:block;min-height:auto}
.app-shell-single .main-content{max-width:1180px;margin:0 auto;padding-top:32px}
@media(max-width:760px){.site-header{align-items:flex-start;flex-direction:column;padding:14px 18px}.site-nav{width:100%;justify-content:flex-start}.app-shell-single .main-content{padding:18px}}


/* Header-only navigation: the brand links back to the story index. */
.site-header{justify-content:flex-start}
.reader-mode-bar{top:78px;z-index:15}
@media(max-width:760px){.reader-mode-bar{top:70px}}


/* Let the reader mode controls scroll naturally with the page. */
.reader-mode-bar{position:static;top:auto;z-index:auto}


/* Keep study aids below the novel so the reading area stays focused. */
.reader-layout{grid-template-columns:1fr}
.study-section{max-width:none}


/* Keep novel pages at a comfortable reading width. */
.story-view{max-width:850px;margin-left:auto;margin-right:auto}


/* Character guide page. */
.character-link-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}
.character-link-card p:not(.eyebrow){margin:0;color:var(--muted);max-width:700px}
.character-section{margin-bottom:22px}
.character-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.character-card{border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,#fff,#fff7fb);padding:18px}
.character-card h3{margin:6px 0 10px;font-size:21px;line-height:1.25}
.character-card p{margin:0 0 12px;color:var(--ink)}
.character-card small{color:var(--muted)}
.role-map{display:grid;gap:10px}
.role-map p{margin:0;border-left:4px solid #ffd5e7;background:#fff7fb;border-radius:8px;padding:10px 12px}
@media(max-width:760px){.character-link-card{align-items:flex-start;flex-direction:column}}


/* Keep learning aids close to the selected story text. */
.study-inside-text{margin-top:24px;box-shadow:none}
.text-section>.study-inside-text{border-radius:22px;background:linear-gradient(135deg,#fff,#fff7fb)}
.study-mode .text-section{display:block}


/* Inline learning notes shown near each English/Japanese pair. */
.inline-study-notes{display:grid;gap:8px;margin-top:10px}
.inline-study-note{border:1px solid #ffd5e7;border-radius:12px;background:#fff;padding:9px 11px}
.inline-study-note b{display:block;color:var(--rose);font-family:"Segoe UI",system-ui,sans-serif;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.inline-study-note strong{display:block;color:var(--ink);font-family:"Segoe UI",system-ui,sans-serif;font-size:15px;line-height:1.35;margin-top:2px}
.inline-study-note span{display:block;color:var(--muted);font-family:"Segoe UI",system-ui,sans-serif;font-size:14px;line-height:1.55;margin-top:1px}
.study-section.hidden{display:none!important}


/* Show inline study notes as English / Japanese pairs. */
.inline-study-note{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 14px;align-items:start}
.inline-study-note b{grid-column:1/-1}
.inline-study-note strong{margin-top:0}
.inline-study-note span{margin-top:0}
@media(max-width:620px){.inline-study-note{grid-template-columns:1fr}}


/* Give Japanese explanations more room in inline notes. */
.inline-study-note{grid-template-columns:minmax(0,3fr) minmax(0,7fr)}
@media(max-width:620px){.inline-study-note{grid-template-columns:1fr}}


/* Story pages use wide artwork without cropping. */
.story-view .story-top{display:block}
.story-view .art-wrap{min-height:0;aspect-ratio:16/9;margin-bottom:18px}
.story-view .art-wrap img{height:auto;aspect-ratio:16/9;object-fit:contain;background:linear-gradient(135deg,#ffe1ed,#e9e3ff)}
.story-view .story-head{display:block}
.story-view .story-head h2{font-size:clamp(34px,4vw,56px);letter-spacing:-.035em}

.level-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:900;line-height:1.2;border:1px solid transparent}.level-1{background:#eef2ff!important;color:#4338ca!important;border-color:#c7d2fe!important}.level-3{background:#e9f8ef!important;color:#207548!important;border-color:#bde8cc!important}.level-4{background:#fff3d6!important;color:#9a5a00!important;border-color:#ffd889!important}.level-5{background:#ffe8ef!important;color:#b3264f!important;border-color:#ffb9cc!important}.story-stats{display:flex!important;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted)}.story-stats span:not(.level-badge){color:var(--muted)}.chips .level-badge{font-size:13px;padding:5px 11px}


/* Align story card stats along the bottom of each card. */
.story-card>div{display:flex;flex-direction:column;height:100%}
.story-card .story-stats{margin-top:auto;padding-top:12px}


/* Keep genre labels as compact pills even inside flex story cards. */
.story-card .mini-genre{align-self:flex-start;width:auto;max-width:100%}


/* Per-paragraph help for checking translation and study notes in place. */
.english-help-item{position:relative;margin:0 0 1em}
.english-help-item>p{margin:0}
.english-local-help{margin-top:8px;border:1px solid #ffd5e7;border-radius:14px;background:#fff;padding:12px 14px;font-family:"Segoe UI",system-ui,sans-serif;box-shadow:0 10px 24px rgba(78,38,68,.08)}
.english-local-help>b{display:block;color:var(--rose);font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.english-local-help .pair-japanese{background:#fff7fb;border-left:4px solid #ffd5e7;border-radius:8px;color:#615563;font-size:16px;line-height:1.75;padding:9px 12px}
.english-local-help .pair-japanese>p{margin:0}
.english-local-help .inline-study-notes{margin-top:10px}


/* Paragraphs can be opened directly for local translation/help. */
.english-help-item{border-radius:12px;padding:2px 0;cursor:pointer}
.english-help-item:hover>p,.english-help-item:focus-visible>p{background:#fff7fb;box-shadow:0 0 0 6px #fff7fb}
.english-help-item.open>p{background:#fff7fb;box-shadow:0 0 0 6px #fff7fb}


/* Toggle for in-place paragraph translation/help. */
.quick-help-setting{display:inline-flex;align-items:center;gap:7px;margin:0 0 16px;border:1px solid #ffd5e7;border-radius:999px;background:#fff7fb;color:var(--rose);font-size:13px;font-weight:900;padding:7px 11px;cursor:pointer;user-select:none}
.quick-help-setting input{accent-color:var(--rose)}
.quick-help-disabled .english-help-item{cursor:auto}
.quick-help-disabled .english-help-item:hover>p,.quick-help-disabled .english-help-item:focus-visible>p{background:transparent;box-shadow:none}


/* Switch-style control for paragraph help. */
.quick-help-setting{gap:9px;background:rgba(255,255,255,.86);border-color:#ffd5e7;padding:7px 12px 7px 8px}
.quick-help-checkbox{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}
.toggle-switch{position:relative;display:inline-block;width:40px;height:22px;flex:0 0 auto;border-radius:999px;background:#eadfea;box-shadow:inset 0 0 0 1px rgba(184,59,114,.12);transition:.18s}
.toggle-switch::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(78,38,68,.22);transition:.18s}
.quick-help-checkbox:checked+.toggle-switch{background:linear-gradient(135deg,var(--pink),var(--lav));box-shadow:none}
.quick-help-checkbox:checked+.toggle-switch::after{transform:translateX(18px)}
.quick-help-setting:has(.quick-help-checkbox:focus-visible){box-shadow:0 0 0 4px rgba(255,111,168,.16)}

/* Use more of the viewport on phones. */
@media(max-width:620px){
  .site-header{padding:10px 12px}
  .app-shell-single .main-content,.main-content{padding:10px 8px 42px}
  .hero,.story-head,.reader-card{border-radius:16px;padding:14px}
  .story-index.reader-card{padding:12px}
  .story-grid{grid-template-columns:1fr;gap:12px}
  .story-card{border-radius:16px}
  .story-card div{padding:13px}
  .story-view{max-width:none;width:100%}
  .story-view .art-wrap,.inline-art{border-radius:14px}
  .story-view .art-wrap{margin-bottom:12px}
  .reader-layout{gap:12px;margin-top:12px}
  .story-text{font-size:18px}
  .english-local-help{border-radius:12px;padding:10px}
  .english-local-help .pair-japanese{font-size:15px;padding:8px 10px}
  .quick-help-setting{margin-bottom:12px}
}


/* General hub and news section. */
.site-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.site-nav a{text-decoration:none;color:var(--muted);font-size:14px;font-weight:900;border:1px solid transparent;border-radius:999px;padding:7px 11px}
.site-nav a:hover{color:var(--rose);border-color:var(--line);background:#fff}
.hub-hero{min-height:320px;display:flex;align-items:flex-end;border:1px solid var(--line);border-radius:32px;padding:30px;background:linear-gradient(135deg,rgba(255,247,251,.95),rgba(242,247,255,.9)),radial-gradient(circle at 80% 20%,rgba(124,103,255,.18),transparent 32%);box-shadow:var(--shadow);margin-bottom:18px}
.hub-hero h1,.news-hero h1{margin:0;font-size:clamp(34px,5vw,62px);line-height:1.05;letter-spacing:-.04em}
.hub-hero p:not(.eyebrow),.news-hero p:not(.eyebrow){max-width:680px;color:var(--muted)}
.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.content-card{min-height:250px;border:1px solid var(--line);border-radius:26px;padding:22px;text-decoration:none;color:var(--ink);background:rgba(255,255,255,.88);box-shadow:0 16px 38px rgba(78,38,68,.08);display:flex;flex-direction:column;transition:.18s}
.content-card:hover{transform:translateY(-2px);box-shadow:0 20px 46px rgba(78,38,68,.12)}
.content-card h2{margin:12px 0 8px;font-size:30px;line-height:1.15}
.content-card p{color:var(--muted)}
.content-card small{margin-top:auto;color:var(--muted);font-weight:800}
.news-card{background:linear-gradient(135deg,#f2fffc,#eef8ff)}
.news-pill,.news-card .mini-genre{background:#eafffa!important;border-color:#a8eadf!important;color:#08796f!important}
.news-page{background:radial-gradient(circle at 12% 0%,rgba(21,184,166,.20),transparent 28%),radial-gradient(circle at 90% 14%,rgba(14,165,233,.16),transparent 30%),linear-gradient(180deg,#f5fffd,#f7fbff 58%,#fff)}
.news-page .brand span{background:linear-gradient(135deg,#14b8a6,#38bdf8);box-shadow:0 0 0 6px rgba(20,184,166,.12)}
.news-page .eyebrow,.news-page .crumb{color:#08796f}
.news-hero{display:flex;align-items:stretch;justify-content:space-between;gap:18px;border:1px solid #ccefeb;border-radius:32px;padding:28px;background:linear-gradient(135deg,rgba(239,255,252,.96),rgba(236,248,255,.92));box-shadow:0 18px 45px rgba(17,94,89,.10);margin-bottom:18px}
.news-date{min-width:170px;border-left:4px solid #14b8a6;padding:16px 0 16px 18px;font-weight:1000;color:#075e57;letter-spacing:.08em}
.news-date span{font-size:13px;color:#0f9f91}
.news-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:16px}
.lead-news a,.news-list-item{display:block;text-decoration:none;color:var(--ink);border:1px solid #ccefeb;background:rgba(255,255,255,.9);border-radius:22px;padding:20px;box-shadow:0 14px 34px rgba(17,94,89,.08);transition:.18s}
.lead-news a{min-height:360px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(135deg,#e6fffb,#eef8ff)}
.lead-news a:hover,.news-list-item:hover{transform:translateY(-2px);border-color:#7dded4}
.lead-news span,.news-list-item span{align-self:flex-start;display:inline-flex;border-radius:999px;padding:3px 9px;background:#eafffa;border:1px solid #a8eadf;color:#08796f;font-size:12px;font-weight:900}
.lead-news h2{font-size:clamp(30px,4vw,52px);line-height:1.04;margin:12px 0}
.news-list{display:grid;gap:14px}
.news-list-item h3{margin:10px 0 6px;font-size:24px;line-height:1.15}
.news-list-item p,.lead-news p{color:var(--muted)}
.news-list-item small,.lead-news small{color:#0f766e;font-weight:900}
.news-view .story-head,.news-view .reader-card{border-color:#ccefeb;box-shadow:0 16px 40px rgba(17,94,89,.08)}
.news-view .story-head h2{font-size:clamp(30px,4vw,52px)}
.news-view .pair-japanese{background:#f0fffc;border-left-color:#89e4d7}
.news-view .expr-list li{background:linear-gradient(135deg,#f2fffc,#eef8ff);border-color:#ccefeb}
.news-view .expr-list strong,.news-view th{color:#08796f}
.news-view th{background:#effffd}
.news-view .quick-help-setting{border-color:#a8eadf;background:#effffd;color:#08796f}
.news-view .quick-help-checkbox:checked+.toggle-switch{background:linear-gradient(135deg,#14b8a6,#38bdf8)}
.yl-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 11px;font-size:13px;font-weight:900;line-height:1.2;background:#eafffa;color:#08796f;border:1px solid #a8eadf}
.news-art{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#dffdfa,#e7f6ff);border-color:#ccefeb}
.news-art-card{text-align:left;width:min(320px,80%);border:1px solid rgba(8,121,111,.22);border-radius:20px;padding:22px;background:rgba(255,255,255,.82);box-shadow:0 18px 36px rgba(17,94,89,.12)}
.news-art-card span{display:inline-flex;border-radius:999px;padding:3px 9px;background:#eafffa;border:1px solid #a8eadf;color:#08796f;font-size:12px;font-weight:900}
.news-art-card b{display:block;margin-top:12px;font-size:42px;line-height:.95;letter-spacing:-.04em;color:#075e57}
.news-art-card small{display:block;margin-top:10px;color:#0f766e;font-weight:900}
@media(max-width:760px){
  .site-header{align-items:flex-start;flex-direction:column;gap:8px}
  .site-nav{width:100%}
  .site-nav a{padding:6px 9px}
  .content-grid,.news-layout{grid-template-columns:1fr}
  .hub-hero,.news-hero{border-radius:20px;padding:18px}
  .news-hero{display:block}
  .news-date{margin-top:14px;border-left:0;border-top:4px solid #14b8a6;padding:12px 0 0}
  .content-card,.lead-news a,.news-list-item{border-radius:18px}
}


/* Blue news refresh and easier level display. */
.level-2{background:#e8f3ff!important;color:#155eac!important;border-color:#b8dcff!important}
.news-page{background:radial-gradient(circle at 12% 0%,rgba(59,130,246,.22),transparent 28%),radial-gradient(circle at 90% 14%,rgba(14,165,233,.18),transparent 30%),linear-gradient(180deg,#f3f9ff,#f7fbff 58%,#fff)}
.news-page .brand span{background:linear-gradient(135deg,#2563eb,#38bdf8);box-shadow:0 0 0 6px rgba(37,99,235,.12)}
.news-page .eyebrow,.news-page .crumb{color:#1d4ed8}
.news-card{background:linear-gradient(135deg,#eef6ff,#edfaff)}
.news-pill,.news-card .mini-genre{background:#e8f3ff!important;border-color:#b8dcff!important;color:#155eac!important}
.news-hero{border-color:#c7ddff;background:linear-gradient(135deg,rgba(240,247,255,.97),rgba(235,249,255,.93));box-shadow:0 18px 45px rgba(37,99,235,.10)}
.news-layout{grid-template-columns:minmax(0,1fr) minmax(300px,.9fr)}
.lead-news a,.news-list-item{border-color:#c7ddff;box-shadow:0 14px 34px rgba(37,99,235,.08)}
.lead-news a{background:linear-gradient(135deg,#eaf4ff,#edfaff)}
.lead-news a:hover,.news-list-item:hover{border-color:#8dbdff}
.lead-news span:not(.level-badge),.news-list-item span:not(.level-badge){background:#e8f3ff;border-color:#b8dcff;color:#155eac}
.news-list-item small,.lead-news small{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#1d4ed8;font-weight:900}
.news-view .story-head,.news-view .reader-card{border-color:#c7ddff;box-shadow:0 16px 40px rgba(37,99,235,.08)}
.news-view .pair-japanese{background:#f2f8ff;border-left-color:#9cc8ff}
.news-view .expr-list li{background:linear-gradient(135deg,#f3f9ff,#edfaff);border-color:#c7ddff}
.news-view .expr-list strong,.news-view th{color:#1d4ed8}
.news-view th{background:#f1f7ff}
.news-view .quick-help-setting{border-color:#b8dcff;background:#f2f8ff;color:#1d4ed8}
.news-view .quick-help-checkbox:checked+.toggle-switch{background:linear-gradient(135deg,#2563eb,#38bdf8)}
.yl-badge{display:none}
.news-art{background:linear-gradient(135deg,#ddecff,#eaf8ff);border-color:#c7ddff}
.news-art-card{border-color:rgba(37,99,235,.22);box-shadow:0 18px 36px rgba(37,99,235,.12)}
.news-art-card span{background:#e8f3ff;border-color:#b8dcff;color:#155eac}
.news-art-card b{color:#1e3a8a}
.news-art-card small{color:#1d4ed8}


/* Scalable news archive with photo cards. */
.news-archive{border-color:#c7ddff}
.archive-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}
.archive-head h2{margin:0;font-size:28px;line-height:1.1}
.archive-head p{margin:6px 0 0;color:var(--muted)}
.archive-tools{display:grid;grid-template-columns:minmax(190px,1.4fr) minmax(130px,.8fr) minmax(130px,.8fr);gap:8px;min-width:min(560px,100%)}
.archive-tools label{display:grid;gap:4px}
.archive-tools span{font-size:11px;font-weight:900;color:#1d4ed8;text-transform:uppercase;letter-spacing:.08em}
.archive-tools input,.archive-tools select{width:100%;border:1px solid #c7ddff;border-radius:12px;background:#fff;padding:9px 10px;color:var(--ink);outline:none}
.archive-tools input:focus,.archive-tools select:focus{border-color:#60a5fa;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;align-items:stretch}
.news-card-item{display:grid;grid-template-rows:auto 1fr;overflow:hidden;border:1px solid #c7ddff;border-radius:18px;background:rgba(255,255,255,.92);text-decoration:none;color:var(--ink);box-shadow:0 12px 28px rgba(37,99,235,.07);transition:.18s}
.news-card-item:hover{transform:translateY(-2px);border-color:#8dbdff;box-shadow:0 18px 38px rgba(37,99,235,.12)}
.news-card-item img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#eaf4ff}
.news-card-item>div{display:flex;flex-direction:column;height:100%;padding:14px}
.news-card-item h3{margin:6px 0;font-size:21px;line-height:1.18}
.news-card-item p{margin:0 0 10px;color:var(--muted);font-size:14px}
.news-card-item .story-stats{margin-top:auto;padding-top:10px}
.news-view .news-art img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.news-view .crumb{display:inline-flex;align-self:flex-start;border-radius:999px;padding:3px 9px;background:#e8f3ff;border:1px solid #b8dcff;color:#155eac;font-size:12px;font-weight:900}
@media(max-width:760px){
  .archive-head{display:block}
  .archive-tools{grid-template-columns:1fr;min-width:0;margin-top:12px}
  .news-grid{grid-template-columns:1fr;gap:12px}
}


/* News badges, compact tags, and dates. */
.news-thumb{position:relative;overflow:hidden}
.news-thumb img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.new-badge{position:absolute;top:10px;left:10px;z-index:2;display:inline-flex;align-items:center;justify-content:center;border:2px solid #fff;background:rgba(20,28,45,.42);color:#fff;font-size:12px;font-weight:1000;line-height:1;letter-spacing:.04em;padding:5px 7px;text-shadow:0 1px 3px rgba(0,0,0,.45);box-shadow:0 2px 8px rgba(0,0,0,.18)}
.news-card-item .news-pill{align-self:flex-start;width:auto;max-width:100%}
.news-card-item .story-stats span:not(.level-badge){font-size:12px}
.news-view .chips span:not(.level-badge){color:var(--muted)}


/* Restore rounded news thumbnails after adding NEW badges. */
.news-card-item .news-thumb{border-radius:18px 18px 0 0}
.news-card-item .news-thumb img{border-radius:inherit}


/* Make news card photos fill the card top like novel cards. */
.news-card-item{grid-template-rows:auto 1fr}
.news-card-item .news-thumb{display:block;width:100%;margin:0;border-radius:18px 18px 0 0;background:#eaf4ff}
.news-card-item .news-thumb img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:0}


/* Remove inherited card padding from news thumbnails. */
.news-card-item>.news-thumb{padding:0!important}
.news-card-item>.news-thumb img{display:block;width:100%;height:auto}


/* Searchable archives and cleaner reader pages. */
.story-card[hidden],.news-card-item[hidden]{display:none!important}
.story-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.story-index .archive-head h3{margin:0;font-size:28px;line-height:1.1}
.story-index .archive-head p{margin:6px 0 0;color:var(--muted)}
.reader-card.text-section>h3:first-child{display:none}
.story-head .tagline{display:none}
.news-view .mode-switch button.active{background:#1d4ed8;border-color:#1d4ed8;color:#fff}
.news-view .mode-switch button{border-color:#c7ddff}
.news-view .english-local-help{border-color:#b8dcff}
.news-view .english-local-help>b{color:#1d4ed8}
.news-view .english-local-help .pair-japanese{background:#f2f8ff;border-left-color:#9cc8ff}
.news-view .inline-study-note{border-color:#c7ddff;background:#fff}
.news-view .inline-study-note b{color:#1d4ed8}
.news-view .reader-mode-bar{border-color:#c7ddff;box-shadow:0 12px 28px rgba(37,99,235,.10)}
@media(max-width:980px){.story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.story-grid{grid-template-columns:1fr}.archive-tools.story-tools{grid-template-columns:1fr}}


/* Match novel archive search controls to the novel palette. */
.story-index .archive-tools span{color:var(--rose)}
.story-index .archive-tools input,.story-index .archive-tools select{border-color:var(--line)}
.story-index .archive-tools input:focus,.story-index .archive-tools select:focus{border-color:rgba(255,111,168,.85);box-shadow:0 0 0 4px rgba(255,111,168,.13)}


/* Keep descriptions on individual reader pages, not archive cards. */
.story-head .tagline{display:block}
.story-card>div>p,.news-card-item>div>p{display:none}


/* Novel card updates and unified NEW badge weight. */
.new-badge{font-weight:700}
.story-thumb{position:relative;overflow:hidden}
.story-thumb img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.story-card>.story-thumb{padding:0!important}
.story-card>.story-thumb+div{padding:16px}
.story-card>div>p{display:block}
.news-card-item>div>p{display:none}
.story-card .story-stats span:not(.level-badge){font-size:12px}
.news-view .english-help-item:hover>p,.news-view .english-help-item:focus-visible>p,.news-view .english-help-item.open>p{background:#f2f8ff;box-shadow:0 0 0 6px #f2f8ff}
.news-view .mode-switch button:hover{border-color:#60a5fa;background:#f2f8ff}
@media(max-width:620px){.story-card>.story-thumb+div{padding:13px}}




/* Bridge general top page refresh. */
.hub-page{--bridge:#10b981;--bridge-dark:#064e3b;--bridge-ink:#10231c;--bridge-muted:#5a6c64;--bridge-soft:#ebfbf4;--bridge-line:#ccefe1;background:radial-gradient(circle at 12% -4%,rgba(16,185,129,.22),transparent 30%),radial-gradient(circle at 92% 8%,rgba(20,184,166,.13),transparent 28%),linear-gradient(180deg,#f4fbf8 0%,#fff 54%,#f7fbf9 100%);color:var(--bridge-ink)}
.hub-page .main-content{padding-top:22px}
.hub-page .site-header{border-bottom-color:rgba(6,95,70,.16);background:rgba(255,255,255,.9);backdrop-filter:blur(18px)}
.hub-page .brand{color:#083c2b}
.hub-page .brand span{background:linear-gradient(135deg,#10b981,#0f766e);box-shadow:0 0 0 6px rgba(16,185,129,.13)}
.hub-page .site-nav a{color:#49645a}
.hub-page .site-nav a:hover{color:#065f46;border-color:#b7ead8;background:#f0fff8}
.hub-page .eyebrow{color:#047857}
.hub-page .hub-hero{min-height:0;align-items:center;border-color:var(--bridge-line);border-radius:28px;padding:26px 28px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(235,252,244,.94));box-shadow:0 18px 42px rgba(6,95,70,.1);margin-bottom:16px}
.hub-page .hub-hero h1{color:#0f2f25;font-size:clamp(34px,4vw,54px);letter-spacing:-.03em}
.hub-page .hub-hero p:not(.eyebrow){color:var(--bridge-muted);font-size:17px}
.hub-page .hub-primary-grid{margin-bottom:18px}
.hub-page .content-card{border-color:#d4eee4;background:rgba(255,255,255,.9);border-radius:22px;min-height:210px;box-shadow:0 14px 34px rgba(6,95,70,.07)}
.hub-page .content-card:hover{border-color:#8edcbd;box-shadow:0 20px 46px rgba(6,95,70,.12);transform:translateY(-2px)}
.hub-page .content-card .mini-genre{align-self:flex-start;background:#ecfdf5!important;border:1px solid #a7f3d0!important;color:#047857!important;border-radius:999px;width:max-content}
.hub-page .content-card h2{color:#112820}
.hub-page .content-card p{color:var(--bridge-muted)}
.hub-page .content-card small{color:#047857;font-weight:900}
@media(max-width:760px){
  .hub-page .main-content{padding-top:14px}
  .hub-page .hub-hero{border-radius:20px;padding:20px}
  .hub-page .content-grid{grid-template-columns:1fr}
}


/* Unified English Bridge header and two-card hub layout. */
.site-header .brand{color:#083c2b}
.site-header .brand span{background:linear-gradient(135deg,#10b981,#0f766e);box-shadow:0 0 0 6px rgba(16,185,129,.13)}
.site-header .site-nav a:hover{color:#065f46;border-color:#b7ead8;background:#f0fff8}
.hub-page .brand{color:#083c2b}
.hub-page .hub-primary-grid{align-items:stretch}
.hub-page .content-card{position:relative;overflow:hidden;text-decoration:none}
.hub-page .content-card:before{content:"";position:absolute;inset:0 0 auto;height:5px}
.hub-page .novel-card{border-color:#f3c4d8;background:linear-gradient(135deg,#fff,#fff3f8)}
.hub-page .novel-card:before{background:linear-gradient(90deg,var(--pink),var(--rose))}
.hub-page .novel-card:hover{border-color:#ff9bc5;box-shadow:0 20px 46px rgba(184,59,114,.13)}
.hub-page .novel-card .mini-genre{background:#fff0f6!important;border-color:#ffd5e7!important;color:var(--rose)!important}
.hub-page .novel-card .card-link{background:linear-gradient(135deg,var(--pink),var(--rose));color:#fff}
.hub-page .news-card{border-color:#c7ddff;background:linear-gradient(135deg,#f7fbff,#edf6ff)}
.hub-page .news-card:before{background:linear-gradient(90deg,#2563eb,#38bdf8)}
.hub-page .news-card:hover{border-color:#8dbdff;box-shadow:0 20px 46px rgba(37,99,235,.12)}
.hub-page .news-card .mini-genre{background:#e8f3ff!important;border-color:#b8dcff!important;color:#155eac!important}
.hub-page .news-card .card-link{background:linear-gradient(135deg,#2563eb,#38bdf8);color:#fff}
.card-updates{display:grid;gap:6px;margin:14px 0 18px;padding:13px;border-radius:16px;background:rgba(255,255,255,.68);border:1px solid rgba(255,255,255,.92)}
.card-updates b{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:inherit}
.card-updates span{font-size:14px;line-height:1.35;color:var(--bridge-muted)}
.card-link{display:inline-flex;align-items:center;justify-content:center;width:max-content;margin-top:auto;border-radius:999px;padding:10px 14px;font-size:14px;font-weight:900;text-decoration:none;box-shadow:0 12px 26px rgba(15,23,42,.1)}
@media(max-width:760px){.card-link{width:100%}}


/* Image links for recent updates on the Bridge top page. */
.card-updates{gap:8px;background:rgba(255,255,255,.74);border-color:rgba(255,255,255,.95)}
.recent-link{display:grid;grid-template-columns:82px minmax(0,1fr);gap:10px;align-items:center;color:inherit;text-decoration:none;border:1px solid rgba(255,255,255,.9);border-radius:14px;background:rgba(255,255,255,.72);padding:7px;transition:.18s ease}
.recent-link:hover{transform:translateY(-1px);background:#fff}
.recent-link img{width:82px;aspect-ratio:16/10;object-fit:cover;border-radius:10px;display:block}
.recent-link span{display:grid;gap:3px;min-width:0}
.recent-link strong{font-size:14px;line-height:1.25;color:#18211d}
.recent-link small{font-size:12px;color:var(--bridge-muted);font-weight:800}
.hub-page .novel-card .recent-link:hover{border-color:#ffc1d8;box-shadow:0 10px 22px rgba(184,59,114,.1)}
.hub-page .news-card .recent-link:hover{border-color:#b8dcff;box-shadow:0 10px 22px rgba(37,99,235,.1)}
@media(max-width:620px){
  .recent-link{grid-template-columns:74px minmax(0,1fr)}
  .recent-link img{width:74px}
}


/* Larger recent-update previews without Bridge green inside content cards. */
.recent-link{grid-template-columns:122px minmax(0,1fr);gap:12px;padding:8px}
.recent-link img{width:122px;aspect-ratio:16/10;border-radius:11px}
.recent-link strong{font-size:15px}
.recent-link small{font-size:12px;font-weight:500;color:#8b7f87}
.hub-page .novel-card .recent-link small{color:#a6798c}
.hub-page .news-card .recent-link small{color:#6f86a8}
@media(max-width:620px){
  .recent-link{grid-template-columns:104px minmax(0,1fr)}
  .recent-link img{width:104px}
}


/* Make Bridge recent-update images more prominent. */
.recent-link{grid-template-columns:164px minmax(0,1fr);gap:14px;padding:9px}
.recent-link img{width:164px;aspect-ratio:16/10;border-radius:12px}
.recent-link strong{font-size:15px}
.recent-link small{font-size:12px;font-weight:400}
@media(max-width:760px){
  .recent-link{grid-template-columns:142px minmax(0,1fr)}
  .recent-link img{width:142px}
}
@media(max-width:520px){
  .recent-link{grid-template-columns:1fr}
  .recent-link img{width:100%;aspect-ratio:16/9}
}




/* Align Bridge recent update metadata with archive cards. */
.recent-meta{align-items:center;gap:6px}
.recent-meta i,.recent-meta span{font-size:12px;line-height:1.2}
.recent-meta .level-badge{font-style:normal;padding:4px 10px}
.recent-meta span:not(.level-badge){color:var(--muted);font-weight:500}
.recent-genre{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-style:normal;font-weight:800}
.hub-page .novel-card .recent-genre{background:#fff0f6;border:1px solid #ffd5e7;color:var(--rose)}
.hub-page .news-card .recent-genre{background:#e8f3ff;border:1px solid #b8dcff;color:#155eac}


/* Monochrome Bridge shell and shared header. Content cards keep their own colors. */
.site-header{border-bottom-color:#e5e7eb;background:rgba(255,255,255,.9)}
.site-header .brand{color:#171717}
.site-header .brand span{background:linear-gradient(135deg,#111,#8a8a8a);box-shadow:0 0 0 6px rgba(17,17,17,.08)}
.site-header .site-nav a{color:#5f6368}
.site-header .site-nav a:hover,.site-header .site-nav-link:hover,.site-header .site-nav-link.active{color:#111;border-color:#d8dadd;background:#f5f6f7}
.hub-page{--bridge:#171717;--bridge-dark:#111;--bridge-ink:#1f2328;--bridge-muted:#62676f;--bridge-soft:#f6f7f8;--bridge-line:#dedede;background:radial-gradient(circle at 14% -4%,rgba(17,17,17,.08),transparent 28%),radial-gradient(circle at 90% 8%,rgba(120,120,120,.08),transparent 30%),linear-gradient(180deg,#f7f7f8 0%,#fff 54%,#f5f6f7 100%);color:var(--bridge-ink)}
.hub-page .site-header{border-bottom-color:#e5e7eb;background:rgba(255,255,255,.9)}
.hub-page .brand{color:#171717}
.hub-page .brand span{background:linear-gradient(135deg,#111,#8a8a8a);box-shadow:0 0 0 6px rgba(17,17,17,.08)}
.hub-page .site-nav a{color:#5f6368}
.hub-page .site-nav a:hover{color:#111;border-color:#d8dadd;background:#f5f6f7}
.hub-page .eyebrow{color:#555}
.hub-page .hub-hero{border-color:#dedede;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,245,246,.94));box-shadow:0 18px 42px rgba(15,23,42,.08)}
.hub-page .hub-hero h1{color:#15171a}
.hub-page .hub-hero p:not(.eyebrow){color:#62676f}
.hub-page .content-card h2{color:#16181c}
.hub-page .content-card p{color:#62676f}
.card-updates span{color:#62676f}


/* Restore the colored English Bridge header, while keeping the top page shell monochrome. */
.site-header .brand{color:#083c2b}
.site-header .brand span{background:linear-gradient(135deg,#10b981,#0f766e);box-shadow:0 0 0 6px rgba(16,185,129,.13)}
.site-header .site-nav a:hover,.site-header .site-nav-link:hover,.site-header .site-nav-link.active{color:#065f46;border-color:#b7ead8;background:#f0fff8}
.hub-page .brand{color:#083c2b}
.hub-page .brand span{background:linear-gradient(135deg,#10b981,#0f766e);box-shadow:0 0 0 6px rgba(16,185,129,.13)}
.hub-page .site-nav a:hover{color:#065f46;border-color:#b7ead8;background:#f0fff8}

/* Keep recent update metadata on one compact line. */
.recent-meta{display:flex!important;align-items:center;flex-wrap:nowrap;gap:5px;overflow:hidden}
.recent-meta i,.recent-meta span{display:inline-flex!important;width:auto;white-space:nowrap;font-size:11px;line-height:1.15}
.recent-meta .level-badge{padding:3px 7px;font-size:11px}
.recent-meta span:not(.level-badge){color:var(--muted);font-weight:500}
.recent-genre{padding:3px 7px}
@media(max-width:520px){
  .recent-meta{flex-wrap:wrap}
}


/* Compact Bridge recent updates on phone widths. */
@media(max-width:620px){
  .card-updates{gap:7px;padding:10px}
  .recent-link{grid-template-columns:96px minmax(0,1fr);gap:9px;padding:7px}
  .recent-link img{width:96px;aspect-ratio:16/10;border-radius:10px}
  .recent-link strong{font-size:14px;line-height:1.2}
  .recent-meta{gap:4px}
  .recent-meta i,.recent-meta span{font-size:10px}
  .recent-meta .level-badge{font-size:10px;padding:2px 6px}
  .recent-genre{padding:2px 6px}
}


/* Top-page content card title links. */
.card-title-link{color:inherit;text-decoration:none}
.card-title-link:hover{text-decoration:underline;text-underline-offset:4px}
.hub-page .news-card .card-title-link:hover{color:#155eac}
.hub-page .novel-card .card-title-link:hover{color:var(--rose)}


/* Compact archive search/filter controls on phones. */
@media(max-width:620px){
  .archive-head{margin-bottom:12px}
  .archive-tools{grid-template-columns:1fr 1fr!important;gap:6px;min-width:0;margin-top:8px}
  .archive-tools label{gap:0}
  .archive-tools label:first-child{grid-column:1/-1}
  .archive-tools span{display:none}
  .archive-tools input,.archive-tools select{border-radius:10px;padding:8px 9px;font-size:13px}
  .story-index .archive-head h3,.archive-head h2{font-size:24px}
  .story-index .archive-head p,.archive-head p{margin-top:3px}
}


/* Vocabulary word audio buttons. */
.speak-word-button{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-family:"Segoe UI",system-ui,sans-serif;font-size:11px;font-weight:800;line-height:1;padding:5px 8px;cursor:pointer;vertical-align:middle}
.speak-word-button:hover{border-color:rgba(255,111,168,.7);color:var(--rose);background:#fff7fb}
.inline-study-note strong .speak-word-button{margin-left:8px}
.news-view .speak-word-button{border-color:#c7ddff;color:#1d4ed8}
.news-view .speak-word-button:hover{border-color:#60a5fa;background:#f2f8ff;color:#1d4ed8}
@media(max-width:620px){.speak-word-button{font-size:10px;padding:4px 7px}}


/* Compact icon style for vocabulary audio buttons. */
.speak-word-button{width:24px;height:24px;margin-left:6px;padding:0;border-radius:50%;font-size:10px;line-height:1;text-indent:1px}
.inline-study-note strong .speak-word-button{margin-left:6px}
@media(max-width:620px){.speak-word-button{width:22px;height:22px;font-size:9px;padding:0}}


/* News reader separators and neutral audio buttons. */
.news-view .translation-pair{border-bottom-color:#c7ddff}
.news-view .both-mode .english-block{border-bottom-color:#c7ddff}
.speak-word-button,.news-view .speak-word-button{border-color:#d6d9de;color:#6b7280;background:#fff}
.speak-word-button:hover,.news-view .speak-word-button:hover{border-color:#9ca3af;color:#374151;background:#f6f7f8}


/* Compact single-line site header. */
.site-header{
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:14px!important;
}
.site-header .brand{
  min-width:0;
  white-space:nowrap;
}
.site-header .brand b{
  overflow:hidden;
  text-overflow:ellipsis;
}
.site-nav{
  width:auto!important;
  flex:0 0 auto;
  flex-wrap:nowrap!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  white-space:nowrap;
}
.site-nav a{
  flex:0 0 auto;
  white-space:nowrap;
}
@media(max-width:620px){
  .site-header{
    padding:9px 10px!important;
    gap:8px!important;
  }
  .site-header .brand{
    gap:8px;
    font-size:14px;
  }
  .site-header .brand span{
    width:10px;
    height:10px;
    box-shadow:0 0 0 4px rgba(16,185,129,.13);
  }
  .site-nav{
    gap:4px!important;
  }
  .site-nav a{
    font-size:12px!important;
    padding:5px 7px!important;
  }
}

/* Unified top title cards across Home, News, and Novels. */
.hub-page .hub-hero,
.news-page .news-hero,
body:not(.hub-page):not(.news-page) .hero{
  min-height:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  border-radius:28px!important;
  padding:26px 28px!important;
  margin-bottom:18px!important;
  box-shadow:0 18px 42px rgba(15,23,42,.08)!important;
}
.hub-page .hub-hero h1,
.news-page .news-hero h1,
body:not(.hub-page):not(.news-page) .hero h2{
  margin:0!important;
  font-size:clamp(34px,4vw,54px)!important;
  line-height:1.05!important;
  letter-spacing:-.03em!important;
}
.hub-page .hub-hero p:not(.eyebrow),
.news-page .news-hero p:not(.eyebrow),
body:not(.hub-page):not(.news-page) .hero p:not(.eyebrow){
  max-width:720px!important;
  margin:10px 0 0!important;
  font-size:17px!important;
  line-height:1.75!important;
}
.hub-page .hub-hero .eyebrow,
.news-page .news-hero .eyebrow,
body:not(.hub-page):not(.news-page) .hero .eyebrow{
  margin:0 0 8px!important;
  font-size:12px!important;
  line-height:1.2!important;
  letter-spacing:.1em!important;
}
@media(max-width:760px){
  .hub-page .hub-hero,
  .news-page .news-hero,
  body:not(.hub-page):not(.news-page) .hero{
    border-radius:20px!important;
    padding:20px!important;
  }
}
@media(max-width:620px){
  .hub-page .hub-hero,
  .news-page .news-hero,
  body:not(.hub-page):not(.news-page) .hero{
    border-radius:16px!important;
    padding:16px!important;
    margin-bottom:14px!important;
  }
  .hub-page .hub-hero h1,
  .news-page .news-hero h1,
  body:not(.hub-page):not(.news-page) .hero h2{
    font-size:clamp(28px,8vw,36px)!important;
  }
  .hub-page .hub-hero p:not(.eyebrow),
  .news-page .news-hero p:not(.eyebrow),
  body:not(.hub-page):not(.news-page) .hero p:not(.eyebrow){
    font-size:15px!important;
  }
}


/* Use the full width of the Home title card. */
.bridge-hero > div{
  width:100%!important;
  min-width:0;
}
.bridge-hero h1{
  white-space:nowrap;
}
.bridge-hero p:not(.eyebrow){
  max-width:none!important;
}
@media(max-width:620px){
  .bridge-hero h1{
    white-space:normal;
  }
}

/* Keep the Home description on one line on desktop. */
@media(min-width:900px){
  .hub-page .bridge-hero{
    width:100%!important;
  }
  .hub-page .bridge-hero > div{
    width:100%!important;
    max-width:none!important;
    min-width:0;
  }
  .hub-page .bridge-hero p:not(.eyebrow){
    width:100%!important;
    max-width:none!important;
    white-space:nowrap!important;
    font-size:clamp(14px,1.45vw,16px)!important;
    letter-spacing:-.01em;
  }
}
@media(max-width:899px){
  .hub-page .bridge-hero p:not(.eyebrow){
    white-space:normal!important;
  }
}

/* Preview schedule page. */
.schedule-page .schedule-summary{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:0 0 16px;
}
.schedule-page .schedule-summary span,
.schedule-status{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  border:1px solid #d7dde8;
  background:#fff;
  padding:4px 10px;
  font-size:12px;
  font-weight:800;
  color:#475569;
}
.schedule-table{
  width:100%;
  min-width:760px;
}
.schedule-table a{
  color:#0f766e;
  font-weight:900;
}
.schedule-status.published{
  border-color:#bbf7d0;
  background:#f0fdf4;
  color:#15803d;
}
.schedule-status.pending{
  border-color:#bfdbfe;
  background:#eff6ff;
  color:#1d4ed8;
}

/* Scheduled content must stay hidden on Home recent links before publish time. */
.recent-link[hidden]{
  display:none!important;
}


/* Archive pagination for large content libraries. */
.load-more-button{
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(260px,100%);
  margin:20px auto 0;
  border:1px solid #d7dde8;
  border-radius:999px;
  background:#fff;
  color:#334155;
  font-weight:900;
  padding:11px 16px;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(15,23,42,.06);
}
.load-more-button:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(15,23,42,.1);
}
.load-more-button[hidden]{
  display:none!important;
}


.fictional-news-notice{
  display:grid;
  gap:2px;
  margin:10px 0 12px;
  padding:10px 12px;
  border:1px solid rgba(35,120,170,.22);
  border-radius:14px;
  background:rgba(235,247,255,.82);
  color:#1e4f68;
}
.fictional-news-notice strong{
  font-size:12px;
  line-height:1.35;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.fictional-news-notice span{
  font-size:13px;
  line-height:1.45;
  color:#486879;
}


.schedule-empty{
  margin:18px 0 0;
  color:#64748b;
  font-weight:800;
}



/* Unified content archive. */
.contents-page{background:radial-gradient(circle at 15% 0%,rgba(15,23,42,.08),transparent 28%),linear-gradient(180deg,#f8fafc,#fff)}
.contents-hero{background:linear-gradient(135deg,#fff,#f8fafc);border-color:#e5e7eb}
.content-archive .archive-tools{grid-template-columns:repeat(4,minmax(140px,1fr))}
.unified-content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.content-item-card{display:grid;grid-template-rows:auto 1fr;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.92);color:var(--ink);text-decoration:none;box-shadow:0 14px 34px rgba(15,23,42,.08);transition:.18s}
.content-item-card:hover{border-color:#a3aab7;box-shadow:0 18px 42px rgba(15,23,42,.12);transform:translateY(-2px)}
.content-thumb{position:relative}
.content-thumb img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.content-item-card>div:last-child{padding:16px}
.content-item-card h3{margin:8px 0 6px;font-size:22px;line-height:1.2}
.content-item-card p{margin:0 0 10px;color:var(--muted)}
.content-type-pill{background:#f1f5f9;color:#334155;border-color:#dbe3ef;margin-right:6px}
.all-contents-card{border-color:#e5e7eb;background:linear-gradient(135deg,#fff,#f8fafc)}
.hub-single-grid{grid-template-columns:minmax(0,1fr)}
@media(max-width:980px){.unified-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-archive .archive-tools{grid-template-columns:repeat(2,minmax(140px,1fr))}}
@media(max-width:620px){.unified-content-grid{grid-template-columns:1fr}.content-archive .archive-tools{grid-template-columns:1fr}.content-item-card h3{font-size:20px}}


/* Collapsible search tools and larger unified home card. */
.archive-filter-toggle{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d7dde8;border-radius:999px;background:#fff;color:#334155;font-weight:900;padding:10px 14px;cursor:pointer;box-shadow:0 10px 22px rgba(15,23,42,.06)}
.archive-filter-toggle:hover{border-color:#aab3c2;background:#f8fafc}
.archive-filter-toggle::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-left:10px;margin-top:-4px}
.archive-filter-toggle[aria-expanded="true"]::after{transform:rotate(225deg);margin-top:4px}
.archive-tools.is-collapsed{display:none!important}
.content-archive .archive-head{align-items:start}
.content-archive .archive-tools{margin-top:12px}
.all-contents-card{padding:26px}
.all-contents-card .card-updates{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:14px;align-items:stretch}
.all-contents-card .card-updates>b{grid-column:1/-1}
.all-contents-card .recent-link{min-height:150px}
.all-contents-card .recent-link.featured-recent{grid-row:span 2;display:grid;grid-template-columns:1fr;align-content:start}
.all-contents-card .recent-link.featured-recent img{width:100%;height:auto;aspect-ratio:16/9;border-radius:14px}
.all-contents-card .recent-link.featured-recent strong{font-size:22px;line-height:1.15}
@media(max-width:900px){.all-contents-card .card-updates{grid-template-columns:1fr}.all-contents-card .recent-link.featured-recent{grid-row:auto}}


/* Fixed content archive filters and expanded home updates. */
.content-item-card[hidden]{display:none!important}
.content-archive .archive-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px 18px;margin-bottom:18px}
.content-archive .archive-head>div:first-child{min-width:0}
.content-archive .archive-filter-toggle{justify-self:end;align-self:start}
.content-archive .archive-tools{grid-column:1/-1;width:100%;min-width:0;margin-top:0;grid-template-columns:minmax(210px,1.35fr) repeat(4,minmax(130px,1fr));gap:10px}
.content-archive .archive-tools label{min-width:0}
.content-archive .archive-tools input,.content-archive .archive-tools select{min-height:38px}
.all-contents-card{padding:28px}
.all-contents-card .card-updates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch;background:rgba(255,255,255,.52)}
.all-contents-card .card-updates>b{grid-column:1/-1}
.all-contents-card .recent-link{display:grid;grid-template-columns:1fr;align-content:start;gap:9px;min-height:0;padding:10px;border-color:#e5e7eb;background:#fff}
.all-contents-card .recent-link img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px}
.all-contents-card .recent-link strong{font-size:15px;line-height:1.2}
.all-contents-card .recent-link.featured-recent{grid-column:span 2;grid-row:span 2}
.all-contents-card .recent-link.featured-recent strong{font-size:24px;line-height:1.12}
.all-contents-card .recent-link.featured-recent img{aspect-ratio:16/9;border-radius:14px}
@media(max-width:1080px){.all-contents-card .card-updates{grid-template-columns:repeat(3,minmax(0,1fr))}.all-contents-card .recent-link.featured-recent{grid-column:span 2}}
@media(max-width:760px){.content-archive .archive-head{grid-template-columns:minmax(0,1fr) auto}.content-archive .archive-filter-toggle{grid-column:2;grid-row:1}.content-archive .archive-tools{grid-template-columns:1fr 1fr!important;gap:8px}.content-archive .archive-tools label:first-child{grid-column:1/-1}.all-contents-card .card-updates{grid-template-columns:repeat(2,minmax(0,1fr))}.all-contents-card .recent-link.featured-recent{grid-column:1/-1;grid-row:auto}}
@media(max-width:520px){.content-archive .archive-tools{grid-template-columns:1fr!important}.all-contents-card .card-updates{grid-template-columns:1fr}.all-contents-card .recent-link.featured-recent strong{font-size:21px}}


/* Home preview uses the same cards as the unified contents page. */
.hub-page .bridge-hero{
  margin-bottom:12px;
}
.home-content-preview{
  margin-top:0;
}
.home-content-preview .archive-head{
  align-items:center;
}
.home-content-preview .archive-head h2{
  margin:2px 0 4px;
  font-size:clamp(26px,3vw,36px);
}
.home-content-preview .archive-head p:not(.eyebrow){
  margin:0;
  color:var(--muted);
}
.home-content-link{
  justify-self:end;
  white-space:nowrap;
}
@media(max-width:760px){
  .home-content-preview .archive-head{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
  }
  .home-content-preview .archive-head p:not(.eyebrow){
    display:none;
  }
}


/* Tighten the gap above the Home content preview. */
.hub-page .bridge-hero{
  margin-bottom:8px!important;
}
.hub-page .home-content-preview{
  margin-top:0!important;
}


/* Keep the Contents title card compact too. */
.contents-page .contents-hero{
  min-height:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:26px 28px!important;
  margin-bottom:18px!important;
  border-radius:28px!important;
  box-shadow:0 18px 42px rgba(15,23,42,.08)!important;
}
.contents-page .contents-hero h1{
  margin:0!important;
  font-size:clamp(34px,4vw,54px)!important;
  line-height:1.05!important;
  letter-spacing:-.03em!important;
}
.contents-page .contents-hero p:not(.eyebrow){
  max-width:720px!important;
  margin:10px 0 0!important;
  font-size:17px!important;
  line-height:1.75!important;
}
.contents-page .contents-hero .eyebrow{
  margin:0 0 8px!important;
  font-size:12px!important;
  line-height:1.2!important;
  letter-spacing:.1em!important;
}
@media(max-width:620px){
  .contents-page .contents-hero{
    border-radius:16px!important;
    padding:16px!important;
    margin-bottom:14px!important;
  }
  .contents-page .contents-hero h1{
    font-size:clamp(28px,8vw,36px)!important;
  }
  .contents-page .contents-hero p:not(.eyebrow){
    font-size:15px!important;
  }
}


/* Unified contents filters without Genre dropdown. */
.content-archive .archive-tools{
  grid-template-columns:minmax(210px,1.35fr) repeat(3,minmax(130px,1fr))!important;
}
@media(max-width:760px){
  .content-archive .archive-tools{
    grid-template-columns:1fr 1fr!important;
  }
  .content-archive .archive-tools label:first-child{
    grid-column:1/-1;
  }
}
@media(max-width:520px){
  .content-archive .archive-tools{
    grid-template-columns:1fr!important;
  }
}

/* SNS content format. */
.sns-feed{
  display:grid;
  gap:12px;
  font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
}
.sns-card{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:11px;
  padding:14px;
  border:1px solid #dbe3ef;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 24px rgba(15,23,42,.06);
}
.sns-comment{
  margin-left:42px;
  background:#f8fafc;
}
.sns-avatar{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:900;
  background:linear-gradient(135deg,#2563eb,#ec4899);
  box-shadow:0 8px 18px rgba(37,99,235,.18);
}
.sns-author{
  margin:0 0 5px!important;
  font-size:15px;
  line-height:1.3;
  font-weight:900;
  color:#111827;
}
.sns-author span{
  margin-left:5px;
  color:#64748b;
  font-weight:700;
}
.sns-message{
  margin:0!important;
  font-size:17px;
  line-height:1.7;
  color:#1f2937;
}
.sns-actions{
  margin:9px 0 0!important;
  font-size:13px;
  line-height:1.35;
  color:#64748b;
  font-weight:700;
}
.bilingual-block .pair-english .sns-card,
.bilingual-block .pair-japanese .sns-card{
  box-shadow:none;
}
.bilingual-block .pair-english .sns-comment,
.bilingual-block .pair-japanese .sns-comment{
  margin-left:24px;
}
.english-help-item>.sns-card{
  margin:0;
}
@media(max-width:620px){
  .sns-card{
    grid-template-columns:36px minmax(0,1fr);
    gap:9px;
    padding:12px;
    border-radius:15px;
  }
  .sns-comment{
    margin-left:18px;
  }
  .sns-avatar{
    width:36px;
    height:36px;
    font-size:13px;
  }
  .sns-message{
    font-size:16px;
  }
}


/* Paragraph-click help states for SNS cards. */
.english-help-item:has(>.sns-card){
  margin:0;
}
.english-help-item:hover>.sns-card,
.english-help-item:focus-visible>.sns-card,
.english-help-item.open>.sns-card{
  border-color:#b8dcff;
  box-shadow:0 12px 28px rgba(37,99,235,.12);
}
.quick-help-disabled .english-help-item:hover>.sns-card,
.quick-help-disabled .english-help-item:focus-visible>.sns-card{
  border-color:#dbe3ef;
  box-shadow:0 10px 24px rgba(15,23,42,.06);
}


/* SNS reply indentation and per-user avatars. */
.sns-comment{
  position:relative;
  margin-left:64px;
}
.sns-comment::before{
  content:"";
  position:absolute;
  left:-32px;
  top:-12px;
  bottom:50%;
  width:22px;
  border-left:2px solid #dbe3ef;
  border-bottom:2px solid #dbe3ef;
  border-bottom-left-radius:14px;
}
.sns-avatar-mika{
  background:linear-gradient(135deg,#ec4899,#f97316);
  box-shadow:0 8px 18px rgba(236,72,153,.18);
}
.sns-avatar-taro{
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  box-shadow:0 8px 18px rgba(37,99,235,.18);
}
.sns-avatar-lina{
  background:linear-gradient(135deg,#8b5cf6,#ec4899);
  box-shadow:0 8px 18px rgba(139,92,246,.18);
}
.sns-avatar-ken{
  background:linear-gradient(135deg,#0f766e,#22c55e);
  box-shadow:0 8px 18px rgba(15,118,110,.18);
}
.bilingual-block .pair-english .sns-comment,
.bilingual-block .pair-japanese .sns-comment{
  margin-left:46px;
}
.bilingual-block .pair-english .sns-comment::before,
.bilingual-block .pair-japanese .sns-comment::before{
  left:-24px;
  width:16px;
}
@media(max-width:620px){
  .sns-comment{
    margin-left:28px;
  }
  .sns-comment::before{
    left:-16px;
    width:10px;
  }
  .bilingual-block .pair-english .sns-comment,
  .bilingual-block .pair-japanese .sns-comment{
    margin-left:18px;
  }
  .bilingual-block .pair-english .sns-comment::before,
  .bilingual-block .pair-japanese .sns-comment::before{
    left:-12px;
    width:8px;
  }
}


/* Indent SNS replies after paragraph-click wrappers are installed. */
.english-help-item:has(>.sns-comment){
  margin-left:64px;
}
.english-help-item>.sns-comment{
  margin-left:0;
}
.english-help-item>.sns-comment::before{
  left:-32px;
}
.bilingual-block .translation-pair:has(.sns-comment){
  margin-left:46px;
}
.bilingual-block .pair-english .sns-comment,
.bilingual-block .pair-japanese .sns-comment{
  margin-left:0;
}
@media(max-width:620px){
  .english-help-item:has(>.sns-comment){
    margin-left:28px;
  }
  .english-help-item>.sns-comment::before{
    left:-16px;
  }
  .bilingual-block .translation-pair:has(.sns-comment){
    margin-left:18px;
  }
}


/* Simplified SNS cards for reading focus. */
.sns-author{
  margin-bottom:7px!important;
}
.sns-content .sns-message:last-child{
  margin-bottom:0!important;
}


/* Site-wide rose theme alignment. Cards on Home and Contents keep their own styles. */
.site-header{
  border-bottom-color:#f8cfe0!important;
  background:rgba(255,255,255,.92)!important;
}
.site-header .brand,
.hub-page .brand,
.news-page .brand,
.contents-page .brand{
  color:var(--rose)!important;
}
.site-header .brand span,
.hub-page .brand span,
.news-page .brand span,
.contents-page .brand span{
  background:linear-gradient(135deg,var(--pink),var(--lav))!important;
  box-shadow:0 0 0 6px rgba(255,111,168,.12)!important;
}
.site-header .site-nav a,
.hub-page .site-nav a,
.news-page .site-nav a,
.contents-page .site-nav a{
  color:#6b5562!important;
}
.site-header .site-nav a:hover,
.site-header .site-nav-link:hover,
.site-header .site-nav-link.active,
.hub-page .site-nav a:hover,
.news-page .site-nav a:hover,
.contents-page .site-nav a:hover{
  color:var(--rose)!important;
  border-color:#ffd5e7!important;
  background:#fff0f6!important;
}
.hub-page,
.contents-page,
.news-page{
  background:radial-gradient(circle at 15% 0%,rgba(255,111,168,.22),transparent 28%),radial-gradient(circle at 90% 15%,rgba(124,103,255,.16),transparent 30%),linear-gradient(180deg,#fff7fb,#fbf8ff 60%,#fff)!important;
}
.hub-page .eyebrow,
.contents-page .eyebrow,
.news-page .eyebrow,
.news-page .crumb{
  color:var(--rose)!important;
}
.hub-page .hub-hero,
.contents-page .contents-hero,
.news-page .news-hero{
  border-color:var(--line)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,240,246,.86))!important;
  box-shadow:0 18px 45px rgba(78,38,68,.08)!important;
}
.hub-page .hub-hero h1,
.contents-page .contents-hero h1,
.news-page .news-hero h1{
  color:var(--ink)!important;
}
.hub-page .hub-hero p:not(.eyebrow),
.contents-page .contents-hero p:not(.eyebrow),
.news-page .news-hero p:not(.eyebrow){
  color:var(--muted)!important;
}
.archive-filter-toggle{
  border-color:#ffd5e7!important;
  color:var(--rose)!important;
  background:#fff!important;
}
.archive-filter-toggle:hover{
  border-color:rgba(255,111,168,.7)!important;
  background:#fff7fb!important;
}
.archive-tools span,
.content-archive .archive-tools span{
  color:var(--rose)!important;
}
.archive-tools input,
.archive-tools select,
.content-archive .archive-tools input,
.content-archive .archive-tools select{
  border-color:var(--line)!important;
}
.archive-tools input:focus,
.archive-tools select:focus,
.content-archive .archive-tools input:focus,
.content-archive .archive-tools select:focus{
  border-color:rgba(255,111,168,.85)!important;
  box-shadow:0 0 0 4px rgba(255,111,168,.13)!important;
}
.news-card-item{
  border-color:var(--line)!important;
  box-shadow:0 12px 28px rgba(184,59,114,.07)!important;
}
.news-card-item:hover{
  border-color:rgba(255,111,168,.7)!important;
  box-shadow:0 18px 38px rgba(184,59,114,.12)!important;
}
.news-view .crumb{
  display:block!important;
  align-self:auto!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  background:transparent!important;
  color:var(--rose)!important;
  font-size:13px!important;
  font-weight:800!important;
}
.news-view .story-head,
.news-view .reader-card{
  border-color:var(--line)!important;
  box-shadow:0 16px 40px rgba(78,38,68,.08)!important;
}
.news-view .pair-japanese{
  background:#fff7fb!important;
  border-left-color:#ffd5e7!important;
}
.news-view .expr-list li{
  background:linear-gradient(135deg,#fff7fb,#f7f3ff)!important;
  border-color:var(--line)!important;
}
.news-view .expr-list strong,
.news-view th,
.news-view .english-local-help>b,
.news-view .inline-study-note b{
  color:var(--rose)!important;
}
.news-view th{
  background:#fff6fa!important;
}
.news-view .mode-switch button{
  border-color:var(--line)!important;
}
.news-view .mode-switch button.active{
  background:#302532!important;
  border-color:#302532!important;
  color:#fff!important;
}
.news-view .mode-switch button:hover{
  border-color:rgba(255,111,168,.7)!important;
  background:#fff7fb!important;
}
.news-view .reader-mode-bar,
.news-view .inline-study-note,
.news-view .english-local-help{
  border-color:var(--line)!important;
}
.news-view .english-help-item:hover>p,
.news-view .english-help-item:focus-visible>p,
.news-view .english-help-item.open>p{
  background:#fff7fb!important;
  box-shadow:0 0 0 6px #fff7fb!important;
}
.news-view .quick-help-setting{
  border-color:#ffd5e7!important;
  background:#fff7fb!important;
  color:var(--rose)!important;
}
.news-view .quick-help-checkbox:checked+.toggle-switch{
  background:linear-gradient(135deg,var(--pink),var(--lav))!important;
}
.news-view .translation-pair,
.news-view .both-mode .english-block{
  border-bottom-color:var(--line)!important;
}


/* Site-wide blue theme alignment based on the original Fictional News palette. */
.site-header{
  border-bottom-color:#c7ddff!important;
  background:rgba(255,255,255,.92)!important;
}
.site-header .brand,
.hub-page .brand,
.news-page .brand,
.contents-page .brand{
  color:#1d4ed8!important;
}
.site-header .brand span,
.hub-page .brand span,
.news-page .brand span,
.contents-page .brand span{
  background:linear-gradient(135deg,#2563eb,#38bdf8)!important;
  box-shadow:0 0 0 6px rgba(37,99,235,.12)!important;
}
.site-header .site-nav a,
.hub-page .site-nav a,
.news-page .site-nav a,
.contents-page .site-nav a{
  color:#465a75!important;
}
.site-header .site-nav a:hover,
.site-header .site-nav-link:hover,
.site-header .site-nav-link.active,
.hub-page .site-nav a:hover,
.news-page .site-nav a:hover,
.contents-page .site-nav a:hover{
  color:#1d4ed8!important;
  border-color:#b8dcff!important;
  background:#f2f8ff!important;
}
.hub-page,
.contents-page,
.news-page{
  background:radial-gradient(circle at 12% 0%,rgba(59,130,246,.22),transparent 28%),radial-gradient(circle at 90% 14%,rgba(14,165,233,.18),transparent 30%),linear-gradient(180deg,#f3f9ff,#f7fbff 58%,#fff)!important;
}
.hub-page .eyebrow,
.contents-page .eyebrow,
.news-page .eyebrow,
.news-page .crumb,
.crumb{
  color:#1d4ed8!important;
}
.hub-page .hub-hero,
.contents-page .contents-hero,
.news-page .news-hero{
  border-color:#c7ddff!important;
  background:linear-gradient(135deg,rgba(240,247,255,.97),rgba(235,249,255,.93))!important;
  box-shadow:0 18px 45px rgba(37,99,235,.10)!important;
}
.hub-page .hub-hero h1,
.contents-page .contents-hero h1,
.news-page .news-hero h1{
  color:#172033!important;
}
.hub-page .hub-hero p:not(.eyebrow),
.contents-page .contents-hero p:not(.eyebrow),
.news-page .news-hero p:not(.eyebrow){
  color:#5f6f88!important;
}
.archive-filter-toggle{
  border-color:#c7ddff!important;
  color:#1d4ed8!important;
  background:#fff!important;
}
.archive-filter-toggle:hover{
  border-color:#60a5fa!important;
  background:#f2f8ff!important;
}
.archive-tools span,
.content-archive .archive-tools span{
  color:#1d4ed8!important;
}
.archive-tools input,
.archive-tools select,
.content-archive .archive-tools input,
.content-archive .archive-tools select{
  border-color:#c7ddff!important;
}
.archive-tools input:focus,
.archive-tools select:focus,
.content-archive .archive-tools input:focus,
.content-archive .archive-tools select:focus{
  border-color:#60a5fa!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.12)!important;
}
.news-card-item{
  border-color:#c7ddff!important;
  box-shadow:0 12px 28px rgba(37,99,235,.07)!important;
}
.news-card-item:hover{
  border-color:#8dbdff!important;
  box-shadow:0 18px 38px rgba(37,99,235,.12)!important;
}
.news-view .crumb{
  display:block!important;
  align-self:auto!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  background:transparent!important;
  color:#1d4ed8!important;
  font-size:13px!important;
  font-weight:800!important;
}
.news-view .story-head,
.news-view .reader-card{
  border-color:#c7ddff!important;
  box-shadow:0 16px 40px rgba(37,99,235,.08)!important;
}
.news-view .pair-japanese{
  background:#f2f8ff!important;
  border-left-color:#9cc8ff!important;
}
.news-view .expr-list li{
  background:linear-gradient(135deg,#f3f9ff,#edfaff)!important;
  border-color:#c7ddff!important;
}
.news-view .expr-list strong,
.news-view th,
.news-view .english-local-help>b,
.news-view .inline-study-note b{
  color:#1d4ed8!important;
}
.news-view th{
  background:#f1f7ff!important;
}
.news-view .mode-switch button{
  border-color:#c7ddff!important;
}
.news-view .mode-switch button.active{
  background:#1d4ed8!important;
  border-color:#1d4ed8!important;
  color:#fff!important;
}
.news-view .mode-switch button:hover{
  border-color:#60a5fa!important;
  background:#f2f8ff!important;
}
.news-view .reader-mode-bar,
.news-view .inline-study-note,
.news-view .english-local-help{
  border-color:#c7ddff!important;
}
.news-view .english-help-item:hover>p,
.news-view .english-help-item:focus-visible>p,
.news-view .english-help-item.open>p{
  background:#f2f8ff!important;
  box-shadow:0 0 0 6px #f2f8ff!important;
}
.news-view .quick-help-setting{
  border-color:#b8dcff!important;
  background:#f2f8ff!important;
  color:#1d4ed8!important;
}
.news-view .quick-help-checkbox:checked+.toggle-switch{
  background:linear-gradient(135deg,#2563eb,#38bdf8)!important;
}
.news-view .translation-pair,
.news-view .both-mode .english-block{
  border-bottom-color:#c7ddff!important;
}
.news-view .fictional-news-notice{
  border-color:rgba(37,99,235,.20)!important;
  background:rgba(242,248,255,.82)!important;
  color:#1d4ed8!important;
}


/* Final all-page blue theme sweep. */
:root{
  --bg:#f3f9ff!important;
  --paper:#fff!important;
  --ink:#172033!important;
  --muted:#5f6f88!important;
  --line:#c7ddff!important;
  --pink:#2563eb!important;
  --rose:#1d4ed8!important;
  --lav:#38bdf8!important;
  --blue:#38bdf8!important;
  --shadow:0 22px 60px rgba(37,99,235,.12)!important;
}
body{
  background:radial-gradient(circle at 12% 0%,rgba(59,130,246,.22),transparent 28%),radial-gradient(circle at 90% 14%,rgba(14,165,233,.18),transparent 30%),linear-gradient(180deg,#f3f9ff,#f7fbff 58%,#fff)!important;
}
.brand,
.eyebrow,
.crumb,
.search-box span,
.expr-list strong,
th,
.inline-study-note b,
.english-local-help>b,
.story-index .archive-tools span,
.archive-tools span{
  color:#1d4ed8!important;
}
.brand span{
  background:linear-gradient(135deg,#2563eb,#38bdf8)!important;
  box-shadow:0 0 0 6px rgba(37,99,235,.12)!important;
}
.hero,
.story-head,
.reader-card,
.story-card,
.content-item-card,
.news-card-item,
.inline-art,
.reader-mode-bar,
.english-local-help,
.inline-study-note,
.fictional-news-notice{
  border-color:#c7ddff!important;
  box-shadow:0 16px 40px rgba(37,99,235,.08)!important;
}
.hero,
.story-head{
  background:linear-gradient(135deg,rgba(240,247,255,.97),rgba(235,249,255,.93))!important;
}
.reader-card,
.story-card,
.content-item-card,
.news-card-item{
  background:rgba(255,255,255,.92)!important;
}
.story-card:hover,
.content-item-card:hover,
.news-card-item:hover,
.story-list-btn:hover,
.story-list-btn.active{
  border-color:#8dbdff!important;
  box-shadow:0 18px 42px rgba(37,99,235,.12)!important;
}
.mini-genre,
.content-type-pill,
.news-pill,
.news-card .mini-genre,
.story-card .mini-genre,
.content-card .mini-genre,
.recent-genre{
  background:#e8f3ff!important;
  border-color:#b8dcff!important;
  color:#1d4ed8!important;
}
.chips span:not(.level-badge),
.quick-stats span{
  border-color:#c7ddff!important;
  background:#f2f8ff!important;
  color:#1d4ed8!important;
}
.mode-switch button,
.archive-tools input,
.archive-tools select,
.search-box input,
.filter-row select{
  border-color:#c7ddff!important;
}
.mode-switch button.active,
.start-btn,
.mobile-library button,
.card-link{
  background:linear-gradient(135deg,#2563eb,#38bdf8)!important;
  border-color:#2563eb!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(37,99,235,.20)!important;
}
.mode-switch button:hover,
.search-box input:focus,
.filter-row select:focus,
.archive-tools input:focus,
.archive-tools select:focus{
  border-color:#60a5fa!important;
  background:#f2f8ff!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.12)!important;
}
.pair-japanese,
.english-local-help .pair-japanese{
  background:#f2f8ff!important;
  border-left-color:#9cc8ff!important;
  color:#43546d!important;
}
.expr-list li,
.text-section>.study-inside-text,
.character-card,
.fictional-news-notice{
  background:linear-gradient(135deg,#f3f9ff,#edfaff)!important;
  border-color:#c7ddff!important;
}
th{
  background:#f1f7ff!important;
}
td,
th{
  border-bottom-color:#dbeafe!important;
}
.quick-help-setting{
  border-color:#b8dcff!important;
  background:#f2f8ff!important;
  color:#1d4ed8!important;
}
.quick-help-checkbox:checked+.toggle-switch{
  background:linear-gradient(135deg,#2563eb,#38bdf8)!important;
}
.english-help-item:hover>p,
.english-help-item:focus-visible>p,
.english-help-item.open>p{
  background:#f2f8ff!important;
  box-shadow:0 0 0 6px #f2f8ff!important;
}
.inline-study-note{
  background:#fff!important;
}
.translation-pair,
.both-mode .english-block{
  border-bottom-color:#c7ddff!important;
}
.speak-word-button,
.news-view .speak-word-button{
  border-color:#d6d9de!important;
  color:#6b7280!important;
  background:#fff!important;
}
.speak-word-button:hover,
.news-view .speak-word-button:hover{
  border-color:#9ca3af!important;
  color:#374151!important;
  background:#f6f7f8!important;
}
.art-wrap,
.placeholder-art{
  background:linear-gradient(135deg,#dbeafe,#e0f2fe 55%,#eef2ff)!important;
}
.placeholder-art{
  color:#1d4ed8!important;
}
.sns-avatar{
  background:linear-gradient(135deg,#2563eb,#38bdf8)!important;
  box-shadow:0 8px 18px rgba(37,99,235,.18)!important;
}
.sns-avatar-mika{
  background:linear-gradient(135deg,#2563eb,#38bdf8)!important;
}
.sns-avatar-taro{
  background:linear-gradient(135deg,#0f766e,#38bdf8)!important;
}
.sns-avatar-lina{
  background:linear-gradient(135deg,#4f46e5,#60a5fa)!important;
}
.sns-avatar-ken{
  background:linear-gradient(135deg,#0369a1,#22c55e)!important;
}
.sns-card{
  border-color:#c7ddff!important;
  box-shadow:0 10px 24px rgba(37,99,235,.06)!important;
}
.sns-comment{
  background:#f8fbff!important;
}
.sns-comment::before{
  border-left-color:#c7ddff!important;
  border-bottom-color:#c7ddff!important;
}


/* Soften the blue sweep: keep structure blue, restore content accents. */
.hub-page .hub-hero,
.contents-page .contents-hero,
.news-page .news-hero,
.hero,
.story-head{
  background:rgba(255,255,255,.94)!important;
  border-color:#dbeafe!important;
  box-shadow:0 18px 45px rgba(37,99,235,.07)!important;
}
.reader-card,
.story-card,
.content-item-card,
.news-card-item{
  background:rgba(255,255,255,.94)!important;
}
.content-item-card .content-type-pill{
  background:#f1f5f9!important;
  border-color:#dbe3ef!important;
  color:#334155!important;
}
.content-item-card .mini-genre:not(.content-type-pill),
.story-card .mini-genre,
.story-list-btn .mini-genre{
  background:#fff0f6!important;
  border-color:#ffd5e7!important;
  color:#b83b72!important;
}
.news-card-item .news-pill,
.news-card-item .mini-genre.news-pill{
  background:#e8f3ff!important;
  border-color:#b8dcff!important;
  color:#155eac!important;
}
.chips span:not(.level-badge){
  background:#f8f5ff!important;
  border-color:#e6ddff!important;
  color:#6549aa!important;
}
.fictional-news-notice,
.fictional-content-notice{
  background:#f8fbff!important;
  border-color:#dbeafe!important;
  color:#486879!important;
}
.sns-avatar-mika{
  background:linear-gradient(135deg,#ec4899,#f97316)!important;
  box-shadow:0 8px 18px rgba(236,72,153,.18)!important;
}
.sns-avatar-taro{
  background:linear-gradient(135deg,#2563eb,#06b6d4)!important;
  box-shadow:0 8px 18px rgba(37,99,235,.18)!important;
}
.sns-avatar-lina{
  background:linear-gradient(135deg,#8b5cf6,#ec4899)!important;
  box-shadow:0 8px 18px rgba(139,92,246,.18)!important;
}
.sns-avatar-ken{
  background:linear-gradient(135deg,#0f766e,#22c55e)!important;
  box-shadow:0 8px 18px rgba(15,118,110,.18)!important;
}
.sns-card{
  background:#fff!important;
}
.sns-comment{
  background:#f8fafc!important;
}
.mini-genre.recent-genre{
  background:#fff0f6!important;
  border-color:#ffd5e7!important;
  color:#b83b72!important;
}
.content-card .mini-genre{
  background:initial;
}
.content-card.novel-card .mini-genre{
  background:#fff0f6!important;
  border-color:#ffd5e7!important;
  color:#b83b72!important;
}
.content-card.news-card .mini-genre{
  background:#e8f3ff!important;
  border-color:#b8dcff!important;
  color:#155eac!important;
}


/* Content card type tags: colorful primary type, neutral secondary genre. */
.content-item-card .content-type-pill{
  font-weight:900!important;
}
.content-item-card .mini-genre:not(.content-type-pill){
  background:#f8fafc!important;
  border-color:#e2e8f0!important;
  color:#64748b!important;
}
.content-item-card[data-type="Short Stories"] .content-type-pill{
  background:#fff0f6!important;
  border-color:#ffd5e7!important;
  color:#b83b72!important;
}
.content-item-card[data-type="Fictional News"] .content-type-pill{
  background:#e8f3ff!important;
  border-color:#b8dcff!important;
  color:#155eac!important;
}
.content-item-card[data-type="Product Page"] .content-type-pill{
  background:#ecfdf5!important;
  border-color:#a7f3d0!important;
  color:#047857!important;
}
.content-item-card[data-type="SNS"] .content-type-pill{
  background:#fff7ed!important;
  border-color:#fed7aa!important;
  color:#c2410c!important;
}
.content-item-card[data-type="Email"] .content-type-pill{
  background:#f5f3ff!important;
  border-color:#ddd6fe!important;
  color:#6d28d9!important;
}
.content-item-card[data-type="Interview"] .content-type-pill{
  background:#ecfeff!important;
  border-color:#a5f3fc!important;
  color:#0e7490!important;
}
.content-item-card[data-type="Essay"] .content-type-pill{
  background:#fefce8!important;
  border-color:#fde68a!important;
  color:#a16207!important;
}
.content-item-card[data-type="Science"] .content-type-pill{
  background:#eef2ff!important;
  border-color:#c7d2fe!important;
  color:#4338ca!important;
}
.content-item-card[data-type="Manual"] .content-type-pill,
.content-item-card[data-type="FAQ"] .content-type-pill{
  background:#f1f5f9!important;
  border-color:#cbd5e1!important;
  color:#334155!important;
}
.content-item-card[data-type="Review"] .content-type-pill{
  background:#fdf2f8!important;
  border-color:#fbcfe8!important;
  color:#be185d!important;
}
.content-item-card[data-type="Notice"] .content-type-pill{
  background:#eff6ff!important;
  border-color:#bfdbfe!important;
  color:#1d4ed8!important;
}
.content-item-card[data-type="Recipe"] .content-type-pill{
  background:#fef2f2!important;
  border-color:#fecaca!important;
  color:#b91c1c!important;
}
.content-item-card[data-type="Business English"] .content-type-pill{
  background:#f0f9ff!important;
  border-color:#bae6fd!important;
  color:#0369a1!important;
}
.content-item-card[data-type="Travel Guide"] .content-type-pill{
  background:#f0fdf4!important;
  border-color:#bbf7d0!important;
  color:#15803d!important;
}
.content-item-card[data-type="Biography"] .content-type-pill{
  background:#faf5ff!important;
  border-color:#e9d5ff!important;
  color:#7e22ce!important;
}
.content-item-card[data-type="History"] .content-type-pill{
  background:#fffbeb!important;
  border-color:#fde68a!important;
  color:#92400e!important;
}
.content-item-card[data-type="Blog"] .content-type-pill{
  background:#fdf4ff!important;
  border-color:#f5d0fe!important;
  color:#a21caf!important;
}


/* Calm blue text color and unified reader mode buttons. */
:root{
  --rose:#1E4F68!important;
  --pink:#1E4F68!important;
  --lav:#5BA8D6!important;
  --blue:#5BA8D6!important;
}
.brand,
.eyebrow,
.crumb,
.search-box span,
.expr-list strong,
th,
.inline-study-note b,
.english-local-help>b,
.story-index .archive-tools span,
.archive-tools span,
.hub-page .eyebrow,
.contents-page .eyebrow,
.news-page .eyebrow,
.news-page .crumb,
.news-view .crumb{
  color:#1E4F68!important;
}
.site-header .brand,
.hub-page .brand,
.news-page .brand,
.contents-page .brand{
  color:#1E4F68!important;
}
.site-header .brand span,
.hub-page .brand span,
.news-page .brand span,
.contents-page .brand span,
.brand span{
  background:linear-gradient(135deg,#1E4F68,#5BA8D6)!important;
  box-shadow:0 0 0 6px rgba(30,79,104,.12)!important;
}
.site-header .site-nav a:hover,
.site-header .site-nav-link:hover,
.site-header .site-nav-link.active,
.hub-page .site-nav a:hover,
.news-page .site-nav a:hover,
.contents-page .site-nav a:hover{
  color:#1E4F68!important;
  border-color:#b9d8e8!important;
  background:#f1f8fc!important;
}
.archive-filter-toggle,
.archive-filter-toggle:hover{
  color:#1E4F68!important;
}
.mode-switch button,
.news-view .mode-switch button{
  border-color:#c9dfea!important;
  background:#fff!important;
  color:#263847!important;
}
.mode-switch button:hover,
.news-view .mode-switch button:hover{
  border-color:#7fb3cc!important;
  background:#f1f8fc!important;
  color:#1E4F68!important;
  box-shadow:none!important;
}
.mode-switch button.active,
.news-view .mode-switch button.active{
  background:#1E4F68!important;
  border-color:#1E4F68!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(30,79,104,.16)!important;
}
.quick-help-setting,
.news-view .quick-help-setting{
  border-color:#b9d8e8!important;
  background:#f1f8fc!important;
  color:#1E4F68!important;
}
.quick-help-checkbox:checked+.toggle-switch,
.news-view .quick-help-checkbox:checked+.toggle-switch{
  background:linear-gradient(135deg,#1E4F68,#5BA8D6)!important;
}
.content-item-card[data-type="Fictional News"] .content-type-pill,
.news-card-item .news-pill,
.news-card-item .mini-genre.news-pill{
  color:#1E4F68!important;
}
.news-view .expr-list strong,
.news-view th,
.news-view .english-local-help>b,
.news-view .inline-study-note b{
  color:#1E4F68!important;
}


/* Final balance: calm text, original blue UI, consistent notices. */
:root{
  --rose:#1E4F68!important;
  --pink:#2563eb!important;
  --lav:#38bdf8!important;
  --blue:#38bdf8!important;
}
.brand,
.eyebrow,
.crumb,
.search-box span,
.expr-list strong,
th,
.inline-study-note b,
.english-local-help>b,
.story-index .archive-tools span,
.archive-tools span,
.hub-page .eyebrow,
.contents-page .eyebrow,
.news-page .eyebrow,
.news-page .crumb,
.news-view .crumb,
.archive-filter-toggle{
  color:#1E4F68!important;
}
.site-header .brand,
.hub-page .brand,
.news-page .brand,
.contents-page .brand{
  color:#1E4F68!important;
}
.site-header .brand span,
.hub-page .brand span,
.news-page .brand span,
.contents-page .brand span,
.brand span{
  background:linear-gradient(135deg,#2563eb,#38bdf8)!important;
  box-shadow:0 0 0 6px rgba(37,99,235,.12)!important;
}
.site-header .site-nav a,
.hub-page .site-nav a,
.news-page .site-nav a,
.contents-page .site-nav a{
  color:#465a75!important;
}
.site-header .site-nav a:hover,
.site-header .site-nav-link:hover,
.site-header .site-nav-link.active,
.hub-page .site-nav a:hover,
.news-page .site-nav a:hover,
.contents-page .site-nav a:hover{
  color:#1E4F68!important;
  border-color:#b8dcff!important;
  background:#f2f8ff!important;
}
.hub-page .hub-hero,
.contents-page .contents-hero,
.news-page .news-hero,
.hero,
.story-head{
  background:rgba(255,255,255,.94)!important;
  border-color:#dbeafe!important;
  box-shadow:0 18px 45px rgba(37,99,235,.07)!important;
}
.mode-switch button.active,
.news-view .mode-switch button.active,
.start-btn,
.mobile-library button{
  background:#2563eb!important;
  border-color:#2563eb!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(37,99,235,.18)!important;
}
.card-link{
  background:linear-gradient(135deg,#2563eb,#38bdf8)!important;
  color:#fff!important;
}
.mode-switch button:hover,
.news-view .mode-switch button:hover{
  border-color:#7fb3cc!important;
  background:#f1f8fc!important;
  color:#1E4F68!important;
  box-shadow:none!important;
}
.quick-help-checkbox:checked+.toggle-switch,
.news-view .quick-help-checkbox:checked+.toggle-switch{
  background:linear-gradient(135deg,#2563eb,#38bdf8)!important;
}
.fictional-news-notice,
.fictional-content-notice{
  border-color:#dbeafe!important;
  background:#f8fbff!important;
  color:#486879!important;
}
.fictional-news-notice strong,
.fictional-content-notice strong{
  color:#1E4F68!important;
}
.fictional-news-notice span,
.fictional-content-notice span{
  color:#486879!important;
}


/* Home hero breathing room and clearer header hierarchy. */
.hub-page .bridge-hero h1{
  margin-bottom:16px!important;
}
.hub-page .bridge-hero p:not(.eyebrow){
  margin-top:0!important;
  line-height:1.9!important;
}
.site-header .brand,
.hub-page .site-header .brand,
.news-page .site-header .brand,
.contents-page .site-header .brand{
  color:#123b52!important;
}
.site-header .brand b{
  font-weight:950!important;
  letter-spacing:.03em;
}
.site-header .site-nav a,
.hub-page .site-nav a,
.news-page .site-nav a,
.contents-page .site-nav a{
  color:#6b7785!important;
  font-weight:800!important;
}
.site-header .site-nav a:hover,
.site-header .site-nav-link:hover,
.site-header .site-nav-link.active,
.hub-page .site-nav a:hover,
.news-page .site-nav a:hover,
.contents-page .site-nav a:hover{
  color:#1E4F68!important;
  border-color:#c7ddeb!important;
  background:#f5fbff!important;
}
.content-item-card p,
.story-card p,
.news-card-item p{
  color:#5c6b78!important;
  line-height:1.65!important;
  margin-top:8px!important;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}


/* Home title scale tune: match the header brand, soften recent heading. */
.hub-page .bridge-hero h1{
  font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important;
  font-size:clamp(30px,3.2vw,44px)!important;
  font-weight:950!important;
  letter-spacing:.03em!important;
  line-height:1.12!important;
}
.home-content-preview .archive-head h2{
  font-size:clamp(22px,2.2vw,26px)!important;
  letter-spacing:-.015em!important;
  line-height:1.18!important;
}
@media(max-width:620px){
  .hub-page .bridge-hero h1{
    font-size:30px!important;
  }
  .home-content-preview .archive-head h2{
    font-size:22px!important;
  }
}


/* Email and Interview content formats. */
.email-thread,
.interview-block{
  display:grid;
  gap:16px;
}
.email-message{
  border:1px solid #dbeafe;
  border-radius:18px;
  background:#f8fbff;
  padding:18px;
}
.email-reply{
  margin-left:clamp(18px,5vw,54px);
  background:#fff;
}
.interview-block p{
  border-bottom:1px solid #edf3f8;
  padding-bottom:12px;
}
.interview-block p:last-child{
  border-bottom:0;
  padding-bottom:0;
}
.email-message b,
.interview-block b{
  color:#1E4F68;
}
@media(max-width:620px){
  .email-reply{
    margin-left:0;
  }
}


/* Interview layout alignment and nested quick-help support. */
.interview-block p{
  display:grid;
  grid-template-columns:minmax(120px,max-content) minmax(0,1fr);
  gap:8px 14px;
  align-items:start;
}
.interview-block p>b{
  white-space:nowrap;
}
.email-message .english-help-item,
.interview-block .english-help-item{
  margin:0 0 1em;
}
.email-message .english-help-item>p,
.interview-block .english-help-item>p{
  margin:0;
}
@media(max-width:620px){
  .interview-block p{
    grid-template-columns:1fr;
    gap:2px;
  }
}


/* Schedule page type tags and quieter title links. */
.schedule-table a{
  color:#22313f!important;
  font-weight:400!important;
  text-decoration:none!important;
}
.schedule-table a:hover{
  color:#1E4F68!important;
  text-decoration:none!important;
}
.schedule-type-pill{
  display:inline-flex;
  align-items:center;
  width:max-content;
  border-radius:999px;
  border:1px solid #dbe3ef;
  background:#f8fafc;
  color:#475569;
  padding:3px 9px;
  font-size:12px;
  font-weight:400;
  line-height:1.35;
  white-space:nowrap;
}
.schedule-type-pill[data-type="Short Stories"]{
  background:#fff0f6;
  border-color:#ffd5e7;
  color:#b83270;
}
.schedule-type-pill[data-type="Fictional News"]{
  background:#eaf6ff;
  border-color:#bde3ff;
  color:#1E4F68;
}
.schedule-type-pill[data-type="Product Page"]{
  background:#fff7ed;
  border-color:#fed7aa;
  color:#9a3412;
}
.schedule-type-pill[data-type="SNS"]{
  background:#f5f3ff;
  border-color:#ddd6fe;
  color:#6d28d9;
}
.schedule-type-pill[data-type="Email"]{
  background:#ecfdf5;
  border-color:#bbf7d0;
  color:#047857;
}
.schedule-type-pill[data-type="Interview"]{
  background:#eef2ff;
  border-color:#c7d2fe;
  color:#4338ca;
}

.schedule-type-pill[data-type="Manual"],
.schedule-type-pill[data-type="FAQ"]{
  background:#f1f5f9;
  border-color:#cbd5e1;
  color:#334155;
}
.schedule-type-pill[data-type="Review"]{
  background:#fdf2f8;
  border-color:#fbcfe8;
  color:#be185d;
}


/* Remove divider lines from Interview dialogue. */
.interview-block p{
  border-bottom:0!important;
  padding-bottom:0!important;
}


/* Match Interview spacing to normal articles and flip Email message colors. */
.interview-block{
  gap:0!important;
}
.interview-block p{
  margin:0 0 1em!important;
  border-bottom:0!important;
  padding-bottom:0!important;
}
.interview-block p:last-child{
  margin-bottom:0!important;
}
.email-message{
  background:#fff!important;
}
.email-reply{
  background:#f8fbff!important;
}


/* Tighten Interview dialogue spacing to match the reading rhythm of normal articles. */
.interview-block p{
  margin:0 0 .45em!important;
  line-height:1.7!important;
}
.interview-block .english-help-item{
  margin:0 0 .45em!important;
}
.interview-block .english-help-item>p{
  margin:0!important;
}
.interview-block p:last-child,
.interview-block .english-help-item:last-child{
  margin-bottom:0!important;
}


/* Match Interview dialogue spacing to normal story/news paragraphs. */
.interview-block p{
  margin:0 0 1em!important;
  line-height:1.75!important;
}
.interview-block .english-help-item{
  margin:0!important;
}
.interview-block .english-help-item>p{
  margin:0 0 1em!important;
}
.interview-block p:last-child,
.interview-block .english-help-item:last-child>p{
  margin-bottom:0!important;
}


/* Unified detail-page meta row, matched to content cards. */
.story-meta-row{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
  margin:0 0 12px;
}
.detail-type-pill,
.detail-genre-pill{
  display:inline-flex;
  align-items:center;
  width:max-content;
  border-radius:999px;
  border:1px solid #dbe3ef;
  padding:2px 8px;
  font-size:11px;
  line-height:1.35;
  white-space:nowrap;
}
.detail-type-pill{
  font-weight:900;
}
.detail-genre-pill{
  background:#f8fafc;
  border-color:#e2e8f0;
  color:#64748b;
  font-weight:500;
}
.detail-meta-separator,
.detail-meta-plain{
  color:#64748b;
  font-size:12px;
  font-weight:500;
}
.story-meta-row .level-badge{
  font-size:12px;
  padding:4px 10px;
}
.detail-type-pill[data-type="Short Stories"]{
  background:#fff0f6;
  border-color:#ffd5e7;
  color:#b83b72;
}
.detail-type-pill[data-type="Fictional News"]{
  background:#e8f3ff;
  border-color:#b8dcff;
  color:#155eac;
}
.detail-type-pill[data-type="Product Page"]{
  background:#ecfdf5;
  border-color:#a7f3d0;
  color:#047857;
}
.detail-type-pill[data-type="SNS"]{
  background:#fff7ed;
  border-color:#fed7aa;
  color:#c2410c;
}
.detail-type-pill[data-type="Email"]{
  background:#f5f3ff;
  border-color:#ddd6fe;
  color:#6d28d9;
}
.detail-type-pill[data-type="Interview"]{
  background:#ecfeff;
  border-color:#a5f3fc;
  color:#0e7490;
}


/* Align all pills in the detail-page meta row. */
.story-meta-row{
  gap:8px!important;
  line-height:1!important;
}
.story-meta-row .detail-type-pill,
.story-meta-row .detail-genre-pill,
.story-meta-row .level-badge{
  height:24px!important;
  min-height:24px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 10px!important;
  border-radius:999px!important;
  font-size:12px!important;
  line-height:1!important;
  box-sizing:border-box!important;
}
.story-meta-row .detail-type-pill,
.story-meta-row .level-badge{
  font-weight:900!important;
}
.story-meta-row .detail-genre-pill{
  font-weight:500!important;
}
.story-meta-row .detail-meta-separator,
.story-meta-row .detail-meta-plain{
  display:inline-flex!important;
  align-items:center!important;
  height:24px!important;
  line-height:1!important;
}


/* Give the detail meta row a little breathing room before paragraph help. */
.story-meta-row{
  margin-bottom:16px!important;
}


/* Match the space after the meta row to the summary-to-meta spacing. */
.story-meta-row{
  margin-bottom:22px!important;
}

/* Unified content type pill colors */
.content-item-card[data-type="Short Stories"] .content-type-pill,
.schedule-type-pill[data-type="Short Stories"],
.detail-type-pill[data-type="Short Stories"]{
  background:#fff0f6!important;
  border-color:#ffd5e7!important;
  color:#b83b72!important;
}
.content-item-card[data-type="Fictional News"] .content-type-pill,
.schedule-type-pill[data-type="Fictional News"],
.detail-type-pill[data-type="Fictional News"]{
  background:#e8f3ff!important;
  border-color:#b8dcff!important;
  color:#155eac!important;
}
.content-item-card[data-type="Product Page"] .content-type-pill,
.schedule-type-pill[data-type="Product Page"],
.detail-type-pill[data-type="Product Page"]{
  background:#ecfdf5!important;
  border-color:#a7f3d0!important;
  color:#047857!important;
}
.content-item-card[data-type="SNS"] .content-type-pill,
.schedule-type-pill[data-type="SNS"],
.detail-type-pill[data-type="SNS"]{
  background:#fff7ed!important;
  border-color:#fed7aa!important;
  color:#c2410c!important;
}
.content-item-card[data-type="Email"] .content-type-pill,
.schedule-type-pill[data-type="Email"],
.detail-type-pill[data-type="Email"]{
  background:#f5f3ff!important;
  border-color:#ddd6fe!important;
  color:#6d28d9!important;
}
.content-item-card[data-type="Interview"] .content-type-pill,
.schedule-type-pill[data-type="Interview"],
.detail-type-pill[data-type="Interview"]{
  background:#ecfeff!important;
  border-color:#a5f3fc!important;
  color:#0e7490!important;
}
.content-item-card[data-type="Essay"] .content-type-pill,
.schedule-type-pill[data-type="Essay"],
.detail-type-pill[data-type="Essay"]{
  background:#fefce8!important;
  border-color:#fde68a!important;
  color:#a16207!important;
}
.content-item-card[data-type="Science"] .content-type-pill,
.schedule-type-pill[data-type="Science"],
.detail-type-pill[data-type="Science"]{
  background:#eef2ff!important;
  border-color:#c7d2fe!important;
  color:#4338ca!important;
}
.content-item-card[data-type="Manual"] .content-type-pill,
.schedule-type-pill[data-type="Manual"],
.detail-type-pill[data-type="Manual"]{
  background:#f7fee7!important;
  border-color:#d9f99d!important;
  color:#4d7c0f!important;
}
.content-item-card[data-type="FAQ"] .content-type-pill,
.schedule-type-pill[data-type="FAQ"],
.detail-type-pill[data-type="FAQ"]{
  background:#f0f9ff!important;
  border-color:#bae6fd!important;
  color:#0369a1!important;
}
.content-item-card[data-type="Review"] .content-type-pill,
.schedule-type-pill[data-type="Review"],
.detail-type-pill[data-type="Review"]{
  background:#fdf2f8!important;
  border-color:#fbcfe8!important;
  color:#be185d!important;
}
.content-item-card[data-type="Notice"] .content-type-pill,
.schedule-type-pill[data-type="Notice"],
.detail-type-pill[data-type="Notice"]{
  background:#eff6ff!important;
  border-color:#bfdbfe!important;
  color:#1d4ed8!important;
}
.content-item-card[data-type="Recipe"] .content-type-pill,
.schedule-type-pill[data-type="Recipe"],
.detail-type-pill[data-type="Recipe"]{
  background:#fef2f2!important;
  border-color:#fecaca!important;
  color:#b91c1c!important;
}
.content-item-card[data-type="Business English"] .content-type-pill,
.schedule-type-pill[data-type="Business English"],
.detail-type-pill[data-type="Business English"]{
  background:#e0f2fe!important;
  border-color:#7dd3fc!important;
  color:#075985!important;
}
.content-item-card[data-type="Travel Guide"] .content-type-pill,
.schedule-type-pill[data-type="Travel Guide"],
.detail-type-pill[data-type="Travel Guide"]{
  background:#f0fdf4!important;
  border-color:#bbf7d0!important;
  color:#15803d!important;
}
.content-item-card[data-type="Biography"] .content-type-pill,
.schedule-type-pill[data-type="Biography"],
.detail-type-pill[data-type="Biography"]{
  background:#faf5ff!important;
  border-color:#e9d5ff!important;
  color:#7e22ce!important;
}
.content-item-card[data-type="History"] .content-type-pill,
.schedule-type-pill[data-type="History"],
.detail-type-pill[data-type="History"]{
  background:#fffbeb!important;
  border-color:#fde68a!important;
  color:#92400e!important;
}
.content-item-card[data-type="Blog"] .content-type-pill,
.schedule-type-pill[data-type="Blog"],
.detail-type-pill[data-type="Blog"]{
  background:#fdf4ff!important;
  border-color:#f5d0fe!important;
  color:#a21caf!important;
}
/* End unified content type pill colors */

/* Unified level badge colors */
.level-1{
  background:#ecfdf5!important;
  color:#047857!important;
  border-color:#bbf7d0!important;
}
.level-2{
  background:#e8f3ff!important;
  color:#155eac!important;
  border-color:#b8dcff!important;
}
.level-3{
  background:#fefce8!important;
  color:#a16207!important;
  border-color:#fde68a!important;
}
.level-4{
  background:#fff7ed!important;
  color:#c2410c!important;
  border-color:#fed7aa!important;
}
.level-5{
  background:#ffe8ef!important;
  color:#b3264f!important;
  border-color:#ffb9cc!important;
}
/* End unified level badge colors */

/* Unified meta pill typography */
.mini-genre,
.content-type-pill,
.schedule-type-pill,
.detail-type-pill,
.detail-genre-pill,
.level-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:max-content!important;
  border-radius:999px!important;
  border-width:1px!important;
  border-style:solid!important;
  padding:3px 9px!important;
  font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.35!important;
  letter-spacing:0!important;
  text-transform:none!important;
  white-space:nowrap!important;
}
.content-item-card .mini-genre,
.story-card .mini-genre,
.news-card-item .mini-genre,
.story-list-btn .mini-genre,
.recent-genre{
  margin-right:6px!important;
  margin-bottom:6px!important;
}
.content-item-card .mini-genre:not(.content-type-pill),
.detail-genre-pill{
  background:#f8fafc!important;
  border-color:#e2e8f0!important;
  color:#64748b!important;
}
.story-stats,
.recent-meta,
.chips,
.story-meta-row{
  align-items:center!important;
}
.story-stats span:not(.level-badge),
.recent-meta span:not(.level-badge),
.detail-meta-plain,
.detail-meta-separator{
  font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.35!important;
  color:#64748b!important;
}
/* End unified meta pill typography */

/* Strict metadata typography alignment */
.story-meta-row .detail-type-pill,
.story-meta-row .detail-genre-pill,
.story-meta-row .level-badge,
.content-item-card .content-type-pill,
.content-item-card .mini-genre:not(.content-type-pill),
.content-item-card .level-badge,
.story-card .mini-genre,
.story-card .level-badge,
.news-card-item .mini-genre,
.news-card-item .level-badge,
.recent-meta .level-badge,
.schedule-type-pill,
.schedule-table .level-badge{
  font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.35!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.story-meta-row .detail-type-pill,
.story-meta-row .detail-genre-pill,
.story-meta-row .level-badge{
  height:24px!important;
  min-height:24px!important;
  padding:0 10px!important;
}
/* End strict metadata typography alignment */

/* Aligned content card layout */
.content-item-card>div:last-child{
  display:grid!important;
  grid-template-columns:max-content max-content minmax(0,1fr)!important;
  grid-template-rows:auto minmax(58px,auto) minmax(54px,auto) auto!important;
  column-gap:6px!important;
  row-gap:8px!important;
  align-content:stretch!important;
  height:100%!important;
}
.content-item-card .content-type-pill{
  grid-column:1!important;
  grid-row:1!important;
  margin:0!important;
}
.content-item-card .mini-genre:not(.content-type-pill){
  grid-column:2!important;
  grid-row:1!important;
  margin:0!important;
}
.content-item-card h3{
  grid-column:1/-1!important;
  grid-row:2!important;
  align-self:start!important;
  margin:2px 0 0!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.content-item-card p{
  grid-column:1/-1!important;
  grid-row:3!important;
  align-self:start!important;
  margin:0!important;
  min-height:calc(1.65em * 2)!important;
}
.content-item-card .story-stats{
  grid-column:1/-1!important;
  grid-row:4!important;
  align-self:end!important;
  margin-top:auto!important;
  padding-top:2px!important;
  min-height:26px!important;
}
@media(max-width:620px){
  .content-item-card>div:last-child{
    grid-template-rows:auto minmax(48px,auto) minmax(50px,auto) auto!important;
  }
}
/* End aligned content card layout */
