:root{--bg:#0d1117;--bg-card:#161b22;--bg-surface:#1c2128;--bg-input:#0d1117;--text:#c9d1d9;--text-heading:#f0f6fc;--text-muted:#8b949e;--accent:#58a6ff;--accent-light:#a5d6ff;--accent-bg:#58a6ff1f;--green:#3fb950;--orange:#d29922;--red:#f85149;--purple:#bc8cff;--border:#30363d;--radius:8px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}.app-layout{min-height:100vh;display:flex}.sidebar{background:var(--bg-card);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:240px;padding:20px 0;display:flex}.sidebar-header{border-bottom:1px solid var(--border);padding:0 20px 20px}.sidebar-header h1{color:var(--accent);margin:0;font-size:22px;font-weight:700}.sidebar-subtitle{color:var(--text-muted);font-size:12px}.nav-list{flex:1;padding:12px 0;list-style:none}.nav-link{color:var(--text-muted);align-items:center;gap:10px;padding:10px 20px;font-size:14px;text-decoration:none;transition:all .15s;display:flex}.nav-link:hover{color:var(--text);background:var(--accent-bg)}.nav-link.active{color:var(--accent);background:var(--accent-bg);border-right:2px solid var(--accent)}.nav-icon{text-align:center;width:20px;font-size:16px}.logout-btn{border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius);cursor:pointer;background:0 0;margin:0 20px;padding:8px;font-size:13px}.logout-btn:hover{color:var(--red);border-color:var(--red)}.main-content{flex:1;height:100vh;overflow-y:auto}.page{max-width:1000px;padding:32px}.page h2{color:var(--text-heading);margin-bottom:20px;font-size:24px}.page h3{color:var(--text-heading);margin:24px 0 12px;font-size:18px}.page h4{color:var(--text-heading);margin:16px 0 8px;font-size:15px}.page-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.page-header h2{margin-bottom:0}.page-desc{color:var(--text-muted);margin-bottom:20px}button{border-radius:var(--radius);cursor:pointer;background:var(--accent);color:#fff;border:none;padding:8px 16px;font-size:14px;font-weight:500;transition:all .15s}button:hover{opacity:.9}button:disabled{opacity:.5;cursor:not-allowed}.btn-link{color:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);background:0 0;padding:6px 12px;font-size:13px;font-weight:500;text-decoration:none;display:inline-block}.btn-link:hover{background:var(--accent-bg)}input,textarea,select{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);padding:10px 14px;font-family:inherit;font-size:14px}input:focus,textarea:focus{border-color:var(--accent);outline:none}label{color:var(--text-muted);margin-top:12px;margin-bottom:4px;font-size:13px;display:block}.form-actions{justify-content:flex-end;gap:12px;margin-top:16px;display:flex}.form-actions button:first-child{border:1px solid var(--border);color:var(--text);background:0 0}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--bg-card);border:1px solid var(--border);text-align:center;border-radius:12px;width:380px;padding:40px}.login-card h1{color:var(--accent);margin-bottom:4px;font-size:32px}.login-subtitle{color:var(--text-muted);margin-bottom:24px}.login-card form{flex-direction:column;gap:12px;display:flex}.login-card button{width:100%;margin-top:8px;padding:12px}.toggle-auth{color:var(--accent);cursor:pointer;margin-top:16px;font-size:13px}.error-text{color:var(--red);font-size:13px}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.stat-card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);padding:20px}.stat-icon{margin-bottom:8px;font-size:28px;display:block}.stat-label{color:var(--text-heading);font-size:16px;font-weight:600}.stat-desc{color:var(--text-muted);font-size:13px}.stat-value{color:var(--text-heading);margin:8px 0 4px;font-size:28px;font-weight:700}.stat-card button{margin-top:14px}.org-banner{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);margin-bottom:24px;padding:24px}.org-banner h3{color:var(--text-heading);margin-bottom:8px}.org-banner p{color:var(--text-muted);font-size:14px}.activity-list{flex-direction:column;gap:1px;display:flex}.activity-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;margin-bottom:4px;padding:12px 16px;display:flex}.activity-item strong{color:var(--text-heading);white-space:nowrap;font-size:14px}.activity-item span{color:var(--text-muted);flex:1;font-size:13px}.activity-item small{color:var(--text-muted);font-size:12px}.empty-text{color:var(--text-muted);padding:20px 0;font-size:14px}.search-bar{gap:12px;margin-bottom:24px;display:flex}.search-bar input{flex:1}.results-grid{flex-direction:column;gap:16px;display:flex}.grant-card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);padding:20px}.grant-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.grant-card h4{color:var(--text-heading);margin:0 0 4px}.funder-name{color:var(--text-muted);font-size:14px}.score-badge{white-space:nowrap;border-radius:20px;padding:4px 10px;font-size:13px;font-weight:600}.score-badge.high{color:var(--green);background:#3fb95026}.score-badge.mid{color:var(--orange);background:#d2992226}.score-badge.low{color:var(--red);background:#f8514926}.amount-range{color:var(--green);margin-bottom:8px;font-size:14px;font-weight:500}.grant-why{color:var(--text-muted);margin-bottom:12px;font-size:14px}.grant-actions{align-items:center;gap:12px;display:flex}.pipeline-table{border-collapse:collapse;width:100%}.pipeline-table th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border);padding:10px 14px;font-size:13px}.pipeline-table td{border-bottom:1px solid var(--border);padding:12px 14px;font-size:14px}.pipeline-table select{width:auto;min-width:112px}.row-actions{align-items:center;gap:6px;display:flex}.pipeline-wrap{overflow-x:auto}.status-badge{border-radius:12px;padding:3px 10px;font-size:12px;font-weight:500}.split-layout{gap:0;max-width:none;height:100vh;padding:0;display:flex}.split-sidebar{border-right:1px solid var(--border);flex-shrink:0;width:280px;padding:20px;overflow-y:auto}.split-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.split-header h3{margin:0}.split-main{flex-direction:column;flex:1;padding:24px;display:flex;overflow-y:auto}.loi-item{border-radius:var(--radius);cursor:pointer;border:1px solid #0000;margin-bottom:4px;padding:12px}.loi-item:hover{background:var(--accent-bg)}.loi-item.active{background:var(--accent-bg);border-color:var(--accent)}.loi-item strong{color:var(--text-heading);font-size:14px;display:block}.loi-item small{color:var(--text-muted);font-size:12px}.loi-editor{flex-direction:column;flex:1;display:flex}.loi-toolbar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.loi-toolbar h3{margin:0}.toolbar-actions{gap:8px;display:flex}.loi-meta{color:var(--text-muted);margin-bottom:16px;font-size:13px}.loi-body{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);white-space:pre-wrap;flex:1;padding:16px;font-size:14px;line-height:1.7;overflow-y:auto}.new-loi-form{max-width:400px}.new-loi-form h3,.new-loi-form input{margin-bottom:12px}.proposal-form{max-width:560px}.proposal-form label{color:var(--text-muted);margin:0 0 4px;font-size:13px;display:block}.proposal-form input,.proposal-form select,.proposal-form textarea{width:100%;margin-bottom:12px}.proposal-form textarea,.proposal-editor{min-height:140px;font:inherit}.proposal-row{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;display:grid}.proposal-editor{background:var(--bg-card);width:100%;color:var(--text);border:1px solid var(--border);border-radius:var(--radius);resize:vertical;flex:1;min-height:360px;padding:16px;font-size:14px;line-height:1.7}.budget-wrap{margin-bottom:16px;overflow-x:auto}.budget-table{border-collapse:collapse;width:100%;font-size:13px}.budget-table th,.budget-table td{border-bottom:1px solid var(--border);text-align:right;white-space:nowrap;padding:6px 10px}.budget-table th:first-child,.budget-table td:first-child{text-align:left;white-space:normal}.budget-table .budget-strong td{color:var(--text-heading);font-weight:600}.budget-checks{margin:0 0 16px;padding:0;font-size:13px;list-style:none}.budget-checks li{margin-bottom:4px}.check-ok{color:var(--green);font-weight:600}.check-over{color:var(--red);font-weight:600}.chat-area{flex-direction:column;display:flex}.agent-header{border-bottom:1px solid var(--border);margin-bottom:16px;padding-bottom:16px}.agent-header h3{margin:0 0 4px}.agent-header p{color:var(--text-muted);font-size:14px}.chat-messages{flex-direction:column;flex:1;gap:12px;padding-bottom:16px;display:flex;overflow-y:auto}.chat-bubble{white-space:pre-wrap;border-radius:12px;max-width:80%;padding:12px 16px;font-size:14px;line-height:1.6}.chat-bubble.user{background:var(--accent-bg);color:var(--text);align-self:flex-end}.chat-bubble.assistant{background:var(--bg-card);border:1px solid var(--border);align-self:flex-start}.chat-bubble.thinking{color:var(--text-muted);font-style:italic}.chat-input{border-top:1px solid var(--border);gap:12px;padding-top:16px;display:flex}.chat-input input{flex:1}.controls-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.control-card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);padding:16px}.control-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.control-badge{background:var(--accent-bg);color:var(--accent);border-radius:12px;padding:2px 8px;font-size:11px;font-weight:600}.control-card p{color:var(--text-muted);font-size:13px}.report-box{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);white-space:pre-wrap;padding:20px;font-size:14px;line-height:1.7}.org-form{max-width:600px}.org-form textarea{resize:vertical}.org-display{max-width:700px}.org-section{margin-bottom:24px}.org-section h3{margin-bottom:8px}.org-section p{color:var(--text-muted)}.org-section ul{padding-left:20px}.org-section li{color:var(--text);margin-bottom:4px;font-size:14px}.empty-state{text-align:center;padding:60px 20px}.empty-icon{margin-bottom:16px;font-size:48px;display:block}.empty-state h3{color:var(--text-heading)}.empty-state p{color:var(--text-muted)}.menu-toggle{display:none}@media (width<=768px){.app-layout{flex-direction:column}.menu-toggle{z-index:50;text-align:left;background:var(--bg-card);width:100%;color:var(--text);border:0;border-bottom:1px solid var(--border);cursor:pointer;border-radius:0;padding:12px 16px;font-size:15px;font-weight:600;display:block;position:sticky;top:0}.sidebar{border-right:0;border-bottom:1px solid var(--border);width:100%;padding:8px 0 16px;display:none}.sidebar.open{display:flex}.main-content{height:auto;overflow-y:visible}.split-sidebar{width:100%}.split-layout{flex-direction:column}}.field-help{color:var(--text-muted);margin:-8px 0 12px;font-size:12px}.letter-actions{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 12px;display:flex}.letter-text{min-height:420px}.application h2{margin-bottom:4px}.application a{color:var(--accent);text-decoration:none}.brief-text{min-height:140px}.app-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-surface);margin-bottom:16px;padding:16px 20px}.app-section h3{color:var(--text-heading);margin:0 0 8px}.app-section details{margin-bottom:12px}.app-section summary{cursor:pointer;color:var(--accent);margin-bottom:8px;font-size:13px}.app-callout{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.app-callout .stat-desc{margin:4px 0 0}.job-banner{z-index:50;flex-direction:column;gap:6px;padding:8px 32px 0;display:flex;position:sticky;top:0}.job-banner-item{border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--border);align-items:center;gap:12px;padding:10px 14px;font-size:14px;display:flex}.job-banner-item.ok{border-color:var(--green)}.job-banner-item.failed{border-color:var(--red)}.job-banner-item span{flex:1}.job-banner-item a{color:var(--accent);font-weight:600}.job-banner-close{color:var(--text-muted);background:0 0;padding:2px 6px}.org-form-heading{color:var(--text-heading);margin:24px 0 8px}.app-hint{border-left:3px solid var(--accent);margin-bottom:16px;padding:6px 12px}.org-form .field-help{margin:4px 0 14px}.check-warn{color:var(--orange);font-weight:600}.grant-facts{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:12px;display:grid}.grant-facts input{width:100%}.send-list{margin:0 0 12px;padding-left:20px;line-height:1.8}a.button{border-radius:var(--radius);background:var(--accent);color:#fff;padding:8px 16px;font-size:14px;font-weight:500;text-decoration:none;display:inline-block}.button-secondary{border:1px solid var(--border);color:var(--text);background:0 0}.next-card{border:1px solid var(--accent);background:var(--accent-bg);border-radius:var(--radius);margin-bottom:24px;padding:18px 20px}.next-card h3{color:var(--text-heading);margin:6px 0}.next-card p{margin-bottom:12px}.next-badge{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent);vertical-align:middle;border-radius:10px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.app-section.app-next{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.matches-list{gap:12px;margin-bottom:24px;display:grid}.match-card{border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.match-card.match-apply{border-color:var(--green)}.match-card.match-consider{border-color:var(--orange)}.match-card p{margin:4px 0 8px}.match-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.match-pill{text-transform:uppercase;letter-spacing:.04em;border:1px solid;border-radius:10px;padding:1px 8px;font-size:11px;font-weight:700}.match-pill-apply{color:var(--green)}.match-pill-consider{color:var(--orange)}.steps-list{margin:0 0 24px;padding:0;list-style:none}.steps-list li{border-bottom:1px solid var(--border);gap:12px;padding:10px 0;display:flex}.steps-list li a{color:var(--text-heading);text-decoration:none}.steps-list input[type=checkbox]{width:auto;accent-color:var(--accent);flex:none;margin-top:4px}.steps-list .step-body{flex:1;min-width:0}.step-toggle{text-align:left;width:100%;font:inherit;color:var(--text-heading);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;display:block}.step-toggle:hover{color:var(--accent)}.step-meta{margin-top:2px;display:block}.choice-row{flex-wrap:wrap;gap:0 24px;display:flex}.app-section .field-help{margin-top:6px}.app-section a{color:var(--accent);text-decoration:none}.app-section a:hover{text-decoration:underline}.app-section progress{width:100%;height:8px;accent-color:var(--green);margin:8px 0;display:block}.step-mark{text-align:center;color:var(--text-muted);flex:0 0 22px;font-weight:700}.step-done .step-mark{color:var(--green)}.step-next .step-mark,.step-next strong{color:var(--accent)}.deadline-list{padding:0;list-style:none}.deadline-list li{border-bottom:1px solid var(--border);padding:8px 0}.deadline-list li a{color:var(--accent);text-decoration:none}.deadline-list .budget-checks{margin:4px 0 0}.setup{max-width:640px}.setup-steps{counter-reset:s;flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.setup-steps li{counter-increment:s;color:var(--text-muted);border:1px solid var(--border);border-radius:12px;padding:3px 10px;font-size:13px}.setup-steps li:before{content:counter(s) ". "}.setup-steps li.step-next{color:var(--accent);border-color:var(--accent)}.setup-steps li.step-done{color:var(--green)}.setup .form-group input,.setup .form-group textarea,.add-grant input{width:100%}.form-row{flex-wrap:wrap;gap:12px;display:flex}.form-row>*{flex:160px}.choice{color:var(--text);cursor:pointer;align-items:flex-start;gap:10px;margin:8px 0;font-size:14px;display:flex}.choice input{width:auto;margin-top:3px}.send-status{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:12px;padding-top:12px;display:flex}.send-status>p{flex-basis:100%;margin:0}.send-status label{align-items:center;gap:6px;margin:0;display:flex}.send-status input[type=number]{width:80px}.send-outcome{flex-wrap:wrap;flex-basis:100%;gap:8px;display:flex}.send-outcome input{flex:200px}.nav-group-toggle{text-align:left;width:100%;color:var(--text-muted);background:0 0;border-radius:0;padding:10px 20px;font-size:13px}.nav-sub .nav-link{padding-left:36px;font-size:13px}.add-grant{margin-bottom:20px}.add-grant .form-row>*{flex:140px}.deadline-cell{white-space:nowrap;font-size:12px}@media (width<=640px){.next-card{padding:14px}.send-status label{flex-basis:100%}}
