@font-face { font-family:"Lora"; src:url("/static/applicants_v2/ui-assets/fonts/LORA-REGULAR.TTF") format("truetype"); font-weight:400; font-style:normal; font-display:swap; }
    @font-face { font-family:"Lora"; src:url("/static/applicants_v2/ui-assets/fonts/LORA-MEDIUM.TTF") format("truetype"); font-weight:500; font-style:normal; font-display:swap; }
    @font-face { font-family:"Lora"; src:url("/static/applicants_v2/ui-assets/fonts/LORA-SEMIBOLD.TTF") format("truetype"); font-weight:600; font-style:normal; font-display:swap; }
    @font-face { font-family:"Lora"; src:url("/static/applicants_v2/ui-assets/fonts/LORA-BOLD.TTF") format("truetype"); font-weight:700; font-style:normal; font-display:swap; }
    @font-face { font-family:"Lora"; src:url("/static/applicants_v2/ui-assets/fonts/LORA-ITALIC.TTF") format("truetype"); font-weight:400; font-style:italic; font-display:swap; }
    @font-face { font-family:"Lora"; src:url("/static/applicants_v2/ui-assets/fonts/LORA-MEDIUMITALIC.TTF") format("truetype"); font-weight:500; font-style:italic; font-display:swap; }
    @font-face { font-family:"Lora"; src:url("/static/applicants_v2/ui-assets/fonts/LORA-SEMIBOLDITALIC.TTF") format("truetype"); font-weight:600; font-style:italic; font-display:swap; }
    @font-face { font-family:"Lora"; src:url("/static/applicants_v2/ui-assets/fonts/LORA-BOLDITALIC.TTF") format("truetype"); font-weight:700; font-style:italic; font-display:swap; }

    :root {
      --wine-950: #3f0d17;
      --wine-900: #561321;
      --wine-800: #701d2d;
      --wine-700: #84273a;
      --wine-100: #f4e6e8;

      --beige-50: #fcf9f3;
      --beige-100: #f5ecdd;
      --beige-200: #eadbc5;
      --beige-300: #d9c2a4;

      --ink: #38282a;
      --muted: #79676a;
      --white: #fffdf9;
      --success: #386044;
      --danger: #9b1c2d;

      --shadow:
        0 24px 70px rgba(70, 27, 34, .12),
        0 4px 18px rgba(70, 27, 34, .06);
    }

    * {
      box-sizing: border-box;
    }

    body,
    body *,
    button,
    input,
    select,
    textarea,
    option {
      font-family: "Lora", Georgia, serif !important;
    }


    html {
      min-height: 100%;
      background: var(--beige-50);
    }

    body {
      min-height: 100vh;
      margin: 0;
      color: var(--ink);
      font-family:
        Inter,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Arial,
        sans-serif;
      background:
        radial-gradient(
          circle at 10% 5%,
          rgba(132, 39, 58, .08),
          transparent 30%
        ),
        radial-gradient(
          circle at 90% 90%,
          rgba(217, 194, 164, .35),
          transparent 34%
        ),
        linear-gradient(
          145deg,
          var(--beige-50) 0%,
          #f8f0e4 55%,
          #f2e3d0 100%
        );
    }

    body::before {
      content: "";
      position: fixed;
      inset: 0;
      z-index: -1;
      pointer-events: none;
      opacity: .34;
      background-image:
        linear-gradient(
          rgba(86, 19, 33, .025) 1px,
          transparent 1px
        ),
        linear-gradient(
          90deg,
          rgba(86, 19, 33, .025) 1px,
          transparent 1px
        );
      background-size: 34px 34px;
    }

    a {
      color: inherit;
    }

    .event-status-sprite {
      display: inline-block;
      width: 28px;
      height: 28px;
      background-image: url("/static/applicants_v2/ui-assets/status/status_sprite_64.png");
      background-repeat: no-repeat;
      background-size: 84px 56px;
      vertical-align: middle;
      border-radius: 3px;
    }
    .event-status-sprite.pen { background-position: 0 0; }
    .event-status-sprite.envelope { background-position: -28px 0; }
    .event-status-sprite.hourglass { background-position: -56px 0; }
    .event-status-sprite.tools { background-position: 0 -28px; }
    .event-status-sprite.masks { background-position: -28px -28px; }
    .event-status-sprite.thumb { background-position: -56px -28px; }

    h1,
    h2,
    h3 {
      margin-top: 0;
      color: var(--wine-950);
      font-family:
        Georgia,
        "Times New Roman",
        serif;
      font-weight: 600;
      letter-spacing: -.02em;
    }

    h1 {
      font-size: clamp(38px, 6vw, 72px);
      line-height: 1;
    }

    h2 {
      font-size: clamp(24px, 3vw, 34px);
    }

    p {
      line-height: 1.65;
    }

    .wrap {
      width: min(1180px, calc(100% - 32px));
      margin: 0 auto;
      padding: 34px 0;
    }

    .card {
      background:
        linear-gradient(
          145deg,
          rgba(255, 253, 249, .98),
          rgba(250, 244, 234, .96)
        );
      border: 1px solid rgba(112, 29, 45, .13);
      border-radius: 26px;
      padding: clamp(24px, 4vw, 42px);
      box-shadow: var(--shadow);
    }

    .muted {
      color: var(--muted);
    }

    .small {
      font-size: 14px;
    }

    .error {
      margin-bottom: 16px;
      padding: 13px 15px;
      color: var(--danger);
      background: #fff1f2;
      border: 1px solid #f2c7cd;
      border-radius: 14px;
    }

    .ok {
      color: var(--success);
    }

    label {
      display: block;
      margin: 18px 0 8px;
      color: var(--wine-950);
      font-weight: 650;
    }

    input {
      width: 100%;
      padding: 14px 16px;
      color: var(--ink);
      background: rgba(255, 253, 249, .92);
      border: 1px solid var(--beige-300);
      border-radius: 14px;
      outline: none;
      transition:
        border-color .2s ease,
        box-shadow .2s ease;
    }

    input:focus {
      border-color: var(--wine-700);
      box-shadow: 0 0 0 4px rgba(132, 39, 58, .10);
    }

    button,
    .btn {
      display: inline-flex;
      min-height: 48px;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 13px 22px;
      color: #fff;
      font: inherit;
      font-weight: 700;
      text-decoration: none;
      background:
        linear-gradient(
          135deg,
          var(--wine-800),
          var(--wine-950)
        );
      border: 1px solid transparent;
      border-radius: 15px;
      box-shadow: 0 12px 28px rgba(86, 19, 33, .18);
      cursor: pointer;
      transition:
        transform .18s ease,
        box-shadow .18s ease,
        background .18s ease;
    }

    button:hover,
    .btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 16px 34px rgba(86, 19, 33, .24);
    }

    .btn-secondary {
      color: var(--wine-900);
      background: rgba(255, 253, 249, .78);
      border-color: rgba(112, 29, 45, .22);
      box-shadow: none;
    }

    .btn-secondary:hover {
      background: var(--white);
      box-shadow: 0 10px 24px rgba(86, 19, 33, .10);
    }

    .topbar {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 22px;
      margin-bottom: 26px;
    }

    .row {
      display: flex;
      align-items: center;
      gap: 12px;
      flex-wrap: wrap;
    }

    .grid {
      display: grid;
      gap: 22px;
    }

    .brand-mark {
      display: inline-flex;
      width: 54px;
      height: 54px;
      align-items: center;
      justify-content: center;
      color: #fff;
      font-family: Georgia, serif;
      font-size: 22px;
      background:
        linear-gradient(
          145deg,
          var(--wine-700),
          var(--wine-950)
        );
      border-radius: 18px;
      box-shadow: 0 12px 30px rgba(86, 19, 33, .24);
    }

    .eyebrow {
      margin-bottom: 14px;
      color: var(--wine-700);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .18em;
      text-transform: uppercase;
    }

    .hero {
      min-height: calc(100vh - 68px);
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 30px 0;
    }

    .hero-card {
      width: min(760px, 100%);
      padding: clamp(38px, 8vw, 78px);
      text-align: center;
      background:
        linear-gradient(
          155deg,
          rgba(255, 253, 249, .98),
          rgba(246, 236, 221, .96)
        );
      border: 1px solid rgba(112, 29, 45, .14);
      border-radius: 36px;
      box-shadow: var(--shadow);
    }

    .hero-title {
      margin-bottom: 20px;
    }

    .hero-subtitle {
      max-width: 570px;
      margin: 0 auto;
      color: var(--muted);
      font-size: clamp(17px, 2.2vw, 21px);
    }

    .hero-action {
      min-width: min(340px, 100%);
      min-height: 64px;
      margin-top: 38px;
      padding: 18px 34px;
      font-size: 19px;
      border-radius: 20px;
    }

    .portal-header {
      padding: 16px 0 30px;
      text-align: center;
    }

    .portal-header h1 {
      margin-bottom: 12px;
      font-size: clamp(36px, 5vw, 58px);
    }

    .portal-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 24px;
      margin-top: 30px;
    }

    .portal-tile {
      position: relative;
      min-height: 230px;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      overflow: hidden;
      padding: 34px;
      color: var(--wine-950);
      text-decoration: none;
      background:
        linear-gradient(
          145deg,
          rgba(255, 253, 249, .98),
          rgba(239, 220, 194, .92)
        );
      border: 1px solid rgba(112, 29, 45, .15);
      border-radius: 28px;
      box-shadow: var(--shadow);
      transition:
        transform .22s ease,
        box-shadow .22s ease;
    }

    .portal-tile::before {
      content: "";
      position: absolute;
      width: 170px;
      height: 170px;
      top: -70px;
      right: -55px;
      background: rgba(112, 29, 45, .07);
      border-radius: 50%;
    }

    .portal-tile:hover {
      transform: translateY(-5px);
      box-shadow:
        0 30px 70px rgba(70, 27, 34, .17),
        0 6px 20px rgba(70, 27, 34, .08);
    }

    .portal-icon {
      width: 58px;
      height: 58px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      margin-bottom: auto;
      color: #fff;
      font-size: 26px;
      background:
        linear-gradient(
          145deg,
          var(--wine-700),
          var(--wine-950)
        );
      border-radius: 18px;
    }

    /* DOCUMENT_WORKFLOW_QUEUE_BADGES_V1 */
    .portal-icon-badged {
      position: relative;
      overflow: visible;
    }

    .portal-badge {
      position: absolute;
      top: -9px;
      right: -9px;
      min-width: 25px;
      height: 25px;
      padding: 0 7px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      box-sizing: border-box;
      border: 2px solid #fff;
      border-radius: 999px;
      background: #b3263e;
      color: #fff;
      font-size: 12px;
      font-weight: 700;
      line-height: 1;
      box-shadow: 0 4px 12px rgba(70, 27, 34, .24);
      z-index: 2;
    }

    .portal-tile h2 {
      margin: 26px 0 8px;
    }

    .portal-tile p {
      margin: 0;
      color: var(--muted);
    }

    @media (max-width: 720px) {
      .wrap {
        width: min(100% - 22px, 1180px);
        padding: 18px 0;
      }

      .topbar {
        align-items: flex-start;
        flex-direction: column;
      }

      .portal-grid {
        grid-template-columns: 1fr;
      }

      .portal-tile {
        min-height: 190px;
      }

      .hero {
        min-height: calc(100vh - 36px);
      }

      .hero-card {
        border-radius: 26px;
      }
    }


    /* ADMIN_PREMIUM_DASHBOARD_V3 */

    .admin-premium {
      width: min(1320px, calc(100vw - 48px));
      min-height: calc(100vh - 68px);
      margin-left: 50%;
      transform: translateX(-50%);
      display: flex;
      flex-direction: column;
    }

    .admin-premium-header {
      position: relative;
      flex: 0 0 auto;
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      gap: clamp(24px, 3vw, 42px);
      padding:
        clamp(4px, 1vh, 12px)
        4px
        clamp(18px, 2.2vh, 28px);
      margin-bottom: clamp(18px, 2.2vh, 28px);
    }

    .admin-premium-header::after {
      content: "";
      position: absolute;
      left: 4px;
      right: 4px;
      bottom: 0;
      height: 1px;
      background:
        linear-gradient(
          90deg,
          rgba(112, 29, 45, .34),
          rgba(112, 29, 45, .08) 68%,
          transparent
        );
    }

    .admin-premium-heading {
      max-width: 820px;
      min-width: 0;
    }

    .admin-premium-eyebrow {
      margin-bottom: clamp(8px, 1.1vh, 14px);
      color: var(--wine-700);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .20em;
      text-transform: uppercase;
    }

    .admin-premium-title {
      margin: 0 0 clamp(8px, 1.2vh, 14px);
      font-size: clamp(48px, 5vw, 76px);
      line-height: .96;
      letter-spacing: -.04em;
    }

    .admin-premium-subtitle {
      max-width: 720px;
      margin: 0;
      color: var(--muted);
      font-size: clamp(16px, 1.45vw, 19px);
      line-height: 1.52;
    }

    /*
     * Header actions intentionally remain visually stable.
     * Their V2 appearance was approved.
     */

    .admin-premium-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 10px;
      padding-bottom: 4px;
      flex-wrap: wrap;
      flex: 0 0 auto;
    }

    .admin-premium-actions form {
      margin: 0;
    }

    .admin-premium-action {
      min-height: 52px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 13px 22px;
      color: var(--wine-900);
      font: inherit;
      font-size: 15px;
      font-weight: 750;
      line-height: 1;
      text-decoration: none;
      background:
        linear-gradient(
          145deg,
          rgba(255, 253, 249, .92),
          rgba(245, 232, 213, .88)
        );
      border: 1px solid rgba(112, 29, 45, .17);
      border-radius: 17px;
      box-shadow:
        0 10px 28px rgba(70, 27, 34, .07),
        inset 0 1px 0 rgba(255,255,255,.92);
      cursor: pointer;
      transition:
        border-color .45s ease,
        box-shadow .45s ease,
        background .45s ease;
    }

    .admin-premium-action:hover {
      border-color: rgba(112, 29, 45, .30);
      background:
        linear-gradient(
          145deg,
          rgba(255, 255, 255, .98),
          rgba(247, 235, 217, .96)
        );
      box-shadow:
        0 15px 34px rgba(70, 27, 34, .11),
        inset 0 1px 0 rgba(255,255,255,.98);
    }

    .admin-premium-action--logout {
      color: #fff;
      background:
        linear-gradient(
          145deg,
          var(--wine-700),
          var(--wine-950)
        );
      border-color: transparent;
      box-shadow:
        0 13px 30px rgba(86, 19, 33, .18),
        inset 0 1px 0 rgba(255,255,255,.14);
    }

    .admin-premium-action--logout:hover {
      color: #fff;
      background:
        linear-gradient(
          145deg,
          #922f45,
          var(--wine-950)
        );
      border-color: transparent;
      box-shadow:
        0 18px 40px rgba(86, 19, 33, .23),
        inset 0 1px 0 rgba(255,255,255,.17);
    }

    .admin-premium-grid {
      flex: 1 1 auto;
      min-height: 0;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      grid-template-rows: repeat(2, minmax(0, 1fr));
      gap: clamp(18px, 2.2vh, 26px);
      padding-bottom: clamp(4px, 1vh, 14px);
    }

    /*
     * V3 principle:
     * geometry never moves.
     * Animation is produced only by light, gradient and shadow.
     */

    .admin-premium-tile {
      position: relative;
      min-height: 0;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      overflow: hidden;
      isolation: isolate;
      padding: clamp(26px, 3.2vh, 38px);
      color: var(--wine-950);
      text-decoration: none;

      background:
        linear-gradient(
          145deg,
          rgba(255, 254, 251, .995) 0%,
          rgba(249, 239, 225, .985) 62%,
          rgba(239, 220, 195, .97) 100%
        );

      border: 1px solid rgba(112, 29, 45, .15);
      border-radius: clamp(26px, 2.6vw, 34px);

      box-shadow:
        0 24px 58px rgba(70, 27, 34, .10),
        0 5px 18px rgba(70, 27, 34, .055),
        inset 0 1px 0 rgba(255,255,255,.94);

      transition:
        border-color .65s ease,
        box-shadow .75s cubic-bezier(.22,.61,.36,1);
    }

    /*
     * Large slow-moving colour field.
     * It runs continuously, so entering hover never causes a jump.
     */
    .admin-premium-tile::before {
      content: "";
      position: absolute;
      inset: -45%;
      z-index: -2;
      pointer-events: none;

      background:
        radial-gradient(
          circle at 18% 24%,
          rgba(132, 39, 58, .15),
          transparent 28%
        ),
        radial-gradient(
          circle at 79% 31%,
          rgba(217, 194, 164, .28),
          transparent 31%
        ),
        radial-gradient(
          circle at 58% 82%,
          rgba(112, 29, 45, .09),
          transparent 27%
        );

      opacity: .66;

      animation:
        adminPremiumGradientFlow
        13s
        ease-in-out
        infinite alternate;

      transition:
        opacity 1s ease;
    }

    /*
     * Glass/light layer.
     * Only opacity changes on hover — no coordinate movement.
     */
    .admin-premium-tile::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -1;
      pointer-events: none;

      background:
        linear-gradient(
          118deg,
          rgba(255,255,255,.58) 0%,
          rgba(255,255,255,.16) 31%,
          transparent 53%,
          rgba(132,39,58,.035) 100%
        );

      opacity: .56;

      transition:
        opacity .9s ease;
    }

    .admin-premium-tile:hover {
      border-color: rgba(112, 29, 45, .28);

      box-shadow:
        0 32px 72px rgba(70, 27, 34, .145),
        0 8px 25px rgba(70, 27, 34, .075),
        inset 0 1px 0 rgba(255,255,255,.98);
    }

    .admin-premium-tile:hover::before {
      opacity: 1;
    }

    .admin-premium-tile:hover::after {
      opacity: .92;
    }

    .admin-premium-icon {
      position: relative;
      flex: 0 0 auto;
      width: clamp(62px, 6vh, 74px);
      height: clamp(62px, 6vh, 74px);
      display: inline-flex;
      align-items: center;
      justify-content: center;

      color: #fff;

      font-family:
        Georgia,
        "Times New Roman",
        serif;

      font-size: clamp(25px, 2.4vw, 30px);
      font-weight: 600;
      line-height: 1;

      background:
        linear-gradient(
          145deg,
          #962f47 0%,
          var(--wine-800) 45%,
          var(--wine-950) 100%
        );

      border: 1px solid rgba(255,255,255,.20);
      border-radius: clamp(19px, 2vw, 23px);

      box-shadow:
        0 15px 30px rgba(86, 19, 33, .23),
        inset 0 1px 0 rgba(255,255,255,.24);

      /*
       * No transform transition by design.
       */
      transition:
        box-shadow .75s ease,
        filter .75s ease;
    }

    .admin-premium-icon::after {
      content: "";
      position: absolute;
      width: 24px;
      height: 24px;
      top: 6px;
      right: 7px;
      border-radius: 50%;

      background:
        radial-gradient(
          circle,
          rgba(255,255,255,.27),
          transparent 68%
        );

      pointer-events: none;
    }

    .admin-premium-tile:hover .admin-premium-icon {
      filter: brightness(1.055);

      box-shadow:
        0 18px 36px rgba(86, 19, 33, .28),
        inset 0 1px 0 rgba(255,255,255,.28);
    }

    .admin-premium-content {
      position: relative;
      z-index: 1;
      margin-top: clamp(18px, 2.5vh, 34px);
      padding-right: 58px;
    }

    .admin-premium-tile h2 {
      margin: 0 0 clamp(7px, 1vh, 11px);
      font-size: clamp(27px, 2.8vw, 38px);
      line-height: 1.03;

      transition:
        color .65s ease;
    }

    .admin-premium-tile p {
      max-width: 570px;
      margin: 0;
      color: var(--muted);
      font-size: clamp(14px, 1.25vw, 16px);
      line-height: 1.52;

      transition:
        color .65s ease;
    }

    .admin-premium-tile:hover h2 {
      color: var(--wine-900);
    }

    .admin-premium-tile:hover p {
      color: #68575a;
    }

    .admin-premium-arrow {
      position: absolute;
      right: clamp(24px, 2.5vw, 34px);
      bottom: clamp(24px, 2.5vw, 34px);

      width: 44px;
      height: 44px;

      display: flex;
      align-items: center;
      justify-content: center;

      color: var(--wine-800);
      font-size: 31px;
      line-height: 1;

      border: 1px solid rgba(112, 29, 45, .15);
      border-radius: 50%;

      background:
        rgba(255, 253, 249, .72);

      backdrop-filter: blur(8px);

      /*
       * Arrow remains geometrically fixed.
       */
      transition:
        color .7s ease,
        background .7s ease,
        border-color .7s ease,
        box-shadow .7s ease;
    }

    .admin-premium-tile:hover .admin-premium-arrow {
      color: #fff;
      background:
        linear-gradient(
          145deg,
          var(--wine-700),
          var(--wine-950)
        );
      border-color: rgba(112,29,45,.35);

      box-shadow:
        0 9px 22px rgba(86,19,33,.18);
    }

    @keyframes adminPremiumGradientFlow {
      0% {
        transform:
          translate3d(-1.5%, -1%, 0)
          rotate(0deg);
      }

      50% {
        transform:
          translate3d(1.5%, 1%, 0)
          rotate(1.2deg);
      }

      100% {
        transform:
          translate3d(-.5%, 1.8%, 0)
          rotate(-.8deg);
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .admin-premium-tile::before {
        animation: none;
      }

      .admin-premium-tile,
      .admin-premium-icon,
      .admin-premium-arrow,
      .admin-premium-action {
        transition: none;
      }
    }

    @media (max-width: 900px) {
      .admin-premium {
        width: min(100%, calc(100vw - 28px));
        min-height: auto;
      }

      .admin-premium-header {
        flex-direction: column;
        align-items: flex-start;
      }

      .admin-premium-grid {
        grid-template-columns: 1fr;
        grid-template-rows: none;
      }

      .admin-premium-tile {
        min-height: 250px;
      }

      .admin-premium-actions {
        justify-content: flex-start;
      }
    }

    @media (max-width: 560px) {
      .admin-premium {
        width: 100%;
        margin-left: 0;
        transform: none;
      }

      .admin-premium-title {
        font-size: 48px;
      }

      .admin-premium-actions {
        width: 100%;
      }

      .admin-premium-action {
        min-height: 48px;
        padding: 12px 18px;
      }

      .admin-premium-tile {
        min-height: 240px;
        padding: 26px;
        border-radius: 27px;
      }

      .admin-premium-content {
        padding-right: 48px;
      }

      .admin-premium-arrow {
        right: 22px;
        bottom: 22px;
      }
    }


    /* ADMIN_USERS_PREMIUM_V1 */

    .eios-admin-page {
      width: min(1320px, calc(100vw - 48px));
      margin-left: 50%;
      transform: translateX(-50%);
      padding-bottom: 26px;
    }

    .eios-admin-header {
      position: relative;
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      gap: 34px;
      margin-bottom: 30px;
      padding: 12px 4px 28px;
    }

    .eios-admin-header::after {
      content: "";
      position: absolute;
      left: 4px;
      right: 4px;
      bottom: 0;
      height: 1px;
      background:
        linear-gradient(
          90deg,
          rgba(112, 29, 45, .34),
          rgba(112, 29, 45, .07) 70%,
          transparent
        );
    }

    .eios-admin-heading {
      max-width: 820px;
      min-width: 0;
    }

    .eios-admin-eyebrow {
      margin-bottom: 12px;
      color: var(--wine-700);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .20em;
      text-transform: uppercase;
    }

    .eios-admin-title {
      margin: 0 0 12px;
      font-size: clamp(48px, 5vw, 76px);
      line-height: .96;
      letter-spacing: -.04em;
    }

    .eios-admin-subtitle {
      max-width: 760px;
      margin: 0;
      color: var(--muted);
      font-size: clamp(16px, 1.45vw, 19px);
      line-height: 1.55;
    }

    .eios-admin-actions {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
      padding-bottom: 4px;
    }

    .eios-admin-actions form {
      margin: 0;
    }

    .eios-premium-button {
      min-height: 52px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 13px 22px;
      color: var(--wine-900);
      font: inherit;
      font-size: 15px;
      font-weight: 750;
      line-height: 1;
      text-decoration: none;
      background:
        linear-gradient(
          145deg,
          rgba(255,253,249,.94),
          rgba(245,232,213,.90)
        );
      border: 1px solid rgba(112,29,45,.17);
      border-radius: 17px;
      box-shadow:
        0 10px 28px rgba(70,27,34,.07),
        inset 0 1px 0 rgba(255,255,255,.94);
      cursor: pointer;
      transition:
        border-color .45s ease,
        box-shadow .55s ease,
        background .55s ease,
        color .45s ease;
    }

    .eios-premium-button:hover {
      border-color: rgba(112,29,45,.31);
      background:
        linear-gradient(
          145deg,
          rgba(255,255,255,.99),
          rgba(248,236,218,.97)
        );
      box-shadow:
        0 16px 38px rgba(70,27,34,.11),
        inset 0 1px 0 rgba(255,255,255,.99);
    }

    .eios-premium-button--primary {
      color: #fff;
      background:
        linear-gradient(
          145deg,
          #922f45,
          var(--wine-800) 46%,
          var(--wine-950)
        );
      border-color: transparent;
      box-shadow:
        0 14px 32px rgba(86,19,33,.20),
        inset 0 1px 0 rgba(255,255,255,.16);
    }

    .eios-premium-button--primary:hover {
      color: #fff;
      border-color: transparent;
      background:
        linear-gradient(
          145deg,
          #a03850,
          var(--wine-800) 44%,
          var(--wine-950)
        );
      box-shadow:
        0 20px 44px rgba(86,19,33,.27),
        inset 0 1px 0 rgba(255,255,255,.20);
    }

    .eios-premium-button--danger {
      color: #941b2b;
      background:
        linear-gradient(
          145deg,
          rgba(255,250,250,.96),
          rgba(252,231,233,.91)
        );
      border-color: rgba(155,28,45,.22);
    }

    .eios-premium-button--danger:hover {
      color: #7e1423;
      border-color: rgba(155,28,45,.42);
      background:
        linear-gradient(
          145deg,
          #fff,
          rgba(250,220,224,.96)
        );
      box-shadow:
        0 14px 32px rgba(155,28,45,.10);
    }

    .eios-premium-button--small {
      min-height: 42px;
      padding: 10px 15px;
      border-radius: 13px;
      font-size: 13.5px;
    }

    .eios-admin-notice {
      margin-bottom: 18px;
      padding: 16px 20px;
      border-radius: 18px;
      font-weight: 650;
      line-height: 1.45;
      box-shadow:
        0 10px 26px rgba(70,27,34,.06);
    }

    .eios-admin-notice--success {
      color: #31573b;
      background:
        linear-gradient(
          145deg,
          rgba(244,251,245,.97),
          rgba(231,243,233,.94)
        );
      border: 1px solid rgba(56,96,68,.18);
    }

    .eios-admin-notice--error {
      color: #8f1c2d;
      background:
        linear-gradient(
          145deg,
          rgba(255,248,249,.98),
          rgba(250,228,232,.94)
        );
      border: 1px solid rgba(155,28,45,.18);
    }

    .eios-premium-panel {
      position: relative;
      overflow: hidden;
      isolation: isolate;
      margin-bottom: 26px;
      padding: clamp(28px, 3vw, 42px);
      background:
        linear-gradient(
          145deg,
          rgba(255,254,251,.995) 0%,
          rgba(249,239,225,.985) 64%,
          rgba(239,220,195,.96) 100%
        );
      border: 1px solid rgba(112,29,45,.14);
      border-radius: 32px;
      box-shadow:
        0 25px 62px rgba(70,27,34,.10),
        0 6px 20px rgba(70,27,34,.055),
        inset 0 1px 0 rgba(255,255,255,.95);
      transition:
        border-color .65s ease,
        box-shadow .75s ease;
    }

    .eios-premium-panel::before {
      content: "";
      position: absolute;
      inset: -45%;
      z-index: -2;
      pointer-events: none;
      opacity: .48;
      background:
        radial-gradient(
          circle at 16% 24%,
          rgba(132,39,58,.12),
          transparent 28%
        ),
        radial-gradient(
          circle at 82% 28%,
          rgba(217,194,164,.24),
          transparent 32%
        ),
        radial-gradient(
          circle at 58% 83%,
          rgba(112,29,45,.07),
          transparent 29%
        );
      animation:
        adminPremiumGradientFlow
        15s
        ease-in-out
        infinite alternate;
      transition: opacity 1s ease;
    }

    .eios-premium-panel:hover::before {
      opacity: .70;
    }

    .eios-panel-head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 22px;
      margin-bottom: 26px;
    }

    .eios-panel-title {
      margin: 0 0 7px;
      font-size: clamp(30px, 3vw, 40px);
      line-height: 1.05;
    }

    .eios-panel-description {
      max-width: 760px;
      margin: 0;
      color: var(--muted);
      font-size: 15px;
      line-height: 1.55;
    }

    .eios-form-grid {
      display: grid;
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 18px;
    }

    .eios-field label {
      margin-top: 0;
    }

    .eios-admin-page input,
    .eios-admin-page select {
      width: 100%;
      min-height: 54px;
      padding: 14px 16px;
      color: var(--ink);
      font: inherit;
      font-size: 15px;
      background:
        linear-gradient(
          145deg,
          rgba(255,254,251,.97),
          rgba(250,243,233,.93)
        );
      border: 1px solid rgba(112,29,45,.14);
      border-radius: 16px;
      outline: none;
      box-shadow:
        inset 0 1px 0 rgba(255,255,255,.85);
      transition:
        border-color .4s ease,
        box-shadow .5s ease,
        background .5s ease;
    }

    .eios-admin-page input:focus,
    .eios-admin-page select:focus {
      border-color: rgba(132,39,58,.48);
      background: rgba(255,254,251,.99);
      box-shadow:
        0 0 0 4px rgba(132,39,58,.085),
        0 10px 28px rgba(70,27,34,.06);
    }

    .eios-create-role-block {
      margin-top: 20px;
      padding-top: 4px;
    }

    .eios-form-actions {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-top: 24px;
      flex-wrap: wrap;
    }

    .eios-filter-grid {
      display: grid;
      grid-template-columns:
        repeat(auto-fit,minmax(210px,1fr));
      align-items: end;
      gap: 16px;
    }

    .eios-search-field {
      grid-column: span 2;
    }

    .eios-filter-actions {
      display: flex;
      align-items: center;
      gap: 9px;
      flex-wrap: wrap;
    }

    .eios-results-summary {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 14px;
      margin: 4px 0 16px;
      color: var(--muted);
      font-size: 14px;
      font-weight: 650;
    }

    .eios-table-wrap {
      overflow-x: auto;
      border: 1px solid rgba(112,29,45,.10);
      border-radius: 22px;
      background: rgba(255,253,249,.58);
      box-shadow:
        inset 0 1px 0 rgba(255,255,255,.75);
    }

    .eios-table {
      width: 100%;
      min-width: 900px;
      border-collapse: separate;
      border-spacing: 0;
    }

    .eios-table th {
      padding: 16px 18px;
      color: var(--wine-800);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .08em;
      text-align: left;
      text-transform: uppercase;
      background: rgba(246,235,220,.72);
      border-bottom: 1px solid rgba(112,29,45,.11);
    }

    .eios-table td {
      padding: 17px 18px;
      vertical-align: middle;
      border-bottom: 1px solid rgba(112,29,45,.075);
      transition:
        background .45s ease;
    }

    .eios-table tbody tr:last-child td {
      border-bottom: 0;
    }

    .eios-table tbody tr:hover td {
      background: rgba(255,255,255,.43);
    }

    .eios-user-id {
      color: var(--muted);
      font-size: 13px;
      font-weight: 700;
    }

    .eios-user-name {
      color: var(--wine-950);
      font-size: 16px;
      font-weight: 750;
      line-height: 1.35;
    }

    .eios-badge {
      display: inline-flex;
      align-items: center;
      min-height: 31px;
      padding: 6px 11px;
      border-radius: 999px;
      font-size: 12.5px;
      font-weight: 750;
      line-height: 1;
      white-space: nowrap;
      background:
        linear-gradient(
          145deg,
          rgba(244,230,232,.94),
          rgba(234,219,197,.83)
        );
      border: 1px solid rgba(112,29,45,.13);
      color: var(--wine-800);
    }

    .eios-badge--ok {
      color: #31573b;
      background:
        linear-gradient(
          145deg,
          rgba(239,248,241,.96),
          rgba(226,240,229,.90)
        );
      border-color: rgba(56,96,68,.16);
    }

    .eios-badge--muted {
      color: #786a6c;
      background:
        linear-gradient(
          145deg,
          rgba(248,245,239,.94),
          rgba(237,229,219,.86)
        );
      border-color: rgba(90,76,78,.10);
    }

    .eios-table-actions {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }

    .eios-table-actions form {
      margin: 0;
    }

    .eios-pagination {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 14px;
      margin-top: 18px;
      flex-wrap: wrap;
    }

    .eios-pagination__label {
      color: var(--muted);
      font-size: 14px;
      font-weight: 650;
    }

    .eios-pagination__actions {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }

    .eios-empty {
      padding: 32px;
      text-align: center;
      color: var(--muted);
      font-size: 16px;
    }

    @media (prefers-reduced-motion: reduce) {
      .eios-premium-panel::before {
        animation: none;
      }

      .eios-premium-panel,
      .eios-premium-button,
      .eios-admin-page input,
      .eios-admin-page select,
      .eios-table td {
        transition: none;
      }
    }

    @media (max-width: 900px) {
      .eios-admin-page {
        width: min(100%, calc(100vw - 28px));
      }

      .eios-admin-header {
        flex-direction: column;
        align-items: flex-start;
      }

      .eios-form-grid {
        grid-template-columns: 1fr;
      }

      .eios-search-field {
        grid-column: auto;
      }
    }

    @media (max-width: 560px) {
      .eios-admin-page {
        width: 100%;
        margin-left: 0;
        transform: none;
      }

      .eios-admin-title {
        font-size: 48px;
      }

      .eios-premium-panel {
        padding: 24px;
        border-radius: 26px;
      }

      .eios-admin-actions,
      .eios-filter-actions {
        width: 100%;
      }
    }


    /* ADMIN_USERS_CASCADE_COLLAPSE_V1 */

    .eios-create-collapsible {
      padding: 0;
    }

    .eios-create-toggle {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      padding: clamp(24px, 2.8vw, 34px)
               clamp(28px, 3vw, 42px);
      color: var(--wine-950);
      font: inherit;
      text-align: left;
      background: transparent;
      border: 0;
      cursor: pointer;
    }

    .eios-create-toggle__text {
      min-width: 0;
    }

    .eios-create-toggle__title {
      display: block;
      margin-bottom: 6px;
      font-family:
        Georgia,
        "Times New Roman",
        serif;
      font-size: clamp(28px, 3vw, 38px);
      font-weight: 700;
      line-height: 1.05;
    }

    .eios-create-toggle__description {
      display: block;
      max-width: 760px;
      color: var(--muted);
      font-size: 15px;
      font-weight: 400;
      line-height: 1.5;
    }

    .eios-create-toggle__icon {
      position: relative;
      flex: 0 0 auto;
      width: 46px;
      height: 46px;
      border-radius: 50%;
      background:
        linear-gradient(
          145deg,
          rgba(255,255,255,.88),
          rgba(239,220,195,.86)
        );
      border: 1px solid rgba(112,29,45,.15);
      box-shadow:
        0 10px 24px rgba(70,27,34,.08),
        inset 0 1px 0 rgba(255,255,255,.92);
    }

    .eios-create-toggle__icon::before,
    .eios-create-toggle__icon::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      width: 16px;
      height: 2px;
      border-radius: 999px;
      background: var(--wine-800);
      transform:
        translate(-50%, -50%);
      transition:
        opacity .4s ease,
        transform .5s cubic-bezier(.22,.61,.36,1);
    }

    .eios-create-toggle__icon::after {
      transform:
        translate(-50%, -50%)
        rotate(90deg);
    }

    .eios-create-toggle[aria-expanded="true"]
    .eios-create-toggle__icon::after {
      opacity: 0;
      transform:
        translate(-50%, -50%)
        rotate(0deg);
    }

    .eios-create-body {
      display: grid;
      grid-template-rows: 0fr;
      opacity: 0;
      transition:
        grid-template-rows .58s cubic-bezier(.22,.61,.36,1),
        opacity .45s ease;
    }

    .eios-create-body.is-open {
      grid-template-rows: 1fr;
      opacity: 1;
    }

    .eios-create-body__inner {
      min-height: 0;
      overflow: hidden;
    }

    .eios-create-body__content {
      padding:
        0
        clamp(28px, 3vw, 42px)
        clamp(30px, 3vw, 42px);
    }

    .eios-field.is-disabled {
      opacity: .56;
    }

    .eios-admin-page select:disabled {
      cursor: not-allowed;
      color: rgba(52,43,45,.55);
      background:
        linear-gradient(
          145deg,
          rgba(245,240,233,.86),
          rgba(235,227,216,.80)
        );
    }

    @media (prefers-reduced-motion: reduce) {
      .eios-create-body,
      .eios-create-toggle__icon::before,
      .eios-create-toggle__icon::after {
        transition: none;
      }
    }


    /* CABINET_LOGO_WHITE_BG_V1 */
    html,
    body {
      background: #fff !important;
    }

    .cabinet-page {
      background: #fff;
    }

    .cabinet-logo-image {
      display: block;
      width: 146px;
      height: 146px;
      object-fit: contain;
    }

    @media (max-width: 980px) {
      .cabinet-logo-image {
        width: 102px;
        height: 102px;
      }
    }

    @media (max-width: 720px) {
      .cabinet-logo-image {
        width: 82px;
        height: 82px;
      }
    }

    /* CABINET_SHELL_V1 */
    .cabinet-page {
      width: min(1460px, calc(100vw - 24px));
      margin-left: 50%;
      transform: translateX(-50%);
      padding: 8px 0 28px;
      color: #2d2927;
    }

    .cabinet-header {
      display: grid;
      grid-template-columns: 190px minmax(0, 1fr) 180px;
      gap: 22px;
      align-items: start;
      min-height: 172px;
    }

    .cabinet-logo-slot {
      display: flex;
      justify-content: center;
      padding-top: 4px;
    }

    .cabinet-heading {
      min-width: 0;
      text-align: center;
    }

    .cabinet-institute-name {
      margin-top: 4px;
      color: #211f1e;
      font-size: clamp(15px, 1.55vw, 24px);
      font-weight: 500;
      letter-spacing: .015em;
      text-transform: uppercase;
    }

    .cabinet-title {
      margin-top: 22px;
      color: #211f1e;
      font-size: clamp(34px, 3.2vw, 52px);
      font-weight: 500;
      line-height: .98;
    }

    .cabinet-subtitle {
      margin-top: 14px;
      color: #69615e;
      font-size: clamp(12px, 1.15vw, 18px);
      letter-spacing: .025em;
      text-transform: uppercase;
    }

    .cabinet-context-tabs {
      display: flex;
      justify-content: center;
      gap: 7px;
      flex-wrap: wrap;
      margin-top: 20px;
    }

    .cabinet-context-tab {
      display: inline-flex;
      min-height: 34px;
      align-items: center;
      justify-content: center;
      padding: 8px 18px;
      color: #625c59;
      font-size: 13px;
      font-weight: 600;
      text-decoration: none;
      text-transform: uppercase;
      background: transparent;
      border: 0;
      border-bottom: 2px solid transparent;
      transition:
        color .18s ease,
        border-color .18s ease,
        background .18s ease;
    }

    .cabinet-context-tab:hover,
    .cabinet-context-tab.is-active {
      color: #8b2636;
      border-bottom-color: #b48b78;
      background: rgba(180,139,120,.06);
    }

    .cabinet-divider {
      height: 2px;
      margin: 0 190px 18px;
      background:
        linear-gradient(
          90deg,
          transparent,
          #b68f7b 12%,
          #b68f7b 88%,
          transparent
        );
    }

    .cabinet-layout {
      display: grid;
      grid-template-columns: 190px minmax(0, 1fr) 180px;
      gap: 22px;
      align-items: start;
    }

    .cabinet-sidebar {
      position: sticky;
      top: 14px;
    }

    .cabinet-main-nav {
      display: grid;
      gap: 8px;
    }

    .cabinet-main-link {
      position: relative;
      display: flex;
      min-height: 44px;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      padding: 10px 14px;
      color: #443e3b;
      font-size: 13px;
      font-weight: 600;
      line-height: 1.2;
      text-decoration: none;
      text-transform: uppercase;
      background: #f1efed;
      border: 1px solid transparent;
      box-shadow: none;
      transition:
        background .18s ease,
        color .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
    }

    .cabinet-main-link:hover {
      color: #7f2634;
      background: #f7f4f2;
      border-color: #ddd4cf;
    }

    .cabinet-main-link.is-active {
      color: #8b2636;
      background: #fff;
      border-color: #e2d8d3;
      box-shadow:
        0 4px 12px rgba(53,43,40,.12);
    }

    .cabinet-main-link.is-active::before {
      content: "";
      position: absolute;
      inset: 7px auto 7px 0;
      width: 3px;
      background: #9e3948;
    }

    .cabinet-main-link.is-disabled {
      color: #aaa29d;
      background: #f4f2f0;
      cursor: default;
      border-color: transparent;
    }

    .cabinet-main-link.is-disabled:hover {
      color: #aaa29d;
      background: #f4f2f0;
      border-color: transparent;
    }

    .cabinet-main-soon {
      font-size: 9px;
      font-weight: 500;
      text-transform: lowercase;
      opacity: .75;
    }

    .cabinet-welcome {
      min-height: 310px;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 40px;
      text-align: center;
    }

    .cabinet-welcome h1 {
      margin: 0;
      color: #302b29;
      font-size: clamp(28px, 3.2vw, 48px);
      font-weight: 500;
      line-height: 1.2;
    }

    .cabinet-main-badge {
      display: inline-flex;
      min-width: 22px;
      height: 22px;
      align-items: center;
      justify-content: center;
      padding: 0 5px;
      color: #fff;
      font-size: 11px;
      background: #8b2636;
      border-radius: 999px;
    }

    .cabinet-content {
      min-width: 0;
      padding: 0 2px;
    }

    .cabinet-userbar {
      position: sticky;
      top: 14px;
      padding: 6px 0 0;
      text-align: center;
    }

    .cabinet-user-avatar {
      position: relative;
      width: 48px;
      height: 48px;
      margin: 0 auto 12px;
      overflow: hidden;
      background: #b7b4b1;
      border-radius: 50%;
    }

    .cabinet-user-avatar-frame {
      width: 48px;
      height: 48px;
      margin: 0 auto 12px;
      overflow: hidden;
      border-radius: 50%;
      flex: 0 0 auto;
    }

    .profile-avatar-image {
      width: 48px;
      height: 48px;
      border-radius: 50%;
      object-fit: cover;
      display: block;
    }

    .cabinet-user-avatar-image {
      display: block;
      width: 100%;
      height: 100%;
      border-radius: 50%;
      object-fit: cover;
      background: #b7b4b1;
    }

    .cabinet-user-avatar-frame .cabinet-user-avatar {
      width: 48px;
      height: 48px;
      margin: 0;
    }

    .cabinet-user-avatar::before {
      content: "";
      position: absolute;
      top: 9px;
      left: 16px;
      width: 16px;
      height: 16px;
      background: #fff;
      border-radius: 50%;
    }

    .cabinet-user-avatar::after {
      content: "";
      position: absolute;
      left: 10px;
      bottom: 6px;
      width: 28px;
      height: 17px;
      background: #fff;
      border-radius: 16px 16px 8px 8px;
    }

    .cabinet-user-name {
      color: #872c3b;
      font-size: 15px;
      font-weight: 700;
      line-height: 1.25;
    }

    .cabinet-user-subtitle {
      margin-top: 7px;
      color: #746c68;
      font-size: 10px;
      line-height: 1.35;
      text-transform: uppercase;
    }


    .cabinet-settings-link {
      display: flex;
      align-items: center;
      gap: 8px;
      margin: 18px 0 8px;
      color: #7a736d;
      text-decoration: none;
      font-size: 13px;
      font-weight: 600;
      letter-spacing: .2px;
    }
    .cabinet-settings-icon {
      font-size: 20px;
      line-height: 1;
      color: #8c8781;
    }
.cabinet-user-rule {
      height: 2px;
      margin: 18px 0 18px;
      background: #b68f7b;
    }

    .cabinet-logout-form {
      margin: 0;
    }

    .cabinet-logout {
      width: 100%;
      min-height: 38px;
      padding: 8px 12px;
      color: #7f2634;
      font-size: 12px;
      text-transform: uppercase;
      background: #e6e2df;
      border: 0;
      border-radius: 2px;
      box-shadow: none;
    }

    .cabinet-logout:hover {
      color: #fff;
      background: #8b2636;
      box-shadow: none;
      transform: none;
    }

    .cabinet-content .topbar,
    .cabinet-content > .portal-header {
      display: none !important;
    }

    .cabinet-content form[action="/logout"] {
      display: none !important;
    }

    .cabinet-content a.btn[href="/me"],
    .cabinet-content a.ms-btn[href="/me"],
    .cabinet-content a[href="/me"].btn-secondary {
      display: none !important;
    }

    .cabinet-content .schedule-settings-tabs {
      display: none !important;
    }

    .cabinet-content h1 {
      font-size: clamp(26px, 2.4vw, 38px);
      line-height: 1.08;
    }

    .cabinet-content h2 {
      font-size: clamp(20px, 1.8vw, 28px);
    }

    @media (max-width: 980px) {
      .cabinet-header {
        grid-template-columns: 110px minmax(0,1fr);
      }

      .cabinet-header-spacer {
        display: none;
      }

      .cabinet-layout {
        grid-template-columns: 175px minmax(0,1fr);
      }

      .cabinet-userbar {
        grid-column: 1 / -1;
        position: static;
        display: grid;
        grid-template-columns: 52px 1fr auto;
        gap: 12px;
        align-items: center;
        padding-top: 18px;
        text-align: left;
        border-top: 1px solid #ded6d1;
      }

      .cabinet-user-avatar {
        margin: 0;
      }

      .cabinet-user-subtitle {
        grid-column: 2;
        margin: 0;
      }

      .cabinet-user-rule {
        display: none;
      }

      .cabinet-logout-form {
        grid-column: 3;
        grid-row: 1 / span 2;
      }

      .cabinet-divider {
        margin-left: 110px;
        margin-right: 0;
      }
    }

    @media (max-width: 720px) {
      .cabinet-page {
        width: min(100%, calc(100vw - 16px));
      }

      .cabinet-header {
        display: block;
        min-height: 0;
      }

      .cabinet-logo-slot {
        margin-bottom: 12px;
      }

      .cabinet-title {
        margin-top: 12px;
      }

      .cabinet-context-tabs {
        justify-content: flex-start;
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 5px;
      }

      .cabinet-context-tab {
        flex: 0 0 auto;
      }

      .cabinet-divider {
        margin: 14px 0;
      }

      .cabinet-layout {
        display: block;
      }

      .cabinet-sidebar {
        position: static;
        margin-bottom: 18px;
      }

      .cabinet-main-nav {
        display: flex;
        overflow-x: auto;
        gap: 6px;
        padding-bottom: 4px;
      }

      .cabinet-main-link {
        flex: 0 0 auto;
        min-height: 38px;
        padding: 9px 12px;
        font-size: 11px;
      }

      .cabinet-userbar {
        display: grid;
        margin-top: 22px;
      }
    }


    /* CABINET_LIGHTWEIGHT_V1 */
    .cabinet-layout {
      grid-template-columns: 205px minmax(0, 1fr) 180px;
      gap: 24px;
    }

    .cabinet-content {
      min-width: 0;
      width: 100%;
      max-width: 100%;
    }

    .cabinet-content > * {
      max-width: 100%;
      box-sizing: border-box;
    }

    .cabinet-content h1 {
      margin: 0 0 10px;
      font-size: clamp(24px, 2vw, 32px) !important;
      line-height: 1.12;
      font-weight: 600;
    }

    .cabinet-content h2 {
      margin-top: 0;
      font-size: clamp(18px, 1.45vw, 23px) !important;
      line-height: 1.2;
      font-weight: 600;
    }

    .cabinet-content h3 {
      font-size: 16px !important;
      line-height: 1.25;
      font-weight: 600;
    }

    .cabinet-content p,
    .cabinet-content .muted {
      line-height: 1.45;
    }

    .cabinet-content .card,
    .cabinet-content .panel,
    .cabinet-content .section,
    .cabinet-content .documents-order-card,
    .cabinet-content .document-request-card,
    .cabinet-content .schedule-hub-card,
    .cabinet-content .admin-premium-tile,
    .cabinet-content .activation-search-panel,
    .cabinet-content .activation-result,
    .cabinet-content .list-card,
    .cabinet-content .summary,
    .cabinet-content .stat,
    .cabinet-content .preview,
    .cabinet-content .fact {
      border-radius: 6px !important;
      box-shadow: none !important;
      border-color: #ddd7d2 !important;
      background: rgba(255,255,255,.82) !important;
    }

    .cabinet-content .card,
    .cabinet-content .panel,
    .cabinet-content .section {
      padding: 16px 18px !important;
    }

    .cabinet-content .documents-order-card,
    .cabinet-content .document-request-card,
    .cabinet-content .schedule-hub-card,
    .cabinet-content .admin-premium-tile,
    .cabinet-content .activation-result,
    .cabinet-content .list-card,
    .cabinet-content .summary,
    .cabinet-content .stat,
    .cabinet-content .preview,
    .cabinet-content .fact {
      padding: 12px 14px !important;
    }

    .cabinet-content .documents-page,
    .cabinet-content .documents-section,
    .cabinet-content .documents-history,
    .cabinet-content .activation-results {
      gap: 10px !important;
    }

    .cabinet-content .documents-page {
      gap: 18px !important;
    }

    .cabinet-content .documents-order-grid,
    .cabinet-content .schedule-hub-grid,
    .cabinet-content .admin-premium-grid {
      gap: 10px !important;
    }

    .cabinet-content .documents-order-card,
    .cabinet-content .schedule-hub-card,
    .cabinet-content .admin-premium-tile {
      min-height: 0 !important;
      transform: none !important;
    }

    .cabinet-content .documents-order-card:hover,
    .cabinet-content .schedule-hub-card:hover,
    .cabinet-content .admin-premium-tile:hover,
    .cabinet-content .activation-result:hover {
      transform: none !important;
      box-shadow: none !important;
      border-color: #bcaea7 !important;
      background: #fff !important;
    }

    .cabinet-content .documents-order-icon,
    .cabinet-content .schedule-hub-icon,
    .cabinet-content .admin-premium-icon,
    .cabinet-content .portal-icon {
      width: 34px !important;
      height: 34px !important;
      min-width: 34px !important;
      flex-basis: 34px !important;
      margin: 0 !important;
      border-radius: 4px !important;
      font-size: 15px !important;
      box-shadow: none !important;
    }

    .cabinet-content .documents-order-card h3,
    .cabinet-content .schedule-hub-card h2,
    .cabinet-content .admin-premium-tile h2 {
      font-size: 15px !important;
      margin: 0 0 3px !important;
    }

    .cabinet-content .documents-order-card p,
    .cabinet-content .schedule-hub-card p,
    .cabinet-content .admin-premium-tile p {
      margin: 2px 0 0 !important;
      font-size: 12px !important;
      line-height: 1.35 !important;
    }

    .cabinet-content .btn,
    .cabinet-content button,
    .cabinet-content input[type="submit"] {
      min-height: 34px;
      padding: 7px 12px;
      border-radius: 4px;
      box-shadow: none !important;
      font-size: 12px;
    }

    .cabinet-content input:not([type="checkbox"]):not([type="radio"]),
    .cabinet-content select,
    .cabinet-content textarea {
      min-height: 36px;
      padding: 8px 10px !important;
      border-radius: 4px !important;
      box-shadow: none !important;
      font-size: 13px !important;
    }

    .cabinet-content textarea {
      min-height: 86px;
    }

    .cabinet-content table {
      font-size: 12px;
    }

    .cabinet-content th {
      padding: 7px 9px !important;
      font-size: 10px !important;
      letter-spacing: .025em;
      text-transform: uppercase;
      background: #f2f0ee !important;
    }

    .cabinet-content td {
      padding: 8px 9px !important;
      line-height: 1.35;
    }

    .cabinet-content .pill,
    .cabinet-content .status,
    .cabinet-content .document-status,
    .cabinet-content .badge {
      min-height: 24px !important;
      padding: 4px 8px !important;
      border-radius: 999px !important;
      font-size: 11px !important;
    }

    .cabinet-content .admin-premium-header,
    .cabinet-content .activation-header,
    .cabinet-content .documents-header,
    .cabinet-content .schedule-hub-header {
      margin-bottom: 14px !important;
    }

    .cabinet-content .admin-premium-title,
    .cabinet-content .activation-header h1,
    .cabinet-content .documents-header h1 {
      font-size: clamp(24px, 2vw, 32px) !important;
      line-height: 1.12 !important;
      margin: 0 0 6px !important;
    }

    .cabinet-content .admin-premium-subtitle {
      max-width: 760px;
      margin: 0;
      font-size: 13px;
      line-height: 1.45;
    }

    .cabinet-content .admin-premium-actions,
    .cabinet-content .topbar form[action="/logout"],
    .cabinet-content a[href="/me"].btn,
    .cabinet-content a[href="/me"].admin-premium-action {
      display: none !important;
    }

    .cabinet-content .activation-cabinet,
    .cabinet-content .schedule-hub,
    .cabinet-content .documents-page,
    .cabinet-content .admin-premium,
    .cabinet-content .phone-shell,
    .cabinet-content .stats-shell,
    .cabinet-content .messenger-shell {
      width: 100% !important;
      max-width: none !important;
      margin-left: 0 !important;
      margin-right: 0 !important;
      padding-bottom: 16px !important;
    }

    .cabinet-content .activation-search-panel {
      padding: 14px !important;
    }

    .cabinet-content .activation-search {
      padding: 9px 11px !important;
      border-radius: 4px !important;
      font-size: 14px !important;
    }

    .cabinet-content .activation-results {
      margin-top: 12px !important;
    }

    .cabinet-content .activation-result {
      gap: 10px !important;
    }

    .cabinet-content .activation-action {
      min-height: 32px !important;
    }

    .cabinet-content .event-empty,
    .cabinet-content .empty,
    .cabinet-content .activation-empty,
    .cabinet-content .activation-hint {
      padding: 18px 10px !important;
      font-size: 13px !important;
    }

    .cabinet-content .table-wrap {
      border-radius: 0 !important;
      box-shadow: none !important;
    }

    .cabinet-content .modal-box,
    .cabinet-content .activation-qr-card {
      /* Functional overlays keep their larger presentation. */
      border-radius: 12px !important;
    }

    .cabinet-welcome {
      min-height: 260px;
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
    }

    .cabinet-welcome h1 {
      margin: 0 !important;
      color: #544d49;
      font-size: clamp(24px, 2.3vw, 34px) !important;
      font-weight: 500;
    }

    @media (max-width: 980px) {
      .cabinet-layout {
        grid-template-columns: 180px minmax(0, 1fr);
        gap: 18px;
      }
    }

    @media (max-width: 720px) {
      .cabinet-layout {
        display: block;
      }

      .cabinet-content .card,
      .cabinet-content .panel,
      .cabinet-content .section {
        padding: 13px !important;
      }

      .cabinet-content table {
        font-size: 11px;
      }
    }

    /* CABINET_MOBILE_NAV_V2 */
    .cabinet-mobile-actions,
    .cabinet-mobile-menu,
    .cabinet-context-tabs-mobile {
      display: none;
    }

    @media (max-width: 720px) {
      .cabinet-page {
        width: 100%;
        padding: 0 0 22px;
        overflow-x: clip;
      }

      .cabinet-header {
        position: sticky;
        top: 0;
        z-index: 90;
        display: grid;
        grid-template-columns: 66px minmax(0, 1fr) auto;
        gap: 10px;
        align-items: center;
        min-height: 82px;
        padding: 8px 12px 0;
        box-sizing: border-box;
        background: rgba(255,255,255,.98);
        backdrop-filter: blur(8px);
      }

      .cabinet-logo-slot {
        grid-column: 1;
        grid-row: 1;
        justify-content: flex-start;
        margin: 0;
        padding: 0;
      }

      .cabinet-logo-image {
        width: 58px;
        height: 58px;
      }

      .cabinet-heading {
        grid-column: 2;
        grid-row: 1;
        text-align: left;
        min-width: 0;
      }

      .cabinet-institute-name {
        margin: 0;
        overflow: hidden;
        color: #4d5552;
        font-size: 0;
        line-height: 1;
        font-weight: 600;
        letter-spacing: .03em;
        white-space: nowrap;
      }

      .cabinet-institute-name::before {
        content: "ЭИОС РГИСИ";
        font-size: clamp(20px, 6.6vw, 26px);
      }

      .cabinet-title {
        display: none;
      }

      .cabinet-subtitle {
        display: none;
      }

      .cabinet-mobile-actions {
        grid-column: 3;
        grid-row: 1;
        display: block;
      }

      .cabinet-mobile-menu-toggle {
        min-width: 64px;
        min-height: 38px;
        padding: 8px 10px;
        border: 1px solid #d8d0ca;
        border-radius: 8px;
        background: #fff;
        color: #7f2634;
        box-shadow: none;
        font: inherit;
        font-size: 12px;
        font-weight: 700;
        text-transform: uppercase;
      }

      .cabinet-mobile-menu-toggle:hover,
      .cabinet-mobile-menu-toggle:focus-visible {
        color: #fff;
        background: #8b2636;
        border-color: #8b2636;
        transform: none;
        box-shadow: none;
      }

      .cabinet-heading > .cabinet-context-tabs {
        display: none;
      }

      .cabinet-context-tabs-mobile {
        display: flex;
        width: auto;
        justify-content: flex-start;
        gap: 0;
        margin: -4px 12px 12px;
        padding: 0 0 6px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scrollbar-width: none;
        scroll-snap-type: x proximity;
      }

      .cabinet-context-tabs::-webkit-scrollbar {
        display: none;
      }

      .cabinet-context-tab {
        flex: 0 0 auto;
        min-height: 34px;
        padding: 7px 12px;
        font-size: 11px;
        scroll-snap-align: start;
      }

      .cabinet-header-spacer {
        display: none;
      }

      .cabinet-mobile-menu[hidden] {
        display: none !important;
      }

      .cabinet-mobile-menu {
        position: relative;
        z-index: 80;
        display: block;
        margin: 0 12px 10px;
        padding: 10px;
        background: #fff;
        border: 1px solid #ded8d2;
        border-radius: 12px;
        box-shadow: 0 12px 32px rgba(53,43,40,.14);
      }

      .cabinet-mobile-menu-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 7px;
      }

      .cabinet-mobile-menu-link {
        position: relative;
        display: flex;
        min-width: 0;
        min-height: 48px;
        align-items: center;
        justify-content: space-between;
        gap: 7px;
        padding: 9px 11px;
        box-sizing: border-box;
        color: #443e3b;
        font-size: 12px;
        font-weight: 600;
        line-height: 1.2;
        text-decoration: none;
        background: #f3f5f6;
        border: 1px solid transparent;
        border-radius: 7px;
      }

      .cabinet-mobile-menu-link.is-active {
        color: #8b2636;
        background: #f8eded;
        border-color: #ead7d9;
      }

      .cabinet-mobile-menu-link.is-disabled {
        color: #aaa29d;
        background: #f4f2f0;
      }

      .cabinet-mobile-menu-link .cabinet-main-badge {
        flex: 0 0 auto;
      }

      .cabinet-mobile-menu-footer {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 7px;
        margin-top: 9px;
        padding-top: 9px;
        border-top: 1px solid #e6dfda;
      }

      .cabinet-mobile-settings,
      .cabinet-mobile-logout {
        display: flex;
        width: 100%;
        min-height: 42px;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        padding: 8px 10px;
        color: #625c59;
        font: inherit;
        font-size: 12px;
        font-weight: 700;
        text-decoration: none;
        text-transform: uppercase;
        background: #f1efed;
        border: 1px solid transparent;
        border-radius: 7px;
        box-shadow: none;
      }

      .cabinet-mobile-logout-form {
        margin: 0;
      }

      .cabinet-mobile-logout:hover,
      .cabinet-mobile-settings:hover {
        color: #8b2636;
        background: #f7f4f2;
        border-color: #ddd4cf;
        transform: none;
        box-shadow: none;
      }

      .cabinet-divider {
        height: 2px;
        margin: 0 12px 14px;
      }

      .cabinet-layout {
        display: block;
        padding: 0 12px;
      }

      .cabinet-sidebar {
        display: none;
      }

      .cabinet-userbar {
        display: none;
      }

      .cabinet-content {
        width: 100%;
        padding: 0;
      }

      .cabinet-content h1 {
        font-size: 27px !important;
      }
    }

    /* CABINET_MOBILE_CONTENT_HARDENING_V1 */
    @media (max-width: 720px) {
      .cabinet-content,
      .cabinet-content > *,
      .cabinet-content section,
      .cabinet-content article,
      .cabinet-content form,
      .cabinet-content fieldset,
      .cabinet-content details {
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box;
      }

      .cabinet-content img,
      .cabinet-content svg,
      .cabinet-content canvas,
      .cabinet-content video,
      .cabinet-content iframe {
        max-width: 100% !important;
      }

      .cabinet-content input:not([type="checkbox"]):not([type="radio"]),
      .cabinet-content select,
      .cabinet-content textarea {
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box;
      }

      .cabinet-content pre,
      .cabinet-content code,
      .cabinet-content a,
      .cabinet-content td,
      .cabinet-content th {
        overflow-wrap: anywhere;
        word-break: break-word;
      }

      .cabinet-content [style*="min-width"] {
        min-width: 0 !important;
      }

      .cabinet-content [style*="width:100%"],
      .cabinet-content [style*="width: 100%"] {
        max-width: 100% !important;
        box-sizing: border-box;
      }

      .cabinet-content table {
        max-width: 100%;
      }

      .cabinet-content .card,
      .cabinet-content [class*="-card"],
      .cabinet-content [class*="-panel"] {
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
      }

      .cabinet-content .btn,
      .cabinet-content button,
      .cabinet-content input[type="submit"] {
        max-width: 100%;
        white-space: normal;
        line-height: 1.2;
      }

      .cabinet-content h1 {
        overflow-wrap: anywhere;
      }
    }

    /* ADMIN_IMPERSONATION_V1 */
    .impersonation-overlay {
      position: fixed;
      top: 14px;
      right: 14px;
      z-index: 2147483000;
      width: min(390px, calc(100vw - 28px));
      box-sizing: border-box;
      padding: 14px 16px;
      border: 2px solid #b45309;
      border-radius: 14px;
      background: rgba(255, 251, 235, 0.98);
      box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.18),
        0 2px 8px rgba(0, 0, 0, 0.12);
      color: #78350f;
      backdrop-filter: blur(8px);
    }

    .impersonation-overlay__title {
      margin: 0 0 5px;
      font-weight: 800;
      font-size: 14px;
      line-height: 1.25;
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }

    .impersonation-overlay__user {
      margin: 0 0 10px;
      font-weight: 700;
      font-size: 15px;
      line-height: 1.35;
      overflow-wrap: anywhere;
    }

    .impersonation-overlay form {
      margin: 0;
    }

    .impersonation-overlay button {
      width: 100%;
      cursor: pointer;
      border: 0;
      border-radius: 9px;
      padding: 9px 12px;
      background: #92400e;
      color: #ffffff;
      font: inherit;
      font-weight: 700;
    }

    .impersonation-overlay button:hover {
      background: #78350f;
    }

    @media (max-width: 700px) {
      .impersonation-overlay {
        position: sticky;
        top: 0;
        right: auto;
        width: 100%;
        max-width: none;
        min-height: 0;
        margin: 0;
        padding:
          calc(8px + env(safe-area-inset-top, 0px))
          10px
          8px;
        border: 0;
        border-bottom: 2px solid #b45309;
        border-radius: 0;
        background: rgba(255, 251, 235, 0.99);
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
          "title action"
          "user action";
        column-gap: 10px;
        row-gap: 1px;
        align-items: center;
      }

      .impersonation-overlay__title {
        grid-area: title;
        margin: 0;
        font-size: 10px;
        line-height: 1.15;
        letter-spacing: 0.055em;
      }

      .impersonation-overlay__user {
        grid-area: user;
        min-width: 0;
        margin: 0;
        font-size: 13px;
        line-height: 1.2;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
      }

      .impersonation-overlay form {
        grid-area: action;
      }

      .impersonation-overlay button {
        width: auto;
        min-height: 34px;
        padding: 7px 10px;
        border-radius: 8px;
        font-size: 12px;
        line-height: 1.15;
        white-space: nowrap;
      }
    }

    @media (max-width: 390px) {
      .impersonation-overlay {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
          "title"
          "user"
          "action";
        row-gap: 4px;
      }

      .impersonation-overlay button {
        width: 100%;
      }
    }
