#niise-practice{--pc-0:#172331;--pc-1:#607080;--pc-2:#d8e1ea;--pc-3:#ffffff;--pc-4:#f3f7fa;--pc-5:#1d5f91;--pc-6:#123e61;--pc-7:#2d7a5b;--pc-8:#a7651e;--pc-9:#5b4a91;--pc-10:#edf3f7;--pc-11:#102a41;--pc-12:#173149;--pc-13:#fff;--pc-14:#fdf6ec;--pc-15:#5c4526;--pc-16:#7a5a2a;--pc-17:#f2e4cf;--pc-18:#fbfcfd;--pc-19:#22374b;--pc-20:#e6f0f8;--pc-21:#14456b;--pc-22:#e8f5ee;--pc-23:#1f5c42;--pc-24:#fdf0e2;--pc-25:#85511a;--pc-26:#eeeaf7;--pc-27:#4a3b7d;--pc-28:#eef2f6;--pc-29:#46586b;--pc-30:#e8f0f8;--pc-31:#8a3a2a;--pc-32:#182c3f;--pc-33:#405060;--pc-34:#23384b;--pc-35:#33475c;--pc-36:#8a99a8;--pc-37:#f7fafc;--pc-38:#425365;--pc-39:#b7cadc;--pc-40:#f4f8fb;--pc-41:#20364b;--pc-42:#dde5ed;--pc-43:#edf6f1;--pc-44:#245f45;--pc-45:#dff0e8;--pc-46:#a33;--button-ink:#fff;color-scheme:light}#niise-practice[data-practice-theme="dark"]{--pc-0:#e6edf4;--pc-1:#adbdcc;--pc-2:#3b4a59;--pc-3:#19222d;--pc-4:#222e3b;--pc-5:#3983b9;--pc-6:#9acbec;--pc-7:#71c69b;--pc-8:#e5b478;--pc-9:#b3a1e9;--pc-10:#10161e;--pc-11:#edf4fb;--pc-12:#dceafa;--pc-13:#19222d;--pc-14:#32291e;--pc-15:#ead2ab;--pc-16:#f2d19b;--pc-17:#463623;--pc-18:#202b37;--pc-19:#dce8f4;--pc-20:#20384e;--pc-21:#a1d3f5;--pc-22:#1c3b2e;--pc-23:#9bddb9;--pc-24:#403021;--pc-25:#f0c58e;--pc-26:#322b45;--pc-27:#c9b9f4;--pc-28:#2a3542;--pc-29:#c3d0dd;--pc-30:#23384b;--pc-31:#efac99;--pc-32:#e0edf9;--pc-33:#bac9d8;--pc-34:#dce8f4;--pc-35:#d3dfeb;--pc-36:#a6b5c4;--pc-37:#202b37;--pc-38:#c3d0dd;--pc-39:#526d87;--pc-40:#223345;--pc-41:#dce8f4;--pc-42:#3b4a59;--pc-43:#213c30;--pc-44:#a5dfba;--pc-45:#2b503c;--pc-46:#ffa6a6;color-scheme:dark}#niise-practice{
      --ink: var(--pc-0);
      --muted: var(--pc-1);
      --line: var(--pc-2);
      --paper: var(--pc-3);
      --soft: var(--pc-4);
      --blue: var(--pc-5);
      --blue-dark: var(--pc-6);
      --green: var(--pc-7);
      --amber: var(--pc-8);
      --violet: var(--pc-9);
      --shadow: 0 18px 44px rgba(17, 39, 61, 0.12);
    }#niise-practice *{ box-sizing: border-box; }#niise-practice{
      margin: 0;
      font-family: Arial, Helvetica, sans-serif;
      color: var(--ink);
      background: var(--pc-10);
      line-height: 1.5;
    }#niise-practice a{ color: inherit; text-decoration: none; }#niise-practice .page{ max-width: 1220px; margin: 0 auto; padding: 34px 24px 80px; }#niise-practice .mock-label{
      margin: 0 0 8px;
      color: var(--blue-dark);
      font-size: 13px;
      font-weight: 800;
      text-transform: uppercase;
    }#niise-practice .section-head{
      display: flex;
      justify-content: space-between;
      align-items: end;
      gap: 24px;
      margin-bottom: 20px;
    }#niise-practice h1,#niise-practice h2,#niise-practice h3,#niise-practice h4,#niise-practice p{ margin-top: 0; }#niise-practice h1{ margin-bottom: 12px; max-width: 860px; font-size: 42px; line-height: 1.08; color: var(--pc-11); }#niise-practice .intro{ max-width: 900px; margin-bottom: 34px; color: var(--muted); font-size: 18px; }#niise-practice h2{ margin-bottom: 8px; font-size: 28px; line-height: 1.18; color: var(--pc-12); }#niise-practice .section-note{ max-width: 680px; margin: 0; color: var(--muted); font-size: 15px; }#niise-practice .home-block{
      margin-bottom: 44px;
      padding: 30px;
      background: var(--pc-13);
      border: 1px solid var(--line);
      border-radius: 8px;
      box-shadow: var(--shadow);
    }#niise-practice /* ---------- Пояснения для программиста ---------- */
    .dev-note{
      margin: 0 0 18px;
      padding: 14px 16px;
      border-left: 4px solid var(--amber);
      background: var(--pc-14);
      color: var(--pc-15);
      font-size: 14px;
    }#niise-practice .dev-note strong{ color: var(--pc-16); }#niise-practice .dev-note code{
      padding: 1px 5px;
      background: var(--pc-17);
      border-radius: 3px;
      font-size: 13px;
    }#niise-practice /* ---------- Типы работ ---------- */
    .type-legend{
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 12px;
      margin-bottom: 18px;
    }#niise-practice .legend-item{
      padding: 14px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: var(--pc-18);
      font-size: 14px;
      color: var(--muted);
    }#niise-practice .legend-item strong{ display: block; margin-bottom: 4px; color: var(--pc-19); font-size: 15px; }#niise-practice .badge{
      display: inline-flex;
      align-items: center;
      min-height: 26px;
      padding: 0 10px;
      border-radius: 999px;
      font-size: 12px;
      font-weight: 800;
      white-space: nowrap;
    }#niise-practice .badge-sud{ background: var(--pc-20); color: var(--pc-21); }#niise-practice .badge-dosud{ background: var(--pc-22); color: var(--pc-23); }#niise-practice .badge-spec{ background: var(--pc-24); color: var(--pc-25); }#niise-practice .badge-rec{ background: var(--pc-26); color: var(--pc-27); }#niise-practice .badge-neutral{ background: var(--pc-28); color: var(--pc-29); }#niise-practice /* ---------- Карточки ---------- */
    .cards-grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }#niise-practice .cards-grid.archive{ grid-template-columns: repeat(3, minmax(0, 1fr)); }#niise-practice .case-card{
      min-height: 360px;
      display: flex;
      flex-direction: column;
      padding: 18px;
      background: var(--pc-13);
      border: 1px solid var(--line);
      border-top: 3px solid var(--blue);
      border-radius: 8px;
      transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
    }#niise-practice .case-card[data-type="sud"]{ border-top-color: var(--pc-5); }#niise-practice .case-card[data-type="dosud"]{ border-top-color: var(--pc-7); }#niise-practice .case-card[data-type="spec"]{ border-top-color: var(--pc-8); }#niise-practice .case-card[data-type="rec"]{ border-top-color: var(--pc-9); }#niise-practice .case-card:hover{
      transform: translateY(-2px);
      box-shadow: 0 14px 28px rgba(17, 39, 61, 0.12);
    }#niise-practice .case-card-top{
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 8px;
      margin-bottom: 12px;
    }#niise-practice .case-type{
      display: inline-flex;
      align-items: center;
      min-height: 28px;
      padding: 0 10px;
      border-radius: 999px;
      background: var(--pc-30);
      color: var(--blue-dark);
      font-size: 12px;
      font-weight: 800;
    }#niise-practice .case-year{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 48px;
      height: 28px;
      padding: 0 8px;
      border-radius: 999px;
      background: var(--pc-28);
      color: var(--pc-29);
      font-size: 12px;
      font-weight: 800;
    }#niise-practice /* Проблемная строка — главный вход для читателя (п. 7.1 ТЗ) */
    .case-problem{
      margin-bottom: 8px;
      color: var(--pc-31);
      font-size: 13px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.02em;
    }#niise-practice .case-ident{ margin-bottom: 8px; color: var(--blue); font-size: 15px; font-weight: 800; }#niise-practice .case-card h3{ margin-bottom: 10px; font-size: 18px; line-height: 1.24; color: var(--pc-32); }#niise-practice .case-fabula{ margin-bottom: 14px; color: var(--pc-33); font-size: 14px; }#niise-practice .case-meta{
      display: grid;
      gap: 9px;
      margin-top: auto;
      padding-top: 14px;
      border-top: 1px solid var(--line);
      color: var(--muted);
      font-size: 13px;
    }#niise-practice .case-meta strong{ display: block; color: var(--pc-34); font-size: 12px; text-transform: uppercase; }#niise-practice .case-link{ display: inline-flex; align-items: center; color: var(--blue); font-weight: 800; word-break: break-word; }#niise-practice .case-link:hover{ text-decoration: underline; }#niise-practice .case-actions{ display: grid; gap: 8px; margin-top: 14px; }#niise-practice .button{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 42px;
      padding: 0 14px;
      border-radius: 6px;
      border: 1px solid transparent;
      font-size: 14px;
      font-weight: 800;
      text-align: center;
      cursor: pointer;
      font-family: inherit;
    }#niise-practice .button.primary{ background: var(--blue); color: var(--button-ink); }#niise-practice .button.secondary{ border-color: var(--line); color: var(--blue-dark); background: var(--pc-13); }#niise-practice /* ---------- Фильтры архива ---------- */
    .filter-bar{
      padding: 20px;
      margin-bottom: 20px;
      background: var(--soft);
      border: 1px solid var(--line);
      border-radius: 8px;
    }#niise-practice .type-tabs{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }#niise-practice .type-tab{
      min-height: 38px;
      padding: 0 14px;
      border-radius: 999px;
      border: 1px solid var(--line);
      background: var(--pc-13);
      color: var(--pc-35);
      font-size: 14px;
      font-weight: 800;
      cursor: pointer;
      font-family: inherit;
    }#niise-practice .type-tab[aria-pressed="true"]{ background: var(--blue); border-color: var(--blue); color: var(--button-ink); }#niise-practice .filter-grid{
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 12px;
    }#niise-practice .filter-field{ display: flex; flex-direction: column; gap: 5px; }#niise-practice .filter-field label{ color: var(--muted); font-size: 12px; font-weight: 800; text-transform: uppercase; }#niise-practice .filter-field select,#niise-practice .filter-field input{
      min-height: 40px;
      padding: 0 10px;
      border: 1px solid var(--line);
      border-radius: 6px;
      background: var(--pc-13);
      color: var(--ink);
      font-size: 14px;
      font-family: inherit;
    }#niise-practice .filter-foot{
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      gap: 12px;
      margin-top: 14px;
    }#niise-practice .result-count{ color: var(--muted); font-size: 14px; }#niise-practice .result-count b{ color: var(--ink); }#niise-practice .checkbox-row{ display: flex; align-items: center; gap: 8px; color: var(--pc-35); font-size: 14px; }#niise-practice .empty-state{
      padding: 28px;
      border: 1px dashed var(--line);
      border-radius: 8px;
      background: var(--pc-18);
      color: var(--muted);
      text-align: center;
      font-size: 15px;
    }#niise-practice .pager{ display: flex; justify-content: center; margin-top: 20px; }#niise-practice /* ---------- Подробная карточка ---------- */
    .detail-demo{ display: grid; gap: 18px; }#niise-practice .detail-card{
      overflow: hidden;
      background: var(--pc-13);
      border: 1px solid var(--line);
      border-radius: 8px;
      box-shadow: var(--shadow);
      margin-bottom: 26px;
    }#niise-practice .breadcrumbs{
      padding: 14px 32px;
      border-bottom: 1px solid var(--line);
      background: var(--pc-18);
      color: var(--muted);
      font-size: 13px;
    }#niise-practice .breadcrumbs a:hover{ text-decoration: underline; }#niise-practice .breadcrumbs span{ color: var(--pc-36); }#niise-practice .detail-hero{
      display: grid;
      grid-template-columns: minmax(0, 1fr) 340px;
      gap: 28px;
      padding: 28px 32px 32px;
      background: linear-gradient(180deg, var(--pc-3), var(--pc-37));
      border-bottom: 1px solid var(--line);
    }#niise-practice .detail-tags{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }#niise-practice .detail-problem{
      margin-bottom: 8px;
      color: var(--pc-31);
      font-size: 14px;
      font-weight: 800;
      text-transform: uppercase;
    }#niise-practice .detail-title{ margin-bottom: 14px; max-width: 800px; font-size: 34px; line-height: 1.14; color: var(--pc-11); }#niise-practice .detail-lead{ max-width: 780px; margin-bottom: 14px; color: var(--pc-38); font-size: 17px; }#niise-practice .privacy-note{
      max-width: 780px;
      margin: 0;
      padding: 12px 14px;
      border-left: 4px solid var(--pc-39);
      background: var(--pc-40);
      color: var(--pc-33);
      font-size: 14px;
    }#niise-practice .detail-facts{
      display: grid;
      gap: 12px;
      align-content: start;
      padding: 18px;
      background: var(--pc-13);
      border: 1px solid var(--line);
      border-radius: 8px;
    }#niise-practice .fact{ padding-bottom: 12px; border-bottom: 1px solid var(--line); }#niise-practice .fact:last-child{ padding-bottom: 0; border-bottom: 0; }#niise-practice .fact-label{ margin-bottom: 2px; color: var(--muted); font-size: 12px; font-weight: 800; text-transform: uppercase; }#niise-practice .fact-value{ color: var(--pc-34); font-size: 14px; font-weight: 700; }#niise-practice .detail-body{
      display: grid;
      grid-template-columns: 260px minmax(0, 1fr);
      gap: 28px;
      padding: 28px 32px 32px;
    }#niise-practice .detail-nav{
      align-self: start;
      position: sticky;
      top: 20px;
      padding: 18px;
      background: var(--soft);
      border: 1px solid var(--line);
      border-radius: 8px;
    }#niise-practice .detail-nav-title{ margin-bottom: 12px; color: var(--pc-41); font-size: 15px; font-weight: 800; }#niise-practice .detail-nav a{ display: block; padding: 8px 0; color: var(--pc-33); font-size: 14px; border-bottom: 1px solid var(--pc-42); }#niise-practice .detail-nav a:last-child{ border-bottom: 0; }#niise-practice .detail-nav a:hover{ color: var(--blue); }#niise-practice .detail-content{ display: grid; gap: 18px; }#niise-practice .info-panel{ padding: 22px; border: 1px solid var(--line); border-radius: 8px; background: var(--pc-13); }#niise-practice .info-panel h3{ margin-bottom: 10px; font-size: 22px; color: var(--pc-12); }#niise-practice .info-panel p{ margin-bottom: 10px; color: var(--pc-33); font-size: 15px; }#niise-practice .info-panel p:last-child{ margin-bottom: 0; }#niise-practice .two-cols{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }#niise-practice .small-tile{ padding: 16px; background: var(--pc-18); border: 1px solid var(--line); border-radius: 8px; }#niise-practice .small-tile strong{ display: block; margin-bottom: 6px; color: var(--pc-19); }#niise-practice .small-tile span{ color: var(--muted); font-size: 14px; }#niise-practice .question-list{ display: grid; gap: 10px; margin: 12px 0 0; padding: 0; list-style: none; }#niise-practice .question-list li{
      padding: 12px 14px;
      background: var(--pc-18);
      border: 1px solid var(--line);
      border-radius: 8px;
      color: var(--pc-33);
      font-size: 15px;
    }#niise-practice .chip-list{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }#niise-practice .profile-chip{
      display: inline-flex;
      align-items: center;
      min-height: 34px;
      padding: 0 12px;
      border-radius: 999px;
      background: var(--pc-43);
      color: var(--pc-44);
      font-size: 13px;
      font-weight: 800;
    }#niise-practice .profile-chip:hover{ background: var(--pc-45); text-decoration: underline; }#niise-practice .related-grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }#niise-practice .related-card{ padding: 14px; background: var(--pc-18); border: 1px solid var(--line); border-radius: 8px; }#niise-practice .related-card strong{ display: block; margin-bottom: 4px; color: var(--pc-19); }#niise-practice .related-card span{ color: var(--muted); font-size: 14px; }#niise-practice .faq-item{ padding: 14px 0; border-bottom: 1px solid var(--line); }#niise-practice .faq-item:last-child{ padding-bottom: 0; border-bottom: 0; }#niise-practice .faq-item h4{ margin-bottom: 6px; font-size: 16px; color: var(--pc-19); }#niise-practice .faq-item p{ margin: 0; color: var(--pc-33); font-size: 15px; }#niise-practice .cta-row{ display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 14px; }#niise-practice .updated-line{ margin-top: 14px; color: var(--muted); font-size: 13px; }#niise-practice /* ---------- Таблица полей ---------- */
    .field-table{ width: 100%; border-collapse: collapse; font-size: 14px; }#niise-practice .field-table th,#niise-practice .field-table td{
      padding: 9px 10px;
      border: 1px solid var(--line);
      text-align: left;
      vertical-align: top;
    }#niise-practice .field-table th{ background: var(--soft); color: var(--pc-19); font-size: 13px; text-transform: uppercase; }#niise-practice .field-table td code{ font-size: 13px; color: var(--pc-21); }#niise-practice .yes{ color: var(--green); font-weight: 800; }#niise-practice .no{ color: var(--pc-46); font-weight: 800; }#niise-practice .table-wrap{ overflow-x: auto; }@media (max-width: 1080px){#niise-practice .cards-grid,#niise-practice .cards-grid.archive{ grid-template-columns: repeat(2, minmax(0, 1fr)); }#niise-practice .type-legend{ grid-template-columns: repeat(2, minmax(0, 1fr)); }#niise-practice .filter-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }#niise-practice .detail-hero,#niise-practice .detail-body{ grid-template-columns: 1fr; }#niise-practice .detail-nav{ position: static; }#niise-practice .related-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}@media (max-width: 680px){#niise-practice .page{ padding: 24px 16px 60px; }#niise-practice h1{ font-size: 30px; }#niise-practice .section-head{ display: block; }#niise-practice .home-block,#niise-practice .detail-hero,#niise-practice .detail-body,#niise-practice .breadcrumbs{ padding: 20px; }#niise-practice .cards-grid,#niise-practice .cards-grid.archive,#niise-practice .two-cols,#niise-practice .related-grid,#niise-practice .filter-grid,#niise-practice .type-legend{ grid-template-columns: 1fr; }#niise-practice .detail-title{ font-size: 26px; }}#niise-practice .theme-tools{display:flex;justify-content:flex-end;gap:10px;padding-bottom:18px}#niise-practice .theme-tools button{padding:10px 16px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit;cursor:pointer}#niise-practice :focus-visible{outline:3px solid var(--blue-dark);outline-offset:3px}#niise-practice .site-head{background:var(--paper);border-bottom:1px solid var(--line)}#niise-practice .site-inner{max-width:1220px;margin:auto;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}#niise-practice .site-inner strong{font-size:22px}#niise-practice .site-nav{display:flex;gap:20px}#niise-practice .theme-tools{padding:0}#niise-practice .preview-note{background:var(--soft);color:var(--muted);font-size:12px;padding:10px 24px;text-align:center}#niise-practice .home-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}#niise-practice .case-card{min-width:0}#niise-practice .site-foot{max-width:1172px;margin:30px auto;padding:25px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}#niise-practice .home-intro{padding:22px 0 35px}#niise-practice .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:25px 0}#niise-practice .stat-tile{background:var(--soft);border:1px solid var(--line);padding:20px;border-radius:8px}#niise-practice .stat-tile b{display:block;font-size:38px;color:var(--blue-dark)}#niise-practice .stat-columns{display:grid;grid-template-columns:1fr 1fr;gap:25px}#niise-practice .stat-row{display:grid;grid-template-columns:1fr 45px;gap:10px;margin:13px 0}#niise-practice .stat-track{height:8px;background:var(--soft);grid-column:1/-1;border-radius:4px}#niise-practice .stat-fill{height:100%;background:var(--blue);border-radius:4px}#niise-practice .stats-details summary{cursor:pointer;font-weight:700;color:var(--blue-dark)}#niise-practice .demo-dialog{max-width:540px;width:calc(100% - 32px);padding:28px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:10px}#niise-practice .demo-dialog::backdrop{background:rgba(0,0,0,.65)}#niise-practice button{cursor:pointer}#niise-practice h1{overflow-wrap:anywhere}#niise-practice .detail-demo .section-head{display:none}@media(max-width:1000px){#niise-practice .home-cards{grid-template-columns:1fr 1fr}}@media(max-width:650px){#niise-practice .home-cards,#niise-practice .stat-columns{grid-template-columns:1fr}#niise-practice .stat-grid{grid-template-columns:1fr 1fr}#niise-practice .site-nav{font-size:13px}#niise-practice .filter-grid .filter-field{grid-column:auto!important}#niise-practice .theme-tools{flex-wrap:wrap}}
#niise-practice{font-family:inherit;background:transparent;width:100%;margin:0 auto;max-width:1220px;padding:24px 0;line-height:1.5}#niise-practice h1,#niise-practice h2,#niise-practice h3{color:var(--ink)}#niise-practice .button{height:auto;white-space:normal}#niise-practice .detail-hero .badge{display:inline-flex;align-self:start;height:auto}#niise-practice .detail-demo{margin:0}
#niise-practice .filter-field{min-width:0}#niise-practice select,#niise-practice input{min-width:0;max-width:100%}@media(max-width:680px){#niise-practice .filter-grid{grid-template-columns:minmax(0,1fr)}}