/* Catalyst Deal Room */
.dr { background: var(--paper); }
.dr .masthead { position: static; }
.dr-nav { display: flex; align-items: center; gap: 1.1rem; font-family: var(--mono); font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; color: #cfd2d4; }
.dr-nav a { color: #fff; } .dr-nav span { color: var(--mist); text-transform: none; letter-spacing: 0; font-family: var(--body); font-size: 0.95rem; }
.dr-nav form { margin: 0; } .dr-nav button { background: none; border: 1px solid #4a5258; color: #fff; font: inherit; padding: 0.35rem 0.7rem; border-radius: 4px; cursor: pointer; }
.dr-main { padding: clamp(1.5rem, 4vw, 3rem) 0 4rem; min-height: 60vh; }
.dr-main .shell { max-width: 1100px; }
.dr-card { background: var(--white); border: 1px solid var(--line); border-radius: 8px; padding: clamp(1.1rem, 3vw, 2rem); margin: 0 0 1.25rem; }
.dr-card h2 { font-family: var(--display); font-size: 1.35rem; margin: 0 0 0.6rem; }
.dr-card h3 { font-family: var(--display); font-size: 1rem; margin: 0 0 0.4rem; }
.dr-lede { color: var(--slate); margin: 0 0 1.2rem; }
.dr-fine { font-size: 0.82rem; color: var(--slate); }
.dr-err { color: #9b1c1c; background: #fdecec; border-radius: 4px; padding: 0.6rem 0.8rem; margin-top: 1rem; }
.dr-flash { background: #e9f4ee; border: 1px solid #b8d8c5; color: #1f5137; padding: 0.6rem 0.9rem; border-radius: 6px; }
.dr-msg p { margin: 0; font-size: 1.1rem; }
.dr-hero { margin: 0 0 1.5rem; } .dr-hero h1, .dr-head h1 { font-family: var(--display); font-size: clamp(1.8rem, 4vw, 2.6rem); margin: 0.2rem 0 0.3rem; }
.dr-hero__addr { font-family: var(--mono); font-size: 0.8rem; color: var(--slate); margin: 0; } .dr-hero__desc { max-width: var(--measure); }
.dr-head { margin: 0 0 1rem; } .dr-head p { margin: 0; color: var(--slate); } .dr-head .eyebrow a { color: inherit; }
.dr-signin__grid { display: grid; gap: 2rem; grid-template-columns: 1fr; }
@media (min-width: 800px) { .dr-signin__grid { grid-template-columns: 1fr 1fr; } .dr-signin__grid > div + div { border-left: 1px solid var(--line); padding-left: 2rem; } }
.dr-signin .btn { display: flex; justify-content: center; width: 100%; margin: 0 0 0.6rem; cursor: pointer; }
.dr-btn-alt { background: var(--white); color: var(--ink); border: 1px solid var(--ink); }
.dr-form .field { margin: 0 0 0.9rem; }
.dr-form input, .dr-form select, .dr-form textarea { width: 100%; }
.dr-2col { display: grid; gap: 0 1.2rem; grid-template-columns: 1fr; } @media (min-width: 720px) { .dr-2col { grid-template-columns: 1fr 1fr; } }
.dr-nda__text { max-height: 46vh; overflow: auto; border: 1px solid var(--line); border-radius: 6px; padding: 1rem 1.2rem; background: #fafaf8; margin: 0 0 1.2rem; font-size: 0.95rem; }
.dr-check { display: flex; gap: 0.6rem; align-items: flex-start; margin: 0.4rem 0 1.1rem; } .dr-check input { width: auto; margin-top: 0.3rem; }
.dr-folder { border-top: 1px solid var(--line); padding: 0.7rem 0; } .dr-folder summary { cursor: pointer; font-family: var(--display); font-weight: 600; }
.dr-folder summary span { font-family: var(--mono); font-size: 0.72rem; color: var(--mist); margin-left: 0.4rem; }
.dr-folder ul { list-style: none; margin: 0.5rem 0; padding: 0; }
.dr-folder li { display: flex; gap: 0.8rem; align-items: center; padding: 0.45rem 0; border-bottom: 1px dashed var(--paper-2); flex-wrap: wrap; }
.dr-folder li > a:first-child { flex: 1 1 260px; font-weight: 600; } .dr-folder li span { font-family: var(--mono); font-size: 0.72rem; color: var(--slate); }
.dr-folder li form { margin: 0; } .dr-dl, .dr-folder button, .dr-inline button, .dr-actions button { font-family: var(--mono); font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.06em; }
.dr-inline, .dr-actions { display: flex; flex-wrap: wrap; gap: 0.4rem 0.8rem; align-items: center; margin: 0.4rem 0 0; }
.dr-inline input[name=name] { flex: 1 1 200px; padding: 0.35rem 0.5rem; border: 1px solid var(--line); border-radius: 4px; }
.dr-inline label { font-size: 0.85rem; display: flex; gap: 0.3rem; align-items: center; }
.dr-inline button, .dr-actions button, .dr-folder li button { background: var(--white); border: 1px solid var(--line); border-radius: 4px; padding: 0.3rem 0.6rem; cursor: pointer; }
.dr-actions .dr-ok { background: #1f5137; color: #fff; border-color: #1f5137; }
.dr-contact { margin-top: 1rem; border-top: 1px solid var(--line); padding-top: 0.8rem; }
.dr-table { width: 100%; border-collapse: collapse; font-size: 0.92rem; } .dr-table th { text-align: left; font-family: var(--mono); font-size: 0.66rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--slate); padding: 0.4rem; border-bottom: 1px solid var(--line); }
.dr-table td { padding: 0.65rem 0.4rem; border-bottom: 1px solid var(--paper-2); vertical-align: top; } .dr-scroll { overflow-x: auto; }
.dr-members tr.is-pending { background: #fff8ec; } .dr-members .dr-inline { flex-direction: column; align-items: flex-start; gap: 0.2rem; margin: 0; }
.dr-pill { font-family: var(--mono); font-size: 0.66rem; text-transform: uppercase; letter-spacing: 0.06em; padding: 0.15rem 0.45rem; border-radius: 3px; background: var(--paper-2); }
.dr-pill--approved, .dr-pill--active { background: #e2f1e8; color: #1f5137; } .dr-pill--pending { background: #fdf0d9; color: #7a4a05; }
.dr-pill--declined, .dr-pill--revoked, .dr-pill--archived { background: #f6e3e3; color: #8a1f1f; }
.dr-band { font-family: var(--mono); font-size: 0.75rem; font-weight: 600; padding: 0.15rem 0.45rem; border-radius: 3px; }
.dr-band--hot { background: #fbe0d6; color: #a1300e; } .dr-band--warm { background: #fdf0d9; color: #7a4a05; } .dr-band--cool { background: #e3edf6; color: #22476b; } .dr-band--cold { background: var(--paper-2); color: var(--slate); }
.dr-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0.8rem; margin: 0 0 1.25rem; }
.dr-stats div { background: var(--white); border: 1px solid var(--line); border-radius: 8px; padding: 0.9rem 1rem; } .dr-stats b { display: block; font-family: var(--display); font-size: 1.8rem; } .dr-stats span { font-size: 0.85rem; color: var(--slate); }
.dr-share { display: flex; gap: 1.5rem; justify-content: space-between; align-items: center; flex-wrap: wrap; } .dr-share > div { flex: 1 1 380px; }
.dr-link { width: 100%; font-family: var(--mono); font-size: 0.85rem; padding: 0.5rem; border: 1px solid var(--line); border-radius: 4px; background: #fafaf8; }
.dr-upload { display: flex; gap: 0.6rem; flex-wrap: wrap; align-items: center; margin: 0 0 1rem; padding: 0.8rem; background: #fafaf8; border: 1px dashed var(--line); border-radius: 6px; }
.dr-feed { list-style: none; padding: 0; margin: 0; max-height: 420px; overflow: auto; font-size: 0.9rem; } .dr-feed li { padding: 0.35rem 0; border-bottom: 1px solid var(--paper-2); }
.dr-feed span { font-family: var(--mono); font-size: 0.7rem; color: var(--slate); margin-right: 0.4rem; }
.dr-list { list-style: none; padding: 0; } .dr-list li { padding: 0.5rem 0; border-bottom: 1px solid var(--paper-2); display: flex; gap: 1rem; flex-wrap: wrap; } .dr-list span { color: var(--slate); }
.dr-foot { padding: 1.5rem 0; font-size: 0.85rem; color: var(--slate); border-top: 1px solid var(--line); }
.dr-ndalink { margin-top: -0.4rem; }
.dr .form, .dr-form { max-width: none; }
.dr-signin .dr-form { max-width: 460px; }
.dr-wait { background: #fff8ec; border: 1px solid #f1d9ad; border-radius: 6px; padding: 0.8rem 1rem; margin: 0 0 1rem; }
.dr-links { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0 0 1.25rem; }
.dr-links a { font-family: var(--mono); font-size: 0.7rem; letter-spacing: 0.06em; text-transform: uppercase; padding: 0.5rem 0.8rem; border: 1px solid var(--line); border-radius: 999px; background: var(--white); }
.dr-sub { font-family: var(--display); font-size: 1.35rem; margin: 1.5rem 0 0.75rem; }
.dr-match { display: grid; grid-template-columns: 96px 1fr; gap: 0.8rem; padding: 0.6rem 0; border-bottom: 1px solid var(--paper-2); align-items: center; }
.dr-match img { width: 96px; height: 64px; object-fit: cover; border-radius: 4px; background: var(--paper-2); }
.dr-match strong { display: block; font-family: var(--display); } .dr-match span { font-size: 0.85rem; color: var(--slate); }
.dr-new { font-family: var(--mono); font-size: 0.6rem; background: var(--orange); color: var(--ink); padding: 0.1rem 0.35rem; border-radius: 3px; margin-left: 0.4rem; vertical-align: middle; }
.dr-saved { border-top: 1px solid var(--line); padding: 0.9rem 0; } .dr-saved h3 { margin: 0 0 0.3rem; display: flex; justify-content: space-between; gap: 1rem; align-items: baseline; }
.dr-saved h3 button { font-family: var(--mono); font-size: 0.65rem; text-transform: uppercase; background: none; border: 0; color: var(--slate); cursor: pointer; }
.dr-change { color: #1f5137; font-weight: 600; } .dr-change--up { color: #8a1f1f; }
.dr-stats--in { margin: 1rem 0; } .dr-stats--in div { background: #fafaf8; } .dr-listing h2 { margin-bottom: 0.2rem; }
.dr-upload input[name=title] { flex: 1 1 220px; padding: 0.45rem; border: 1px solid var(--line); border-radius: 4px; }
.dr-h3 { font-family: var(--display); font-size: 1.05rem; margin: 1.2rem 0 0.5rem; }
.dr-channels th { font-family: var(--display); font-size: 0.92rem; text-transform: none; letter-spacing: 0; color: var(--ink); }
.dr-channels thead th { font-family: var(--mono); font-size: 0.62rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--slate); }
.dr-spark { width: 100%; height: 60px; margin: 0.6rem 0; } .dr-spark rect { fill: var(--orange); }
.dr-notes { background: #fafaf8; border-left: 3px solid var(--orange); padding: 0.4rem 0.9rem; margin: 0.8rem 0; }
.dr-periods { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.8rem; } .dr-periods a, .dr-periods button { font-family: var(--mono); font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.06em; padding: 0.4rem 0.7rem; border: 1px solid var(--line); border-radius: 999px; background: var(--white); cursor: pointer; }
.dr-periods a[aria-current] { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.dr-srcs { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); margin: 0 0 1rem; }
.dr-src { border: 1px solid var(--line); border-radius: 6px; padding: 0.8rem; margin: 0; } .dr-src legend { font-family: var(--display); font-weight: 700; padding: 0 0.3rem; } .dr-src .field { margin: 0 0 0.6rem; }
@media print { .dr .masthead, .dr-foot, .noprint { display: none !important; } .dr { background: #fff; } .dr-card, .dr-stats div { break-inside: avoid; border-color: #ccc; } }
