:root{font-family:"Yu Gothic UI","Meiryo",system-ui,sans-serif;color:#19243b;background:#f5f7fb;font-synthesis:none;font-size:16px;--blue:#2b55e7;--line:#e0e5ef;--muted:#63708a}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}a{color:var(--blue)}button{transition:background .16s,border-color .16s}button:hover:not(:disabled){filter:brightness(.96)}[hidden]{display:none!important}.app-header{background:#fff;border-bottom:1px solid var(--line);min-height:86px;padding:18px 3.5%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px}.brand-icon{font-family:Consolas,monospace;display:grid;place-items:center;background:var(--blue);color:white;width:43px;height:43px;border-radius:12px;font-size:24px;font-weight:700}.brand strong{display:block;font-size:20px;letter-spacing:-.4px}.local-label{font-size:10px;letter-spacing:1.4px;color:var(--muted)}.header-actions{display:flex;align-items:center;gap:10px}.button{border:1px solid #d7ddec;background:white;color:#263552;border-radius:8px;padding:11px 17px;font-size:14px;font-weight:600;line-height:1.5}.button.primary{background:var(--blue);border-color:var(--blue);color:white;box-shadow:0 2px 3px #284edd12}.button.primary span{margin-left:10px}.button.quiet{background:transparent;border-color:transparent}.button.small{padding:6px 12px}.text-button{background:none;border:0;color:var(--blue);padding:7px 4px;font-size:14px;font-weight:600}.text-button:disabled{color:var(--muted)}main{max-width:1560px;margin:auto;padding:36px 3.5% 22px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.eyebrow{font-size:11px;color:#697797;letter-spacing:1.5px;font-weight:700;margin:0 0 9px}h1{font-size:27px;font-weight:700;letter-spacing:-.6px;line-height:1.5;margin:0}h2{font-size:18px;line-height:1.6;margin:0}.subtle{color:var(--muted);font-size:14px;line-height:1.8;margin:7px 0 0}.document-chip{display:flex;align-items:center;gap:9px;font-size:13px;max-width:40%;color:#53617c;background:white;border:1px solid var(--line);border-radius:7px;padding:11px 14px}.document-chip #filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-icon{font-family:Consolas,monospace;font-weight:bold;color:var(--blue)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:22px;align-items:start}.editor-panel{background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:0 3px 10px #1f305305;min-width:0}.editor-toolbar{padding:15px 22px;min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line)}.counts{font-size:13px;color:var(--muted)}.counts strong{font-size:18px;color:#1d2a42;margin-right:4px}.divider{padding:0 11px;color:#c4ccdc}.empty-state{min-height:481px;padding:70px 24px 45px;display:flex;align-items:center;flex-direction:column;text-align:center;background:radial-gradient(ellipse at 50% 34%,#edf2ff88,transparent 60%)}.json-mark{width:96px;height:78px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--blue);margin-bottom:21px}.json-mark span{font-size:62px;font-family:Consolas,monospace;font-weight:300}.json-mark i{font-style:normal;font-size:23px;font-weight:600}.empty-state h2{font-size:21px}.empty-state p{color:var(--muted);font-size:14px;line-height:1.9;margin:10px 0 24px}.empty-state .text-button{margin-top:14px}.empty-note{font-size:12px;color:#697791;margin-top:27px}.settings{background:white;border:1px solid var(--line);border-radius:13px;padding:23px}.settings-title{display:flex;align-items:center;gap:8px;margin-bottom:26px}.settings-title h2{font-size:17px}.spark{font-size:23px;color:var(--blue)}.provider{margin-left:auto;padding:3px 8px;background:#f0f3fa;color:#586684;border-radius:5px;font-size:12px}.settings>label:not(.checkbox-label){display:block;font-size:14px;font-weight:600;margin-bottom:9px}.settings select,.settings input[type=password]{width:100%;border:1px solid #d8deeb;border-radius:7px;padding:10px 11px;color:#263552;background:#fff;min-height:43px;font-size:14px}.settings select{margin-bottom:20px}.settings-rule{height:1px;background:var(--line);margin:1px 0 22px}.field-note{font-size:12px;line-height:1.8;color:var(--muted);margin:9px 0 22px}.field-note a{display:block;text-decoration:none;margin-top:2px}.checkbox-label{display:flex;gap:8px;align-items:center;font-size:13px;margin-bottom:18px;line-height:1.7}input[type=checkbox]{accent-color:var(--blue);width:16px;height:16px;flex-shrink:0;margin:0;cursor:pointer}.translate-button,.cancel-button{width:100%}.cancel-button{margin-top:8px}.selected-count{text-align:center;color:var(--muted);font-size:12px;margin:10px 0 17px}.data-note{color:var(--muted);font-size:12px;line-height:1.9;margin:0}.manual-note{border-top:1px solid var(--line);padding-top:18px;margin-top:21px}.manual-note strong{font-size:13px}.manual-note p{font-size:12px;color:var(--muted);line-height:1.9;margin:7px 0 0}footer{display:flex;justify-content:space-between;gap:15px;color:#6e7b95;font-size:12px;line-height:1.8;margin-top:19px}progress{width:100%;height:7px;accent-color:var(--blue);margin-bottom:15px}.table-heading{display:grid;grid-template-columns:55px 1fr 1fr;gap:18px;padding:15px 22px;background:#f9fafe;font-size:13px;color:#63708a;border-bottom:1px solid var(--line)}.selection-label{display:flex;gap:7px;align-items:center;font-size:12px}.heading-hint{font-size:12px;color:#8791a5;margin-left:8px}.entry{display:grid;grid-template-columns:55px minmax(0,1fr) minmax(0,1fr);gap:10px 18px;padding:18px 22px 19px;border-bottom:1px solid #edf0f6}.entry:last-child{border-bottom:0}.entry-select{grid-column:1;grid-row:1/3;display:flex;align-items:center;gap:7px;align-self:start;padding-top:3px}.row-number{font-size:11px;color:#8b96ad;font-family:Consolas,monospace}.entry-path{grid-column:2/4;display:flex;align-items:center;gap:10px;min-width:0}.entry-path code{font-family:Consolas,"Yu Gothic UI",monospace;font-size:12px;color:#64728d;overflow-wrap:anywhere}.entry textarea{width:100%;resize:vertical;min-height:94px;line-height:1.8;font-size:15px;border:1px solid #dce2ef;border-radius:6px;padding:11px 12px;color:#23324d;background:white}.entry .source{background:#f8f9fc;border-color:#f0f2f8;color:#52617c;grid-column:2}.entry .target-wrap{grid-column:3;min-width:0}.entry textarea::placeholder{color:#9aa4b8;font-size:13px}.entry textarea:focus{outline:2px solid #a4b8ff;border-color:var(--blue)}.target-meta{display:flex;align-items:center;gap:8px;justify-content:space-between;margin-top:6px;min-height:20px}.status{font-size:11px;color:#8691a7}.status.done{color:#227661}.status.warning{color:#aa5e0b}.reset-row{font-size:11px;border:0;background:none;color:#75819a;padding:3px}.row-warning{color:#a66312;font-size:12px;line-height:1.6;margin:5px 0 0}.pagination{display:flex;justify-content:space-between;align-items:center;padding:15px 22px;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}.pagination>div{display:flex;gap:7px}.no-strings{text-align:center;padding:80px 20px;color:var(--muted);font-size:14px}.notice{padding:13px 17px;border-radius:7px;margin-bottom:18px;background:#edf2ff;color:#284ba6;font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.notice.error{color:#9b452c;background:#fff1ec}.notice.success{color:#226b55;background:#eaf7f0}.dragging{outline:3px dashed var(--blue);outline-offset:-8px;background:#f0f4ff}dialog{border:1px solid #dae1ef;border-radius:14px;padding:26px;width:min(760px,92vw);max-height:90vh;color:#25324a;box-shadow:0 30px 90px #12204438}dialog::backdrop{background:#1f2c4560;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.icon-button{font-size:26px;line-height:1;background:none;border:0;color:#75819a;padding:4px 8px}dialog p{font-size:14px;color:var(--muted);line-height:1.8}.json-input{display:block;width:100%;height:300px;padding:15px;background:#f8faff;border:1px solid #d9e0ee;border-radius:8px;font-family:Consolas,"Yu Gothic UI",monospace;font-size:14px;line-height:1.7;resize:vertical}.dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;flex-wrap:wrap}.error-text{color:#b44829}.export-warnings{padding:13px 16px;border-radius:7px;background:#fff4df;color:#8e560b;font-size:13px;white-space:pre-wrap;line-height:1.8;max-height:180px;overflow:auto}#export-preview{padding:18px;border:1px solid #dce3f1;background:#f7f9fe;border-radius:8px;font-family:Consolas,"Yu Gothic UI",monospace;font-size:14px;line-height:1.75;max-height:390px;overflow:auto;tab-size:2;white-space:pre-wrap;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(min-width:1500px){.entry textarea{font-size:16px}}@media(max-width:1080px){.workspace{grid-template-columns:minmax(0,1fr) 260px;gap:16px}.settings{padding:18px}.heading-hint{display:none}.entry{gap:10px 12px;padding:16px}.table-heading{gap:12px;padding:14px 16px}.editor-toolbar{padding:14px 16px}.row-number{display:none}.entry,.table-heading{grid-template-columns:24px minmax(0,1fr) minmax(0,1fr)}.selection-label span{display:none}footer{flex-direction:column;gap:3px}}@media(max-width:800px){.app-header{padding:14px 5%;flex-wrap:wrap}.header-actions{width:100%;gap:8px}.header-actions .button{flex:1;padding:9px;font-size:13px}main{padding:25px 5%}.page-heading{align-items:flex-start;flex-direction:column;gap:14px}.document-chip{max-width:100%;font-size:12px}.workspace{grid-template-columns:1fr}.settings{max-width:none}.empty-state{min-height:400px;padding-top:40px}.brand strong{font-size:18px}.settings select{margin-bottom:14px}.local-label,.eyebrow{font-size:12px}.settings label,.checkbox-label,.field-note,.data-note,.manual-note p,.manual-note strong{font-size:14px}}@media(max-width:520px){.entry{grid-template-columns:21px minmax(0,1fr);gap:9px}.entry-path{grid-column:2}.entry-select{grid-row:1/4}.entry .source,.entry .target-wrap{grid-column:2}.table-heading{grid-template-columns:23px 1fr 1fr;font-size:12px}.editor-toolbar{align-items:flex-start;flex-direction:column;gap:3px}.counts{font-size:12px}.entry textarea{font-size:16px}.entry .source{min-height:70px}.entry textarea:not(.source){min-height:90px}.subtle{font-size:14px}h1{font-size:24px}.empty-note{font-size:12px}.pagination{padding:13px}.settings{padding:21px}.header-actions .button.primary span{display:none}dialog{padding:18px}.dialog-actions .button{font-size:13px;padding:10px}}
/* Keep controls readable, with compact settings above the editor on small screens. */
.entry .source-wrap{grid-column:2;min-width:0}
.entry textarea{display:block}
.clipboard-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:7px;margin-top:7px}
.clipboard-button{min-height:32px;padding:4px 11px;border:1px solid #d7ddec;border-radius:6px;background:#fff;color:#52617c;font-size:13px;line-height:1.6}
.clipboard-button.paste-row{background:#edf2ff;border-color:#d7e1ff;color:#2b55c5}
.clipboard-feedback{margin:5px 0 0;color:#52617c;font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.clipboard-feedback:empty{margin:0}
.local-label,.eyebrow,.row-number,.status,.reset-row{font-size:12px}
.checkbox-label,.counts,.table-heading{font-size:14px}
.entry textarea{font-size:16px}
.settings details>label:not(.checkbox-label){display:block;font-size:14px;font-weight:600;margin-bottom:9px}
.settings-title{cursor:pointer;list-style:none}
.settings-title::-webkit-details-marker{display:none}
.settings-title:after{content:'+';font-size:18px;color:#63708a}
.settings details[open] .settings-title:after{content:'−'}
.settings details:not([open]) .settings-title{margin-bottom:0}
@media(max-width:800px){.settings{grid-row:1;padding:16px 20px}.settings-title{margin-bottom:20px}}
.browser-panel>p{font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 15px}
.browser-panel .button{width:100%;margin-bottom:10px;text-align:center;text-decoration:none;display:block}
#browser-session{padding-top:8px;margin-top:6px;border-top:1px solid var(--line)}
#browser-session label{font-size:12px;color:var(--muted);display:block;margin:8px 0}
#browser-url{width:100%;padding:9px;border:1px solid var(--line);border-radius:6px;font-size:12px}
.browser-test-header{max-width:1100px;margin:auto;padding:24px;display:flex;justify-content:space-between;gap:20px;align-items:center}
.browser-test-main{max-width:1100px;padding:0 24px 40px}
.browser-instructions{padding:22px;background:#eaf0ff;border:1px solid #d4dfff;border-radius:10px;margin-bottom:18px;font-size:14px;line-height:1.8}
.browser-instructions p{font-size:14px;margin:10px 0 0;color:#52617c}
.browser-instructions ol{padding-left:23px}
.browser-row{padding:24px;margin-bottom:16px;background:#fff;border:1px solid var(--line);border-radius:10px}
.browser-path{font-size:12px;color:#63708a;font-family:Consolas,monospace;overflow-wrap:anywhere;margin-bottom:13px}
.translation-text{font-size:18px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}
.protected-token{background:#eff2f8;color:#5b6680;border-radius:3px;font-family:Consolas,monospace;font-size:.85em}
@media(max-width:600px){.browser-test-header{align-items:stretch;flex-direction:column}.browser-test-header h1{font-size:23px}.browser-row{padding:18px}.translation-text{font-size:16px}}
.entry-filters{padding:16px 22px;background:#f9fafe;border-bottom:1px solid var(--line)}.filter-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.filter-fields label{font-size:13px;color:var(--muted);display:grid;gap:5px}.filter-fields input,.filter-fields select{min-width:0;width:100%;padding:8px;border:1px solid var(--line);border-radius:6px;background:white;color:#263552}.filter-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px}.filter-actions span{margin-right:auto;font-size:13px}.entry-filters p{font-size:12px;line-height:1.7;color:var(--muted);margin:8px 0 0}@media(max-width:520px){.filter-fields{grid-template-columns:1fr}.entry-filters{padding:14px}}

.load-options{background:white;border:1px solid var(--line);border-radius:10px;padding:16px 20px;margin-bottom:18px}.load-options summary{cursor:pointer;font-weight:600}.load-options .filter-fields{margin:14px 0}.load-options p{font-size:13px;color:var(--muted);line-height:1.7}.load-options .checkbox-label{margin-bottom:0}
.translation-aids{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.translation-aids h2{font-size:17px}.translation-aids p{font-size:12px;color:var(--muted);line-height:1.8;margin:10px 0}.translation-aids>.button{display:block;width:100%;margin:8px 0}.translation-aids>.text-button{display:block;text-align:left;margin:9px 0}.translation-aids #aids-status{color:#285ba6}.translation-aids #aids-status.error{color:#9b452c}#aids-dialog label{display:block;font-size:13px;margin:12px 0 8px}#aids-dialog .json-input{height:260px}

/* Workspace: everyday actions first, optional settings inside disclosures. */
:root { --muted:#596880; --line:#dce3ee; }
html { scroll-padding-top:100px; }
body { background:#f4f6fa; }
:focus-visible { outline:3px solid #9bb4ff; outline-offset:3px; }
.app-header { position:sticky; top:0; z-index:30; min-height:76px; padding:14px 28px; box-shadow:0 2px 8px #20365706; }
.brand-icon { width:39px; height:39px; border-radius:10px; }
.brand strong { font-size:18px; }
.local-label { font-size:11px; letter-spacing:.3px; }
.header-actions { gap:8px; }
.button { min-height:40px; padding:9px 14px; }
.button.small { min-height:36px; }
.text-button { min-height:34px; font-size:13px; }
main { max-width:1640px; padding:26px 28px; }
.page-heading { margin-bottom:20px; gap:24px; }
h1 { font-size:24px; letter-spacing:-.3px; }
.subtle { margin-top:4px; }
.workflow { display:flex; align-items:center; gap:18px; list-style:none; padding:0; margin:0; color:var(--muted); font-size:13px; white-space:nowrap; }
.workflow li { display:flex; align-items:center; gap:7px; }
.workflow li+li::before { content:'›'; color:#8996ac; margin-right:7px; }
.workflow li>span,.step-number { display:inline-grid; place-items:center; width:24px; height:24px; border-radius:50%; color:#3456a9; background:#e8eefb; font-size:12px; font-weight:700; flex-shrink:0; }
.load-options { padding:0; border-radius:10px; margin-bottom:20px; }
.load-options>summary { display:flex; gap:12px; flex-wrap:wrap; align-items:center; padding:13px 18px; font-size:13px; }
.load-options>summary::before { content:'›'; font-size:20px; line-height:1; color:var(--muted); }
.load-options[open]>summary::before { transform:rotate(90deg); }
.summary-note { font-size:12px; font-weight:400; color:var(--muted); }
.load-options-body { padding:0 18px 16px; border-top:1px solid var(--line); }
.load-options-body p { margin-bottom:0; }
.load-options .summary-note { margin-left:auto; }
.workspace { grid-template-columns:minmax(0,1fr) 320px; gap:22px; }
.editor-panel { border-radius:12px; box-shadow:0 4px 16px #20365704; }
.editor-toolbar { padding:17px 20px; min-height:82px; }
.document-info { min-width:0; }
.document-title { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-bottom:8px; }
#filename { font-size:15px; overflow-wrap:anywhere; min-width:0; }
.draft-state { color:var(--muted); border-radius:4px; background:#f0f3f8; padding:3px 7px; font-size:11px; font-weight:500; }
.draft-state.unsaved { color:#895107; background:#fff3d9; }
.counts { font-size:12px; }
.counts strong { font-size:13px; }
.divider { padding:0 8px; }
.completion { display:block; width:100%; height:3px; margin:0; border:0; border-radius:0; background:#edf1f8; color:#6c8fec; appearance:none; }
.completion::-webkit-progress-bar { background:#edf1f8; }
.completion::-webkit-progress-value { background:#6c8fec; }
.completion::-moz-progress-bar { background:#6c8fec; }
.empty-state { min-height:440px; padding:46px 22px; }
.empty-state h2 { font-size:20px; }
.empty-state p { font-size:14px; margin:10px 0 22px; }
.json-mark { margin-bottom:12px; height:66px; }
.sample-links { display:flex; align-items:center; gap:12px; margin:15px 0 22px; font-size:12px; color:var(--muted); }
.sample-links .text-button { margin:0; }
.format-badges { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; }
.format-badges span { padding:4px 8px; border:1px solid var(--line); background:#fff; border-radius:5px; font-size:11px; color:#4a5c78; }
.empty-note { font-size:12px; margin-top:11px; }
.document-details { background:#f6f9ff; border-bottom:1px solid var(--line); padding:11px 20px; }
.document-details summary { color:#435e8f; font-size:12px; cursor:pointer; }
.document-details p { font-size:12px; line-height:1.8; color:var(--muted); margin:9px 0 0; }
.entry-filters { background:white; padding:16px 20px 12px; }
.search-fields { display:grid; grid-template-columns:minmax(0,1fr) 135px auto; align-items:end; gap:10px; }
.search-fields label,.filter-fields label { display:grid; gap:6px; font-size:12px; color:var(--muted); }
.search-fields input,.search-fields select,.filter-fields input,.filter-fields select { width:100%; min-width:0; min-height:38px; padding:8px 10px; border:1px solid #d4ddeb; border-radius:6px; font-size:13px; color:#263552; background:#fff; }
.search-fields .button { min-height:38px; }
.path-filters { margin-top:12px; }
.path-filters>summary { font-size:12px; color:#4c5f7d; cursor:pointer; }
.path-filters .filter-fields { margin-top:12px; }
.filter-actions { margin-top:10px; gap:10px; }
.filter-actions>span { font-size:12px; }
.filter-actions .pending-note { margin:0; color:#976208; background:#fff6e4; padding:3px 6px; border-radius:4px; }
.filter-actions .text-button { font-size:12px; padding-right:0; }
.entry-filters p { font-size:11px; margin-top:5px; }
.selection-bar { display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding:12px 20px; background:#f5f8fd; border-bottom:1px solid var(--line); font-size:12px; }
.selection-bar .selection-label { font-size:12px; font-weight:600; }
.selection-bar .selection-label span { display:inline; }
#selection-count { color:#3f5b89; margin-left:auto; }
.selection-hint { color:var(--muted); font-size:11px; }
.table-heading { background:white; padding:12px 20px; font-size:12px; grid-template-columns:28px minmax(0,1fr) minmax(0,1fr); gap:14px; }
.heading-hint { font-size:11px; font-weight:400; }
.entry { grid-template-columns:28px minmax(0,1fr) minmax(0,1fr); gap:9px 14px; padding:18px 20px; }
.entry:focus-within { background:#fafcff; }
.entry-select { flex-direction:column; gap:9px; padding-top:3px; }
.row-number { font-size:10px; }
.entry-path { margin-bottom:1px; }
.entry-path code { font-size:11px; color:#62728c; }
.entry textarea { min-height:110px; padding:11px 12px; font-size:15px; line-height:1.8; }
.entry .source { border-color:#e7edf5; background:#f6f8fc; color:#45546e; }
.row-column-label { display:none; }
.clipboard-button { min-height:30px; padding:3px 10px; font-size:12px; }
.status,.reset-row { font-size:11px; }
.pagination { background:#fcfdff; padding:14px 20px; }

/* Translation controls stay reachable while reading a long file. */
.settings { position:sticky; top:94px; max-height:calc(100dvh - 112px); overflow-y:auto; scrollbar-width:thin; padding:20px; border-radius:12px; }
.settings-title { margin-bottom:19px; gap:8px; }
.section-heading { font-size:16px; font-weight:700; }
.settings-title:after { margin-left:2px; }
.settings details>label:not(.checkbox-label),.language-fields label { display:block; font-size:12px; margin-bottom:6px; font-weight:600; }
.settings select,.settings input[type=password] { min-height:39px; font-size:13px; padding:8px; }
.settings select { margin-bottom:14px; }
.language-fields { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.language-fields>div { min-width:0; }
.settings .checkbox-label { font-size:12px; margin-bottom:14px; }
.settings .field-note { font-size:11px; margin:7px 0 15px; }
.browser-panel>p { font-size:12px; margin:0 0 11px; }
.browser-panel .scope-note { background:#f1f5fd; border-radius:6px; padding:9px 10px; color:#3d5b8e; }
.browser-panel .button { font-size:13px; }
#browser-session { margin:6px 0 10px; padding-top:13px; }
#browser-session>p { font-size:12px; line-height:1.8; color:var(--muted); margin:0 0 8px; }
.inline-help { margin:12px 0; }
.inline-help>summary { font-size:12px; cursor:pointer; color:#4c638a; }
.inline-help p,.inline-help ol { font-size:12px; color:var(--muted); line-height:1.9; }
.inline-help ol { padding-left:21px; }
.data-note { font-size:11px; margin-top:12px; }
.manual-note { color:var(--muted); font-size:12px; line-height:1.8; padding-top:13px; margin-top:16px; margin-bottom:0; }
.translation-aids { margin-top:20px; padding-top:18px; }
.translation-aids>summary { cursor:pointer; }
.translation-aids>summary .section-heading { font-size:14px; }
.translation-aids>summary .summary-note { display:block; padding-left:18px; margin-top:6px; line-height:1.6; }
.translation-aids #aids-scope { color:#345487; margin-top:16px; font-size:12px; font-weight:600; }
.translation-aids #aids-status { font-size:11px; }
.aid-group { padding:14px 0; border-bottom:1px solid var(--line); }
.aid-group h3 { font-size:13px; margin:0; }
.aid-group p { margin:6px 0 12px; }
.aid-group>.button { display:block; width:100%; font-size:12px; margin-top:8px; }
.aid-group>.text-button { font-size:12px; padding-left:0; margin-top:8px; text-align:left; }
footer { font-size:11px; }
body:not(.browser-test-page)>main>.notice { position:sticky; top:85px; z-index:20; box-shadow:0 3px 14px #27395712; max-height:180px; overflow:auto; }
.help-steps { counter-reset:help-step; list-style:none; margin:22px 0; padding:0; }
.help-steps>li { counter-increment:help-step; position:relative; padding:0 0 16px 40px; }
.help-steps>li::before { content:counter(help-step); position:absolute; left:0; top:0; width:27px; height:27px; display:grid; place-items:center; border-radius:50%; background:#eaf0fd; color:#315bc2; font-weight:600; }
.help-steps p { margin:7px 0 0; }
.help-tip { padding:15px 18px; background:#f5f8fe; border-radius:8px; font-size:14px; }
.help-tip p { margin:7px 0 0; }

@media (max-width:1150px) {
  .workflow { gap:9px; font-size:12px; }
  .workflow li+li::before { margin-right:0; }
  .workspace { grid-template-columns:minmax(0,1fr) 290px; gap:16px; }
  .settings { padding:17px; }
  .entry { gap:9px 10px; padding:16px; }
  .heading-hint,.selection-hint { display:none; }
  .editor-toolbar { flex-wrap:wrap; }
}
@media (max-width:900px) {
  .app-header { padding:12px 20px; }
  main { padding:22px 20px; }
  .page-heading { flex-direction:column; align-items:flex-start; gap:14px; }
  .workspace { grid-template-columns:1fr; }
  .settings { position:static; grid-row:1; max-height:none; overflow:visible; padding:16px 20px; }
  .settings-title { margin-bottom:17px; }
  .language-fields { max-width:500px; }
  .translation-aids { margin-top:16px; padding-top:14px; }
  .editor-toolbar { flex-direction:row; align-items:center; }
  .load-options .summary-note { margin-left:0; width:100%; padding-left:20px; }
  footer { flex-direction:column; gap:4px; }
}
@media (max-width:600px) {
  .app-header { position:static; gap:12px; padding:13px 16px; }
  .header-actions { flex-wrap:wrap; width:100%; gap:7px; }
  .header-actions .button { flex:1 1 auto; font-size:12px; padding:8px 9px; }
  #help-open { order:4; flex:0 0 auto; }
  main { padding:20px 12px; }
  h1 { font-size:22px; }
  .subtle { font-size:13px; }
  .workflow { gap:8px; flex-wrap:wrap; font-size:11px; }
  .workflow li { gap:5px; }
  .workflow li>span { width:20px; height:20px; font-size:11px; }
  .workflow li+li::before { display:none; }
  .load-options>summary { padding:12px 14px; }
  .filter-fields { grid-template-columns:1fr; }
  .search-fields { grid-template-columns:minmax(0,1fr) auto; }
  .search-fields>label:first-child { grid-column:1/-1; }
  .search-fields input,.filter-fields input,.settings input,.settings select { font-size:16px; }
  .editor-toolbar { padding:15px; align-items:flex-start; gap:8px; }
  .editor-toolbar>.text-button { padding-left:0; }
  .entry-filters,.selection-bar { padding-left:15px; padding-right:15px; }
  .selection-bar { gap:8px; }
  .table-heading { display:none; }
  .entry { grid-template-columns:22px minmax(0,1fr); gap:10px; padding:16px 14px; }
  .entry-path { grid-column:2; }
  .entry-select { grid-column:1; grid-row:1/4; }
  .entry .source-wrap,.entry .target-wrap { grid-column:2; }
  .entry textarea { font-size:16px; min-height:94px; }
  .row-column-label { display:block; font-size:12px; font-weight:600; color:var(--muted); margin-bottom:6px; }
  .empty-state { padding:35px 18px; min-height:390px; }
  .empty-state h2 { font-size:18px; }
  body:not(.browser-test-page)>main>.notice { top:8px; }
  dialog { padding:20px; }
  .dialog-actions { gap:8px; }
  .dialog-actions .button { font-size:12px; }
}
/* Public edition: shared, responsive information pages. */
.runtime-status {margin:0 0 16px;padding:10px 14px;border-radius:8px;background:#edf3ff;color:#35548d;font-size:13px;}
.runtime-status.error {background:#fff0ef;color:#a43131;}
.public-links,.public-footer {display:flex;gap:24px;justify-content:center;flex-wrap:wrap;padding:24px;font-size:13px;}
.public-page {background:#f7f9fd;}
.public-header {max-width:1120px;margin:auto;padding:24px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.public-header nav {display:flex;align-items:center;gap:24px;}
.public-brand {font-size:20px;font-weight:750;text-decoration:none;color:#17294b;}
.public-brand span {font-size:11px;font-weight:500;display:inline-block;margin-left:8px;}
.public-main {max-width:1120px;padding:0 28px;margin:auto;}
.hero {padding:68px 0 48px;}
.hero h1 {font-size:clamp(32px,5vw,56px);line-height:1.45;letter-spacing:-.04em;margin:18px 0;}
.hero-lead {font-size:18px;line-height:1.9;color:#4d607b;}
.hero-actions {display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 14px;}
.public-page .button {text-decoration:none;display:inline-flex;align-items:center;justify-content:center;}
.public-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.info-card {padding:28px;border:1px solid #dee5f1;border-radius:16px;background:white;line-height:1.85;}
.info-card h2 {font-size:19px;margin:14px 0 10px;}
.info-card p {color:#52627b;}
.privacy-card {margin:24px 0;background:#eff4ff;}
.public-section {padding:32px 0;max-width:760px;line-height:1.9;}
.prose {max-width:900px;padding-top:36px;padding-bottom:48px;line-height:1.95;}
.prose h1 {font-size:clamp(26px,4vw,38px);line-height:1.5;margin:16px 0 32px;}
.prose h2 {margin:36px 0 12px;font-size:23px;}
.prose li {margin:12px 0;}
.prose code {background:#e8edf6;padding:2px 5px;border-radius:4px;overflow-wrap:anywhere;}
.table-scroll {overflow-x:auto;}
.prose table {border-collapse:collapse;width:100%;font-size:14px;}
.prose td,.prose th {padding:12px;border:1px solid #dce3ee;text-align:left;min-width:100px;}
.prose th {background:#edf2fa;}
.public-footer {margin-top:24px;border-top:1px solid #dce3ee;}
@media(max-width:720px){.public-grid{grid-template-columns:1fr}.public-header{align-items:flex-start}.public-header nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.hero{padding-top:32px}.public-brand span{display:block;margin-left:0}.public-main{padding-left:20px;padding-right:20px}}
#chat-context{width:100%;resize:vertical;padding:10px;border:1px solid var(--line);border-radius:8px;font-size:16px}#chat-dialog label{display:block;margin:18px 0 8px;font-weight:600}#chat-dialog .json-input{height:180px;min-height:120px;font-size:14px}#chat-dialog #chat-feedback{white-space:pre-wrap;line-height:1.7}#chat-dialog .dialog-actions{flex-wrap:wrap}
#api-panel input:not([type=checkbox]),#api-context{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;font-size:16px}#api-context{resize:vertical}#api-status{white-space:pre-wrap;overflow-wrap:anywhere}
#api-model-list{width:100%;max-width:100%;font-size:14px}#api-model-list option{padding:7px}#nano-model-picker{min-width:0}
#api-panel .api-warning{color:#a51d24;background:#fff5f5;border-left:3px solid #a51d24;border-radius:4px;padding:12px;margin:12px 0 16px;font-size:14px;line-height:1.8}#api-panel .api-warning p{color:inherit;font-size:inherit;line-height:inherit;margin:8px 0 0}#api-panel .api-warning strong{display:block;font-size:14px}
.nano-referral{padding:14px;margin:0 0 20px;border:1px solid #cbd8f5;border-left:3px solid var(--blue);border-radius:8px;background:#f1f5ff;color:#24375c;font-size:14px;line-height:1.8}
.nano-referral[hidden]{display:none}
.nano-referral-heading{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap}
.nano-referral-heading strong{font-size:15px}
.nano-referral-label{font-size:12px;border:1px solid #cbd8f5;border-radius:4px;padding:0 6px;white-space:nowrap}
.nano-referral p{margin:10px 0;font-size:14px;line-height:1.8}
.nano-referral .button{display:block;width:100%;padding:10px;text-align:center;text-decoration:none;white-space:normal;font-size:14px}
.nano-referral .nano-referral-note{margin-bottom:0;font-size:13px;color:#52617c}

.ui-language-control{display:inline-flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap}.ui-language-control select{width:auto;min-width:86px;padding:7px 9px;margin:0}.app-header>.ui-language-control,.public-header>.ui-language-control,.browser-test-header>.ui-language-control{order:3;margin-left:auto}.header-actions{flex-wrap:wrap}@media(max-width:600px){.app-header>.ui-language-control,.public-header>.ui-language-control,.browser-test-header>.ui-language-control{margin-left:0}}
