:root{color:#17272d;font-synthesis:none;text-rendering:optimizelegibility;--color-brand:#163d4c;--color-brand-soft:#dcebed;--color-accent:#b65f40;--color-surface:#fff;--color-border:#cdd9d9;--color-muted:#53666c;--shadow:0 18px 45px #1b373e17;background:#f4f7f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}a{color:inherit}button,input,select,textarea{font:inherit}:focus-visible{outline-offset:3px;outline:3px solid #d17553}.skip-link{z-index:100;background:#fff;border-radius:.5rem;padding:.75rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.app-shell{min-height:100vh}.review-banner{color:#4c2d05;text-align:center;letter-spacing:.03em;background:#ffe4a3;padding:.45rem 1rem;font-size:.82rem;font-weight:750}.app-header{color:#fff;background:var(--color-brand);align-items:center;gap:2rem;min-height:4.5rem;padding:.75rem clamp(1rem,4vw,3.5rem);display:flex}.brand{letter-spacing:-.02em;font-size:1.35rem;font-weight:760;text-decoration:none}.app-header nav{flex:1;gap:.35rem;display:flex}.app-header nav a{color:#dce9eb;border-radius:.5rem;padding:.6rem .8rem;text-decoration:none}.app-header nav a:hover,.app-header nav a.active{color:#fff;background:#ffffff1f}.identity{text-overflow:ellipsis;white-space:nowrap;color:#dce9eb;max-width:15rem;font-size:.9rem;overflow:hidden}.app-main{width:min(1180px,100% - 2rem);margin:0 auto;padding:clamp(2rem,5vw,4.5rem) 0}.page-stack{gap:2rem;display:grid}.eyebrow{color:var(--color-accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .6rem;font-size:.78rem;font-weight:750}h1{max-width:18ch;color:var(--color-brand);letter-spacing:-.045em;margin:0;font-size:clamp(2rem,5vw,4rem);line-height:1.02}h2{color:var(--color-brand);margin:0 0 .5rem;font-size:1.15rem}p{line-height:1.6}.lede{max-width:62ch;color:var(--color-muted);font-size:1.12rem}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.feature-card,.empty-state,.status-card{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow);border-radius:1rem;padding:1.5rem}.feature-card p,.empty-state p{color:var(--color-muted);margin-bottom:0}.empty-state{background:linear-gradient(135deg, white, var(--color-brand-soft));align-content:center;justify-items:start;min-height:13rem;display:grid}.status-page{place-items:center;min-height:100vh;padding:1rem;display:grid}.status-card{width:min(34rem,100%)}.status-card h1{font-size:clamp(1.8rem,5vw,2.8rem)}.support-code{color:var(--color-muted);font-family:ui-monospace,monospace;font-size:.85rem}.workspace-list{gap:.75rem;margin-top:1.5rem;display:grid}.workspace-list button{text-align:left;width:100%;color:var(--color-brand);border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:.75rem;gap:.25rem;padding:1rem;display:grid}.workspace-list button:hover:not(:disabled){border-color:var(--color-brand);background:var(--color-brand-soft)}.workspace-list button:disabled{cursor:wait;opacity:.7}.workspace-list button span:first-child{font-weight:750}.workspace-list small{color:var(--color-muted)}.page-heading{justify-content:space-between;align-items:end;gap:2rem;display:flex}.directory-search{width:min(27rem,100%);color:var(--color-muted);gap:.45rem;font-size:.82rem;font-weight:700;display:grid}.directory-search input{width:100%;color:var(--color-brand);border:1px solid var(--color-border);background:#fff;border-radius:.65rem;padding:.8rem 1rem}.result-count{color:var(--color-muted);margin:-1rem 0 0;font-size:.9rem}.directory-list{gap:1.25rem;display:grid}.directory-card{border:1px solid var(--color-border);box-shadow:var(--shadow);background:#fff;border-radius:1rem;padding:clamp(1.25rem,3vw,2rem)}.directory-card>header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.directory-card h2{font-size:1.45rem}.record-reference{color:var(--color-muted);margin:0 0 .3rem;font-family:ui-monospace,monospace;font-size:.8rem}.status-pill{text-transform:capitalize;border-radius:999px;padding:.3rem .6rem;font-size:.75rem;font-weight:750}.status-active{color:#174d38;background:#d9f1e5}.status-inactive{color:#65351f;background:#f7ded1}.directory-summary{border-block:1px solid var(--color-border);grid-template-columns:repeat(4,minmax(0,1fr));margin:1.5rem 0;display:grid}.directory-summary div{border-right:1px solid var(--color-border);padding:1rem}.directory-summary div:last-child{border-right:0}.directory-summary dt{color:var(--color-muted);font-size:.78rem}.directory-summary dd{color:var(--color-brand);margin:.2rem 0 0;font-size:1.35rem;font-weight:750}.relationship-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;display:grid}.relationship-grid h3{color:var(--color-muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .75rem;font-size:.78rem}.relationship-item{border-top:1px solid #e5ecec;gap:.18rem;padding:.65rem 0;display:grid}.relationship-item strong{color:var(--color-brand);font-size:.92rem}.relationship-item span{color:var(--color-muted);font-size:.82rem;line-height:1.45}.workspace-link{color:var(--color-accent);margin-top:1.25rem;font-weight:750;display:inline-block}.back-link{width:fit-content;color:var(--color-muted);font-weight:700;text-decoration:none}.back-link:hover{color:var(--color-brand);text-decoration:underline}.workspace-heading{justify-content:space-between;align-items:start;gap:2rem;display:flex}.workspace-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.workspace-panel{border:1px solid var(--color-border);box-shadow:var(--shadow);background:#fff;border-radius:1rem;padding:1.5rem}.workspace-panel>h2{border-bottom:1px solid var(--color-border);padding-bottom:.75rem}.workspace-panel-muted{background:linear-gradient(135deg, white, var(--color-brand-soft))}.workspace-record{border-bottom:1px solid #e5ecec;justify-content:space-between;align-items:start;gap:1rem;padding:1rem 0;display:flex}.workspace-record:last-child{border-bottom:0;padding-bottom:0}.workspace-record h3{color:var(--color-brand);margin:0;font-size:1rem}.workspace-record p,.workspace-record span,.record-note{color:var(--color-muted);margin:.25rem 0 0;font-size:.85rem;line-height:1.5}.workspace-record>span{text-align:right;max-width:45%}.record-actions{max-width:48%;color:var(--color-muted);text-align:right;justify-items:end;gap:.4rem;font-size:.85rem;display:grid}.record-actions a{color:var(--color-accent);font-weight:750}.protocol-notice{color:#4c2d05;background:#fff2cc;border:1px solid #e4c77a;border-radius:.75rem;padding:.85rem 1rem;font-weight:650}.panel-heading{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1rem;display:flex}.panel-heading h2{margin-bottom:0}.panel-heading>strong{color:var(--color-muted);font-size:.85rem}.step-label{color:var(--color-accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .25rem;font-size:.72rem;font-weight:800}.source-document-list,.source-block-list,.protocol-review-stack,.timeline-list{gap:1rem;display:grid}.source-document{border:1px solid #e2eaea;border-radius:.75rem;justify-content:space-between;gap:1rem;padding:1rem;display:flex}.source-document h3,.candidate-card h3,.timeline-item h3{color:var(--color-brand);margin:0;font-size:1rem}.source-document p{color:var(--color-muted);overflow-wrap:anywhere;margin:.3rem 0 0;font-size:.78rem}.source-metadata{justify-items:end;gap:.45rem;display:grid}.source-metadata code,.source-block code{color:var(--color-muted);font-size:.72rem}.blocker-callout{color:#65351f;background:#fff0e8;border:1px solid #e8bca8;border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:1rem;display:flex}.blocker-callout p{margin:.25rem 0 0;font-size:.85rem}.blocker-callout button,.primary-action{color:#fff;background:var(--color-brand);cursor:pointer;border:0;border-radius:.55rem;padding:.7rem .9rem;font-weight:750}.primary-action{margin-top:1rem}.primary-action:disabled{cursor:not-allowed;opacity:.5}.neutral-callout{color:var(--color-brand);background:var(--color-brand-soft);border-color:var(--color-border)}.source-block{border-left:4px solid var(--color-brand);background:#f8faf9;border-radius:0 .65rem .65rem 0;padding:1rem}.source-block p{margin:0}.source-block footer,.candidate-card footer{color:var(--color-muted);justify-content:space-between;gap:1rem;margin-top:.75rem;font-size:.76rem;display:flex}.source-correction{border-top:1px solid var(--color-border);gap:.6rem;margin-top:1rem;padding-top:1rem;display:grid}.source-correction label{color:var(--color-muted);gap:.3rem;font-size:.78rem;font-weight:700;display:grid}.source-correction textarea{min-height:4.5rem;color:var(--color-brand);border:1px solid var(--color-border);resize:vertical;background:#fff;border-radius:.5rem;padding:.65rem}.source-correction button{width:fit-content;color:var(--color-brand);border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:.45rem;padding:.5rem .7rem;font-weight:700}.source-correction button:disabled{cursor:not-allowed;opacity:.45}.source-correction>span{color:#174d38;font-size:.78rem;font-weight:700}.candidate-card{border:1px solid #e2eaea;border-radius:.75rem;padding:1rem}.candidate-card header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.candidate-card>p{color:var(--color-muted)}.candidate-card a,.timeline-item a{color:var(--color-accent);font-weight:700}.timeline-item{border-bottom:1px solid #e2eaea;grid-template-columns:5rem 1fr;align-items:start;gap:1rem;padding:1rem 0;display:grid}.timeline-item:last-child{border-bottom:0}.timeline-days{color:var(--color-brand);align-items:baseline;gap:.3rem;display:flex}.timeline-days span{color:var(--color-muted);font-size:.7rem}.review-actions{border:1px solid var(--color-border);background:#f8faf9;border-radius:.75rem;gap:.75rem;margin:1rem 0;padding:1rem;display:grid}.review-actions legend{color:var(--color-brand);text-transform:capitalize;padding:0 .35rem;font-size:.8rem;font-weight:800}.review-actions label{color:var(--color-muted);gap:.3rem;font-size:.78rem;font-weight:700;display:grid}.review-actions textarea,.review-actions input{width:100%;color:var(--color-brand);border:1px solid var(--color-border);background:#fff;border-radius:.5rem;padding:.65rem}.review-actions textarea{resize:vertical;min-height:5rem}.review-actions>div{flex-wrap:wrap;gap:.5rem;display:flex}.review-actions button{color:var(--color-brand);border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:.45rem;padding:.5rem .7rem;font-weight:700}.review-actions button:hover:not(:disabled){background:var(--color-brand-soft);border-color:var(--color-brand)}.review-actions button:disabled{cursor:not-allowed;opacity:.45}.assembly-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.assembled-preview{color:#174d38;background:#e6f5ed;border:1px solid #a7d5bd;border-radius:.75rem;margin-top:1rem;padding:1rem}.assembled-preview p{margin:.25rem 0 .75rem}.assembled-preview pre{max-height:24rem;color:var(--color-brand);background:#fff;border-radius:.5rem;margin:0;padding:1rem;font-size:.72rem;overflow:auto}@media (width<=760px){.app-header{flex-wrap:wrap;align-items:flex-start;gap:.6rem 1rem}.app-header nav{flex-basis:100%;order:3;overflow-x:auto}.identity{margin-left:auto}.card-grid{grid-template-columns:1fr}.page-heading{flex-direction:column;align-items:stretch}.directory-summary{grid-template-columns:repeat(2,1fr)}.directory-summary div:nth-child(2){border-right:0}.directory-summary div:nth-child(-n+2){border-bottom:1px solid var(--color-border)}.relationship-grid{grid-template-columns:1fr}.workspace-heading{flex-direction:column;gap:1rem}.workspace-sections{grid-template-columns:1fr}.workspace-record{flex-direction:column}.workspace-record>span{text-align:left;max-width:none}.record-actions{text-align:left;justify-items:start;max-width:none}.source-document,.blocker-callout{flex-direction:column;align-items:flex-start}.source-metadata{justify-items:start}.timeline-item{grid-template-columns:1fr}.assembly-actions{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
