:root{color:#182033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}#root{min-height:100svh}.app-shell{background:#f5f7fb;min-height:100svh}.app-header{background:#fff;border-bottom:1px solid #d9dee8;justify-content:space-between;align-items:center;height:48px;padding-inline:12px;display:flex}.login-page{grid-template-columns:minmax(280px,520px) minmax(320px,420px);justify-content:center;align-items:center;gap:32px;min-height:calc(100svh - 48px);padding:32px 16px;display:grid}.login-copy h1{margin-bottom:12px}.login-panel{border-radius:8px;box-shadow:0 18px 50px #2a37571f}.demo-account{margin-top:8px;display:block}.password-change-page{justify-content:center;align-items:center;min-height:calc(100svh - 48px);padding:16px;display:flex}.password-change-panel{width:100%;max-width:420px}.console{min-height:calc(100svh - 48px);padding:10px}.console-layout{min-height:calc(100svh - 48px)}.console-layout>.ant-layout{min-width:0}.platform-main{flex:1;min-width:0}.platform-filters{margin-bottom:8px}.platform-filters .ant-select,.platform-filters .ant-input{min-width:180px}.app-sider{background:#fff;border-right:1px solid #d9dee8}.tenant-block{border-bottom:1px solid #edf0f6;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.toolbar{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.toolbar h2{margin:0 0 2px}.page-loading-fallback{justify-content:center;align-items:center;width:100%;min-height:240px;display:flex}.page-loading-fallback-compact{min-height:120px}.metric-grid{grid-template-columns:repeat(4,minmax(160px,1fr));gap:8px;display:grid}.metric-grid .ant-statistic{background:#fff;border:1px solid #d9dee8;border-radius:8px;padding:8px}.full-width{width:100%}.page-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.translation-card+.translation-card{margin-top:8px}.translation-tabs{margin-bottom:4px}.translation-tab-panel{padding-top:2px}.translation-tab-panel .ant-form-item{max-width:none}.tenant-config-preview{border:1px solid #d9dee8;border-radius:6px;margin-bottom:8px;padding:6px 8px}.tenant-config-preview pre{background:#f5f7fb;border-radius:6px;max-height:220px;margin:4px 0 0;padding:6px 8px;overflow:auto}.assignment-select{width:100%;min-width:0}.assignment-editor{border-top:1px solid #edf0f6;margin:0 0 6px;padding-top:6px}.assignment-editor-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.assignment-row{flex-wrap:wrap;gap:6px;width:100%;margin-bottom:6px;display:flex}.assignment-row .assignment-select{flex:180px}.compact-section-divider{margin:0 0 6px}.ant-modal .ant-form-item{margin-bottom:6px}.ant-form-horizontal .ant-form-item-label{flex-shrink:0}.ant-form-horizontal .ant-form-item-control{min-width:0}.ant-modal .ant-divider-horizontal.ant-divider-with-text{font-size:13px}.ant-card-body>.ant-form:last-child{margin-bottom:-6px}.ant-modal .ant-modal-header{margin-bottom:8px;padding-bottom:8px}.ant-modal .ant-modal-content{padding:12px}.ant-modal .ant-modal-body{padding-top:0}.ant-modal .ant-modal-footer{margin-top:8px}.ant-table-wrapper .ant-table-thead>tr>th,.ant-table-wrapper .ant-table-tbody>tr>td{line-height:1.35}.ant-table-wrapper{overflow-x:auto}.ant-tabs-top>.ant-tabs-nav{margin-bottom:6px}.ant-tabs .ant-tabs-tab{padding-block:4px}@media (width<=840px){.login-page{grid-template-columns:1fr;gap:16px}.toolbar{flex-direction:column;align-items:flex-start}.metric-grid{grid-template-columns:1fr}.page-actions{flex-direction:column;align-items:flex-start}.platform-filters .ant-form-item,.platform-filters .ant-input,.platform-filters .ant-select{width:100%}}@media (width<=480px){.app-header{gap:4px;padding-inline:4px}.app-header>.ant-space:first-child .ant-typography,.app-header>.ant-space:last-child>.ant-space-item:first-child{display:none}.app-header .ant-btn{padding-inline:6px}.app-header .ant-btn>span:not(.ant-btn-icon){display:none}}
