/* Только акцент и особенности контента ДНЖ-045; основа — действующая .dc. */
.dc[data-practice-code="ДНЖ-045"] {
  --violet: #550577;
  --orange: #FF5D00;
  --lavender: #AA82BB;
  --violet-l: #F3ECF7;
  --violet-l2: #F8F4FA;
  --orange-l: #FFF0E7;
  --orange-b: #FED6BF;
  --grad-veil-purple: linear-gradient(135deg, #FCFBFE, #E6D4F0);
  --grad-veil-orange: linear-gradient(135deg, #FCFCFE, #FFF0E7);
  background: linear-gradient(165deg, #E6D4F0 0, #F6F0FA 210px, #fff 590px);
  border-color: #E6DDEC;
  box-shadow: 0 10px 38px rgba(85, 5, 119, .045);
}
.dc[data-practice-code="ДНЖ-045"] h1 { font-size: 46px; line-height: 1.14; }
.dc[data-practice-code="ДНЖ-045"] .cyber-kicker { align-items: center; gap: 14px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-kicker:before { display: none; }
.dc[data-practice-code="ДНЖ-045"] .cyber-first-logo { display: block; flex: none; width: auto; height: 64px; max-width: none; object-fit: contain; filter: none; }
.dc[data-practice-code="ДНЖ-045"] .dc-subtitle { max-width: 35ch; font-size: 21px !important; }
.dc[data-practice-code="ДНЖ-045"] .dc-hero .dc-photo { padding: 0; }
.dc[data-practice-code="ДНЖ-045"] .dc-photo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 470px;
  aspect-ratio: 1.5;
  object-fit: cover;
  border-radius: 15px;
  filter: none;
}
.dc[data-practice-code="ДНЖ-045"] .cyber-photo-trigger {
  display: block;
  width: 100%;
  border: 0;
  border-radius: 12px;
  padding: 0;
  background: transparent;
  color: inherit;
  cursor: zoom-in;
}
.dc[data-practice-code="ДНЖ-045"] .dc-kicker:before,
.dc[data-practice-code="ДНЖ-045"] .metric-scale i.on,
.dc[data-practice-code="ДНЖ-045"] .dc-metric:nth-child(3) .metric-scale i.on { background: #550577; }
.dc[data-practice-code="ДНЖ-045"] .dc-actionbar { border-color: #E6DDEC; background: rgba(255, 255, 255, .55); }
.dc[data-practice-code="ДНЖ-045"] .dc-actionbar .evaluate { background: #F3ECF7; border-color: #E4D5EC; color: #550577; }
.dc[data-practice-code="ДНЖ-045"] .dc-actionbar .ghost,
.dc[data-practice-code="ДНЖ-045"] .dc-actionbar [data-dc-action="link"] { color: #550577; }
.dc[data-practice-code="ДНЖ-045"] .dc-code { color: #550577; background: #F3ECF7; border-color: #E4D5EC; }
.dc[data-practice-code="ДНЖ-045"] .dc-overview { display: block; }
.dc[data-practice-code="ДНЖ-045"] .dc-overview-text { max-width: 92ch; }
.dc[data-practice-code="ДНЖ-045"] .dc-overview-text > p { max-width: 85ch; }
.dc[data-practice-code="ДНЖ-045"] .cyber-season { margin-top: 22px; padding-left: 18px; border-left: 3px solid #AA82BB; }
.dc[data-practice-code="ДНЖ-045"] .cyber-season h3 { font-size: 17px; color: #550577; }
.dc[data-practice-code="ДНЖ-045"] .cyber-season p { margin-top: 7px; font-size: 16px; line-height: 1.75; }
.dc[data-practice-code="ДНЖ-045"] .dc-passport-shell .dc-passport { background: linear-gradient(105deg, #F3ECF7, #FDFBFE 80%); }
.dc[data-practice-code="ДНЖ-045"] .dc-metric-trigger:hover,
.dc[data-practice-code="ДНЖ-045"] .dc-metric-trigger[aria-expanded="true"] { background: #EEDFF5; }
.dc[data-practice-code="ДНЖ-045"] .dc-metric-plus { background: #EADCF2; color: #550577; }
.dc[data-practice-code="ДНЖ-045"] .dc-metric-trigger { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; }
.dc[data-practice-code="ДНЖ-045"] .dc-passport .metric-label { min-height: 24px; align-items: center; }
.dc[data-practice-code="ДНЖ-045"] .metric-description { display: block; }
.dc[data-practice-code="ДНЖ-045"] .cyber-passport-context { padding: 16px 22px; border-top: 1px solid #E6DDEC; background: #fff; }
.dc[data-practice-code="ДНЖ-045"] .cyber-passport-context p { max-width: 100ch; color: #555; font-size: 14px; line-height: 1.75; }
.dc[data-practice-code="ДНЖ-045"] .dc-passport-panel > p { max-width: 85ch; font-size: 16px; line-height: 1.8; }
.dc[data-practice-code="ДНЖ-045"] .cyber-inline-link { display: inline-block; margin-top: 16px; font-size: 15px; font-weight: 700; }
.dc[data-practice-code="ДНЖ-045"] .dc-hide-panel:hover { background: #F3ECF7; }
.dc[data-practice-code="ДНЖ-045"] .dc-influence-segment.filled,
.dc[data-practice-code="ДНЖ-045"] .strong .dc-influence-segment.filled { background: linear-gradient(110deg, #AA82BB, #550577); }
.dc[data-practice-code="ДНЖ-045"] .dc-influence-marker,
.dc[data-practice-code="ДНЖ-045"] .strong .dc-influence-marker { color: #550577; }
.dc[data-practice-code="ДНЖ-045"] .dc-influence-marker.level-1 { left: 16.666%; }
.dc[data-practice-code="ДНЖ-045"] .cyber-indicator-application { margin-top: 12px; }
.dc[data-practice-code="ДНЖ-045"] .dc-anchor { scroll-margin-top: var(--dc-anchor-offset, 24px); }
.dc[data-practice-code="ДНЖ-045"] #dc-launch { border-color: #E6DDEC; background: linear-gradient(155deg, #F3ECF7, #FBF8FD 35%, #fff 100%); }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-steps { margin: 0; padding-left: 24px; list-style: decimal; }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-item { padding: 0 0 26px 10px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-item::marker { color: #AA82BB; font-size: 14px; font-weight: 700; }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-item + .cyber-join-item { padding-top: 26px; border-top: 1px solid #E6DDEC; }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-item:last-child { padding-bottom: 0; }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-system-icon { display: block; flex: none; width: 28px; height: 28px; object-fit: contain; }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-heading h3 { margin: 0; font-size: 23px; line-height: 1.45; }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-body { max-width: 86ch; }
.dc[data-practice-code="ДНЖ-045"] :is(.cyber-join-body, .cyber-joining),
.dc[data-practice-code="ДНЖ-045"] :is(.cyber-join-body, .cyber-joining) :is(a, strong) { overflow-wrap: anywhere; }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-body p { font-size: 17px; line-height: 1.8; }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-body p + p { margin-top: 14px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-join-body a { font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-joining { margin-top: 26px; padding-top: 22px; border-top: 1px solid #DCCAE6; }
.dc[data-practice-code="ДНЖ-045"] .cyber-joining h3 { margin-bottom: 10px; font-size: 19px; line-height: 1.5; }
.dc[data-practice-code="ДНЖ-045"] .cyber-joining p { max-width: 86ch; font-size: 17px; line-height: 1.8; }
.dc[data-practice-code="ДНЖ-045"] .cyber-resource-heading { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 10px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-resource-heading h4 { margin: 0; }
.dc[data-practice-code="ДНЖ-045"] .dc-toggle { background: #EEE0F6; color: #550577; }
.dc[data-practice-code="ДНЖ-045"] .dc-kicker:before,
.dc[data-practice-code="ДНЖ-045"] .dc-metric:nth-child(3) .metric-scale i.on { background: #FF5D00; }
.dc[data-practice-code="ДНЖ-045"] #dc-preflight .dc-support-details > summary,
.dc[data-practice-code="ДНЖ-045"] #dc-obstacles.dc-support-details > summary { background: linear-gradient(105deg, #F8F2FC, #fff 72%); }
.dc[data-practice-code="ДНЖ-045"] #dc-obstacles .dc-support-body > .dc-preflight-entry { background: #FBF7FD; border-color: #E6DDEC; }
.dc[data-practice-code="ДНЖ-045"] .dc-case { background: linear-gradient(130deg, #F6EFFA, #fff 65%); border-color: #E6DDEC; }
.dc[data-practice-code="ДНЖ-045"] .cyber-evidence-date { font-size: 14px; color: #555; }
.dc[data-practice-code="ДНЖ-045"] .dc-evidence { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 18px; margin-bottom: 22px; }
.dc[data-practice-code="ДНЖ-045"] .dc-number { min-width: 0; }
.dc[data-practice-code="ДНЖ-045"] .dc-number strong { white-space: nowrap; overflow-wrap: normal; }
.dc[data-practice-code="ДНЖ-045"] .cyber-evidence-copy p,
.dc[data-practice-code="ДНЖ-045"] .cyber-continuation p { font-size: 17px; line-height: 1.8; }
.dc[data-practice-code="ДНЖ-045"] .cyber-evidence-copy p + p,
.dc[data-practice-code="ДНЖ-045"] .cyber-continuation p + p { margin-top: 12px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-continuation { margin-top: 24px; padding-top: 22px; border-top: 1px solid #E6DDEC; }
.dc[data-practice-code="ДНЖ-045"] .cyber-continuation h3 { margin-bottom: 10px; font-size: 19px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 16px; margin-top: 28px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-gallery figure,
.dc[data-practice-code="ДНЖ-045"] .cyber-gallery figure:first-child { margin: 0; grid-column: auto; }
.dc[data-practice-code="ДНЖ-045"] .cyber-gallery img { display: block; width: 100%; height: auto; aspect-ratio: 1.5; object-fit: cover; border-radius: 12px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-gallery figure:last-child img { object-fit: contain; background: #F3ECF7; }
.dc[data-practice-code="ДНЖ-045"] .cyber-gallery figcaption { display: block; margin-top: 8px; color: #555; font-size: 13px; line-height: 1.6; }
.dc[data-practice-code="ДНЖ-045"] #dc-materials .dc-material-grid { grid-template-columns: minmax(0, 1fr); }
.dc[data-practice-code="ДНЖ-045"] #dc-materials .dc-material { background: linear-gradient(110deg, #FBF7FD, #fff) !important; border-color: #E6DDEC !important; }
.dc[data-practice-code="ДНЖ-045"] #dc-materials .dc-material-top { grid-template-columns: 36px minmax(0, 1fr) auto; }
.dc[data-practice-code="ДНЖ-045"] #dc-materials .dc-file-badge { background: #F3ECF7; border-color: #E4D5EC; }
.dc[data-practice-code="ДНЖ-045"] .cyber-material-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
.dc[data-practice-code="ДНЖ-045"] #dc-materials .cyber-material-actions a { min-height: 44px; padding: 8px 12px; border: 1px solid #D8C3E4; font-size: 13px; line-height: 1.4; font-weight: 700; }
.dc[data-practice-code="ДНЖ-045"] #dc-materials .cyber-material-actions a:after { content: none; }
.dc[data-practice-code="ДНЖ-045"] #dc-materials .cyber-material-actions a:hover { background: #F3ECF7; }
.dc[data-practice-code="ДНЖ-045"] .dc-useful-link { grid-template-columns: minmax(0, 1fr); }
.dc[data-practice-code="ДНЖ-045"] .cyber-photo-dialog { position: fixed; inset: 0; width: min(1200px, calc(100vw - 48px)); max-width: none; max-height: calc(100dvh - 48px); padding: 54px 24px 22px; border: 0; border-radius: 15px; color: #fff; background: #21132B; box-shadow: 0 20px 80px #0006; }
.dc[data-practice-code="ДНЖ-045"] .cyber-photo-dialog::backdrop { background: rgba(24, 10, 35, .8); }
.dc[data-practice-code="ДНЖ-045"] .cyber-photo-dialog figure { margin: 0; }
.dc[data-practice-code="ДНЖ-045"] .cyber-photo-dialog img { display: block; width: 100%; max-height: calc(100dvh - 180px); height: auto; object-fit: contain; }
.dc[data-practice-code="ДНЖ-045"] .cyber-photo-dialog figcaption { margin-top: 12px; color: #fff; font-size: 14px; line-height: 1.6; text-align: center; }
.dc[data-practice-code="ДНЖ-045"] .cyber-photo-dialog figcaption:empty { display: none; }
.dc[data-practice-code="ДНЖ-045"] .cyber-photo-close { position: absolute; top: 8px; right: 10px; width: 44px; height: 44px; border: 1px solid #fff5; border-radius: 9px; background: transparent; color: #fff; font: inherit; font-size: 30px; line-height: 1; cursor: pointer; }
@media (max-width: 850px) {
  .dc[data-practice-code="ДНЖ-045"] h1 { font-size: 42px; }
  .dc[data-practice-code="ДНЖ-045"] .dc-hero .dc-photo { max-width: 510px; margin: 0 auto; }
  .dc[data-practice-code="ДНЖ-045"] #dc-materials .dc-material-top { grid-template-columns: 36px minmax(0, 1fr); }
  .dc[data-practice-code="ДНЖ-045"] .cyber-material-actions { grid-column: 2; justify-content: flex-start; }
}
@media (max-width: 540px) {
  .dc[data-practice-code="ДНЖ-045"] h1 { font-size: 34px; }
  .dc[data-practice-code="ДНЖ-045"] .dc-subtitle { font-size: 19px !important; }
  .dc[data-practice-code="ДНЖ-045"] .dc-hero .dc-photo { max-width: 360px; }
  .dc[data-practice-code="ДНЖ-045"] .cyber-join-steps { padding-left: 20px; }
  .dc[data-practice-code="ДНЖ-045"] .cyber-join-item { padding-left: 5px; }
  .dc[data-practice-code="ДНЖ-045"] .cyber-join-heading { align-items: flex-start; gap: 10px; }
  .dc[data-practice-code="ДНЖ-045"] .cyber-join-heading h3 { font-size: 20px; }
  .dc[data-practice-code="ДНЖ-045"] .cyber-join-body p { font-size: 16px; }
  .dc[data-practice-code="ДНЖ-045"] .dc-evidence { grid-template-columns: minmax(0, 1fr); }
  .dc[data-practice-code="ДНЖ-045"] .dc-number + .dc-number { border-left: 0; border-top: 1px solid #E6DDEC; padding: 16px 0 0; }
  .dc[data-practice-code="ДНЖ-045"] .cyber-gallery { grid-template-columns: minmax(0, 1fr); }
  .dc[data-practice-code="ДНЖ-045"] .cyber-photo-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); padding: 54px 12px 16px; }
  .dc[data-practice-code="ДНЖ-045"] .cyber-photo-dialog img { max-height: calc(100dvh - 160px); }
}
@media print {
  .dc[data-practice-code="ДНЖ-045"] .cyber-photo-dialog { display: none !important; }
  .dc[data-practice-code="ДНЖ-045"] .cyber-photo-trigger { cursor: default; }
}

/* Revision 4: extra lesson formats stay within the established card system. */
.dc[data-practice-code="ДНЖ-045"] .cyber-lessons-group { margin-top: 30px; }
.dc[data-practice-code="ДНЖ-045"] #dc-lessons > summary .dc-summary-copy { min-width: 0; }
.dc[data-practice-code="ДНЖ-045"] #dc-lessons .dc-support-body,
.dc[data-practice-code="ДНЖ-045"] #dc-obstacles .dc-support-body { display: block; }
.dc[data-practice-code="ДНЖ-045"] #dc-lessons .dc-support-body > p { max-width: 86ch; font-size: 17px; line-height: 1.8; }
.dc[data-practice-code="ДНЖ-045"] #dc-lessons .dc-preflight-entry p { max-width: 86ch; }
.dc[data-practice-code="ДНЖ-045"] #dc-lessons .dc-preflight-entry + .dc-preflight-entry { margin-top: 22px; padding-top: 22px; border-top: 1px solid #E6DDEC; }
.dc[data-practice-code="ДНЖ-045"] #dc-continuation { margin-top: 30px; }
.dc[data-practice-code="ДНЖ-045"] .cyber-evidence-copy p { max-width: 86ch; }
.dc[data-practice-code="ДНЖ-045"] #dc-obstacles p + p { margin-top: 14px; }
@media (max-width: 600px) {
  .dc[data-practice-code="ДНЖ-045"] .dc-hero h1 { font-size: clamp(20px, 6.2vw, 29px); line-height: 1.25; word-break: normal; overflow-wrap: normal; }
  .dc[data-practice-code="ДНЖ-045"] #dc-lessons > summary .dc-summary-copy b { font-size: 18px; line-height: 1.45; }
  .dc[data-practice-code="ДНЖ-045"] #dc-lessons .cyber-resource-heading h4 { font-size: 18px; line-height: 1.45; }
}
