/* PHASE 151 — Funding Studio styles */
#funding-app { background:#f8f7f4; }
.f151-wrap { padding:18px 20px 60px; max-width:1200px; margin:0 auto; }
.f151-head { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.f151-title { font-weight:900; font-size:1.25rem; color:#111827; }
.f151-sub { font-weight:600; font-size:.72rem; color:#9ca3af; margin-left:8px; letter-spacing:.04em; }
.f151-headstats { display:flex; gap:8px; flex-wrap:wrap; }
.f151-headstat { background:#fff; border:1px solid #e5e7eb; border-radius:999px; padding:5px 12px; font-size:.74rem; font-weight:700; color:#374151; }

.f151-nav { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:16px; border-bottom:2px solid #e5e7eb; padding-bottom:0; }
.f151-navbtn { border:none; background:none; padding:9px 14px 11px; font-size:.82rem; font-weight:700; color:#6b7280; cursor:pointer; border-bottom:3px solid transparent; margin-bottom:-2px; }
.f151-navbtn.on { color:#92400e; border-bottom-color:#b5871f; }
.f151-navbtn:hover { color:#111827; }

.f151-cards { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
@media (max-width:860px){ .f151-cards { grid-template-columns:1fr; } }
.f151-card { background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:14px 16px; margin-bottom:14px; }
.f151-cards .f151-card { margin-bottom:0; }
.f151-card-h { font-weight:800; font-size:.92rem; color:#111827; margin-bottom:10px; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.f151-right { margin-left:auto; }
.f151-lbl { display:block; font-size:.64rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; color:#9ca3af; margin:8px 0 4px; }
.f151-in { width:100%; border:1px solid #e5e7eb; background:#fff; border-radius:8px; padding:7px 9px; font-size:.82rem; color:#111827; }
.f151-in:focus { border-color:#b5871f; outline:none; }
.f151-goal { font-size:1.05rem; font-weight:800; }
.f151-num { max-width:110px; text-align:right; }
.f151-date { max-width:135px; }
.f151-btn { border:1px solid #d1d5db; background:#fff; border-radius:8px; padding:6px 12px; font-size:.78rem; font-weight:700; color:#374151; cursor:pointer; }
.f151-btn:hover { border-color:#9ca3af; }
.f151-primary { background:#b5871f; border-color:#b5871f; color:#fff; }
.f151-primary:hover { background:#a1761a; }
.f151-ic { border:1px solid #e5e7eb; background:#fff; border-radius:6px; width:26px; height:26px; font-size:.78rem; cursor:pointer; color:#374151; }
.f151-del:hover { border-color:#dc2626; color:#dc2626; }

.f151-meter { position:relative; height:14px; background:#f3f4f6; border-radius:8px; overflow:hidden; margin:12px 0 8px; }
.f151-meter-bar { position:absolute; inset:0 auto 0 0; background:#b5871f; border-radius:8px; transition:width .3s; }
.f151-meter-recv { background:#10b981; }
.f151-meter-legend { display:flex; gap:14px; flex-wrap:wrap; font-size:.72rem; font-weight:600; color:#4b5563; }
.f151-dot { display:inline-block; width:8px; height:8px; border-radius:50%; margin-right:4px; }

.f151-fact-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 12px; }
@media (max-width:600px){ .f151-fact-grid { grid-template-columns:1fr; } }

.f151-tablewrap { overflow-x:auto; }
.f151-table { width:100%; border-collapse:collapse; font-size:.8rem; min-width:760px; }
.f151-table th { text-align:left; font-size:.62rem; letter-spacing:.07em; text-transform:uppercase; color:#9ca3af; padding:8px 6px; border-bottom:1px solid #e5e7eb; }
.f151-table td { padding:4px 5px; border-bottom:1px solid #f3f4f6; vertical-align:middle; }
.f151-table .f151-in { border-color:transparent; background:transparent; }
.f151-table .f151-in:hover { border-color:#e5e7eb; background:#fff; }
.f151-table .f151-in:focus { border-color:#b5871f; background:#fff; }
.f151-stage { font-weight:700; color:var(--c); }
.f151-due td { background:#fef3c7 !important; }
.f151-rowbtns { white-space:nowrap; }
.f151-alert { background:#fffbeb; border:1px solid #fcd34d; color:#92400e; border-radius:10px; padding:10px 14px; font-size:.82rem; margin-bottom:14px; }

.f151-pipe { display:flex; align-items:center; gap:4px; overflow-x:auto; padding:4px 0; }
.f151-pipe-step { min-width:86px; text-align:center; background:#fafaf8; border:1px solid #e5e7eb; border-top:3px solid var(--c); border-radius:10px; padding:8px 6px; }
.f151-pipe-n { font-weight:900; font-size:1.15rem; color:var(--c); }
.f151-pipe-l { font-size:.62rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:#6b7280; }
.f151-pipe-arrow { color:#d1d5db; font-weight:800; }

.f151-kit-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 4px; border-bottom:1px solid #f3f4f6; flex-wrap:wrap; }
.f151-kit-row.done .f151-kit-label { text-decoration:line-through; color:#9ca3af; }
.f151-kit-label { font-weight:700; font-size:.85rem; color:#111827; }
.f151-kit-where { font-size:.73rem; color:#9ca3af; margin-top:2px; }
.f151-kit-btns { display:flex; gap:4px; }
.f151-kitstate { border:1px solid #e5e7eb; background:#fff; border-radius:999px; padding:4px 10px; font-size:.68rem; font-weight:700; color:#6b7280; cursor:pointer; }
.f151-kitstate.on { background:var(--c); border-color:var(--c); color:#fff; }
.f151-kit-note { font-size:.78rem; color:#6b7280; line-height:1.55; margin-bottom:10px; }
.f151-empty-sm { font-size:.8rem; color:#6b7280; line-height:1.6; background:#fafaf8; border:1px dashed #e5e7eb; border-radius:10px; padding:14px; }
.f151-details { margin-top:10px; font-size:.76rem; color:#6b7280; }
.f151-details summary { cursor:pointer; font-weight:700; }
.f151-hint-row { padding:5px 0; border-bottom:1px dashed #f3f4f6; }

.f151-tpl { border:1px solid #e5e7eb; border-radius:10px; padding:10px 12px; margin-bottom:8px; background:#fafaf8; }
.f151-tpl summary { cursor:pointer; display:flex; gap:10px; align-items:baseline; flex-wrap:wrap; font-size:.84rem; }
.f151-tpl-subj { font-size:.72rem; color:#9ca3af; font-style:italic; }
.f151-tpl-body { white-space:pre-wrap; font-family:inherit; font-size:.8rem; line-height:1.55; color:#374151; background:#fff; border:1px solid #e5e7eb; border-radius:8px; padding:12px; margin:10px 0; }
.f151-tpl-btns { display:flex; gap:8px; }

.f151-plat { display:block; border:1px solid #e5e7eb; border-radius:10px; padding:10px 12px; margin-bottom:8px; cursor:pointer; font-size:.84rem; }
.f151-plat.on { border-color:#b5871f; background:#fffbeb; }
.f151-plat-note { font-size:.73rem; color:#6b7280; margin-top:3px; line-height:1.5; }
.f151-truegoal { margin-top:12px; background:#111827; color:#fbbf24; border-radius:10px; padding:12px 14px; font-size:.92rem; }
.f151-truegoal .f151-sub { color:#9ca3af; }

.f151-tl { display:block; font-size:.8rem; color:#374151; padding:7px 4px; border-bottom:1px solid #f3f4f6; cursor:pointer; line-height:1.5; }
.f151-tl.done { color:#9ca3af; text-decoration:line-through; }

.f151-res-list { display:flex; flex-direction:column; }
.f151-res { display:flex; justify-content:space-between; align-items:center; padding:9px 6px; font-size:.83rem; font-weight:600; color:#1f2937; text-decoration:none; border-bottom:1px solid #f3f4f6; border-radius:6px; }
.f151-res:hover { background:#fffbeb; color:#92400e; }
.f151-res-arrow { color:#b5871f; }

@media (max-width:720px){
  .f151-wrap { padding:12px 10px 80px; }
  .f151-kit-row { flex-direction:column; align-items:flex-start; }
}
