/* Presentation only. Published snapshots, draft approval and role access are unchanged. */
@media screen {
body:not(.public-home):not(.auth-page){--ink:#eeeae1;--muted:#b2becb;--paper:#101923;--line:#c3cbd329;--gold:#d2b574;--gold-ink:#e5ce98;background:#090f16}
body:not(.public-home):not(.auth-page) .workspace{background:radial-gradient(ellipse at 100% 0,#b6984920,transparent 42%),radial-gradient(ellipse at 20% 60%,#536b8520,transparent 55%),#0a111a}
body:not(.public-home):not(.auth-page) .sidebar{background:linear-gradient(165deg,#17212d,#0a111b 75%);border-right-color:#c5b4852b}
body:not(.public-home):not(.auth-page) .topbar{background:#0c141eea;backdrop-filter:blur(18px);border-color:#c6b58326;color:#aebbc9}
body:not(.public-home):not(.auth-page) .topbar b{color:#e2cf9f;font-weight:500}
body:not(.public-home):not(.auth-page) main{max-width:1500px;margin:auto;isolation:isolate}
body:not(.public-home):not(.auth-page) main>.eyebrow{font-size:10px;letter-spacing:.22em;margin-bottom:20px}
body:not(.public-home):not(.auth-page) h1{font-family:Georgia,serif;font-size:clamp(36px,4.4vw,64px);line-height:1.08;margin-bottom:22px;text-wrap:balance}
body:not(.public-home):not(.auth-page) main>.intro{color:#b9c5d1;font-size:15px;line-height:1.85;max-width:760px;margin-bottom:34px}
body:not(.public-home):not(.auth-page) h2,body:not(.public-home):not(.auth-page) h3{font-family:Georgia,serif;text-wrap:balance;color:#f0e9d9}
body:not(.public-home):not(.auth-page) .panel,body:not(.public-home):not(.auth-page) .card{background:linear-gradient(145deg,#202d3bde,#111b28 72%);border-color:#c2cbd32b;border-top-color:#e2d3b34a;border-radius:20px;box-shadow:0 18px 48px #0003,inset 0 1px #ffffff06}
body:not(.public-home):not(.auth-page) .panel{padding:30px;animation:portal-premium-enter .55s ease-out both}
body:not(.public-home):not(.auth-page) .card{padding:26px;animation:portal-premium-enter .6s ease-out both}
body:not(.public-home):not(.auth-page) .card:nth-child(2){animation-delay:70ms}body:not(.public-home):not(.auth-page) .card:nth-child(3){animation-delay:140ms}body:not(.public-home):not(.auth-page) .card:nth-child(4){animation-delay:210ms}
body:not(.public-home):not(.auth-page) .number{color:#e5cb91;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
body:not(.public-home):not(.auth-page) nav a{border-radius:10px;padding:12px 14px}
body:not(.public-home):not(.auth-page) nav a.active{background:linear-gradient(100deg,#d3b67529,#d3b67508);box-shadow:inset 3px 0 #d9be80;color:#f3dfad}
body:not(.public-home):not(.auth-page) button:not(.secondary):not(.nova-launcher):not(#nova-close),body:not(.public-home):not(.auth-page) .button:not(.secondary){background:linear-gradient(115deg,#e9d39d,#b99b57);color:#141b24;border:1px solid #d9c18b;box-shadow:0 5px 20px #b79b4f15}
body:not(.public-home):not(.auth-page) button,body:not(.public-home):not(.auth-page) .button{border-radius:24px;padding:11px 19px;font-size:12px}
body:not(.public-home):not(.auth-page) button:disabled{opacity:.5;cursor:not-allowed}
body:not(.public-home):not(.auth-page) :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid #e1c787;outline-offset:4px}
body:not(.public-home):not(.auth-page) :is(input,select,textarea){border-radius:10px;background:#0a131e;border-color:#a6b7c34d;min-height:44px}
body:not(.public-home):not(.auth-page) input[type=checkbox],body:not(.public-home):not(.auth-page) input[type=radio]{min-height:auto}
body:not(.public-home):not(.auth-page) .badge{border-radius:20px;font-size:10px;color:#f0dca7;background:#b69b5021}
body:not(.public-home):not(.auth-page) .table-wrap{border-radius:14px;background:#0b142080}
body:not(.public-home):not(.auth-page) th{background:#1b2734;color:#d9c79f;padding:16px}
body:not(.public-home):not(.auth-page) td{padding:16px;color:#d2dce5}
body:not(.public-home):not(.auth-page) tbody tr:hover{background:#d3bd7d08}
body:not(.public-home):not(.auth-page) .chart-row{margin:20px 0}.chart-row>div:first-child>span{flex:1;min-width:120px}
body:not(.public-home):not(.auth-page) .chart-track{height:14px;border-radius:8px;background:repeating-linear-gradient(90deg,#ffffff08 0 1px,transparent 1px 25%),#080f18;overflow:hidden}
body:not(.public-home):not(.auth-page) .chart-track>span{border-radius:7px;background:linear-gradient(90deg,#aa8744,#d8b873 65%,#f0dbab);animation:portal-bar .9s cubic-bezier(.16,1,.3,1) both}
body:not(.public-home):not(.auth-page) [class*=series-budget] .chart-track>span{background:linear-gradient(90deg,#788b9c,#cbd6df)}
body:not(.public-home):not(.auth-page) [class*=series-forecast] .chart-track>span{background:repeating-linear-gradient(120deg,#ddc58d 0 7px,#82704e 8px 12px)}
body:not(.public-home):not(.auth-page) .share-ring{transform:none;box-shadow:0 0 0 10px #d3bd7910,0 20px 45px #0005;border-color:#dbc58f66}
body:not(.public-home):not(.auth-page) .share-ring>div{background:radial-gradient(circle at 30% 20%,#253344,#0d1723);color:#ead39f}
body:not(.public-home):not(.auth-page) .capital-visual{gap:38px;padding:22px 0 32px}
body:not(.public-home):not(.auth-page) .report-visual{padding-top:24px;border-top:1px solid #c4b38329}
.portal-chart-legend{display:flex;gap:20px;flex-wrap:wrap;margin:18px 0 24px;color:#c9d2db;font-size:12px}.portal-chart-legend span{display:inline-flex;align-items:center;gap:8px}.portal-chart-legend i{display:inline-block;width:22px;height:8px;border-radius:3px;background:#dabd7d}.portal-chart-legend .silver{background:#bbcbd8}.portal-chart-legend .estimate{background:repeating-linear-gradient(120deg,#ddc58d 0 3px,#82704e 4px 6px)}
body:not(.public-home):not(.auth-page) progress{width:100%;height:8px;accent-color:#d8bd7a}
body:not(.public-home):not(.auth-page) .empty{background:radial-gradient(ellipse at top,#243344,#101a27);border-color:#9daebb45;border-radius:20px}
body:not(.public-home):not(.auth-page) .note,body:not(.public-home):not(.auth-page) .notice{border-radius:10px;line-height:1.8}
@keyframes portal-premium-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(max-width:700px){body:not(.public-home):not(.auth-page) .panel,body:not(.public-home):not(.auth-page) .card{padding:22px;border-radius:16px}body:not(.public-home):not(.auth-page) main{padding:28px 18px 110px}body:not(.public-home):not(.auth-page) .capital-visual{gap:24px}.portal-chart-legend{gap:12px}.chart-row>div:first-child>span{min-width:90px}}
@media(prefers-reduced-motion:reduce){body:not(.public-home):not(.auth-page) .panel,body:not(.public-home):not(.auth-page) .card,body:not(.public-home):not(.auth-page) .chart-track>span{animation:none!important}}
body.motion-paused:not(.public-home):not(.auth-page) .panel,body.motion-paused:not(.public-home):not(.auth-page) .card{animation:none!important}
}

/* Comfortable reading rhythm across member and administrator workflows. */
#main .stack { gap: 1.5rem; }
#main .panel > .panel, #main .panel > article + article { margin-top: 1.5rem; }
#main .toolbar { gap: 1rem; flex-wrap: wrap; }
#main .funding-invoice { background: #faf8f1; color: #19232b; border-color: #d8c99e; padding: clamp(1.25rem,3vw,2rem); overflow-wrap: anywhere; }
#main .funding-invoice :is(h3,p,small,strong) { color: inherit; }
#main .funding-invoice .button { color: #19232b; border-color: #978052; }
#main .document-support { margin: 1.5rem 0; }
#main .document-support summary { cursor: pointer; color: #dfc485; padding: .75rem 0; }
#main #contribution-checkout:focus, #main [id^="payment-request-"]:focus { outline: 2px solid #d8bd77; outline-offset: 5px; }

/* Keep complete financial values readable at every portal width. */
@media screen {
body:not(.public-home):not(.auth-page) #main :is(.grid,.split,.stack,.row,.panel,.card,.finance-grid,.finance-metrics,.finance-metric,.finance-chart,.finance-legend,.technology-stack,.technology-tile,.funding-invoice){min-width:0;max-width:100%}
body:not(.public-home):not(.auth-page) #main :is(.grid,.split,.finance-grid,.finance-metrics,.capital-visual)>*{min-width:0}
#main :is(.number,.finance-metric strong,.finance-bar strong,.finance-legend strong,.chart-row strong,.share-ring strong,.funding-invoice>strong,.row>strong,.technology-tile strong){font-variant-numeric:tabular-nums;white-space:normal;overflow-wrap:anywhere;word-break:normal;max-width:100%;text-overflow:clip}
#main :is(.number,.finance-metric strong){font-size:clamp(1.125rem,2.6vw,2.25rem);line-height:1.3}
#main :is(.finance-bar strong,.funding-invoice>strong,.row>strong,.technology-tile strong){font-size:clamp(1rem,2vw,1.65rem);line-height:1.4}
#main :is(.finance-bar>div:first-child,.chart-row>div:first-child){flex-wrap:wrap;gap:.5rem 1rem}
#main :is(.finance-bar>div:first-child,.chart-row>div:first-child)>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
#main .finance-legend{min-width:0;flex-basis:12rem;max-width:100%}
#main .finance-legend li{grid-template-columns:8px minmax(0,1fr) minmax(0,1fr);min-width:0;gap:.5rem}
#main .finance-legend strong{font-size:clamp(.75rem,1.3vw,.875rem)}
#main .finance-line-legend li{min-width:0;flex-basis:12rem}
#main .finance-donut{min-width:0;flex-shrink:1;max-width:100%;overflow:visible}
#main .finance-donut-total{font-size:clamp(11px,1.6vw,15px);font-variant-numeric:tabular-nums}
#main .finance-tick{font-size:clamp(10px,1.2vw,11px);font-variant-numeric:tabular-nums}
#main .share-ring strong{font-size:clamp(1.25rem,3vw,2rem)}
#main .table-wrap{min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
#main :is(td,th){font-variant-numeric:tabular-nums;white-space:normal;overflow-wrap:anywhere;text-overflow:clip;font-size:clamp(.75rem,1.2vw,.875rem)}
#main :is(input,select,textarea){min-width:0;max-width:100%}
@media(max-width:700px){
 #main .finance-metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
 #main .finance-grid{grid-template-columns:1fr}
 #main .technology-stack{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr))}
 #main :is(.finance-chart,.finance-metric){padding:clamp(14px,3vw,20px)}
 #main .table-wrap table{min-width:520px}
 #main .table-wrap :is(td,th){padding:12px}
 #main .row{flex-wrap:wrap;gap:12px}
 #main .capital-visual{grid-template-columns:minmax(0,1fr)}
 #main .share-ring{justify-self:center;max-width:100%}
 #main .funding-invoice,#main .investment-book-workflow .funding-invoice{padding:clamp(14px,4vw,24px)!important}
 #main .investment-book-workflow{padding:clamp(14px,4vw,24px)!important}
}
@media(max-width:380px){
 #main .finance-legend li{grid-template-columns:8px minmax(0,1fr)}
 #main .finance-legend strong{grid-column:2;text-align:left}
}
}

/* Amounts fit their cards; text wraps at word boundaries, with room to read. */
#main .finance-metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
#main :is(.panel,.card,.finance-metric,.finance-chart,.technology-tile) :is(h2,h3,p,small,.eyebrow){word-break:normal;overflow-wrap:break-word;text-overflow:clip;white-space:normal}
#main .stack{display:grid;gap:24px}
#main .stack>.card,#main .stack>.panel{margin-block:0}
#main .technology-tile{transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,border-color .45s;transform-origin:center;transform-style:preserve-3d}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 body:not(.motion-paused) #main .technology-tile:hover{transform:perspective(900px) rotateY(-5deg) rotateX(3deg) translateY(-7px);border-color:#d8bd78;box-shadow:0 22px 44px #0005,0 0 24px #d8bd7814}
}
@media(max-width:700px){body:not(.public-home) .sidebar nav a{font-size:15px;font-weight:700;padding:13px 15px}#main .finance-metrics{grid-template-columns:1fr}}

/* Branded stack plaques remain legible while their decorative faces turn. */
#main .technology-mark{width:68px;height:68px;perspective:650px;isolation:isolate;background:linear-gradient(145deg,#e4cf8e22,#07101a);box-shadow:inset 0 1px 1px #f9e5a84d,0 10px 24px #0003;transform-style:preserve-3d}
#main .technology-mark img{width:48px;height:48px;max-width:100%;backface-visibility:visible;transform:translateZ(4px)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){body:not(.motion-paused) #main .technology-tile:hover .technology-mark{transform:rotateY(360deg);transition:transform 1.1s cubic-bezier(.22,.7,.2,1)}}
body.motion-paused #main .technology-mark{transition:none;transform:none}
@media(prefers-reduced-motion:reduce){#main .technology-mark{transition:none!important;transform:none!important}}

/* Compact meeting dates and accessible, focused summaries. */
.meeting-date-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:20px;margin-top:24px}
.meeting-date-card{margin:20px 0;min-width:0}
.meeting-date-card>button{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:24px;text-align:left;border-radius:20px;white-space:normal}
.meeting-date-card strong{font-size:1.3rem;color:var(--gold,#ddbe72);line-height:1.35}
.meeting-summary-dialog{width:min(580px,calc(100vw - 32px));max-height:85dvh;overflow:auto;box-sizing:border-box;padding:28px;border:1px solid #b89a59;border-radius:24px;background:#142231;color:#f6f1e6;box-shadow:0 24px 80px #0009}
.meeting-summary-dialog::backdrop{background:#03080dd9;backdrop-filter:blur(5px)}
.meeting-summary-dialog p{line-height:1.7;margin:22px 0}.meeting-summary-dialog [data-close-summary]{display:block;margin-left:auto}

/* Comfortable spacing for meeting cards and governance sections. */
#main .meeting-date-card>button.secondary{padding:32px;gap:16px;box-sizing:border-box;height:100%;min-height:210px}
#main .governance-section-heading{margin-top:48px;margin-bottom:28px;padding-top:12px}
@media(max-width:600px){#main .meeting-date-card>button.secondary{padding:28px;min-height:190px}}
