@font-face{font-family:Neue Montreal;src:url(/fonts/NeueMontreal-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{color-scheme:dark;--bg: #101113;--surface: #1a1c1f;--surface-2: #24272b;--field: #131518;--text: #eceef0;--muted: #9aa0a6;--line: rgba(255, 255, 255, .09);--accent: #8ab4f8;--danger: #f28b82;--glass: rgba(16, 17, 19, .75);--pad-x: clamp(1.25rem, 4vw, 4rem);--pad-y: clamp(1.25rem, 3vw, 2.5rem);--measure: 82ch;--radius: 16px;--radius-s: 10px}:root[data-theme=light]{color-scheme:light;--bg: #f3f3f1;--surface: #ffffff;--surface-2: #eceae6;--field: #f7f6f4;--text: #191a1c;--muted: #5f6368;--line: rgba(0, 0, 0, .1);--accent: #0b57d0;--danger: #c5221f;--glass: rgba(243, 243, 241, .78)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;padding:0 var(--pad-x) var(--pad-y);min-height:100svh;background:var(--bg);color:var(--text);font-family:Neue Montreal,Helvetica Neue,Arial,sans-serif;font-weight:400;font-size:1.0625rem;line-height:1.5;letter-spacing:-.005em;font-kerning:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{max-width:var(--measure);margin:0 auto}a{color:inherit;text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:from-font}a:hover{text-decoration-thickness:2px}.navbar{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:0 calc(-1 * var(--pad-x));padding:.8rem var(--pad-x);background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-logo{display:inline-flex;align-items:center;gap:.55rem;font-size:1.3rem;letter-spacing:-.02em;text-decoration:none;white-space:nowrap}.nav-logo:hover{text-decoration:none}.logo-mark{height:1.15em;width:auto;display:block}.nav-right{display:flex;align-items:center;gap:.8rem;font-size:.92rem}.masthead-col{max-width:var(--measure);margin:clamp(1.4rem,3.5vh,2.5rem) auto clamp(1.1rem,2.5vh,2rem)}.wordmark{margin:0;font-weight:400;font-size:clamp(1.9rem,4.6vw,3.2rem);letter-spacing:-.035em;line-height:1}.wordmark a{text-decoration:none}button,.button{font:inherit;letter-spacing:inherit;background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:999px;padding:.5em 1.2em;cursor:pointer;text-decoration:none;display:inline-block;text-align:center;white-space:nowrap;transition:background .12s ease,border-color .12s ease}button:hover,.button:hover{background:color-mix(in srgb,var(--surface-2) 82%,var(--text));border-color:color-mix(in srgb,var(--line) 40%,var(--text))}button.primary,.button.primary{background:var(--text);color:var(--bg);border-color:transparent}button.primary:hover,.button.primary:hover{background:color-mix(in srgb,var(--text) 84%,var(--bg))}button:disabled{opacity:.45;cursor:default}button.small,.button.small{font-size:.88rem;padding:.32em .85em}button.danger{background:transparent;color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}button.danger:hover{background:color-mix(in srgb,var(--danger) 14%,transparent);border-color:var(--danger)}.small{font-size:.88rem}input[type=text],input[type=password],input[type=date],textarea,select{font:inherit;letter-spacing:inherit;color:var(--text);background:var(--field);border:1px solid var(--line);border-radius:var(--radius-s);padding:.5em .7em;width:100%;margin:0;transition:border-color .12s ease}input:hover,textarea:hover,select:hover{border-color:color-mix(in srgb,var(--line) 30%,var(--muted))}textarea{resize:none;overflow:hidden;display:block}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0h10L5 6z' fill='%239aa0a6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75em center;padding-right:2.3em}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent)}.field{margin:0 0 1.05rem}.field>.label{display:block;font-size:.84rem;color:var(--muted);margin-bottom:.3rem}.row{display:grid;grid-template-columns:1fr 1fr;gap:0 1.1rem}.radios{display:flex;gap:1.4rem;align-items:center;min-height:2.3em}.radios label{display:inline-flex;gap:.45em;align-items:center;font-size:.95rem;cursor:pointer}input[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.05em;height:1.05em;border:1.5px solid var(--muted);border-radius:50%;margin:0;background:transparent;cursor:pointer;flex:none}input[type=radio]:checked{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 .2em var(--surface)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.5rem 1.2rem;margin:0 0 1rem}.card-title{font-size:1.25rem;font-weight:400;letter-spacing:-.015em;margin:0 0 .9rem}.card-title+.blurb{margin-top:-.55rem}.blurb{color:var(--muted);font-size:.95rem;max-width:64ch;margin:0 0 1.3rem}.quad-h{font-size:1rem;font-weight:400;margin:1.7rem 0 .2rem}.quad-note{color:var(--muted);font-size:.88rem;margin:0 0 .7rem;max-width:64ch}.meta-line{color:var(--muted);font-size:.9rem;margin:0 0 1rem}.item{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-s);padding:.85rem 1rem .5rem;margin-bottom:.75rem}.item .item{background:var(--surface)}.item .item .item{background:var(--surface-2)}.item>.remove{display:block;margin:.1rem 0 .45rem auto}.form-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin:0 0 1rem}.steps{display:flex;flex-wrap:nowrap;gap:.45rem;overflow-x:auto;scrollbar-width:none;min-width:0}.steps::-webkit-scrollbar{display:none}.select-row{display:flex;gap:.5rem;align-items:center}.select-row select{flex:1;min-width:0}button.plus{flex:none;width:2.3em;height:2.3em;padding:0;line-height:1;font-size:1rem}.collapse-summary{display:block;width:100%;text-align:left;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-s);padding:.85rem 1rem;white-space:normal}.collapse-summary:hover{background:color-mix(in srgb,var(--surface-2) 84%,var(--text))}.collapse-summary .review-row{display:grid}.collapse-hint{display:block;margin-top:.45rem;font-size:.85rem;color:var(--muted)}.step-chip{font-size:.88rem;padding:.32em .9em;background:transparent;color:var(--muted);border:1px solid var(--line)}.step-chip.current{background:var(--text);color:var(--bg);border-color:transparent}.toolbar-note{color:var(--muted);font-size:.9rem;padding-top:.35em}.flow-bar{position:sticky;bottom:0;display:flex;gap:.8rem;align-items:center;margin:1.2rem calc(-1 * var(--pad-x)) calc(-1 * var(--pad-y));padding:.9rem var(--pad-x) .9rem;background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}.flow-bar .danger{margin-left:auto}.error{color:var(--danger);font-size:.95rem}.review-section{border-top:1px solid var(--line);padding:.9rem 0 .6rem;margin-top:.9rem}.review-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.5rem}.review-head h3{margin:0;font-size:1.02rem;font-weight:400}.review-row{display:grid;grid-template-columns:11rem 1fr;gap:1rem;padding:.28rem 0;font-size:.95rem}.review-label{color:var(--muted)}.review-value{white-space:pre-wrap}.review-list{margin:.2rem 0 .4rem;padding-left:1.2rem;font-size:.95rem}.review-list li{margin-bottom:.3rem}.review-empty{color:var(--muted);font-size:.92rem;margin:.2rem 0 .4rem}.group-title{font-size:.86rem;color:var(--muted);margin:1.7rem 0 .5rem}.button-row{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}.project{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.5rem;margin:1.6rem 0 0}.head-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.head-row .head-buttons{display:flex;gap:.6rem;flex:none}.project>.head-row h2{margin:0;font-weight:400;font-size:1.55rem;letter-spacing:-.02em}.proj-desc{margin:.35rem 0 0;color:var(--muted);max-width:64ch}.objective{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1rem}.objective .head-row h3{margin:0;font-weight:400;font-size:1.2rem;letter-spacing:-.015em}.obj-desc{margin:.3rem 0 0;color:var(--muted);max-width:64ch;font-size:.95rem}.group-label{font-size:.9rem;color:var(--muted);margin:1.3rem 0 .5rem}.decisions{list-style:none;margin:1rem 0 .9rem;padding:0}.decisions li{margin:0 0 .55rem}.decision-link{display:flex;gap:1rem;align-items:flex-start;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-s);padding:.75rem 1rem;transition:background .12s ease,border-color .12s ease}.decision-link:hover{background:color-mix(in srgb,var(--surface-2) 84%,var(--text));border-color:color-mix(in srgb,var(--line) 40%,var(--text))}.decision-link .d-main{flex:1;min-width:0;display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:baseline;text-decoration:none}.decision-link .d-edit{flex:none}.d-date{font-size:.92rem;color:var(--muted);font-variant-numeric:tabular-nums}.d-meta{display:flex;flex-direction:column;gap:.05rem;font-size:.84rem;color:var(--muted);margin-top:.25rem}.row-actions{margin:.5rem 0 .2rem;display:flex;gap:.6rem}.project>.row-actions{border-top:1px solid var(--line);padding-top:1.1rem;margin-top:1.4rem}.empty-note{color:var(--muted);font-size:.95rem;margin:1rem 0 .6rem}.login{max-width:26rem;margin:2.5rem 0 0}.login button{width:100%;margin-top:.4rem}@media (max-width: 640px){.row{grid-template-columns:1fr}.decision-link{grid-template-columns:1fr;gap:.2rem}.head-row{flex-wrap:wrap}.review-row{grid-template-columns:1fr;gap:.1rem}.form-toolbar{flex-direction:column-reverse}}
