















  .auth-form label{ display:block; font-size:var(--fs-2); font-weight:700; color:var(--muted); margin:14px 0 5px; }
  .auth-form input[type=text], .auth-form input[type=email], .auth-form input[type=password]{
    width:100%; box-sizing:border-box; height:42px; padding:10px 12px;
    border-width:1px; border-style:solid; border-color:var(--line);
    border-radius:var(--sk-r-sm); background:var(--card); color:var(--text);
    font-size:var(--fs-4); font-family:inherit;
  }
  .auth-form input:focus{
    outline:none; border-color:var(--primary); box-shadow:0 0 0 3px rgba(76,100,166,.15);
  }
  .auth-submit{
    width:100%; margin-top:18px; height:44px; border-width:0; border-radius:var(--sk-r-sm);
    background:var(--primary); color:var(--on-primary); font-size:var(--fs-5); font-weight:800;
    cursor:pointer; font-family:inherit;
  }
  .auth-submit:hover:not(:disabled){ background:var(--sk-shell-2); }
  .auth-submit:disabled{ opacity:.55; cursor:default; }

  .auth-submit.secondary{
    margin-top:8px; background:transparent; color:var(--muted);
    border-width:1px; border-style:solid; border-color:var(--line);
  }
  .auth-submit.secondary:hover:not(:disabled){ background:var(--sk-bg2); color:var(--text); }
  .auth-msg{ margin-top:12px; font-size:var(--fs-3); min-height:17px; text-align:center; line-height:1.55; }

  .auth-msg.err, .auth-msg.bad{ color:var(--negative); }
  .auth-msg.ok{ color:var(--positive); }
  .auth-rules{ margin-top:7px; display:flex; gap:var(--sp-5); font-size:var(--fs-1); color:var(--muted); }
  .auth-rules span::before{ content:'\25CB '; }
  .auth-rules span.hit{ color:var(--positive); font-weight:700; }
  .auth-rules span.hit::before{ content:'\25CF '; }
  .auth-note{
    margin-top:16px; padding:11px 13px; border-radius:var(--sk-r-sm);
    background:var(--primary-light); color:var(--primary);
    border-width:1px; border-style:solid; border-color:var(--line-soft);
    font-size:var(--fs-2); line-height:1.65;
  }

  .auth-totp-head{ font-size:var(--fs-3); color:var(--text); font-weight:700; line-height:1.6; margin-bottom:2px; text-align:center; }
  .auth-totp-qr{ display:flex; justify-content:center; margin:10px 0; }





  .auth-totp-qr svg{ width:280px; height:280px; border-radius:var(--sk-r-sm); border:1px solid var(--line); }
  .auth-totp-secret{
    margin-top:10px; padding:12px; border-radius:var(--sk-r-sm); text-align:center;
    background:var(--sk-bg2); border-width:1px; border-style:solid; border-color:var(--line);
    font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
    font-size:var(--fs-5); font-weight:800; letter-spacing:2px; color:var(--text); word-break:break-all;
  }
  #authTotpForm #totpCode{ text-align:center; letter-spacing:6px; font-size:var(--fs-6); font-weight:800; }














  .lp-page{
    min-height:100vh; display:flex; align-items:center; justify-content:center; padding:32px;

    background:radial-gradient(900px 520px at 12% 0%, var(--primary-light), transparent 70%), var(--sk-bg2);
  }
  .lp-card{
    width:100%; max-width:1100px; height:clamp(560px, calc(100vh - 64px), 680px);
    display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-4); padding:var(--sp-4);
    background:var(--card); border-width:1px; border-style:solid; border-color:var(--line);

    border-radius:calc(var(--radius-xl) + var(--sp-4));
    box-shadow:0 1px 2px rgba(22,34,60,.04), 0 24px 56px -16px rgba(22,34,60,.18);
  }


  .lp-show{
    position:relative; min-height:0; overflow:hidden; isolation:isolate;
    border-radius:var(--radius-xl); background:var(--sk-shell); color:#fff;
  }
  .lp-slides{ position:absolute; inset:0; }


  .lp-slide{ position:absolute; inset:0; z-index:0; opacity:0; transition:opacity .6s ease .6s; }
  .lp-slide.is-on{ z-index:1; opacity:1; transition:opacity .6s ease; }

  .lp-slide[data-p="spam"]{ --lp-c:var(--prod-spam); }
  .lp-slide[data-p="screen"]{ --lp-c:var(--prod-screen); }
  .lp-slide[data-p="jbolt"]{ --lp-c:var(--prod-jbolt); }
  .lp-slide[data-p="mudfix"]{ --lp-c:var(--prod-mudfix); }

  .lp-art{
    position:absolute; inset:0; background-color:var(--lp-c);
    background-image:linear-gradient(155deg,
      color-mix(in srgb, var(--lp-c) 80%, #fff) 0%, var(--lp-c) 45%, color-mix(in srgb, var(--lp-c) 52%, #0b1220) 100%);
  }
  .lp-rings{ position:absolute; inset:0; width:100%; height:100%; }
  .lp-slide:nth-child(even) .lp-rings{ transform:scaleX(-1); }


  .lp-emblem{
    position:absolute; left:50%; top:40%; transform:translate(-50%,-50%);

    width:min(300px, 72%); height:112px; padding:0 30px; display:grid; place-items:center; border-radius:26px;
    background:#fff;
    box-shadow:0 0 0 8px rgba(255,255,255,.14), 0 24px 50px -16px rgba(0,0,0,.40);
  }
  .lp-logo{ display:block; width:100%; max-width:220px; height:auto; max-height:56px; object-fit:contain; }

  .lp-img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; }
  .lp-img.ok{ opacity:1; }

  .lp-slide::after{
    content:''; position:absolute; left:0; right:0; bottom:0; height:62%; pointer-events:none;
    background:linear-gradient(to top, rgba(8,12,24,.66), rgba(8,12,24,0));
  }
  .lp-cap{ position:absolute; left:32px; right:32px; bottom:88px; z-index:1; }
  .lp-cap-t{ display:block; font-size:var(--fs-8); font-weight:800; line-height:1.25; letter-spacing:-.02em; }

  .lp-cap-d{ display:block; margin-top:6px; font-size:var(--fs-5); line-height:1.6; color:rgba(255,255,255,.88);
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .lp-tag{
    position:absolute; top:22px; left:22px; z-index:2; padding:6px 12px;
    border-radius:var(--radius-full); background:rgba(10,15,30,.28); border:1px solid rgba(255,255,255,.22);
    font-size:var(--fs-2); font-weight:700; color:#fff; line-height:1.4;
  }

  .lp-ctl{
    position:absolute; left:32px; right:32px; bottom:22px; z-index:2;
    display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:var(--sp-3);
  }
  .lp-dot{
    min-width:0; height:36px; padding:8px 0 0; margin:0; cursor:pointer; text-align:left;
    border:0; border-top:3px solid rgba(255,255,255,.35); border-radius:0; background:none;
    font-family:inherit; font-size:var(--fs-2); font-weight:700; line-height:1.4; color:rgba(255,255,255,.72);
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
    transition:border-color .3s ease, color .3s ease;
  }
  .lp-dot:hover{ color:#fff; border-top-color:rgba(255,255,255,.65); }
  .lp-dot[aria-current="true"]{ color:#fff; border-top-color:#fff; }
  .lp-show button:focus-visible{ outline:2px solid #fff; outline-offset:2px; }


  .lp-side{ min-height:0; overflow-y:auto; display:flex; flex-direction:column; padding:28px 40px 20px; }


  .lp-brand{ display:flex; align-items:center; gap:var(--sp-3); width:100%; max-width:380px; margin:0 auto; }

  .lp-mark{
    width:34px; height:34px; flex:none; display:grid; place-items:center;
    border-radius:var(--radius-md); background:var(--rail-bg); color:#fff;
    font-size:var(--fs-4); font-weight:800; letter-spacing:.02em; text-shadow:0 1px 1px rgba(0,0,0,.22);
  }

  .lp-mark{ overflow:hidden; }
  .lp-mark img{ display:block; width:100%; height:100%; }
  .lp-brand-t{ font-size:var(--fs-5); font-weight:800; color:var(--text); letter-spacing:-.01em; }

  .lp-body{ width:100%; max-width:380px; margin:auto; padding:32px 0; }
  .lp-title{ margin:0; font-size:var(--fs-8); font-weight:800; line-height:1.3; letter-spacing:-.02em; color:var(--text); }
  .lp-form label{ font-size:var(--fs-3); color:var(--text-secondary); margin:18px 0 6px; }
  .lp-field{ position:relative; }
  .lp-ic{
    position:absolute; left:14px; top:50%; width:18px; height:18px; transform:translateY(-50%);
    color:var(--faint); pointer-events:none; transition:color .15s ease;
  }
  .lp-field:focus-within .lp-ic{ color:var(--primary); }
  .lp-form .lp-field input{
    height:46px; padding:0 14px 0 42px; border-radius:var(--radius-md);
    font-size:var(--fs-5); transition:border-color .15s ease, box-shadow .15s ease;
  }
  .lp-form .lp-field input::placeholder{ color:var(--faint); }
  .lp-form .lp-field input:hover{ border-color:var(--secondary-light); }
  .lp-form .lp-field input:focus{
    border-color:var(--primary); box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 22%, transparent);
  }
  .lp-form .lp-field.has-eye input{ padding-right:46px; }

  .lp-title .lp-bot{ width:1.25em; height:1.25em; margin-left:.3em; vertical-align:-.28em; }
  #authTotpForm .lp-field input{ padding:0 42px; }
  .lp-eye{
    position:absolute; right:5px; top:50%; transform:translateY(-50%);
    width:36px; height:36px; padding:0; display:grid; place-items:center; cursor:pointer;
    border:0; border-radius:var(--radius-sm); background:transparent; color:var(--muted);
  }
  .lp-eye:hover{ background:var(--sk-bg2); color:var(--text); }
  .lp-eye:focus-visible{ outline:2px solid var(--primary); outline-offset:1px; }
  .lp-eye svg{ width:18px; height:18px; }
  .lp-eye .off, .lp-eye[aria-pressed="true"] .on{ display:none; }
  .lp-eye[aria-pressed="true"] .off{ display:block; }
  .lp-form .lp-submit{
    position:relative; height:48px; margin-top:24px; border-radius:var(--radius-md);
    box-shadow:0 1px 2px rgba(22,34,60,.12); transition:background-color .15s ease, transform .05s ease;
  }
  .lp-form .lp-submit:hover:not(:disabled){ background:var(--primary-press); }
  .lp-form .lp-submit:active:not(:disabled){ transform:translateY(1px); }
  .lp-form .auth-submit:focus-visible{ outline:2px solid var(--primary); outline-offset:2px; }

  .lp-form .lp-submit:disabled{ opacity:.85; cursor:progress; color:transparent; }
  .lp-form .lp-submit:disabled::after{
    content:''; position:absolute; left:50%; top:50%; width:18px; height:18px; margin:-9px 0 0 -9px;
    border-radius:50%; border:2px solid rgba(255,255,255,.4); border-top-color:#fff; animation:spin .8s linear infinite;
  }
  .lp-form .auth-submit.secondary{ height:44px; border-radius:var(--radius-md); }

  .lp-form .auth-msg{ min-height:40px; }
  .lp-hint{
    margin:2px 0 0; padding:10px 12px; display:flex; align-items:flex-start; gap:var(--sp-3);
    border-radius:var(--radius-md); background:var(--sk-bg2);
    font-size:var(--fs-2); line-height:1.6; color:var(--muted);
  }
  .lp-hint svg{ width:16px; height:16px; flex:none; margin-top:2px; }
  .lp-body .auth-totp-head{ margin-top:14px; text-align:left; font-size:var(--fs-4); }
  .lp-body .auth-note{ border-radius:var(--radius-md); }
  .lp-foot{ font-size:var(--fs-1); color:var(--muted); text-align:center; }

  @media (max-width:1100px) and (min-width:901px){
    .lp-side{ padding:24px 28px 18px; }
  }

  @media (max-width:900px){
    .lp-page{ padding:24px; }
    .lp-card{ grid-template-columns:1fr; max-width:460px; height:auto; }
    .lp-show{ display:none; }
    .lp-side{ overflow:visible; padding:24px 28px 18px; }
    .lp-body{ padding:28px 0 24px; }
  }
  @media (max-width:480px){
    .lp-page{ padding:12px; }
    .lp-card{ padding:var(--sp-3); border-radius:calc(var(--radius-xl) + var(--sp-3)); }
    .lp-side{ padding:20px 16px 14px; }
  }
  @media (prefers-reduced-motion: reduce){
    .lp-slide, .lp-slide.is-on, .lp-dot{ transition:none; }
  }

  .user-wrap{ position:relative; display:inline-block; }
  .user-chip{ display:inline-flex; align-items:center; gap:var(--sp-3); padding:0 13px; height:38px; border-radius:var(--radius-md);
    border:1px solid var(--border); background:var(--card); cursor:pointer; font-family:inherit; font-size:var(--fs-3); font-weight:700; color:var(--text); }
  .user-chip .u-badge{ font-size:10px; font-weight:800; padding:2px 6px; border-radius:var(--radius-sm);
    background:var(--surface2); color:var(--muted); }
  .user-chip .u-badge.admin{ background:#fee2e2; color:#b91c1c; }
  .user-menu{ position:absolute; right:0; top:calc(100% + 6px); min-width:200px; background:var(--card);
    border:1px solid var(--border); border-radius:var(--radius-md); box-shadow:0 10px 30px rgba(0,0,0,.13);
    padding:6px; display:none; z-index:300; }
  .user-menu.open{ display:block; }
  .user-menu button{ display:block; width:100%; text-align:left; border:0; background:transparent; padding:9px 11px;
    border-radius:var(--radius-md); font-size:var(--fs-3); font-family:inherit; cursor:pointer; color:var(--text); }
  .user-menu button:hover{ background:var(--row-hover); }
  .user-menu .um-head{ padding:8px 11px 9px; font-size:var(--fs-1); color:var(--muted); line-height:1.5; }
  .user-menu .sep{ height:1px; background:var(--border); margin:5px 0; }




  .adm-x{ border:0; background:var(--surface2); width:28px; height:28px; border-radius:var(--radius-md); cursor:pointer;
    font-size:var(--fs-5); line-height:1; color:var(--muted); font-family:inherit; }
  .adm-sec{ font-size:var(--fs-2); font-weight:800; color:var(--muted); margin:18px 0 8px; }
  .adm-sec:first-child{ margin-top:0; }
  .adm-b{ border:1px solid var(--border); background:var(--card); border-radius:var(--radius-md); padding:4px 9px; font-size:var(--fs-1);
    font-weight:700; cursor:pointer; font-family:inherit; margin-right:4px; color:var(--text); }
  .adm-b:hover{ background:var(--surface2); }
  .adm-b.pri{ background:var(--primary); border-color:var(--primary); color:var(--on-primary); }
  .adm-b.dan{ background:var(--card); border-color:var(--st-err-bd); color:var(--st-err); }
  .adm-empty{ padding:22px; text-align:center; color:var(--muted); font-size:var(--fs-3); }



  .adm-warn{ background:var(--warn-bg); border:1px solid var(--warn-bd);
    border-radius:var(--radius-md); padding:10px 12px; font-size:var(--fs-2); margin:0 0 12px;
    line-height:1.55; }











  .auth-form select{
    width:100%; box-sizing:border-box; height:42px; padding:10px 12px;
    border-width:1px; border-style:solid; border-color:var(--line);
    border-radius:var(--sk-r-sm);
    font-size:var(--fs-4); font-family:inherit; background:var(--card); color:var(--text);
    cursor:pointer;
  }
  .auth-form select:focus{ outline:none; border-color:var(--primary); box-shadow:0 0 0 3px rgba(76,100,166,.15); }


















  .user-menu .um-head .um-org-note{ color:var(--muted); opacity:.85; }





  .set-modal{ position:fixed; inset:0; background:rgba(15,18,24,.45); display:none;
    align-items:center; justify-content:center; z-index:520; padding:24px; }




  .set-box{
    width:1222px; height:806px; max-width:100%; max-height:calc(100vh - 48px);
    background:var(--card); border-radius:var(--radius-lg); box-shadow:0 22px 60px rgba(0,0,0,.22);
    display:flex; overflow:hidden;
  }

  .set-side{
    width:276px; flex:0 0 276px; background:var(--sk-side); color:var(--sk-side-tx);
    padding:16px 10px; overflow-y:auto;
    border-right-width:1px; border-right-style:solid; border-right-color:var(--sk-side-line);
  }
  .set-brand{ font-size:var(--fs-6); font-weight:800; padding:2px 10px 12px; }
  .set-grp{ font-size:var(--fs-1); font-weight:800; color:var(--muted); padding:12px 10px 5px; }
  .set-t{
    display:block; width:100%; text-align:left; border:0; background:transparent;
    padding:7px 10px; border-radius:var(--radius-sm); cursor:pointer;
    font-family:inherit; font-size:var(--fs-3); font-weight:500; color:var(--sk-side-tx);
  }
  .set-t:hover{ background:var(--sk-side-hover); }
  .set-t.active{ background:var(--sk-pick); color:#fff; font-weight:700; }

  .set-main{ flex:1; min-width:0; display:flex; flex-direction:column; }
  .set-head{
    display:flex; align-items:center; gap:var(--sp-4); padding:17px 20px;
    border-bottom-width:1px; border-bottom-style:solid; border-bottom-color:var(--border);
  }
  .set-title{ font-size:var(--fs-6); font-weight:800; flex:1; }
  .set-body{ flex:1; min-height:0; overflow:auto; padding:18px 20px; }
  .set-body .auth-form{ max-width:360px; }









  .set-body{ --set-ch:34px; }


  .set-card{ background:var(--card); border:1px solid var(--border); border-radius:12px;
    padding:18px 20px; margin-bottom:16px; }
  .set-card > h3{ margin:0 0 4px; font-size:var(--fs-6); font-weight:800; color:var(--text); }
  .set-card > .sub{ margin:0 0 14px; color:var(--muted); font-size:var(--fs-3); line-height:1.6; }
  .set-card > .sub:last-child{ margin-bottom:0; }



  .set-body .set-card{ background:transparent; border-width:0; border-radius:0; padding:0; margin:0 0 22px; }
  .set-body .set-card ~ .set-card,
  .set-body .set-pane > div + div > .set-card:first-child{
    padding-top:20px; border-top-width:1px; border-top-style:solid; border-top-color:var(--line); }
  .set-body .set-card .set-card{ margin:0; padding-top:0; border-top-width:0; }
  .set-body .set-card > h3{ font-size:var(--fs-5); }

  .set-card > h3.set-h{ display:flex; align-items:center; gap:8px; }
  .set-card > h3.set-h > .set-ctl{ margin-left:auto; }
  .set-card > h3.set-h > .set-ctl > button{ font-size:var(--fs-3); }



  .noti-var{ display:inline-block; margin:2px 3px 2px 0; padding:2px 8px;
    border:1px solid var(--border); border-radius:999px; background:transparent;
    color:var(--text); font-size:var(--fs-2); font-weight:700; cursor:pointer; line-height:1.7; }
  .noti-var:hover{ border-color:var(--primary); }

  .noti-via{ display:inline-block; margin-left:6px; padding:1px 8px; border-radius:999px;
    border:1px solid var(--line); color:var(--muted); font-size:var(--fs-2); font-weight:700; vertical-align:middle; }
  .noti-ed{ display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:18px; align-items:start; }
  @media (max-width:860px){ .noti-ed{ grid-template-columns:1fr; } }
  .noti-f{ display:flex; flex-direction:column; gap:5px; margin-bottom:10px; }
  .noti-f > span{ font-size:var(--fs-3); font-weight:700; color:var(--text); }
  .noti-f > span em{ font-style:normal; font-weight:500; color:var(--muted); margin-left:6px; font-size:var(--fs-2); }
  .noti-f input, .noti-f textarea{ width:100%; box-sizing:border-box; padding:7px 10px;
    border:1px solid var(--line); border-radius:var(--sk-r-sm); background:var(--card); color:var(--text);
    font-family:inherit; font-size:var(--fs-3); line-height:1.55; }
  .noti-f textarea{ resize:vertical; min-height:84px; }
  .noti-f input:focus, .noti-f textarea:focus{ outline:none; border-color:var(--primary); }
  .noti-ed-foot{ display:flex; align-items:center; gap:10px; }
  .noti-ed-foot button{ height:30px; padding:0 12px; border:1px solid var(--line); border-radius:var(--sk-r-sm);
    background:var(--card); color:var(--text); font-family:inherit; font-size:var(--fs-2); font-weight:700; cursor:pointer; }
  .noti-cnt{ margin-left:auto; color:var(--muted); font-size:var(--fs-2); }
  .noti-cnt.over{ color:#b3261e; font-weight:700; }
  .noti-mock{ border:1px solid var(--line); border-radius:12px; overflow:hidden; background:var(--card); }
  .noti-mock-h{ padding:7px 12px; background:var(--sk-bg2); color:var(--primary); font-size:var(--fs-2); font-weight:700; }
  .noti-mock-b{ padding:10px 12px; white-space:pre-wrap; word-break:keep-all; overflow-wrap:anywhere;
    font-size:var(--fs-3); line-height:1.6; color:var(--text); }
  .noti-mock-btn{ margin:0 10px 10px; padding:7px 0; text-align:center; border:1px solid var(--line);
    border-radius:8px; font-size:var(--fs-3); color:var(--text); }
  .noti-mock-btn:empty{ display:none; }

  .noti-mock.msg .noti-mock-b{ white-space:normal; }
  .noti-mock.msg .noti-mock-b p{ margin:6px 0 0; }
  .noti-mock-t{ border-collapse:collapse; margin-top:6px; }
  .noti-mock-t td{ padding:2px 14px 2px 0; vertical-align:top; }
  .noti-mock-t td:first-child{ color:var(--muted); }
  .noti-mock.msg .noti-mock-btn{ border:0; margin:0 12px 10px; padding:0; text-align:left; color:var(--primary); text-decoration:underline; }

  .rm-when{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:10px; }
  .rm-when .noti-f select, .rm-when .noti-f input{ width:100%; box-sizing:border-box; padding:7px 10px;
    border:1px solid var(--line); border-radius:var(--sk-r-sm); background:var(--card); color:var(--text); font-family:inherit; font-size:var(--fs-3); }
  .rm-on{ margin-bottom:10px; }
  .noti-ed-foot button.pri{ background:var(--primary); border-color:var(--primary); color:var(--on-primary); }
  @media (max-width:600px){ .rm-when{ grid-template-columns:1fr; } }


  .set-row{ display:flex; align-items:center; justify-content:space-between;
    gap:var(--sp-4); padding:11px 2px;
    border-bottom-width:1px; border-bottom-style:solid; border-bottom-color:var(--line-soft); }
  .set-row:last-child{ border-bottom-width:0; padding-bottom:2px; }
  .set-l{ flex:1 1 auto; min-width:0; }
  .set-lbl{ font-size:var(--fs-4); font-weight:700; color:var(--text); }
  .set-hint{ color:var(--muted); font-size:var(--fs-2); margin-top:3px; line-height:1.55; }




  .set-body .set-lbl, .set-body .set-hint, .set-body .set-val,
  .set-body .log-why{
    white-space:normal; overflow:visible; text-overflow:clip;
    word-break:keep-all; overflow-wrap:anywhere;
  }


  .set-ctl{ display:flex; align-items:center; gap:8px; flex:0 0 auto; }


  .set-ctl.fix{ width:400px; max-width:100%; }
  .set-ctl.fix > input{ flex:1 1 auto; min-width:0; width:auto; }
  .set-ctl.fix > .set-msg:empty{ display:none; }
  .set-ctl > button, .set-ctl > select, .set-ctl > input, .set-ctl > .set-val{
    height:var(--set-ch); box-sizing:border-box; margin:0;
    display:inline-flex; align-items:center;
    font-family:inherit; font-size:var(--fs-3);
  }
  .set-ctl > select, .set-ctl > input{
    padding:0 10px; border-width:1px; border-style:solid; border-color:var(--line);
    border-radius:var(--sk-r-sm); background:var(--card); color:var(--text); }
  .set-ctl > select:focus, .set-ctl > input:focus{ outline:none; border-color:var(--primary); }
  .set-ctl > button{ padding:0 13px; border-width:1px; border-style:solid; border-color:var(--line);
    border-radius:var(--sk-r-sm); background:var(--card); color:var(--text);
    font-weight:700; cursor:pointer; white-space:nowrap; }
  .set-ctl > button:hover:not(:disabled){ background:var(--sk-bg2); }
  .set-ctl > button:disabled{ opacity:.5; cursor:default; }
  .set-ctl > button.pri{ background:var(--primary); border-color:var(--primary); color:var(--on-primary); }
  .set-ctl > button.dan{ border-color:var(--st-err-bd); color:var(--st-err); }

  .set-val{ font-size:var(--fs-4); font-weight:700; color:var(--text); }
  .set-val.muted{ color:var(--muted); font-weight:500; }


  .set-foot{ display:flex; justify-content:flex-end; align-items:center; gap:8px;
    margin-top:16px; padding-top:14px;
    border-top-width:1px; border-top-style:solid; border-top-color:var(--line-soft); }
  .set-foot > button{ height:var(--set-ch); box-sizing:border-box; padding:0 16px;
    border-width:1px; border-style:solid; border-color:var(--line); border-radius:var(--sk-r-sm);
    background:var(--card); color:var(--text); font-family:inherit; font-size:var(--fs-3);
    font-weight:700; cursor:pointer; white-space:nowrap; }
  .set-foot > button:hover:not(:disabled){ background:var(--sk-bg2); }
  .set-foot > button:disabled{ opacity:.5; cursor:default; }
  .set-foot > button.pri{ background:var(--primary); border-color:var(--primary); color:var(--on-primary); }
  .set-foot > .set-msg{ margin-right:auto; }





  .set-body .log-table td{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:360px;
    height:38px; padding-top:0; padding-bottom:0; vertical-align:middle; }

  .set-body .log-table td:has(> .set-ctl){ overflow:visible; max-width:none; }
  .set-body .log-table td .set-ctl{ justify-content:flex-end; flex-wrap:nowrap; }
  .set-body .log-table td .set-ctl > button,
  .set-body .log-table td .set-ctl > select,
  .set-body .log-table td .set-ctl > input{ height:28px; font-size:var(--fs-2); }
  .set-body .log-table td > button{ height:28px; }
  .set-body .tbl-box{ margin-top:2px; }

  .set-body .log-table tr.set-gr > td{ height:30px; max-width:none; background:var(--sk-bg2); font-weight:800; color:var(--text); }

  .set-body .log-table tbody tr.set-gr > td:not(:where(.paper, .paper *)){ background-color:var(--sk-bg2) !important; }
  .set-body .log-table tr.set-gr .set-grp-n{ margin-left:6px; background:var(--card); }
  .set-body .log-table tr[data-uopen]{ cursor:pointer; }
  .set-body .log-table tr[data-uopen]:hover > td{ background:var(--row-hover); }
  .set-body .log-table td .set-pill + .set-pill{ margin-left:4px; }
  .set-body .log-table td.set-mu{ color:var(--muted); }
  .set-card > h3.set-h > .set-grp-n, .set-card > h3.set-h > .set-pill{ font-size:var(--fs-1); }

  .set-dbox.set-addbox{ width:620px; }


  .set-body .set-conn-head{ margin-bottom:var(--sp-3); }
  .set-body .set-conn-it .log-fold-b.set-conn-b{ display:block; padding:0 16px 12px 36px; font-size:var(--fs-3); }
  .set-body .set-conn-b > .set-row:last-child{ padding-bottom:4px; }
  .set-body .set-conn-d{ margin:2px 0 6px; color:var(--muted); font-size:var(--fs-2); line-height:1.6; }
  .set-body .set-conn-it .log-pol-row{ grid-template-columns:8px 72px minmax(120px, 200px) minmax(0, 1fr) 14px; }
  .set-body .set-conn-it .log-pol-name .ch-req{ margin-left:4px; font-size:var(--fs-1); }

  .set-body .set-conn-tb{ width:100%; border-collapse:collapse; margin:4px 0 2px; }
  .set-body .set-conn-tb th, .set-body .set-conn-tb td{ padding:6px 0; border-bottom:1px solid var(--line); vertical-align:middle; text-align:left; }
  .set-body .set-conn-tb tr:last-child > th, .set-body .set-conn-tb tr:last-child > td{ border-bottom-width:0; }
  .set-body .set-conn-tb th{ width:140px; padding-right:12px; font-size:var(--fs-3); font-weight:700; color:var(--text); white-space:nowrap; }
  .set-body .set-conn-c{ display:flex; align-items:center; flex-wrap:wrap; gap:6px 8px; }
  .set-body .set-conn-c > input[type="text"], .set-body .set-conn-c > input[type="email"],
  .set-body .set-conn-c > input[type="password"]{ flex:0 1 340px; min-width:0; width:auto; }
  .set-body .set-conn-c > .set-tag{ margin:0; }
  .set-body .set-conn-g{ text-align:right; margin-top:4px; font-size:var(--fs-2); }
  .set-body .set-conn-notes{ margin-top:var(--sp-4); padding-top:var(--sp-3); border-top:1px solid var(--line); color:var(--muted); font-size:var(--fs-2); line-height:1.7; }
  .set-body .set-conn-notes > h4{ margin:0 0 6px; font-size:var(--fs-3); color:var(--text); }
  .set-body .set-conn-n{ margin-bottom:6px; }
  .set-body .set-conn-n > b{ color:var(--text); }
  .set-body .set-conn-n > ul{ margin:2px 0 0; padding-left:18px; }
  @media (max-width: 720px){
    .set-body .set-conn-it .log-pol-row{ grid-template-columns:8px 72px minmax(0, 1fr) 14px; }
    .set-body .set-conn-it .log-fold-b.set-conn-b{ padding-left:16px; }
    .set-body .set-conn-tb th{ width:96px; white-space:normal; }
  }

  .set-tools{ display:flex; gap:8px; margin:0 0 8px; }
  .set-tools > input, .set-tools > select{ height:30px; box-sizing:border-box; padding:0 10px;
    border-width:1px; border-style:solid; border-color:var(--line); border-radius:var(--sk-r-sm);
    background:var(--card); color:var(--text); font-family:inherit; font-size:var(--fs-3); }
  .set-tools > input{ flex:1 1 auto; min-width:0; }

  .set-body .set-tools > select{ width:auto; flex:0 0 auto; }
  .set-tools > input:focus, .set-tools > select:focus{ outline:none; border-color:var(--primary); }

  .set-body .log-table td.set-ip{ font-family:ui-monospace,Consolas,monospace; }
  .set-body .log-table tr.set-ip-add > td{ background:var(--sk-bg2); max-width:none; }
  .set-body .log-table tr.set-ip-add .set-ctl{ justify-content:flex-start; }
  .set-body .log-table tr.set-ip-add .set-ctl > input{ flex:1 1 auto; min-width:0;
    font-family:ui-monospace,Consolas,monospace; }




  .set-tag{ display:inline-block; padding:1px 8px; border-radius:999px; font-size:var(--fs-2);
            font-weight:700; background:var(--sk-bg2); color:var(--text); border:1px solid var(--line); }
  .set-tag.add{ background:#ecfdf5; border-color:#a7f3d0; color:#047857; }
  .set-tag.no { background:#fef2f2; border-color:#fecaca; color:#b91c1c; }

  .set-in{ display:inline-block; width:14px; }

  .set-msg{ font-size:var(--fs-3); font-weight:700; color:var(--positive); min-height:1.2em; }
  .set-msg.bad{ color:var(--negative); }
  .set-msg.plain{ color:var(--muted); font-weight:500; }



  .set-fold > summary{ list-style:none; cursor:pointer; display:flex; align-items:center; gap:8px; }
  .set-fold > summary::-webkit-details-marker{ display:none; }
  .set-fold > summary h3{ margin:0; font-size:var(--fs-6); font-weight:800; }
  .set-fold > summary .sub{ margin:0; color:var(--muted); font-size:var(--fs-3); flex:1; }
  .set-fold > summary .set-caret{ margin-left:auto; color:var(--muted); font-size:var(--fs-4);
    transition:transform .15s; flex:none; }
  .set-fold[open] > summary .set-caret{ transform:rotate(90deg); }
  .set-fold[open] > summary{ margin-bottom:12px;
    padding-bottom:12px; border-bottom:1px solid var(--line-soft); }


  .set-grp-h{ display:flex; align-items:center; gap:8px; margin:16px 0 6px;
    font-size:var(--fs-4); font-weight:800; color:var(--text); }
  .set-grp-h:first-of-type{ margin-top:0; }
  .set-grp-n{ font-size:var(--fs-1); font-weight:800; color:var(--muted);
    background:var(--sk-bg2); border-radius:20px; padding:2px 8px; }

  .set-grp{ margin-top:16px; }
  .set-grp:first-of-type{ margin-top:0; }
  .set-grp > summary{ list-style:none; user-select:none; }
  .set-grp > summary::-webkit-details-marker{ display:none; }
  .set-grp > summary.set-grp-h{ margin:0 0 8px; }
  .set-tgrp-h{ display:flex; align-items:center; gap:8px; margin:0 0 6px;
    font-size:var(--fs-3); font-weight:700; color:var(--muted); }
  .set-pill{ font-size:var(--fs-1); font-weight:800; padding:2px 8px; border-radius:20px;
    background:var(--sk-bg2); color:var(--muted); white-space:nowrap; }
  .set-pill.admin{ background:#fee2e2; color:#b91c1c; }
  .set-pill.super{ background:#ede9fe; color:#6d28d9; }
  .set-pill.wait{ background:#fef3c7; color:#92400e; }
  .set-pill.off{ background:#e5e7eb; color:#4b5563; }

  .set-pill.lead{ background:#e0f2fe; color:#075985; }

  .set-ctl > textarea{ flex:1 1 100%; min-width:0; font-family:ui-monospace,Consolas,monospace;
    font-size:var(--fs-3); line-height:1.6; padding:8px 10px; resize:vertical;
    color:var(--text); background:var(--card); border-radius:var(--sk-r-sm);
    border-width:1px; border-style:solid; border-color:var(--line); }
  .set-ctl > textarea:focus{ outline:none; border-color:var(--primary); }

  .set-ck{ display:inline-flex; align-items:center; gap:7px; font-size:var(--fs-3); color:var(--text); }
  .set-ck input{ width:16px; height:16px; }


  .set-dim{ position:fixed; inset:0; background:rgba(15,18,24,.45); z-index:560;
    display:flex; align-items:center; justify-content:center; padding:24px; }
  .set-dbox{ width:520px; max-width:100%; max-height:calc(100vh - 96px); overflow:auto;
    background:var(--card); border-radius:var(--radius-lg); box-shadow:0 22px 60px rgba(0,0,0,.22);
    --set-ch:34px; }
  .set-dhead{ display:flex; align-items:center; gap:10px; padding:16px 20px;
    border-bottom-width:1px; border-bottom-style:solid; border-bottom-color:var(--border); }
  .set-dhead b{ font-size:var(--fs-6); font-weight:800; }
  .set-dhead span{ font-size:var(--fs-2); color:var(--muted); }
  .set-dbody{ padding:6px 20px 18px; }
  .set-dbody .set-row:first-child{ padding-top:12px; }

  .set-dbox.set-udbox{ width:640px; }
  .set-ud-tb{ width:100%; border-collapse:collapse; margin-top:6px; }
  .set-ud-tb th, .set-ud-tb td{ padding:7px 0; border-bottom:1px solid var(--line-soft); vertical-align:middle; text-align:left; }
  .set-ud-tb tr:last-child > th, .set-ud-tb tr:last-child > td{ border-bottom-width:0; }
  .set-ud-tb th{ width:120px; padding-right:12px; font-size:var(--fs-3); font-weight:700; color:var(--text); white-space:nowrap; }
  .set-ud-tb .set-ud-c{ flex-wrap:wrap; gap:6px 8px; }
  .set-ud-tb .set-ud-c > select{ max-width:100%; }
  .set-ud-tb .set-ud-c > input{ flex:0 1 240px; min-width:0; }
  .set-ud-tb .set-ud-c > .set-pill{ font-size:var(--fs-1); }
  .set-ud-note{ margin:10px 0 0; color:var(--muted); font-size:var(--fs-2); line-height:1.6; }
  .set-foot > button.dan{ border-color:var(--st-err-bd); color:var(--st-err); }
  @media (max-width: 720px){ .set-ud-tb th{ width:88px; white-space:normal; } }



  .set-pw{ font-family:'Consolas','D2Coding',ui-monospace,monospace; font-size:var(--fs-4);
    font-weight:700; letter-spacing:.04em; background:var(--sk-bg2);
    border-width:1px; border-style:solid; border-color:var(--line);
    border-radius:var(--radius-sm); padding:3px 8px; user-select:all; }



  .lgn-ok{ color:var(--positive); font-weight:700; }
  .lgn-bad{ color:var(--negative); font-weight:700; }
