/* Participant presentation. Keep FE31 rules intact and override only this workspace. */
body.participant-app { --ux-surface:#f5efdf; --member-navy:#122c3e; }
body.participant-app :is(.panel,.finance-panel,.stat,.notice,.dialog-heading,.dialog-footer,.compact-card,.compact-summary,.badge,.avatar,.change-mark) { background-color:#f5efdf; color:#15273b; }
body.participant-app :is(button,a.primary,a.secondary,summary) { background:#122c3e !important; color:#fff0ce !important; border:1px solid #122c3e; box-sizing:border-box; }
body.participant-app :is(button,a.primary,a.secondary):not(.icon-button):not(.section-help-button):not(.section-help-floating):not(.meeting-day):not(.meeting-time-button) { width:160px; min-width:0; max-width:100%; flex:0 0 auto; min-height:44px !important; padding:8px 12px !important; text-align:center; line-height:20px; white-space:normal; overflow-wrap:anywhere; }
body.participant-app :is(button.primary,a.primary,.gold-link) { width:240px !important; max-width:100%; }
body.participant-app :is(.icon-button,.section-help-button,.section-help-floating) { width:44px !important; min-width:44px !important; height:44px !important; min-height:44px !important; padding:6px !important; }
body.participant-app :is(button,a.primary,a.secondary):disabled { opacity:.55; }
body.participant-app .sidebar nav :is(button,a,summary) { max-width:100%; width:160px; background:#122c3e !important; text-align:left; }
body.participant-app .sidebar nav :is(button,a).active { outline:1px solid #b79556; outline-offset:-1px; }
body.participant-app :is(.field,input:not([type=checkbox]):not([type=radio]),select) { max-width:360px; }
body.participant-app textarea { width:100%; max-width:640px; }
body.participant-app .field:has(textarea),body.participant-app .search { width:100%; max-width:640px; }
body.participant-app .search input { max-width:none; }
body.participant-app input:is([name=number],[name=birth_date],[name=initiation],[name=fellow],[name=master],[name=cnp],[name=phone],[name=year],[type=date]) { max-width:24ch; }
body.participant-app .member-list-modes,body.participant-app .member-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
body.participant-app .member-list-modes { margin-bottom:12px; }
body.participant-app .member-list-modes [aria-pressed=true] { box-shadow:inset 0 -3px #d4b573; }
body.participant-app .archive-reason { display:block; max-width:50ch; color:#52657c; margin-top:4px; white-space:normal; overflow-wrap:anywhere; }
body.participant-app #member-form > .dialog-footer { display:flex; flex-wrap:wrap; align-items:center; }
body.participant-app #member-form > .dialog-footer #save-help { flex-basis:100%; }
body.participant-app #member-form > .dialog-footer .member-actions { width:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
body.participant-app #member-form .member-actions button { width:160px !important; justify-self:start; }
body.participant-app #member-lifecycle-dialog { width:560px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); }
body.participant-app #member-lifecycle-form { display:flex; flex-direction:column; max-height:calc(100dvh - 32px); }
body.participant-app #member-lifecycle-form .dialog-scroll { overflow:auto; min-height:0; }
body.participant-app #lifecycle-member-name { font-weight:600; }
body.participant-app #dashboard { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(112px,1fr) auto auto auto; gap:12px !important; min-height:0; flex:1 0 auto; }
body.participant-app #dashboard .hero { min-height:112px; height:auto; max-height:180px; padding:16px 24px; margin:0; background:#e8dfc8; color:#15273b; border:1px solid #b79556; }
body.participant-app #dashboard .hero h2 { font-size:28px; line-height:32px; margin:4px 0 12px; }
body.participant-app #dashboard .hero .eyebrow { color:#52657c; }
body.participant-app #dashboard .hero-art { min-width:0; }
body.participant-app #dashboard .hero-art img { width:80px; height:80px; }
body.participant-app #dashboard .hero-art span { color:#52657c; }
body.participant-app #dashboard #stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0; }
body.participant-app #dashboard .stat { min-height:84px; padding:12px; background:#f5efdf; }
body.participant-app #dashboard .stat-label { min-height:0; padding-right:0; font-size:13px; }
body.participant-app #dashboard .stat-value { font-size:28px; line-height:32px; margin:4px 0; }
body.participant-app #dashboard .stat-detail { font-size:12px; line-height:16px; }
body.participant-app #dashboard > .two-col { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; height:auto; }
body.participant-app #dashboard > .two-col > .compact-card { display:block; height:auto; min-height:0; }
body.participant-app #dashboard .compact-summary { display:flex; gap:12px; align-items:center; justify-content:space-between; min-height:64px; padding:12px; }
body.participant-app #dashboard .compact-summary h2 { margin:0; font-size:14px; }
body.participant-app #dashboard .compact-count { font-size:24px; line-height:28px; color:#52657c; }
body.participant-app #dashboard .dashboard-actions { display:flex; gap:12px; align-items:center; justify-content:flex-start; padding:0; margin-top:auto; }
body.participant-app #dashboard #missing-note { display:block; width:160px; max-width:100%; margin:0; max-height:none; overflow:visible; }
body.participant-app #dashboard #missing-note > .notice { display:block; border:0; padding:0; margin:0; background:transparent; }
body.participant-app #dashboard #missing-note .compact-summary { padding:0; min-height:44px; background:transparent; }
body.participant-app #dashboard .workspace-dialog { background:#f5efdf; }
body.participant-app #dashboard #recent-history-panel { display:none !important; }
body.participant-app main:has(> #dashboard:not(.hidden)) { overflow:visible; }
body.participant-app main:has(> #dashboard:not(.hidden)) > #dashboard { flex:1 0 auto; }
body.participant-app main:has(> #dashboard:not(.hidden)) > .heading.has-next-meeting { grid-template-columns:minmax(200px,1fr) minmax(200px,300px) auto; }
body.participant-app main:has(> #dashboard:not(.hidden)) .heading-summary { white-space:normal; }
body.participant-app main:has(> #dashboard:not(.hidden)) > footer { margin-top:0; }
@media (max-width:1100px) {
 body.participant-app main:has(> #dashboard:not(.hidden)) > .heading.has-next-meeting { display:flex; flex-wrap:wrap; }
 body.participant-app main:has(> #dashboard:not(.hidden)) .heading-actions { flex-direction:row; align-items:center; }
}
@media (max-width:600px) {
 body.participant-app #dashboard .hero { padding:12px; }
 body.participant-app #dashboard .hero h2 { font-size:22px; line-height:26px; }
 body.participant-app #dashboard .hero-art { display:none; }
 body.participant-app #dashboard #stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 body.participant-app #dashboard .stat { padding:8px; }
 body.participant-app #dashboard .stat-detail { display:none; }
 body.participant-app #dashboard .compact-summary { padding:8px; gap:4px; }
 body.participant-app #dashboard .compact-count { font-size:18px; }
 body.participant-app #dashboard .two-col .compact-launcher { width:140px; }
 body.participant-app #dashboard .dashboard-actions { gap:8px; }
 body.participant-app #dashboard #missing-note,body.participant-app #view-history { width:calc((100vw - 40px)/2); }
 body.participant-app #member-form .member-actions button { width:140px !important; }
}

/* Informational cards must remain visually distinct from navy actions. */
body.participant-app.figma-ai-layout main > .heading #next-meeting-card { background:#e8dfc8 !important; color:#15273b !important; border:1px solid #b79556; }
body.participant-app.figma-ai-layout #next-meeting-card small { color:#52657c !important; }
body.participant-app.figma-ai-layout main > .heading.has-next-meeting:has(> #page-back:not([hidden])) { display:flex; flex-wrap:wrap; }
body.participant-app.figma-ai-layout main > .heading.has-next-meeting:has(> #page-back:not([hidden])) .heading-summary { flex:1 1 280px; }
body.participant-app.figma-ai-layout #dashboard .stat-label { padding-right:48px; }
@media (max-width:600px) {
 body.participant-app.figma-ai-layout:not(.signed-out) { height:auto; min-height:100dvh; }
 body.participant-app.figma-ai-layout .sidebar { min-height:64px; height:64px; padding:8px 12px; }
 body.participant-app.figma-ai-layout .sidebar .brand { min-height:44px; padding:0 168px 0 0; }
 body.participant-app.figma-ai-layout .sidebar .brand strong { font-size:16px; line-height:20px; }
 body.participant-app.figma-ai-layout .sidebar .brand span { font-size:11px; line-height:16px; margin:0; }
 body.participant-app.figma-ai-layout .ai-menu-button { top:8px; right:12px; }
 body.participant-app.figma-ai-layout > main { min-height:calc(100dvh - 64px); height:auto; padding:10px 12px; gap:8px; }
 body.participant-app.figma-ai-layout main:has(> #dashboard:not(.hidden)) { height:calc(100dvh - 64px); }
 body.participant-app.figma-ai-layout > main > .topbar { min-height:44px; }
 body.participant-app.figma-ai-layout .session-controls { display:flex; flex-wrap:nowrap; gap:8px; }
 body.participant-app.figma-ai-layout #connection-status { flex:1 1 auto; min-width:0; font-size:11px; line-height:14px; }
 body.participant-app.figma-ai-layout .session-controls > .panel-action-group { flex:0 0 160px; }
 body.participant-app.figma-ai-layout .session-controls > .panel-action-group > summary { width:160px; }
 body.participant-app.figma-ai-layout main:has(> #dashboard:not(.hidden)) > .heading.has-next-meeting { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 body.participant-app.figma-ai-layout main:has(> #dashboard:not(.hidden)) .heading-summary { grid-column:1/-1; }
 body.participant-app.figma-ai-layout main:has(> #dashboard:not(.hidden)) .heading-summary h1 { font-size:20px; line-height:24px; }
 body.participant-app.figma-ai-layout main:has(> #dashboard:not(.hidden)) #next-meeting-card { grid-column:1/-1; padding:6px 10px; gap:0; }
 body.participant-app.figma-ai-layout main:has(> #dashboard:not(.hidden)) .heading-actions { grid-column:1/-1; display:flex; flex-direction:row; flex-wrap:nowrap; gap:8px; }
 body.participant-app.figma-ai-layout main:has(> #dashboard:not(.hidden)) .heading-actions button { width:160px !important; max-width:calc((100vw - 32px)/2); }
 body.participant-app.figma-ai-layout #dashboard { grid-template-rows:auto auto auto; flex:1 0 auto; gap:8px !important; }
 body.participant-app.figma-ai-layout #dashboard .stat { min-height:80px; padding:8px; }
 body.participant-app.figma-ai-layout #dashboard .stat-label { min-height:32px; padding-right:48px; font-size:12px; line-height:16px; }
 body.participant-app.figma-ai-layout #dashboard .stat-value { font-size:24px; line-height:28px; margin:0; }
 body.participant-app.figma-ai-layout #dashboard .stat > .section-help-floating { top:8px; right:8px; }
 body.participant-app.figma-ai-layout #dashboard > .two-col { grid-template-columns:minmax(0,1fr); gap:8px; }
 body.participant-app.figma-ai-layout #dashboard .compact-summary { min-height:64px; gap:8px; padding:8px; }
 body.participant-app.figma-ai-layout #dashboard .compact-summary h2 { flex:1; }
 body.participant-app.figma-ai-layout #dashboard .two-col .compact-launcher { width:160px; max-width:100%; }
 body.participant-app.figma-ai-layout #dashboard .dashboard-actions { gap:8px; }
 body.participant-app.figma-ai-layout #dashboard #missing-note,body.participant-app.figma-ai-layout #view-history { width:160px; max-width:calc((100vw - 32px)/2); }
 body.participant-app.figma-ai-layout #dashboard #missing-note .compact-summary { padding:0; min-height:44px; }
 body.participant-app.figma-ai-layout main > footer { display:flex; flex-wrap:wrap; gap:2px 8px; padding:4px 0; min-height:0; font-size:10px; line-height:14px; }
 body.participant-app.figma-ai-layout main > footer * { font-size:10px !important; line-height:14px !important; letter-spacing:0; }
}

/* A fixed-width row action needs enough room beside financial amounts. */
@media (min-width:1024px) and (max-width:1439px) {
 body.participant-app.figma-ai-layout #finance-obligations .finance-obligations-layout { grid-template-columns:minmax(0,1fr); }
 body.participant-app.figma-ai-layout #finance-obligations .finance-obligation-overview { order:-1; }
 body.participant-app.figma-ai-layout #finance-obligations .finance-obligation-overview .finance-stats { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
body.participant-app.figma-ai-layout #finance-obligations .finance-members .finance-table :is(th,td):last-child { position:static !important; min-width:184px; }
