.re-shell{max-width:1480px;margin:0 auto;padding:36px 24px 90px;color:#1c2b42;font-family:inherit}.re-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px}.re-eyebrow{font-size:11px;letter-spacing:.13em;color:#3478bd;font-weight:800;margin-bottom:10px}.re-heading h1{font-size:clamp(25px,3vw,36px);letter-spacing:-.035em;margin:0 0 10px;font-weight:800}.re-heading p{color:#66758b;max-width:720px;line-height:1.65;margin:0}.re-heading-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.re-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.94fr);gap:24px;align-items:start}.re-editor{min-width:0;display:grid;gap:20px}.re-preview-col{min-width:0;position:sticky;top:22px}.re-panel{background:#fff;border:1px solid #e5ebf3;border-radius:17px;box-shadow:0 9px 28px rgba(23,43,77,.035);padding:24px}.re-panel-head{display:flex;align-items:center;gap:13px;margin-bottom:22px}.re-panel-head h2,.re-preview-top h2{font-size:17px;font-weight:800;letter-spacing:-.02em;margin:0 0 5px}.re-panel-head p,.re-preview-top p{font-size:12px;color:#8290a4;margin:0;line-height:1.5}.re-step{width:35px;height:35px;flex:0 0 35px;display:grid;place-items:center;background:#eaf3ff;color:#216eb2;font-weight:800;border-radius:10px;font-size:12px}.re-between{justify-content:space-between}.re-head-group{display:flex;align-items:center;gap:13px}.re-template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.re-template{background:#fff;border:1.5px solid #e6ebf2;border-radius:12px;min-width:0;min-height:106px;cursor:pointer;padding:12px 7px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#33445e;font-family:inherit;transition:.18s}.re-template:hover{border-color:#a6c6e8;background:#f8fbff}.re-template.is-active{border-color:#2879c3;background:#eff7ff;box-shadow:0 0 0 2px rgba(40,121,195,.09)}.re-template-icon{font-size:29px;color:#357bb5;line-height:1.2}.re-template strong{font-size:11px;text-align:center}.re-template small{font-size:10px;color:#8a97a7;text-align:center}.re-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.re-field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#40506a;min-width:0}.re-full{grid-column:1/-1}.re-field input:not([type=color]),.re-field select,.re-field textarea,.re-id-row input,.re-id-row select{font:inherit;font-size:13px;color:#293a51;border:1px solid #dfe6ef;border-radius:9px;background:#fff;padding:10px 11px;width:100%;min-width:0;outline:none}.re-field textarea{resize:vertical;min-height:65px}.re-field input:focus,.re-field textarea:focus,.re-field select:focus,.re-id-row input:focus,.re-id-row select:focus{border-color:#4593d2;box-shadow:0 0 0 3px rgba(69,147,210,.1)}.re-color{display:flex;align-items:center;gap:8px}.re-color input[type=color]{width:44px;height:40px;padding:3px;border:1px solid #dfe6ef;border-radius:9px;background:#fff;cursor:pointer;flex-shrink:0}.re-checks{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:20px}.re-checks label{font-size:12px;color:#52627a;display:flex;gap:8px;align-items:center;cursor:pointer}.re-checks input{accent-color:#277ac1}.re-btn{font:inherit;border:1px solid #dbe5ef;border-radius:9px;padding:10px 14px;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap;transition:.15s}.re-btn-light{background:#fff;color:#465975}.re-btn-light:hover{background:#f4f8fc}.re-btn-primary{background:#2379c2;border-color:#2379c2;color:#fff}.re-btn-primary:hover{background:#1666ac}.re-btn-small{padding:9px 11px}.re-profiles{display:grid;gap:12px}.re-person{border:1px solid #e5ebf3;border-radius:12px;overflow:hidden}.re-person-head{display:flex;align-items:center;gap:10px;background:#f9fbfe;padding:12px}.re-person-num{background:#e8f2ff;border-radius:8px;color:#2779ba;font-size:12px;font-weight:800;width:29px;height:29px;display:grid;place-items:center}.re-person-name{flex:1;min-width:0;font-size:13px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.re-person-actions{display:flex;gap:5px}.re-icon-btn{border:1px solid #e1e7ef;background:white;border-radius:7px;padding:5px 8px;color:#67778c;cursor:pointer;font-size:12px}.re-icon-btn:hover{background:#edf5fc}.re-icon-btn:disabled{opacity:.35;cursor:default}.re-person-body{padding:15px;display:grid;gap:15px}.re-id-title{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:800;color:#40506a}.re-id-list{display:grid;gap:7px}.re-id-row{display:grid;grid-template-columns:minmax(95px,.75fr) minmax(0,1.5fr) auto;gap:7px;align-items:center}.re-id-row button{border:0;background:#fff0f0;color:#ba4b4b;border-radius:8px;padding:9px;cursor:pointer}.re-preview-panel{padding:0;overflow:hidden}.re-preview-top{padding:20px 22px;border-bottom:1px solid #edf0f5;display:flex;align-items:center;justify-content:space-between}.re-live{font-size:10px;font-weight:800;color:#138a5b;display:flex;align-items:center;gap:6px}.re-live span{height:7px;width:7px;border-radius:50%;background:#20b978}.re-preview{background:#f7f9fc;padding:22px;min-height:310px;max-height:650px;overflow:auto}.re-output-head{padding:20px 22px 12px;display:flex;justify-content:space-between;align-items:center;gap:12px}.re-output-head h3{font-size:15px;margin:0 0 5px}.re-output-head p{font-size:12px;color:#8390a1;margin:0}.re-code{display:block;box-sizing:border-box;margin:0 22px 10px;width:calc(100% - 44px);height:148px;resize:vertical;background:#101d30;color:#cce4ff;border:0;border-radius:9px;padding:15px;font:11px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace}.re-message{font-size:12px;color:#287e56;min-height:18px;margin:0 22px 18px}.re-note{margin-top:14px;background:#f1f7ff;border:1px solid #dceaff;border-radius:12px;padding:18px 20px;color:#425c7a;font-size:12px;line-height:1.7}.re-note strong{font-size:13px}.re-note p{margin:5px 0 0}.re-preview *{box-sizing:border-box}@media(max-width:1100px){.re-layout{grid-template-columns:1fr}.re-preview-col{position:static}.re-heading{flex-direction:column}.re-heading-actions{justify-content:flex-start}}@media(max-width:620px){.re-shell{padding:24px 12px 60px}.re-panel{padding:17px}.re-template-grid{grid-template-columns:repeat(2,1fr)}.re-fields{grid-template-columns:1fr}.re-checks{grid-template-columns:1fr}.re-preview{padding:12px}.re-id-row{grid-template-columns:1fr auto}.re-id-row select{grid-column:1/-1}.re-heading-actions{width:100%}.re-heading-actions .re-btn{flex:1}.re-output-head{flex-wrap:wrap}}


/* OJSHub Reviewer & Editor: layout and global-style isolation */
.re-shell { box-sizing:border-box; padding-top: 88px; }
.re-shell, .re-shell * { box-sizing:border-box; }
.re-shell .re-heading { margin-bottom:20px; }
.re-shell .re-heading h1 { font-size:clamp(25px,2.5vw,32px); line-height:1.25; }
.re-shell .re-layout { gap:20px; grid-template-columns:minmax(0,1fr) minmax(360px,.95fr); }
.re-shell .re-editor { gap:16px; }
.re-shell .re-panel { padding:20px; }
.re-shell .re-panel-head { margin-bottom:16px; }
.re-shell .re-template { min-height:76px; padding:9px 5px; gap:3px; }
.re-shell .re-template-icon { font-size:21px; }
.re-shell .re-template strong { font-size:11px; line-height:1.3; }
.re-shell .re-template small { font-size:9px; }
.re-shell .re-checks { gap:12px 16px; }
.re-shell .re-checks label { display:flex; flex-direction:row; align-items:center; justify-content:flex-start; gap:8px; font-size:12px; font-weight:500; line-height:1.4; margin:0; padding:0; width:auto; }
.re-shell .re-checks input[type="checkbox"] { appearance:auto !important; -webkit-appearance:checkbox !important; display:inline-block !important; flex:0 0 15px !important; width:15px !important; height:15px !important; min-width:15px !important; min-height:15px !important; max-width:15px !important; max-height:15px !important; margin:0 !important; padding:0 !important; border:initial !important; border-radius:initial !important; box-shadow:none !important; transform:none !important; vertical-align:middle; accent-color:#2379c2; }
.re-shell .re-field input:not([type=color]), .re-shell .re-field select, .re-shell .re-field textarea, .re-shell .re-id-row input, .re-shell .re-id-row select { max-width:100%; font-size:12px; line-height:1.4; }
.re-shell .re-preview-col { top:90px; }
.re-shell .re-preview-panel { padding:0; }
.re-shell .re-preview-top { padding:15px 18px; }
.re-shell .re-preview { padding:14px; max-height:560px; min-height:280px; font-size:12px; }
.re-shell .re-preview h1, .re-shell .re-preview h2, .re-shell .re-preview h3 { line-height:1.3; }
.re-shell .re-output-head { padding:15px 18px 10px; }
.re-shell .re-code { margin:0 18px 10px; width:calc(100% - 36px); }
.re-shell .re-message { margin:0 18px 15px; }
@media (max-width:1100px) { .re-shell .re-layout { grid-template-columns:1fr; } .re-shell .re-preview-col { position:static; } }
@media (max-width:620px) { .re-shell { padding:76px 12px 60px; } .re-shell .re-panel { padding:16px; } .re-shell .re-preview-panel { padding:0; } .re-shell .re-preview { padding:12px; } .re-shell .re-template-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .re-shell .re-checks { grid-template-columns:1fr 1fr; } }
