


.ch-left{
  display:flex;
  align-items:flex-start;
  gap:14px;
  min-width:0;
}
.eyebrow{
  font-family:"JetBrains Mono",monospace;
  font-size:10px;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:var(--ink-soft);
}
.script-sample[dir="rtl"]{
  direction:rtl;
  text-align:right;
  unicode-bidi:isolate;
}
@media(max-width:760px){
  .ch-left{
  display:flex;
  align-items:flex-start;
  gap:14px;
  min-width:0;
}
.eyebrow{
  font-family:"JetBrains Mono",monospace;
  font-size:10px;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:var(--ink-soft);
}
.script-sample[dir="rtl"]{
  direction:rtl;
  text-align:right;
  unicode-bidi:isolate;
}


}


.script-showcase,.explorer,.dw-script-sample-note{margin-left:0!important;margin-right:0!important;max-width:100%!important;width:100%!important}
.dw-script-sample-note{box-sizing:border-box;overflow-wrap:anywhere}
@media (max-width:900px){.script-showcase{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.script-showcase{grid-template-columns:1fr}}

/* RC8 RESTORED LANGUAGE-SPECIFIC COMPONENT RULES */
.script-showcase .script-card{min-width:0;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 6px 16px rgba(43,33,56,.04)}
.script-showcase .sample{font-size:30px;line-height:1.35;margin:12px 0 10px;overflow-wrap:anywhere}
.stat-card .stat-meta {
  margin-top: 10px;
  font-family: "JetBrains Mono", monospace;
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--coral);
}
.native-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 28px; position: relative; z-index: 1; }
.native-country { font-family: "Noto Sans JP", sans-serif; font-weight: 600; font-size: clamp(44px, 6vw, 68px); line-height: 1; }
.native-roman { font-family: "JetBrains Mono", monospace; font-size: 12px; color: var(--coral); margin-top: 8px; letter-spacing: .04em; }
.native-copy { max-width: 520px; color: var(--ink-soft); font-size: 13.5px; margin-top: 12px; }
.language-name-card { align-self: center; border-left: 1px solid var(--line); padding-left: 26px; }
.language-name-card .native { font-family: "Noto Sans JP", sans-serif; font-weight: 600; font-size: 28px; }
.language-name-card .en { font-family: "Fraunces", serif; font-size: 17px; margin-top: 3px; }
.language-name-card .meta { font-family: "JetBrains Mono", monospace; font-size: 10.5px; color: var(--ink-soft); margin-top: 6px; text-transform: uppercase; letter-spacing: .05em; }
.script-card { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 20px; }
.script-card .tag { font-family: "JetBrains Mono", monospace; font-size: 10px; text-transform: uppercase; letter-spacing: .05em; color: var(--ink-soft); }
.script-card .sample { font-family: "Noto Sans JP", sans-serif; font-weight: 600; font-size: 32px; margin: 14px 0 8px; }
.script-card h3 { font-family: "Fraunces", serif; font-size: 17px; }
.script-card p { font-size: 12px; color: var(--ink-soft); margin-top: 5px; }
.coverage-badge { display: inline-block; margin-top: 11px; padding: 4px 8px; border-radius: 999px; background: var(--teal-soft); color: var(--teal); font-family: "JetBrains Mono", monospace; font-size: 9.5px; }
.coverage-badge.sample-only { background: var(--gold-soft); color: #A3670C; }
.direction-board { margin:0 0 20px; max-width: 900px; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.direction-card { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 20px; }
.direction-label { font-family: "JetBrains Mono", monospace; font-size: 10px; text-transform: uppercase; letter-spacing: .05em; color: var(--ink-soft); }
.direction-title { font-family: "Fraunces", serif; font-size: 16px; font-weight: 600; margin: 6px 0 12px; }
.direction-demo { border: 1px solid var(--line); background: #FCFAF6; border-radius: 12px; padding: 16px; min-height: 110px; }
.horizontal-demo { display: flex; align-items: center; gap: 12px; }
.horizontal-demo .jp-line { font-family: "Noto Sans JP", sans-serif; font-weight: 600; font-size: 22px; white-space: nowrap; }
.vertical-demo { display: flex; flex-direction: row-reverse; align-items: stretch; justify-content: center; gap: 20px; height: 130px; }
.vertical-copy { writing-mode: vertical-rl; text-orientation: upright; font-family: "Noto Sans JP", sans-serif; font-weight: 500; font-size: 19px; letter-spacing: .06em; }
.direction-badge { display: inline-flex; align-items: center; gap: 6px; padding: 5px 9px; border-radius: 999px; background: var(--coral-soft); color: #B94A37; font-family: "JetBrains Mono", monospace; font-size: 9.5px; margin-top: 10px; }
.direction-foot { font-size: 11px; color: var(--ink-soft); margin-top: 10px; line-height: 1.5; }
.kana-grid { display: grid; grid-template-columns: repeat(10, 1fr); padding: 12px; }
.kanji-panel { padding: 22px; }
.kanji-cloud { display: flex; flex-wrap: wrap; gap: 9px; margin: 16px 0; }
.kanji-cloud span { width: 52px; height: 52px; border: 1px solid var(--line); border-radius: 11px; display: grid; place-items: center; font-family: "Noto Sans JP", sans-serif; font-size: 21px; background: #FCFAF6; }
.vitality { margin:0 0 20px; max-width: 900px; display: grid; grid-template-columns: .78fr 1.22fr; gap: 14px; }
.vitality-big { background: var(--ink); color: #fff; border-radius: 18px; padding: 24px; }
.vitality-big .n { font-family: "Fraunces", serif; font-size: 56px; line-height: .9; }
.vitality-big h3 { font-family: "Fraunces", serif; font-size: 17px; margin-top: 12px; }
.vitality-big p { font-size: 11.5px; color: #D8D0E0; margin-top: 7px; }
.risk-list { background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 18px; }
.risk-row { display: grid; grid-template-columns: 140px 1fr; gap: 14px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.risk-row:last-child { border-bottom: none; }
.risk-level { font-family: "JetBrains Mono", monospace; font-size: 9.5px; text-transform: uppercase; letter-spacing: .04em; }
.risk-level.critical { color: #B63C2B; }
.risk-level.severe { color: #B86E0C; }
.risk-level.definite { color: #876A13; }
.risk-langs { font-size: 12.5px; font-weight: 600; }
.risk-langs small { display: block; color: var(--ink-soft); font-weight: 400; margin-top: 3px; }
@media (max-width: 850px){.native-grid, .vitality, .direction-board { grid-template-columns: 1fr; }
.language-name-card { border-left: 0; border-top: 1px solid var(--line); padding: 18px 0 0; }
.kana-grid { grid-template-columns: repeat(5, 1fr); }}
@media (max-width: 640px){.native-hero, .script-showcase, .direction-board, .explorer, .vitality { margin-left:0; margin-right:0; }
.native-country { font-size: 44px; }
.risk-row { grid-template-columns: 1fr; gap: 4px; }}
.language-reach-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.reach-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}
.reach-kicker{font-family:"JetBrains Mono",monospace;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--coral);margin-bottom:8px}
.reach-value{font-family:"Fraunces",serif;font-size:28px;line-height:1.05;font-weight:600;color:var(--ink)}
.reach-label{font-size:13px;font-weight:600;margin-top:6px}
.reach-note{font-size:12px;line-height:1.55;color:var(--ink-soft);margin-top:7px}
.split-bar{height:14px;border-radius:999px;overflow:hidden;background:var(--line);display:flex;margin:16px 0 9px}
.split-overseas{width:55.8%;background:var(--coral)}
.split-japan{width:44.2%;background:var(--violet)}
.split-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--ink-soft)}
.split-legend span{display:flex;align-items:center;gap:6px}
.split-legend i{display:inline-block;width:9px;height:9px;border-radius:50%}
.split-legend .overseas i{background:var(--coral)}
.split-legend .japan i{background:var(--violet)}
.survey-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:14px;margin-top:18px}
.survey-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}
.jlpt-split-card{margin-top:14px}
.survey-card h3{font-family:"Fraunces",serif;font-size:18px;margin:0 0 8px}
.survey-big{font-family:"Fraunces",serif;font-size:32px;font-weight:600;line-height:1;color:var(--ink);margin:10px 0 5px}
.survey-caption{font-size:12.5px;color:var(--ink-soft);line-height:1.55}
.fact-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.fact-mini{border:1px solid var(--line);border-radius:13px;padding:14px;background:#fff}
.fact-mini strong{display:block;font-family:"Fraunces",serif;font-size:19px;margin-bottom:4px}
.fact-mini span{font-size:12px;line-height:1.5;color:var(--ink-soft)}
@media (max-width:760px){.language-reach-grid,.survey-grid,.fact-strip{grid-template-columns:1fr}}
.lang-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.lang-chip{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:12px;font-weight:600}
.script-card{border:1px solid var(--line);border-radius:14px;background:#fff;padding:16px}
.policy-note{border-left:3px solid var(--coral);background:var(--coral-soft);padding:12px 14px;border-radius:0 10px 10px 0;margin-top:14px;font-size:12.5px;line-height:1.6}
.landscape-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.landscape-card{border:1px solid var(--line);border-radius:14px;padding:15px;background:#fff}
.landscape-card strong{display:block;font-family:"Fraunces",serif;font-size:18px;margin-bottom:5px}
.landscape-card span{font-size:12px;color:var(--ink-soft);line-height:1.5}
@media (max-width:760px){.script-board,.landscape-grid{grid-template-columns:1fr}}













































@media (max-width: 850px){.native-grid, .vitality, .direction-board { grid-template-columns: 1fr; }
.language-name-card { border-left: 0; border-top: 1px solid var(--line); padding: 18px 0 0; }
.kana-grid { grid-template-columns: repeat(5, 1fr); }}
@media (max-width: 640px){.native-hero, .script-showcase, .direction-board, .explorer, .vitality { margin-left:0; margin-right:0; }
.native-country { font-size: 44px; }
.risk-row { grid-template-columns: 1fr; gap: 4px; }}
























@media (max-width:760px){.language-reach-grid,.survey-grid,.fact-strip{grid-template-columns:1fr}}

.lang-chip{overflow-wrap:anywhere;max-width:100%}


/* FROZEN V2 ADAPTIVE WRITING-SYSTEM COMPONENT */
.dw-writing-system-section .dw-character-explorer{margin-top:16px}
.dw-character-explorer .dw-script-panel{padding:16px}
.dw-script-panel-heading{font-family:"Fraunces",serif;font-size:17px;font-weight:600;margin:0 0 12px}
.dw-character-grid{display:grid;grid-template-columns:repeat(8,minmax(64px,1fr));gap:8px}
.dw-character-tile{min-width:0;border:1px solid var(--line);border-radius:12px;background:#FCFAF6;padding:10px 6px;text-align:center}
.dw-character-glyph{font-family:"Noto Sans JP",sans-serif;font-size:25px;font-weight:600;line-height:1.2;overflow-wrap:anywhere}
.dw-character-reading{font-family:"JetBrains Mono",monospace;font-size:10px;color:var(--ink-soft);margin-top:6px;line-height:1.2}
.dw-latin-compact{border:1px solid var(--line);border-radius:16px;background:var(--card);padding:18px;margin-top:16px}
.dw-latin-compact .tag{font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft)}
.dw-latin-sample{font-family:"Fraunces",serif;font-size:25px;font-weight:600;letter-spacing:.03em;margin:10px 0 2px}
@media(max-width:900px){.dw-character-grid{grid-template-columns:repeat(6,minmax(58px,1fr))}}
@media(max-width:640px){.dw-character-explorer .dw-script-panel{padding:12px}.dw-character-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.dw-character-tile{padding:9px 4px}.dw-character-glyph{font-size:22px}}
@media(max-width:390px){.dw-character-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Frozen V2 visual hard-gate fix: scope the writing-system explorer to Languages pages. */
body.vertical-languages .dw-script-explorer{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--card);margin-top:16px}
body.vertical-languages .dw-script-explorer .explorer-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:10px;border-bottom:1px solid var(--line);background:#FCFAF6}
body.vertical-languages .dw-script-explorer .explorer-tab{border:0;background:transparent;padding:9px 13px;border-radius:9px;font-family:'Inter',sans-serif;font-weight:600;font-size:12px;cursor:pointer;color:var(--ink-soft)}
body.vertical-languages .dw-script-explorer .explorer-tab.active{background:var(--ink);color:#fff}
body.vertical-languages .dw-script-explorer .explorer-note{display:flex;gap:10px;align-items:flex-start;margin:16px;padding:12px 14px;border-radius:12px;background:var(--warm,#F7F1E8);font-size:12px;line-height:1.55;color:var(--ink-soft)}
body.vertical-languages .dw-script-explorer .info-dot{display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:var(--ink);color:#fff;font:600 11px/1 'JetBrains Mono',monospace}
body.vertical-languages .dw-script-panel.explorer-hidden{display:none}
@media(max-width:480px){body.vertical-languages .dw-script-explorer .explorer-tab{flex:1 1 auto}}
