.projects-main { --content-max: 1480px; }
.projects-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:20px; }
.projects-heading h1 { margin:0; font-size:28px; line-height:1.2; letter-spacing:-.025em; }
.projects-heading p { margin:7px 0 0; color:var(--prizm-color-fg-muted); font-size:12px; }
.projects-heading .btn svg,.project-drawer .btn svg { width:16px; height:16px; }
.project-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-bottom:18px; overflow:hidden; border:1px solid var(--prizm-color-border); border-radius:var(--prizm-radius-md); background:var(--prizm-color-surface); box-shadow:var(--prizm-shadow-sm); }
.project-summary article { min-height:110px; display:grid; align-content:center; gap:4px; padding:17px 20px; border-right:1px solid var(--prizm-color-border); }
.project-summary article:last-child { border-right:0; }
.project-summary span { color:var(--prizm-color-fg-muted); font-size:10px; font-weight:750; letter-spacing:.045em; text-transform:uppercase; }
.project-summary strong { font-size:27px; line-height:1.15; font-weight:650; }
.project-summary small { color:var(--prizm-color-fg-subtle); font-size:10px; }
.projects-surface { overflow:hidden; border:1px solid var(--prizm-color-border); border-radius:var(--prizm-radius-md); background:var(--prizm-color-surface); box-shadow:var(--prizm-shadow-sm); }
.projects-toolbar { display:grid; grid-template-columns:minmax(280px,1fr) auto; align-items:center; gap:18px; padding:20px 24px 14px; }
.projects-search { position:relative; width:100%; }
.projects-search svg { position:absolute; top:50%; left:12px; width:16px; height:16px; color:var(--prizm-color-fg-subtle); transform:translateY(-50%); pointer-events:none; }
.projects-search input { width:100%; height:40px; padding:0 12px 0 38px; border:1px solid var(--prizm-color-border-strong); border-radius:var(--prizm-radius-md); background:var(--prizm-color-surface); color:var(--prizm-color-fg); outline:0; }
.projects-filters { display:flex; gap:10px; }
.projects-filters select { width:172px; height:40px; padding:0 34px 0 12px; border:1px solid var(--prizm-color-border-strong); border-radius:var(--prizm-radius-md); background:var(--prizm-color-surface); color:var(--prizm-color-fg); }
.projects-search input:focus,.projects-filters select:focus { border-color:var(--prizm-color-focus); box-shadow:0 0 0 2px color-mix(in srgb,var(--prizm-color-focus) 18%,transparent); outline:0; }
.status-key { min-height:37px; display:flex; align-items:center; gap:20px; padding:0 24px 10px; border-bottom:1px solid var(--prizm-color-border); color:var(--prizm-color-fg-subtle); font-size:10px; }
.status-key span { display:inline-flex; align-items:center; gap:6px; }
.status-dot { width:7px; height:7px; border-radius:50%; background:var(--prizm-color-fg-subtle); }
.status-dot.warning { background:var(--prizm-color-warning); }.status-dot.danger { background:var(--prizm-color-danger); }.status-dot.success { background:var(--prizm-color-success); }
.projects-table-wrap { min-height:360px; overflow-x:auto; }
.projects-table { width:100%; min-width:900px; border-collapse:collapse; table-layout:fixed; }
.projects-table th { height:42px; padding:0 14px; background:var(--prizm-color-bg-subtle); color:var(--prizm-color-fg-muted); font-size:10px; font-weight:700; text-align:left; }
.projects-table th:nth-child(1){width:24%}.projects-table th:nth-child(2){width:15%}.projects-table th:nth-child(3){width:15%}.projects-table th:nth-child(4){width:23%}.projects-table th:nth-child(5){width:12%}.projects-table th:nth-child(6){width:11%}
.projects-table td { height:68px; padding:11px 14px; border-top:1px solid var(--prizm-color-border); color:var(--prizm-color-fg); font-size:11px; vertical-align:middle; }
.projects-table tbody tr:hover { background:var(--prizm-color-bg-subtle); }
.project-title,.assignment-title,.view-link { color:var(--prizm-color-accent); text-decoration:none; }
.project-title { display:block; width:fit-content; font-weight:700; }
.project-title:hover,.assignment-title:hover,.view-link:hover { color:var(--prizm-color-accent-hover); text-decoration:underline; text-underline-offset:3px; }
.project-meta,.owner-meta,.assignment-meta { display:block; margin-top:3px; color:var(--prizm-color-fg-subtle); font-size:10px; }
.owner-name { display:block; font-weight:650; }
.status-badge,.assignment-badge { display:inline-flex; align-items:center; min-height:25px; padding:3px 9px; border-radius:999px; font-size:10px; font-weight:700; white-space:nowrap; }
.status-badge.neutral,.assignment-badge.neutral { background:var(--prizm-color-bg-muted); color:var(--prizm-color-fg-muted); }
.status-badge.warning { background:color-mix(in srgb,var(--prizm-color-warning) 12%,var(--prizm-color-surface)); color:var(--prizm-color-warning-strong,var(--prizm-color-warning)); }
.status-badge.danger { background:color-mix(in srgb,var(--prizm-color-danger) 10%,var(--prizm-color-surface)); color:var(--prizm-color-danger); }
.status-badge.success { background:color-mix(in srgb,var(--prizm-color-success) 11%,var(--prizm-color-surface)); color:var(--prizm-color-success); }
.assignment-title { display:block; width:fit-content; font-weight:650; }
.view-link { font-weight:650; white-space:nowrap; }
.projects-empty { min-height:300px; display:grid; align-content:center; justify-items:center; gap:5px; color:var(--prizm-color-fg-muted); }
.projects-empty strong { color:var(--prizm-color-fg); font-size:14px; }.projects-empty span { font-size:11px; }
.projects-footer { min-height:54px; display:flex; align-items:center; justify-content:space-between; padding:10px 24px; border-top:1px solid var(--prizm-color-border); color:var(--prizm-color-fg-muted); font-size:11px; }
.drawer-backdrop { position:fixed; z-index:50; inset:0; background:color-mix(in srgb,var(--prizm-color-fg) 38%,transparent); }
.project-drawer { position:fixed; z-index:51; top:0; right:0; bottom:0; width:min(500px,92vw); display:flex; flex-direction:column; border-left:1px solid var(--prizm-color-border); background:var(--prizm-color-surface); box-shadow:var(--prizm-shadow-lg); }
.project-drawer[hidden],.drawer-backdrop[hidden] { display:none; }
.project-drawer > header { min-height:112px; display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:25px 28px; border-bottom:1px solid var(--prizm-color-border); }
.project-drawer > header span { color:var(--prizm-color-fg-muted); font-size:10px; font-weight:750; letter-spacing:.05em; text-transform:uppercase; }
.project-drawer h2 { margin:7px 0 3px; font-size:22px; line-height:1.25; }.project-drawer header small { color:var(--prizm-color-fg-subtle); }
.project-drawer header button { width:36px; height:36px; display:grid; flex:0 0 36px; place-items:center; padding:0; border:1px solid var(--prizm-color-border); border-radius:var(--prizm-radius-md); background:var(--prizm-color-surface); color:var(--prizm-color-fg); cursor:pointer; }.project-drawer header button svg{width:18px;height:18px}
.drawer-body { flex:1; overflow:auto; padding:24px 28px; }
.project-details { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:22px 0 0; border:1px solid var(--prizm-color-border); border-radius:var(--prizm-radius-md); }
.project-details div { min-height:82px; padding:16px; border-right:1px solid var(--prizm-color-border); border-bottom:1px solid var(--prizm-color-border); }.project-details div:nth-child(2n){border-right:0}.project-details div:nth-last-child(-n+2){border-bottom:0}
.project-details dt,.drawer-assignment > span { color:var(--prizm-color-fg-subtle); font-size:9px; font-weight:750; letter-spacing:.045em; text-transform:uppercase; }.project-details dd { margin:7px 0 0; font-size:12px; font-weight:650; }
.drawer-assignment { margin-top:22px; padding:18px; border:1px solid var(--prizm-color-border); border-radius:var(--prizm-radius-md); background:var(--prizm-color-bg-subtle); }.drawer-assignment > div { margin-top:10px; }
.drawer-assignment .assignment-title { font-size:13px; }.drawer-assignment .assignment-meta { font-size:11px; }
.project-drawer > footer { display:flex; justify-content:flex-end; gap:10px; padding:16px 28px; border-top:1px solid var(--prizm-color-border); background:var(--prizm-color-surface); }
.project-drawer :is(a,button):focus-visible,.projects-surface :is(a,button,input,select):focus-visible,.projects-heading button:focus-visible { outline:2px solid var(--prizm-color-focus); outline-offset:2px; }
@media(max-width:980px){.project-summary{grid-template-columns:1fr 1fr}.project-summary article:nth-child(2){border-right:0}.project-summary article:nth-child(-n+2){border-bottom:1px solid var(--prizm-color-border)}}
@media(max-width:1100px){.projects-toolbar{grid-template-columns:1fr}.projects-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.projects-filters select{width:100%}}
@media(max-width:760px){.projects-heading{align-items:flex-start;flex-direction:column}.projects-toolbar{align-items:stretch;padding:14px 12px}.projects-filters{grid-template-columns:1fr}.projects-filters select{width:100%;min-width:0}.status-key{overflow-x:auto;padding-inline:12px}.project-summary{grid-template-columns:1fr 1fr}.project-summary article{padding:14px}.projects-footer{padding-inline:12px}}
@media(max-width:520px){.projects-filters{grid-template-columns:1fr}.project-details{grid-template-columns:1fr}.project-details div{border-right:0}.project-details div:nth-last-child(2){border-bottom:1px solid var(--prizm-color-border)}}

/* Project Requests / All Projects — FigJam 6034:579225. */
.projects-main { padding:calc(var(--header-h) + 24px) 24px 24px calc(var(--rail-w) + 24px); }
.projects-heading { align-items:center; margin-bottom:28px; }
.projects-heading h1 { margin:0; color:var(--prizm-color-fg); font-size:24px; font-weight:600; line-height:1.2; letter-spacing:-.025em; }
.projects-section-heading h2 { margin:0; color:var(--prizm-color-fg); font-size:16px; font-weight:600; line-height:1.2; letter-spacing:-.015em; }
.projects-heading .btn,.projects-section-heading .btn { min-height:36px; font-size:12px; }
.request-summary { display:grid; grid-template-columns:repeat(2,minmax(0,380px)); gap:16px; margin-bottom:32px; }
.request-card { display:grid; grid-template-columns:40px 1fr 12px; align-items:center; gap:16px; min-height:92px; padding:14px 16px; border:1px solid var(--prizm-color-border); border-radius:var(--prizm-radius-md); background:var(--prizm-color-surface); color:var(--prizm-color-fg); text-decoration:none; }
.request-card:hover { border-color:var(--prizm-color-accent); }
.request-card strong,.request-card small,.request-card b { display:block; }
.request-card strong { color:var(--prizm-color-fg); font-size:14px; font-weight:600; }
.request-card small { color:var(--prizm-color-fg-muted); font-size:12px; margin-top:3px; }
.request-card b { color:var(--prizm-color-fg); font-size:20px; margin-top:5px; font-weight:600; }
.request-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:var(--prizm-color-bg-muted); color:var(--prizm-color-accent); }
.request-icon svg { width:18px; height:18px; }
.projects-section-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }
.projects-section-heading svg { width:16px; height:16px; }
.projects-surface { box-shadow:none; }
.projects-toolbar { display:flex; flex-wrap:wrap; gap:8px; padding:24px 24px 16px; }
.projects-search { width:242px; }
.projects-search input { height:36px; font-size:12px; padding-left:32px; border-color:var(--prizm-color-border); }
.projects-filters { display:flex; flex-wrap:wrap; gap:8px; }
.projects-filters select { width:auto; height:36px; font-size:12px; border-color:var(--prizm-color-border); }
.projects-table-wrap { padding:0 24px 24px; min-height:0; }
.projects-table { min-width:1000px; }
.projects-table th { background:var(--prizm-color-surface); height:46px; padding:0 12px; font-size:12px; }
.projects-table th:nth-child(1){width:22%}.projects-table th:nth-child(2){width:12.5%}.projects-table th:nth-child(3){width:10.5%}.projects-table th:nth-child(4){width:13%}.projects-table th:nth-child(5){width:22%}.projects-table th:nth-child(6){width:11%}.projects-table th:nth-child(7){width:9%}
.projects-table th button { padding:0; border:0; background:transparent; color:inherit; font:inherit; display:flex; align-items:center; gap:8px; cursor:pointer; text-align:left; }
.projects-table th button span { color:var(--prizm-color-fg-subtle); }
.projects-table td { height:60px; padding:10px 12px; font-size:14px; }
.project-title,.assignment-title { color:var(--prizm-color-fg); font-weight:400; }
.project-title:hover { color:var(--prizm-color-accent); }
.project-meta,.assignment-meta { font-size:12px; }
.status-badge,.assignment-badge { font-size:12px; min-height:22px; padding:2px 9px; font-weight:400; }
.projects-footer { min-height:68px; font-size:14px; }
.projects-footer label,.projects-footer nav { display:flex; align-items:center; gap:10px; }
.projects-footer select,.projects-footer button,.projects-footer nav span { min-height:36px; border:1px solid var(--prizm-color-border); border-radius:var(--prizm-radius-md); color:var(--prizm-color-fg); background:var(--prizm-color-surface); padding:6px 12px; font:inherit; }
.projects-footer button { border-color:transparent; cursor:pointer; }
.projects-footer button:disabled { opacity:.45; cursor:default; }
.projects-footer nav span { background:var(--prizm-color-bg-subtle); }
.request-card:focus-visible,.projects-heading .btn:focus-visible { outline:2px solid var(--prizm-color-focus); outline-offset:2px; }
@media(max-width:1100px) { .projects-table td { font-size:12px; } .project-meta,.assignment-meta { font-size:11px; } }
@media(max-width:760px) { .projects-main { padding-left:16px; padding-right:16px; } .request-summary { grid-template-columns:1fr; } .projects-heading { flex-direction:row; flex-wrap:wrap; } .projects-toolbar { padding:16px; } .projects-search { width:100%; } .projects-table-wrap { padding-inline:16px; } .projects-footer { flex-wrap:wrap; gap:12px; } }
.request-card { height:92px; }
.request-card b { line-height:24px; }
.projects-table td { font-size:12px; }
.projects-table th { font-size:11px; }
.projects-table th button { white-space:nowrap; gap:6px; }
.projects-table th:nth-child(1){width:22%}.projects-table th:nth-child(2){width:12.5%}.projects-table th:nth-child(3){width:10.5%}.projects-table th:nth-child(4){width:13%}.projects-table th:nth-child(5){width:21%}.projects-table th:nth-child(6){width:10.5%}.projects-table th:nth-child(7){width:10.5%}
.project-meta,.assignment-meta { font-size:11px; }
.status-badge,.assignment-badge { font-size:11px; }

/* Non-modal reference panel: keep the project list visible and interactive. */
body.project-panel-open { --project-panel-width:min(460px,45vw); }
body.project-panel-open .projects-main { margin-right:var(--project-panel-width); }
.project-panel-open .project-drawer { top:var(--header-h,64px);width:var(--project-panel-width);z-index:44;box-shadow:none; }
.project-drawer > header,.project-drawer > footer { flex-shrink:0; }
.project-drawer .drawer-body { min-height:0; }
#drawerTitle a { color:inherit;text-decoration:none; }
#drawerTitle a:hover { color:var(--prizm-color-accent);text-decoration:underline; }
.project-panel-open .project-drawer footer { flex-wrap:wrap;padding:16px; }
.project-panel-open .projects-toolbar { display:flex;flex-wrap:wrap; }
body.project-full-detail .projects-main { display:none; }
body.project-full-detail .project-drawer { position:relative;top:auto;right:auto;bottom:auto;margin:var(--header-h,64px) 0 0 var(--rail-w,68px);width:auto;min-height:calc(100dvh - var(--header-h,64px)); }
.project-full-detail .drawer-body { overflow:visible; }
.project-full-detail #drawerProjectLink { display:none; }
@media(max-width:700px){
 body.project-panel-open { --project-panel-width:100%; }
 body.project-panel-open .projects-main { margin-right:0; }
 .project-panel-open:not(.project-full-detail) .project-drawer { position:relative;top:auto;width:auto;margin-left:var(--rail-w,0px);max-height:80dvh; }
 body.project-full-detail .project-drawer { margin-left:0; }
}
.project-panel-open #toa-assistant .toa-chat-launcher { bottom:100px; }
.project-panel-open #toa-assistant .toa-chat-panel { bottom:100px;height:min(600px,calc(100dvh - 180px)); }

/* Compact information sections follow the Mentor applicant panel. */
.drawer-assignment > .btn { margin-top:16px; }
#drawerIntakeProgress { padding:0; border:0; background:transparent; }
#drawerIntakeProgress h3 { margin:0 0 10px; font-size:12px; font-weight:650; }
.intake-mentor { padding:11px 12px; border:1px solid var(--prizm-color-border); border-radius:var(--prizm-radius-sm); background:var(--prizm-color-bg-subtle); }
.intake-mentor span,.intake-mentor strong { display:block; font-size:12px; }
.intake-mentor span { color:var(--prizm-color-fg-subtle); }
.intake-mentor strong { margin-top:4px; font-weight:600; }
.intake-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:16px 0 22px; }
.intake-metrics dt { font-size:12px; color:var(--prizm-color-fg-muted); }
.intake-metrics dd { margin:4px 0 0; font-size:18px; font-weight:600; }
.intake-count { color:var(--prizm-color-fg-muted); font-weight:400; }
.intake-applicants { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
.intake-applicants li { padding:10px 12px; border:1px solid var(--prizm-color-border); border-radius:var(--prizm-radius-sm); }
.intake-applicants a { display:block; color:var(--prizm-color-accent); font-size:12px; font-weight:600; text-decoration:none; }
.intake-applicants a:hover { text-decoration:underline; }
.intake-applicant-status { display:block; margin-top:4px; color:var(--prizm-color-fg-muted); font-size:12px; }
.intake-empty { font-size:12px; color:var(--prizm-color-fg-muted); }

/* One consistent hierarchy for the project quick view. */
.project-drawer .drawer-body { padding:22px 24px; }
.drawer-section-heading { display:flex;align-items:center;justify-content:space-between;gap:12px; }
.project-drawer .drawer-body h3 { margin:0 0 14px;font-size:14px;font-weight:600;line-height:1.4; }
.drawer-section-heading h3 { margin-bottom:0 !important; }
.project-drawer .project-details { border:0;border-radius:0;margin:18px 0 0;gap:18px 16px; }
.project-drawer .project-details > div { min-height:0;padding:0;border:0;background:transparent; }
.project-drawer .project-details dt { font-size:11px;font-weight:400;text-transform:none;letter-spacing:0; }
.project-drawer .project-details dd { font-size:13px;font-weight:400;margin-top:5px; }
.project-drawer .drawer-assignment,#drawerIntakeProgress { margin-top:24px;padding:22px 0 0;border:0;border-top:1px solid var(--prizm-color-border);border-radius:0;background:transparent; }
#drawerAssignment .assignment-title { font-size:13px;font-weight:500; }
#drawerProgressMetrics .intake-metrics { padding:14px;background:var(--prizm-color-bg-subtle);border-radius:var(--prizm-radius-sm);gap:14px;margin:16px 0 0; }
#drawerProgressMetrics dt { font-size:11px; }
#drawerProgressMetrics dd { font-size:18px; }
.project-drawer .drawer-assignment > .btn { margin-top:14px; }
.mentor-context { margin:0 0 16px;font-size:12px;line-height:1.5; }
.mentor-context span { display:block;color:var(--prizm-color-fg-muted); }
.mentor-context strong { display:block;margin-top:3px;font-weight:500; }
#drawerIntakeProgress .intake-applicants { gap:0;border:1px solid var(--prizm-color-border);border-radius:var(--prizm-radius-sm);overflow:hidden; }
#drawerIntakeProgress .intake-applicants li { padding:11px 12px;border:0;border-bottom:1px solid var(--prizm-color-border);border-radius:0; }
#drawerIntakeProgress .intake-applicants li:last-child { border:0; }
#drawerIntakeProgress .intake-applicants a { font-weight:500; }
#drawerInterns .assignment-meta { font-size:12px;line-height:1.5;color:var(--prizm-color-fg-muted); }
@media(min-width:701px) {
 .project-panel-open #toa-assistant .toa-chat-launcher,
 .project-panel-open #toa-assistant .toa-chat-panel { right:calc(var(--project-panel-width) + 24px); }
 .project-panel-open #toa-assistant .toa-chat-panel { max-width:calc(100vw - var(--project-panel-width) - var(--rail-w,68px) - 48px); }
}
