.page-header{margin-bottom:1.25rem}.page-header .eyebrow,.eyebrow{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .2rem}
.page-header h1,h1.page-title{font-size:2rem;line-height:1.15;font-weight:800;color:var(--navy-950);margin:0 0 .3rem;letter-spacing:-.02em}
.page-header p{font-size:.92rem;color:var(--muted);margin:0;line-height:1.4}
.button{min-height:var(--button-height,40px);display:inline-flex;align-items:center;justify-content:center;padding:.5rem .95rem;border-radius:var(--radius-sm);border:1px solid transparent;font-size:.88rem;font-weight:650;text-decoration:none;cursor:pointer;transition:background 150ms ease,border-color 150ms ease,color 150ms ease}
.button-primary{background:var(--blue-700);color:#fff}.button-secondary{background:#fff;border-color:var(--border);color:var(--navy-900)}.button-tertiary{background:transparent;border-color:var(--border);color:var(--ink)}
.button-large{min-height:44px;padding:.65rem 1.25rem;font-size:.92rem}
.button:hover{filter:brightness(.96)}:focus-visible{outline:2px solid var(--blue-700);outline-offset:2px}
.button-destructive{background:var(--danger);color:#fff}.button:disabled{opacity:.55;cursor:not-allowed;filter:none}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-subtle,0 2px 8px rgba(16,33,58,.04));padding:1.15rem 1.25rem}
.status-badge{display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;padding:.2rem .6rem;font-size:.72rem;font-weight:700;line-height:1.3;border:1px solid transparent}
.status-ready,.status-available,.status-active{background:var(--success-bg);color:var(--success);border-color:#bce5d0}
.status-pending,.status-review{background:var(--warning-bg);color:var(--warning);border-color:#f7e4b6}
.status-inactive,.status-returned,.status-denied{background:var(--danger-bg);color:var(--danger);border-color:#f5c6cb}
.alert{padding:.65rem .9rem;border-radius:var(--radius-sm);margin-bottom:1rem;font-size:.88rem;line-height:1.4}.alert-error{background:var(--danger-bg);color:var(--danger);border:1px solid #f4b8bd}.alert-info{background:var(--blue-100);color:var(--navy-900);border:1px solid #c5dafa}.alert-warning{background:var(--warning-bg);color:var(--warning);border:1px solid #f7e4b6}
.form-stack{display:grid;gap:.65rem}.form-stack input,.form-stack select,.form-stack textarea,.language-form select{min-height:var(--input-height,40px);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.5rem .65rem;background:#fff;color:var(--ink);font-size:.88rem;transition:border-color 150ms ease,box-shadow 150ms ease}.form-stack textarea{resize:vertical}
.form-stack input:hover,.form-stack select:hover,.form-stack textarea:hover{border-color:#a3b4cc}
.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus{border-color:var(--blue-700);outline:2px solid var(--blue-100);outline-offset:0}
.form-stack label{font-weight:650;font-size:.85rem;color:var(--navy-950)}.muted,.reference{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.icon-button{width:38px;height:38px;display:inline-grid;place-items:center;border:1px solid var(--border);border-radius:6px;background:#fff;font-weight:700;cursor:pointer;transition:background 150ms ease}.icon-button:hover{background:var(--surface-alt)}
.filter-chip,.citation-chip{min-height:38px;border:1px solid var(--border);border-radius:999px;background:#fff;padding:.35rem .75rem;font-size:.82rem}.filter-chip.active{background:var(--blue-100);border-color:var(--blue-700)}
.form-error{color:var(--danger);font-size:.82rem}.loading-indicator{align-items:center;gap:.5rem;color:var(--muted);font-size:.82rem}.loading-indicator span{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--blue-700);border-radius:50%;animation:spin .8s linear infinite}
.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.65rem .75rem;text-align:left;border-bottom:1px solid var(--border);vertical-align:top;font-size:.84rem}.data-table th{background:var(--surface-alt);font-size:.72rem;font-weight:750;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--border)}.tab{min-height:38px;padding:.45rem .75rem;border:0;background:transparent;font-size:.85rem;cursor:pointer}.tab[aria-selected="true"],.tab.active{border-bottom:3px solid var(--blue-700);font-weight:700;color:var(--navy-950)}
.pagination{display:flex;align-items:center;gap:.5rem}.modal-backdrop{position:fixed;inset:0;background:rgba(16,33,58,.45);display:grid;place-items:center;z-index:30}.modal,.side-panel{background:#fff;border:1px solid var(--border);box-shadow:var(--shadow)}.modal{width:min(620px,calc(100% - 2rem));border-radius:var(--radius);padding:1.25rem}.side-panel{position:fixed;inset:0 0 0 auto;width:min(420px,100%);padding:1.25rem}
.toast-region{position:fixed;right:1rem;bottom:1rem;z-index:50}.toast{background:var(--navy-950);color:#fff;border-radius:var(--radius-sm);padding:.65rem .85rem;font-size:.84rem}.workflow-timeline{list-style:none;border-left:2px solid var(--border);padding-left:1.25rem}.workflow-timeline li{position:relative;margin-bottom:1rem}.workflow-timeline li::before{content:"";position:absolute;left:-1.65rem;top:.25rem;width:.7rem;height:.7rem;border-radius:50%;background:var(--blue-700)}
.definition-grid{display:grid;grid-template-columns:minmax(130px,.4fr) minmax(0,1fr);gap:.4rem .8rem;margin:0;font-size:.84rem}.definition-grid dt{color:var(--muted);font-weight:650}.definition-grid dd{margin:0;overflow-wrap:anywhere}.action-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}
@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.loading-indicator span{animation:none}}
.gr-form-container{max-width:1150px;margin:0 auto}.form-card{margin-bottom:1.25rem;padding:1.25rem 1.5rem}.form-card-title{font-size:1.05rem;font-weight:700;margin-top:0;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);color:var(--navy-950)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem}.form-field--full{grid-column:1 / -1}.form-field{display:flex;flex-direction:column}
.form-label{display:block;font-weight:650;font-size:.85rem;color:var(--navy-950);margin-bottom:.3rem}.form-help{display:block;font-size:.76rem;color:var(--muted);margin-bottom:.3rem;line-height:1.35}.required-mark{color:var(--danger);font-weight:700}
.form-control{width:100%;max-width:none;box-sizing:border-box;min-height:var(--input-height,40px);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.5rem .65rem;background:#fff;color:var(--ink);font-family:inherit;font-size:.88rem;transition:border-color 150ms ease}
.form-control:hover{border-color:#a3b4cc}.form-control:focus{border-color:var(--blue-700);outline:2px solid var(--blue-100);outline-offset:0}
textarea.form-control{min-height:90px;resize:vertical}.form-control-readonly{background-color:var(--surface-alt);color:var(--navy-900);cursor:not-allowed;border-color:var(--border);font-weight:600}
.form-info-banner{margin-top:.85rem;margin-bottom:1.25rem}.action-row-separated{padding-top:1rem;border-top:1px solid var(--border)}
@media(max-width:768px){.form-grid{grid-template-columns:1fr}}

/* CSP-compliant utility classes replacing inline styles */
.v2-button-group{display:flex;gap:0.75rem;margin-top:1rem;flex-wrap:wrap}
.v2-detail-card{margin-top:1rem;padding:1rem}
.v2-detail-summary{margin-top:1.5rem;background:var(--color-surface-variant);border-left:4px solid var(--color-primary);padding:1.25rem}
.v2-detail-flex-between{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.75rem}
.v2-detail-summary-title{margin:0;font-size:1.1rem;color:var(--color-primary);display:flex;align-items:center;gap:0.5rem}
.v2-badge-sm{font-size:0.75rem}
.v2-summary-content{margin-top:0.5rem}
.v2-summary-text{white-space:pre-line;line-height:1.6}
.v2-variant-section{margin-bottom:2rem}
.v2-variant-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border);padding-bottom:1rem;margin-bottom:1rem}
.v2-margin-0{margin:0}
.v2-variant-meta{display:flex;gap:0.75rem;align-items:center}
.v2-page-block{margin-bottom:1rem;padding:1rem;border:1px solid var(--color-border)}
.v2-page-header{display:flex;justify-content:space-between;margin-bottom:0.5rem}
.v2-flex-center-gap{display:flex;gap:0.5rem;align-items:center}
.v2-page-text{white-space:pre-wrap;font-family:inherit;font-size:0.95rem;line-height:1.5;color:var(--color-on-surface)}
.v2-runs-history{margin-top:2rem}
