.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:18px;align-items:start}.project-state .section-head{margin-top:0;align-items:start;gap:10px}.project-state h2{font-size:20px;margin:6px 0 0}.project-state .eyebrow{letter-spacing:1px;text-transform:none;overflow-wrap:anywhere}.project-version{margin:4px 0 12px}.track-row{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.track-chip{font-size:12px;border-radius:6px;padding:6px 9px;background:#f0f3eb;color:#51614c}.track-chip b{display:block;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.track-chip.done{background:#e3eed3;color:#335a2c}.track-chip.rolling{background:#e5eef6;color:#2d5277}.track-chip.held{background:#f8ebd5;color:#8a5a14}.track-chip.empty-track{color:#a0ab9b}.project-stats{font-size:13px;margin:8px 0}.project-flags{margin:10px 0;padding-left:18px;font-size:12px;color:#8a5a14;line-height:1.7}.project-git{overflow-wrap:anywhere}.project-state footer{margin:12px 0 0}.collector-run{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin-bottom:6px}.collector-run details{flex:1 1 300px;font-size:12px}.collector-run summary{cursor:pointer}.collector-run li{line-height:1.6;margin:4px 0}@media(max-width:700px){.project-grid{grid-template-columns:1fr}.project-state{padding:16px}}
.install-panel{margin:18px 0 6px}.install-panel .section-head{margin-top:0}.install-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #edf0e9}.install-tracks{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.install-tracks .track-chip{padding:4px 8px}.install-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.install-row .install-actions{margin:0;justify-content:flex-end}.install-button{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:8px;border:1px solid #d1dacf;background:#fff;color:#244133;text-decoration:none;font-weight:600;white-space:nowrap}.install-button.primary-link{background:#274c3b;border-color:#274c3b;color:#fff}.install-button:hover{filter:brightness(1.05)}@media(max-width:700px){.install-row{flex-direction:column;align-items:stretch}.install-row .install-actions{justify-content:stretch}.install-row .install-button{flex:1;justify-content:center}}
.project-group{margin:26px 0}.project-group>h2,.project-group summary h2{font-size:22px;margin:0 0 4px}.project-group summary{cursor:pointer;list-style:none}.project-group summary h2{display:inline}.project-group summary::before{content:'▸ ';color:#71866a}.project-group[open] summary::before{content:'▾ '}
.mode-tabs button{min-height:40px}.decisions{margin:18px 0}.decision-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-top:1px solid #edf0e9}.decision-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.decision-actions select{width:auto;max-width:200px;padding:6px}.canonical h2{font-size:20px}.store-matrix{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.store-matrix>div{font-size:11px;background:#f7f9f3;border-radius:6px;padding:6px 8px}.store-matrix b{display:block;font-weight:600;margin-bottom:3px}.store-cell{display:inline-block;font-size:12px;border-radius:4px;padding:2px 6px;text-decoration:none}.store-cell.done{background:#e3eed3;color:#335a2c}.store-cell.rolling{background:#e5eef6;color:#2d5277}.store-cell.held{background:#f8ebd5;color:#8a5a14}.artifact-list{list-style:none;padding:0;margin:10px 0;font-size:13px}.artifact-list li{padding:5px 0;border-top:1px solid #f0f2ec}.link-button{border:0;background:none;padding:0 4px;color:#355d43;text-decoration:underline;font-size:12px}.handoff{font-size:12px;margin:8px 0}.handoff summary{cursor:pointer;color:#51614c}.handoff pre{white-space:pre-wrap;background:#f7f9f3;padding:10px;border-radius:6px;max-height:260px;overflow:auto;font-size:11px}@media(max-width:700px){.decision-row{flex-direction:column;align-items:stretch}.decision-actions{justify-content:flex-start}}
.installed-line{font-size:12px;color:#51614c;margin-top:3px}.install-row.state-update .installed-line b{color:#8a5a14}.install-row.state-update{background:#fffaf0}.installed-summary{font-size:14px;margin:0 0 6px}
.star-button{border:0;background:none;padding:0 6px 0 0;min-height:0;font-size:20px;line-height:1;color:#a0ab9b;cursor:pointer;vertical-align:-2px}.star-button.on{color:#c08a1a}.star-button:hover{color:#c08a1a}.install-name{display:flex;gap:4px;align-items:flex-start}.install-name .star-button{padding-top:1px}
.sort-tabs{align-items:center;margin:4px 0 0}.sort-tabs>span{font-size:13px;margin-right:4px}
.app-update{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:#fff7e6;border-color:#f0d9a8;margin:12px 0}.stale-note{font-size:13px;background:#fff7e6;color:#8a5a14;border-radius:6px;padding:8px 10px;margin:0 0 8px}
.sales-summary p{line-height:1.6}.sales-totals{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.sales-totals>div{flex:1 1 220px;background:#f7f9f3;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:4px}.sales-big{font-size:24px;font-weight:700;color:#274c3b}.sales-table{width:100%;border-collapse:collapse;font-size:13px}.sales-table th,.sales-table td{text-align:left;padding:8px 6px;border-top:1px solid #edf0e9;vertical-align:top}.sales-table th{font-weight:600;color:#51614c;font-size:12px}.table-scroll{overflow-x:auto;max-width:100%}.sales-setup li{line-height:1.6;margin:6px 0}
.sales-view>.panel{margin:0 0 16px}
