:root{--xr-ink:#172333;--xr-muted:#64748b;--xr-line:#dce4ed;--xr-accent:#275bd3;--xr-bg:#f4f7fb}

body{font-family:"Segoe UI","Malgun Gothic",sans-serif;color:var(--xr-ink);background:var(--xr-bg)}

.main{max-width:none;width:100%;min-width:0}.topbar{border-bottom:1px solid var(--xr-line);padding-bottom:20px;margin-bottom:24px}

.panel,.release-card,.status-card,.welcome-card{border:1px solid var(--xr-line);border-radius:16px;box-shadow:0 3px 14px #19365a05}

.nav-item{min-height:44px;border-radius:10px}.nav-item.active{background:#eaf0ff;color:#234fb0}

input,select,textarea{font:inherit;line-height:1.45}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #6394ee;outline-offset:3px}

.agency-banner{max-height:none}.release-notes{font-size:14px;line-height:1.8}.release-meta{font-size:12px}.release-card-head{gap:16px;flex-wrap:wrap}

.xr-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.xr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px;margin:16px 0 28px}

.xr-card,.xr-panel{background:#fff;border:1px solid var(--xr-line);padding:22px;border-radius:16px;margin-bottom:16px}.xr-card{margin-bottom:0}

.xr-card strong{font-size:18px}.xr-card small,.xr-panel small{color:var(--xr-muted);font-size:12px}.xr-card>small{display:block;margin-top:6px}

.xr-metrics{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.xr-metrics b{font-size:19px;display:block}.xr-metrics small{display:block;margin-top:5px}

.xr-pill{display:inline-block;background:#edf1f5;color:#516174;border-radius:20px;font-size:12px;padding:5px 10px;white-space:nowrap}.xr-live{background:#e8f6d9;color:#3e6522}.xr-warn{color:#98520b;background:#fff3df}

.xr-note{color:var(--xr-muted);font-size:13px;line-height:1.7}.xr-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0}.xr-toolbar input,.xr-toolbar select{padding:10px 12px;border:1px solid var(--xr-line);border-radius:8px;background:white}

.xr-scroll{overflow:auto}.xr-scroll table{border-collapse:collapse;width:100%;font-size:14px}.xr-scroll th,.xr-scroll td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--xr-line);white-space:nowrap}.xr-scroll th{font-size:12px;color:var(--xr-muted);background:#f7f9fc}

.xr-check{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:13px 0;border-bottom:1px solid #eef1f5}.xr-check small{flex-basis:100%}

.xr-dialog{width:min(680px,92vw);max-height:88vh;border:1px solid var(--xr-line);border-radius:18px;padding:26px;color:var(--xr-ink);box-shadow:0 20px 80px #15233930}.xr-dialog::backdrop{background:#18243888}

.xr-form{display:grid;gap:16px}.xr-form label{display:grid;gap:8px;font-size:13px}.xr-form input,.xr-form textarea{width:100%;box-sizing:border-box;padding:11px;border:1px solid var(--xr-line);border-radius:8px}.xr-form button[type=submit]{background:var(--xr-accent);color:white;padding:12px;border:0;border-radius:9px}.xr-dialog details{margin-top:24px}.xr-message{font-size:13px;color:#9c3c18}.xr-dialog button:disabled{opacity:.5}

#crmSection table{font-size:13px}#crmSection th,#crmSection td{line-height:1.55}#crmSection .panel{overflow-x:auto}

@media(max-width:700px){.xr-grid{grid-template-columns:1fr}.xr-card,.xr-panel{padding:16px}.xr-toolbar>*{max-width:100%}.xr-dialog{padding:18px}.xr-row{flex-wrap:wrap}}

.xr-toolbar button,.xr-dialog button,.release-card button[data-release-edit]{border:1px solid #dce4ed;background:#fff;color:#275bd3;border-radius:8px;padding:10px 14px;cursor:pointer;font:inherit;font-size:13px}.xr-toolbar button:hover,.release-card button[data-release-edit]:hover{background:#eaf0ff}

#crmSection td,#crmSection th{font-size:13px}.crm-viewer-meta,.crm-viewer-one-id,.crm-form-label,.crm-note-row small,.crm-task-row span,.crm-profile-id,.crm-mini-status,.crm-empty-mini,.crm-record-note,.crm-filter-checks,.crm-care-detail,.crm-modal-list-row,.crm-modal-summary span,.crm-timeline-pager{font-size:12px;line-height:1.55}.crm-viewer-one-name strong,.crm-inline-form input,.crm-inline-form select,.crm-inline-form button,.crm-record-tabs button{font-size:13px}.crm-record-table{font-size:13px}



#accountList{max-height:min(70vh,850px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:8px}

.xr-grid{display:flex;flex-direction:column;gap:8px}

.xr-card{display:grid;grid-template-columns:minmax(230px,1fr) minmax(350px,1.6fr);gap:18px;align-items:center;padding:14px 18px}

.xr-card>.xr-row{grid-column:1;grid-row:1}.xr-card>small{grid-column:1;grid-row:2;margin-top:-12px}

.xr-card .xr-metrics{grid-column:2;grid-row:1 / 3;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;gap:14px}

.xr-card strong{font-size:15px}.xr-metrics b{font-size:17px}

@media(max-width:900px){.xr-card{grid-template-columns:1fr;gap:12px}.xr-card .xr-metrics{grid-column:1;grid-row:3}.xr-card>small{margin-top:0}.xr-card>.xr-row{flex-wrap:wrap}}



/* Account permissions: scroll only the account list, keep its heading and filters visible. */

#accountsSection #accountList{height:min(65vh,720px);max-height:none;min-height:240px;overflow-y:scroll;overflow-x:hidden;scrollbar-width:auto;scrollbar-color:#929fb3 #edf1f6}

#accountsSection #accountList>*{flex-shrink:0}

#accountList::-webkit-scrollbar{width:12px}#accountList::-webkit-scrollbar-track{background:#edf1f6;border-radius:8px}#accountList::-webkit-scrollbar-thumb{background:#929fb3;border-radius:8px;border:3px solid #edf1f6}

.release-fold{padding:0;min-width:0}.release-fold-title{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px 22px;cursor:pointer;list-style:none;font-size:16px}.release-fold-title::-webkit-details-marker{display:none}.release-fold-title strong{overflow-wrap:anywhere}.release-fold-title:focus-visible{outline:2px solid #275bd3;outline-offset:-3px;border-radius:16px}.release-fold[open] .release-fold-title{border-bottom:1px solid #e3e8ef}.release-fold-arrow{transition:transform .15s}.release-fold[open] .release-fold-arrow{transform:rotate(180deg)}.release-fold-body{padding:20px 22px}.xr-audit-detail{white-space:pre-wrap;overflow-wrap:anywhere;min-width:220px;max-width:520px}



.release-title-content{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;min-width:0}.release-title-badges{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px}.release-role-bj,.release-role-manager{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800;line-height:1.4;white-space:nowrap}.release-role-bj{background:#fff0da;color:#9a4600;border:1px solid #ffd19a}.release-role-manager{background:#e8f0ff;color:#1d50ad;border:1px solid #c5d8ff}.release-title-badges .release-product,.release-title-badges .release-latest,.release-title-badges .release-version{white-space:nowrap}.release-fold-arrow{flex-shrink:0}


/* Shared presentation rules. No dimensions, visibility or business rules changed. */
:root{--bg:#f5f7fb;--text:#1e293b;--muted:#64748b;--line:#cbd5e1}
body{font-family:"Malgun Gothic","Segoe UI",sans-serif}
button,input,select,textarea{font-family:inherit}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
.xr-panel,.release-card{border-color:#cbd5e1}

/* Release summaries: aligned product / device / access cells. */
.release-fold-title.release-columns{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.7fr) minmax(0,1.5fr) 14px;gap:0;padding:17px 20px}
.release-cell{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;min-width:0;padding:0 16px;align-self:stretch}
.release-cell:first-child{padding-left:0}.release-cell+.release-cell{border-left:1px solid #e2e8f0}
.release-cell-label{font-size:11px;font-weight:600;line-height:1.3;color:#64748b}
.release-cell .release-product{font-size:12px;line-height:1.5;padding:5px 10px;white-space:normal;overflow-wrap:anywhere}
.release-device{font-size:12px;font-weight:700;line-height:1.5;padding:5px 10px;border-radius:8px;background:#f1f5f9;color:#475569}
.release-access{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.release-expanded-heading{min-width:0}.release-expanded-heading h3{font-size:17px;margin:0 0 8px;overflow-wrap:anywhere}
@media(max-width:600px){.release-fold-title.release-columns{padding:14px 12px;grid-template-columns:minmax(0,1.1fr) minmax(0,.7fr) minmax(0,1.3fr) 10px}.release-cell{padding:0 8px}.release-cell .release-product,.release-device{padding:4px 6px;font-size:11px}.release-access .release-role-bj,.release-access .release-role-manager{font-size:10px;padding:3px 6px}.release-fold-body{padding:16px 14px}}

/* Keep program and device close; remaining width belongs to access. */
.release-fold-title.release-columns{grid-template-columns:150px 88px minmax(0,1fr) 14px}
@media(max-width:600px){.release-fold-title.release-columns{grid-template-columns:minmax(0,1.1fr) minmax(0,.7fr) minmax(0,1.3fr) 10px}}

/* Shared action geometry; semantic colors and navigation remain distinct. */
.main button:not(.nav-item):not(.assignment-chip):not(.bj-button):not(.presence-button),.main .release-download,.main .as-button{border-radius:10px;font-family:inherit;font-weight:700;line-height:1.4}
.main .primary-action,.main .secondary-action,.main .danger-action,.main .mini-action,.xr-toolbar button,.xr-row button,.release-delete,.release-download{min-height:38px;padding:8px 12px;box-sizing:border-box}
.main button:disabled{cursor:not-allowed;opacity:.55}
.main .release-download{display:inline-flex;align-items:center;justify-content:center;max-width:100%;overflow-wrap:anywhere}
.release-updated{display:block;color:#64748b;font-size:12px;font-weight:500;white-space:nowrap;margin-left:auto;text-align:right;align-self:flex-end}
@media(max-width:760px){.release-updated{width:100%;text-align:right}}

/* Server observations stay readable on desktop and phone. */
#serverStatusGrid{align-items:start}#serverStatusGrid .xr-panel{min-width:0;overflow-wrap:anywhere}#serverStatusGrid>.server-storage-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media(max-width:740px){#serverStatusGrid,#serverStatusGrid>.server-storage-grid{grid-template-columns:minmax(0,1fr)}}

.server-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.server-overview-grid>div{padding:14px;background:#f3f6fc;border-radius:10px}.server-overview-grid small{display:block;color:#64748b;margin-bottom:6px}.server-overview-grid strong{font-size:15px}.server-attention{padding-left:22px;font-size:13px;line-height:1.8;color:#8b4f12;overflow-wrap:anywhere}.server-technical>summary{padding:14px 0;cursor:pointer;font-weight:700}.server-technical[open]>summary{margin-bottom:12px}
@media(max-width:760px){.server-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#requestConnectionStatus{display:block;max-width:125px;font-size:10px}}

/* Operational status: failed refreshes never imply current green status. */
.server-refresh-error{border-color:#b77924;background:#33250e;color:#ffe5b0}
.server-previous{margin-top:14px;border:1px solid #576780;border-radius:12px;padding:14px}
.server-previous>summary{cursor:pointer;padding:8px;font-weight:700}
.server-previous>div{margin-top:12px}
.server-technical>summary:focus-visible,.server-previous>summary:focus-visible,textarea:focus-visible{outline:3px solid #70b6ff;outline-offset:3px}
