/* beindie tool — localisation planner */

.loc-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}

table.loc-table{min-width:600px}
table.loc-table td{vertical-align:middle;padding:9px 11px}
table.loc-table th{padding:11px 11px}
table.loc-table tr.is-off td{opacity:.42}
table.loc-table tr.is-source td{background:var(--shade)}

.loc-table .loc-name{font-weight:600;color:var(--ink);white-space:nowrap}
.loc-table .loc-src{font-family:var(--pixel);font-size:8px;letter-spacing:.06em;color:var(--muted);border:1px solid var(--line-strong);padding:2px 4px;margin-left:7px;vertical-align:middle}
.loc-table .loc-code{font-family:var(--pixel);font-size:9px;color:var(--muted);display:block;margin-top:3px;letter-spacing:.05em}
.loc-table .num{font-variant-numeric:tabular-nums;white-space:nowrap}
.loc-table input[type=number]{
  width:72px;padding:6px 7px;font-size:14px;
  font-variant-numeric:tabular-nums;text-align:right;
}
.loc-table input[type=checkbox]{
  appearance:none;width:20px;height:20px;margin:0;flex:none;
  border:2px solid var(--ink);background:var(--paper-3);cursor:pointer;display:grid;place-items:center;
}
.loc-table input[type=checkbox]:checked{background:var(--yellow)}
.loc-table input[type=checkbox]:checked::after{
  content:"";width:10px;height:6px;border:2px solid #141414;border-top:0;border-right:0;
  transform:rotate(-45deg) translate(1px,-2px);
}
.loc-table input[type=checkbox]:disabled{opacity:.5;cursor:default}

.loc-chart{width:100%;overflow-x:auto}
.loc-chart svg{width:100%;height:auto;min-width:420px;display:block}
.loc-chart .ax{stroke:var(--line-strong);stroke-width:1}
.loc-chart .grid{stroke:var(--line);stroke-width:1;stroke-dasharray:3 4}
.loc-chart .curve{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round}
.loc-chart .dot{fill:var(--paper);stroke:var(--ink);stroke-width:1.5}
.loc-chart .lbl{fill:var(--muted);font-family:var(--pixel);font-size:8px;letter-spacing:.04em}
.loc-chart .tag{fill:var(--ink);font-family:var(--body);font-size:11px;font-weight:600}
.loc-chart .knee{stroke:var(--red);stroke-width:1.5;stroke-dasharray:4 3}

.loc-order{padding-left:20px;display:grid;gap:8px;font-size:14px;color:var(--ink-soft);line-height:1.4}
.loc-order b{color:var(--ink)}
.loc-order .m{color:var(--muted);font-variant-numeric:tabular-nums}

.loc-caveats{padding-left:18px;display:grid;gap:10px;font-size:15px;color:var(--muted);line-height:1.5}
.loc-caveats b{color:var(--ink)}

/* the left column must be allowed to shrink; wide tables scroll inside their wrap */
.split > .stack{grid-template-columns:minmax(0,1fr)}
.split > .stack > *{min-width:0}
.panel .table-wrap,.panel .chart-wrap{max-width:100%}

/* ---------- F3: shareable state — the copy-link row above the tool ---------- */
.tool-share{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:26px}
.tool-share .copy{margin-top:0;flex:none}
.tool-share .hint{margin:0;max-width:62ch}
/* the pixel face has no CJK glyphs: fall back to the body face for ja/zh */
:root[lang="ja"] .loc-table .loc-src,:root[lang="zh"] .loc-table .loc-src,
:root[lang="ja"] .loc-chart .lbl,:root[lang="zh"] .loc-chart .lbl{
  font-family:var(--body);font-size:10px;letter-spacing:0;text-transform:none;
}
