:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color-scheme:light;--bg: #f8fafc;--surface: #ffffff;--surface-2: #ecfdf5;--surface-3: #f1f5f9;--text: #12302f;--muted: #5b677a;--line: #cfe4df;--brand: #0f766e;--brand-strong: #115e59;--accent: #ea580c;--accent-soft: #ffedd5;--info-soft: #ccfbf1;--danger: #b42318;--warning: #9a3412;--success: #166534;--shadow: 0 18px 50px rgba(15, 118, 110, .1);--radius: 18px}:root[data-theme=dark]{color-scheme:dark;--bg: #07101f;--surface: #0f1d33;--surface-2: #122641;--surface-3: #162238;--text: #f5f8ff;--muted: #afbdd0;--line: #2a3c57;--brand: #5eead4;--brand-strong: #99f6e4;--accent: #fb923c;--accent-soft: #4b2a18;--info-soft: #123a38;--danger: #fda29b;--warning: #fdba74;--success: #86efac;--shadow: 0 22px 60px rgba(0, 0, 0, .34)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);line-height:1.62}button,input,select{font:inherit}a{color:var(--brand);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent)}img,svg{max-width:100%}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.skip-link{position:fixed;top:8px;left:8px;z-index:1000;transform:translateY(-150%);background:var(--surface);color:var(--text);padding:10px 14px;border-radius:8px;box-shadow:var(--shadow)}.skip-link:focus{transform:none}.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}.container{width:min(1180px,calc(100% - 32px));margin-inline:auto}.narrow{width:min(800px,calc(100% - 32px));margin-inline:auto}.section{padding-block:66px}.section-sub{margin-top:34px}.section-muted{background:var(--surface-2);border-block:1px solid var(--line)}.muted,.microcopy,.result-count{color:var(--muted)}.site-header{position:sticky;top:0;z-index:100;border-bottom:1px solid color-mix(in srgb,var(--line) 85%,transparent);background:color-mix(in srgb,var(--bg) 91%,transparent);backdrop-filter:blur(16px)}.header-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-weight:850;font-size:1.06rem;letter-spacing:-.025em}.brand-mark{width:39px;height:39px;display:grid;place-items:center;background:var(--brand);color:#fff;border-radius:11px;font-size:.72rem}.main-nav{display:flex;align-items:center;gap:21px}.main-nav a{color:var(--muted);text-decoration:none;font-weight:680}.main-nav a.active,.main-nav a:hover{color:var(--text)}.header-actions{display:flex;align-items:center;gap:8px}.icon-button{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:11px;cursor:pointer}.icon-button:hover{border-color:var(--brand);background:var(--surface-2)}.menu-button{display:none}.hero{position:relative;overflow:hidden;padding:88px 0 76px;background:radial-gradient(circle at 80% 10%,color-mix(in srgb,var(--info-soft) 82%,transparent),transparent 35%),linear-gradient(180deg,var(--surface),var(--bg));border-bottom:1px solid var(--line)}.hero:after{content:"";position:absolute;right:-100px;bottom:-180px;width:440px;height:440px;border-radius:50%;background:color-mix(in srgb,var(--accent-soft) 58%,transparent);filter:blur(8px);pointer-events:none}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.35fr .75fr;gap:70px;align-items:center}.eyebrow{display:inline-flex;color:var(--brand);font-weight:800;letter-spacing:.075em;text-transform:uppercase;font-size:.78rem}.hero h1,.page-heading h1,.record-heading h1,.prose-page h1{letter-spacing:-.045em;line-height:1.06}.hero h1{max-width:790px;font-size:clamp(2.7rem,6vw,5.2rem);margin:14px 0 22px}.hero-copy{max-width:760px;color:var(--muted);font-size:clamp(1.05rem,2vw,1.22rem)}.microcopy{font-size:.84rem;margin:12px 0 0}.hero-panel{display:grid;gap:12px;padding:22px;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:var(--shadow)}.hero-stat{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:start;padding:15px;border-radius:14px;background:var(--surface-2)}.hero-stat svg{color:var(--brand);margin-top:2px}.hero-stat span{display:grid;color:var(--muted);font-size:.9rem}.hero-stat strong{color:var(--text);font-size:.97rem}.search-box{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:8px 8px 8px 15px;box-shadow:var(--shadow);max-width:820px}.search-box>svg{color:var(--muted);flex:0 0 auto}.search-box input{min-width:0;flex:1;border:0;outline:0;color:var(--text);background:transparent;padding:11px 2px}.search-box button,.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:1px solid var(--brand);background:var(--brand);color:#fff;text-decoration:none;font-weight:760;padding:10px 17px;border-radius:10px;cursor:pointer}.search-box button:hover,.button:hover{background:var(--brand-strong);color:#fff}.button-secondary{background:var(--surface);color:var(--brand)}.button-secondary:hover{background:var(--surface-2);color:var(--brand-strong)}.button-row{display:flex;flex-wrap:wrap;gap:10px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}.section-heading h2{font-size:clamp(1.85rem,4vw,2.65rem);margin:6px 0 0;letter-spacing:-.035em;line-height:1.15}.section-heading>a{display:inline-flex;align-items:center;gap:6px;font-weight:720}.class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.class-card{display:flex;flex-direction:column;padding:24px;min-height:245px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.class-card:hover,.specialty-card:hover,.recall-card:hover{transform:translateY(-3px);border-color:var(--brand);box-shadow:var(--shadow);color:var(--text)}.class-card>span{display:inline-grid;place-items:center;width:70px;height:70px;border-radius:18px;background:var(--info-soft);color:var(--brand-strong);font-weight:850;font-size:1.25rem}.class-card p{color:var(--muted);flex:1}.class-card strong{display:inline-flex;align-items:center;gap:6px;color:var(--brand)}.specialty-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.specialty-grid-full{grid-template-columns:repeat(3,1fr)}.specialty-card{display:block;padding:21px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.specialty-card h2,.specialty-card h3{margin:11px 0 8px;font-size:1.04rem;line-height:1.3}.specialty-card p{color:var(--muted);font-size:.88rem;margin-bottom:0}.panel-code{display:inline-flex;padding:4px 8px;background:var(--accent-soft);color:var(--warning);border-radius:999px;font-weight:850;font-size:.75rem}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-grid article{padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.feature-grid svg{color:var(--brand)}.feature-grid h3{margin:13px 0 8px}.feature-grid p{color:var(--muted);margin-bottom:0}.page-heading{margin-bottom:32px;max-width:900px}.page-heading h1{font-size:clamp(2.2rem,5vw,4rem);margin:12px 0 14px}.page-heading p{color:var(--muted);font-size:1.08rem;max-width:800px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:5px;list-style:none;padding:0;margin:0 0 25px;color:var(--muted);font-size:.84rem}.breadcrumbs li{display:inline-flex;align-items:center;gap:5px}.breadcrumbs a{color:var(--muted)}.record-heading{display:flex;justify-content:space-between;align-items:start;gap:30px;margin-bottom:28px}.record-heading h1{font-size:clamp(2rem,5vw,3.65rem);margin:10px 0}.record-heading p{color:var(--muted);font-size:1.05rem}.notice{display:flex;gap:12px;padding:17px;border:1px solid color-mix(in srgb,var(--brand) 38%,var(--line));border-radius:14px;background:var(--info-soft);margin:0 0 24px}.notice-warning{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:var(--accent-soft)}.notice svg{flex:0 0 auto;margin-top:2px;color:var(--brand)}.notice-warning svg{color:var(--warning)}.notice p{margin:2px 0 0;color:var(--muted)}.filter-panel{display:grid;grid-template-columns:1.5fr repeat(3,.7fr);gap:12px;padding:18px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);margin-bottom:22px}.filter-panel label,.directory-search label{display:grid;gap:6px;color:var(--muted);font-size:.84rem;font-weight:750}.filter-panel input,.filter-panel select,.directory-search input{width:100%;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:10px;padding:12px 13px}.directory-search{display:grid;grid-template-columns:minmax(250px,1fr) auto;align-items:end;gap:12px;max-width:780px;padding:18px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);margin-bottom:24px}.result-line{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:22px 0 16px;color:var(--muted)}.result-line strong{color:var(--text)}.recall-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.search-grid{margin-top:28px}.recall-card{display:flex;flex-direction:column;padding:21px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:330px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.recall-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;color:var(--muted);font-size:.78rem}.status-badge{display:inline-flex;width:fit-content;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface-3);color:var(--text);font-size:.76rem;font-weight:800}.status-ongoing{color:var(--warning);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.status-completed,.status-terminated{color:var(--success);background:color-mix(in srgb,#dcfce7 75%,var(--surface));border-color:color-mix(in srgb,var(--success) 35%,var(--line))}.recall-card h3{font-size:1.05rem;line-height:1.4;margin:18px 0 7px}.recall-firm{color:var(--muted);font-size:.9rem;margin:0 0 16px}.recall-card dl{display:grid;gap:8px;margin:0 0 18px}.recall-card dl div{display:grid;grid-template-columns:100px 1fr;gap:9px}.recall-card dt{color:var(--muted);font-size:.78rem}.recall-card dd{margin:0;font-size:.82rem;font-weight:700;word-break:break-word}.recall-card>a{display:inline-flex;align-items:center;gap:6px;margin-top:auto;font-weight:740}.preview-label{margin-top:auto;color:var(--warning);font-weight:750;font-size:.82rem}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric-card,.summary-card,.source-box,.contact-card,.classification-card{padding:23px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.metric-card{display:flex;flex-direction:column}.metric-card-heading{display:flex;justify-content:space-between;gap:12px;align-items:start}.metric-card-heading>div{display:grid}.metric-card-heading span{color:var(--muted);font-size:.84rem}.metric-card-heading strong{font-size:1.3rem;margin-top:5px;word-break:break-word}.metric-card-heading svg{color:var(--brand)}.metric-card p{color:var(--muted);font-size:.82rem;margin-bottom:0}.two-column{display:grid;grid-template-columns:1.35fr .8fr;gap:20px;align-items:start}.summary-card h2{margin-top:0}.summary-card>p,.source-box p,.classification-card p{color:var(--muted)}.summary-card dl{display:grid;gap:11px;margin:0}.summary-card dl>div:not(.detail-field){background:var(--surface-2);border-radius:10px;padding:12px}.summary-card dt{color:var(--muted);font-size:.79rem}.summary-card dd{margin:2px 0 0;font-weight:700}.detail-list{gap:0!important}.detail-field{padding:14px 0;border-top:1px solid var(--line)}.detail-field:first-child{border-top:0;padding-top:0}.detail-field dd{white-space:pre-wrap;color:var(--text);font-weight:500}.classification-card{margin-bottom:24px}.classification-card dl{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.classification-card dl div{padding:12px;background:var(--surface-2);border-radius:10px}.classification-card dt{color:var(--muted);font-size:.78rem}.classification-card dd{margin:2px 0 0;font-weight:750}.classification-card a,.source-box a{display:inline-flex;align-items:center;gap:5px;font-weight:720}.directory-list{display:grid;gap:9px}.directory-list>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:15px;border:1px solid var(--line);background:var(--surface);border-radius:13px;color:var(--text);text-decoration:none}.directory-list>a:hover{border-color:var(--brand)}.directory-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:var(--info-soft);color:var(--brand)}.directory-list span:nth-child(2){display:grid}.directory-list small{color:var(--muted)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}table{width:100%;border-collapse:collapse;min-width:720px}th,td{padding:14px 16px;text-align:left;border-top:1px solid var(--line);vertical-align:top}th{font-size:.84rem}td{color:var(--muted)}.empty-state,.loading-card,.error-card{padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--muted)}.loading-card{display:flex;align-items:center;gap:12px}.spinner{width:21px;height:21px;border:3px solid var(--line);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-card h1,.error-card h2{color:var(--text)}.not-found{max-width:760px;margin:30px auto;text-align:center}.not-found .button-row{justify-content:center}.content-section{margin-top:42px;max-width:920px}.content-section p,.content-section li{color:var(--muted)}.content-section ol,.content-section ul{padding-left:22px}.source-box{margin-top:30px}.faq-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:22px;margin-top:28px}.faq-card h2{margin-top:0}.faq-card details{border-top:1px solid var(--line);padding:14px 0}.faq-card summary{cursor:pointer;font-weight:760}.faq-card p{margin-bottom:0;color:var(--muted)}.prose-page{font-size:1.04rem}.prose-page .lead{color:var(--muted);font-size:1.12rem}.prose-page p,.prose-page li{color:var(--muted)}.prose-page h1{font-size:clamp(2.2rem,5vw,3.9rem)}.prose-page h2{margin-top:40px;letter-spacing:-.02em}.prose-page ul{padding-left:22px}.contact-card{margin-top:30px}code{background:var(--surface-2);border-radius:6px;padding:2px 5px}.ad-slot{min-height:100px;margin:30px auto;width:min(1180px,calc(100% - 32px));border:1px dashed var(--line);display:grid;place-items:center;color:var(--muted);border-radius:12px}.site-footer{margin-top:72px;padding:56px 0 28px;background:var(--surface);border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:50px}.footer-grid p{color:var(--muted);max-width:500px}.footer-grid h2{font-size:.88rem;letter-spacing:.065em;text-transform:uppercase}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;align-items:start;gap:7px}.footer-grid a{color:var(--muted);text-decoration:none}.footer-grid a:hover{color:var(--text)}.footer-brand{margin-bottom:12px}.source-footnote{font-size:.82rem}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:38px;padding-top:20px;color:var(--muted);font-size:.8rem}@media (max-width: 1040px){.hero-grid,.two-column{grid-template-columns:1fr}.class-grid,.recall-grid,.specialty-grid,.specialty-grid-full,.metric-grid,.filter-panel{grid-template-columns:repeat(2,1fr)}.main-nav{position:absolute;top:72px;left:16px;right:16px;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.main-nav.is-open{display:flex}.main-nav a{padding:12px;border-radius:9px}.main-nav a:hover{background:var(--surface-2)}.menu-button{display:inline-grid}.feature-grid{grid-template-columns:1fr}.classification-card dl{grid-template-columns:repeat(2,1fr)}}@media (max-width: 700px){.container,.narrow{width:min(100% - 22px,1180px)}.section{padding-block:46px}.hero{padding:58px 0 50px}.hero-grid{gap:34px}.hero h1{font-size:clamp(2.4rem,13vw,4.1rem)}.search-box{align-items:stretch;flex-wrap:wrap}.search-box input{flex-basis:calc(100% - 38px)}.search-box button{width:100%}.class-grid,.specialty-grid,.specialty-grid-full,.recall-grid,.metric-grid{grid-template-columns:1fr}.section-heading,.record-heading{align-items:start;flex-direction:column}.filter-panel,.directory-search{grid-template-columns:1fr}.directory-search .button{width:100%}.classification-card dl{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-bottom,.result-line{flex-direction:column;align-items:start}.recall-card dl div{grid-template-columns:90px 1fr}.brand span:last-child{font-size:.91rem}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.active-filter{margin:-4px 0 18px;padding:11px 14px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--muted)}.active-filter strong{color:var(--text)}.recall-card-with-image{overflow:hidden;padding-top:0}.recall-thumb{width:calc(100% + 42px);height:168px;margin:0 -21px 18px;object-fit:cover;background:var(--surface-3);border-bottom:1px solid var(--line)}.recall-card dt{display:inline-flex;align-items:center;gap:5px}.recall-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:30px 0}.recall-gallery figure{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.recall-gallery img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:contain;background:#fff}.recall-gallery figcaption{padding:11px 13px;color:var(--muted);font-size:.82rem}.filter-panel .button{align-self:end}.class-card h3{margin:18px 0 8px;font-size:1.16rem}.class-card>span svg{width:32px;height:32px}.summary-card dd{overflow-wrap:anywhere}.detail-field dd{line-height:1.7}@media (max-width: 900px){.recall-gallery{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.recall-gallery{grid-template-columns:1fr}}
