:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#202c40;background:#f3f5f9;font-size:14px;line-height:1.55;accent-color:#245aca}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #cbd3df;border-radius:6px;background:white;color:#23324a;padding:8px 14px}button:hover{background:#edf3ff;border-color:#7597cf}button:disabled{opacity:.5;cursor:not-allowed}button.primary{color:white;background:#245aca;border-color:#245aca}button.primary:hover{background:#1949ab}button.danger{color:#ad2935}input:not([type=checkbox]),select,textarea{display:block;width:100%;padding:8px 10px;border:1px solid #cbd3df;border-radius:6px;background:white;margin-top:5px}input[type=checkbox]{width:17px;height:17px;margin:0 6px 0 0;vertical-align:middle}textarea{min-height:90px;resize:vertical}label{display:block;font-weight:500}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid #3979dc;outline-offset:2px}.page-header,main,footer{max-width:1320px;margin:auto;padding:24px}.page-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px}.eyebrow{font-size:12px;letter-spacing:2px;color:#245aca;font-weight:700;margin-bottom:4px}h1{font-size:28px;margin:0}h2{font-size:19px;margin:0 0 8px}h3{font-size:16px}.muted{color:#637087;font-weight:400}p{margin:8px 0 14px}.card{background:white;border:1px solid #dce2eb;border-radius:10px;padding:24px;margin-bottom:20px;box-shadow:0 2px 6px #1e365005}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.grow{flex:1;min-width:140px}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.section-heading button{white-space:nowrap}.tabs{margin-bottom:20px}.tabs button[aria-pressed=true]{background:#243b61;color:white;border-color:#243b61}.filters{margin-bottom:18px;align-items:end}.filters select{min-width:150px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.table-scroll{overflow-x:auto;margin:16px 0}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:12px 10px;text-align:left;border-bottom:1px solid #e5eaf1;vertical-align:top}th{background:#f6f8fb;color:#516077;font-weight:600;white-space:nowrap}td.actions{min-width:150px}td.actions button{font-size:12px;padding:5px 9px;margin:0 4px 5px 0}.mono{font-family:ui-monospace,monospace;font-size:12px;overflow-wrap:anywhere}.hash{max-width:230px}.badge{display:inline-block;background:#eaf0f8;border:1px solid #d7e1ee;border-radius:20px;padding:3px 10px;white-space:nowrap;font-size:12px}.badge.approved,.badge.issued,.badge.active{background:#e9f6ef;color:#226b46}.badge.rejected,.badge.revoked{background:#fbecef;color:#a6293c}.badge.pending,.badge.hold{background:#fff4dc;color:#895d0d}.info,#notice{padding:12px 16px;background:#edf4ff;border:1px solid #cadaf2;border-radius:6px}#notice.error{background:#fff1f1;color:#9f2234;border-color:#e8c3c7}#notice.success{background:#edf8f1;color:#256340;border-color:#c6dfce}.empty{text-align:center;color:#69768a;padding:28px}.feature-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:14px;background:#f6f8fb;border-radius:6px}.feature-options label{font-size:13px}#feature-matrix th:not(:first-child),#feature-matrix td:not(:first-child){text-align:center;min-width:100px}#feature-matrix small{display:block;font-weight:400}details{border-top:1px solid #e5eaf1;margin-top:24px;padding-top:18px}summary{font-weight:600;cursor:pointer;font-size:16px}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f7fa;padding:16px;max-height:360px;overflow:auto}dialog{border:1px solid #cbd3df;border-radius:10px;padding:24px;width:min(680px,94vw);max-height:85vh;overflow:auto}dialog::backdrop{background:#12253a66}#record-body label{margin:12px 0}footer{text-align:center;color:#738096;font-size:12px}[hidden]{display:none!important}
@media(max-width:760px){main,.page-header{padding:16px}.card{padding:16px}.form-grid{grid-template-columns:1fr}.feature-options{grid-template-columns:1fr 1fr}.section-heading{flex-direction:column}.tabs{gap:6px}.tabs button{padding:7px 9px}}
