/* Compact language picker shared by the public site and both workspaces. */
.jms-locale-switch{display:inline-flex;align-items:center;gap:4px;padding:3px;border:1px solid #d8e2f0;border-radius:999px;background:#fff;white-space:nowrap}
.jms-locale-switch a{display:inline-flex;min-width:34px;min-height:30px;align-items:center;justify-content:center;gap:4px;padding:4px 7px;border:1px solid transparent;border-radius:999px;color:#38516f;text-decoration:none;font-size:12px;font-weight:700;transition:background .16s,color .16s,border-color .16s}
.jms-locale-switch a:hover,.jms-locale-switch a:focus-visible{border-color:#bfd2f1;background:#eef4ff;color:#235fd5}
.jms-locale-switch a.is-active{border-color:#3978f6;background:#3978f6;color:#fff;box-shadow:0 3px 8px #3978f62b}
.jms-locale-switch a>span:first-child{font-size:15px;line-height:1}
.jms-locale-code{font-size:9px;letter-spacing:.04em}
.site-nav .jms-locale-switch{border-color:#ffffff35;background:#13223a}
.site-nav .jms-locale-switch a{color:#eaf2ff}
.site-nav .jms-locale-switch a:hover,.site-nav .jms-locale-switch a:focus-visible{border-color:#58dafa;background:#203c63;color:#fff}
.site-nav .jms-locale-switch a.is-active{border-color:#3978f6;background:#3978f6;color:#fff}
.jms-locale-nav-item{display:flex;align-items:center}
.site-nav-mobile-controls{display:flex;align-items:center;gap:7px}
.site-nav-mobile-controls .navbar-toggler{margin:0}
.nexo-topbar-right>.jms-locale-switch{margin-right:6px}
.customer-workspace-actions>.jms-locale-switch{margin-right:5px}
.auth-header-actions{display:flex;align-items:center;gap:14px}
.auth-header-actions .auth-header-link{color:#e4efff;text-decoration:none}

/* Settings are grouped into focused, keyboard-accessible tabs. */
.nexo-settings-tabs{display:flex;gap:5px;overflow-x:auto;margin:0 0 8px;padding:5px;border:1px solid var(--nexo-line);border-radius:12px;background:#fff;scrollbar-width:thin}
.nexo-settings-tab{display:inline-flex;min-height:42px;flex:0 0 auto;align-items:center;gap:8px;padding:9px 13px;border:1px solid transparent;border-radius:8px;background:transparent;color:#53657d;font:600 12px/1.2 inherit;cursor:pointer;transition:background .16s,color .16s,border-color .16s}
.nexo-settings-tab>span{color:#7189aa;font-size:15px}
.nexo-settings-tab:hover{background:#f4f7fd;color:#1a2a43}
.nexo-settings-tab.is-active{border-color:#d7e4fb;background:#edf4ff;color:#2868e5}
.nexo-settings-tab.is-active>span{color:#3978f6}
.nexo-settings-tab:focus-visible{outline:3px solid #3978f64a;outline-offset:1px}
.nexo-settings-current-label{min-height:10px;margin:0 0 14px;color:var(--nexo-muted);font-size:11px}
.nexo-settings-panel[hidden],[data-settings-panel][hidden]{display:none!important}

.nexo-translation-panel{overflow:hidden}
.nexo-translation-language-key{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 15px}
.nexo-translation-language-key>span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #dce5f1;border-radius:999px;background:#f8faff;color:#40536e;font-size:11px;font-weight:650}
.nexo-translation-search{max-width:520px;margin-bottom:16px}
.nexo-translation-group{margin:0 0 12px;border:1px solid var(--nexo-line);border-radius:11px;background:#fff;overflow:hidden}
.nexo-translation-group>summary{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:12px 15px;background:#f8faff;color:#20314b;font-size:13px;font-weight:750;cursor:pointer;list-style:none}
.nexo-translation-group>summary::-webkit-details-marker{display:none}
.nexo-translation-group>summary::after{content:'＋';display:grid;width:23px;height:23px;place-items:center;border:1px solid #d6e2f4;border-radius:7px;color:#3978f6;font-size:14px}
.nexo-translation-group[open]>summary::after{content:'−'}
.nexo-translation-group>summary span{margin-left:auto;color:#71819a;font-size:10px;font-weight:600}
.nexo-translation-table-wrap{width:100%;overflow:auto;border-top:1px solid var(--nexo-line);-webkit-overflow-scrolling:touch}
.nexo-translation-table{min-width:800px;margin:0;color:var(--nexo-ink);vertical-align:top}
.nexo-translation-table>thead th{position:sticky;top:0;padding:10px 12px;border-bottom:1px solid var(--nexo-line);background:#fff;color:#657792;font-size:10px;letter-spacing:.04em}
.nexo-translation-table>tbody>tr>td{width:33.333%;padding:10px 12px;border-color:#edf0f5;vertical-align:top}
.nexo-translation-table>tbody>tr[hidden]{display:none!important}
.nexo-translation-cell{display:grid;gap:6px;color:#3a4d66;font-size:11px;font-weight:650}
.nexo-translation-cell>span:first-child{min-height:15px}
.nexo-translation-cell small{overflow-wrap:anywhere;color:#8998ad;font:10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}
.nexo-translation-cell input,.nexo-translation-cell textarea,.nexo-extra-translation-row textarea{width:100%;min-width:0;padding:8px 9px;border:1px solid #d8e0ec;border-radius:7px;background:#fff;color:#1a2a43;font:400 12px/1.5 inherit;resize:vertical}
.nexo-translation-cell input{min-height:38px}
.nexo-translation-cell textarea,.nexo-extra-translation-row textarea{min-height:72px}
.nexo-translation-cell input:focus,.nexo-translation-cell textarea:focus,.nexo-extra-translation-row textarea:focus{border-color:#80a7ff;outline:0;box-shadow:0 0 0 3px #3978f61c}
.nexo-extra-terms-group>.nexo-settings-help{margin:12px 15px}
.nexo-extra-translation-list{display:grid;gap:9px;padding:0 15px 12px}
.nexo-extra-translation-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:10px;padding:12px;border:1px solid #e3e9f2;border-radius:9px;background:#fbfcff}
.nexo-extra-translation-row .nexo-field{font-size:11px}
.nexo-extra-term-remove{min-height:37px;margin-bottom:1px}
.nexo-extra-terms-group>[data-extra-term-add]{margin:0 15px 15px}
.nexo-translation-form>.nexo-form-actions{align-items:center;margin-top:15px}
.nexo-update-panel{display:grid;gap:16px}
.nexo-update-panel>.nexo-panel-heading{align-items:flex-start;flex-wrap:wrap}
.nexo-update-panel>.nexo-panel-heading h2{margin-bottom:5px}
.nexo-update-panel>.nexo-panel-heading p{max-width:850px}
.nexo-update-notice{padding:14px 16px;border:1px solid #dbe6fb;border-left:3px solid #3978f6;border-radius:10px;background:#f5f8ff;color:#344761}
.nexo-update-notice strong{display:block;margin-bottom:4px;color:#1a2a43;font-size:13px}
.nexo-update-notice p{margin:0;color:#657893;font-size:12px;line-height:1.65}
.nexo-update-upload{display:grid;gap:12px;padding:16px;border:1px solid var(--nexo-line);border-radius:11px;background:#fff}
.nexo-update-upload .nexo-field{max-width:750px}
.nexo-update-upload input[type=file]{width:100%;min-height:44px;padding:8px;border:1px solid var(--nexo-line);border-radius:8px;background:#fbfcff;color:#344761}
.nexo-update-upload .nexo-check-field{max-width:900px}
.nexo-update-upload>div>strong{display:block;color:#1a2a43;font-size:13px}.nexo-update-upload>div>p{margin:4px 0 0;color:#71829b;font-size:11px;line-height:1.55}
.nexo-update-dialog{width:min(760px,calc(100vw - 28px));max-width:none;max-height:min(92dvh,900px);padding:0;border:1px solid #d9e3f1;border-radius:18px;background:#f7f9fd;color:#1a2a43;box-shadow:0 24px 90px #13233c40;overflow:auto}
.nexo-update-dialog::backdrop{background:#101c2dcc;backdrop-filter:blur(5px)}
.nexo-update-dialog-shell{padding:clamp(16px,3vw,28px)}
.nexo-update-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}
.nexo-update-dialog-heading h2{margin:5px 0;color:#1a2a43;font-size:clamp(22px,4vw,30px);font-weight:800;letter-spacing:-.04em}
.nexo-update-dialog-heading p{margin:0;color:#71829b;font-size:12px;line-height:1.6}
.nexo-update-dialog-close{flex:0 0 auto;min-width:40px;padding:5px;font-size:21px;line-height:1}
.nexo-update-operation{display:grid;gap:14px}
.nexo-update-operation .nexo-field{min-width:0}
.nexo-update-operation input[readonly]{background:#eef3fa;color:#51637d}
.nexo-update-operation input[type=file]{width:100%;min-height:44px;padding:8px;border:1px solid var(--nexo-line);border-radius:8px;background:#fff;color:#344761}
.nexo-update-db-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;border:1px solid #dce5f1;border-radius:12px;background:#fff}
.nexo-update-db-grid .nexo-field-wide{grid-column:1/-1}
.nexo-update-test-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.nexo-update-test-row>[role=status]{color:#64758e;font-size:11px;line-height:1.5}
.nexo-update-test-row>[role=status].is-success{color:#14794d;font-weight:700}
.nexo-update-test-row>[role=status].is-error{color:#b54250;font-weight:700}
.nexo-update-progress{display:grid;gap:7px;padding:12px 14px;border:1px solid #dbe6fb;border-radius:10px;background:#f1f6ff}
.nexo-update-progress[hidden]{display:none}
.nexo-update-progress-label{display:flex;justify-content:space-between;gap:12px;color:#536985;font-size:10px;font-weight:700}
.nexo-update-progress-track{height:8px;border-radius:99px;background:#dce7f8;overflow:hidden}
.nexo-update-progress-track>span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#21c2da,#3978f6);transition:width .18s ease}
.nexo-update-permissions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none}
.nexo-update-permissions>li{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:39px;padding:7px 9px;border:1px solid #dce5f1;border-radius:9px;background:#fff;color:#566a85;font-size:10px}
.nexo-update-permission-icon{display:grid;width:19px;height:19px;place-items:center;border-radius:50%;background:#edf2fa;color:#6e8098;font-size:12px;font-weight:800}
.nexo-update-permissions>li>strong{color:#8190a5;font-size:9px;font-weight:700;white-space:nowrap}
.nexo-update-permissions>li.is-ok{border-color:#b9e4d0;background:#f2fbf6;color:#285b45}.nexo-update-permissions>li.is-ok .nexo-update-permission-icon{background:#d8f3e5;color:#16804f}.nexo-update-permissions>li.is-ok>strong{color:#16804f}
.nexo-update-permissions>li.is-missing{border-color:#f0c9c9;background:#fff7f7;color:#805050}.nexo-update-permissions>li.is-missing .nexo-update-permission-icon{background:#ffe3e3;color:#bd4242}.nexo-update-permissions>li.is-missing>strong{color:#bd4242}
.nexo-update-permission-help{margin:0;padding:11px 13px;border-left:3px solid #3978f6;border-radius:7px;background:#eef4ff;color:#5f7390;font-size:10px;line-height:1.6}
.nexo-update-confirm{align-items:flex-start;margin:0;padding:12px;border:1px solid #dce5f1;border-radius:9px;background:#fff}
.nexo-update-confirm input{margin-top:2px}
.nexo-update-dialog-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:3px}
.nexo-update-dialog-actions .nexo-button:disabled{cursor:not-allowed;opacity:.52;filter:saturate(.55)}
.nexo-update-history-heading{margin:4px 0 0;padding-top:10px;border-top:1px solid var(--nexo-line)}
.nexo-update-history-heading h3{margin:0;color:#1a2a43;font-size:16px;font-weight:750}
.nexo-update-history-heading p{margin:4px 0 0;color:#71829b;font-size:11px}
.nexo-update-history{min-width:850px}
.nexo-update-history td{vertical-align:middle}
.nexo-update-history td>small,.nexo-update-error{display:block;max-width:320px;margin-top:4px;color:#74849a;font-size:10px;overflow-wrap:anywhere}
.nexo-update-error{color:#b54250}
.nexo-update-rollback{display:grid;min-width:170px;gap:7px}
.nexo-update-rollback label{display:flex;align-items:flex-start;gap:6px;color:#64758e;font-size:10px;line-height:1.45}
.nexo-update-rollback input{flex:0 0 auto;margin-top:2px}
.nexo-update-rollback .nexo-button{white-space:normal}
.nexo-update-history .nexo-status.is-alert{background:#fff4e8;color:#9a6419}

@media(max-width:991.98px){.jms-locale-code{display:none}.jms-locale-switch a{min-width:31px;padding-inline:6px}.nexo-topbar-right>.jms-locale-switch{margin-right:0}}
@media(max-width:767.98px){.nexo-settings-tabs{margin-inline:-2px}.nexo-settings-tab{min-height:39px;padding:8px 10px;font-size:11px}.nexo-extra-translation-row{grid-template-columns:minmax(0,1fr)}.nexo-extra-term-remove{width:100%}.nexo-topbar-right>.jms-locale-switch{gap:2px}.customer-workspace-actions>.jms-locale-switch{order:-1}}
@media(max-width:575.98px){.jms-locale-switch{gap:2px;padding:2px}.jms-locale-switch a{min-width:29px;min-height:28px;padding:4px}.jms-locale-switch a>span:first-child{font-size:14px}.auth-header-actions{gap:8px}.auth-header-actions .auth-header-link{font-size:11px}.nexo-translation-language-key{gap:5px}.nexo-translation-language-key>span{padding:6px 8px;font-size:10px}.nexo-translation-group>summary{padding-inline:11px}.nexo-translation-table>tbody>tr>td{padding:8px}.nexo-client-workspace .customer-workspace-topbar{flex-wrap:wrap;padding-top:8px;padding-bottom:8px}.nexo-client-workspace .customer-workspace-actions{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:575.98px){.nexo-update-dialog{width:calc(100vw - 16px);max-height:94dvh;border-radius:13px}.nexo-update-dialog-shell{padding:15px}.nexo-update-db-grid,.nexo-update-permissions{grid-template-columns:minmax(0,1fr)}.nexo-update-db-grid .nexo-field-wide{grid-column:auto}.nexo-update-test-row{align-items:stretch}.nexo-update-test-row .nexo-button{width:100%}.nexo-update-dialog-actions{display:grid;grid-template-columns:1fr 1fr}.nexo-update-dialog-actions .nexo-button{width:100%}}
