:root{color:#172033;background:radial-gradient(circle at top left,rgba(225,105,45,.18),transparent 32%),radial-gradient(circle at top right,rgba(24,89,109,.16),transparent 30%),linear-gradient(160deg,#f5efe5,#ecf1f6 55%,#f7f3ea);font-family:Trebuchet MS,Segoe UI,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg-shell: rgba(255, 252, 248, .84);--bg-card: rgba(255, 255, 255, .78);--border: rgba(23, 32, 51, .1);--border-strong: rgba(23, 32, 51, .18);--text-muted: #5a6578;--accent-harbor: #1f6b78;--accent-ember: #9e4721;--accent-sunrise: #cc6e2b;--status-active: #106b57;--status-completed: #91641a;--status-archived: #5b6375;--shadow-soft: 0 24px 60px rgba(17, 23, 38, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-height:100vh}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:Georgia,Iowan Old Style,Times New Roman,serif;line-height:1.1;margin:0}p{margin:0}.shell{position:relative;max-width:1280px;margin:0 auto;padding:32px 20px 56px}.shell__wash{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:28px;background:linear-gradient(135deg,#ffffff61,#ffffff14);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}.shell__wash[data-accent=sunrise]{box-shadow:inset 0 0 0 1px #cc6e2b26}.shell__wash[data-accent=harbor]{box-shadow:inset 0 0 0 1px #1f6b7824}.shell__wash[data-accent=ember]{box-shadow:inset 0 0 0 1px #9e472124}.shell__masthead,.shell__nav,.shell__body{position:relative}.shell__masthead{display:grid;gap:20px;padding:18px 6px 24px}.shell__eyebrow,.subshell__eyebrow,.project-card__code{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;color:var(--text-muted)}.shell__lede{margin-top:12px;max-width:58rem;color:var(--text-muted)}.shell__pillbox{display:flex;flex-wrap:wrap;gap:10px}.shell__pillbox span,.status-chip{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 12px;background:#ffffffad;border:1px solid var(--border);font-size:.84rem}.shell__nav{display:flex;flex-wrap:wrap;gap:12px;padding:18px 0 28px}.shell__nav-link,.subshell__link,.cta-link{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border);background:#ffffffb8;padding:10px 16px;transition:transform .14s ease,border-color .14s ease,background .14s ease}.shell__nav-link:hover,.subshell__link:hover,.cta-link:hover{transform:translateY(-1px);border-color:var(--border-strong)}.shell__nav-link--active,.subshell__link--active,.cta-link{background:#172033;border-color:#172033;color:#f7f4ed}.cta-link--secondary{background:#ffffffb8;color:inherit;border-color:var(--border)}.shell__body{display:grid;gap:22px}.shell__content,.shell__aside,.subshell,.route-card,.hero-card,.note-card,.project-card{border:1px solid var(--border);background:var(--bg-shell);box-shadow:var(--shadow-soft)}.shell__content,.shell__aside{border-radius:26px;padding:24px}.shell__content--full{grid-column:1 / -1}.page-grid,.project-mini-list,.stack{display:grid;gap:18px}.hero-card,.note-card,.project-card,.route-card,.subshell{border-radius:24px;padding:22px}.hero-card__actions,.project-card__links{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.card-list{margin:12px 0 0;padding-left:18px;color:var(--text-muted)}.project-card__header,.workspace-shell__header{display:grid;gap:12px}.project-card h2,.workspace-shell__header h2{margin-top:8px}.project-mini-card{display:grid;gap:6px;padding:14px;border-radius:18px;border:1px solid var(--border);background:var(--bg-card)}.workspace-shell__meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.workspace-shell__summary{color:var(--text-muted);max-width:44rem}.subshell__header{display:grid;gap:8px;margin-bottom:18px}.subshell__nav{display:flex;flex-wrap:wrap;gap:10px}.subshell__content{margin-top:20px}.status-chip--active{color:var(--status-active)}.status-chip--completed{color:var(--status-completed)}.status-chip--archived{color:var(--status-archived)}.quick-login{display:grid;gap:18px}.quick-login__intro,.quick-login__current,.quick-login__disabled,.quick-login__feedback{display:grid;gap:12px}.quick-login__message{color:var(--text-muted)}.quick-login__grid{display:grid;gap:16px}.identity-card{display:grid;gap:12px;border-radius:22px;border:1px solid var(--border);background:var(--bg-card);box-shadow:var(--shadow-soft);padding:20px}.identity-card__header{display:flex;flex-wrap:wrap;gap:10px;align-items:start;justify-content:space-between}.action-button{display:inline-flex;align-items:center;justify-content:center;width:fit-content;border-radius:999px;border:1px solid #172033;background:#172033;color:#f7f4ed;cursor:pointer;font:inherit;padding:10px 16px;transition:transform .14s ease,opacity .14s ease}.action-button:hover:not(:disabled){transform:translateY(-1px)}.action-button:disabled{cursor:wait;opacity:.72}.quick-login__feedback--error{border-color:#9e472140}.projects-board,.project-form-shell,.calendar-page,.timesheet-page,.settings-grid,.team-page,.funding-page,.work-packages-page,.team-roster,.work-package-grid,.timeline-list,.stack-list,.array-stack,.project-grid{display:grid;gap:18px}.project-card--live{display:grid;gap:14px}.project-card__summary,.inline-note{color:var(--text-muted)}.project-card__meta-list{display:flex;flex-wrap:wrap;gap:10px;color:var(--text-muted);font-size:.92rem}.project-workspace__header{align-items:end}.project-workspace__summary{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start}.project-meta-pill{display:inline-flex;align-items:center;border-radius:999px;padding:7px 12px;background:#fffc;border:1px solid var(--border)}.project-banner{display:flex;flex-wrap:wrap;gap:10px;align-items:center;border-radius:18px;padding:14px 16px;border:1px solid rgba(145,100,26,.22);background:#fff8eceb;color:#6f5320}.project-form{display:grid;gap:18px}.form-card{display:grid;gap:18px;border-radius:24px;padding:22px;border:1px solid var(--border);background:var(--bg-shell);box-shadow:var(--shadow-soft)}.form-card__header{display:grid;gap:8px}.form-grid{display:grid;gap:16px}.field{display:grid;gap:8px}.field span{font-size:.92rem;color:var(--text-muted)}.field input,.field select{width:100%;border-radius:16px;border:1px solid var(--border);background:#ffffffdb;color:inherit;font:inherit;padding:12px 14px}.field input:disabled,.field select:disabled{opacity:.72;cursor:not-allowed;background:#f5f0e8cc}.field small{min-height:1.2em;color:#9e4721}.field--checkbox{align-content:end;grid-template-columns:auto 1fr;align-items:center}.field--checkbox input{width:auto;margin:0}.array-row{display:grid;gap:14px;padding:16px;border-radius:20px;border:1px solid var(--border);background:var(--bg-card)}.ghost-button{display:inline-flex;align-items:center;justify-content:center;width:fit-content;border-radius:999px;border:1px solid var(--border-strong);background:transparent;color:inherit;cursor:pointer;font:inherit;padding:10px 16px}.ghost-button:hover:not(:disabled){border-color:#172033}.ghost-button:disabled{cursor:not-allowed;opacity:.72}.note-card--error{border-color:#9e472147;color:#8a3e1a}.stack-list__row,.timeline-card{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}.timeline-card{border-radius:18px;border:1px solid var(--border);background:var(--bg-card);padding:16px}.team-member-card{display:grid;gap:18px;border-radius:24px;padding:22px;border:1px solid var(--border);background:var(--bg-shell);box-shadow:var(--shadow-soft)}.team-member-card__header,.work-package-card__header,.team-member-card__edit-grid,.timesheet-entry-card__header{display:grid;gap:16px}.timesheet-entry-card{display:grid;gap:18px;border-radius:24px;padding:22px;border:1px solid var(--border);background:var(--bg-shell);box-shadow:var(--shadow-soft)}.timesheet-chip-list{display:flex;flex-wrap:wrap;gap:10px}.funding-layout,.remediation-month-grid,.remediation-entry-list,.funding-config-card,.funding-config-card__header,.funding-editor__row-actions{display:grid;gap:16px}.funding-config-card__header{align-items:center}.work-package-card,.work-package-task-row{display:grid;gap:18px}.work-package-card{border-radius:24px;padding:22px;border:1px solid var(--border);background:var(--bg-shell);box-shadow:var(--shadow-soft)}.work-package-card__edit-grid,.work-package-task-actions,.work-package-member-list,.work-package-task-list{display:grid;gap:16px}.work-package-member-list{max-height:18rem;overflow:auto}.work-package-member-option{display:flex;gap:10px;align-items:start;border-radius:16px;border:1px solid var(--border);background:var(--bg-card);padding:12px 14px}.work-package-member-option input{margin:2px 0 0}.calendar-layout,.calendar-highlight-grid,.calendar-block-grid,.calendar-summary-grid,.timesheet-layout,.timesheet-entry-list,.timesheet-funding-grid,.timesheet-warning-list{display:grid;gap:18px}.calendar-highlight-card{display:grid;gap:10px;border-radius:18px;border:1px solid var(--border);background:var(--bg-card);padding:16px}.calendar-tag-list{display:flex;flex-wrap:wrap;gap:10px}.calendar-block-form{align-items:end}@media (min-width: 960px){.shell__body{grid-template-columns:minmax(0,1.8fr) minmax(280px,.9fr)}.shell__masthead{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);align-items:end}.page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-card{grid-column:span 2}.quick-login__grid,.project-grid,.calendar-layout,.calendar-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.timesheet-layout{grid-template-columns:minmax(320px,.95fr) minmax(0,1.1fr);align-items:start}.timesheet-funding-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid{grid-template-columns:minmax(280px,.85fr) minmax(0,1.2fr)}.team-member-card__edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.funding-layout{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);align-items:start}.work-package-card__edit-grid,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.array-row{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:start}.array-row--funding{grid-template-columns:.8fr 1.4fr .8fr auto auto}.work-package-task-row{grid-template-columns:minmax(0,1fr) minmax(220px,.6fr) auto;align-items:end}}
