:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#003049;--color-bg-elevated:#0a344d;--color-bg-surface:#082c43f0;--color-bg-hover:#f77f0014;--color-text:#f5f5f5;--color-text-strong:#fff;--color-text-muted:#9ca3af;--color-border:#9ca3af2e;--color-border-strong:#9ca3af47;--color-primary:#003049;--color-red:#d62828;--color-orange:#f77f00;--color-yellow:#fcbf49;--color-cream:#eae2b7;--color-success:#9ce6b0;--color-button-text:#082536;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--shadow-soft:0 18px 48px #0000002e;color:var(--color-text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#f77f001f,#0000 30%),radial-gradient(circle at 100% 0,#eae2b70f,#0000 28%),linear-gradient(#042b42 0%,#001e2f 100%);font-family:Futura,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:0 0;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;padding:var(--space-3)}.topbar{justify-content:space-between;align-items:center;gap:var(--space-2);max-width:1280px;padding:18px var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:#032335d1;margin:0 auto;display:flex}.topbar__brand-block{align-items:center;gap:20px;display:flex}.topbar__brand{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-strong);font-size:1rem;font-weight:600}.topbar__nav{align-items:center;gap:8px;display:flex}.topbar__nav-link{color:var(--color-text-muted);border-radius:999px;padding:8px 12px;transition:background-color .14s,color .14s}.topbar__nav-link:hover{color:var(--color-text);background:#ffffff0d}.topbar__nav-link--active{color:var(--color-text-strong);background:#f77f0024}.topbar__user{color:var(--color-text-muted);font-size:.95rem}.topbar__actions{align-items:center;gap:14px;display:flex}.topbar__logout{color:var(--color-orange);cursor:pointer;background:0 0;border:0;padding:0;transition:color .14s}.topbar__logout:hover{color:var(--color-text-strong)}.app-shell__content{max-width:1280px;padding:var(--space-4) 0 0;margin:0 auto}.page{gap:var(--space-3);display:grid}.page--longform{padding-bottom:var(--space-5)}.page--proposal{gap:20px}.page__header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.page__header--stacked{align-items:stretch}.page__eyebrow{margin:0 0 var(--space-1);color:var(--color-orange);letter-spacing:.12em;text-transform:uppercase;font-size:.75rem}.page__title{color:var(--color-text-strong);margin:0;font-size:clamp(2rem,3vw,2.6rem);font-weight:600;line-height:1.05}.button{justify-content:center;align-items:center;gap:var(--space-1);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;min-height:40px;padding:0 16px;transition:background-color .14s,border-color .14s,color .14s;display:inline-flex}.button--ghost{border-color:var(--color-border);color:var(--color-text);background:#ffffff08}.button--ghost:hover{border-color:var(--color-border-strong);color:var(--color-text-strong);background:#ffffff12}.button--primary{background:var(--color-orange);border-color:var(--color-orange);color:var(--color-button-text);font-weight:600}.button--primary:hover{background:#ff931f;border-color:#ff931f}.button--full{width:100%}.filters{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-control{border:1px solid var(--color-border);cursor:pointer;background:#04293fd1;border-radius:999px;align-items:center;gap:12px;min-height:42px;padding:0 14px;transition:background-color .14s,border-color .14s;display:flex}.filter-control:hover{border-color:var(--color-border-strong);background:#04293fe6}.filter-control__value{color:var(--color-text-muted)}.filter-control--select{gap:10px}.filter-control__select{color:var(--color-text);cursor:pointer;background:0 0;border:0;outline:none}.search-control{min-width:min(100%,280px)}.field__input--search{min-height:42px}.table-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);overflow:hidden}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;white-space:nowrap;padding:18px 20px}.data-table th{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:600}.data-table tbody tr{transition:background-color .14s}.data-table__row--clickable{cursor:pointer}.data-table__row--clickable:focus-visible{outline-offset:-2px;outline:2px solid #f77f006b}.data-table tbody tr:hover{background:linear-gradient(90deg,#fcbf4914,#f77f000d)}.data-table tbody tr+tr td{border-top:1px solid #9ca3af1f}.status-pill{min-height:28px;color:var(--color-yellow);background:#fcbf491f;border-radius:999px;align-items:center;padding:0 10px;font-size:.82rem;font-weight:600;display:inline-flex}.status-pill--draft{color:var(--color-orange);background:#f77f001f}.status-pill--complete{color:var(--color-yellow);background:#fcbf4924}.status-pill--submitted{color:var(--color-text-strong);background:#eae2b71f}.status-pill--approved{color:var(--color-success);background:#76c59324}.data-table__empty{color:var(--color-text-muted);text-align:center}.error-state{padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text-strong);background:#d6282814;border:1px solid #d6282847}.login-page{min-height:100vh;padding:var(--space-3);justify-content:center;align-items:center;display:flex}.login-card{width:min(100%,420px);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);background:#032335e0}.login-card__header{margin-bottom:var(--space-3)}.login-card__title{color:var(--color-text-strong);margin:0;font-size:clamp(2.25rem,6vw,3rem);font-weight:600;line-height:1}.login-card__subtitle{color:var(--color-text-muted);margin:10px 0 0}.login-form{gap:var(--space-2);display:grid}.field{gap:10px;display:grid;position:relative}.field__label{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.82rem}.field__input{border-radius:var(--radius-sm);width:100%;min-height:48px;color:var(--color-text-strong);background:#021c2beb;border:1px solid #9ca3af2e;outline:none;padding:0 14px;transition:border-color .14s,box-shadow .14s,background-color .14s}.field__input::placeholder{color:#9ca3afb3}.field__input:focus{border-color:#f77f0094;box-shadow:0 0 0 3px #fcbf491f}.form-error{color:var(--color-red);margin:-4px 0 0;font-size:.92rem}.form-section,.summary-card{padding:var(--space-3);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.form-section{gap:var(--space-3);scroll-margin-top:190px;display:grid}.form-section__header{gap:6px;display:grid}.form-section__title{color:var(--color-text-strong);margin:0;font-size:1.2rem;font-weight:600}.form-section__description{color:var(--color-text-muted);margin:0}.form-section__body{gap:var(--space-3);display:grid}.proposal-form__grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.proposal-form__grid--tight{grid-template-columns:repeat(2,minmax(0,1fr))}.proposal-form__grid--triple{grid-template-columns:repeat(3,minmax(0,1fr))}.field__input--textarea{resize:vertical;min-height:132px;padding:14px}.field__input--table{min-height:42px}.field--with-suffix .field__input{padding-right:64px}.field__suffix{color:var(--color-text-muted);pointer-events:none;font-size:.82rem;position:absolute;bottom:14px;right:14px}.toggle-group{flex-wrap:wrap;gap:12px;display:flex}.toggle-card{border:1px solid var(--color-border);cursor:pointer;background:#04293fd1;border-radius:999px;align-items:center;min-height:42px;padding:0 14px;transition:background-color .14s,border-color .14s,color .14s;display:inline-flex;position:relative}.toggle-card:has(.toggle-card__input:checked){color:var(--color-text-strong);background:#f77f0029;border-color:#f77f0057}.toggle-card__input{opacity:0;cursor:pointer;position:absolute;inset:0}.toggle-card__label{z-index:1;position:relative}.section-action{justify-content:flex-start;display:flex}.proposal-layout{gap:var(--space-3);grid-template-columns:280px minmax(0,1fr);align-items:start;display:grid}.proposal-sidebar{gap:var(--space-2);align-self:start;display:grid;position:sticky;top:168px}.proposal-nav{border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:#032335b8;gap:8px;padding:12px;display:grid}.proposal-nav__item{color:var(--color-text-muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:9px 12px;transition:background-color .14s,color .14s}.proposal-nav__item:hover{color:var(--color-text);background:#ffffff0d}.proposal-nav__item--active{color:var(--color-text-strong);background:#f77f0024}.partner-subnav{border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:#032335b8;flex-wrap:wrap;gap:10px;padding:12px;display:flex}.partner-subnav__link{min-height:40px;color:var(--color-text-muted);border-radius:999px;align-items:center;padding:0 14px;transition:background-color .14s,color .14s;display:inline-flex}.partner-subnav__link:hover{color:var(--color-text);background:#ffffff0d}.partner-subnav__link--active{color:var(--color-text-strong);background:#f77f0024}.proposal-main{gap:var(--space-3);min-width:0;display:grid}.proposal-sticky-bar{margin:0 0 8px;padding:0 0 16px}.proposal-sticky-bar__content{border:1px solid var(--color-border);border-radius:var(--radius-md);max-width:100%;box-shadow:none;background:#082c42;justify-content:flex-end;align-items:flex-start;gap:16px;padding:12px 16px;display:flex}.proposal-actions{justify-items:end;gap:8px;display:grid}.proposal-actions__helper{color:#9ca3afd1;text-align:right;max-width:32rem;margin:0;font-size:.82rem;line-height:1.4}.proposal-actions__buttons{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.investment-stack{gap:var(--space-2);display:grid}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.investment-card{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:#021f2ed6;border:1px solid #9ca3af1f;display:grid}.investment-card__header,.investment-card__footer,.summary-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.investment-card__eyebrow{color:var(--color-orange);letter-spacing:.1em;text-transform:uppercase;margin:0 0 6px;font-size:.72rem}.investment-card__title{color:var(--color-text-strong);margin:0;font-size:1rem}.investment-card__unit{color:var(--color-text-muted);max-width:38rem}.investment-card__total{color:var(--color-text-strong);white-space:nowrap}.empty-state{padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text-muted);border:1px dashed #9ca3af38}.summary-card__meta{color:var(--color-text-muted);flex-wrap:wrap;justify-content:flex-end;gap:14px;min-width:0;font-size:.92rem;display:flex}.summary-grid{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.summary-metric{padding:var(--space-2);border-radius:var(--radius-md);background:#021f2ed6;border:1px solid #9ca3af24;gap:8px;min-width:0;display:grid}.summary-metric__label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.84rem;line-height:1.35}.summary-metric__value{color:var(--color-text-strong);overflow-wrap:anywhere;font-size:1.4rem;font-weight:600;line-height:1.1}.summary-card--sticky{position:static}.summary-card--sticky .summary-card__header{flex-direction:column;align-items:stretch;gap:12px}.summary-card--sticky .summary-card__meta{justify-content:flex-start;gap:8px;font-size:.86rem;display:grid}.summary-card--sticky .summary-grid{grid-template-columns:1fr;gap:12px}.summary-card--sticky .summary-metric{padding:14px}.summary-card--sticky .summary-metric__label{font-size:.78rem}.summary-card--sticky .summary-metric__value{font-size:clamp(1.1rem,2vw,1.55rem)}.proposal-summary-anchor{height:1px;scroll-margin-top:190px}.proposal-summary-mobile{display:none}.comments-form{gap:var(--space-2);display:grid}.partner-stack,.partner-tag-stack{gap:var(--space-3);display:grid}.partner-tag-row{gap:var(--space-2);grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;align-items:end;display:grid}.partner-form__actions{justify-content:flex-end;display:flex}.data-table--form td{vertical-align:top}.data-table__actions{white-space:nowrap;width:1%}.overview-grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.partner-links-grid{flex-wrap:wrap;gap:12px;display:flex}.jmp-builder{gap:var(--space-3);display:grid}.jmp-toolbar{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.jmp-toolbar__controls{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,180px));display:grid}.jmp-toolbar__actions{align-items:center;gap:12px;display:flex}.jmp-toolbar__message{color:var(--color-success);white-space:nowrap;font-size:.88rem}.jmp-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.jmp-summary .summary-metric{padding:14px 16px}.jmp-summary .summary-metric__label{font-size:.74rem}.jmp-summary .summary-metric__value{font-size:1rem}.jmp-grid{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);background:#021f2eb8;gap:0;display:grid;overflow:hidden}.jmp-grid__viewport{max-height:460px;overflow:auto}.jmp-grid__header,.jmp-grid__row{grid-template-columns:minmax(180px,1.8fr) 112px 112px repeat(12,44px) 120px minmax(220px,1.4fr);min-width:1220px;display:grid}.jmp-grid__header{z-index:1;background:#032335f5;border-bottom:1px solid #9ca3af24;position:sticky;top:0}.jmp-grid__header-cell{min-height:42px;color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;padding:10px 8px;font-size:.72rem;font-weight:600;display:flex}.jmp-grid__header-cell--month{justify-content:center;padding-inline:0}.jmp-grid__row{background:#021f2eb8;border-top:1px solid #9ca3af1f;align-items:stretch}.jmp-grid__row:hover{background:#ffffff05}.jmp-grid__row--detailed .jmp-grid__cell--date{background:#f77f000d}.jmp-grid__cell{border-right:1px solid #9ca3af14;align-items:center;min-height:58px;padding:6px;display:flex}.jmp-grid__cell--month{justify-content:center;padding:4px 3px}.jmp-grid__cell--activity,.jmp-grid__cell--notes{gap:8px}.jmp-grid__cell--value{align-content:center;gap:4px;display:grid}.jmp-grid__input{width:100%;min-height:36px;color:var(--color-text-strong);background:#032335c7;border:1px solid #9ca3af29;border-radius:10px;outline:none;padding:0 10px}.jmp-grid__input:focus{border-color:#f77f0080;box-shadow:0 0 0 3px #fcbf491f}.jmp-grid__input--select{padding-right:28px}.jmp-grid__row-index{min-width:26px;color:var(--color-text-muted);text-align:right;flex:none;font-size:.78rem}.jmp-grid__month{width:100%;min-height:36px;color:var(--color-text-muted);cursor:pointer;background:#032335d1;border:1px solid #9ca3af2e;border-radius:10px;padding:0;font-size:.72rem;transition:border-color .14s,background-color .14s,color .14s}.jmp-grid__month:hover{color:var(--color-text);border-color:#f77f0057}.jmp-grid__month--active{color:var(--color-text-strong);background:#f77f0024;border-color:#f77f0047}.jmp-grid__month--edge{color:var(--color-text-strong);background:linear-gradient(#f77f0042,#fcbf4929);border-color:#fcbf496b}.jmp-grid__value-preview{color:var(--color-text-muted);font-size:.72rem;line-height:1}.jmp-grid__remove{min-height:36px;color:var(--color-text-muted);cursor:pointer;background:#ffffff08;border:1px solid #9ca3af29;border-radius:10px;flex:none;padding:0 10px;transition:background-color .14s,border-color .14s,color .14s}.jmp-grid__remove:hover{color:var(--color-text-strong);background:#d628281f;border-color:#d628283d}.summary-metric__value--small{font-size:1.05rem}.placeholder-card{padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text);background:#021f2eb8;border:1px dashed #9ca3af38}.comments-form__actions{justify-content:flex-end;display:flex}.comments-list{gap:12px;display:grid}.comment-card{padding:var(--space-2);border-radius:var(--radius-md);background:#021f2eb8;border:1px solid #9ca3af24;gap:8px;display:grid}.comment-card__meta{color:var(--color-text-muted);flex-wrap:wrap;justify-content:space-between;gap:8px 12px;font-size:.84rem;display:flex}.comment-card__text{margin:0;line-height:1.5}@media (width<=720px){.app-shell{padding:var(--space-2)}.topbar,.app-shell__content{max-width:100%}.topbar{padding:16px 18px}.app-shell__content{padding-top:var(--space-3)}.topbar__actions{flex-direction:column;align-items:flex-end;gap:8px}.topbar__brand-block,.topbar__nav,.overview-grid,.partner-tag-row{grid-template-columns:1fr;display:grid}.page__header{flex-direction:column;align-items:stretch}.proposal-layout{grid-template-columns:1fr}.proposal-sidebar{position:static}.proposal-nav{padding:10px;display:flex;overflow-x:auto}.proposal-nav__item{white-space:nowrap;flex:none}.proposal-sticky-bar{padding-bottom:12px}.proposal-sticky-bar__content{flex-direction:column;align-items:flex-end}.proposal-actions{justify-items:stretch}.proposal-actions__helper{text-align:right;max-width:24rem}.proposal-actions__buttons{justify-content:flex-end}.summary-card--sticky{display:none}.proposal-summary-mobile{display:block}.summary-grid{grid-template-columns:1fr}.summary-card__header{flex-direction:column;align-items:stretch}.proposal-form__grid,.proposal-form__grid--tight,.proposal-form__grid--triple,.summary-grid,.jmp-summary,.jmp-toolbar__controls{grid-template-columns:1fr}.investment-card__header,.investment-card__footer,.summary-card__header{flex-direction:column;align-items:stretch}.summary-card__meta{justify-content:flex-start}.jmp-toolbar{grid-template-columns:1fr;display:grid}.jmp-toolbar__actions{flex-wrap:wrap}.button--primary{width:fit-content}.button--full{width:100%}.data-table th,.data-table td{padding:16px}.login-page{padding:var(--space-2)}.login-card{padding:var(--space-3)}}
