:root{font-family:Inter,Microsoft YaHei,sans-serif;color:#18212f;background:#f3f5f7;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}.login-shell{min-height:100vh;display:grid;place-items:center;padding:20px;background:#17212b}.login-panel{width:min(360px,100%);display:grid;gap:14px;background:#fff;border-radius:8px;padding:28px;box-shadow:0 18px 60px #0005}.login-panel h1,.login-panel p{margin:0}.login-panel p{color:#667281;font-size:13px}.shell{min-height:100vh;display:grid;grid-template-columns:224px 1fr}.sidebar{background:#17212b;color:#dbe3ea;padding:22px 14px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;padding:0 8px 22px;color:#fff;font-weight:700}nav button,.logout{height:40px;border:0;background:transparent;color:#9eabb8;display:flex;align-items:center;gap:10px;padding:0 12px;border-radius:6px}nav{display:grid;gap:5px}nav button{width:100%;cursor:pointer}nav .nav-active{color:#fff;background:#2a3947}.logout{margin-top:auto;cursor:pointer}main{padding:30px clamp(20px,4vw,56px);max-width:1280px;width:100%}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}h1{margin:0 0 6px;font-size:25px;letter-spacing:0}header p{margin:0;color:#667281;font-size:14px}.icon-button{width:38px;height:38px;border:1px solid #ccd3da;background:#fff;border-radius:6px;display:grid;place-items:center;cursor:pointer;color:#334150}.service-strip{min-height:54px;display:flex;align-items:center;gap:10px;border-top:1px solid #d8dee4;border-bottom:1px solid #d8dee4;margin-bottom:26px;font-size:14px}.status-dot{width:9px;height:9px;border-radius:50%;background:#c28b24}.status-dot.online{background:#16865a;box-shadow:0 0 0 3px #d8eee5}.release-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:18px}article{background:#fff;border:1px solid #dce1e6;border-radius:8px;padding:20px;box-shadow:0 2px 8px #18212f0a}.card-title{display:flex;align-items:center;gap:9px;color:#465463;font-size:14px;font-weight:700}.release-title{justify-content:space-between;gap:16px}.release-title>span{display:flex;align-items:center;gap:9px}.channel-switch{display:grid;grid-template-columns:repeat(2,64px);height:32px;padding:3px;border:1px solid #cbd3da;border-radius:6px;background:#f3f5f7}.channel-switch button{border:0;border-radius:3px;background:transparent;color:#667281;cursor:pointer;font-size:12px;font-weight:650}.channel-switch button.active{background:#fff;color:#176b63;box-shadow:0 1px 3px #18212f24}.version{font-size:27px;font-weight:750;margin:24px 0;color:#17212b}.card-row{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-top:1px solid #edf0f2;font-size:13px}.card-row span{color:#778390}.card-row strong{font-weight:600;overflow-wrap:anywhere;text-align:right}.install-link{align-items:flex-start}.link-cell{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:0}.link-cell a{color:#176b63;text-decoration:none;overflow-wrap:anywhere;text-align:right;max-width:300px}.link-cell a:hover{text-decoration:underline}.copy-button{display:inline-flex;align-items:center;gap:5px;border:1px solid #ccd3da;background:#fff;color:#334150;border-radius:5px;padding:5px 10px;font-size:12px;font-weight:650;cursor:pointer}.copy-button:disabled{opacity:.45;cursor:not-allowed}.copy-button:not(:disabled):hover{border-color:#176b63;color:#176b63}.section-actions{display:flex;align-items:center;gap:12px}.text-button{border:0;background:transparent;color:#176b63;font-size:13px;font-weight:650;cursor:pointer;padding:4px 8px;border-radius:5px}.text-button:hover{background:#e6f0ee}.detail-header{display:flex;align-items:center;gap:12px}.baseline-detail{background:#fff;border:1px solid #dce1e6;border-radius:8px;padding:20px;box-shadow:0 2px 8px #18212f0a}.case-detail-list{display:flex;flex-direction:column;gap:14px}.case-detail-card{border:1px solid #dce1e6;border-radius:8px;overflow:hidden}.case-detail-head{display:flex;align-items:center;gap:10px;padding:13px 16px;background:#f8fafb;border:0;width:100%;cursor:pointer;text-align:left;color:#18212f}.case-detail-head:hover{background:#eef2f4}.chevron{flex:0 0 auto;color:#778390;transition:transform .15s ease}.chevron.open{transform:rotate(180deg)}.case-detail-head .case-title{white-space:normal}.case-detail-body{margin:0;padding:16px;background:#fbfcfd;color:#2c3742;font-size:12px;line-height:1.55;overflow-x:auto;white-space:pre;max-height:360px;overflow-y:auto}.case-filter{width:260px}.card-detail-link{margin-top:14px;align-self:flex-start}.case-index{flex:0 0 auto;width:26px;height:26px;display:grid;place-items:center;border-radius:6px;background:#eef1f3;color:#55606c;font-size:12px;font-weight:700}.case-title{flex:1 1 auto;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-tag{flex:0 0 auto;font-size:11px;font-weight:650;color:#176b63;background:#e6f0ee;border-radius:4px;padding:3px 8px}.case-id{flex:0 0 auto;font-size:11px;color:#778390;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.case-rev{flex:0 0 auto;font-size:11px;color:#a43838;font-weight:650}.publisher{margin-top:24px;padding-top:24px;border-top:1px solid #d8dee4}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-heading>div{display:flex;align-items:center;gap:9px}.section-heading>span{color:#778390;font-size:12px}form:not(.login-panel){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;background:#fff;border:1px solid #dce1e6;border-radius:8px;padding:20px}.field{display:grid;gap:7px;min-width:0}.field>span{color:#667281;font-size:12px;font-weight:650}.field-wide{grid-column:1 / -1}input,select,textarea{width:100%;border:1px solid #cbd3da;border-radius:5px;padding:10px 11px;background:#fff;color:#18212f;outline:none}.publish-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.publish-message{color:#64717e;font-size:12px;line-height:1.5}.publish-message.error{color:#a43838}.publish-message.success{color:#13704b}.primary-button{min-width:120px;min-height:40px;border:0;border-radius:5px;background:#176b63;color:#fff;font-weight:700;cursor:pointer;padding:10px 16px}.primary-button:disabled{opacity:.45;cursor:not-allowed}.submission-layout{display:grid;grid-template-columns:minmax(280px,380px) minmax(420px,1fr);gap:18px;align-items:start}.submission-list,.submission-detail{background:#fff;border:1px solid #dce1e6;border-radius:8px;overflow:hidden}.submission-row{width:100%;border:0;border-bottom:1px solid #edf0f2;background:#fff;padding:14px;display:grid;grid-template-columns:1fr auto;gap:7px 12px;text-align:left;cursor:pointer}.submission-row:hover,.submission-row.selected{background:#f0f7f5}.submission-row span:first-child{display:grid;gap:5px;min-width:0}.submission-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.submission-row small,.submission-row time{color:#778390;font-size:11px}.submission-row time{grid-column:1 / -1}.submission-status{align-self:start;border-radius:4px;padding:3px 7px;font-size:11px;font-weight:700;color:#815d16;background:#fff2cf}.submission-status.approved{color:#13704b;background:#dff3e9}.submission-status.rejected{color:#a43838;background:#f8e2e2}.submission-status.changes_requested{color:#875416;background:#f8e8d2}.submission-detail{padding:20px;display:grid;gap:16px}.submission-detail-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.submission-detail h2,.submission-detail p,.submission-detail h3{margin:0}.submission-detail h2{font-size:18px}.submission-detail h3{font-size:13px}.submission-detail-head p{color:#778390;font-size:12px;margin-top:5px}.submission-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.submission-meta div{border-top:1px solid #edf0f2;padding-top:9px}.submission-meta dt{color:#778390;font-size:11px}.submission-meta dd{margin:4px 0 0;font-size:13px;overflow-wrap:anywhere}.result-list{display:grid;gap:6px}.result-row{display:grid;grid-template-columns:48px 1fr auto auto;gap:10px;padding:9px;background:#f7f9fa;font-size:11px;align-items:center}.result-row .pass{color:#13704b}.result-row .fail{color:#a43838}details summary{cursor:pointer;color:#176b63;font-size:12px;font-weight:650}.review-actions{display:flex;justify-content:flex-end;gap:9px}.review-actions button{border:1px solid #cbd3da;background:#fff;border-radius:5px;padding:9px 14px;cursor:pointer;font-weight:650}.review-actions .primary-button{border:0;background:#176b63}.review-actions .danger-button{color:#a43838;border-color:#e2bcbc}.header-actions{display:flex;align-items:center;gap:9px}.publish-baseline-button{min-height:38px;display:inline-flex;align-items:center;gap:7px;border:0;border-radius:5px;padding:0 14px;background:#176b63;color:#fff;font-weight:700;cursor:pointer}.publish-baseline-button:disabled{opacity:.45;cursor:not-allowed}.review-history,.review-notice{padding:11px 13px;border-radius:5px;background:#f3f5f7;font-size:12px}.review-history p{margin-top:5px}.review-notice{margin-bottom:14px}.review-notice.error{color:#a43838;background:#f8e2e2}.review-notice.success{color:#13704b;background:#dff3e9}.empty{padding:32px;color:#778390;text-align:center;font-size:13px}.empty-inline{color:#778390;font-size:12px}@media (max-width: 720px){.shell{grid-template-columns:1fr}.sidebar{padding:14px}.logout{margin-top:8px}main{padding:22px 16px}.release-grid,form:not(.login-panel){grid-template-columns:1fr}.field-wide{grid-column:auto}.publish-actions{align-items:stretch;flex-direction:column}}@media (max-width: 900px){.submission-layout{grid-template-columns:1fr}}
