:root{--bg: #f3f4fa;--panel: #ffffff;--panel-accent: #d7ddf4;--text: #111111;--text-dim: #5c6270;--accent: #171c8f;--accent-deep: #011f5d;--warn: #b42318;--ok: #168469;--font-base: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-base);-webkit-font-smoothing:antialiased;overflow:hidden}.app{display:grid;grid-template-rows:auto 1fr auto;height:100vh}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 32px 18px;background:#fff;border-bottom:6px solid var(--accent);position:relative}.header:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:6px;background:linear-gradient(90deg,#c8c9f2,#8589ff 18%,#171c8f 55%,#011f5d)}.brand{display:flex;align-items:center;gap:18px;min-width:0}.brand img{height:84px;width:auto;display:block}.error-banner{margin:12px 32px 0;padding:10px 16px;background:#fdecea;border:1px solid var(--warn);border-radius:8px;font-size:18px;color:#7a1a12}.status{display:flex;gap:16px;font-size:16px;color:var(--text-dim)}.status .dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;background:var(--warn);vertical-align:middle}.status .dot.ok{background:var(--ok)}.grid{display:grid;grid-template-columns:1.4fr 2fr;grid-template-rows:1fr;gap:16px;padding:16px 32px;overflow:hidden;min-height:0}.translations{display:grid;gap:16px;min-height:0}.grid[data-cols="0"] .translations,.grid[data-cols="1"] .translations{grid-template-columns:1fr;grid-template-rows:1fr}.grid[data-cols="2"] .translations{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.grid[data-cols="3"] .translations{grid-template-columns:1fr;grid-template-rows:repeat(3,1fr)}.grid[data-cols="4"] .translations{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.grid[data-cols="5"] .translations{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,1fr)}.grid[data-cols="5"] .translations>.panel:nth-child(5){grid-column:span 2}.grid--no-original{grid-template-columns:1fr;padding:16px clamp(16px,5vw,80px)}.grid--no-original .translations{width:100%;max-width:1800px;margin:0 auto;height:100%}.grid--no-original[data-cols="1"] .translations{grid-template-columns:1fr;grid-template-rows:1fr}.grid--no-original[data-cols="2"] .translations{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.grid--no-original[data-cols="3"] .translations{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr}.grid--no-original[data-cols="4"] .translations{grid-template-columns:repeat(2,1fr);grid-template-rows:1fr 1fr}.grid--no-original[data-cols="5"] .translations{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr 1fr}.grid--no-original[data-cols="5"] .translations>.panel:nth-child(4){grid-column:1 / 3}.grid--no-original[data-cols="5"] .translations>.panel:nth-child(5){grid-column:3 / 4}.panel{background:var(--panel);border-radius:12px;padding:20px 24px;display:flex;flex-direction:column;min-height:0;border:1px solid var(--panel-accent);border-top:4px solid var(--accent)}.panel.original{background:#fff}.panel-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.panel-title{font-size:22px;font-weight:700;letter-spacing:1px;color:var(--accent-deep)}.panel-tag{font-size:14px;color:var(--text-dim);text-transform:uppercase}.panel-body{font-size:48px;line-height:1.4;flex:1;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;word-break:break-word}.panel.original .panel-body{font-size:56px}.panel-body .line{margin:0;opacity:.55;transition:opacity .24s ease}.panel-body .line.latest{opacity:1;color:var(--accent)}.footer{padding:10px 32px;font-size:14px;color:#d7ddf4;background:var(--accent-deep);display:flex;align-items:center;justify-content:space-between;gap:16px}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{height:28px;width:auto;display:block}@media (min-width: 2400px){.brand img{height:112px}.panel-title{font-size:30px}.panel-body{font-size:64px}.panel.original .panel-body{font-size:80px}}
