:root{color-scheme:dark;--bg:#091019;--surface:#101b28;--border:#253449;--muted:#90a3bb;--ink:#e0ecf8;--accent:#42c9c1}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.6 "Segoe UI","Microsoft YaHei",sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid var(--border);background:#162437;color:var(--ink);border-radius:7px;padding:8px 13px;transition:background .15s}button:hover{background:#243a50}button:disabled{opacity:.45;cursor:wait}button.primary{background:var(--accent);color:#052d2c;border-color:var(--accent);font-weight:700}button.danger{color:#ff9f9f}input,textarea,select{border:1px solid var(--border);background:#0a1420;color:var(--ink);border-radius:6px;padding:9px 10px;width:100%}input:focus,textarea:focus,select:focus{outline:2px solid #42c9c177;outline-offset:1px}input[type=checkbox]{width:17px;height:17px;accent-color:var(--accent)}textarea{resize:vertical;min-height:120px}label{display:block;color:var(--muted);margin:12px 0}label input,label textarea,label select{display:block;margin-top:6px}h1,h2,h3,p{margin-top:0}h1{font-size:26px;letter-spacing:1px;margin-bottom:0}h2{font-size:18px}h3{font-size:16px}small,.hint{font-size:12px;color:var(--muted);font-weight:400}.brand{font-size:25px;font-weight:800;color:var(--accent);letter-spacing:2px}.brand span{font-size:10px;letter-spacing:3px;color:var(--muted);display:block}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 30%,#183b4a55,transparent 65%)}.login-card{width:min(440px,90vw);padding:42px;background:var(--surface);border:1px solid var(--border);border-radius:18px}.login-card h1{margin-top:25px;margin-bottom:8px}.login-card p{color:var(--muted)}.login-card .primary{width:100%;margin-top:12px}#loginError{color:#ffa7a7;margin-top:14px}#shell{display:flex;min-height:100vh}#shell[hidden],section[hidden],[hidden]{display:none!important}aside{width:230px;flex-shrink:0;background:#0d1723;border-right:1px solid var(--border);padding:27px 18px;position:fixed;height:100vh;display:flex;flex-direction:column}.side-title{display:flex;align-items:center;justify-content:space-between;margin:35px 0 14px;color:var(--muted)}.side-title button{padding:0 10px;font-size:23px}#games{overflow:auto;margin-top:15px;flex:1}#games button{width:100%;border:0;text-align:left;margin-bottom:5px;background:transparent;padding:12px}#games button.active{background:#163632;color:#6fe6d3}#games button small{display:block;margin-top:3px}.side-bottom{display:flex;gap:6px;padding-top:20px}main{margin-left:230px;width:calc(100% - 230px);padding:32px;max-width:1800px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.eyebrow{color:var(--muted);font-size:11px;letter-spacing:2px;margin-bottom:6px}.actions,.toolbar>div{display:flex;gap:8px}.card,.panel{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:23px;margin-bottom:18px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:25px}.stat{background:var(--surface);border:1px solid var(--border);padding:17px;border-radius:9px;overflow-wrap:anywhere}.stat span{display:block;font-size:11px;color:var(--muted);margin-bottom:6px}.stat strong{font-size:15px}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--border);margin-bottom:20px;overflow:auto}.tabs button{background:none;border:0;border-radius:0;white-space:nowrap;padding:12px 19px;color:var(--muted)}.tabs button.active{color:var(--accent);border-bottom:2px solid var(--accent)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.toolbar h2{margin:0}.toolbar small{margin-left:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{font-size:12px;font-weight:500;color:var(--muted);text-align:left;background:#0d1723}th,td{padding:10px 6px;border-bottom:1px solid var(--border)}td input{min-width:70px}td:nth-child(3) input{min-width:150px}td:nth-child(4) input{min-width:150px}td:nth-child(9){white-space:nowrap}td button{padding:5px 8px;margin-right:4px}.hint{margin:15px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.list-card,.announcement-card{border:1px solid var(--border);border-radius:8px;padding:20px;margin-bottom:18px}.list-card h3,.announcement-card h3{margin:0}.list-card .toolbar{margin-bottom:10px}.server-picks{display:flex;gap:12px;flex-wrap:wrap}.server-picks label{display:flex;align-items:center;gap:6px;color:var(--ink);margin:3px}.server-picks input{margin:0}.platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:20px}.platform{background:#0a1420;border-radius:8px;padding:15px}.platform h3{color:var(--accent)}.url-row{display:flex;gap:7px;margin-top:8px;align-items:center}.url-row code{display:block;overflow-wrap:anywhere;font:12px/1.6 Consolas,monospace;color:#86cfee;flex:1}.url-row button{padding:5px 9px;flex-shrink:0}.announcement-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.preview{white-space:pre-wrap;overflow-wrap:anywhere;background:#0a1420;border-radius:7px;padding:20px;min-height:160px}.preview h3{margin-bottom:12px}.preview p{white-space:pre-wrap}.status{padding:12px 16px;border:1px solid #347867;background:#12352e;color:#99f1ca;border-radius:8px;margin-bottom:18px;white-space:pre-line}.status.error{border-color:#844849;background:#321c23;color:#ffc0c0}.status.pending{border-color:#766238;background:#302719;color:#f5d58d}.history-row{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--border);padding:15px 0}.history-row small{display:block}.code-area{font:12px/1.7 Consolas,monospace;min-height:180px}dialog{color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:12px;width:min(520px,94vw);padding:25px}dialog::backdrop{background:#0009}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}#dialogBody p{color:var(--muted)}@media(max-width:1150px){main{padding:22px}.platform-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}header{align-items:flex-start;flex-direction:column}}@media(max-width:720px){#shell{display:block}aside{position:relative;height:auto;width:100%;padding:16px}.brand span{display:inline;margin-left:9px}.side-title{margin:10px 0}#games{display:flex;overflow-x:auto;max-height:100px}#games button{min-width:140px}.side-bottom{padding-top:5px}main{margin-left:0;width:100%;padding:16px}.form-grid,.announcement-grid{grid-template-columns:1fr}.toolbar{align-items:flex-start;flex-direction:column}.actions{flex-wrap:wrap}.tabs button{padding:10px 12px}.panel{padding:15px}h1{font-size:23px}}

.side-bottom{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.side-bottom button{width:100%;min-width:0;min-height:40px;padding:8px 6px;white-space:nowrap;text-align:center}.actions{flex-wrap:wrap}#trashDialog{width:min(680px,94vw)}#trashItems{max-height:60vh;overflow:auto}
#emptyTrash{margin-right:auto}

.group-editor{display:flex;flex-direction:column;gap:8px;max-width:680px;margin-bottom:20px}.group-row{display:grid;grid-template-columns:130px minmax(120px,1fr) auto;gap:10px;align-items:center}.group-row label{display:flex;align-items:center;gap:8px;margin:0;white-space:nowrap}.group-row input{min-width:0;margin:0}.group-row button{white-space:nowrap}@media(max-width:520px){.group-row{grid-template-columns:95px minmax(80px,1fr) auto;gap:6px}.group-row label{gap:4px}}

#groupsDialog{width:min(720px,calc(100vw - 32px))}#groupsDialog .group-editor{max-height:55vh;overflow:auto;max-width:none}#groupError{color:#ff8e98}

.announcement-tools{display:flex;align-items:center;gap:12px;margin-bottom:16px}.announcement-tools input{max-width:420px}.announcement-tools select{width:130px}.announcement-tools small{white-space:nowrap}.announcement-table{min-width:760px}.announcement-title{background:none;border:0;text-align:left;padding:0;color:var(--accent)}.announcement-excerpt{display:block;max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.announcement-actions{white-space:nowrap}#announcementDialog{width:min(960px,94vw);max-height:90vh;overflow:auto}#announcementError{color:#ff8e98}#announcementEditor .preview{max-height:60vh;overflow:auto}@media(max-width:720px){.announcement-tools{flex-wrap:wrap}}
/* 公告弹窗：统一字段间距，说明文字独立成行。 */
#announcementEditor .announcement-grid{gap:28px}
#announcementEditor .announcement-grid>div:first-child{display:flex;flex-direction:column;gap:18px}
#announcementEditor .announcement-grid>div>label{margin:0}
#announcementEditor label input,#announcementEditor label select,#announcementEditor label textarea{margin-top:8px}
#announcementEditor label>.hint{display:block;margin:10px 0 4px;line-height:1.7}
#announcementEditor .server-picks{align-items:center;gap:10px}
#announcementEditor .server-picks input{margin:0}
#announcementEditor .preview{margin-top:8px}

#visitorRows{max-height:520px;overflow:auto;margin-top:16px}#visitorRows thead{position:sticky;top:0;background:#101e2d}#visitorStats{margin:18px 0}

/* 区服表格：操作固定一排，名称和短字段使用紧凑宽度。 */
#panel-servers table{table-layout:fixed;min-width:1356px;max-width:1510px}
#panel-servers th,#panel-servers td{padding:10px;vertical-align:middle}
#panel-servers th{white-space:nowrap;text-align:center}
#panel-servers th:nth-child(3),#panel-servers th:nth-child(4){text-align:left;padding-left:20px}
#panel-servers th:nth-child(1){width:38px}
#panel-servers th:nth-child(2){width:70px}
#panel-servers th:nth-child(3){width:220px}
#panel-servers th:nth-child(4){width:180px}
#panel-servers th:nth-child(5){width:86px}
#panel-servers th:nth-child(6){width:176px}
#panel-servers th:nth-child(7){width:140px}
#panel-servers th:nth-child(8){width:110px}
#panel-servers th:nth-child(9){width:80px}
#panel-servers th:nth-child(10){width:110px}
#panel-servers th:nth-child(11){width:200px}
#panel-servers .server-state-select{display:block;width:90px;max-width:100%;padding:7px 8px;margin:0 auto}
#panel-servers td:nth-child(5) input,#panel-servers td:nth-child(7){text-align:center}
#panel-servers th:nth-child(2),#panel-servers th:nth-child(9),#panel-servers td:nth-child(2) input,#panel-servers .server-online-cell{text-align:center}
.server-online-count{font-variant-numeric:tabular-nums;color:#b3f0d0;font-weight:600}
.server-online-count.unknown{color:var(--muted);font-weight:400}
#panel-servers td input,#panel-servers td select{min-width:0;height:38px;padding:7px 9px}
#panel-servers th:first-child,#panel-servers td:first-child{padding:10px 6px;text-align:center}
#panel-servers input[type=checkbox]{display:block;width:17px;min-width:17px;height:17px;margin:0 auto;padding:0}
#panel-servers .server-row-actions{display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}
#panel-servers .server-row-actions button{flex:none;height:38px;padding:7px 8px;margin:0}
#panel-servers .version-picker button{height:38px;padding:7px 8px}
#panel-servers .version-picker select{min-width:0}
#panel-servers .server-toolbar-hint{flex:1;margin:0;text-align:center;font-size:18px;font-weight:650;color:var(--ink)}
@media(max-width:720px){#panel-servers .server-toolbar-hint{flex:auto;text-align:left}}
@media(max-width:1680px){
 #panel-servers table{max-width:none}
 #panel-servers table,#panel-servers tbody{display:block;min-width:0}
 #panel-servers thead{display:block;margin-bottom:8px}
 #panel-servers thead tr{display:block}
 #panel-servers thead th{display:none}
 #panel-servers thead th:first-child{display:flex;align-items:center;gap:8px;width:auto;border:0;padding:4px 6px}
 #panel-servers thead th:first-child input{margin:0}
 #panel-servers thead th:first-child::after{content:'全选'}
 #panel-servers tbody tr{display:grid;grid-template-columns:36px 54px repeat(10,minmax(0,1fr));gap:12px 10px;padding:14px 0;border-top:1px solid var(--border)}
 #panel-servers tbody td{display:block;min-width:0;padding:0;border:0}
 #panel-servers tbody td::before{content:attr(data-label);display:block;font-size:12px;color:var(--muted);margin-bottom:6px;white-space:nowrap}
 #panel-servers tbody td:nth-child(3)::before,#panel-servers tbody td:nth-child(4)::before{padding-left:10px}
 #panel-servers tbody td:nth-child(n+5)::before{text-align:center}
 #panel-servers tbody td:nth-child(1){grid-column:1;grid-row:1 / 3;align-self:center}
 #panel-servers tbody td:nth-child(1)::before{display:none}
 #panel-servers tbody td:nth-child(2){grid-column:2;grid-row:1 / 3;align-self:center}
 #panel-servers tbody td:nth-child(3){grid-column:3 / 6;grid-row:1}
 #panel-servers tbody td:nth-child(4){grid-column:6 / 9;grid-row:1}
 #panel-servers tbody td:nth-child(5){grid-column:9;grid-row:1}
 #panel-servers tbody td:nth-child(6){grid-column:10 / 13;grid-row:1}
 #panel-servers tbody td:nth-child(7){grid-column:3 / 5;grid-row:2}
 #panel-servers tbody td:nth-child(8){grid-column:5 / 7;grid-row:2}
 #panel-servers tbody td:nth-child(9){grid-column:7;grid-row:2}
 #panel-servers tbody td:nth-child(10){grid-column:8 / 10;grid-row:2}
 #panel-servers tbody td:nth-child(11){grid-column:10 / 13;grid-row:2}
 #panel-servers .server-online-count{display:block;line-height:38px}
 #panel-servers .server-row-actions{min-height:38px}
 #panel-servers .version-picker select{min-width:0}
}
@media(max-width:1000px){
 #panel-servers tbody tr{grid-template-columns:28px 50px repeat(2,minmax(0,1fr));gap:12px}
 #panel-servers tbody td:nth-child(1){grid-column:1;grid-row:1 / 4}
 #panel-servers tbody td:nth-child(2){grid-column:2;grid-row:1 / 4}
 #panel-servers tbody td:nth-child(3){grid-column:3;grid-row:1}
 #panel-servers tbody td:nth-child(4){grid-column:4;grid-row:1}
 #panel-servers tbody td:nth-child(5){grid-column:3;grid-row:2}
 #panel-servers tbody td:nth-child(6){grid-column:4;grid-row:2}
 #panel-servers tbody td:nth-child(7){grid-column:3;grid-row:3}
 #panel-servers tbody td:nth-child(8){grid-column:4;grid-row:3}
 #panel-servers tbody td:nth-child(9){grid-column:3;grid-row:4;text-align:left}
 #panel-servers tbody td:nth-child(10){grid-column:4;grid-row:4}
 #panel-servers tbody td:nth-child(11){grid-column:3 / 5;grid-row:5}
}
.platform-resources{border-top:1px solid var(--border);margin-top:16px;padding-top:18px}
.platform-resources h3{font-size:14px;margin-bottom:4px}
.platform-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.platform-resource-grid label{min-width:0}
.more-platform-resources{margin-top:8px}
.more-platform-resources summary{cursor:pointer;color:var(--muted);padding:8px 0;width:fit-content}
.more-platform-resources summary:hover{color:var(--accent)}
.more-platform-resources[open] summary{color:var(--ink)}
@media(max-width:1100px){.platform-resource-grid{grid-template-columns:1fr}}


.version-picker{display:flex;align-items:center;gap:6px;min-width:0}.version-picker select{flex:1;min-width:72px;width:0}.version-picker button{flex:none;white-space:nowrap;padding:8px 9px;margin:0}

.version-picker select{min-width:110px}

.channel-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(200px,1.4fr) auto minmax(160px,1fr) auto;align-items:end;gap:20px}.channel-row>label{margin:0}.channel-row .channel-enabled{display:flex;align-items:center;gap:8px;height:42px;white-space:nowrap}.channel-enabled input{margin:0;width:16px;height:16px}.channel-game{min-width:0}.channel-game span{display:block;color:var(--muted);font-size:12px;margin-bottom:8px}.channel-game strong{display:flex;align-items:center;min-height:42px;overflow-wrap:anywhere;font-weight:400}.channel-row>button{height:42px;white-space:nowrap}@media(max-width:1000px){.channel-row{grid-template-columns:minmax(160px,1fr) minmax(200px,1fr)}.channel-game{grid-column:2}.channel-row>button{justify-self:start}}@media(max-width:600px){.channel-row{grid-template-columns:minmax(0,1fr)}.channel-game{grid-column:auto}}

.feedback-toast{position:fixed;right:24px;bottom:24px;z-index:10000;max-width:min(560px,90vw);padding:14px 20px;border:1px solid #36b890;border-radius:10px;background:#15372e;color:#fff;box-shadow:0 8px 32px #0006;white-space:pre-wrap;pointer-events:none}.feedback-toast.error{background:#612b2b;border-color:#e88080}.feedback-toast[hidden]{display:none}.list-channels{margin:16px 0}
.list-settings-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(130px,.7fr) minmax(210px,1fr) minmax(200px,1fr);gap:14px;align-items:end;margin:14px 0}
.list-settings-row>label{margin:0;min-width:0}.list-settings-row .server-picks{min-height:42px;align-items:center}.list-settings-row .server-picks label{margin:0}
.list-channels{display:flex;align-items:end;flex-wrap:wrap;gap:10px 16px;margin:12px 0 18px;padding-bottom:16px;border-bottom:1px solid var(--border)}
.channel-inline{display:flex;align-items:end;flex-wrap:wrap;gap:12px}.channel-inline>label{margin:0;width:190px}.channel-inline .channel-toggle{display:flex;align-items:center;gap:6px;width:auto;height:42px;white-space:nowrap}.channel-toggle input{margin:0}.channel-inline>button,.list-channels>button{height:42px;white-space:nowrap}
.channel-addresses{min-height:42px;display:block}.channel-addresses summary{cursor:pointer;color:var(--accent);padding:8px 0}.channel-addresses[open]{flex-basis:100%;order:2;min-width:0}.channel-addresses .url-row{max-width:100%;margin-bottom:8px}
@media(max-width:1200px){.list-settings-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.list-settings-row{grid-template-columns:minmax(0,1fr)}.channel-inline{width:100%}.channel-inline>label:first-child{flex:1;min-width:140px}}
.resource-setting{min-width:0}.resource-setting-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;color:var(--muted)}.resource-setting-head select{width:112px;flex:none;padding:5px 8px;font-size:12px}.resource-setting input:disabled{opacity:1;color:var(--muted);background:#101924;border-style:dashed;cursor:default}.resource-inherit-hint{font-size:12px;color:var(--muted);margin:8px 0 16px}
@media(max-width:600px){.resource-setting-head{flex-wrap:wrap}}
.platform-resources>.platform-resource-grid+.platform-resource-grid{margin-top:16px}

.list-table-wrap{border:1px solid var(--border);border-radius:8px;overflow:auto}
.list-table{min-width:760px}.list-table th,.list-table td{padding:14px 18px;white-space:nowrap}.list-table th:first-child{width:25%}.list-table td:first-child{white-space:normal;overflow-wrap:anywhere}.list-table tr:last-child td{border-bottom:0}.list-table tbody tr{cursor:default}.list-table tbody tr:hover{background:#142837}.list-table .list-select{border:0;background:none;color:var(--accent);font-weight:600;text-align:left;padding:0;margin:0}.list-table th:last-child,.list-table td:last-child{text-align:right}
#listEditDialog{width:min(1080px,94vw);height:min(560px,90vh);max-height:90vh;padding:0;overflow:hidden}
.list-workspace-editor{display:flex;flex-direction:column;height:100%;min-height:0;min-width:0}
.list-workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px}.list-workspace-heading h3{margin:0;font-size:18px;overflow-wrap:anywhere}.list-workspace-heading small{color:var(--muted)}.list-modal-actions{display:flex;gap:8px;flex-shrink:0}
.list-editor-tabs{display:flex;gap:12px;padding:0 24px;border-bottom:1px solid var(--border)}.list-editor-tabs button{border:0;border-radius:0;background:none;padding:10px 12px;border-bottom:2px solid transparent;color:var(--muted)}.list-editor-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}
.list-workspace-body{flex:1;min-height:0;padding:18px 24px;overflow:auto;scrollbar-gutter:stable}.list-workspace-body>.hint:first-child{margin-top:0}.list-workspace-footer{border-top:1px solid var(--border);padding:14px 24px;font-size:12px;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:16px}.list-workspace-footer button{flex-shrink:0}
@media(max-width:600px){.list-workspace-heading{padding:16px;align-items:flex-start}.list-modal-actions{flex-direction:column}.list-workspace-body{padding:16px}.list-editor-tabs{padding:0 16px}.list-workspace-footer{padding:12px 16px}}
.package-guide{padding:16px 18px;border:1px solid var(--border);border-radius:8px;background:#0a1420;margin-top:16px}.package-guide p{margin:8px 0;color:var(--muted)}
.fixed-channel{min-width:190px}.fixed-channel .url-row{margin-top:6px}.fixed-channel code{font-size:16px;font-weight:600}.channel-inline{width:100%}
.list-channels{display:block;margin:16px 0 0;padding:0;border:0}
.channel-card{border:1px solid var(--border);border-radius:10px;background:#0c1723;overflow:hidden;margin-bottom:12px}
.channel-card-head{display:flex;align-items:center;gap:20px;padding:18px 20px;background:#122130}
.channel-card-head .fixed-channel{flex:1;min-width:0}.channel-card-head .fixed-channel .url-row{justify-content:flex-start;gap:16px}.channel-card-head .fixed-channel code{flex:none;font-size:20px}.channel-card-head .fixed-channel button{padding:4px 10px;font-size:12px}
.channel-card-head .channel-toggle{display:flex;align-items:center;gap:8px;margin:0;white-space:nowrap}.channel-card-head>button{flex:none}.channel-toggle input{margin:0}
.channel-endpoint{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;align-items:center;padding:20px}.channel-endpoint+.channel-endpoint{border-top:1px solid var(--border)}.endpoint-label strong{font-size:13px;font-weight:500}.endpoint-label small{display:block;margin-top:3px}.channel-endpoint .url-row{margin:0;min-width:0;gap:16px}.channel-endpoint code{min-width:0;overflow-wrap:anywhere}.channel-endpoint button{padding:6px 14px}
@media(max-width:600px){.channel-card-head{flex-wrap:wrap;gap:12px;padding:16px}.channel-card-head .fixed-channel{flex-basis:100%}.channel-endpoint{grid-template-columns:1fr;gap:8px;padding:16px}.endpoint-label{display:flex;align-items:center;gap:8px}.endpoint-label small{margin:0}}

.list-workspace-heading,.list-editor-tabs,.list-workspace-footer{flex-shrink:0}
.list-modal-actions>button{width:84px;height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center}
.list-table td:nth-child(2){min-width:180px}.list-table td:nth-child(3){min-width:250px}.list-table td select{height:44px;padding:9px 12px;cursor:pointer}.list-table .version-picker button{height:44px;margin:0;padding:9px 12px}.list-table th:first-child{width:20%}
.list-resource-body{display:flex;flex-direction:column;justify-content:safe center;padding-top:16px;padding-bottom:16px}
.list-resource-body>.form-grid,.list-resource-body>.platform-resources{flex-shrink:0}
.list-resource-body>.form-grid>label{margin:4px 0 8px}
.list-resource-body .platform-resources{margin-top:10px;padding-top:12px}
.list-resource-body .platform-resources>.platform-resource-grid+.platform-resource-grid{margin-top:16px}
.channel-endpoints .channel-endpoint{grid-template-columns:155px minmax(0,1fr);padding:12px 20px}.channel-endpoints .endpoint-label small{font-size:11px}@media(max-width:600px){.channel-endpoints .channel-endpoint{grid-template-columns:1fr;padding:12px 16px}}
/* Review workbench: readable forms and visible function boundaries. */
.work-nav{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:22px 0}.work-nav button{font-size:12px;text-align:left;padding:8px}.work-nav button:first-child{grid-column:1/-1;border-color:var(--accent)}.work-tools{padding:16px 0;margin-bottom:12px}.work-tools small{display:block}.work-dialog{width:min(1060px,94vw);max-height:88vh;padding:28px;overflow:auto}.work-dialog>.toolbar{position:sticky;top:-28px;background:var(--surface);padding:15px 0;z-index:2;border-bottom:1px solid var(--border)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.feature-grid .card{margin:0}.feature-grid p{line-height:1.9}.source-summary{white-space:pre-wrap;overflow-wrap:anywhere;padding:18px;background:var(--bg);border:1px solid var(--border);border-radius:9px;max-height:420px;overflow:auto}.work-dialog details{border:1px solid var(--border);border-radius:9px;margin:14px 0;padding:16px}.work-dialog summary{cursor:pointer;font-weight:700;color:var(--accent)}.work-dialog fieldset{border:1px solid var(--border);border-radius:8px;padding:12px;margin:14px 0}.work-dialog legend{color:var(--accent);padding:0 7px}.work-dialog .code-area{width:100%;min-height:180px}.work-dialog input{min-width:0}.work-dialog .actions{flex-wrap:wrap}@media(max-width:760px){.feature-grid{grid-template-columns:1fr}.work-tools{display:block}.work-dialog{padding:16px}.work-dialog>.toolbar{top:-16px}}

/* Authorization and merge workspace pages */
.merge-connections{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin:24px 0}.merge-database{min-width:0;margin:0;padding:20px;border:1px solid var(--border);border-radius:10px;background:#0a1420}.merge-database legend{padding:0 10px;font-size:17px;font-weight:600;color:var(--accent)}.merge-database label{display:block;margin:12px 0}.merge-database input{width:100%}.work-page h3{margin:24px 0 14px}.work-page>.actions{gap:10px;flex-wrap:wrap;margin:16px 0}.work-page>label{display:block;margin:20px 0 12px}.work-page input,.work-page textarea{max-width:100%}.license-create{margin:24px 0}.license-create h3{margin-top:0}.license-note{grid-column:1/-1}.license-records{display:grid;gap:16px}.license-records strong{overflow-wrap:anywhere}.license-records .actions{flex-wrap:wrap}.work-page .source-summary:empty:before{content:'暂无执行结果';color:var(--muted)}@media(max-width:760px){.merge-connections{grid-template-columns:1fr;gap:16px}}

.side-title{font-size:18px;font-weight:600;color:var(--ink)}

/* Compact merge cards */
#panel-merge{overflow:hidden}.merge-connections{gap:20px;margin:22px 0}.merge-database{padding:0;overflow:hidden;background:#0b1521}.merge-card-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border);background:#132231}.work-page .merge-card-heading h3{margin:0;font-size:19px;color:var(--ink)}.merge-role{font-size:12px;color:var(--accent);padding:3px 9px;background:#16332f;border-radius:5px}.merge-db-fields{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:16px;padding:20px}.merge-database .merge-db-fields label{margin:0;min-width:0;font-size:13px}.merge-db-fields input{display:block;margin-top:7px;min-width:0;height:42px}.merge-field-db,.merge-field-user,.merge-field-pwd{grid-column:1/-1}.merge-rules,.merge-operations,.merge-result{margin-top:20px;padding:20px;border:1px solid var(--border);border-radius:10px;background:#0b1521}.work-page .merge-rules h3,.work-page .merge-operations h3,.work-page .merge-result h3{margin:0 0 18px}.merge-rules>label{display:block;margin:16px 0}.merge-rules input[type=number]{display:block;width:140px;margin-top:8px}.merge-rules textarea{display:block;width:100%;margin-top:8px;min-height:140px}.merge-operations .actions{display:flex;gap:10px;flex-wrap:wrap}.merge-secondary-actions{margin-top:12px}.merge-confirm{display:flex;align-items:flex-end;gap:16px;padding-top:20px;margin-top:20px;border-top:1px solid var(--border)}.merge-confirm label{flex:1;margin:0}.merge-confirm input{display:block;width:100%;margin-top:8px}.merge-confirm button{min-height:42px}.merge-result pre{margin-bottom:0;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:760px){.merge-confirm{align-items:stretch;flex-direction:column}.merge-db-fields{grid-template-columns:minmax(0,1fr) 90px}}

.merge-steps{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(280px,1.3fr);gap:16px}.merge-step{min-width:0;padding:18px;border:1px solid var(--border);border-radius:8px;background:#101d2b;display:flex;flex-direction:column;align-items:flex-start}.merge-step-number{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--accent)}.merge-step h4{font-size:16px;margin:8px 0 10px}.merge-step p{margin:0 0 18px}.merge-step>button{margin-top:auto}.merge-step label{display:block;width:100%;font-size:12px;color:var(--muted);margin-bottom:12px}.merge-step input{display:block;width:100%;min-width:0;margin-top:8px;font-size:13px}.merge-auxiliary{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}.merge-auxiliary>.hint{white-space:nowrap}.merge-auxiliary .actions{margin:0}.merge-auxiliary button{font-size:12px;padding:7px 11px}@media(max-width:1100px){.merge-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.merge-execute{grid-column:1/-1}.merge-execute label{max-width:440px}}@media(max-width:600px){.merge-steps{grid-template-columns:1fr}.merge-execute{grid-column:auto}}

.merge-operations-heading{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:18px}.work-page .merge-operations-heading h3{margin:0}.merge-operations-heading .merge-heading-tools{margin:0;gap:10px}.merge-heading-tools button{font-size:12px;padding:7px 11px}

#panel-merge>.merge-intro{font-size:16px;line-height:1.8;text-align:center;color:var(--ink);margin:4px 0 24px}

.merge-step-heading{display:flex;align-items:center;gap:10px;min-height:32px;margin-bottom:16px}.merge-step-heading .merge-step-number{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 30px;border:1px solid #32645e;border-radius:8px;background:#16332f;color:var(--accent);font-size:15px;line-height:1;font-weight:600;letter-spacing:0}.merge-step-heading h4{margin:0;font-size:16px;line-height:30px}

/* Consistent spacing for merge workflow */
.merge-operations{padding:24px}.merge-operations-heading{column-gap:32px;row-gap:14px;margin-bottom:24px;min-height:38px}.merge-operations-heading .merge-heading-tools{gap:12px;padding-left:24px;border-left:1px solid var(--border)}.merge-heading-tools button{padding:8px 14px;min-height:36px}.merge-steps{gap:20px;align-items:start}.merge-step{padding:22px;min-height:0}.merge-step-heading{margin-bottom:18px;gap:12px}.merge-step>p.hint{margin:0 0 24px;line-height:1.7}.merge-step>button{margin-top:0;min-height:40px;padding:9px 16px}.merge-step>label{margin:0 0 16px;line-height:1.7}.merge-step input{margin-top:10px;height:40px}.merge-execute{border-color:#35514f}@media(max-width:760px){.merge-operations{padding:18px}.merge-operations-heading{gap:14px}.merge-operations-heading .merge-heading-tools{padding-left:0;border-left:0;gap:8px}.merge-step{padding:18px}}

.merge-steps{align-items:stretch}.merge-step>p.hint,.merge-step>label{min-height:74px;margin-bottom:18px}.merge-step>button{margin-top:0}@media(max-width:600px){.merge-step>p.hint,.merge-step>label{min-height:0}}

/* Equal spacing on both sides of the workflow toolbar divider. */
.merge-operations-heading{column-gap:24px}.merge-operations-heading .merge-heading-tools{padding-left:24px;gap:12px}@media(max-width:760px){.merge-operations-heading{column-gap:14px}.merge-operations-heading .merge-heading-tools{padding-left:0}}

/* Password sign-in */
.login{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:radial-gradient(ellipse at 50% 22%,#163339 0,transparent 52%),#091019}.login-card{width:min(440px,100%);padding:40px 36px 24px;background:#101b28;border:1px solid #2b4051;border-radius:18px;box-shadow:0 24px 80px #0005;text-align:center}.login-emblem{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 18px;background:#163b37;color:#66e0cc;border:1px solid #32675f;border-radius:15px;font-size:28px;font-weight:700}.login-kicker{font-size:10px;letter-spacing:3px;color:#81b8bc}.login-card h1{font-size:27px;margin:10px 0;color:var(--ink)}.login-card .login-description{margin:0 0 30px;font-size:13px;color:var(--muted)}.login-card form{text-align:left}.login-card label{display:block;margin:0 0 10px;font-size:14px;font-weight:600;color:var(--ink)}.login-card input{height:50px;border-radius:9px;padding:12px 14px}.login-card #loginError{min-height:22px;margin:10px 0 12px;font-size:13px;line-height:1.6}.login-card .primary{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;height:48px;margin:0;border-radius:9px;font-size:15px}.login-footer{margin-top:30px;padding-top:20px;border-top:1px solid var(--border);font-size:12px;color:var(--muted)}aside>.brand{font-size:23px;letter-spacing:0}aside>.brand span{letter-spacing:3px;font-size:10px}@media(max-width:480px){.login-card{padding:30px 24px 22px}.login-card h1{font-size:24px}}

.login-card #username{margin-bottom:20px}

/* Sidebar identity */
aside>.sidebar-brand{display:flex;align-items:center;gap:12px;padding:2px 0 20px;border-bottom:1px solid var(--border);line-height:1.3}.sidebar-brand-icon{display:grid;grid-template-columns:repeat(2,7px);grid-template-rows:repeat(2,7px);gap:4px;place-content:center;width:40px;height:40px;flex:0 0 40px;border-radius:11px;background:#163b37;border:1px solid #2e5b54}.sidebar-brand-icon i{display:block;background:var(--accent);border-radius:2px}.sidebar-brand-icon i:last-child{opacity:.4}.sidebar-brand-copy{min-width:0}.sidebar-brand-copy strong{display:block;font-size:18px;font-weight:600;letter-spacing:0;color:var(--ink);white-space:nowrap}aside>.sidebar-brand .sidebar-brand-copy span{display:block;margin:7px 0 0;font-size:9px;font-weight:500;letter-spacing:2px;line-height:1;color:var(--muted)}

aside>.sidebar-wordmark{display:block;text-align:center;font-size:21px;font-weight:600;letter-spacing:1px;line-height:1.5;color:#e0ecf8;padding:10px 0 26px;margin:0;border-bottom:1px solid var(--border)}

aside>.sidebar-stacked{display:flex;flex-direction:column;align-items:center;gap:14px;padding:8px 0 26px;margin:0;border-bottom:1px solid var(--border)}.sidebar-stacked .sidebar-brand-icon{width:46px;height:46px;flex:0 0 46px;border-radius:13px}.sidebar-stacked strong{font-size:21px;font-weight:600;letter-spacing:1px;line-height:1.5;color:var(--ink)}

/* Deep slate / blue theme */
:root{--bg:#101620;--surface:#192231;--border:#303d50;--muted:#a0aec2;--ink:#e8edf5;--accent:#78a9ff}body{background:var(--bg);color:var(--ink)}aside{background:#141d2a;border-color:#29364a}.card,.panel,dialog,.stat,.login-card{background:var(--surface);border-color:var(--border)}button{background:#253144;border-color:#39475d;color:#e2e9f3;transition:background .15s,border-color .15s,box-shadow .15s}button:hover{background:#303f55;border-color:#526580}button.primary{background:#2563d9;border-color:#3478ef;color:#fff;box-shadow:0 3px 10px #07132a33}button.primary:hover{background:#3074ed;border-color:#6197fa}button.danger{background:#30242f;color:#ffb3bb;border-color:#63404b}button.danger:hover{background:#442b37;border-color:#95616a}button:disabled{opacity:.45;box-shadow:none}input,textarea,select{background:#111a27;border-color:#35445a;color:var(--ink)}input:focus,textarea:focus,select:focus{outline:2px solid #649aff80;outline-offset:1px;border-color:#649aff}button:focus-visible{outline:2px solid #8eb9ff;outline-offset:3px}input[type=checkbox]{accent-color:#397cec}#games button.active{background:#203858;color:#b5d2ff}#games button:hover{background:#233146}.tabs button{color:var(--muted)}.tabs button:hover{background:#202d40;color:var(--ink)}.tabs button.active{color:#9ec3ff;border-bottom-color:#6099ff;background:#1b2c43}.list-editor-tabs button.active{color:#9ec3ff;border-bottom-color:#6099ff}.sidebar-brand-icon,.login-emblem{background:#213858;border-color:#3b5c88;color:#abcfff}.sidebar-brand-icon i{background:#80b2ff}.login{background:radial-gradient(ellipse at 50% 20%,#233957 0,transparent 55%),var(--bg)}.login-kicker{color:#97b3d8}.login-card{border-color:#3b4d66}.merge-database,.merge-rules,.merge-operations,.merge-result{background:#151f2d;border-color:var(--border)}.merge-card-heading{background:#202d40}.merge-role,.merge-step-heading .merge-step-number{background:#243b5b;border-color:#456794;color:#b3d0ff}.merge-step{background:#1c2839;border-color:#35455d}.merge-execute{border-color:#4b607c}.url-row code{color:#a0c6ff}th{background:#131e2d}.platform,.preview{background:#131e2d}.list-workspace-editor{background:var(--surface)}.list-workspace-heading,.list-workspace-footer{background:#172231}.list-channels{border-color:var(--border)}

/* Compact list overview: fixed controls, flexible project name. */
#panel-lists .list-table{width:100%;min-width:900px;table-layout:fixed}
#panel-lists .list-table th,#panel-lists .list-table td{padding:14px 16px;vertical-align:middle}
#panel-lists .list-table th:first-child{width:auto}
#panel-lists .list-table th:nth-child(2){width:180px}
#panel-lists .list-table th:nth-child(3){width:108px}
#panel-lists .list-table th:nth-child(4){width:140px}
#panel-lists .list-table th:nth-child(5){width:180px}
#panel-lists .list-table th:last-child{width:200px}
#panel-lists .list-table td:nth-child(2),#panel-lists .list-table td:nth-child(3){min-width:0}
#panel-lists .list-table td select{width:100%;height:38px;padding:7px 10px}
#panel-lists .list-table th{font-size:12px;font-weight:500;color:var(--muted)}
#panel-lists .list-table .fixed-launcher-version{display:inline-block;padding:4px 10px;border:1px solid #3b506b;border-radius:6px;background:#213149;color:#b5d2ff;font-size:13px;font-variant-numeric:tabular-nums}
#panel-lists .list-table td:nth-child(4){white-space:normal;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
#panel-lists .list-table td:last-child button{margin:0 0 0 8px;padding:7px 10px;height:36px}
#panel-lists .list-table .list-select{font-size:14px}
#panel-lists>.toolbar{margin-bottom:16px}

/* Evenly spaced list columns. */
#panel-lists .list-table th:first-child,
#panel-lists .list-table th:nth-child(2),
#panel-lists .list-table th:nth-child(3),
#panel-lists .list-table th:nth-child(4),
#panel-lists .list-table th:nth-child(5),
#panel-lists .list-table th:last-child{width:16.666666%;text-align:left}
#panel-lists .list-table td:last-child{text-align:left;white-space:nowrap}
#panel-lists .list-table td select{max-width:160px}
#panel-lists .list-table td:last-child button{margin:0 8px 0 0}
#panel-lists .list-table td:last-child button:last-child{margin-right:0}
#panel-lists .list-table{min-width:1200px}
/* Game sidebar cards: external stylesheet required by CSP. */
#games .game-nav-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 6px;padding:14px 12px;margin-bottom:7px;border:1px solid transparent;border-radius:8px;background:#182231;transition:background .15s,border-color .15s;position:relative}#games .game-nav-card:hover{background:#202e42;border-color:#344a67}#games .game-nav-card.active{background:linear-gradient(100deg,#223a59,#1c2b40);border-color:#3f628d;box-shadow:inset 3px 0 #78a9ff}.game-nav-name{display:block;grid-column:1/-1;padding-right:16px;font-size:15px;font-weight:600;color:#edf3ff;overflow-wrap:anywhere;line-height:1.5}#games .game-nav-card.active:after{content:"›";position:absolute;right:12px;top:12px;font-size:19px;line-height:24px;color:#62768f}#games .game-nav-card.active:after{color:#9ec5ff}.game-nav-channels{display:flex;align-items:center;flex-wrap:wrap;gap:3px 5px;min-width:0}.game-nav-label{font-size:11px;color:#8294ab}.game-nav-id{font:500 12px/1.5 Consolas,monospace;color:#a9caff;overflow-wrap:anywhere;max-width:100%}.game-nav-id+.game-nav-id:before{content:"/";color:#63768f;margin-right:5px}.game-nav-unset{font-size:11px;color:#8294ab}#games .game-nav-count{margin:0;font-size:11px;color:#8294ab;white-space:nowrap;text-align:right;padding-right:10px;align-self:start;line-height:18px}.game-nav-empty{padding:14px 8px;color:#a0aec2;font-size:12px}

.region-rules-dialog{width:min(850px,94vw);max-height:85vh;overflow:auto}.region-rule-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(110px,1fr) auto auto auto;gap:12px;align-items:center;border-bottom:1px solid var(--border);padding:8px 0}.region-rule-row label{margin:0}.region-rule-row input[type=checkbox]{display:inline-block;margin-right:6px}@media(max-width:650px){.region-rule-row{grid-template-columns:1fr 1fr}.region-rule-row button{justify-self:start}}

/* Theme D: mist purple and light gray. */
:root{color-scheme:light;--bg:#f5f4fa;--surface:#ffffff;--border:#e7e3ee;--muted:#716980;--ink:#343047;--accent:#7860bf}
body{background:var(--bg);color:var(--ink)}aside{background:#eeebf5;border-color:var(--border)}
button{background:#fff;border-color:#dcd5e9;color:var(--ink);box-shadow:none}button:hover{background:#f0ebfa;border-color:#b6a6d4}button.primary{background:#7860bf;border-color:#7860bf;color:#fff;box-shadow:none}button.primary:hover{background:#6750aa;border-color:#6750aa}button.danger{background:#fff5f5;color:#a83549;border-color:#edccd2}button.danger:hover{background:#fce9ed;border-color:#d9a6b0}
input,textarea,select{background:#faf9fc;border-color:#dcd5e9;color:var(--ink)}input:focus,textarea:focus,select:focus{outline:2px solid #7860bf55;border-color:#947ccc}button:focus-visible{outline:2px solid #7860bf}input[type=checkbox]{accent-color:#7860bf}
th,#visitorRows thead,.platform,.preview,.package-guide,.resource-setting input:disabled{background:#faf9fc}
#games button.active{background:#ddd5ef;color:#51446d}#games button:hover{background:#e4deef}
.tabs button:hover{background:#f0ebfa;color:var(--ink)}.tabs button.active{background:#f0ebfa;color:#6e54b4;border-bottom-color:#7860bf}.list-editor-tabs button.active{color:#6e54b4;border-bottom-color:#7860bf}
.sidebar-brand-icon,.login-emblem{background:#e8e0f5;border-color:#d5c7eb;color:#6e54b4}.sidebar-brand-icon i{background:#7860bf}aside>.sidebar-wordmark{color:var(--ink)}
.login{background:radial-gradient(ellipse at 50% 20%,#e5dcf4 0,transparent 55%),var(--bg)}.login-kicker{color:#7860bf}.login-card{border-color:var(--border)}
.merge-database,.merge-rules,.merge-operations,.merge-result,.merge-step{background:#faf9fc;border-color:var(--border)}.merge-card-heading{background:#f0ebf7}.merge-role,.merge-step-heading .merge-step-number{background:#ede6f8;border-color:#d5c7eb;color:#6e54b4}.merge-execute{border-color:#b8a6d8}
.url-row code{color:#6d53af}.list-workspace-editor,.list-workspace-heading,.list-workspace-footer{background:var(--surface)}.list-table tbody tr:hover{background:#f7f4fc}.channel-card{background:#fff}.channel-card-head{background:#f3eff9}
#panel-lists .list-table .fixed-launcher-version{background:#f0ebfa;border-color:#ded3ef;color:#6e54b4}
#games .game-nav-card{background:#f6f3fb!important}#games .game-nav-card:hover{background:#e8e1f3!important;border-color:#d5c7eb!important}#games .game-nav-card.active{background:#ddd5ef!important;border-color:#c4b4de!important;box-shadow:inset 3px 0 #7860bf!important}
#games .game-nav-name{color:#453957!important}#games .game-nav-label,#games .game-nav-unset,#games .game-nav-count,#games .game-nav-empty{color:#716680!important}#games .game-nav-id{color:#6b50a9!important}#games .game-nav-id+.game-nav-id:before,#games .game-nav-card.active:after{color:#7860bf!important}
.status{background:#edf7f2;border-color:#bfddcc;color:#30664e}.status.error{background:#fff0f2;border-color:#e6bac4;color:#a83549}.status.pending{background:#fff7e7;border-color:#e6d2a3;color:#82601d}
#loginError,#groupError,#announcementError{color:#a83549}.feedback-toast{background:#edf7f2;border-color:#bfddcc;color:#30664e;box-shadow:0 8px 24px #34304718}.feedback-toast.error{background:#fff0f2;border-color:#e6bac4;color:#a83549}
.offline-banner{background:#f0ebfa!important;color:#66518b!important;border-color:#ded3ef!important}
/* Action button colors: blue, orange delete, green reload. */
button:not([role=tab]):not(.game-nav-card):not(.list-select):not(.announcement-title){background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:none}
button:not([role=tab]):not(.game-nav-card):not(.list-select):not(.announcement-title):hover{background:#1d4ed8;border-color:#1d4ed8;color:#fff}
.tabs button,.list-editor-tabs button{background:transparent!important;color:var(--muted)!important}
.tabs button.active,.list-editor-tabs button.active{background:#f0ebfa!important;color:var(--accent)!important}
#deleteGame{background:#c56616;border-color:#c56616;color:#fff}
#deleteGame:hover{background:#a8510e;border-color:#a8510e;color:#fff}
#reload{background:#21834d;border-color:#21834d;color:#fff}
#reload:hover{background:#186b3d;border-color:#186b3d;color:#fff}
#copyGame{background:#2563eb;border-color:#2563eb;color:#fff}
#copyGame:hover{background:#1d4ed8;border-color:#1d4ed8;color:#fff}
/* Purple navigation states and red critical actions. */
.tabs button:hover,.list-editor-tabs button:hover{background:#f0ebfa!important;color:#7860bf!important;border-color:transparent!important}
.tabs button.active,.list-editor-tabs button.active{background:#eee7fa!important;color:#7353b7!important;border-bottom:2px solid #7860bf!important}
button.primary,button.danger,#save,#deleteGame{background:#c93646!important;border-color:#c93646!important;color:#fff!important}
button.primary:hover,button.danger:hover,#save:hover,#deleteGame:hover{background:#ad2837!important;border-color:#ad2837!important;color:#fff!important}
/* Purple tab buttons, with a darker selected state. */
.tabs button,.list-editor-tabs button{background:#7860bf!important;color:#fff!important;border-bottom:2px solid transparent!important;border-radius:6px 6px 0 0}
.tabs button:hover,.list-editor-tabs button:hover{background:#6b50b0!important;color:#fff!important;border-bottom-color:#6b50b0!important}
.tabs button.active,.list-editor-tabs button.active{background:#5d409e!important;color:#fff!important;border-bottom:2px solid #4b2c89!important}
/* Page background: lavender gray. */
:root{--bg:#e5dff0}
body{background:var(--bg)}
/* Clearly distinguish the selected tab from hover and pressed states. */
.tabs button,.list-editor-tabs button{position:relative;transition:background .15s,box-shadow .15s,transform .1s}
.tabs button.active,.list-editor-tabs button.active{background:#432578!important;color:#fff!important;border-bottom:4px solid #e4ccff!important;box-shadow:inset 0 0 0 2px #bfa0ef!important;font-weight:700}
.tabs button.active:hover,.list-editor-tabs button.active:hover{background:#432578!important;border-bottom-color:#e4ccff!important}
.tabs button:active,.list-editor-tabs button:active{transform:translateY(2px);box-shadow:inset 0 2px 5px #28134266!important}
.tabs button:focus-visible,.list-editor-tabs button:focus-visible{outline:3px solid #51308b;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.tabs button,.list-editor-tabs button{transition:none}.tabs button:active,.list-editor-tabs button:active{transform:none}}
/* Compact tabs matching the selected game card. */
.tabs,.list-editor-tabs{gap:8px;padding-bottom:10px;align-items:center}
.tabs button,.list-editor-tabs button{padding:7px 13px!important;font-size:13px!important;line-height:1.5!important;border:1px solid transparent!important;border-radius:7px!important;background:#f6f3fb!important;color:#453957!important;box-shadow:none!important;font-weight:400!important;transform:none!important}
.tabs button:hover,.list-editor-tabs button:hover{background:#e8e1f3!important;color:#453957!important;border-color:#d5c7eb!important}
.tabs button.active,.list-editor-tabs button.active,.tabs button.active:hover,.list-editor-tabs button.active:hover{background:#ddd5ef!important;color:#453957!important;border:1px solid #c4b4de!important;box-shadow:inset 3px 0 #7860bf!important;font-weight:600!important}
.tabs button:active,.list-editor-tabs button:active{background:#ddd5ef!important;transform:none!important}
.tabs button:focus-visible,.list-editor-tabs button:focus-visible{outline:2px solid #7860bf;outline-offset:2px}
/* Purple sidebar surface with readable headings. */
aside{background:#7860bf;border-right-color:#6b50b0}
aside .side-title,aside>.brand,aside>.sidebar-wordmark,aside .sidebar-stacked strong,aside .sidebar-brand-copy strong{color:#fff}
aside .brand span,aside .sidebar-brand-copy span{color:#eee7fa}
aside>.sidebar-brand,aside>.sidebar-wordmark,aside>.sidebar-stacked{border-bottom-color:#ffffff33}
aside .sidebar-brand-icon{background:#8c74cc;border-color:#ac95e1}
aside .sidebar-brand-icon i{background:#fff}
/* Game project cards: teal sampled from the supplied button. */
#games .game-nav-card{background:#42c9c1!important;border-color:#42c9c1!important}
#games .game-nav-card:hover{background:#36bcb4!important;border-color:#239b94!important}
#games .game-nav-card.active,#games .game-nav-card.active:hover{background:#2eb3ab!important;border-color:#116c68!important;box-shadow:inset 3px 0 #116c68!important}
#games .game-nav-name{color:#103c3a!important}
#games .game-nav-label,#games .game-nav-unset,#games .game-nav-count,#games .game-nav-id,#games .game-nav-id+.game-nav-id:before,#games .game-nav-card.active:after{color:#164e4b!important}
#games .game-nav-card:focus-visible{outline:2px solid #fff;outline-offset:2px}
/* Workspace background: muted mist blue-gray. */
:root{--bg:#dce5ed}
body{background:var(--bg)}
/* Lighter inactive project cards; preserve the selected teal card. */
#games .game-nav-card:not(.active){background:#c7eeea!important;border-color:#b2e2dc!important}
#games .game-nav-card:not(.active):hover{background:#a4e1db!important;border-color:#80cec5!important}
/* Cohesive workspace polish: preserve the approved palette and actions. */
:root{--ink:#28334a;--muted:#657087;--border:#dce2ed;--bg:#dce5ed}
body{font-family:'Segoe UI','Microsoft YaHei',sans-serif;-webkit-font-smoothing:antialiased}
main{padding:28px 32px 40px;max-width:1920px}
header{margin-bottom:22px;min-height:44px}h1{font-size:25px;letter-spacing:0;font-weight:650}h2{font-weight:650}
aside{padding:24px 18px;background:linear-gradient(165deg,#7d65c1 0%,#6c55ad 100%);border-right:1px solid #644fa5;box-shadow:4px 0 18px #3023540d}
aside>.sidebar-stacked{padding:8px 0 23px;gap:14px}.sidebar-stacked strong{font-size:20px!important;letter-spacing:.5px!important}
aside .sidebar-brand-icon{box-shadow:0 5px 14px #3420561a;background:#ffffff20;border-color:#ffffff35}
.side-title{margin:25px 0 12px;font-size:16px}.side-title button{width:36px;height:36px;padding:0;font-size:22px;border-radius:9px}
aside #search{background:#f8f6fd;border:1px solid #e6ddf5;border-radius:9px;padding:10px 12px;font-size:13px;height:40px}
#games{margin-top:14px}#games .game-nav-card{padding:14px 12px;margin-bottom:9px;border-radius:10px;gap:9px 6px;min-height:78px}
#games .game-nav-card.active{box-shadow:inset 3px 0 #116c68,0 4px 12px #28385618!important}
#games .game-nav-name{font-size:14px;font-weight:600}#games .game-nav-label,#games .game-nav-count{font-size:11px}
.side-bottom{border-top:1px solid #ffffff26;padding-top:16px;gap:8px}.side-bottom button{border-radius:8px;min-height:37px;font-size:12px}
button{border-radius:8px;transition:background .15s,border-color .15s,box-shadow .15s}button:focus-visible{outline:2px solid #7860bf;outline-offset:3px}
.actions{gap:8px}.actions>button,.toolbar>div>button{min-height:38px;font-size:13px;padding:8px 13px}
.offline-banner{font-size:12px;line-height:1.7;padding:12px 16px!important;border-radius:10px!important;margin-bottom:22px}
.status{padding:11px 16px;border-radius:9px;font-size:13px;margin-bottom:18px}
.stats{gap:14px;margin-bottom:20px}.stat{padding:17px 18px;min-height:86px;border:1px solid #e3e8f0;border-radius:12px;box-shadow:0 3px 10px #26344e04}
.stat span{font-size:12px;color:#6a7487;margin-bottom:8px}.stat strong{font-size:14px;font-weight:600;line-height:1.6;font-variant-numeric:tabular-nums}
.tabs{gap:7px;margin-bottom:20px;padding:0 0 12px;border-bottom:1px solid #cdd6e3;flex-wrap:wrap;overflow:visible}
.tabs button,.list-editor-tabs button{font-weight:500!important;padding:7px 13px!important}
.tabs button.active,.list-editor-tabs button.active{color:#503985!important}
.card,.panel{padding:23px;border-radius:13px;border:1px solid #e1e6ef;box-shadow:0 5px 18px #26344e06}.toolbar{margin-bottom:19px}.toolbar h2{font-size:18px}.toolbar small{color:var(--muted)}
th{background:#f3f5fa;color:#677287;font-weight:500}th,td{border-bottom-color:#e7ebf2}tbody tr:hover{background:#f7f9fc}
input,select,textarea{border-radius:7px;border-color:#dce1eb;background:#fafbfd}input::placeholder,textarea::placeholder{color:#8790a1}
.hint{font-size:12px;color:#738097;line-height:1.8;margin:14px 0 0}
dialog{border-radius:14px;border-color:#dce2ed;box-shadow:0 24px 70px #25304b26}dialog::backdrop{background:#232b454d}
.feedback-toast{border-radius:11px;font-size:13px;box-shadow:0 8px 28px #253b4c12}
@media(max-width:1150px){main{padding:24px}.stats{gap:12px}}
@media(max-width:720px){main{padding:16px}aside{padding:16px;box-shadow:none}.side-title{margin:14px 0 10px}.panel,.card{padding:16px}.tabs{gap:6px}.tabs button{padding:7px 10px!important}.stats{gap:10px}.stat{padding:14px;min-height:80px}h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
/* Restore reference dark slate surfaces while retaining layout and actions. */
:root{color-scheme:dark;--bg:#101620;--surface:#192231;--border:#303d50;--muted:#a0aec2;--ink:#e8edf5;--accent:#a68bdf}
body{background:var(--bg);color:var(--ink)}aside{background:#141d2a;border-color:#29364a;box-shadow:none}
.card,.panel,.stat,dialog,.login-card{background:var(--surface);border-color:var(--border);box-shadow:none}
h1,h2,h3,.stat strong{color:var(--ink)}.stat span,.toolbar small,.hint{color:var(--muted)}
aside #search,input,select,textarea{background:#111a27;border-color:#35445a;color:var(--ink)}input::placeholder,textarea::placeholder{color:#8d9bb0}
th,#visitorRows thead,.platform,.preview,.package-guide,.resource-setting input:disabled{background:#131e2d;color:var(--muted)}th,td{border-bottom-color:var(--border)}tbody tr:hover,.list-table tbody tr:hover{background:#202d40}
.merge-database,.merge-rules,.merge-operations,.merge-result,.merge-step{background:#151f2d;border-color:var(--border)}.merge-card-heading,.channel-card-head{background:#202d40}.channel-card{background:#151f2d}.list-workspace-editor,.list-workspace-heading,.list-workspace-footer{background:var(--surface)}
.tabs,.list-editor-tabs{border-color:var(--border)}
.tabs button,.list-editor-tabs button{background:#253144!important;color:#dce5f3!important;border-color:#39475d!important}
.tabs button:hover,.list-editor-tabs button:hover{background:#34415a!important;color:#fff!important;border-color:#657493!important}
.tabs button.active,.list-editor-tabs button.active,.tabs button.active:hover,.list-editor-tabs button.active:hover{background:#393253!important;color:#e6d9ff!important;border-color:#78619f!important;box-shadow:inset 3px 0 #b198e0!important}
.offline-banner{background:#202b42!important;color:#c4d3ed!important;border-color:#374863!important}
.status,.feedback-toast{background:#12352e;border-color:#347867;color:#99f1ca}.status.error,.feedback-toast.error{background:#321c23;border-color:#844849;color:#ffc0c0}.status.pending{background:#302719;border-color:#766238;color:#f5d58d}
#loginError,#groupError,#announcementError{color:#ffabb8}.url-row code{color:#a0c6ff}.merge-role,.merge-step-heading .merge-step-number,#panel-lists .list-table .fixed-launcher-version{background:#243b5b;border-color:#456794;color:#b3d0ff}
aside .sidebar-brand-icon,.login-emblem{background:#213858;border-color:#3b5c88;color:#abcfff}aside .sidebar-brand-icon i{background:#80b2ff}.login{background:radial-gradient(ellipse at 50% 20%,#233957 0,transparent 55%),var(--bg)}.login-kicker{color:#97b3d8}
/* Coordinated slate-blue project and tab selection states. */
#games .game-nav-card,#games .game-nav-card:not(.active){background:#1b293b!important;border-color:#304159!important;box-shadow:none!important}
#games .game-nav-card:hover,#games .game-nav-card:not(.active):hover{background:#24374f!important;border-color:#48658a!important}
#games .game-nav-card.active,#games .game-nav-card.active:hover{background:#253f5e!important;border-color:#527ead!important;box-shadow:inset 3px 0 #88b9ff!important}
#games .game-nav-name{color:#e8f0ff!important}
#games .game-nav-label,#games .game-nav-unset,#games .game-nav-count{color:#a8bbd3!important}
#games .game-nav-id,#games .game-nav-id+.game-nav-id:before,#games .game-nav-card.active:after{color:#b3d3ff!important}
.tabs button,.list-editor-tabs button{background:#1b293b!important;color:#c5d3e6!important;border-color:#304159!important}
.tabs button:hover,.list-editor-tabs button:hover{background:#24374f!important;color:#e8f0ff!important;border-color:#48658a!important}
.tabs button.active,.list-editor-tabs button.active,.tabs button.active:hover,.list-editor-tabs button.active:hover{background:#253f5e!important;color:#e8f0ff!important;border-color:#527ead!important;box-shadow:inset 3px 0 #88b9ff!important}
.tabs button:active,.list-editor-tabs button:active{background:#253f5e!important}
.tabs button:focus-visible,.list-editor-tabs button:focus-visible,#games .game-nav-card:focus-visible{outline:2px solid #88b9ff;outline-offset:2px}
/* Responsive workspace: use available width and contain wide tables locally. */
main{max-width:none;min-width:0}
aside{overflow-y:auto}
aside>.brand,aside>.side-title,aside>#search,.side-bottom{flex-shrink:0}
#games{min-height:100px}
header,.toolbar,.toolbar>div,.dialog-actions{flex-wrap:wrap}
header>div,.toolbar>div,.form-grid>*,.announcement-grid>*,.platform-grid>*{min-width:0}
header h1,.offline-banner,.status,.history-row{overflow-wrap:anywhere}
.actions,.toolbar>div{max-width:100%;flex-wrap:wrap}
.card,.panel,.table-wrap,.list-table-wrap{min-width:0;max-width:100%}
.form-grid,.announcement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
dialog{max-height:calc(100dvh - 32px);overflow:auto}
@media(max-width:1000px){
 .form-grid,.announcement-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:720px){
 aside{height:auto;overflow:visible}
 #games{min-height:0;max-height:150px;gap:8px;flex:none}
 #games .game-nav-card{flex:0 0 200px;margin-bottom:0}
 .side-bottom{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:12px}
 .list-editor-tabs{flex-wrap:wrap;gap:6px}
 .history-row,.list-workspace-footer{flex-wrap:wrap}
}
@media(max-width:420px){
 .stats{grid-template-columns:minmax(0,1fr)}
 .side-bottom{grid-template-columns:repeat(2,minmax(0,1fr))}
 main{padding:12px}.panel,.card{padding:12px}
 .toolbar small{display:block;margin-left:0}
}
/* Multi-source merge workbench */
.merge-source-list{display:grid;gap:14px;margin-bottom:12px}.merge-table-scroll{overflow:auto;margin:14px 0;max-height:360px}.merge-table-scroll table{width:100%;border-collapse:collapse}.merge-table-scroll th,.merge-table-scroll td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.merge-result-body{min-width:0}.merge-rules label{display:block;margin:12px 0}.merge-rules select{max-width:100%}

/* Horizontal database cards: primary and every source share one row. */
.work-dialog.merge-workbench{width:min(1480px,96vw);max-width:96vw;padding:24px;max-height:92vh}
.merge-zone-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px}
.merge-zone-toolbar h3{margin:0;font-size:18px}.merge-zone-toolbar p{margin:6px 0 0}.merge-zone-toolbar>button{flex-shrink:0}
.merge-workbench .merge-zone-row{display:flex;flex-wrap:nowrap;align-items:stretch;gap:16px;overflow-x:auto;padding-bottom:12px;margin:14px 0 0;scrollbar-color:#486582 var(--surface)}
.merge-zone-row>.merge-source-list{display:contents}
.merge-zone-row .merge-database{flex:1 0 330px;min-width:330px;display:flex;flex-direction:column;border-radius:12px}
.merge-zone-row .merge-card-heading{padding:16px 18px}.merge-zone-row .merge-card-heading h3{margin:0;font-size:17px}
.merge-zone-row .merge-primary-card{border-color:#4c8bd6}.merge-zone-row .merge-primary-card .merge-card-heading{background:#1b3554}
.merge-zone-row .merge-db-fields{padding:18px;gap:12px;grid-template-columns:minmax(0,1fr) 85px}
.merge-zone-row .merge-card-actions,.merge-zone-row .merge-card-note{padding:0 18px 16px;margin:auto 0 0;min-height:40px}
.merge-zone-row .merge-card-actions{display:flex;gap:8px}.merge-zone-row .merge-card-note{color:var(--muted);font-size:13px}
.merge-workbench .merge-rules{display:grid;grid-template-columns:1.2fr 1fr;column-gap:20px;padding:18px}
.merge-workbench .merge-rules>h3,.merge-workbench .merge-rules>p{grid-column:1/-1;margin:6px 0}
.merge-workbench .merge-rules>label{margin:8px 0}
.merge-workbench .merge-rules select{display:block;width:100%;margin-top:8px;height:42px}
.merge-workbench .merge-operations>.actions{margin-bottom:16px}
@media(max-width:760px){.work-dialog.merge-workbench{padding:16px}.merge-zone-toolbar{align-items:flex-start}.merge-zone-toolbar p{max-width:230px}.merge-zone-row .merge-database{flex-basis:300px;min-width:300px}.merge-workbench .merge-rules{display:block}}

.merge-scroll-tools{display:flex;gap:8px;flex-shrink:0;flex-wrap:wrap}.merge-zone-row.is-scrollable{cursor:grab}.merge-zone-row.is-dragging,.merge-zone-row.is-dragging *{cursor:grabbing!important;user-select:none}.merge-zone-row input{cursor:text}.merge-zone-row button{cursor:pointer}.merge-zone-row button:disabled{cursor:default}.merge-zone-row:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:760px){.merge-zone-toolbar{flex-wrap:wrap}.merge-scroll-tools{width:100%}.merge-zone-toolbar p{max-width:none}}

.merge-zone-row .merge-db-fields{grid-template-columns:minmax(0,1fr) 132px}.merge-field-port{font-size:13px;min-width:0}.merge-port-picker{display:flex;gap:5px;margin-top:7px}.merge-port-picker select{min-width:0;width:100%;height:42px;padding:6px}.merge-port-picker button{flex:0 0 32px;padding:0;height:42px;font-size:18px}

.merge-zone-row .merge-db-fields{grid-template-columns:minmax(0,1fr) 150px}.merge-port-picker button{flex-basis:48px;font-size:13px}
.merge-port-dialog{width:min(520px,92vw);max-height:90vh;padding:24px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink);overflow:auto}.merge-port-dialog h2{font-size:19px;margin:0 0 18px}.merge-port-dialog label{display:block;color:var(--muted);margin-bottom:8px}.merge-port-dialog textarea{display:block;box-sizing:border-box;width:100%;min-height:200px;resize:vertical;padding:12px;line-height:1.7}.merge-port-dialog .hint{font-size:12px;line-height:1.8;margin:14px 0}.merge-port-error{color:#ff9292;white-space:pre-wrap;overflow-wrap:anywhere}.merge-port-error:empty{display:none}.merge-port-dialog .dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}

/* Merge controls: navigation, addition, removal and dismissal. */
.merge-workbench button.merge-btn-move{background:#263c53!important;border:1px solid #45617d!important;color:#dceafa!important}
.merge-workbench button.merge-btn-move:hover:not(:disabled){background:#34516e!important;border-color:#6a91b8!important}
.merge-workbench button.merge-btn-add{background:#17634f!important;border:1px solid #2e8b72!important;color:#edfff8!important}
.merge-workbench button.merge-btn-add:hover:not(:disabled){background:#207c63!important;border-color:#56b99a!important}
.merge-workbench button.merge-btn-remove{background:#502b35!important;border:1px solid #915063!important;color:#ffdce4!important}
.merge-workbench button.merge-btn-remove:hover:not(:disabled){background:#713747!important;border-color:#c37388!important}
.merge-workbench button.merge-btn-close{background:#b83246!important;border:1px solid #d35265!important;color:#fff!important;padding:10px 18px;white-space:nowrap}
.merge-workbench button.merge-btn-close:hover:not(:disabled){background:#cf3c52!important;border-color:#ec7182!important}
.merge-workbench button:is(.merge-btn-move,.merge-btn-add,.merge-btn-remove,.merge-btn-close):disabled{background:#202c3a!important;border-color:#344254!important;color:#748397!important;opacity:1!important;cursor:not-allowed}
.merge-workbench button:is(.merge-btn-move,.merge-btn-add,.merge-btn-remove,.merge-btn-close):focus-visible{outline:2px solid #a5d4ff;outline-offset:3px}

 .merge-workbench .merge-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.merge-workbench .merge-step{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:20px;min-height:0;height:auto}
.merge-workbench .merge-step h3{margin:0;font-size:16px}
.merge-workbench .merge-step p{margin:0;min-height:0;line-height:1.7;flex:1}
.merge-workbench .merge-step>button{margin:0;width:100%;height:42px;min-height:42px}
.merge-workbench .merge-step>input{margin:0;width:100%;height:42px}
@media(max-width:760px){.merge-workbench .merge-steps{grid-template-columns:1fr}}

.merge-workbench>.merge-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:20px;margin-bottom:22px}
.merge-topbar-title{min-width:0}.merge-topbar-title h2{margin:0 0 8px;font-size:22px}
.merge-workbench .merge-topbar-title .merge-intro{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.merge-topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex-shrink:0}
.merge-workbench .merge-topbar-actions button{height:42px;min-height:42px;padding:9px 16px;white-space:nowrap;margin:0}

@media(max-width:1100px){.merge-workbench>.merge-topbar{align-items:flex-start;flex-direction:column}.merge-topbar-actions{width:100%}}
@media(max-width:560px){.merge-topbar-actions{gap:8px}.merge-topbar-actions button{flex:1}}

.merge-workbench .merge-topbar>.merge-topbar-title{display:block}


#openMerge{background:#6550a3!important;border-color:#8870c6!important;color:#fff!important}
#openMerge:hover:not(:disabled){background:#7960bc!important;border-color:#a28bdc!important}
.merge-workbench button.merge-btn-save{background:#17634f!important;border:1px solid #2e8b72!important;color:#edfff8!important}
.merge-workbench button.merge-btn-save:hover:not(:disabled){background:#207c63!important;border-color:#56b99a!important}
.merge-workbench button.merge-btn-save:disabled{background:#202c3a!important;border-color:#344254!important;color:#748397!important;opacity:1!important}
.merge-workbench button.merge-btn-save:focus-visible,#openMerge:focus-visible{outline:2px solid #a5d4ff;outline-offset:3px}

/* Dedicated merge confirmation layout. */
#dialog.merge-confirm-dialog{width:min(520px,calc(100vw - 32px));padding:24px 28px;background:var(--surface);color:var(--ink);border:1px solid #3b4b61;border-radius:14px;box-shadow:0 20px 60px #0005}
#dialog.merge-confirm-dialog h2{font-size:20px;font-weight:600;line-height:1.4;margin:0 0 12px;color:var(--ink)}
#dialog.merge-confirm-dialog .merge-confirm-field{margin:0}
#dialog.merge-confirm-dialog .merge-confirm-description{display:block;color:#b3c0d2;font-size:14px;line-height:1.7}
#dialog.merge-confirm-dialog .merge-confirm-phrase{display:block;margin:16px 0 20px;padding:10px 14px;border:0;border-left:3px solid #c9a35a;border-radius:0 6px 6px 0;background:#c9a35a0a;color:#ebc778;font-size:18px;font-weight:600;line-height:1.6;letter-spacing:0;overflow-wrap:anywhere}
#dialog.merge-confirm-dialog .merge-confirm-input-label{display:block;font-size:13px;line-height:1.6;color:#aab9cd;margin:0 0 8px}
#dialog.merge-confirm-dialog input{font-size:15px;line-height:1.6;min-height:44px;margin:0;background:#111a27;color:var(--ink);border:1px solid #40516b;border-radius:7px;padding:9px 12px}
#dialog.merge-confirm-dialog input::placeholder{color:#8292aa}
#dialog.merge-confirm-dialog input:focus{outline:2px solid #649aff55;outline-offset:1px;border-color:#649aff}
#dialog.merge-confirm-dialog .dialog-actions{margin-top:22px;padding-top:18px;border-top:1px solid var(--border);gap:10px}
#dialog.merge-confirm-dialog .dialog-actions button{min-width:84px;min-height:38px;padding:7px 18px;font-size:14px;font-weight:500;border-radius:7px}
#dialog.merge-confirm-dialog #dialogCancel{background:transparent;border-color:#42526b;color:#bdcadd;box-shadow:none}
#dialog.merge-confirm-dialog #dialogCancel:hover{background:#253144;border-color:#627493;color:#edf4ff}
@media(max-width:540px){#dialog.merge-confirm-dialog{padding:22px 20px}#dialog.merge-confirm-dialog .merge-confirm-phrase{font-size:17px}}

.merge-running-emphasis{color:#ffda83;font-weight:800;font-size:1.08em;margin:0 .2em}

/* Batch merge entry controls. */
.merge-entry-status{display:inline-block;max-width:160px;white-space:normal;font-size:12px;line-height:1.6;padding:5px 9px;border:1px solid var(--border);border-radius:6px;color:var(--muted)}.merge-entry-status.merged{color:#b3d0ff;background:#243b5b;border-color:#456794}.merge-entry-status.invalid{color:#ffabb8;border-color:#b85468}


.merge-auto-publication{padding:12px 16px;border:1px solid #456794;border-radius:8px;background:#172439;color:#b9ddff;line-height:1.7}
.merge-workbench .merge-rules{grid-template-columns:minmax(0,360px) max-content;align-items:start}
.merge-workbench .merge-rules>label{min-width:0}
.merge-workbench .merge-rules input[type=number]{width:100%;height:42px;margin-top:8px}
.merge-workbench .merge-rules .merge-keep-field{width:max-content;max-width:100%}
.merge-workbench .merge-rules .merge-keep-field input[type=number]{width:0;min-width:100%}
@media(max-width:760px){.merge-workbench .merge-rules{display:block}}
