.registry-shell{background:var(--color-mist);color:var(--color-ink);min-height:70svh}.registry-grid{gap:var(--space-md);grid-template-columns:minmax(0,1fr);display:grid}.registry-panel{background:var(--color-pearl);border:var(--rule-hairline) solid var(--color-line);border-radius:var(--radius-card);box-shadow:var(--shadow-fine)}.registry-input,.registry-select,.registry-textarea{background:var(--color-pearl);border:1px solid var(--color-line);border-radius:var(--radius-input);color:var(--color-ink);outline-offset:1px;outline:2px solid #0000;width:100%;min-height:44px;padding:.625rem .75rem}.registry-textarea{resize:vertical;min-height:7rem}.registry-input:focus-visible,.registry-select:focus-visible,.registry-textarea:focus-visible{outline-color:var(--color-focus)}.registry-input:active,.registry-select:active,.registry-textarea:active{border-color:var(--color-teal-text)}.registry-input:disabled,.registry-select:disabled,.registry-textarea:disabled{cursor:not-allowed;opacity:.55}.registry-input[aria-invalid=true],.registry-select[aria-invalid=true],.registry-textarea[aria-invalid=true]{border-color:var(--color-danger)}.registry-button{background:var(--color-gold);border:1px solid var(--color-gold);border-radius:var(--radius-input);color:var(--color-ink);cursor:pointer;min-height:44px;transition:transform var(--dur-short) var(--ease-out), background-color var(--dur-short) var(--ease-out);white-space:nowrap;justify-content:center;align-items:center;padding:.625rem 1rem;font-weight:700;display:inline-flex}.registry-button--secondary{background:var(--color-pearl);border-color:var(--color-line)}.registry-button--danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-pearl)}.registry-button:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.registry-button:active{transform:translateY(1px)}.registry-button:disabled,.registry-button[aria-disabled=true]{cursor:not-allowed;opacity:.55}.registry-table{border-collapse:collapse;width:100%}.registry-table th,.registry-table td{border-block-end:1px solid var(--color-line);text-align:start;vertical-align:top;padding:.75rem}.registry-table th{color:var(--color-steel-text);font-size:var(--text-xs);letter-spacing:.03em;text-transform:uppercase}.registry-status{border-radius:var(--radius-pill);font-size:var(--text-xs);white-space:nowrap;border:1px solid;padding:.2rem .55rem;font-weight:700;display:inline-flex}.registry-status--valid{color:var(--color-teal-text)}.registry-status--revoked,.registry-status--failed{color:var(--color-danger)}.registry-status--superseded,.registry-status--expired{color:var(--color-gold-text)}.certificate-preview{aspect-ratio:1.414;background:var(--color-pearl);border:8px double var(--color-gold);position:relative;overflow:clip;container-type:inline-size}.certificate-preview[data-design=attendance]{background:var(--color-ice);border:4px solid var(--color-teal);box-shadow:inset 0 0 0 5px var(--color-ice), inset 0 0 0 6px var(--color-gold)}.certificate-preview[data-design=appreciation]{background:var(--color-pearl);border:12px solid var(--color-navy);box-shadow:inset 0 0 0 3px var(--color-gold), inset 0 0 0 8px var(--color-pearl), inset 0 0 0 9px var(--color-teal)}.certificate-preview[data-orientation=portrait]{aspect-ratio:1/1.414}.certificate-block{text-align:var(--block-align);inset-inline-start:calc(var(--block-x) * 1%);top:calc(var(--block-y) * 1%);width:calc(var(--block-width) * 1%);position:absolute}.certificate-block--title{font-family:var(--font-display)}@media (hover:hover) and (pointer:fine){.registry-button:hover{transform:translateY(-1px)}.registry-input:hover,.registry-select:hover,.registry-textarea:hover{background:var(--color-ice)}}@media (min-width:60rem){.registry-grid--sidebar{grid-template-columns:14rem minmax(0,1fr)}.registry-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.registry-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:39.99rem){.registry-table thead{display:none}.registry-table,.registry-table tbody,.registry-table tr,.registry-table td{width:100%;display:block}.registry-table tr{border-block-end:1px solid var(--color-line);padding-block:.5rem}.registry-table td{border:0;padding:.35rem .75rem}.registry-table td:before{color:var(--color-steel-text);content:attr(data-label);font-size:var(--text-xs);font-weight:700;display:block}}
