:root{color-scheme:light;--bg: #f5f7fb;--panel: #fff;--text: #17202a;--muted: #667085;--line: #d7deea;--accent: #155eef;--accent-soft: #eff4ff;--danger: #b42318;font-family:Inter,Segoe UI,Microsoft YaHei,Arial,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;overflow:hidden}body{margin:0;min-width:360px;background:var(--bg);color:var(--text)}.admin-shell{height:100vh;min-height:0;display:grid;grid-template-columns:236px minmax(0,1fr);overflow:hidden}.admin-shell.is-collapsed{grid-template-columns:72px minmax(0,1fr)}.admin-sidebar{min-width:0;min-height:0;border-right:1px solid var(--line);background:#fff;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.brand-block{height:72px;padding:16px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.brand-icon{width:34px;height:34px;border-radius:9px;flex:0 0 auto;object-fit:cover}.brand-text{min-width:0;display:grid;gap:3px}.brand-block strong{font-size:18px}.brand-block small{color:var(--muted);font-size:12px;font-weight:700}.admin-shell.is-collapsed .brand-block small,.admin-shell.is-collapsed .brand-block strong,.admin-shell.is-collapsed .side-menu-group-title,.admin-shell.is-collapsed .side-menu span,.admin-shell.is-collapsed .danger-menu-mark{display:none}.admin-shell.is-collapsed .brand-block{justify-content:center;padding:14px 0}.side-menu{border-right:0;min-height:0;overflow:auto;padding:8px 0 12px}.side-menu-group-title{min-height:28px;padding:12px 20px 6px;color:#8a94a6;font-size:11px;font-weight:800}.side-menu-group-title:first-child{padding-top:6px}.danger-menu-mark{margin-left:auto;color:var(--danger);font-size:11px;font-weight:800}.admin-main{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.admin-header{min-height:72px;padding:12px 20px;border-bottom:1px solid var(--line);background:#fff;display:flex;justify-content:space-between;align-items:center;gap:16px;position:relative;z-index:2}.header-left,.header-actions,.page-heading,.page-actions,.table-filters{display:flex;align-items:center;gap:12px}.header-left{min-width:0}.header-title-line{min-width:0;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.header-left h1,.page-heading h2{margin:0 0 4px}.header-left h1{margin-bottom:0;font-size:20px}.header-title-line p{margin:0}.header-title-line p:before{content:"/";margin-right:10px;color:#98a2b3}.header-actions{justify-content:flex-end;flex-wrap:wrap}.sidebar-account{min-width:0;padding:14px 16px 16px;border-top:1px solid var(--line);background:#fff;display:grid;gap:10px}.account-trigger{width:100%;min-height:44px;padding:8px 10px;display:flex;align-items:center;gap:10px;text-align:left}.account-trigger-text{min-width:0;display:grid;gap:2px}.account-trigger-text strong,.account-trigger-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-trigger-text strong{color:#344054;font-size:13px}.account-trigger-text small{color:var(--muted);font-size:12px}.account-popover{padding:0!important;border-radius:12px!important;overflow:hidden}.account-panel{display:grid;background:#fff}.account-panel-head{min-width:0;padding:14px 14px 12px;display:flex;align-items:center;gap:10px}.account-avatar{width:36px;height:36px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;background:#58d39b;color:#fff;font-size:16px;font-weight:800}.account-profile-text{min-width:0;display:grid;gap:2px}.account-profile-text strong,.account-profile-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-profile-text strong{color:#101828;font-size:15px;line-height:1.2}.account-profile-text small{color:#667085;font-size:12px;font-weight:600}.account-profile-text small span{margin:0 6px}.account-menu-group{padding:6px 0;border-top:1px solid #eaecf0}.account-menu-title{padding:0 14px 4px 42px;color:#98a2b3;font-size:11px;font-weight:800}.account-menu-item{width:100%;min-height:36px;padding:6px 14px;border:0;border-radius:0;background:transparent;color:#101828;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer}.account-menu-item:hover,.account-menu-item:focus-visible{background:#f9fafb}.account-menu-item:focus-visible{outline:2px solid rgba(34,116,255,.22);outline-offset:-2px}.account-menu-text{min-width:0;display:grid;gap:1px}.account-menu-text strong,.account-menu-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu-text strong{font-size:13px;font-weight:700}.account-menu-text small{color:#667085;font-size:11px;font-weight:600}.account-menu-item.danger{color:#f04438;font-size:15px;font-weight:700}.admin-shell.is-collapsed .sidebar-account{padding:12px 10px;justify-items:center}.admin-shell.is-collapsed .sidebar-account .user-name,.admin-shell.is-collapsed .account-trigger-text{display:none}.admin-shell.is-collapsed .account-trigger{width:40px;min-height:40px;justify-content:center;padding:0}.tenant-select{width:220px}.user-name{color:#344054;font-size:13px;font-weight:800}.admin-content{min-width:0;min-height:0;padding:18px;display:grid;overflow:hidden}.admin-content>*{min-height:0;min-width:0}.login-page{height:100%;min-height:0;display:grid;place-items:start center;padding:72px 18px;overflow:auto}.login-panel{width:min(430px,100%);display:grid;gap:18px;padding:24px;border:1px solid var(--line);border-radius:8px;background:#fff}.login-panel h1{margin:0 0 8px;font-size:22px}.login-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.console-grid{width:100%;display:grid;grid-template-columns:300px minmax(420px,560px) minmax(420px,1fr);gap:16px;align-items:start}.request-panel,.response-panel{min-width:0}.resource-page,.dashboard-page{display:grid;gap:16px;min-height:0}.resource-page{height:100%;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.resource-page>.panel{min-height:0;display:flex;flex-direction:column;overflow:hidden}.dashboard-page{height:100%;overflow:auto}.page-heading{justify-content:space-between;align-items:end}.table-filters{flex:0 0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px 12px;margin-bottom:14px;padding:14px;border:1px solid #e8ebf1;border-radius:22px;background:#fff}.table-filter-fields{display:grid;grid-template-columns:minmax(260px,1fr) minmax(160px,230px);gap:10px}.table-filter-actions{display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:8px}.table-filter-actions .column-picker{display:flex;align-items:center;gap:8px}.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.metric-item{min-height:104px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;display:grid;gap:8px}.metric-item span,.metric-item small{color:var(--muted);font-size:13px;font-weight:700}.metric-item strong{font-size:28px;line-height:1}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);gap:16px}.detail-list{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px 12px;margin:0}.detail-list dt{color:var(--muted);font-weight:800}.detail-list dd{margin:0;overflow-wrap:anywhere}.empty-report{min-height:360px;display:grid;place-items:center}.admin-data-page{height:100%;min-height:0;grid-template-rows:auto minmax(0,1fr)}.admin-data-modern{min-height:0;display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;align-items:stretch}.table-list-panel,.table-data-panel{min-width:0;min-height:0;overflow:hidden}.table-list-panel,.table-data-panel{display:flex;flex-direction:column}.table-toolbar-modern,.table-toolbar-actions,.pagination-footer{display:flex;gap:12px;align-items:center;justify-content:space-between}.table-toolbar-modern{margin-bottom:12px}.table-toolbar-actions{justify-content:flex-end;flex-wrap:wrap}.pagination-footer{margin-top:12px;justify-content:flex-end;flex:0 0 auto}.app-pagination{width:100%;display:flex;align-items:center;justify-content:flex-end;gap:12px;color:#5f6673;font-size:14px;font-weight:700;line-height:1}.app-pagination-total{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.app-pagination-total strong{color:#15171c;font-size:15px;font-weight:800}.app-pagination-size{display:inline-flex;align-items:center;gap:8px;margin-bottom:0;padding-bottom:0;white-space:nowrap}.app-pagination-controls{display:inline-flex;align-items:center;gap:7px}.app-page-button{width:36px;height:36px;padding:0;border:1px solid #e6e8ee;border-radius:50%;background:#fff;color:#5f6673;display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:15px;font-weight:700;line-height:1;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease}.app-page-button:hover:not(:disabled):not(.is-active){border-color:#cfd4dc;background:#f8fafc;color:#15171c}.app-page-button:disabled{color:#c9ced8;cursor:not-allowed;opacity:.62}.app-page-ellipsis{width:18px;display:inline-flex;align-items:center;justify-content:center;color:#7b8190;font-size:15px;font-weight:800}.mono-cell{font-family:Cascadia Mono,Consolas,monospace;font-size:12px}.scenario-module-tabs{width:96px}.topbar{min-height:84px;padding:18px 24px;border-bottom:1px solid var(--line);background:var(--panel);display:flex;justify-content:space-between;align-items:center;gap:16px}.topbar-actions{display:flex;align-items:center;gap:10px}h1{margin:0 0 6px;font-size:22px}p{margin:0;color:var(--muted);font-size:14px}.badge{padding:8px 12px;border:1px solid #b2ccff;border-radius:6px;background:var(--accent-soft);color:#1849a9;font-size:13px;font-weight:700}.layout{width:min(1500px,100%);margin:0 auto;padding:18px;display:grid;grid-template-columns:300px minmax(420px,560px) 1fr;gap:16px;align-items:start}.admin-page{width:100%;margin:0;padding:18px;display:grid;gap:16px}.admin-login-page{height:100%;min-height:0;padding:56px 18px;display:grid;align-items:start;justify-items:center;overflow:auto}.admin-login-card{width:min(420px,100%);display:grid;gap:14px}.admin-login-card h2{margin:0;font-size:20px}.admin-login-card label{margin-bottom:0}.admin-login-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-login-actions .send{margin-top:0}.admin-login-message{min-height:20px;overflow-wrap:anywhere}.admin-login-message.is-error{color:var(--danger);font-weight:700}.admin-settings{display:grid;grid-template-columns:minmax(280px,1fr) 160px 180px;gap:12px;align-items:end}.admin-settings label{margin-bottom:0}.panel{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:16px}.scenario-panel{position:sticky;top:18px;height:calc(100vh - 120px);min-height:520px;display:flex;flex-direction:column;overflow:hidden}.section-title{margin:0 0 12px;font-size:13px;font-weight:800;color:#344054}.section-title:not(:first-child){margin-top:22px}.scenario-menu{min-height:0;display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;flex:1;overflow:hidden}.primary-menu{display:grid;align-content:start;gap:8px;overflow:auto}.primary-menu-button{min-height:40px;padding:0 8px;text-align:left}.submenu-scroll{min-height:0;overflow-y:auto;padding-right:4px}.scenario-groups{display:grid;gap:14px}.scenario-group{display:grid;gap:8px}.scenario-group-title{padding:0 2px;color:var(--muted);font-size:12px;font-weight:800}.scenario-list{display:grid;gap:8px}.module-switcher{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:18px}.session-block{flex:0 0 auto;padding-top:14px;border-top:1px solid var(--line)}.session-block .section-title{margin-top:0}button{min-height:38px;border:1px solid #cfd6e3;border-radius:6px;background:#fff;color:var(--text);cursor:pointer;font:inherit;font-weight:700}button:hover{border-color:var(--accent)}button.active,button.send{border-color:var(--accent);background:var(--accent);color:#fff}button.send{margin-top:4px}button.ghost{background:#fff}button.ghost.active,.segmented-control button.active{border-color:var(--accent);background:var(--accent);color:#fff}button.full{width:100%;margin-top:14px}button:disabled{cursor:wait;opacity:.6}label{display:block;margin-bottom:12px;color:#344054;font-size:13px;font-weight:700}input,select,textarea{width:100%;margin-top:6px;border:1px solid #cfd6e3;border-radius:6px;background:#fff;color:var(--text);font:inherit}input,select{height:38px;padding:8px 10px}textarea{resize:vertical;min-height:90px;padding:10px;font-family:Cascadia Mono,Consolas,monospace;font-size:13px;line-height:1.45}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:var(--accent);outline:2px solid rgba(21,94,239,.14)}input[type=checkbox],input[type=radio]{width:14px!important;height:14px!important;min-height:0;margin:0;padding:0!important;border:0;flex:0 0 auto;accent-color:var(--accent);vertical-align:middle}input[type=checkbox]:focus,input[type=radio]:focus{outline:none;box-shadow:none}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid rgba(21,94,239,.28);outline-offset:2px}.request-line{display:grid;grid-template-columns:130px 1fr;gap:10px}.check-row{display:flex;align-items:center;gap:8px}.check-row input{width:16px;height:16px;margin:0}.file-upload-box{display:grid;gap:8px;margin:4px 0 14px;padding:12px;border:1px solid var(--line);border-radius:6px;background:#f8fafc}.file-upload-box .section-title{margin-bottom:0}.file-upload-box input{margin-top:0}.file-upload-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.file-upload-actions .send{margin-top:0}.state-list{display:grid;grid-template-columns:64px 1fr;gap:8px;margin:0;font-size:13px}.state-list dt{color:var(--muted)}.state-list dd{margin:0;overflow-wrap:anywhere;font-family:Cascadia Mono,Consolas,monospace}.response-head{display:flex;justify-content:space-between;align-items:start;gap:12px}.admin-data-panel{width:100%;min-height:calc(100vh - 120px)}.admin-data-head,.table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px}.admin-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px}.admin-actions label,.table-toolbar label{margin-bottom:0}.admin-data-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:14px;margin-top:16px}.table-list{display:grid;align-content:start;gap:8px;max-height:calc(100vh - 210px);overflow:auto}.table-list button{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;text-align:left}.table-list small{color:var(--muted);font-weight:700}.table-view{min-width:0}.table-toolbar{margin-bottom:12px}.table-toolbar h2{margin:0;font-size:18px}.data-table-wrap{position:relative;max-height:calc(100vh - 310px);overflow:auto;border:1px solid var(--line);border-radius:6px}.generic-table{display:grid;gap:10px}.generic-table-toolbar,.pagination-bar{display:flex;justify-content:space-between;align-items:end;gap:12px}.generic-table-toolbar-left{min-width:220px;flex:1}.generic-table-actions{display:flex;justify-content:flex-end;align-items:end;flex-wrap:wrap;gap:10px}.generic-table-actions label,.table-page-size{width:92px;margin-bottom:0}.table-search{display:flex;align-items:center;gap:8px;width:min(360px,100%);margin-bottom:0;white-space:nowrap}.table-search input{width:min(300px,100%);margin-top:0}.generic-table-actions label.table-page-size,.table-page-tools label.table-page-size{display:flex;align-items:center;gap:8px;width:auto;white-space:nowrap}.table-page-size select{width:72px;margin-top:0}.table-page-tools{display:flex;justify-content:flex-end;align-items:end;flex-wrap:wrap;gap:10px}.table-pagination-bottom{margin-top:10px}.pagination-summary,.pagination-bar{color:var(--muted);font-size:13px;font-weight:700}.pagination-controls{display:flex;align-items:center;gap:8px}.page-input{width:48px;height:32px;padding:0 6px;text-align:center}.column-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:10;width:260px;max-height:360px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 16px 36px #10182829}.resource-column-menu{width:190px;padding:10px 0;border-radius:18px;box-shadow:0 12px 28px #1018282e}.column-menu-title{padding:4px 16px 8px;color:#475467;font-size:14px;font-weight:700}.column-toggle-item{width:100%;height:36px;padding:0 16px;border:0;background:transparent;color:#101828;display:flex;align-items:center;justify-content:space-between;font-size:15px;font-weight:700;text-align:left;cursor:pointer}.column-toggle-item:hover{background:#f8fafc}.column-menu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;color:var(--muted);font-size:12px;font-weight:800}.column-option{display:flex;align-items:center;gap:8px;margin:0;padding:6px 4px;font-family:Cascadia Mono,Consolas,monospace;font-size:12px;font-weight:600}.column-option input{width:15px;height:15px;margin:0}.text-button{min-height:0;padding:0;border:0;background:transparent;color:var(--accent);font-size:12px}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th,.data-table td{max-width:280px;padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere}.data-table .action-col{width:72px;min-width:72px;max-width:72px;text-align:center}.data-table th{position:sticky;top:0;z-index:1;background:#f8fafc;color:#344054;font-weight:800}.data-table td{font-family:Cascadia Mono,Consolas,monospace}.content-cell{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.copy-link{min-height:28px;padding:0 8px;font-size:12px}.copyable-id{display:inline-flex;max-width:100%;align-items:center;gap:6px;vertical-align:middle}.copyable-id-text{min-width:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.copy-id-button{width:24px;height:24px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid #e4e7ec;border-radius:6px;background:#fff;color:#52525b;cursor:pointer}.copy-id-button:hover{border-color:#cbd5e1;background:#f8fafc;color:#18181b}.copy-id-button svg{width:14px;height:14px}.empty-state{padding:32px;border:1px dashed var(--line);border-radius:6px;color:var(--muted);text-align:center}.danger-button{border-color:#fecdca;background:#fff;color:var(--danger)}.danger-button:hover,.danger-link:hover{border-color:var(--danger)}.danger-link{min-height:28px;padding:0 8px;border-color:#fecdca;color:var(--danger);font-size:12px}.config-manager{display:grid;gap:16px}.config-manager.resource-page{display:flex;flex-direction:column}.config-list-toolbar,.config-table-head,.config-detail-summary,.diff-dialog-head{display:flex;justify-content:space-between;align-items:end;gap:12px}.config-detail-actions,.config-table-actions{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.config-table-panel,.config-detail-page,.config-detail-editor{display:grid;gap:14px;min-height:0}.config-table-panel{flex:1 1 auto;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.config-detail-summary{align-items:start}.config-detail-summary h2{margin:0 0 6px;font-size:20px;overflow-wrap:anywhere}.config-form-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px}.config-edit-form{display:grid;gap:14px}.config-diff-dialog .diff-table{max-height:min(520px,calc(100vh - 240px))}.diff-table{max-height:360px;overflow:auto;border:1px solid var(--line);border-radius:6px;background:#fbfcff;font-family:Cascadia Mono,Consolas,monospace;font-size:12px}.diff-row{display:grid;grid-template-columns:52px 52px minmax(0,1fr);min-height:24px;border-bottom:1px solid #edf1f7}.diff-row.add{background:#ecfdf3}.diff-row.remove{background:#fff1f3}.diff-row code{padding:4px 8px;white-space:pre-wrap;overflow-wrap:anywhere}.line-no{padding:4px 6px;border-right:1px solid #e4e9f2;color:var(--muted);text-align:right;-webkit-user-select:none;user-select:none}pre{min-height:620px;max-height:calc(100vh - 182px);overflow:auto;margin:14px 0 0;padding:14px;border:1px solid #d7deea;border-radius:6px;background:#fbfcff;color:#17202a;font-family:Cascadia Mono,Consolas,monospace;font-size:13px;line-height:1.5;white-space:pre-wrap}@media(max-width:1180px){.layout{grid-template-columns:280px 1fr}.response-panel,.admin-data-panel{grid-column:1 / -1}}@media(max-width:760px){.topbar{align-items:flex-start;flex-direction:column}.layout{grid-template-columns:1fr;padding:12px}.scenario-panel{position:static;height:min(760px,calc(100vh - 24px));min-height:0}.scenario-menu{grid-template-columns:88px minmax(0,1fr)}.response-panel{grid-column:auto}.request-line{grid-template-columns:1fr}.admin-page{padding:12px}.admin-login-page{padding:24px 12px}.admin-login-actions{grid-template-columns:1fr}.admin-settings,.topbar-actions{display:grid;grid-template-columns:1fr;width:100%}.admin-data-layout,.admin-data-modern,.admin-data-head,.app-pagination,.header-title-line,.config-list-toolbar,.config-table-head,.config-detail-summary,.diff-dialog-head,.table-toolbar,.generic-table-toolbar,.generic-table-actions,.table-page-tools,.pagination-bar,.admin-actions{grid-template-columns:1fr;display:grid}.header-title-line p:before{content:"";margin-right:0}.config-detail-actions,.config-table-actions{display:grid;grid-template-columns:1fr}.config-form-grid{grid-template-columns:1fr}.column-menu{left:0;right:auto;width:min(280px,calc(100vw - 48px))}.app-pagination{display:flex;justify-content:flex-start;gap:12px}.app-pagination-controls{width:100%;flex-wrap:wrap;gap:8px}.app-page-button{width:36px;height:36px;font-size:15px}.table-filter-fields,.table-filters{grid-template-columns:1fr}.table-filter-actions{justify-content:flex-start;justify-self:start;flex-wrap:wrap}pre{min-height:340px;max-height:none}}:root{--bg: #f6f6f5;--panel: #fff;--text: #191a1d;--muted: #71717a;--line: #e5e7eb;--accent: #155eef;--accent-soft: #eff4ff;--danger: #dc2626;--success: #059669;--warning: #d97706;--radius: .75rem;font-family:Public Sans,Inter,Segoe UI,Microsoft YaHei,Arial,sans-serif;font-size:13px}body{background:var(--bg);color:var(--text);font-size:13px}.admin-shell{grid-template-columns:248px minmax(0,1fr);gap:8px;padding:8px;background:var(--bg)}.admin-shell.is-collapsed{grid-template-columns:76px minmax(0,1fr)}.admin-sidebar{border-right:0;background:transparent;grid-template-rows:auto minmax(0,1fr) auto}.brand-block{height:54px;padding:10px 14px;border-bottom:0;display:flex;align-items:center;gap:9px}.brand-icon{width:32px;height:32px;border-radius:9px;flex:0 0 auto;object-fit:cover}.brand-text{min-width:0;display:grid;gap:2px}.brand-block strong{font-size:14px;font-weight:800;letter-spacing:0}.brand-block small{color:var(--muted);font-size:11px;font-weight:700}.admin-shell.is-collapsed .brand-block{justify-content:center;padding:10px 0}.admin-shell.is-collapsed .brand-text{display:none}.side-menu{display:grid;align-content:start;gap:2px;padding:8px 10px 14px}.side-menu-group-title{min-height:24px;padding:12px 10px 4px;color:#8b8f99;font-size:11px;font-weight:700}.side-menu-item{min-height:34px;padding:0 10px;border-radius:10px;color:#27272a;display:flex;align-items:center;gap:10px;text-decoration:none;font-size:13px;font-weight:700}.side-menu-item:hover{background:#ececeb}.side-menu-item.active{background:#e7e7e6;color:#09090b}.side-menu-item svg{width:17px;height:17px;flex:0 0 auto}.admin-shell.is-collapsed .side-menu-item{justify-content:center;padding:0}.sidebar-account{position:relative;padding:10px;border-top:0;background:transparent}.env-pill{width:fit-content;min-height:24px;padding:0 8px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);display:inline-flex;align-items:center;font-size:11px;font-weight:800}.env-pill.danger{border-color:#fecaca;color:var(--danger)}.account-popover-wrap{position:relative}.account-trigger{min-height:38px;padding:7px 9px;border:1px solid transparent;border-radius:10px;background:transparent}.account-trigger:hover,.account-trigger[aria-expanded=true]{border-color:var(--line);background:#fff}.account-trigger svg,.account-menu-item svg,.ui-icon-button svg,.ui-button svg,.filter-control svg,.app-page-button svg,.app-pagination-size-select svg,.table-link svg,.column-toggle-item svg{width:16px;height:16px;flex:0 0 auto}.account-trigger-text strong{color:#27272a;font-size:12px}.account-trigger-text small{color:var(--muted);font-size:11px}.account-popover.account-panel{position:absolute;left:0;bottom:calc(100% + 8px);z-index:30;width:260px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 18px 40px #0f172a24}.account-menu-item{min-height:34px;font-size:13px}.account-menu-item.active{background:#fff3e8;color:#9a3412;box-shadow:inset 3px 0 #f97316}.account-menu-item.active svg{color:#f97316}.account-menu-item.active .account-menu-text strong,.account-menu-item.active .account-menu-text small{color:#9a3412}.admin-main{border:1px solid var(--line);border-radius:22px;background:var(--panel);box-shadow:0 1px 2px #0f172a0d;overflow:hidden}.admin-header{min-height:52px;padding:10px 16px;border-bottom:0;background:#fff}.header-left h1{font-size:16px;font-weight:800}.header-title-line p{color:var(--muted);font-size:12px}.tenant-select{width:200px;height:32px;margin:0;border-color:var(--line);border-radius:10px;font-size:13px}.admin-content{padding:0 16px 14px}.admin-content.is-route-scrollable{overflow:auto;align-content:start}.resource-page{gap:0;grid-template-rows:minmax(0,1fr)}.tenant-member-page{min-height:0;display:grid;gap:16px}.tenant-current-label{min-height:32px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fafafa;color:#3f3f46;display:inline-flex;align-items:center;font-size:13px;font-weight:800}.tenant-member-import-modal.ui-modal{width:min(1120px,calc(100vw - 36px))}.tenant-member-edit-drawer{width:min(520px,100vw);display:flex;flex-direction:column;gap:12px}.tenant-member-edit-form{display:grid;gap:12px}.tenant-member-form-grid{display:grid;grid-template-columns:1fr;gap:12px}.tenant-member-import-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tenant-member-import-progress{min-height:74px;padding:12px 14px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1d4ed8;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:center;font-size:13px;font-weight:700}.tenant-member-import-progress .table-loading-spinner{grid-row:1 / span 2}.tenant-member-import-progress strong{color:#1e3a8a;font-size:13px;font-weight:900}.tenant-member-import-progress span:last-child{color:#1d4ed8;font-size:12px;line-height:1.45}.tenant-member-import-file{min-height:40px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fafafa;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#475569;font-size:12px;font-weight:700}.tenant-member-import-file strong,.tenant-member-import-file span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tenant-member-import-stats{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tenant-member-import-stats span{min-height:26px;padding:4px 9px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:12px;font-weight:800}.tenant-member-import-stats strong{color:#111827}.tenant-member-import-table-wrap{min-height:160px;max-height:min(520px,calc(100vh - 320px));overflow:auto;border:1px solid var(--line);border-radius:8px}.tenant-member-import-table{min-width:1120px}@media(max-width:720px){.tenant-member-form-grid{grid-template-columns:1fr}}.visually-hidden-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.panel,.table-shell-card{border:0;border-radius:0;background:transparent;padding:0}.table-alert{margin-bottom:10px;padding:8px 10px;border:1px solid #fde68a;border-radius:10px;background:#fffbeb;color:#92400e;font-size:12px;font-weight:700}.table-filters{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:18px;background:#ffffffb8}.table-filter-fields{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:8px}.table-filter-fields.is-wrapping-controls{align-items:center;flex-wrap:wrap}.filter-width-180{--filter-control-width: 180px}.filter-width-260{--filter-control-width: 260px}.filter-width-360{--filter-control-width: 360px}.filter-width-180,.filter-width-260,.filter-width-360{width:var(--filter-control-width);flex:0 0 var(--filter-control-width);max-width:100%}.table-filter-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}.filter-control{min-width:0;height:32px;margin:0;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#3f3f46;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500}.filter-control-keyword{grid-column:auto}.filter-control-masked-mobile{gap:8px;justify-content:stretch}.filter-control.filter-control-masked-mobile input{width:auto;flex:1 1 0;min-width:0;text-align:center}.filter-control.filter-control-masked-mobile input:last-of-type{width:auto;flex-basis:0}.masked-mobile-label{flex:0 0 auto;padding-right:2px;color:#52525b;font-size:12px;font-weight:800;white-space:nowrap}.masked-mobile-mask{flex:0 0 auto;min-width:52px;height:22px;padding:0 12px;border:1px solid #edf0f5;border-radius:999px;background:#f7f8fb;display:inline-flex;align-items:center;justify-content:center;gap:5px}.masked-mobile-mask span{width:4px;height:4px;border-radius:999px;background:#9ca3af}.filter-control input,.filter-control select{width:100%;height:30px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;outline:0}.filter-control input:focus,.filter-control select:focus{border-color:transparent;outline:none}.filter-control:focus-within{border-color:var(--accent);box-shadow:none}.ui-button,.ui-icon-button{min-height:0;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .12s ease}.ui-button{height:32px;padding:0 11px;border:1px solid var(--line);background:#fff;color:#27272a;font-size:13px;font-weight:800}.ui-icon-button{width:32px;height:32px;padding:0;border:1px solid transparent;background:transparent;color:var(--muted)}.ui-icon-button:hover,.ui-button-soft:hover,.ui-button-soft[aria-expanded=true]{border-color:var(--line);background:var(--accent-soft);color:#09090b}.ui-icon-button.is-active{color:#27272a}.ui-icon-button.course-action-primary{border-color:#bfdbfe;background:#eff6ff;color:#2563eb}.ui-icon-button.course-action-primary:hover:not(:disabled){border-color:#60a5fa;background:#dbeafe;color:#1d4ed8}.ui-icon-button.course-action-warning{border-color:#fde68a;background:#fffbeb;color:#d97706}.ui-icon-button.course-action-warning:hover:not(:disabled){border-color:#fbbf24;background:#fef3c7;color:#b45309}.ui-icon-button.course-action-danger{border-color:#fecaca;background:#fef2f2;color:#dc2626}.ui-icon-button.course-action-danger:hover:not(:disabled){border-color:#fca5a5;background:#fee2e2;color:#b91c1c}.ui-button-primary{border-color:var(--accent);background:var(--accent);color:#fff}.ui-button-primary:hover:not(:disabled){border-color:#004eeb;background:#004eeb}.column-picker{position:relative}.column-menu.resource-column-menu{top:calc(100% + 8px);right:0;width:180px;max-height:320px;padding:8px 0;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 18px 40px #0f172a24}.column-menu-title{padding:4px 14px 6px;color:#52525b;font-size:12px;font-weight:800}.column-toggle-item{width:100%;height:32px;padding:0 14px;border:0;border-radius:0;background:transparent;color:#18181b;justify-content:space-between;font-size:13px;font-weight:700}.column-toggle-item:hover{background:#f4f4f5}.resource-table-wrap{min-height:0;flex:1 1 auto;position:relative;overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff}.resource-table-wrap.is-loading .resource-table,.data-table-wrap.is-loading .data-table,.internal-member-table-wrap.is-loading .resource-table{opacity:.42}.table-loading-overlay{position:absolute;inset:40px 0 0;z-index:10;min-height:140px;padding:18px;background:#ffffffd1;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:grid;align-content:start;gap:14px;pointer-events:auto}.table-loading-card{width:fit-content;min-height:34px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#3f3f46;display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:800;box-shadow:0 8px 24px #0f172a14}.table-loading-spinner{width:14px;height:14px;border:2px solid #d4d4d8;border-top-color:#18181b;border-radius:999px;animation:table-loading-spin .8s linear infinite}.table-loading-skeleton{display:grid;gap:10px}.table-loading-skeleton span{height:22px;border-radius:7px;background:linear-gradient(90deg,#eef0f4,#f8fafc 42%,#eef0f4 82%);background-size:220% 100%;animation:table-loading-shimmer 1.2s ease-in-out infinite}.table-loading-skeleton span:nth-child(2n){width:88%}.table-loading-skeleton span:nth-child(3n){width:72%}@keyframes table-loading-spin{to{transform:rotate(360deg)}}@keyframes table-loading-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.resource-table{width:100%;min-width:max(100%,960px);border-collapse:collapse;table-layout:auto;color:#27272a;font-size:13px;font-variant-numeric:tabular-nums}.resource-table th,.resource-table td{height:40px;padding:8px 10px;border-bottom:1px solid #eceef2;text-align:left;vertical-align:middle;white-space:nowrap}.resource-table th.is-multiline,.resource-table td.is-multiline{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.resource-table td.is-multiline{vertical-align:top}.resource-table th{position:sticky;top:0;z-index:2;background:#fafafa;color:#3f3f46;font-size:12px;font-weight:800}.resource-table tbody tr:hover{background:#f7f7f8}.resource-action-col{position:sticky;right:0;z-index:1;width:156px;min-width:156px;background:#fff;box-shadow:-1px 0 #eceef2}.resource-table th.resource-action-col{z-index:3;background:#fafafa}.resource-table tbody tr:hover .resource-action-col{background:#f7f7f8}.resource-row-actions{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}.resource-row-actions.is-stacked{flex-direction:column;align-items:flex-start;gap:2px}.status-badge{min-height:22px;padding:0 8px;border:1px solid var(--line);border-radius:7px;background:#f7f7f8;color:#3f3f46;display:inline-flex;align-items:center;font-size:12px;font-weight:700}.status-active,.status-approved,.status-completed{border-color:#bbf7d0;background:#f0fdf4;color:var(--success)}.status-pending,.status-pending_reply,.status-author_replied,.status-deleting,.status-cooling_off{border-color:#fed7aa;background:#fff7ed;color:var(--warning)}.status-frozen,.status-rejected,.status-hidden{border-color:#fecaca;background:#fef2f2;color:var(--danger)}.status-deleted,.status-cancelled{border-color:#d4d4d8;background:#f4f4f5;color:#52525b}.table-link{min-height:0;height:28px;padding:0 7px;border:0;border-radius:8px;background:transparent;color:#2563eb;display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:800}.table-link.danger{color:var(--danger)}.ui-icon-button.danger{border-color:#fecaca;background:#fff;color:var(--danger)}.table-link:hover{background:#eff6ff}.table-empty{height:140px;color:var(--muted);text-align:center}.pagination-footer{margin-top:0;padding:10px 0 0;border-top:0}.app-pagination{gap:10px;font-size:13px}.app-pagination-total strong{font-size:13px}.app-pagination-size{gap:6px;font-size:13px}.app-pagination-size-select{position:relative;width:66px;height:32px}.app-pagination-size-select select{width:100%;height:32px;margin:0;padding:0 24px 0 10px;border:1px solid var(--line);border-radius:10px;appearance:none;background:#fff;color:#27272a;font-size:13px;font-weight:800}.app-pagination-size-select svg{position:absolute;top:8px;right:7px;pointer-events:none;color:var(--muted)}.app-pagination-controls{gap:6px}.app-page-button{min-width:32px;width:auto;height:32px;padding:0 9px;border-radius:10px;font-size:13px}.app-page-button:not(.app-page-number){width:32px;padding:0}.app-page-button.is-active{border-color:var(--accent);background:var(--accent);color:#fff}.app-page-ellipsis{width:18px;font-size:13px}.ui-dialog-backdrop{position:fixed;inset:0;z-index:80;background:#0f172a2e;display:flex;justify-content:flex-end}.ui-drawer{width:min(420px,100vw);height:100%;padding:16px;border-left:1px solid var(--line);background:#fff;box-shadow:-18px 0 40px #0f172a24;overflow:auto}.drawer-loading-placeholder{min-height:220px;padding:18px;border:1px solid var(--line);border-radius:12px;background:#fafafa;color:var(--muted);display:grid;place-items:center;align-content:center;gap:10px;font-size:13px;font-weight:800}.internal-members-drawer{width:min(760px,100vw);display:flex;flex-direction:column;gap:10px}.internal-member-add-drawer{width:min(420px,100vw)}.internal-member-add-form{display:grid;gap:12px}.internal-member-add-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}.internal-member-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.internal-member-toolbar .filter-control{max-width:100%}.internal-member-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.internal-member-table-wrap{min-height:0;flex:1 1 auto;position:relative;overflow:auto;border:1px solid var(--line);border-radius:12px}.internal-member-table{min-width:max(100%,720px)}.ui-drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.ui-drawer-head h2{margin:0;font-size:16px;font-weight:800}.ui-drawer-footer{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.user-status-edit select{width:min(180px,100%);min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font-size:13px;font-weight:700}.user-identity-link{padding:0;min-height:auto}.user-identity-drawer{width:min(560px,100vw)}.feedback-detail-drawer{width:min(840px,100vw);display:flex;flex-direction:column;gap:12px}.feedback-detail{display:grid;gap:12px}.feedback-detail-section{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.feedback-detail-section h3{margin:0;color:#18181b;font-size:13px;font-weight:850}.feedback-detail-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.feedback-detail-title h3{margin:0;font-size:15px}.feedback-detail-title p,.feedback-action-modal .ui-modal-head p{margin:4px 0 0;color:var(--muted);font-size:12px;font-weight:700}.feedback-requirement{display:grid;gap:6px;padding:10px;border:1px solid #edf0f5;border-radius:8px;background:#fafafa}.feedback-requirement strong{color:#27272a;font-size:12px;font-weight:850}.feedback-requirement p,.feedback-message-item p{margin:0;color:#3f3f46;font-size:13px;line-height:1.55;overflow-wrap:anywhere;white-space:pre-wrap}.feedback-requirement.is-completion{border-color:#bbf7d0;background:#f0fdf4}.feedback-message-list{display:grid;gap:10px}.feedback-message-item{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fafafa}.feedback-message-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:12px;font-weight:750}.feedback-message-head strong{color:#18181b}.feedback-message-head span{overflow-wrap:anywhere}.feedback-message-head em{padding:2px 6px;border-radius:999px;background:#eef2ff;color:#3730a3;font-style:normal;font-size:11px;font-weight:850}.feedback-message-head time{margin-left:auto}.feedback-inline-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.feedback-empty{margin:0;color:var(--muted);font-size:13px;font-weight:700}.feedback-action-modal{width:min(560px,calc(100vw - 36px))}.feedback-image-modal{width:min(960px,calc(100vw - 36px))}.feedback-image-modal img{display:block;max-width:100%;max-height:calc(100vh - 140px);margin:0 auto;border:1px solid var(--line);border-radius:8px;object-fit:contain}.identity-drawer-content{display:grid;gap:14px}.deletion-user-detail{display:grid;gap:18px}.deletion-mobile-hash{overflow-wrap:anywhere;font-family:Consolas,Courier New,monospace;font-size:11px!important}.identity-section{display:grid;gap:8px}.identity-section h3{margin:0;font-size:13px;font-weight:850;color:#27272a}.identity-list{display:grid;gap:8px}.identity-item{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fafafa}.identity-item-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.identity-item strong{font-size:13px;color:var(--text)}.identity-item span,.identity-empty{margin:0;color:var(--muted);font-size:12px}.parent-detail-drawer{width:min(900px,100vw)}.montessori-content-detail-drawer{width:min(1080px,100vw);display:flex;flex-direction:column;gap:12px}.parent-detail-content{display:grid;gap:14px}.parent-detail-grid{grid-template-columns:112px minmax(0,1.25fr) 112px minmax(0,1fr);border-radius:10px}.parent-detail-grid dt,.parent-detail-grid dd{min-height:38px;padding:8px 10px}.parent-detail-grid dd{overflow-wrap:break-word;word-break:normal}.parent-children-panel{display:grid;gap:10px}.parent-children-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff}.parent-children-table{width:100%;min-width:760px;border-collapse:collapse;font-size:12px}.parent-children-table th,.parent-children-table td{padding:10px;border-bottom:1px solid #eceef2;text-align:left;vertical-align:middle}.parent-children-table th{background:#fafafa;color:#52525b;font-weight:850;white-space:nowrap}.parent-children-table tbody tr:last-child td{border-bottom:0}.parent-child-name{color:var(--text);font-size:13px;font-weight:850}.parent-child-subtext{margin-top:3px;color:var(--muted);font-size:11px;overflow-wrap:anywhere}.parent-child-action-col{width:190px}.parent-child-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.detail-list dt{color:var(--muted);font-size:12px}.detail-list dd{color:#27272a;font-size:13px}.ui-button:disabled,.ui-icon-button:disabled,.app-page-button:disabled,.table-link:disabled,.ui-field input:disabled,.ui-field select:disabled,.ui-field textarea:disabled{cursor:not-allowed;opacity:.52}.ui-button-danger{border-color:#fecaca;background:#fff;color:var(--danger)}.ui-button-danger:hover:not(:disabled),.table-link.danger:hover,.ui-icon-button.danger:hover:not(:disabled){border-color:#fca5a5;background:#fef2f2;color:#b91c1c}.table-alert.is-success{border-color:#bbf7d0;background:#f0fdf4;color:#047857}.table-alert.is-error{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.table-alert.is-info{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.table-alert.is-warning{border-color:#fed7aa;background:#fff7ed;color:#c2410c}.ui-field{min-width:0;display:grid;gap:6px;color:#3f3f46;font-size:12px;font-weight:800}.ui-field input,.ui-field select,.ui-field textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:10px;background:#fff;color:#27272a;font:inherit;font-size:13px;font-weight:600;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.ui-field input,.ui-field select{height:32px;padding:0 10px}.ui-field textarea{min-height:120px;padding:10px;resize:vertical;line-height:1.5}.ui-field input:not([type=checkbox]):not([type=radio]):focus,.ui-field select:focus,.ui-field textarea:focus{border-color:#a1a1aa;box-shadow:0 0 0 3px #18181b14}.ui-checkbox{min-height:28px;display:inline-flex;align-items:center;gap:8px;color:#3f3f46;font-size:13px;font-weight:700}.ui-checkbox input{width:14px;height:14px;accent-color:var(--accent)}.segmented-control{width:fit-content;padding:3px;border:1px solid var(--line);border-radius:11px;background:#f4f4f5;display:inline-flex;gap:2px}.segmented-control.vertical{width:100%;flex-direction:column}.segmented-control button{min-width:52px;height:28px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:#52525b;font-size:12px;font-weight:800}.segmented-control button.active{background:#fff;color:#09090b;box-shadow:0 1px 2px #0f172a14}.scenario-module-tabs.segmented-control{align-self:start}.scenario-list .scenario-button{width:100%;justify-content:flex-start;overflow:hidden;text-overflow:ellipsis}.login-form,.api-request-form,.config-edit-form{display:grid;gap:12px}.tenant-profile-panel{min-height:0;padding:18px 22px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.tenant-profile-head{min-height:42px;margin-bottom:10px;padding-bottom:14px;border-bottom:1px solid #eceef2;display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.tenant-profile-head h2{margin:0;color:#18181b;font-size:16px;font-weight:800}.tenant-profile-head p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.tenant-info-list{margin:0}.tenant-info-row{min-height:78px;display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr) minmax(92px,140px);align-items:center;gap:18px;border-bottom:1px solid #eceef2}.tenant-info-row:last-child{border-bottom:0}.tenant-info-row dt{color:#a1a1aa;font-size:13px;font-weight:800}.tenant-info-row dd{min-width:0;margin:0;display:grid;gap:4px}.tenant-info-value{min-width:0;color:#27272a;font-size:14px;font-weight:800;line-height:1.5;overflow-wrap:anywhere;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tenant-info-value.mono{font-family:Cascadia Mono,Consolas,monospace;font-size:12px;font-weight:700}.tenant-inline-icon{width:28px;height:28px;flex:0 0 auto}.tenant-inline-icon svg{width:15px;height:15px}.tenant-info-row p{margin:0;color:#a1a1aa;font-size:12px;font-weight:700;line-height:1.5;overflow-wrap:anywhere}.tenant-info-action{min-width:0;display:flex;justify-content:flex-end}.tenant-profile-drawer,.tenant-certification-drawer{width:min(520px,100vw)}.tenant-certification-summary{margin:0 0 14px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fafafa;display:grid;grid-template-columns:88px minmax(0,1fr);gap:9px 12px}.tenant-certification-summary dt{color:#71717a;font-size:12px;font-weight:800}.tenant-certification-summary dd{min-width:0;margin:0;color:#27272a;font-size:13px;font-weight:700;overflow-wrap:anywhere}.multi-image-upload{display:grid;gap:8px}.multi-image-upload-input{display:none}.multi-image-upload-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px}.multi-image-upload-grid.empty{grid-template-columns:112px minmax(0,1fr);align-items:center}.multi-image-upload.readonly .multi-image-upload-grid.empty{grid-template-columns:1fr}.multi-image-upload-add{min-height:112px;padding:10px;border:1px dashed #cbd5e1;border-radius:10px;background:#f8fafc;color:#475569;display:grid;place-items:center;align-content:center;gap:6px;font-size:12px;font-weight:800}.multi-image-upload-add:hover:not(:disabled){border-color:#94a3b8;background:#f1f5f9}.multi-image-upload-add svg{width:20px;height:20px}.multi-image-upload-card{min-width:0;padding:6px;border:1px solid var(--line);border-radius:10px;background:#fff;display:grid;gap:6px}.multi-image-upload-preview{width:100%;min-height:0;aspect-ratio:1;padding:0;border:0;border-radius:8px;background:#f4f4f5;color:var(--muted);display:grid;place-items:center;overflow:hidden;font-size:12px;font-weight:800}.multi-image-upload-preview img{width:100%;height:100%;object-fit:cover}.multi-image-upload-meta{min-width:0;display:grid;gap:2px}.multi-image-upload-meta strong,.multi-image-upload-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multi-image-upload-meta strong{color:#27272a;font-size:12px;font-weight:800}.multi-image-upload-meta span,.multi-image-upload-empty{color:var(--muted);font-size:12px;font-weight:700}.multi-image-upload-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.multi-image-upload-empty{margin:0;line-height:1.5}.tenant-drawer-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}@media(max-width:720px){.tenant-profile-panel{padding:14px}.tenant-profile-head,.tenant-info-row{align-items:stretch}.tenant-profile-head{flex-direction:column}.tenant-info-row{grid-template-columns:1fr;gap:6px;padding:12px 0}.tenant-info-action{justify-content:flex-start}.multi-image-upload-grid,.multi-image-upload-grid.empty{grid-template-columns:repeat(2,minmax(0,1fr))}}.api-request-form .ui-button-primary,.login-actions .ui-button{width:fit-content}.api-json-field-head{min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:8px}.api-json-field-head>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-field textarea.api-json-textarea{height:132px;min-height:132px;max-height:132px;resize:none;overflow:auto;font-family:Cascadia Mono,Consolas,monospace;font-size:12px;line-height:1.5;tab-size:2}.ui-field textarea.api-json-textarea.body{height:220px;min-height:220px;max-height:220px}.api-editor-dialog.ui-modal{width:min(1120px,calc(100vw - 36px));height:min(820px,calc(100vh - 36px))}textarea.api-expanded-editor{flex:1;min-height:0;margin:0;padding:12px;resize:none;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff;color:#27272a;font-family:Cascadia Mono,Consolas,monospace;font-size:12px;line-height:1.5;tab-size:2}button.full,.ui-button.full{width:100%}.table-list-scroll{min-height:0;height:100%;overflow:auto}.table-list-menu{display:grid;gap:4px}.table-list-item{width:100%;min-height:32px;padding:0 9px;border:1px solid transparent;border-radius:9px;background:transparent;color:#3f3f46;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:800;text-align:left}.table-list-item span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-list-item:hover,.table-list-item.active{border-color:var(--line);background:#fff;color:#09090b}.count-badge{min-height:22px;padding:0 7px;border:1px solid var(--line);border-radius:7px;background:#f7f7f8;color:#52525b;display:inline-flex;align-items:center;font-size:12px;font-weight:800;white-space:nowrap}.admin-data-modern,.config-detail-page{min-height:0}.table-data-panel,.config-table-panel,.config-detail-editor{min-height:0;display:flex;flex-direction:column}.config-list-toolbar,.config-table-head,.config-detail-summary,.table-toolbar-modern,.response-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.config-table-head,.table-toolbar-modern{margin-bottom:10px}.config-detail-actions,.config-table-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px}.config-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.config-content-field{min-height:0}textarea.config-editor,.config-editor{min-height:360px;font-family:Cascadia Mono,Consolas,monospace;font-size:12px;line-height:1.5;tab-size:2}textarea.config-editor.compact,.config-editor.compact{min-height:220px}.ui-dialog-backdrop.centered{align-items:center;justify-content:center;padding:18px}.ui-modal{width:min(860px,calc(100vw - 36px));max-height:calc(100vh - 36px);padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 24px 64px #0f172a2e;display:flex;flex-direction:column;gap:12px;overflow:hidden}.config-diff-dialog.ui-modal{width:min(1100px,calc(100vw - 36px))}.ui-modal-head,.ui-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.ui-modal-footer{justify-content:flex-end;flex-wrap:wrap}.ui-modal .diff-table{max-height:min(520px,calc(100vh - 220px))}.feedback-toast-viewport{position:fixed;top:18px;left:50%;z-index:80;width:min(420px,calc(100vw - 28px));transform:translate(-50%);pointer-events:none}.feedback-toast-card{min-height:48px;padding:10px 10px 10px 12px;border:1px solid var(--line);border-left-width:4px;border-radius:10px;background:#fff;box-shadow:0 18px 42px #0f172a29;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:9px;pointer-events:auto}.feedback-toast-card.is-success{border-color:#bbf7d0;border-left-color:#16a34a;background:#f0fdf4;color:#14532d}.feedback-toast-card.is-error{border-color:#fecaca;border-left-color:#dc2626;background:#fef2f2;color:#7f1d1d}.feedback-toast-card.is-warning{border-color:#fde68a;border-left-color:#d97706;background:#fffbeb;color:#78350f}.feedback-toast-card.is-info{border-color:#bfdbfe;border-left-color:#2563eb;background:#eff6ff;color:#1e3a8a}.feedback-toast-icon{width:17px;height:17px;margin-top:1px;flex:0 0 auto}.feedback-toast-content{min-width:0;display:grid;gap:2px}.feedback-toast-content strong{font-size:13px;font-weight:900;line-height:1.25}.feedback-toast-content p{margin:0;font-size:12px;font-weight:700;line-height:1.45;overflow-wrap:anywhere}.feedback-toast-close{width:24px;height:24px;margin:-3px -3px 0 0;padding:0;border:0;border-radius:7px;background:transparent;color:currentColor;display:inline-flex;align-items:center;justify-content:center;opacity:.72}.feedback-toast-close:hover{background:#18181b14;opacity:1}.feedback-toast-close svg{width:14px;height:14px}.feedback-toast-enter-active,.feedback-toast-leave-active{transition:opacity .18s ease,transform .18s ease}.feedback-toast-enter-from,.feedback-toast-leave-to{opacity:0;transform:translate(-50%,-8px)}.compact-timeline{margin:0;padding:0;list-style:none;display:grid;gap:8px}.compact-timeline li{min-height:32px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#3f3f46;font-size:13px;font-weight:700}.compact-timeline li:before{width:6px;height:6px;border-radius:999px;background:#94a3b8;content:""}.compact-timeline li.warning:before{background:var(--warning)}.compact-timeline li.success:before{background:var(--success)}.compact-timeline li span{min-width:0;flex:1}.compact-timeline li strong{font-variant-numeric:tabular-nums}.description-grid{margin:0;display:grid;grid-template-columns:140px minmax(0,1fr) 140px minmax(0,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.description-grid dt,.description-grid dd{min-height:40px;margin:0;padding:10px;border-bottom:1px solid #eceef2;display:flex;align-items:center;font-size:13px}.description-grid dt{background:#fafafa;color:#52525b;font-weight:800}.description-grid dd{min-width:0;color:#27272a;font-weight:600;overflow-wrap:anywhere}.dashboard-page.is-loading,.resource-page.is-loading{opacity:.64}.file-upload-box{display:grid;gap:8px}.file-upload-box input[type=file]{width:100%;min-height:32px;font-size:13px}.file-upload-box p,.response-head p,.table-toolbar-modern p,.config-detail-summary p,.ui-modal-head p{margin:0;color:var(--muted);font-size:12px;font-weight:700}pre{border-color:var(--line);border-radius:14px;background:#fff;font-size:12px}@media(max-width:760px){.admin-shell{grid-template-columns:1fr;padding:0}.admin-sidebar{display:none}.admin-main{border-radius:0;border:0}.table-filter-fields{align-items:stretch;flex-direction:column}.table-filter-fields .filter-width-180,.table-filter-fields .filter-width-260,.table-filter-fields .filter-width-360,.table-toolbar-actions .filter-width-180,.table-toolbar-actions .filter-width-260,.table-toolbar-actions .filter-width-360,.internal-member-toolbar .filter-width-180,.internal-member-toolbar .filter-width-260,.internal-member-toolbar .filter-width-360{width:100%;flex-basis:auto}.table-filter-actions{justify-content:flex-start;flex-wrap:wrap}.description-grid{grid-template-columns:112px minmax(0,1fr)}.parent-detail-grid{grid-template-columns:104px minmax(0,1fr)}.config-list-toolbar,.config-table-head,.config-detail-summary,.table-toolbar-modern,.response-head,.ui-modal-head{align-items:stretch;flex-direction:column}.config-detail-actions,.config-table-actions,.ui-modal-footer{justify-content:flex-start}}
