@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--paper:#f5f1e8;--paper-light:#faf7f0;--paper-darker:#ebe6d8;--rule:#d4cdbc;--rule-soft:#e3dccd;--ink:#1c1a14;--ink-soft:#4a463c;--ink-muted:#6b6759;--amber:#b8651b;--amber-soft:#d4823b;--amber-tint:#b8651b14;--green-ink:#426b3e;--green-tint:#426b3e14;--red-ink:#8c2f2a;--red-tint:#8c2f2a14;--font-serif:"Fraunces", Georgia, serif;--font-mono:"JetBrains Mono", "SF Mono", Consolas, monospace;--shadow-soft:0 1px 2px #1c1a140f, 0 2px 8px #1c1a140a;--shadow-lift:0 2px 4px #1c1a1414, 0 8px 20px #1c1a140f}*{box-sizing:border-box}html,body,#root{min-height:100vh;margin:0;padding:0}body{font-family:var(--font-serif);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:15px;font-weight:400;line-height:1.5}body:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(#1c1a1406 1px,#0000 1px);background-size:3px 3px;position:fixed;inset:0}#root{z-index:1;position:relative}.mono{font-family:var(--font-mono);letter-spacing:-.01em;font-size:.9em}.eyebrow{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);font-size:11px;font-weight:500}h1,h2,h3,h4{font-family:var(--font-serif);letter-spacing:-.015em;margin:0;font-weight:500}h1{font-size:28px;font-weight:600}h2{font-size:20px}h3{font-size:16px;font-weight:600}.app-frame{max-width:1400px;margin:0 auto;padding:32px 40px 80px}.app-header{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:32px;margin-bottom:24px;padding-bottom:24px;display:flex}.app-title h1{margin-bottom:4px}.app-title .eyebrow{margin-bottom:8px}.app-title .blurb{color:var(--ink-soft);font-feature-settings:"ss01" on;max-width:580px;font-size:14px;font-style:italic;line-height:1.5}.header-meta{font-family:var(--font-mono);color:var(--ink-muted);flex-direction:column;align-items:flex-end;gap:6px;font-size:11px;display:flex}.header-meta button{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);background:0 0;border:none;padding:2px 0;font-size:11px}.header-meta button:hover{color:var(--amber);-webkit-text-decoration-color:var(--amber);text-decoration-color:var(--amber)}.tabs{border-bottom:1px solid var(--rule);gap:4px;margin-bottom:24px;display:flex}.tab{font-family:var(--font-mono);letter-spacing:.05em;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-size:12px;transition:color .15s;position:relative}.tab:hover{color:var(--ink-soft)}.tab.active{color:var(--ink);border-bottom-color:var(--amber)}.tab .count{color:var(--ink-muted);margin-left:6px;font-weight:400;display:inline-block}.tab.active .count{color:var(--amber)}.panel{background:var(--paper-light);border:1px solid var(--rule);border-radius:4px;margin-bottom:16px;padding:20px 24px}.panel-header{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px;display:flex}.panel-header h2{font-size:18px}.panel-header .panel-meta{font-family:var(--font-mono);color:var(--ink-muted);font-size:11px}.card{background:var(--paper-light);border:1px solid var(--rule);border-radius:4px;margin-bottom:12px;padding:16px 18px;transition:border-color .15s,box-shadow .15s}.card:hover{border-color:var(--ink-muted);box-shadow:var(--shadow-soft)}.card.selected{border-color:var(--amber);background:var(--amber-tint);border-left-width:3px}.card-title{font-family:var(--font-serif);margin-bottom:4px;font-size:16px;font-weight:600}.card-dcid{font-family:var(--font-mono);color:var(--amber);word-break:break-all;margin-bottom:8px;font-size:11px}.card-description{color:var(--ink-soft);margin-bottom:12px;font-size:13px;line-height:1.5}.form-row{margin-bottom:12px}.form-row label{font-family:var(--font-mono);letter-spacing:.05em;color:var(--ink-muted);margin-bottom:4px;font-size:11px;display:block}.form-row .label-with-hint{justify-content:space-between;align-items:baseline;display:flex}.form-row .hint{font-family:var(--font-mono);color:var(--ink-muted);font-size:10px;font-style:italic}input[type=text],input[type=search],textarea,select{width:100%;font-family:var(--font-mono);background:var(--paper-light);border:1px solid var(--rule);color:var(--ink);border-radius:3px;padding:7px 10px;font-size:13px;transition:border-color .15s,background .15s}input[type=text]:focus,input[type=search]:focus,textarea:focus,select:focus{border-color:var(--amber);background:var(--paper);outline:none}textarea{resize:vertical;min-height:60px;line-height:1.4}.form-grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-grid-3{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}button.btn{font-family:var(--font-mono);letter-spacing:.04em;background:var(--paper-darker);border:1px solid var(--rule);color:var(--ink);cursor:pointer;border-radius:3px;padding:7px 14px;font-size:12px;transition:all .15s}button.btn:hover{background:var(--paper);border-color:var(--ink-muted)}button.btn.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}button.btn.primary:hover{background:var(--amber);border-color:var(--amber)}button.btn.danger{color:var(--red-ink);border-color:var(--rule)}button.btn.danger:hover{background:var(--red-tint);border-color:var(--red-ink)}button.btn.compact{padding:4px 8px;font-size:11px}button.btn-link{font-family:var(--font-mono);color:var(--amber);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}button.btn-link:hover{color:var(--ink)}.data-table-wrap{background:var(--paper-light);border:1px solid var(--rule);border-radius:4px;max-height:60vh;overflow:auto}table.data-table{border-collapse:collapse;font-family:var(--font-mono);width:100%;font-size:11px}table.data-table thead{z-index:1;position:sticky;top:0}table.data-table th{background:var(--paper-darker);text-align:left;color:var(--ink-soft);letter-spacing:.03em;border-bottom:1px solid var(--rule);white-space:nowrap;text-transform:uppercase;padding:8px 10px;font-size:10px;font-weight:600}table.data-table td{border-bottom:1px solid var(--rule-soft);white-space:nowrap;text-overflow:ellipsis;max-width:240px;color:var(--ink-soft);padding:6px 10px;overflow:hidden}table.data-table tr:hover td{background:var(--amber-tint);color:var(--ink)}table.data-table td.numeric{text-align:right;font-variant-numeric:tabular-nums}.chips{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.chip{background:var(--paper-darker);border:1px solid var(--rule);font-family:var(--font-mono);color:var(--ink-soft);border-radius:12px;align-items:center;gap:6px;padding:3px 8px;font-size:11px;display:inline-flex}.chip .key{color:var(--ink-muted)}.chip .val{color:var(--amber);font-weight:500}.chip button{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;padding:0 0 0 2px;font-size:13px;line-height:1}.chip button:hover{color:var(--red-ink)}.projection-summary{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px;display:grid}.summary-stat{background:var(--paper-light);border:1px solid var(--rule);border-radius:4px;padding:14px 16px}.summary-stat .label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:6px;font-size:10px}.summary-stat .value{font-family:var(--font-serif);color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:28px;font-weight:500}.summary-stat .sub{font-family:var(--font-mono);color:var(--ink-muted);margin-top:4px;font-size:11px}.projection-statvar{background:var(--paper-light);border:1px solid var(--rule);border-radius:4px;margin-bottom:12px}.projection-statvar-header{border-bottom:1px solid var(--rule);background:var(--paper-darker);justify-content:space-between;align-items:baseline;gap:16px;padding:12px 16px;display:flex}.projection-statvar-header .title{font-family:var(--font-serif);font-size:14px;font-weight:600}.projection-statvar-header .dcid{font-family:var(--font-mono);color:var(--amber);font-size:11px}.projection-statvar-header .stats{font-family:var(--font-mono);color:var(--ink-soft);font-size:11px}.projection-statvar-header .stats .ok{color:var(--green-ink)}.projection-statvar-header .stats .miss{color:var(--red-ink)}.note-card{background:var(--paper-light);border:1px solid var(--rule);border-left:3px solid var(--rule);border-radius:3px;margin-bottom:10px;padding:12px 16px}.note-card.question{border-left-color:var(--amber)}.note-card.decision{border-left-color:var(--green-ink)}.note-card.observation{border-left-color:var(--ink-soft)}.note-card.todo{border-left-color:var(--red-ink)}.note-header{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);justify-content:space-between;margin-bottom:6px;font-size:10px;display:flex}.note-header .kind{font-weight:600}.note-card.question .kind{color:var(--amber)}.note-card.decision .kind{color:var(--green-ink)}.note-card.observation .kind{color:var(--ink-soft)}.note-card.todo .kind{color:var(--red-ink)}.note-body{font-family:var(--font-serif);color:var(--ink);white-space:pre-wrap;font-size:14px;line-height:1.5}.empty{text-align:center;color:var(--ink-muted);font-style:italic;font-family:var(--font-serif);padding:48px 24px;font-size:15px}.empty p{margin:0 0 8px}.empty button{margin-top:16px}.row{align-items:center;gap:8px;display:flex}.row.gap-12{gap:12px}.row.gap-16{gap:16px}.row.between{justify-content:space-between}.row.wrap{flex-wrap:wrap}.stack>*+*{margin-top:8px}.stack-lg>*+*{margin-top:16px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.mt-16{margin-top:16px}.muted{color:var(--ink-muted)}.small{font-size:12px}.numeric{font-variant-numeric:tabular-nums}.toolbar{background:var(--paper-darker);border:1px solid var(--rule);border-radius:4px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:12px 16px;display:flex}.toolbar .left,.toolbar .right{align-items:center;gap:8px;display:flex}.toolbar .label{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted);font-size:11px}.two-col{grid-template-columns:360px 1fr;gap:24px;display:grid}@media (width<=1100px){.two-col{grid-template-columns:1fr}}.list-col{border-right:1px solid var(--rule);padding-right:24px}@media (width<=1100px){.list-col{border-right:none;border-bottom:1px solid var(--rule);padding-bottom:16px;padding-right:0}}.list-col h3{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:12px;font-size:11px;font-weight:500}.detail-col{min-width:0}.how-this-works{background:var(--paper-darker);border:1px solid var(--rule);border-left:3px solid var(--amber);border-radius:3px;margin-bottom:20px;overflow:hidden}.how-this-works.closed{border-left-color:var(--rule)}.how-toggle{cursor:pointer;width:100%;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 16px;font-size:11px;display:flex}.how-toggle:hover{color:var(--ink);background:var(--paper)}.how-toggle-marker{font-family:var(--font-mono);color:var(--amber)}.how-toggle-title{letter-spacing:.06em}.how-body{font-family:var(--font-serif);color:var(--ink-soft);max-width:760px;padding:0 20px 18px 36px;font-size:14px;line-height:1.55}.how-body p{margin:0 0 10px}.how-body ul,.how-body ol{margin:0 0 10px;padding-left:20px}.how-body li{margin-bottom:4px}.how-body strong{color:var(--ink);font-weight:600}.how-body em{color:var(--ink)}.how-body .mono{background:var(--paper);border-radius:2px;padding:1px 4px;font-size:.85em}.view-toggle{background:var(--paper-light);border:1px solid var(--rule);border-radius:3px;gap:0;display:inline-flex;overflow:hidden}.view-toggle-btn{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-muted);cursor:pointer;border:none;border-right:1px solid var(--rule);background:0 0;padding:6px 12px;font-size:11px}.view-toggle-btn:last-child{border-right:none}.view-toggle-btn:hover{color:var(--ink)}.view-toggle-btn.active{background:var(--ink);color:var(--paper)}.export-bar{background:var(--paper-light);border:1px solid var(--rule);border-left:3px solid var(--rule);border-radius:3px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:10px 16px;display:flex}.export-bar-info{flex-direction:column;gap:2px;display:flex}.export-bar-eyebrow{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);font-size:10px}.export-bar-actions{gap:8px;display:flex}.header-meta-group{flex-direction:column;align-items:flex-end;gap:2px;margin-top:6px;display:flex}.header-meta-eyebrow{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:2px;font-size:10px}.pivot-table{font-size:12px}.pivot-table thead th{background:var(--paper-darker);text-transform:none;letter-spacing:0;font-size:11px}.pivot-table tbody th{background:var(--paper-darker);text-align:left;font-family:var(--font-mono);color:var(--ink);border-bottom:1px solid var(--rule-soft);border-right:1px solid var(--rule);white-space:nowrap;padding:8px 10px;font-size:11px;font-weight:500}.pivot-corner{font-family:var(--font-mono);border-right:1px solid var(--rule);letter-spacing:.02em!important;color:var(--ink-muted)!important;font-size:10px!important;font-weight:400!important}.pivot-cell{position:relative}.pivot-count{color:var(--ink-muted);vertical-align:super;font-variant-numeric:tabular-nums;margin-left:4px;font-size:9px;display:inline-block}.pivot-table tr:hover td,.pivot-table tr:hover th{background:var(--amber-tint)}
