/* All application additions are namespaced to preserve the research site's CSS. */
:root{--na-ink:#192c3c;--na-muted:#5b6872;--na-border:#d9e0e3;--na-paper:#f4f5f3;--na-accent:#155d67;--na-gold:#936e22}
.na-page{margin:0;background:var(--na-paper);color:var(--na-ink);font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.na-page *,.na-toolbar *,.na-dialog *{box-sizing:border-box}
.na-page h1{font-size:clamp(26px,3vw,36px);line-height:1.15;letter-spacing:-.8px;margin:8px 0 12px;font-weight:650}
.na-page h2{font-size:20px;line-height:1.25;margin:0 0 6px}.na-page p{margin:0 0 14px}
.na-eyebrow{font-size:10px;letter-spacing:1.9px;font-weight:750;line-height:1.5;margin:0 0 9px!important;color:var(--na-accent)}
.na-muted{color:var(--na-muted);font-size:13px}.na-footnote{font-size:12px;line-height:1.55;color:var(--na-muted);margin:16px 0 0}.na-text-link{color:var(--na-accent);text-decoration:underline;background:none;border:none;cursor:pointer;padding:0;font:inherit;font-size:12px}
.na-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border:1px solid var(--na-border);border-radius:6px;padding:8px 15px;background:white;color:var(--na-ink);font:600 13px/1.25 system-ui,sans-serif;text-decoration:none;cursor:pointer;white-space:nowrap}.na-button:hover{background:#edf2f1;border-color:#adc0c2}.na-primary{background:var(--na-accent);color:#fff;border-color:var(--na-accent)}.na-primary:hover{background:#114c54;color:white}.na-small{padding:7px 10px;min-height:33px;font-size:12px}
.na-button:focus-visible,.na-page input:focus-visible,.na-page select:focus-visible,.na-page summary:focus-visible{outline:3px solid #84b6ba;outline-offset:3px}
.na-badge{display:inline-flex;border:1px solid #cbdadf;border-radius:20px;padding:3px 9px;background:#f0f5f6;font-size:11px;font-weight:700;white-space:nowrap;color:var(--na-ink)}.na-owner{background:#fff5dc;border-color:#e8d5a2;color:#765516}
.na-toolbar{position:relative;background:#fff;color:var(--na-ink);border-bottom:1px solid var(--na-border);font:13px/1.5 system-ui,sans-serif;z-index:5}.na-toolbar-inner{max-width:1400px;margin:auto;padding:13px 28px;display:flex;align-items:center;justify-content:space-between;gap:15px}.na-identity{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.na-identity .na-eyebrow{margin:0!important;font-size:9px}.na-account-expiry{font-size:12px;color:var(--na-muted)}.na-toolbar-actions{display:flex;gap:8px}.na-toolbar form{margin:0}
.na-dialog{border:1px solid var(--na-border);border-radius:12px;padding:0;width:min(1330px,95vw);max-width:95vw;height:91vh;max-height:94vh;box-shadow:0 24px 100px #001b3355;overflow:hidden;background:var(--na-paper)}.na-dialog::backdrop{background:#11263499}.na-dialog-top{height:58px;display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background:white;border-bottom:1px solid var(--na-border);font:14px/1.5 system-ui,sans-serif}.na-dialog iframe{display:block;border:0;width:100%;height:calc(100% - 58px)}
.na-admin-shell{max-width:1320px;margin:0 auto;padding:34px 30px 28px}.na-embedded .na-admin-shell{padding:26px}.na-admin-header{display:flex;justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:23px}.na-admin-identity{display:flex;flex-direction:column;align-items:flex-end;gap:7px;padding-top:8px}.na-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.na-stats>div{background:#fff;border:1px solid var(--na-border);border-radius:9px;padding:16px 20px}.na-stats strong{display:block;font-size:30px;font-weight:600;line-height:1.1}.na-stats span{font-size:12px;color:var(--na-muted)}
.na-lock-banner{display:flex;gap:18px;align-items:flex-start;background:#fcf7ea;border:1px solid #e9dfc2;border-left:4px solid #b18b3c;border-radius:6px;padding:15px 19px;margin-bottom:21px}.na-lock-banner strong{flex:0 0 255px;font-size:12px;line-height:1.6}.na-lock-banner span{font-size:12px;color:#675c42;line-height:1.6}
.na-panel{background:#fff;border:1px solid var(--na-border);border-radius:10px;margin-bottom:20px;padding:22px 24px}.na-section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px}.na-section-heading p{margin:0}.na-table-scroll{overflow-x:auto}.na-page table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}.na-page th{font-size:10px;text-transform:uppercase;letter-spacing:1.05px;white-space:nowrap;font-weight:750;color:#65737e;background:#f5f7f7;padding:11px 12px;border-bottom:1px solid var(--na-border)}.na-page td{padding:17px 12px;vertical-align:top;border-bottom:1px solid #e9edee;line-height:1.55}.na-page td small{display:block;font-size:10px;color:var(--na-muted);margin-top:4px}.na-page td>span:not(.na-status,.na-badge,.na-locked){display:block}.na-page td time{font-size:11px;display:inline-block;max-width:165px}.na-users-table{min-width:850px}.na-users-table td:first-child{min-width:128px}.na-users-table tr:last-child td{border-bottom:0}.na-owner-row{background:#fffdf6}.na-status{font-size:10px;letter-spacing:.4px;font-weight:700;border-radius:20px;padding:4px 9px;display:inline-block}.na-status-active{background:#e7f2eb;color:#225a3e}.na-status-expired{background:#fcf0dd;color:#845a15}.na-status-revoked{background:#f8e8e7;color:#963e3c}.na-locked{font-size:11px;font-weight:700;color:#826729}.na-table-note{margin-top:14px}
.na-form{display:flex;flex-direction:column;gap:18px}.na-form label{display:flex;flex-direction:column;gap:7px;font-weight:600;font-size:12px;color:var(--na-ink)}.na-form input:not([type=checkbox]),.na-form select{height:42px;min-width:0;width:100%;padding:9px 11px;border:1px solid #cad5d9;border-radius:5px;background:#fff;color:var(--na-ink);font:14px/1.4 system-ui,sans-serif}.na-form label small{font-weight:400;font-size:11px;color:var(--na-muted)}.na-form label .na-text-link{align-self:flex-start;font-weight:400;font-size:11px}.na-create-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px 16px}.na-form .na-check{display:flex;flex-direction:row;align-items:center;grid-column:1/-1;gap:8px;font-size:12px}.na-check input{width:16px;height:16px;accent-color:var(--na-accent)}.na-form-actions{display:flex;grid-column:1/-1;align-items:center;gap:18px}.na-form-actions .na-footnote{margin:0;max-width:650px}.na-editor summary,.na-audit summary{cursor:pointer;font-weight:650;font-size:14px}.na-editor[open] summary,.na-audit[open] summary{margin-bottom:20px}.na-editor:target{border-color:var(--na-accent)}
.na-message{border-radius:6px;padding:12px 16px;font-size:13px}.na-error{background:#fceeed;border:1px solid #ecc3bf;color:#8b3831}.na-success{background:#eaf4ed;border:1px solid #c2dacb;color:#29543a}.na-login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px;background:radial-gradient(ellipse at 20% 10%,#edf3f0 0,transparent 60%),#f3f3ee}.na-login-card{width:450px;max-width:100%;background:#fff;padding:42px;border:1px solid var(--na-border);border-radius:14px;box-shadow:0 20px 55px #1632340d}.na-login-card .na-form{margin-top:28px}.na-login-card .na-primary{margin-top:5px;min-height:44px}.na-login-card .na-footnote{margin-top:24px}
@media(max-width:820px){.na-toolbar-inner{padding:12px 16px;align-items:flex-start}.na-identity{gap:6px}.na-account-expiry{width:100%}.na-admin-shell,.na-embedded .na-admin-shell{padding:20px 14px}.na-admin-header{gap:12px}.na-admin-identity{max-width:150px}.na-stats{gap:8px}.na-stats>div{padding:13px}.na-lock-banner{display:block}.na-lock-banner strong{display:block;margin-bottom:5px}.na-panel{padding:18px 16px}.na-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.na-form-actions{align-items:flex-start}.na-dialog{width:98vw;max-width:98vw;height:96vh;max-height:96vh}}
@media(max-width:500px){.na-admin-header{display:block}.na-admin-identity{align-items:flex-start;flex-direction:row;max-width:none;flex-wrap:wrap}.na-create-form{grid-template-columns:1fr}.na-form-actions{flex-direction:column}.na-login-card{padding:28px}.na-lock-banner{padding:13px}.na-toolbar-inner{flex-wrap:wrap}.na-toolbar-actions{margin-left:auto}.na-stats strong{font-size:25px}.na-stats span{font-size:10px}}
