/* «Зависимости 🔗» (screens/deps.js, доска V84Deps 05.11.2026). Отдельный файл, чтобы не трогать общий app.css: только
   классы dp-*, токены — из app.css (обе темы). Стиль v4: плитки r-20, карточки r-22, герой r-24, строки 52–60 px. */
.dp-title { margin: 4px 0 0; }
.dp-title .n { margin-left: 8px; font-weight: 600; color: var(--muted); }
.dp-hero { margin-top: 16px; }
.dp-hn { display: flex; align-items: baseline; gap: 8px; }
.dp-of { font-size: var(--fs-20); font-weight: 700; color: var(--ink); }
.dp-hl { font-size: var(--fs-13); font-weight: 600; }
.dp-hero .t-off { color: var(--off); }
.dp-foot { font-size: var(--fs-12); color: var(--ink2); line-height: 1.4; }
.dp-hf { display: flex; justify-content: space-between; gap: 12px; font-size: var(--fs-12); color: var(--ink2); }
.dp-nw { white-space: nowrap; }
.dp-caps { display: block; font-size: var(--fs-12); font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--ink2); margin-top: 18px; }
.dp-head { flex: none; display: flex; flex-direction: column; gap: 6px; padding-top: 2px; }
.dp-head .dp-caps { margin-top: 0; }
.dp-head .h1 { margin: 0; }
.dp-idl { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: var(--fs-12); color: var(--muted); }
.dp .facts { font-size: var(--fs-12); color: var(--muted); }

.dp-all { flex: none; display: flex; align-items: center; gap: 12px; min-height: 64px; box-sizing: border-box; margin-top: 12px; padding: 12px 14px;
  border-radius: var(--r-22); background: var(--tileBg); box-shadow: var(--tileEdge); }
.dp-aic { flex: none; width: 36px; height: 36px; border-radius: 50%; background: var(--tileBg2); display: flex; align-items: center; justify-content: center; color: var(--ink); }
.dp-at { font-size: var(--fs-16); font-weight: 700; }
.dp-as { font-size: var(--fs-12); color: var(--ink2); font-weight: 400; }
.dp-as.t-warn { color: var(--warn); font-weight: 600; }
.dp-all .sw { flex: none; }
.dp-hint { margin: 14px 2px 8px; color: var(--muted); }
.dp-note { margin: 14px 2px 0; color: var(--muted); line-height: 1.45; }

.dp-list { margin-top: 12px; padding: 0 14px; border-radius: var(--r-22); background: var(--tileBg); box-shadow: var(--tileEdge); }
.dp-hint + .dp-list { margin-top: 0; }
.dp-rrow, .dp-drow { display: flex; flex-direction: column; gap: 6px; width: 100%; box-sizing: border-box; padding: 12px 0; border: 0; border-top: 1px solid var(--line);
  background: transparent; color: var(--ink); text-align: left; text-decoration: none; font: inherit; cursor: pointer; }
.dp-rrow.first, .dp-drow.first { border-top: 0; }
.dp-rrow .l1, .dp-drow .l1 { display: flex; align-items: flex-start; gap: 10px; min-width: 0; }
.dp-rrow .l1 .nm2, .dp-drow .l1 .nm2 { flex: 1 1 auto; min-width: 0; }
.dp-rrow .chev, .dp-drow .chev { flex: none; color: var(--muted); display: flex; margin-top: 2px; }
.dp-rrow.off .nm2, .dp-rrow.off .dp-what { color: var(--ink2); }
.dp-what { font-size: var(--fs-13); color: var(--ink); }
.dp-rrow .st, .dp-drow .st { font-size: var(--fs-13); font-weight: 600; white-space: normal; }
.dp-plate { display: flex; }
.offpill.dp-risk, .dp .offpill { background: transparent; color: var(--warn); box-shadow: inset 0 0 0 1px var(--warn); font-size: var(--fs-12); font-weight: 600; }
.dp-drow .pr16 { flex: none; font-size: var(--fs-16); font-weight: 700; white-space: nowrap; }

.dp-kvrow, .dp-lrow { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 60px; box-sizing: border-box; padding: 8px 0; border: 0; border-top: 1px solid var(--line);
  background: transparent; color: var(--ink); font: inherit; text-align: left; }
.dp-list > :first-child { border-top: 0; }
button.dp-kvrow, .dp-lrow { cursor: pointer; }
.dp-lrow { min-height: 52px; }
.dp-kt { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.dp-kl { font-size: var(--fs-14); font-weight: 600; line-height: 1.3; }
.dp-ks { font-size: var(--fs-12); color: var(--ink2); line-height: 1.35; }
.dp-ks.b6 { font-weight: 600; }
.dp-ks.t-warn { color: var(--warn); }
.dp-kv { flex: none; font-size: var(--fs-16); font-weight: 700; white-space: nowrap; }
.dp-lic { flex: none; width: 32px; height: 32px; border-radius: 50%; background: var(--tileBg2); display: flex; align-items: center; justify-content: center; color: var(--ink); }
.dp-lrow .chev, .dp-kvrow .chev { flex: none; color: var(--muted); display: flex; }
.dp-lrow.danger .dp-kl { color: var(--off); }
.dp-lrow:disabled { cursor: default; }
.dp-lrow:disabled .dp-kl { color: var(--ink2); }
.dp-sec { margin-top: 20px; }

.dp-offtile { flex: none; margin-top: 16px; border-radius: var(--r-24); padding: 16px 18px; display: flex; flex-direction: column; gap: 10px; background: var(--tileBg); box-shadow: var(--tileEdge); }
.dp-oic { width: 36px; height: 36px; border-radius: 50%; background: var(--tileBg2); display: flex; align-items: center; justify-content: center; color: var(--ink); }
.dp-ot { font-size: var(--fs-20); font-weight: 700; }
.dp-offtile .p12 { color: var(--ink2); }
.dp-oznote { margin-top: 12px; }

.dp-empty { flex: none; margin-top: 12px; padding: 16px 16px 4px; border-radius: var(--r-22); background: var(--tileBg); box-shadow: var(--tileEdge); display: flex; flex-direction: column; gap: 6px; }
.dp-et { font-size: var(--fs-16); font-weight: 700; }
.dp-empty .p14 { margin: 0; color: var(--ink2); line-height: 1.45; }
.dp-empty .dp-lrow { border-top: 1px solid var(--line); margin-top: 8px; }

.dp-pick .chev { flex: none; color: var(--muted); display: flex; align-self: center; }
.pick.dis2 .nm2, .pick.dis2 .pr { color: var(--ink2); }
.cbox.dis { border-color: var(--line); background: var(--surface2); }
.dp-nums { flex: none; display: flex; gap: 10px; margin-top: 14px; }
.dp-num { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.dp-num .p13 { color: var(--ink2); }
.dp-nbox { display: flex; align-items: center; height: 64px; padding: 0 14px; border-radius: var(--r-14); background: var(--surface); box-shadow: var(--tileEdge); }
.dp-nbox:focus-within { background: var(--ground); box-shadow: inset 0 0 0 2px var(--focus); }
.dp-numin { flex: 1 1 auto; min-width: 0; width: 100%; border: 0; outline: none; background: transparent; color: var(--ink); font: 700 var(--fs-28) 'Manrope', system-ui, sans-serif; letter-spacing: -0.02em; padding: 0; }
.dp-numin::placeholder { color: var(--ink2); opacity: .5; }
.dp-rub { flex: none; margin-left: 6px; font-size: var(--fs-20); font-weight: 700; color: var(--ink2); }
.dp-res { flex: none; display: flex; flex-direction: column; gap: 2px; margin-top: 12px; padding: 12px 14px; border-radius: var(--r-20); background: var(--tileBg); box-shadow: var(--tileEdge); }
.dp-res .p12 { color: var(--ink2); }
.dp-rv { font-size: var(--fs-20); font-weight: 700; }
.dp-put { justify-content: space-between; }
.dp-put .col { flex: 1 1 auto; min-width: 0; }
.dp-chk { flex: none; margin-top: 14px; border-radius: var(--r-20); padding: 14px 16px; background: var(--tileBg); box-shadow: var(--tileEdge); display: flex; flex-direction: column; gap: 6px; }
.dp-chk .ih-cols { display: grid; grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr); column-gap: 16px; padding-top: 12px; margin-top: 6px; border-top: 1px solid var(--line); }
.dp-chk .ih-sep { background: var(--line); }
.dp-chk .ih-col { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.dp-chk .ih-l { font-size: var(--fs-12); color: var(--ink2); }
.dp-chk .ih-v { font-size: var(--fs-20); font-weight: 700; }
.dp-will { gap: 4px; }
.dp-will .p13 { line-height: 1.4; }
.dp-rt { font-size: var(--fs-20); font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; }
.dp-next { margin-top: 18px; }
.dp-next .p14 { margin: 6px 0 0; line-height: 1.45; }
.dp-sht { font-size: var(--fs-20); font-weight: 700; }
.dp-erow .l1 { align-items: center; }
.dp-erow .dp-rm { flex: none; min-height: 32px; }
.dp-band { flex-direction: column; }
.dp-band b { font-size: var(--fs-14); }
.dp .gcount b { color: var(--ink); font-weight: 700; }
.dp-nbox .dp-numin:focus, .dp-nbox .dp-numin:focus-visible { outline: none !important; box-shadow: none !important; }
.dp-rid { flex: none; margin-top: 12px; }
