/* RECATOOLS — Cap Table Simulator */
.ct-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 1rem; }
@media (max-width: 700px) { .ct-grid { grid-template-columns: 1fr; } }
.ct-section { background: #fafaf9; border: 1px solid #ebebeb; border-radius: 10px; padding: 1rem; }
.ct-section.ct-section--full { grid-column: 1 / -1; }
.ct-section h3 { margin: 0 0 .75rem; font-size: .9rem; font-weight: 700; color: #1a1814; }
.ct-row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: .5rem; margin-bottom: .5rem; }
@media (max-width: 640px) { .ct-row { grid-template-columns: 1fr; } }
.input-row { margin-bottom: .5rem; }
.input-row label { display: block; font-size: .72rem; font-weight: 600; color: #6b6760; margin-bottom: .2rem; }
.input-row .input-prefix-wrap { display: flex; align-items: stretch; border: 1px solid #ebebeb; border-radius: 6px; background: #fff; overflow: hidden; }
.input-row .ipx-label { padding: .4rem .55rem; background: #f0ede9; font-size: .75rem; font-weight: 600; color: #6b6760; border-right: 1px solid #ebebeb; }
.input-row .ipx-label.ipx-suffix { border-left: 1px solid #ebebeb; border-right: none; }
.input-row input[type="number"] { flex: 1; border: none; padding: .4rem .55rem; font-size: .85rem; font-family: inherit; background: transparent; color: #1a1814; width: 100%; box-sizing: border-box; }
.input-row input:focus { outline: none; box-shadow: inset 0 0 0 2px #E8472F; }
.calc-btn { width: 100%; margin: 1rem 0; padding: .75rem 1.25rem; background: #E8472F; color: #fff; border: none; border-radius: 8px; font-size: .95rem; font-weight: 700; cursor: pointer; font-family: inherit; }
.calc-btn:hover { background: #c8391f; }
.cap-result-bar { display: flex; height: 30px; margin-top: 1rem; border-radius: 6px; overflow: hidden; border: 1px solid #ebebeb; }
.cap-segment { display: flex; align-items: center; justify-content: center; font-size: .68rem; font-weight: 700; color: #fff; }
.cap-segment.cs-founder1 { background: #1e40af; }
.cap-segment.cs-founder2 { background: #2563eb; }
.cap-segment.cs-pool { background: #f59e0b; }
.cap-segment.cs-safe { background: #7c3aed; }
.cap-segment.cs-investor { background: #16a34a; }
.res-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: .5rem; margin-top: 1rem; }
@media (max-width: 900px) { .res-grid { grid-template-columns: repeat(2, 1fr); } }
.res-tile { padding: .75rem; background: #fafaf9; border: 1px solid #ebebeb; border-radius: 8px; text-align: center; }
.res-tile.res-tile--f1 { background: rgba(30,64,175,.08); border-color: rgba(30,64,175,.3); }
.res-tile.res-tile--f2 { background: rgba(37,99,235,.08); border-color: rgba(37,99,235,.3); }
.res-tile.res-tile--pool { background: rgba(245,158,11,.08); border-color: rgba(245,158,11,.3); }
.res-tile.res-tile--safe { background: rgba(124,58,237,.08); border-color: rgba(124,58,237,.3); }
.res-tile.res-tile--inv { background: rgba(22,163,74,.08); border-color: rgba(22,163,74,.3); }
.res-tile .res-tile-label { font-size: .6rem; font-weight: 700; color: #6b6760; text-transform: uppercase; letter-spacing: .05em; }
.res-tile .res-tile-value { font-size: 1.1rem; font-weight: 800; font-family: 'IBM Plex Serif', serif; color: #0d1b2a; margin-top: .15rem; }
.res-tile .res-tile-sub { font-size: .65rem; color: #6b6760; margin-top: .15rem; }
.safe-table-wrap { margin-top: 1rem; overflow-x: auto; border: 1px solid #ebebeb; border-radius: 10px; }
.safe-table { width: 100%; border-collapse: collapse; font-size: .82rem; }
.safe-table thead tr { background: #fafaf9; border-bottom: 1px solid #ebebeb; }
.safe-table th { padding: .55rem .75rem; font-size: .65rem; text-transform: uppercase; letter-spacing: .05em; color: #6b6760; font-weight: 700; text-align: right; }
.safe-table th:first-child { text-align: left; }
.safe-table td { padding: .5rem .75rem; border-bottom: 1px solid #f3f1ec; }

/* cache-buster: 2026-05-24T05:06:05Z */
