/* Negotiation cheat sheet (v2). Replaces the page's old inline <style>. */

body.cheat-sheet-page { background: var(--paper); }

/* Hero preview */
.ng-unit { font-size: .36em; letter-spacing: -0.01em; color: var(--parchment-2); }
.ng-levers { list-style: none; margin: 22px 0 0; padding: 0; border-top: 1px solid var(--hair-stage); }
.ng-levers li { padding: 11px 0; border-bottom: 1px solid var(--hair-stage); font-size: 15px; color: var(--parchment); display: flex; align-items: center; gap: 12px; }
.ng-levers li::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--kesef); flex: none; }
.ng-ask { font: 300 22px/1.3 var(--font-display); letter-spacing: -0.01em; color: var(--parchment); margin: 22px 0 0; font-style: italic; }

/* Category picker */
.ng-work { padding-bottom: 48px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; flex-wrap: wrap; margin-bottom: 32px; }
.ng-work .ks-h2 { margin-top: 4px; }
.filter-row { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.search-input { position: relative; }
.search-input::before { content: ''; position: absolute; left: 16px; top: 50%; width: 12px; height: 12px; border: 1.5px solid var(--ink-3); border-radius: 50%; transform: translateY(-60%); pointer-events: none; }
.search-input::after { content: ''; position: absolute; left: 27px; top: 29px; width: 6px; height: 1.5px; background: var(--ink-3); transform: rotate(45deg); pointer-events: none; }
.cheat-sheet-page #category-search { width: min(340px, 72vw); min-height: 48px; padding: 0 16px 0 42px; border-radius: var(--r-pill); border: 1px solid var(--hair-strong); background: var(--paper-2); color: var(--ink); font: 400 16px/1 var(--font-sans); }
.cheat-sheet-page #category-search:focus { outline: none; border-color: var(--ink); box-shadow: 0 0 0 3px var(--kesef-soft); }

.category-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 32px; border-top: 1px solid var(--hair); }
.category-card { display: grid; grid-template-columns: 36px 1fr 44px; grid-template-areas: 'num title btn' 'num tag btn' 'num meta btn'; column-gap: 12px; align-items: start; padding: 22px 0; border-bottom: 1px solid var(--hair); cursor: pointer; background: transparent; border-radius: 0; transition: background .2s var(--ease); }
.category-card:hover h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.category-icon { grid-area: num; font: 400 13px/1.9 var(--font-mono); color: var(--ink-3); }
.category-card h3 { grid-area: title; font: 400 22px/1.2 var(--font-display); letter-spacing: -0.01em; margin: 0; color: var(--ink); }
.category-tagline { grid-area: tag; margin: 6px 0 0; font-size: 14.5px; line-height: 1.45; color: var(--ink-2); }
.meta-row { grid-area: meta; margin-top: 8px; }
.meta-chip { font-size: 13px; color: var(--ink-3); font-variant-numeric: tabular-nums; }
.open-category { grid-area: btn; align-self: center; width: 44px; height: 44px; display: grid; place-items: center; border-radius: var(--r-pill); border: 1px solid var(--hair); background: transparent; color: var(--ink); cursor: pointer; transition: background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease); }
.open-category svg { width: 16px; height: 16px; }
.category-card:hover .open-category { background: var(--ink); border-color: var(--ink); color: var(--paper-2); }

/* Sheet */
.ng-sheet-wrap { padding-top: 0; }
.sheet-panel { background: var(--paper-2); border: 1px solid var(--hair); border-radius: var(--r-panel); overflow: hidden; scroll-margin-top: calc(var(--header-h) + 24px); }
.panel-header { display: flex; justify-content: space-between; align-items: start; gap: 24px; flex-wrap: wrap; padding: clamp(22px, 3vw, 36px); border-bottom: 1px solid var(--hair); }
.panel-header .title { font: 300 clamp(32px, 3.6vw, 48px)/1.05 var(--font-display); letter-spacing: -0.025em; color: var(--ink); margin: 4px 0 0; }
.ng-subtitle { color: var(--ink-2); font-size: 16px; line-height: 1.55; max-width: 44em; margin: 12px 0 0; }
.panel-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.sheet-content { padding: clamp(22px, 3vw, 36px); display: grid; gap: 36px; scroll-margin-top: calc(var(--header-h) + 24px); }
.empty-state { color: var(--ink-2); font-size: 15px; }
.section-block h3 { font: 400 clamp(22px, 2vw, 26px)/1.2 var(--font-display); letter-spacing: -0.012em; color: var(--ink); margin: 0 0 14px; }
.section-block > p { margin: 0; font-size: 16px; line-height: 1.6; color: var(--ink-2); max-width: 46em; }
.list-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; border-top: 1px solid var(--hair); }
.list-item { display: grid; grid-template-columns: 10px 1fr 44px; gap: 12px; align-items: center; min-height: 52px; padding: 4px 0; border-bottom: 1px solid var(--hair); font-size: 15px; line-height: 1.45; color: var(--ink); }
.bullet { width: 5px; height: 5px; border-radius: 50%; background: var(--ink-3); }
.list-item button.favorite { width: 44px; height: 44px; display: grid; place-items: center; border: 0; background: transparent; color: var(--ink-3); cursor: pointer; border-radius: var(--r-pill); }
.list-item button.favorite:hover { color: var(--ink); }
.list-item button.favorite.active { color: var(--ink); }
.list-item button.favorite.active svg { fill: var(--kesef); stroke: var(--ink); }

.helpful-note { margin: 0 clamp(22px, 3vw, 36px) clamp(22px, 3vw, 36px); border-top: 1px solid var(--hair); }
.note-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; cursor: pointer; }
.note-header h4 { font: 500 15px/1.35 var(--font-sans); margin: 0; color: var(--ink); }
.expand-icon { flex: none; transition: transform .3s var(--ease); color: var(--ink-2); }
.expand-icon.expanded { transform: rotate(180deg); }
.note-body { display: none; }
.note-body.expanded { display: block; }
.note-body p { margin: 0 0 8px; font-size: 15px; line-height: 1.6; color: var(--ink-2); max-width: 52em; }

.saved-panel { margin-top: 20px; background: var(--paper-2); border: 1px solid var(--hair); border-radius: var(--r-panel); padding: clamp(22px, 3vw, 36px); scroll-margin-top: calc(var(--header-h) + 24px); }
.saved-panel .section-heading { margin-bottom: 18px; align-items: center; }
.saved-items { display: flex; flex-wrap: wrap; gap: 8px; }
.saved-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 6px 0 14px; border-radius: var(--r-pill); background: var(--paper-3); color: var(--ink); font-size: 14px; }
.saved-chip button { width: 32px; height: 32px; display: grid; place-items: center; border: 0; background: transparent; color: var(--ink-2); cursor: pointer; border-radius: var(--r-pill); }
.saved-chip button:hover { color: var(--down); }

@media (max-width: 1024px) { .category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 680px) {
  .category-grid, .list-grid { grid-template-columns: 1fr; }
  .filter-row { width: 100%; }
  .search-input { flex: 1; }
  .cheat-sheet-page #category-search { width: 100%; }
}

/* Audit fixes: keyboard focus, result count, empty search, status line, 44px tap targets */
.category-card:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; border-radius: var(--r-chip); }
.category-card:focus-visible .open-category { background: var(--ink); border-color: var(--ink); color: var(--paper-2); }
.ng-count { font: 400 14px/1.4 var(--font-sans); color: var(--ink-2); margin: 16px 0 0; font-variant-numeric: tabular-nums; }
.ng-empty { grid-column: 1 / -1; padding: 28px 0; border-bottom: 1px solid var(--hair); }
.ng-link { background: none; border: 0; padding: 0; min-height: 44px; font: inherit; color: var(--ink); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.ng-status { font: 400 14px/1.5 var(--font-sans); color: var(--ink); margin: 12px 0 0; }
.ng-status:empty { display: none; }
.note-header:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; border-radius: var(--r-chip); }
.cheat-sheet-page .tf-work .ks-btn--sm { --bh: 44px; }
.cheat-sheet-page #category-search::-webkit-search-cancel-button { cursor: pointer; }

/* v3: the "start with these three levers" verdict, inset to the sheet's padding */
.sheet-panel .kc-verdict { margin: clamp(22px, 3vw, 36px) clamp(22px, 3vw, 36px) 0; }
.sheet-panel .kc-verdict[hidden] { display: none; }
