/* Assets 0.10: the Dealroom's warm paper, forest green and quiet hierarchy. */
:root:not([data-theme="dark"]) { --ks-bg:#f8f7f1; --ks-bg-card:#fff; --ks-bg-sunk:#f0f3ec; --ks-fg:#24352e; --ks-fg-body:#35483d; --ks-fg-secondary:#617066; --ks-fg-muted:#69796e; --ks-rule:#dce3d8; --ks-rule-strong:#b5c3b7; --ks-accent:#255946; --ks-accent-strong:#193f31; --ks-accent-dim:#edf4ed; --ks-focus:#ee6c37; --ks-indicator-teal:#255946; }
[data-theme="dark"] { --ks-accent:#95caae; --ks-accent-strong:#b2dfc5; --ks-accent-dim:#213e31; --ks-focus:#ee946b; }
body { font-size:14px; }
main { max-width:1180px; padding:42px 38px 80px; }
#nav { padding:0 max(24px,calc((100vw - 1104px)/2)); gap:22px; background:var(--ks-bg-card); }
.tab { padding:17px 0; font-size:13px; border-bottom-width:3px; }
.tab.utility { color:var(--ks-fg-muted); font-size:12px; }
.tab.utility:first-of-type { margin-left:auto; }
.tab[data-view="settings"] { margin-left:auto; }
.tab.active { color:var(--ks-accent); }
.eyebrow { font:500 10px/1.4 var(--ks-mono); letter-spacing:.17em; text-transform:uppercase; color:var(--ks-fg-secondary); margin:0 0 12px; }
h2 { font:500 clamp(30px,3vw,40px)/1.16 var(--ks-ui); letter-spacing:-1.6px; margin:0 0 10px; }
h3 { font:600 17px/1.35 var(--ks-ui); letter-spacing:-.3px; }
.lead { font-size:14px; max-width:670px; margin-bottom:26px; }
.page-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin-bottom:6px; }
.page-heading .lead { margin-bottom:20px; }
.page-heading>a, .button-link { display:inline-flex; align-items:center; justify-content:center; padding:11px 17px; border-radius:10px; border:1px solid var(--ks-rule-strong); text-decoration:none; font-size:12px; font-weight:600; white-space:nowrap; }
.page-heading>a { margin-top:28px; background:var(--ks-accent); color:var(--ks-bg-card); border-color:var(--ks-accent); }
.card { border:1px solid var(--ks-rule); border-radius:16px; padding:24px; box-shadow:0 4px 18px #16342403; margin-bottom:18px; }
.card.flat { border-top-color:var(--ks-rule); }
button { text-transform:none; letter-spacing:0; font-size:13px; border-radius:9px; min-height:42px; padding:10px 16px; }
button.sm { font-size:12px; padding:8px 12px; min-height:36px; }
button.primary { color:var(--ks-bg-card); }
.btnrow { gap:8px; }
label { font:500 12px/1.5 var(--ks-ui); text-transform:none; letter-spacing:0; margin-top:16px; }
input,select,textarea { min-height:42px; }
input[type=checkbox] { min-height:0; }
.ck { align-items:flex-start; padding:12px 0; border-bottom:1px solid var(--ks-rule); margin:0; line-height:1.55; }
.ck input { flex-shrink:0; margin-top:2px; }
.ck small { display:block; color:var(--ks-fg-secondary); font-size:12px; margin-top:3px; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid var(--ks-focus); outline-offset:3px; }
.pill { font:500 11px/1.5 var(--ks-ui); padding:3px 9px; letter-spacing:0; }
.status { font:400 12px/1.5 var(--ks-ui); letter-spacing:0; white-space:normal; overflow-wrap:anywhere; }
.stats { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; border:1px solid var(--ks-rule); border-radius:14px; overflow:hidden; background:var(--ks-bg-card); margin:8px 0 24px; }
.stat { padding:18px 20px; border:0; border-right:1px solid var(--ks-rule); border-radius:0; text-align:left; background:transparent; }
.stat:last-child { border:0; }.stat.active { background:var(--ks-accent-dim); }
.stat .n { font:500 28px/1.1 var(--ks-ui); letter-spacing:-1px; }.stat .l { margin-top:8px; font:400 12px var(--ks-ui); letter-spacing:0; text-transform:none; }
.filters { gap:10px; margin-bottom:16px; }.filters input[type=search] { background:var(--ks-bg-card); }
.dev { padding:17px 0; gap:15px; }.dev .ic { width:46px;height:46px;border-radius:12px;font-size:19px; }.dev .t b { font-size:14px; margin-bottom:5px; }.dev .t span { font:400 12px var(--ks-ui); }.dev .r .kv { margin-top:6px; }.dev .r { max-width:44%; }
.dev .t small { display:block; margin-top:5px; color:var(--ks-fg-secondary); font-size:11px; }.dev .next { font:500 12px var(--ks-ui); color:var(--ks-accent); }
.list-heading { display:flex; justify-content:space-between; padding-bottom:14px; border-bottom:1px solid var(--ks-rule); color:var(--ks-fg-muted); font-size:11px; text-transform:uppercase; letter-spacing:.09em; }
.flow { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; margin:8px 0 25px; border:1px solid var(--ks-rule); border-radius:15px; overflow:hidden; background:var(--ks-bg-card); }
.flow button { position:relative; text-align:left; border:0; border-radius:0; border-right:1px solid var(--ks-rule); padding:20px 18px 16px; color:var(--ks-fg-secondary); }
.flow button:last-child { border:0; }.flow button.on { background:var(--ks-accent-dim); box-shadow:inset 0 -3px var(--ks-accent); color:var(--ks-accent); }
.flow button:not(:nth-last-child(-n+2))::after { content:'›'; position:absolute;right:14px;top:21px; color:var(--ks-rule-strong); font-size:21px; }
.flow .count { display:block; font:500 30px/1 var(--ks-ui); letter-spacing:-1px; margin:16px 0 7px; color:var(--ks-fg); }
.flow .phase { font-size:12px; font-weight:600; }.flow small { display:block;font-size:10px;font-weight:400; }.flow button:last-child { background:var(--ks-bg); }.flow button:last-child.on { background:var(--ks-accent-dim); }
.filter-button { border:1px solid var(--ks-rule); color:var(--ks-fg-secondary); background:var(--ks-bg-card); }.filter-button.on { border-color:var(--ks-accent); color:var(--ks-accent);background:var(--ks-accent-dim); }
.sales-toolbar { display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin-bottom:16px; }.sales-toolbar input[type=search] { flex:1; min-width:180px; }.sales-toolbar details { position:relative;margin:0; }.sales-toolbar summary { list-style:none;border:1px solid var(--ks-rule);border-radius:9px;padding:10px 14px;background:var(--ks-bg-card);font-size:12px; }.export-popover { position:absolute; z-index:3;right:0;top:48px;min-width:260px;padding:20px;background:var(--ks-bg-card);border:1px solid var(--ks-rule);border-radius:12px;box-shadow:0 12px 30px #162f2420; }
.next-action { display:flex;align-items:center;justify-content:space-between;gap:20px;border-left:3px solid var(--ks-accent);background:var(--ks-accent-dim);padding:20px 22px;border-radius:0 12px 12px 0;margin:24px 0; }.next-action strong { display:block;font-size:16px;margin:4px 0 6px; }.next-action p { font-size:12px;margin:0;color:var(--ks-fg-secondary); }.next-action .eyebrow { margin:0;font-size:9px; }
.sale-progress { display:flex;gap:8px;list-style:none;padding:0;margin:22px 0; }.sale-progress li { flex:1;font-size:11px;border-top:3px solid var(--ks-rule);padding-top:9px;color:var(--ks-fg-muted); }.sale-progress li.current { border-color:var(--ks-accent);color:var(--ks-accent);font-weight:600; }.sale-progress li.past { border-color:var(--ks-rule-strong); }
.detail-columns { display:grid;grid-template-columns:minmax(0,1.6fr) minmax(270px,1fr);gap:22px;align-items:start;margin-top:24px; }.detail-columns>div { min-width:0; }.detail-columns .card { margin-top:0!important; }
.kvl { grid-template-columns:95px minmax(0,1fr);gap:12px 14px;font-size:13px; }.kvl>div { overflow-wrap:anywhere; }.kvl div:nth-child(odd) { font-size:12px; }
details.card { padding:0; }details.card>summary { padding:20px 24px;font-size:14px;font-weight:600;color:var(--ks-fg); }details.card>.disclosure-body { padding:0 24px 24px; }
details>summary { cursor:pointer; }details:not(.card)>summary { padding:8px 0;font-size:12px;color:var(--ks-fg-secondary); }
.section-nav { display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px; }.section-nav button { border:1px solid var(--ks-rule); background:var(--ks-bg-card);font-size:12px; }.section-nav button.on { color:var(--ks-bg-card);background:var(--ks-accent);border-color:var(--ks-accent); }
.settings-group { max-width:850px; }.settings-group .card { margin-bottom:16px; }.setting-description { color:var(--ks-fg-secondary);font-size:12px;margin:5px 0 12px; }
.prep-guide { counter-reset:prep;list-style:none;padding:0;margin:16px 0; }.prep-guide li { position:relative;padding:0 0 18px 34px;font-size:12px;line-height:1.6;color:var(--ks-fg-secondary); }.prep-guide li::before { counter-increment:prep;content:counter(prep);position:absolute;left:0;top:0;width:22px;height:22px;display:grid;place-items:center;border:1px solid var(--ks-rule);border-radius:50%;color:var(--ks-accent);font-size:11px; }.prep-guide b { display:block;color:var(--ks-fg);font-size:13px; }.secret-box { padding:14px;background:var(--ks-bg-sunk);border-radius:9px; }.secret-box output { font:600 22px var(--ks-mono);letter-spacing:.25em;display:block;margin:10px 0; }.privacy-note { font-size:12px;line-height:1.7;color:var(--ks-fg-secondary); }.privacy-note b { color:var(--ks-fg); }
.bigcam { min-height:230px;border:1px dashed var(--ks-rule-strong);border-radius:18px;background:var(--ks-bg-card); }.bigcam .ic { color:var(--ks-accent); }.bigcam .sub { max-width:280px;line-height:1.6; }.altrow { margin:16px 0 30px; }.chips .chip { min-height:40px;padding:9px 13px;font-size:13px; }.chip.on { background:var(--ks-accent);border-color:var(--ks-accent);color:var(--ks-bg-card); }
.money { font:500 30px var(--ks-ui);letter-spacing:-1px;color:var(--ks-accent); }.terms { font-size:13px; }.meta { overflow-wrap:anywhere; }.empty { padding:40px 20px;line-height:1.7; }
.docs { max-width:820px; }.docs details { border-bottom:1px solid var(--ks-rule);padding:12px 0; }.docs summary { font-size:15px!important;font-weight:500; }.docs p { font-size:13px; }.docs h2 { margin-bottom:25px; }
table { font-size:12px; }th { font-size:10px; }td { padding:14px 10px; }#v-apple table { background:var(--ks-bg-card);border:1px solid var(--ks-rule); }
.quiet-link { color:var(--ks-fg-secondary);font-size:12px; }.view { animation:appear .16s ease; }@keyframes appear { from { opacity:.6; transform:translateY(3px); } to { opacity:1;transform:none; } }
@media(min-width:800px) { #v-intake { max-width:760px;margin:auto; } }
@media(max-width:760px) { main { padding:26px 18px 65px; }#nav { padding:0 18px;gap:20px; }.tab { font-size:12px; }h2 { font-size:30px;letter-spacing:-1px; }.page-heading { gap:10px; }.page-heading>a { margin-top:24px;font-size:11px;padding:10px; }.card { padding:20px; }.detail-columns { grid-template-columns:1fr;gap:0; }.stats { grid-template-columns:repeat(3,minmax(0,1fr)); }.stat { padding:14px; }.flow { grid-template-columns:repeat(5,minmax(106px,1fr));overflow-x:auto; }.flow button { padding:16px 12px; }.flow .count { font-size:26px; }.flow small { font-size:9px; }.dev .r { max-width:100%; }.next-action { align-items:flex-start;flex-direction:column;gap:12px; }.detail-columns aside { order:0; }.kvl { grid-template-columns:80px minmax(0,1fr); }.sales-toolbar details { margin-left:auto; }.export-popover { max-width:calc(100vw - 36px); } }
@media(prefers-reduced-motion:reduce) { .view { animation:none; } * { scroll-behavior:auto!important; } }

.sales-toolbar details>summary { padding:10px 14px;white-space:nowrap; }
.room-details { margin:0; }.room-details>summary { font-size:15px!important;font-weight:600;color:var(--ks-fg)!important; }.room-details>summary .pill { margin-left:8px; }.room-details[open]>summary { margin-bottom:16px; }

@media(max-width:900px) { .detail-columns { grid-template-columns:1fr;gap:0; } }
@media(max-width:560px) {
  .flow { grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible; }
  .flow button { padding:14px 9px 12px; }.flow .phase { font-size:10px;display:block;min-height:28px; }
  .flow button::after { display:none; }.flow .count { font-size:25px;margin:8px 0 0; }.flow small { display:none; }
  .flow button:last-child { grid-column:1/-1;display:flex;align-items:center;gap:10px;border-top:1px solid var(--ks-rule);padding:10px 12px;border-radius:0 0 14px 14px; }
  .flow button:last-child .phase { min-height:0;font-size:11px; }.flow button:last-child .count { font-size:14px;margin:0; }.flow button:last-child small { display:block;margin-left:auto; }
  .sales-toolbar input[type=search] { order:-1;flex-basis:100%; }
}

.tab:not(.active):hover { border-bottom-color:transparent; }
.table-scroll { max-width:100%;overflow-x:auto;margin:12px 0; }
.table-scroll table { min-width:680px; }
#dMdm summary,#dAbm summary { padding:5px 0;font-size:12px;line-height:1.6; }
#dMdm details[open]>summary,#dAbm details[open]>summary { margin-bottom:12px; }
