/* Release workspace: one semantic palette, native controls, compact rhythm. */
:root{--release-canvas:#fff;--release-surface:#fff;--release-inset:#f5f7fa;--release-ink:#243044;--release-secondary:#52627a;--release-metadata:#626f86;--release-disabled:#8590a2;--release-border:#dce3ed;--release-action:#1760d6;--release-focus:#1760d6;--control-background:#f5f7fa;--control-border:#a6b3c5;--control-focus:#1760d6;--release-danger:#a32727;--release-danger-fill:#ffe8e6;--release-warning:#8a4b08;--release-warning-fill:#fff1df;--release-success:#176140;--release-success-fill:#dcf5e7;--release-dev:#0f5c55;--release-dev-fill:#dcf7f3;--release-progress:#0c4a8a;--release-progress-fill:#e9f2ff;--release-review:#5e3a8c;--release-review-fill:#f1eafe;--release-open:#3646a3;--release-open-fill:#e9edff;--release-todo:#44546a;--release-todo-fill:#edf1f6;--release-closed:#254e33;--release-closed-fill:#e1edd9;--release-resolved:#395817;--release-resolved-fill:#eff4d2;--release-blocked:#8e244d;--release-blocked-fill:#fce6f0;--release-missing:#56616f;--release-missing-fill:#f2f3f5;--release-non-jira:#704829;--release-non-jira-fill:#f5eee8;--release-invalid:#923c30;--release-invalid-fill:#fff0ed}
body{font-family:'Microsoft JhengHei','PingFang TC',system-ui,sans-serif;font-size:14px;line-height:1.5;color:var(--release-ink);background:var(--release-canvas);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:var(--release-ink)}
button{min-height:36px;padding:8px 12px;border-radius:6px;background:var(--release-action);color:var(--release-surface);border:1px solid transparent;font-weight:500;cursor:pointer}
button.secondary,button[aria-pressed="false"]{background:var(--release-inset);color:var(--release-secondary)}
button:hover:not(:disabled){filter:brightness(.96)}button:active:not(:disabled){filter:brightness(.90)}
button:disabled{color:var(--release-secondary);background:var(--release-border);cursor:default}
input:not([type=checkbox]),select,textarea,#version-edit-dialog input,#version-edit-dialog select,#version-edit-dialog textarea{background:var(--control-background);color:var(--release-ink);border:1px solid var(--control-border);border-radius:6px;min-height:36px;padding:8px 12px;font:inherit;min-width:0;max-width:100%}
input[type=checkbox]{width:16px;min-height:16px;accent-color:var(--release-action)}
label{font-weight:500}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--release-focus);outline-offset:2px}
h1,h2,h3{color:var(--release-ink);text-wrap:balance}p{color:var(--release-secondary)}a{color:var(--release-action)}
.app-header{gap:16px;min-height:56px;margin-bottom:12px;border-color:var(--release-border)}.app-header h1{font-size:18px}.app-header button{font-size:14px}.app-header nav button[aria-pressed="true"]{background:var(--release-progress-fill);color:var(--release-progress);font-weight:600}
.release-layout aside{background:var(--release-canvas);border-color:var(--release-border);padding:8px}.sprint-choice{background:var(--release-inset);color:var(--release-ink);padding:8px}.sprint-choice[aria-pressed=true]{background:var(--release-progress-fill);color:var(--release-progress);box-shadow:inset 3px 0 var(--release-action)}.sprint-choice small{font-size:12px;font-weight:400}
.release-detail-head .actions,.monitor-toolbar .actions{gap:8px}.release-detail-head h3,.monitor-toolbar h2{font-size:20px}
.table-wrap table{font-size:14px;line-height:1.4}.table-wrap th{font-size:12px;background:var(--release-inset);color:var(--release-secondary)}.table-wrap th,.table-wrap td{border-color:var(--release-border);padding:8px}.table-wrap tbody tr:hover td,.table-wrap tbody tr:focus-within td{background:var(--release-inset)}
.version-detail>.table-wrap,.release-detail>.table-wrap,#monitor-panel>.table-wrap{border-color:var(--release-border)}
.table-tools{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 8px;font-size:12px}.table-tools label{display:flex;gap:8px;align-items:center;margin:0}.table-tools button{min-height:32px;padding:4px 8px}.table-tools #versions-visible{margin-left:auto;color:var(--release-secondary)}
.list-filters{gap:8px;flex-wrap:wrap;margin-bottom:8px}.list-filters input[type=search]{flex:1;max-width:340px}.list-filters select{font-size:14px}
#versions-time,#release-updated{font-size:12px;color:var(--release-metadata)}#versions-summary,#release-summary,#monitor-summary{font-size:13px}
.version-detail th:nth-child(1){width:12%}.version-detail th:nth-child(2){width:8%}.version-detail th:nth-child(3){width:24%}.version-detail th:nth-child(4){width:6%}.version-detail th:nth-child(5){width:9%}.version-detail th:nth-child(6){width:7%}.version-detail th:nth-child(7){width:11%}.version-detail th:nth-child(8){width:15%}.version-detail th:nth-child(9){width:8%}
.release-date{white-space:nowrap;font-size:12px;font-variant-numeric:tabular-nums}.version-detail td:first-child{font-size:12px;border-right:0}.version-detail th:first-child{border-right:0}.table-wrap td button,.release-row-actions button{min-height:32px;padding:4px 8px;font-size:13px}.release-row-actions button+button{margin-left:8px}
.jira-status{font-size:12px;line-height:1.4;padding:4px 8px;border-radius:6px;border:0;max-width:100%;font-weight:600}
.jira-status.status-done,.success{color:var(--release-success);background:var(--release-success-fill)}.jira-status.status-closed{color:var(--release-closed);background:var(--release-closed-fill)}.jira-status.status-resolved{color:var(--release-resolved);background:var(--release-resolved-fill)}
.jira-status.status-progress{color:var(--release-progress);background:var(--release-progress-fill)}.jira-status.status-development{color:var(--release-dev);background:var(--release-dev-fill)}.jira-status.status-review{color:var(--release-review);background:var(--release-review-fill)}.jira-status.status-needs-work,.failed{color:var(--release-danger);background:var(--release-danger-fill)}.jira-status.status-blocked{color:var(--release-blocked);background:var(--release-blocked-fill)}.jira-status.status-todo{color:var(--release-todo);background:var(--release-todo-fill)}.jira-status.status-open{color:var(--release-open);background:var(--release-open-fill)}.jira-status.status-unavailable,.notice,.unknown,.pending{color:var(--release-warning);background:var(--release-warning-fill)}.jira-status.status-unmapped{color:var(--release-secondary);background:var(--release-inset);border:1px dashed var(--control-border)}.jira-status.status-missing{color:var(--release-missing);background:var(--release-missing-fill)}.jira-status.status-non-jira{color:var(--release-non-jira);background:var(--release-non-jira-fill)}.jira-status.status-invalid{color:var(--release-invalid);background:var(--release-invalid-fill)}
.deployment-state{font-size:12px;font-weight:500;white-space:nowrap;display:inline-flex;align-items:center;gap:4px;color:var(--release-secondary)}.deployment-state:before{content:'';width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--release-metadata)}.deployment-dev:before{background:var(--release-dev)}.deployment-stage:before{background:var(--release-warning)}.deployment-prod:before{background:var(--release-success)}.deployment-group{display:flex;flex-direction:column;gap:4px}.deployment-entry{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.deployment-entry small{font-size:12px;color:var(--release-metadata)}
#version-edit-delete,.danger-quiet{color:var(--release-danger);background:transparent;border:1px solid var(--release-border)}#version-edit-delete:hover,.danger-quiet:hover{color:var(--release-danger);background:var(--release-danger-fill)}.version-edit-footer .actions{gap:8px}.version-edit-footer #version-edit-delete{margin-right:8px}
dialog{max-height:calc(100dvh - 32px);overflow:auto;border-radius:12px;border-color:var(--release-border);box-shadow:0 4px 24px #24304426;padding:24px}dialog::backdrop{background:#24304466}dialog input,dialog select,dialog textarea{width:100%}dialog input[type=checkbox]{width:auto}.version-edit-header,.version-edit-footer{border-color:var(--release-border)}.version-sync-summary{background:var(--release-inset)}
#user-dialog{padding:0;width:min(720px,calc(100vw - 32px));max-width:720px;overflow:hidden}#user-dialog[open]{display:flex;flex-direction:column}#user-dialog>h2{padding:16px 24px;margin:0;font-size:20px;border-bottom:1px solid var(--release-border);flex-shrink:0}#user-form{display:flex;flex-direction:column;overflow:hidden;min-height:0}.dialog-body{padding:0 24px 16px;overflow:auto;min-height:0}.dialog-footer{flex-shrink:0;justify-content:flex-end;border-top:1px solid var(--release-border);padding:16px 24px;margin:0}.password-toggle{display:flex;align-items:center;gap:8px;font-size:13px}.password-toggle input{margin:0}#user-permissions label{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,1fr);align-items:center;gap:8px}#user-permissions label:has(input){display:flex}#user-permissions select{width:100%}#users-panel .table-wrap{overflow:auto}#users-panel table{min-width:760px}
.settings-navigation{display:flex;gap:8px;margin:0 0 16px}.settings-navigation button[aria-pressed=true]{background:var(--release-progress-fill);color:var(--release-progress)}.settings-config-view{max-width:640px}.settings-config-view label{margin-top:0}.settings-explanation{margin:16px 0}.settings-explanation summary{cursor:pointer;color:var(--release-secondary)}#jira-interval{max-width:180px}#audit-rows pre{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}#settings-audit-view .table-wrap{overflow:auto}#settings-audit-view table{min-width:780px}
#approved-panel{max-width:1100px;width:100%}#approved-panel .actions{margin-top:12px}#preview{border-left:0;border-radius:8px;background:var(--release-inset)}#preview-title{font-size:18px}#approval-recovery button{margin-left:8px}#monitor-panel progress{max-width:100%}.notice:empty,[role=status]:empty{display:none}
@media(max-width:1100px){.app-header{flex-wrap:wrap;gap:8px;padding:8px 0}.app-header nav{order:3;flex-basis:100%}.app-header h1{flex:1}.list-filters input[type=search]{max-width:none}.release-layout{grid-template-columns:140px minmax(0,1fr)}}
@media(max-width:760px){.release-layout{display:flex}.version-detail table{min-width:850px}.release-detail table{min-width:720px}.table-tools{gap:8px}.app-header nav{gap:4px}.app-header nav button{font-size:13px}#user-dialog{width:calc(100vw - 16px)}.dialog-body{padding:0 16px 16px}.dialog-footer{padding:12px 16px}.version-edit-footer #version-edit-delete{margin-right:0}.release-detail-head .actions{flex-wrap:wrap}#monitor-panel .title{min-width:200px}.list-filters select{flex:1}.table-wrap{max-width:100%}}
@media(pointer:coarse){button,.table-wrap td button,.release-row-actions button{min-height:44px}input,select,textarea{font-size:16px}input[type=checkbox]{width:24px;height:24px}.password-toggle,.versions-detail-toggle{min-height:44px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.version-edit-footer{padding:12px 24px}.version-edit-body>#version-edit-message:not(:empty){padding:8px 12px;margin:0 0 16px;background:var(--release-warning-fill);color:var(--release-warning);border-radius:6px}
.feedback-error{color:var(--release-danger)!important;background:var(--release-danger-fill)!important;padding:8px 12px;border-radius:6px;overflow-wrap:anywhere}

@media(max-width:760px){.monitor-toolbar{flex-wrap:wrap}.monitor-toolbar>div:first-child{flex-basis:100%}.monitor-toolbar .actions{flex-wrap:wrap}.monitor-toolbar h2{white-space:nowrap}}

#profile-panel{max-width:760px;width:100%;margin-inline:auto;min-height:0;overflow:auto;padding:0 8px 16px}#profile-panel h2{font-size:20px}#profile-panel input{display:block;width:100%;margin:8px 0 16px}#profile-panel details{margin:24px 0}#profile-panel li{margin:8px 0}#profile-panel .actions{gap:8px;flex-wrap:wrap}#jira-credential-notice{flex-shrink:0;margin:8px 0;padding:12px}#jira-credential-notice[hidden]{display:none}#jira-credential-setup{margin-left:8px}@media(max-width:1100px){.app-header{flex-wrap:wrap}.app-header nav{order:3;flex-basis:100%;flex-wrap:wrap}}

#profile-panel p{margin:8px 0;line-height:1.5}#profile-panel h2,#profile-panel h3{margin:16px 0 12px}#profile-panel label{margin:12px 0 4px}#profile-panel .detail{max-width:none}

.monitor-row-actions{white-space:nowrap!important}.monitor-row-actions button+button{margin-left:8px}#monitor-edit-dialog{width:min(600px,calc(100vw - 24px));max-height:90dvh;overflow:auto}#monitor-edit-dialog input{width:100%}#monitor-edit-dialog .detail{max-width:none}#monitor-edit-dialog .actions{justify-content:flex-end}

.monitor-detail-toggle{margin-right:8px}.monitor-detail-content{box-sizing:border-box;max-width:calc(100vw - 60px);padding:16px;background:var(--release-inset);border-left:3px solid var(--release-action)}.monitor-detail-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;margin:12px 0;max-height:55dvh;overflow:auto}#monitor-details-row td{white-space:normal}

.monitor-group-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0}.monitor-group-toolbar label{margin:0}.monitor-group-toolbar select{width:auto;min-width:160px;max-width:320px}.monitor-group-toolbar .actions{margin:0}#monitor-add-group,#monitor-edit-group{margin-bottom:12px}#monitor-group-name{margin-top:8px}@media(max-width:640px){.monitor-group-toolbar select{flex:1;min-width:0;max-width:100%}.monitor-group-toolbar .actions{width:100%;flex-wrap:wrap}}

.monitor-group-cell{overflow-wrap:anywhere;max-width:160px}#monitor-group-column[hidden]{display:none}

.monitor-parent-cell a{white-space:nowrap}
/* Jira Description preserves ADF structure inside the existing detail viewport. */
.monitor-detail-text:has(.jira-description){white-space:normal}
.jira-description{font-size:14px;line-height:1.65;color:var(--release-ink);overflow-wrap:anywhere}
.jira-description.adf-plain{white-space:pre-wrap}
.jira-description p{margin:0 0 12px;white-space:pre-wrap;min-height:1em}
.jira-description h1,.jira-description h2,.jira-description h3,.jira-description h4,.jira-description h5,.jira-description h6{margin:20px 0 10px;line-height:1.3}
.jira-description h1{font-size:24px}.jira-description h2{font-size:20px}.jira-description h3{font-size:17px}
.jira-description ul,.jira-description ol{padding-left:28px;margin:8px 0 16px}.jira-description li>p{margin:4px 0}
.jira-description blockquote{margin:12px 0;padding:4px 16px;border-left:3px solid var(--release-border);color:var(--release-secondary)}
.jira-description pre{padding:12px;background:var(--release-surface);border:1px solid var(--release-border);border-radius:6px;white-space:pre;overflow:auto;max-width:100%}
.jira-description code{font-family:ui-monospace,monospace;background:var(--release-surface);padding:1px 4px}.jira-description pre code{padding:0}
.jira-description .adf-table-scroll{overflow:auto;max-width:100%;margin:12px 0}
.jira-description table{border-collapse:collapse;table-layout:auto;min-width:0;width:100%}
.jira-description th,.jira-description td{position:static!important;min-width:100px;width:auto;padding:8px 12px;border:1px solid var(--release-border);white-space:normal;vertical-align:top}
.jira-description th{background:var(--release-inset);font-weight:600}.jira-description td{background:var(--release-surface)}
.jira-description .adf-panel{margin:12px 0;padding:12px 16px;border:1px solid var(--release-border);border-left:3px solid var(--release-action);border-radius:6px;background:var(--release-surface)}
.jira-description .adf-warning{border-left-color:#b7791f}.jira-description .adf-error{border-left-color:#b42318}.jira-description .adf-success{border-left-color:#17804b}
.jira-description details{margin:12px 0;padding:10px 12px;border:1px solid var(--release-border)}.jira-description summary{cursor:pointer;font-weight:600}
.jira-description .adf-status{display:inline-block;padding:0 6px;border:1px solid var(--release-border);border-radius:3px;background:var(--release-surface)}
