@font-face{font-family:'Noto Sans';src:url('../fonts/NotoSans-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Noto Sans';src:url('../fonts/NotoSans-Bold.ttf') format('truetype');font-style:normal;font-weight:600 900;font-display:swap}
* { box-sizing: border-box; }

html,
body {
  width: 100%;
  min-height: 100%;
  margin: 0;
  background: #05042F;
}

body {
  font-family: 'Noto Sans', Arial, Helvetica, sans-serif;
  color: #FFFFFF;
}

button,
input,
select { font: inherit; }

button { -webkit-tap-highlight-color: transparent; }

.isd-preview-page {
  width: 100%;
  min-height: 100vh;
  min-height: 100svh;
  margin: 0;
  background:
    radial-gradient(circle at 46% 36%, rgba(8, 6, 105, .30), transparent 38%),
    linear-gradient(135deg, #05042F 0%, #03101f 55%, #020913 100%);
}

.isd-view[hidden] { display: none !important; }

.isd-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* DESKTOP / LANDSCAPE */
.isd-desktop-preview {
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.isd-desktop-stage {
  position: relative;
  width: min(100vw, calc(100svh * 16 / 9));
  aspect-ratio: 16 / 9;
  max-width: 1536px;
  background: #061321;
  overflow: hidden;
}

.isd-desktop-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  user-select: none;
  -webkit-user-drag: none;
}

.isd-brand-replacement {
  position: absolute;
  left: 2.05%;
  top: 1.2%;
  width: 20.5%;
  height: 18.0%;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: .2% 0 0 .8%;
  background: #061421; /* 8.3.1: fully cover the retired desktop wordmark. */
}

.isd-brand-replacement img {
  display: block;
  width: auto;
  height: 77%;
  max-width: 72%;
  object-fit: contain;
  object-position: left center;
  background: transparent;
}

.isd-product-byline {
  margin: -1.0% 0 0 1.6%;
  color: rgba(243,244,250,.70);
  font-size: clamp(7px, .62vw, 11px);
  line-height: 1.2;
  letter-spacing: .035em;
  white-space: nowrap;
}

.isd-desktop-auth-shell {
  position: absolute;
  z-index: 8;
  left: 63.9%;
  top: 9.65%;
  width: 32.8%;
  height: 86.4%;
  overflow: hidden;
  border: 1px solid rgba(91, 155, 218, .28);
  border-radius: 1.1%;
  background: linear-gradient(180deg, rgba(7,23,39,.998), rgba(6,18,31,.998));
  box-shadow: 0 16px 42px rgba(0,0,0,.22);
}

.isd-desktop-auth-shell .isd-login-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 5.6% 8.7% 4.0%;
  background: transparent;
  border: 0;
  box-shadow: none;
  overflow-y: auto;
  scrollbar-width: thin;
}

.isd-desktop-auth-shell .isd-login-copy h2 {
  margin: 0;
  font-size: clamp(19px, 2.4vw, 38px);
  line-height: 1.06;
  letter-spacing: -.025em;
}

.isd-desktop-auth-shell .isd-login-copy p {
  margin: 2.4% 0 8.0%;
  color: #b8c4d4;
  font-size: clamp(9px, .95vw, 15px);
}

.isd-desktop-auth-shell .isd-auth-step-banner,
.isd-desktop-auth-shell .isd-device-step {
  color: #83a1c0;
  font-size: clamp(7px, .62vw, 10px);
  letter-spacing: .16em;
  font-weight: 700;
}

.isd-desktop-auth-shell .isd-auth-step-banner { margin-bottom: 5.0%; }
.isd-auth-step-banner-blue { color: #3ca8ff !important; }

.isd-desktop-auth-shell .isd-field { margin-bottom: 4.2%; }
.isd-desktop-auth-shell .isd-field label {
  display: block;
  margin-bottom: 2.0%;
  color: #F3F4FA;
  font-size: clamp(8px, .77vw, 12px);
  font-weight: 700;
}

.isd-desktop-auth-shell .isd-control {
  min-height: clamp(34px, 3.55vw, 54px);
  display: flex;
  align-items: center;
  gap: 3%;
  padding: 0 3.2%;
  border: 1px solid rgba(163,191,225,.45);
  border-radius: .48vw;
  background: rgba(11,26,42,.78);
}

.isd-control-input input,
.isd-control-input select {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #F3F4FA;
  font-size: inherit;
  line-height: 1.2;
}

.isd-control-input input::placeholder { color: #8799ae; opacity: 1; }
.isd-control-input select { color: #aebccd; cursor: pointer; }
.isd-control-input select option { color: #08111e; background: #fff; }
.isd-control-readonly { opacity: .84; }

.isd-desktop-auth-shell .isd-control-input input,
.isd-desktop-auth-shell .isd-control-input select {
  font-size: clamp(8px, .73vw, 12px);
}

.isd-control-icon {
  color: #a9bfd8;
  font-size: 1.05em;
  flex: 0 0 auto;
}

.isd-eye-button {
  flex: 0 0 auto;
  margin-left: auto;
  padding: 4px;
  border: 0;
  color: #7f91a7;
  background: transparent;
  cursor: pointer;
}

.isd-login-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  color: #d5dbe3;
}

.isd-login-meta-single { justify-content: flex-end; }

.isd-desktop-auth-shell .isd-login-meta {
  margin: -1% 0 4.2%;
  font-size: clamp(7px, .7vw, 11px);
}

.isd-link-button {
  padding: 2px 0;
  border: 0;
  color: #3ca8ff;
  background: transparent;
  cursor: pointer;
}

.isd-signin {
  width: 100%;
  border: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: #fff;
  cursor: pointer;
  background: linear-gradient(90deg, #168fe8, #1aa6ff);
  font-weight: 700;
  box-shadow: 0 7px 24px rgba(20,145,235,.14);
}

.isd-signin:hover { filter: brightness(1.05); }
.isd-signin:focus-visible,
.isd-secondary-action:focus-visible,
.isd-link-button:focus-visible,
.isd-eye-button:focus-visible,
.isd-control-input input:focus,
.isd-control-input select:focus {
  outline: 2px solid #57b5ff;
  outline-offset: 2px;
}

.isd-signin:disabled { opacity: .68; cursor: wait; }

.isd-desktop-auth-shell .isd-signin {
  min-height: clamp(36px, 3.55vw, 54px);
  border-radius: .48vw;
  padding: 0 4%;
  font-size: clamp(9px, .85vw, 13px);
}

.isd-form-status {
  min-height: 1.3em;
  margin-top: 2.5%;
  color: #9fb0c5;
  font-size: .78em;
  line-height: 1.35;
}

.isd-form-status.is-error { color: #ff9eaa; }
.isd-form-status.is-success { color: #7ce4bd; }
.isd-form-status.is-info { color: #8ecaff; }

.isd-mandatory-device,
.isd-device-panel-live {
  border: 1px solid rgba(37,137,214,.62);
  background:
    radial-gradient(circle at 16% 20%, rgba(8,6,105,.28), transparent 42%),
    rgba(7,22,37,.72);
}

.isd-desktop-auth-shell .isd-mandatory-device {
  margin-top: 4.5%;
  padding: 4.2%;
  border-radius: .5vw;
}

.isd-device-heading {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #F3F4FA;
  font-weight: 700;
}

.isd-desktop-auth-shell .isd-device-heading {
  margin-top: 2.3%;
  font-size: clamp(8px, .79vw, 12px);
}

.isd-device-lock { color: #70b9ff; }
.isd-device-copy { color: #9fb0c5; }
.isd-device-security-copy { color: #7f91a8; }

.isd-desktop-auth-shell .isd-device-copy {
  margin-top: 2%;
  font-size: clamp(7px, .65vw, 10px);
}

.isd-desktop-auth-shell .isd-device-security-copy {
  margin-top: 2.5%;
  font-size: clamp(6px, .58vw, 9px);
  line-height: 1.42;
}

.isd-device-panel-live { padding: 5%; border-radius: .55vw; }
.isd-device-live-copy { color: #9fb0c5; line-height: 1.45; }
.isd-desktop-auth-shell .isd-device-live-copy { font-size: clamp(8px, .73vw, 11px); }
.isd-device-panel-live .isd-signin { margin-top: 5%; }


.isd-authenticator-choice {
  margin-top: 4%;
}

.isd-authenticator-choice-title {
  margin-bottom: 2.2%;
  color: #dcecff;
  font-size: .78em;
  font-weight: 700;
}

.isd-authenticator-choice-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.isd-authenticator-option {
  min-height: 82px;
  padding: 12px;
  border: 1px solid rgba(112,185,255,.34);
  border-radius: 8px;
  color: #cbd8e8;
  background: rgba(4,18,33,.66);
  text-align: left;
  cursor: pointer;
}

.isd-authenticator-option strong {
  display: block;
  margin-bottom: 5px;
  color: #fff;
  font-size: .92em;
}

.isd-authenticator-option span {
  display: block;
  color: #879bb3;
  font-size: .72em;
  line-height: 1.35;
}

.isd-authenticator-option.is-selected {
  border-color: #3daeff;
  background: rgba(14,96,164,.22);
  box-shadow: inset 0 0 0 1px rgba(61,174,255,.16);
}

.isd-authenticator-option:focus-visible {
  outline: 2px solid #57b5ff;
  outline-offset: 2px;
}

.isd-authenticator-policy {
  margin: 10px 0 0;
  color: #91a4bb;
  font-size: .72em;
  line-height: 1.4;
}

.isd-secondary-action {
  margin-top: 5%;
  padding: 0;
  border: 0;
  color: #72bfff;
  background: transparent;
  cursor: pointer;
  font-weight: 600;
}

.isd-secondary-action-wide {
  width: 100%;
  min-height: 44px;
  border: 1px solid rgba(112,185,255,.42);
  border-radius: 8px;
}

.isd-password-rules {
  margin: -1% 0 4%;
  color: #7f91a8;
  font-size: .76em;
  line-height: 1.4;
}

.isd-success-mark {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  margin: 0 auto 18px;
  border: 1px solid rgba(75,205,160,.65);
  border-radius: 50%;
  color: #7ce4bd;
  background: rgba(28,116,89,.18);
  font-size: 28px;
  font-weight: 700;
}

.isd-success-copy { text-align: center; }
.isd-success-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 18px;
}

.isd-success-grid > div {
  padding: 12px;
  border: 1px solid rgba(112,185,255,.25);
  border-radius: 8px;
  background: rgba(8,23,39,.72);
}

.isd-success-grid span,
.isd-success-grid strong { display: block; }
.isd-success-grid span { color: #8296ad; font-size: .72em; text-transform: uppercase; letter-spacing: .08em; }
.isd-success-grid strong { margin-top: 4px; color: #F3F4FA; font-size: .86em; }
.isd-success-email { margin-top: 16px; color: #8ecaff; text-align: center; font-size: .85em; }
.isd-success-note { margin-top: 16px; color: #8598ae; line-height: 1.5; font-size: .78em; text-align: center; }

.isd-login-footer {
  margin-top: auto;
  padding-top: 4%;
  border-top: 1px solid rgba(138,158,181,.25);
  color: #8fa1b8;
  text-align: center;
}

.isd-desktop-auth-shell .isd-login-footer {
  font-size: clamp(6px, .58vw, 9px);
}

.isd-login-footer p { margin: 3% 0 0; }
.isd-login-footer strong { color: #3ca8ff; font-weight: 500; }

.isd-mobile-preview { display: none; }

/* MOBILE + PORTRAIT TABLET */
@media (max-width: 900px), (orientation: portrait) and (max-width: 1100px) {
  body { overflow-x: hidden; }
  .isd-desktop-preview { display: none; }

  .isd-mobile-preview {
    display: block;
    min-height: 100vh;
    min-height: 100svh;
    padding: max(18px, env(safe-area-inset-top)) 18px max(24px, env(safe-area-inset-bottom));
    background:
      radial-gradient(circle at 50% 11%, rgba(8, 6, 105, .68), transparent 34%),
      linear-gradient(180deg, #05042F 0%, #04101f 52%, #020913 100%);
  }

  .isd-mobile-brand {
    text-align: center;
    margin: 0 auto 18px;
    max-width: 520px;
  }

  .isd-mobile-brand img {
    display: block;
    width: clamp(180px, 54vw, 248px);
    height: auto;
    margin: 0 auto 2px;
    background: transparent;
    border: 0;
    box-shadow: none;
  }

  .isd-mobile-product-byline {
    margin: -1px 0 18px;
    color: rgba(190,205,226,.76);
    font-size: clamp(10px, 2.8vw, 12px);
    line-height: 1.3;
    letter-spacing: .035em;
  }

  .isd-mobile-kicker {
    color: #78aee8;
    font-size: 10px;
    letter-spacing: .27em;
    font-weight: 600;
  }

  .isd-mobile-tagline {
    margin: 9px 0 0;
    color: #F3F4FA;
    font-size: clamp(15px, 4vw, 18px);
    line-height: 1.4;
  }

  .isd-mobile-auth-shell { width: min(100%, 520px); margin: 0 auto; }

  .isd-login-card {
    width: 100%;
    padding: 26px 20px 20px;
    border: 1px solid rgba(120, 174, 232, .26);
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(13,28,45,.96), rgba(6,20,34,.98));
    box-shadow: 0 18px 48px rgba(0,0,0,.28);
  }

  .isd-login-copy h2 {
    margin: 0;
    font-size: clamp(28px, 8vw, 38px);
    line-height: 1.06;
    letter-spacing: -.02em;
  }

  .isd-login-copy p {
    margin: 8px 0 18px;
    color: #b8c4d4;
    font-size: 15px;
  }

  .isd-auth-step-banner,
  .isd-device-step {
    color: #83a1c0;
    font-size: 10px;
    line-height: 1.2;
    letter-spacing: .16em;
    font-weight: 700;
  }

  .isd-auth-step-banner { margin: 0 0 15px; }
  .isd-auth-step-banner-blue { color: #3ca8ff; }
  .isd-field { margin: 0 0 16px; }

  .isd-field label {
    display: block;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 700;
    color: #F3F4FA;
  }

  .isd-control {
    min-height: 52px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 13px;
    border: 1px solid rgba(163,191,225,.45);
    border-radius: 8px;
    color: #8799ae;
    background: rgba(11,26,42,.78);
    font-size: 14px;
  }

  .isd-control-icon { font-size: 17px; }
  .isd-login-meta { margin: 0 0 15px; font-size: 13px; }

  .isd-signin {
    min-height: 52px;
    border-radius: 8px;
    padding: 0 16px;
    font-size: 15px;
    line-height: 1.25;
  }

  .isd-mandatory-device,
  .isd-device-panel-live {
    margin-top: 15px;
    padding: 15px 14px 14px;
    border-radius: 9px;
  }

  .isd-device-heading { margin-top: 8px; font-size: 15px; line-height: 1.25; }
  .isd-device-lock { font-size: 16px; }
  .isd-device-copy { margin-top: 7px; font-size: 12px; line-height: 1.35; }
  .isd-device-security-copy { margin-top: 8px; font-size: 11px; line-height: 1.45; }
  .isd-device-live-copy { font-size: 12px; }
  .isd-authenticator-choice-grid { grid-template-columns: 1fr; gap: 8px; }
  .isd-authenticator-option { min-height: 68px; padding: 10px 11px; }
  .isd-authenticator-choice-title { font-size: 12px; }
  .isd-authenticator-policy { font-size: 10.5px; }
  .isd-form-status { font-size: 12px; }
  .isd-password-rules { font-size: 11px; }

  .isd-login-footer {
    margin-top: 20px;
    padding-top: 17px;
    font-size: 12px;
  }

  .isd-login-footer p { margin: 11px 0 0; }

  .isd-mobile-foot {
    margin: 18px auto 0;
    max-width: 520px;
    color: #6c7f98;
    text-align: center;
    font-size: 8px;
    letter-spacing: .18em;
    line-height: 1.6;
  }
}

@media (max-width: 390px) {
  .isd-mobile-preview { padding-left: 14px; padding-right: 14px; }
  .isd-mobile-brand img { width: clamp(170px, 58vw, 224px); }
  .isd-login-card { padding: 22px 15px 18px; }
  .isd-signin { font-size: 14px; }
  .isd-success-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; }
}

/* v6.0 — Passkey + Registered Trusted Device */
.isd-success-grid-three{grid-template-columns:repeat(3,minmax(0,1fr));}
.isd-profile-panel{margin-top:28px;padding:24px;border:1px solid rgba(39,161,255,.52);border-radius:22px;background:rgba(7,27,44,.72);}
.isd-profile-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:10px;}
.isd-profile-heading h3{margin:5px 0 0;font-size:28px;color:#fff;}
.isd-profile-copy{margin:0 0 18px;color:#aab9ca;line-height:1.55;}
.isd-profile-action,.isd-enrollment-row button,.isd-device-record-actions button{appearance:none;border:1px solid rgba(44,169,255,.65);background:#0a2841;color:#dff3ff;border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer;}
.isd-profile-action:hover,.isd-enrollment-row button:hover,.isd-device-record-actions button:hover{border-color:#2cafff;}
.isd-enrollment-box{margin:16px 0 20px;padding:16px;border:1px solid rgba(79,221,180,.42);border-radius:16px;background:rgba(7,42,42,.35);}
.isd-enrollment-box label{display:block;margin-bottom:10px;color:#bcebdd;font-weight:700;}
.isd-enrollment-row{display:flex;gap:10px;align-items:center;}
.isd-enrollment-row input{flex:1;min-width:0;border:1px solid #45617a;border-radius:10px;background:#081b2c;color:#e9f3ff;padding:12px;}
.isd-trusted-devices-list{display:grid;gap:12px;margin-top:16px;}
.isd-device-record{padding:16px;border:1px solid rgba(93,125,154,.48);border-radius:15px;background:rgba(4,20,34,.58);}
.isd-device-record-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;}
.isd-device-record-top strong{display:block;color:#fff;font-size:17px;}
.isd-device-record-top span{display:block;margin-top:4px;color:#91a6ba;font-size:13px;}
.isd-device-record-times{margin-top:12px;color:#869bb0;font-size:12px;line-height:1.45;}
.isd-device-record-actions{display:flex;gap:8px;margin-top:14px;}
.isd-device-record-actions .is-danger{border-color:rgba(255,112,132,.6);color:#ffc3cc;}
.isd-device-status-badge{padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;}
.isd-device-status-badge.is-trusted{background:rgba(54,208,156,.14);color:#7fe2bf;}
.isd-device-status-badge.is-revoked{background:rgba(255,91,115,.13);color:#ff9aaa;}
@media(max-width:760px){.isd-success-grid-three{grid-template-columns:1fr}.isd-profile-heading{flex-direction:column}.isd-enrollment-row{flex-direction:column;align-items:stretch}.isd-profile-action{width:100%}}


/* PHASE 3 — PROTECTED APPLICATION SHELL */
.isd-app-shell[hidden] { display: none !important; }
.isd-app-shell {
  min-height: 100vh;
  min-height: 100svh;
  display: grid;
  grid-template-columns: 264px minmax(0, 1fr);
  background: #05042F;
  color: #F3F4FA;
}
.isd-app-sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  height: 100svh;
  display: flex;
  flex-direction: column;
  padding: 24px 18px;
  border-right: 1px solid rgba(80,151,219,.18);
  background: linear-gradient(180deg,#061829 0%,#04111e 100%);
}
.isd-app-brand { display:flex; align-items:center; gap:12px; padding:0 6px 26px; }
.isd-app-brand img { width:54px; height:54px; object-fit:contain; }
.isd-app-brand strong { display:block; letter-spacing:.12em; font-size:15px; }
.isd-app-brand span { display:block; color:#92a9c3; font-size:12px; letter-spacing:.08em; margin-top:2px; }
.isd-app-nav { display:grid; gap:8px; }
.isd-app-nav button {
  width:100%; display:flex; align-items:center; gap:12px; padding:13px 14px;
  border:1px solid transparent; border-radius:12px; color:#aebdd0; background:transparent;
  text-align:left; cursor:pointer; font-weight:700;
}
.isd-app-nav button:hover:not(:disabled), .isd-app-nav button.is-active {
  color:#fff; border-color:rgba(30,156,255,.36); background:rgba(30,156,255,.10);
}
.isd-app-nav button:disabled { opacity:.48; cursor:not-allowed; }
.isd-app-nav button small { margin-left:auto; color:#6f879f; font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
.isd-app-sidebar-foot { margin-top:auto; display:grid; gap:14px; padding-top:24px; }
.isd-app-security-mini { padding:14px; border:1px solid rgba(71,210,169,.24); border-radius:12px; background:rgba(28,119,96,.09); }
.isd-app-security-mini span { display:block; color:#6fdab9; font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.isd-app-security-mini strong { display:block; margin-top:5px; font-size:13px; }
.isd-app-sidebar-foot button { border:0; background:transparent; color:#68bbff; text-align:left; padding:8px 14px; font-weight:700; cursor:pointer; }
.isd-app-main { min-width:0; min-height:100vh; background:radial-gradient(circle at 70% 0%,rgba(8,6,105,.24),transparent 36%),#050914; }
.isd-app-topbar {
  min-height:86px; display:flex; justify-content:space-between; align-items:center; gap:24px;
  padding:18px 32px; border-bottom:1px solid rgba(91,155,218,.18); background:rgba(3,14,25,.78); backdrop-filter:blur(16px);
}
.isd-app-eyebrow { color:#43aaff; font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.isd-app-topbar h2 { margin:5px 0 0; font-size:26px; }
.isd-app-context { display:flex; align-items:center; gap:10px; min-width:0; }
.isd-app-context-select, .isd-app-context-chip {
  max-width:220px; min-height:38px; padding:0 12px; border:1px solid rgba(112,170,223,.28); border-radius:10px;
  color:#dce8f5; background:#08182a; font-size:12px; font-weight:700;
}
.isd-app-context-chip { display:inline-flex; align-items:center; }
.isd-app-context-chip.is-role { color:#7ed8ff; }
.isd-app-user { max-width:220px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#8fa4bc; font-size:12px; }
.isd-app-content { padding:30px 32px 48px; }
.isd-shell-panel[hidden] { display:none !important; }
.isd-dashboard-hero {
  display:flex; align-items:center; justify-content:space-between; gap:24px; padding:28px;
  border:1px solid rgba(58,149,230,.26); border-radius:18px; background:linear-gradient(135deg,rgba(8,28,46,.96),rgba(7,18,31,.96));
}
.isd-dashboard-hero h3 { margin:7px 0 10px; font-size:30px; }
.isd-dashboard-hero p { max-width:720px; margin:0; color:#aebdd0; line-height:1.55; }
.isd-dashboard-secure { min-width:245px; display:flex; align-items:center; gap:13px; padding:16px 18px; border:1px solid rgba(71,210,169,.28); border-radius:14px; background:rgba(19,105,82,.12); }
.isd-dashboard-secure>span { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; color:#67ddb9; border:1px solid #2a9477; font-size:22px; }
.isd-dashboard-secure strong,.isd-dashboard-secure small { display:block; }
.isd-dashboard-secure small { margin-top:4px; color:#89a99e; }
.isd-dashboard-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:22px; }
.isd-module-card { min-height:210px; padding:22px; border:1px solid rgba(95,156,213,.20); border-radius:16px; background:#071827; }
.isd-module-kicker { color:#3ca8ff; font-size:11px; font-weight:800; letter-spacing:.14em; }
.isd-module-card h4 { margin:16px 0 9px; font-size:20px; }
.isd-module-card p { margin:0; min-height:74px; color:#9eafc2; line-height:1.5; }
.isd-module-card>span { display:inline-flex; margin-top:18px; padding:7px 10px; border-radius:999px; color:#a2b4c8; background:rgba(255,255,255,.04); font-size:11px; }
.isd-dashboard-foundation { margin-top:22px; padding:24px; border:1px solid rgba(95,156,213,.18); border-radius:16px; background:#061522; }
.isd-dashboard-foundation h4 { margin:7px 0 0; font-size:20px; }
.isd-foundation-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:22px; }
.isd-foundation-list span { padding:12px 14px; border-radius:10px; color:#c4d2df; background:rgba(255,255,255,.025); }
.isd-foundation-list b { color:#62d8b3; margin-right:8px; }
.isd-profile-page-head { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; }
.isd-profile-page-head h3 { margin:7px 0; font-size:32px; }
.isd-profile-page-head p { margin:0; color:#9fb1c4; }
.isd-app-primary { min-height:44px; padding:0 18px; border:1px solid #1e9cff; border-radius:11px; color:#fff; background:#0d3a60; font-weight:800; cursor:pointer; }
.isd-enrollment-box.is-shell { margin-top:22px; }
.isd-trusted-devices-list.is-shell { margin-top:22px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.isd-trusted-devices-list.is-shell .isd-device-record { margin:0; }

@media (max-width: 980px) {
  .isd-app-shell { grid-template-columns:1fr; }
  .isd-app-sidebar { position:static; height:auto; padding:14px 16px; border-right:0; border-bottom:1px solid rgba(80,151,219,.18); }
  .isd-app-brand { padding:0 0 12px; }
  .isd-app-brand img { width:42px; height:42px; }
  .isd-app-nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .isd-app-nav button { justify-content:center; }
  .isd-app-sidebar-foot { display:none; }
  .isd-app-topbar { padding:16px; align-items:flex-start; flex-direction:column; }
  .isd-app-context { width:100%; flex-wrap:wrap; }
  .isd-app-context-select { max-width:none; flex:1 1 160px; }
  .isd-app-user { max-width:100%; flex:1 1 100%; }
  .isd-app-content { padding:18px 16px 38px; }
  .isd-dashboard-hero { flex-direction:column; align-items:flex-start; padding:22px; }
  .isd-dashboard-hero h3 { font-size:25px; }
  .isd-dashboard-secure { width:100%; min-width:0; }
  .isd-dashboard-grid { grid-template-columns:1fr; }
  .isd-foundation-list { grid-template-columns:1fr; }
  .isd-profile-page-head { flex-direction:column; }
  .isd-app-primary { width:100%; }
  .isd-trusted-devices-list.is-shell { grid-template-columns:1fr; }
}

.isd-desktop-preview[hidden], .isd-mobile-preview[hidden] { display:none !important; }
.isd-app-top-signout { min-height:38px; padding:0 12px; border:1px solid rgba(104,187,255,.28); border-radius:10px; color:#68bbff; background:transparent; font-weight:700; cursor:pointer; }
@media (max-width:980px) { .isd-app-top-signout { margin-left:auto; } }


/* v7.1 — GLOBAL OWNER / USERS & ACCESS */
.isd-owner-badge{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid rgba(110,221,184,.38);border-radius:999px;background:rgba(39,132,105,.12);color:#79e0bc;font-size:11px;font-weight:800;letter-spacing:.09em;}
.isd-admin-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;}
.isd-admin-page-head h3{margin:7px 0 8px;font-size:32px;}.isd-admin-page-head p{margin:0;color:#9fb1c4;}
.isd-owner-security-note{display:grid;gap:4px;margin-top:22px;padding:16px 18px;border:1px solid rgba(71,210,169,.26);border-radius:14px;background:rgba(24,103,81,.10);}
.isd-owner-security-note strong{color:#8ce5c4}.isd-owner-security-note span{color:#9fb7ad;line-height:1.45;}
.isd-admin-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;margin-top:22px;align-items:start;}
.isd-admin-users,.isd-admin-editor{padding:20px;border:1px solid rgba(95,156,213,.22);border-radius:16px;background:#061522;}
.isd-admin-section-title{margin-bottom:12px;color:#49aaff;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;}
.isd-access-user-card{padding:16px;border:1px solid rgba(95,156,213,.20);border-radius:13px;background:#071827;margin-bottom:10px;}
.isd-access-user-main{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;}.isd-access-user-main strong{display:block;color:#fff}.isd-access-user-main span:not(.isd-owner-protected){display:block;margin-top:4px;color:#91a6ba;font-size:12px;}
.isd-access-user-main button,.isd-access-editor-head button,.isd-override-controls button,.isd-override-row button{border:1px solid rgba(44,169,255,.55);border-radius:9px;background:#0a2841;color:#dff3ff;padding:8px 11px;font-weight:700;cursor:pointer;}
.isd-owner-protected{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(81,210,167,.13);color:#78deb9;font-size:10px;font-weight:800;letter-spacing:.06em;}
.isd-access-user-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;color:#788ea5;font-size:11px;}
.isd-admin-empty{padding:18px;border:1px dashed rgba(103,147,186,.25);border-radius:11px;color:#8fa2b7;text-align:center;}.isd-admin-empty.is-compact{padding:10px;font-size:12px;}
.isd-access-editor-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:16px;}.isd-access-editor-head strong,.isd-access-editor-head span{display:block}.isd-access-editor-head strong{color:#fff}.isd-access-editor-head span{margin-top:4px;color:#8fa4bc;font-size:12px;}
.isd-admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}.isd-admin-form-grid label:last-child{grid-column:1/-1}.isd-admin-form-grid label>span{display:block;margin-bottom:6px;color:#9db1c5;font-size:12px;font-weight:700;}
.isd-admin-form-grid select,.isd-override-controls select{width:100%;min-height:42px;border:1px solid rgba(112,170,223,.30);border-radius:9px;background:#08182a;color:#e7f1fb;padding:0 10px;}
.isd-selected-orgs{margin-top:16px;padding:14px;border:1px solid rgba(95,156,213,.16);border-radius:12px;background:rgba(255,255,255,.015);}
.isd-admin-check{display:flex;align-items:center;gap:9px;padding:7px 0;color:#c2d0df;}.isd-admin-check input{width:16px;height:16px;}
.isd-app-primary.is-admin-save{margin-top:16px;width:100%;}
.isd-admin-overrides{margin-top:20px;padding-top:18px;border-top:1px solid rgba(95,156,213,.16);}.isd-admin-overrides>small{display:block;margin-top:10px;color:#7f93a8;}
.isd-override-controls{display:grid;grid-template-columns:1fr 110px auto;gap:8px;}.isd-override-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid rgba(95,156,213,.10);color:#b8c8d8;font-size:12px;}.isd-override-row b{font-size:10px;letter-spacing:.06em}.isd-override-row b.is-allow{color:#74ddb8}.isd-override-row b.is-deny{color:#ff9bab}
@media(max-width:980px){.isd-admin-page-head{flex-direction:column}.isd-admin-layout{grid-template-columns:1fr}.isd-admin-form-grid{grid-template-columns:1fr}.isd-admin-form-grid label:last-child{grid-column:auto}.isd-override-controls{grid-template-columns:1fr}.isd-access-user-main{flex-direction:column}.isd-access-user-main button{width:100%}}

/* v7.2 — MOBILE RESPONSIVE HARDENING / NO AUTH LOGIC CHANGE */
html,
body,
.isd-preview-page,
.isd-mobile-preview,
.isd-mobile-auth-shell,
.isd-login-card,
.isd-app-shell,
.isd-app-main,
.isd-app-topbar,
.isd-app-content,
.isd-shell-panel {
  max-width: 100%;
}

html,
body,
.isd-preview-page,
.isd-mobile-preview,
.isd-app-shell,
.isd-app-main {
  overflow-x: hidden;
}

.isd-login-card,
.isd-login-copy,
.isd-device-panel-live,
.isd-mandatory-device,
.isd-dashboard-hero,
.isd-dashboard-grid,
.isd-dashboard-foundation,
.isd-module-card,
.isd-profile-page-head,
.isd-trusted-devices-list,
.isd-device-record,
.isd-admin-page-head,
.isd-admin-layout,
.isd-admin-users,
.isd-admin-editor,
.isd-owner-security-note,
.isd-access-user-card,
.isd-access-editor-head,
.isd-admin-form-grid,
.isd-selected-orgs,
.isd-admin-overrides,
.isd-override-controls,
.isd-override-row {
  min-width: 0;
  max-width: 100%;
}

.isd-login-copy h2,
.isd-login-copy p,
.isd-device-heading,
.isd-device-copy,
.isd-device-security-copy,
.isd-app-topbar h2,
.isd-dashboard-hero h3,
.isd-dashboard-hero p,
.isd-module-card h4,
.isd-module-card p,
.isd-profile-page-head h3,
.isd-profile-page-head p,
.isd-admin-page-head h3,
.isd-admin-page-head p,
.isd-device-record-top strong,
.isd-device-record-top span,
.isd-access-user-main strong,
.isd-access-user-main span {
  overflow-wrap: anywhere;
  word-break: normal;
}

.isd-app-context,
.isd-app-nav,
.isd-app-nav button,
.isd-app-brand,
.isd-foundation-list,
.isd-device-record-top,
.isd-device-record-actions {
  min-width: 0;
}

@media (max-width: 980px) {
  .isd-app-shell {
    width: 100%;
    max-width: 100vw;
  }

  .isd-app-sidebar,
  .isd-app-main,
  .isd-app-topbar,
  .isd-app-content,
  .isd-shell-panel {
    width: 100%;
    min-width: 0;
  }

  .isd-app-sidebar {
    overflow: hidden;
  }

  .isd-app-nav button {
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .isd-app-context {
    min-width: 0;
    max-width: 100%;
  }

  .isd-app-context-select,
  .isd-app-context-chip,
  .isd-app-user,
  .isd-app-top-signout {
    min-width: 0;
    max-width: 100%;
  }

  .isd-app-context-chip {
    white-space: normal;
    line-height: 1.25;
  }

  .isd-dashboard-grid,
  .isd-foundation-list,
  .isd-trusted-devices-list.is-shell,
  .isd-admin-layout {
    width: 100%;
  }

  .isd-device-record-actions {
    flex-wrap: wrap;
  }
}

@media (max-width: 640px) {
  .isd-mobile-preview {
    width: 100%;
    padding-left: max(14px, env(safe-area-inset-left));
    padding-right: max(14px, env(safe-area-inset-right));
  }

  .isd-mobile-brand,
  .isd-mobile-auth-shell,
  .isd-mobile-foot {
    width: 100%;
    max-width: 100%;
  }

  .isd-login-card {
    padding-left: 16px;
    padding-right: 16px;
  }

  .isd-login-copy h2 {
    font-size: clamp(27px, 8vw, 36px);
  }

  .isd-auth-step-banner,
  .isd-device-step {
    letter-spacing: .12em;
  }

  .isd-device-panel-live,
  .isd-mandatory-device {
    padding-left: 13px;
    padding-right: 13px;
  }

  .isd-app-sidebar {
    padding: 12px 14px;
  }

  .isd-app-brand {
    gap: 10px;
  }

  .isd-app-brand img {
    width: 38px;
    height: 38px;
  }

  .isd-app-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }

  .isd-app-nav button {
    min-height: 50px;
    justify-content: flex-start;
    padding: 10px;
    gap: 8px;
    font-size: 13px;
    line-height: 1.25;
  }

  .isd-app-nav button small {
    margin-left: auto;
    font-size: 8px;
  }

  .isd-app-topbar {
    padding: 15px 14px;
    gap: 14px;
  }

  .isd-app-topbar h2 {
    font-size: 24px;
  }

  .isd-app-context {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 9px;
  }

  .isd-app-context-select,
  .isd-app-context-chip,
  .isd-app-user,
  .isd-app-top-signout {
    width: 100%;
    max-width: none;
  }

  .isd-app-context-chip {
    min-height: 42px;
    justify-content: flex-start;
  }

  .isd-app-user {
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .isd-app-top-signout {
    margin-left: 0;
  }

  .isd-app-content {
    padding: 18px 14px 36px;
  }

  .isd-dashboard-hero,
  .isd-dashboard-foundation,
  .isd-module-card,
  .isd-admin-users,
  .isd-admin-editor {
    padding: 18px;
  }

  .isd-dashboard-hero h3,
  .isd-profile-page-head h3,
  .isd-admin-page-head h3 {
    font-size: 27px;
  }

  .isd-module-card {
    min-height: 0;
  }

  .isd-module-card p {
    min-height: 0;
  }

  .isd-owner-badge {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .isd-device-record-top {
    flex-direction: column;
  }

  .isd-device-status-badge {
    align-self: flex-start;
  }

  .isd-device-record-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .isd-device-record-actions button {
    width: 100%;
  }

  .isd-enrollment-row {
    width: 100%;
  }

  .isd-enrollment-row input,
  .isd-enrollment-row button {
    width: 100%;
    max-width: 100%;
  }

  .isd-access-user-meta,
  .isd-override-row {
    min-width: 0;
  }

  .isd-override-row {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 380px) {
  .isd-app-nav {
    grid-template-columns: 1fr;
  }

  .isd-device-record-actions {
    grid-template-columns: 1fr;
  }
}

/* V8.0 — Requests & Tickets */
.isd-module-card.is-live {
  border-color: rgba(41,176,255,.55);
  background: linear-gradient(180deg, rgba(7,28,48,.96), rgba(5,20,35,.96));
}

.isd-module-open,
.isd-request-create-head > button,
.isd-request-detail-head > button,
.isd-request-form-actions > button,
.isd-request-detail-actions > button {
  min-height: 44px;
  border: 1px solid rgba(40,167,245,.62);
  border-radius: 12px;
  background: #0b3352;
  color: #f3f4fa;
  font-weight: 700;
  cursor: pointer;
}

.isd-module-open {
  width: fit-content;
  padding: 10px 16px;
  margin-top: 18px;
}

.isd-requests-page-head,
.isd-request-create-head,
.isd-request-detail-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
}

.isd-requests-page-head h3 {
  margin: 8px 0 8px;
  font-size: 34px;
  line-height: 1.1;
}

.isd-requests-page-head p {
  margin: 0;
  color: rgba(224,232,242,.72);
  line-height: 1.55;
}

.isd-requests-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 24px 0 16px;
  padding: 13px 16px;
  border: 1px solid rgba(69,119,161,.40);
  border-radius: 14px;
  background: rgba(6,25,42,.70);
  color: rgba(222,232,242,.78);
  font-size: 14px;
}

.isd-request-create-box,
.isd-request-detail {
  margin: 18px 0 24px;
  padding: 22px;
  border: 1px solid rgba(42,164,238,.44);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(7,28,47,.98), rgba(5,20,34,.98));
}

.isd-request-create-head h4,
.isd-request-detail-head h4 {
  margin: 5px 0 0;
  font-size: 22px;
}

.isd-request-create-head > button,
.isd-request-detail-head > button {
  padding: 8px 14px;
  min-width: 82px;
}

.isd-request-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 16px;
  margin-top: 20px;
}

.isd-request-form-grid label {
  display: grid;
  gap: 7px;
  min-width: 0;
  color: rgba(233,239,247,.88);
  font-weight: 700;
}

.isd-request-form-grid label.is-wide {
  grid-column: 1 / -1;
}

.isd-request-form-grid label small {
  color: rgba(196,211,226,.58);
  font-weight: 400;
}

.isd-request-form-grid input,
.isd-request-form-grid select,
.isd-request-form-grid textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(105,148,185,.55);
  border-radius: 12px;
  background: #081c2e;
  color: #fff;
  padding: 12px 14px;
  outline: none;
}

.isd-request-form-grid textarea {
  resize: vertical;
  min-height: 132px;
}

.isd-request-form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 18px;
}

.isd-request-form-actions > button {
  padding: 10px 18px;
}

.isd-request-form-actions > .isd-app-primary {
  background: linear-gradient(90deg,#158edc,#1fb8ff);
  border-color: #1faeff;
}

.isd-requests-list {
  display: grid;
  gap: 14px;
}

.isd-requests-empty {
  display: grid;
  gap: 6px;
  padding: 26px;
  border: 1px dashed rgba(91,145,187,.45);
  border-radius: 18px;
  background: rgba(5,22,37,.58);
  color: rgba(219,230,240,.72);
}

.isd-requests-empty strong {
  color: #fff;
  font-size: 20px;
}

.isd-request-card {
  border: 1px solid rgba(65,119,164,.46);
  border-radius: 18px;
  background: rgba(5,24,40,.88);
  overflow: hidden;
}

.isd-request-card-open {
  width: 100%;
  border: 0;
  background: transparent;
  color: inherit;
  padding: 18px 20px;
  text-align: left;
  cursor: pointer;
}

.isd-request-card-open:hover,
.isd-request-card-open:focus-visible {
  background: rgba(12,54,87,.48);
}

.isd-request-card-top,
.isd-request-card-meta,
.isd-request-card-statuses {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.isd-request-card-top > div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.isd-request-card-top strong {
  font-size: 19px;
  overflow-wrap: anywhere;
}

.isd-request-ref,
.isd-request-card-meta,
.isd-request-type {
  color: rgba(191,211,228,.70);
  font-size: 13px;
}

.isd-request-type {
  flex: 0 0 auto;
  padding: 6px 9px;
  border: 1px solid rgba(69,135,186,.42);
  border-radius: 999px;
  text-transform: capitalize;
}

.isd-request-card-meta {
  justify-content: flex-start;
  margin-top: 12px;
  flex-wrap: wrap;
}

.isd-request-card-statuses {
  justify-content: flex-start;
  margin-top: 12px;
  flex-wrap: wrap;
}

.isd-request-status {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.isd-request-status.is-external {
  background: rgba(31,184,255,.13);
  border: 1px solid rgba(31,184,255,.40);
  color: #8bdcff;
}

.isd-request-status.is-internal {
  background: rgba(129,151,177,.12);
  border: 1px solid rgba(129,151,177,.34);
  color: #c7d5e2;
}

.isd-request-detail-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  margin-top: 18px;
}

.isd-request-detail-grid > div,
.isd-request-description {
  min-width: 0;
  padding: 13px 14px;
  border: 1px solid rgba(66,117,160,.34);
  border-radius: 12px;
  background: rgba(5,23,38,.72);
}

.isd-request-detail-grid span,
.isd-request-description > span {
  display: block;
  margin-bottom: 5px;
  color: rgba(181,203,221,.66);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.isd-request-detail-grid strong,
.isd-request-description p {
  margin: 0;
  overflow-wrap: anywhere;
}

.isd-request-description {
  margin-top: 12px;
}

.isd-request-description p {
  line-height: 1.6;
  white-space: pre-wrap;
}

.isd-request-description.is-resolution {
  border-color: rgba(71,205,169,.42);
}

.isd-request-detail-actions {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 16px;
}

.isd-request-detail-actions > button {
  padding: 10px 16px;
}

.isd-request-detail-actions > button.is-danger {
  border-color: rgba(255,112,142,.62);
  color: #ffadc0;
  background: rgba(94,22,43,.28);
}

@media (max-width: 640px) {
  .isd-requests-page-head,
  .isd-request-create-head,
  .isd-request-detail-head {
    display: grid;
    grid-template-columns: minmax(0,1fr);
  }

  .isd-requests-page-head > button,
  .isd-request-create-head > button,
  .isd-request-detail-head > button {
    width: 100%;
  }

  .isd-requests-page-head h3 {
    font-size: 27px;
  }

  .isd-requests-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .isd-request-create-box,
  .isd-request-detail {
    padding: 17px;
  }

  .isd-request-form-grid,
  .isd-request-detail-grid {
    grid-template-columns: minmax(0,1fr);
  }

  .isd-request-form-grid label.is-wide {
    grid-column: auto;
  }

  .isd-request-form-actions,
  .isd-request-detail-actions {
    display: grid;
    grid-template-columns: minmax(0,1fr);
  }

  .isd-request-form-actions > button,
  .isd-request-detail-actions > button {
    width: 100%;
  }

  .isd-request-card-top {
    align-items: flex-start;
    flex-direction: column;
  }

  .isd-request-type {
    align-self: flex-start;
  }
}

/* v8.1 — Request actions and protected internal status history */
.isd-request-action-dialog {
  box-sizing: border-box;
  width: min(600px, calc(100% - 32px));
  max-width: calc(100% - 32px);
  max-height: calc(100dvh - 32px);
  margin: auto;
  padding: clamp(18px, 4vw, 28px);
  overflow-y: auto;
  overflow-wrap: anywhere;
  border: 1px solid #587489;
  border-radius: 16px;
  background: #081c2e;
  color: #f3f4fa;
  box-shadow: 0 20px 80px #0008;
}
.isd-request-action-dialog::backdrop { background: #020810c9; }
.isd-request-action-dialog h2 { margin: 0; font-size: 24px; }
.isd-request-action-dialog p { color: #d0dce8; }
.isd-request-action-dialog button { padding: 10px 16px; }
.isd-request-action-dialog .isd-request-form-grid { grid-template-columns: minmax(0, 1fr); }
.isd-request-action-dialog [hidden] { display: none !important; }
.isd-request-action-dialog :is(button,select,textarea):focus-visible,
.isd-request-detail-actions button:focus-visible { outline: 2px solid #40c9ff; outline-offset: 3px; }
.isd-request-action-dialog :disabled { opacity: .65; cursor: wait; }
.isd-action-status { min-height: 1.5em; }
.isd-request-history { margin-top: 24px; overflow-wrap: anywhere; }
.isd-request-history h3 { font-size: 18px; }
.isd-request-history ol { list-style: none; padding: 0; margin: 0; }
.isd-request-history li { display: grid; gap: 6px; padding: 14px 0; border-top: 1px solid #385166; }
.isd-request-history time, .isd-request-history span { color: #c9d6e2; font-size: 13px; }
.isd-request-history p { margin: 0; white-space: pre-wrap; }
@media (max-width: 480px) {
  .isd-request-action-dialog .isd-request-form-actions { display: grid; grid-template-columns: minmax(0,1fr); }
  .isd-request-action-dialog button { width: 100%; }
}

/* v8.1.2 — controlled recovery without exposing protected workspace data. */
.isd-restore-notice {
  box-sizing: border-box;
  width: min(560px, calc(100% - 32px));
  margin: 12vh auto 32px;
  padding: 28px;
  border: 1px solid #587489;
  border-radius: 16px;
  background: #081c2e;
  color: #f3f4fa;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.isd-restore-notice[hidden] { display: none !important; }
.isd-restore-notice h2 { margin: 0 0 12px; font-size: 24px; }
.isd-restore-notice > div { display: flex; flex-wrap: wrap; gap: 12px; }
.isd-restore-notice button {
  min-height: 44px;
  padding: 10px 18px;
  border: 1px solid #587489;
  border-radius: 10px;
  background: #12334e;
  color: inherit;
  font: inherit;
  cursor: pointer;
}
.isd-restore-notice button:focus-visible { outline: 2px solid #40c9ff; outline-offset: 3px; }
.isd-restore-notice button:disabled { opacity: .65; cursor: wait; }

/* MOB-UX-001: keep focused form text at least 16px; browser zoom stays enabled. */
@media (max-width: 980px), (orientation: portrait) and (max-width: 1100px), (hover: none) and (pointer: coarse) {
  :is(.isd-desktop-preview, .isd-mobile-preview, .isd-app-shell, .isd-request-action-dialog, .isd-restore-notice) :is(input, select, textarea, button) {
    font-size: 16px !important;
    font-size: max(16px, 1rem) !important;
  }
}

/* 8.1.4: contextual actions retain the existing Service Desk visual language. */
.isd-request-detail-actions.is-operational {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 10px;
  margin: 0 0 8px;
  max-width: 100%;
}
.isd-request-detail-actions.is-operational button,
.isd-request-more > summary {
  box-sizing: border-box;
  min-height: 48px;
  max-width: 100%;
  padding: 12px 18px;
  font-size: max(16px, 1rem);
  line-height: 1.35;
  white-space: normal;
  overflow-wrap: anywhere;
}
.isd-request-detail-actions .is-primary,
.isd-request-action-dialog .is-primary {
  background: #1467a8;
  border-color: #54baff;
  color: #fff;
  font-weight: 700;
}
.isd-request-more { min-width: 0; max-width: 100%; }
.isd-request-more > summary {
  list-style: none;
  cursor: pointer;
  color: #dce8f5;
  background: #0b2135;
  border: 1px solid #385166;
  border-radius: 8px;
}
.isd-request-more > summary::-webkit-details-marker { display: none; }
.isd-request-more-actions {
  display: grid;
  gap: 8px;
  padding-top: 8px;
  max-width: 100%;
}
.isd-request-more-actions button {
  text-align: left;
  width: 100%;
  border: 1px solid #385166;
  border-radius: 10px;
  background: #0b3352;
  color: #f3f4fa;
  cursor: pointer;
}
.isd-request-more-actions .is-danger,
.isd-request-action-dialog .is-danger {
  border-color: #ad5269;
  color: #ffb6c8;
  background: #3d1624;
}
.isd-request-more summary:focus-visible { outline: 2px solid #40c9ff; outline-offset: 3px; }
.isd-request-detail-actions button:disabled { opacity: .65; cursor: wait; }
.isd-request-action-feedback { min-height: 1.5em; margin: 8px 0 16px; overflow-wrap: anywhere; }
.isd-request-action-feedback.is-error { color: #ffb6b6; }
.isd-request-action-feedback.is-success { color: #7ce3c0; }
.isd-request-action-dialog textarea { box-sizing: border-box; max-width: 100%; }
@media (max-width: 600px) {
  .isd-request-detail-actions.is-operational { display: grid; grid-template-columns: minmax(0, 1fr); }
  .isd-request-detail-actions.is-operational > button,
  .isd-request-more,
  .isd-request-more > summary { width: 100%; }
  .isd-request-action-dialog .isd-request-form-actions button { min-height: 48px; }
}

/* B1 client access uses the existing visual system. */
.isd-client-form{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin:20px 0}.isd-client-form label,.isd-client-org-label{display:flex;flex-direction:column;gap:8px;flex:1;min-width:200px;font-size:14px}.isd-client-form input,.isd-client-form select,.isd-client-org-label select{width:100%;box-sizing:border-box;padding:12px;border:1px solid #43516c;border-radius:8px;background:#101c33;color:#fff;font-size:16px}.isd-client-form button,.isd-client-actions button,[data-isd-client-refresh]{padding:12px 16px;border:1px solid #43516c;border-radius:8px;background:#142840;color:#fff;cursor:pointer;font-size:14px;min-height:44px}.isd-client-person{padding:20px;border:1px solid #43516c;border-radius:12px;margin-top:16px;overflow-wrap:anywhere}.isd-client-person dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.isd-client-person dt{font-size:14px;opacity:.75}.isd-client-person dd{margin:4px 0 0;font-size:16px}.isd-client-actions{display:flex;flex-wrap:wrap;gap:10px}.isd-client-form[hidden]{display:none}

/* Phase 5A extends the existing navy / Electric Blue application shell. */
[data-isd-catalogue], [data-isd-catalogue] * {box-sizing:border-box;min-width:0;}
[data-isd-catalogue] {color:#f3f4fa;font-size:1rem;width:100%;}
.isd-cat-toolbar {display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem;}
.isd-cat-toolbar h2 {margin:.4rem 0;font-size:clamp(1.5rem,4vw,2rem);}
.isd-cat-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem;}
.isd-cat-button,.isd-cat-card {font:inherit;color:#f3f4fa;border:1px solid #3378ac;background:#101e3e;border-radius:.65rem;padding:.75rem 1rem;min-height:44px;cursor:pointer;white-space:normal;overflow-wrap:anywhere;}
.isd-cat-button:hover,.isd-cat-card:hover {border-color:#70c4ff;background:#163354;}
.isd-cat-button:focus-visible,.isd-cat-card:focus-visible,[data-isd-catalogue] input:focus-visible,[data-isd-catalogue] select:focus-visible,[data-isd-catalogue] textarea:focus-visible {outline:3px solid #83d4ff;outline-offset:3px;}
.isd-cat-button.is-primary {background:#125fa7;border-color:#54b9ff;}
.isd-cat-button:disabled {opacity:.55;cursor:wait;}
.isd-cat-card {text-align:left;display:flex;flex-direction:column;gap:.6rem;padding:1.3rem;}
.isd-cat-card strong {font-size:1.125rem;}
.isd-cat-card span,.isd-cat-field small,.isd-cat-admin-list small {color:#bfccdf;font-size:.9rem;line-height:1.5;}
.isd-cat-trail {color:#addbff;overflow-wrap:anywhere;line-height:1.6;}
.isd-cat-field {display:flex;flex-direction:column;gap:.5rem;margin:0 0 1.2rem;line-height:1.45;}
.isd-cat-field label {font-size:1rem;}
[data-isd-catalogue] input,[data-isd-catalogue] textarea,[data-isd-catalogue] select {font:inherit;font-size:max(16px,1rem);color:#fff;background:#070f29;border:1px solid #466082;border-radius:.5rem;padding:.75rem;max-width:100%;width:100%;line-height:1.5;}
[data-isd-catalogue] select option {background:#070f29;color:white;}
[data-isd-catalogue] textarea {resize:vertical;min-height:90px;}
[data-isd-catalogue] input[type=radio],[data-isd-catalogue] input[type=checkbox] {width:1.25rem;height:1.25rem;padding:0;accent-color:#37b2ff;flex:none;}
.isd-cat-choices {display:flex;flex-direction:column;gap:.75rem;}
.isd-cat-choices label {display:flex;align-items:center;gap:.65rem;}
.isd-cat-actions {display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:1.5rem;}
.isd-cat-review {display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,2fr);gap:.8rem 1rem;line-height:1.6;}
.isd-cat-review dt {color:#bad2ef;}.isd-cat-review dd {margin:0;white-space:pre-wrap;overflow-wrap:anywhere;}
.isd-cat-message {min-height:1.5rem;margin:.5rem 0;overflow-wrap:anywhere;}.isd-cat-message.is-error {color:#ffb9bb;}.isd-cat-message.is-success {color:#9fe9cb;}
.isd-cat-tabs,.isd-cat-field-actions {display:flex;gap:.65rem;flex-wrap:wrap;margin:1rem 0;}
.isd-cat-tabs [aria-pressed=true] {border-color:#6acbff;background:#17385d;}
.isd-cat-admin-list article {display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #29415e;flex-wrap:wrap;}
.isd-cat-admin-list small {display:block;margin-top:.4rem;}.isd-cat-admin-list article>div:last-child {display:flex;gap:.5rem;flex-wrap:wrap;}
.isd-cat-field-card {border:1px solid #36557c;border-radius:.8rem;padding:1.1rem;margin:1.2rem 0;}
.isd-cat-field-card legend {color:#a9dbff;padding:0 .5rem;}
.isd-cat-historical {margin:1.5rem 0;padding:1rem;border:1px solid #36557c;border-radius:.7rem;}
[data-isd-catalogue] [hidden] {display:none!important;}
@media(max-width:600px){.isd-cat-review {grid-template-columns:1fr;gap:.2rem;}.isd-cat-review dd{margin-bottom:.85rem;}.isd-cat-field-card{padding:.75rem;}.isd-cat-toolbar>div{max-width:100%;}}

/* Launch v1.0: the whole radio label is a usable touch target. */
.isd-cat-choices label {min-height:44px;}

/* Phase 5B private request attachments; preserves existing responsive shell. */
.isd-attachments {min-width:0;max-width:100%;margin-block:1.25rem;padding-block:1rem;border-top:1px solid rgba(83,171,244,.25);overflow-wrap:anywhere;}
.isd-attachments h3,.isd-attachments h4 {margin:0 0 .75rem;color:#eef7ff;}
.isd-attachments p,.isd-attachments small,.isd-attachments li>span {color:#adc0d5;}
.isd-attachments ul {list-style:none;padding:0;margin:.75rem 0;display:grid;gap:.75rem;}
.isd-attachments li {min-width:0;padding:.85rem;border:1px solid rgba(83,171,244,.25);border-radius:12px;}
.isd-attachments li>strong,.isd-attachments li>span,.isd-attachments li>small {display:block;overflow-wrap:anywhere;}
.isd-attachments li>div {display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.6rem;}
.isd-attachments label {display:flex;align-items:center;gap:.6rem;min-height:44px;}
.isd-attachments .isd-attachment-picker {display:flex;flex-direction:column;align-items:stretch;gap:.6rem;}
.isd-attachments input[type=file] {display:block;width:100%;max-width:100%;min-width:0;min-height:44px;font-size:max(16px,1rem);box-sizing:border-box;}
.isd-attachments input[type=file]::file-selector-button {min-height:44px;padding:.5rem .75rem;border:1px solid #2799ea;border-radius:8px;background:#102848;color:#eef7ff;font:inherit;margin-right:.5rem;}
.isd-attachments button {min-height:44px;max-width:100%;white-space:normal;}
.isd-attachments input[type=checkbox] {width:22px;height:22px;flex:none;}
.isd-attachments [role=status] {white-space:pre-wrap;}

.isd-sla-summary{min-width:0;margin-top:1rem;border-top:1px solid rgba(120,130,160,.25);padding-top:1rem}
.isd-sla-summary h3{margin:0;font-size:1rem;font-weight:600}
.isd-sla-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;margin:.75rem 0 0}
.isd-sla-fields>div{min-width:0;overflow-wrap:anywhere}
.isd-sla-fields dt{margin:0 0 .2rem;color:#adc0d5;font-size:.875rem}
.isd-sla-fields dd{margin:0;color:#eef7ff;font-weight:600}
@media(max-width:600px){.isd-sla-fields{grid-template-columns:minmax(0,1fr)}}

.isd-sla-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.isd-sla-actions button,.isd-request-action-dialog select,.isd-request-action-dialog textarea{font-size:1rem;min-height:44px}.isd-sla-table-wrap{overflow-x:auto}.isd-sla-table-wrap table{width:100%;border-collapse:collapse;font-size:.875rem}.isd-sla-table-wrap th,.isd-sla-table-wrap td{text-align:left;padding:.6rem;border-bottom:1px solid #34364a}.isd-request-action-dialog>h2,.isd-request-action-dialog>[data-content],.isd-request-action-dialog>.isd-request-form-actions{margin:1.25rem}.isd-sla-summary dd{overflow-wrap:anywhere}

/* Request drafts: compact extension of the accepted interface. */
.isd-draft-state{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:.75rem 0;font-size:.875rem}.isd-draft-state [data-draft-status]{flex:1;min-width:12rem}.isd-draft-state [data-kind="error"]{color:#8d3030}.isd-draft-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #d9dce5}.isd-draft-row>div:first-child{flex:1;min-width:13rem}.isd-draft-row small{display:block;margin-top:.3rem;overflow-wrap:anywhere}.isd-my-drafts,.isd-draft-recovery{padding:1rem;border:1px solid #d9dce5;border-radius:.75rem;margin:1rem 0;background:#fff}.isd-draft-recovery p{margin:.5rem 0}.isd-draft-row button{margin:.2rem}.isd-draft-state [hidden],[data-draft-recovery][hidden],[data-my-drafts][hidden]{display:none!important}
.isd-my-drafts,.isd-draft-recovery{background:#081a2b;color:#f3f4fa;border-color:#3378ac}

/* Phase 7 operations */
.isd-ops-head,.isd-ops-buttons,.isd-ops-config-buttons,.isd-ops-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.isd-ops-head h3{margin:4px 0;font-size:26px}.isd-ops-head p,.isd-ops-summary{color:#a7b8cb}.isd-ops-views{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.isd-ops-views button{border:1px solid #294961;background:#081b2b;color:#c4d6e8;border-radius:8px;padding:10px 12px}.isd-ops-views button[aria-pressed=true]{border-color:#1e9cff;background:#0d3453;color:#fff}.isd-ops-views span{margin-left:6px;color:#72d5ff}.isd-ops-filter{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:18px}.isd-ops-filter label{display:grid;gap:6px;flex:1;min-width:180px}.isd-ops-filter input,.isd-ops-filter select,.isd-ops-dialog input:not([type=checkbox]),.isd-ops-dialog select,.isd-ops-dialog textarea{width:100%;box-sizing:border-box;border:1px solid #31506b;border-radius:8px;padding:10px;background:#081b2b;color:#f3f4fa;font:inherit}.isd-ops-table-wrap{overflow:auto;border:1px solid #28465f;border-radius:10px}.isd-ops-table{width:100%;border-collapse:collapse;font-size:14px}.isd-ops-table th{text-align:left;font-weight:600;color:#9cb7ca;background:#081b2b;padding:12px}.isd-ops-table td{vertical-align:top;border-top:1px solid #233d52;padding:12px;min-width:130px}.isd-ops-table td:first-child{min-width:190px}.isd-ops-table strong,.isd-ops-table small,.isd-ops-dialog li small{display:block;margin-top:5px}.isd-ops-table small{color:#a7b8cb}.isd-ops-open{background:none!important;padding:0!important;border:0!important;color:#72d5ff!important;text-align:left}.isd-ops-priority{font-weight:700;color:#72d5ff}.isd-ops-priority.is-critical{color:#ffbcbb}.isd-ops-pagination{margin:16px 0}.isd-ops-workload{border-top:1px solid #294961;padding-top:14px}.isd-ops-workload li{display:flex;gap:16px;justify-content:space-between;margin:10px 0}.isd-ops-workload strong{white-space:nowrap}.isd-ops-dialog{max-width:760px!important;width:calc(100% - 32px);box-sizing:border-box;max-height:90vh;overflow:auto}.isd-ops-dialog form{display:grid;gap:14px;margin:16px 0}.isd-ops-dialog label{display:grid;gap:7px}.isd-ops-dialog label:has(input[type=checkbox]){display:flex;align-items:center}.isd-ops-dialog section{margin:20px 0}.isd-ops-dialog article{padding:14px 0;border-bottom:1px solid #294961}.isd-ops-dialog article button{margin:8px 8px 0 0}.isd-ops-dialog details{margin:16px 0}.isd-ops-dialog summary{cursor:pointer;color:#72d5ff}.isd-ops-dialog [data-ops-message]{color:#72d5ff}.isd-ops-dialog [data-config-editor]{border-top:1px solid #31506b;margin-top:18px}.isd-ops-table button,.isd-ops-head button,.isd-ops-filter button,.isd-ops-pagination button,.isd-ops-dialog button{min-height:42px}.isd-ops-views button:focus-visible,.isd-ops-table button:focus-visible{outline:3px solid #72d5ff;outline-offset:3px}
@media(max-width:600px){.isd-ops-table{font-size:13px}.isd-ops-filter label{min-width:100%}.isd-ops-head h3{font-size:24px}.isd-ops-views button{flex:1 1 44%;text-align:left}.isd-ops-workload ul{padding-left:0}.isd-ops-workload li{overflow-wrap:anywhere}.isd-ops-dialog{padding:20px!important}.isd-ops-table-wrap{max-width:100%}}

[data-isd-operations-only][hidden]{display:none!important}

.isd-ops-head button,.isd-ops-filter button,.isd-ops-table button,.isd-ops-pagination button,.isd-ops-dialog button{border:1px solid #315b7b;border-radius:8px;background:#0c2f49;color:#f3f4fa;padding:9px 14px;font:inherit;cursor:pointer}.isd-ops-head button:hover,.isd-ops-filter button:hover,.isd-ops-table button:hover,.isd-ops-dialog button:hover{border-color:#1e9cff;background:#124564}.isd-ops-dialog button.is-primary{background:#14669e;border-color:#4db8ed}.isd-ops-pagination button:disabled,.isd-ops-dialog button:disabled{opacity:.45;cursor:not-allowed}.isd-ops-dialog button:focus-visible{outline:3px solid #72d5ff;outline-offset:3px}

/* Additional local passkey controls share the existing profile layout. */
.isd-local-passkey{margin-top:24px;padding:20px;border:1px solid rgba(44,169,255,.3);border-radius:16px;background:rgba(10,40,65,.45)}
.isd-local-passkey h4{margin:0 0 10px;font-size:17px;color:#edf7ff}
.isd-local-passkey p{margin:0 0 16px;color:#b6c7d9;line-height:1.6;font-size:14px;overflow-wrap:anywhere}
.isd-local-passkey-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.isd-local-passkey-actions button{max-width:100%;min-height:44px;white-space:normal;text-align:center}
.isd-local-passkey-actions .isd-secondary-action{margin:0}
.isd-local-passkey [hidden],[data-isd-passkey-other-device][hidden]{display:none!important}
.isd-local-passkey button:disabled{cursor:wait;opacity:.65}
@media(max-width:600px){.isd-local-passkey{padding:16px}.isd-local-passkey-actions{align-items:stretch}.isd-local-passkey-actions button{width:100%}}

/* Phase 8 communications. Long text stays plain, readable and within the container. */
.isd-communications { margin-top: 1.5rem; border-top: 1px solid #23435c; padding-top: 1.5rem; min-width: 0; }
.isd-communications section { min-width: 0; }
.isd-communications-internal, .isd-communications-client { margin-bottom: 1.5rem; }
.isd-communication-history, .isd-notifications-list { list-style: none; padding: 0; margin: 1rem 0; display: grid; gap: .875rem; min-width: 0; }
.isd-communication-entry, .isd-notification, .isd-information-request { padding: 1rem; border: 1px solid #29485e; border-radius: 14px; background: #081b2a; min-width: 0; }
.isd-communications-internal .isd-communication-entry { background: #081522; }
.isd-communication-entry-heading, .isd-notifications-heading { display: flex; align-items: baseline; justify-content: space-between; gap: .75rem; flex-wrap: wrap; min-width: 0; }
.isd-communication-entry-heading time, .isd-communication-entry small { color: #adbed1; }
.isd-communication-entry p, .isd-notification p, .isd-communication-question { white-space: pre-wrap; overflow-wrap: anywhere; word-break: normal; }
.isd-communication-entry-heading strong, .isd-communication-entry small { overflow-wrap: anywhere; }
.isd-communication-form { display: grid; gap: .875rem; margin-top: 1rem; min-width: 0; }
.isd-communication-form label { display: grid; gap: .375rem; color: #f3f4fa; }
.isd-communication-form textarea, .isd-communication-form select { display: block; box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; background: #071928; color: #f3f4fa; border: 1px solid #35536b; border-radius: 10px; padding: .875rem; font: inherit; font-size: max(1rem,16px); }
.isd-communication-form textarea { resize: vertical; min-height: 8rem; }
.isd-communication-help, .isd-communication-empty { color: #adbed1; margin: 0; }
.isd-communication-actions, .isd-communication-pagination { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }
.isd-communication-pagination { justify-content: space-between; margin-top: 1rem; }
.isd-communications button, [data-isd-notifications] button { min-height: 44px; max-width: 100%; padding: .65rem 1rem; border: 1px solid #318bc1; border-radius: 10px; background: #102f49; color: #f3f4fa; font: inherit; white-space: normal; overflow-wrap: anywhere; cursor: pointer; }
.isd-communication-actions .is-primary { background: #146e9e; border-color: #5dccfa; font-weight: 700; }
.isd-communications button:disabled, [data-isd-notifications] button:disabled { opacity: .55; cursor: default; }
.isd-communications button:focus-visible, [data-isd-notifications] button:focus-visible, .isd-communication-form textarea:focus-visible, .isd-communication-form select:focus-visible { outline: 3px solid #67d6ff; outline-offset: 3px; }
.isd-communication-status { min-height: 1.5em; margin: 0; overflow-wrap: anywhere; }
.isd-communication-status.is-success { color: #65ddb9; }
.isd-communication-status.is-error { color: #ffb2bc; }
.isd-notification.is-unread { border-left: 4px solid #45b9fa; }
.isd-notification-count { display: inline-flex; min-width: 1.5rem; min-height: 1.5rem; justify-content: center; align-items: center; border-radius: 999px; background: #137ab1; color: #fff; padding: 0 .35rem; font-size: .875rem; }
.isd-notification-count[hidden] { display: none; }
@media (max-width: 600px) {
  .isd-communication-entry, .isd-notification, .isd-information-request { padding: .875rem; }
  .isd-communication-actions button { flex: 1 1 12rem; }
  .isd-communication-pagination { gap: .5rem; }
  .isd-communication-entry-heading { align-items: flex-start; }
  .isd-communication-entry-heading time { flex-basis: 100%; font-size: .875rem; }
}

.isd-client-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.isd-client-form input,.isd-client-form select{min-width:0}.isd-client-actions button{min-height:44px}

.isd-client-form [hidden]{display:none!important}

/* Stable ticket icon for both Requests role labels and responsive navigation. */
.isd-app-nav .isd-request-nav-icon { flex: 0 0 18px; width: 18px; height: 18px; }
.isd-app-nav [data-isd-requests-label] { width: auto; color: inherit; }

/* 8.9.0 Requests workspace: table, dedicated detail, accessible sections. */
[data-isd-shell-panel=requests] [hidden]{display:none!important}
.isd-workspace-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.875rem;color:#eef4ff}
.isd-workspace-table th,.isd-workspace-table td{padding:14px 10px;text-align:left;border-bottom:1px solid #29435d;overflow-wrap:anywhere;vertical-align:middle}
.isd-workspace-table th:nth-child(1){width:12%}.isd-workspace-table th:nth-child(2){width:24%}.isd-workspace-table th:nth-child(7){width:15%}
.isd-workspace-table thead{background:#10253d}.isd-workspace-table tbody tr{cursor:pointer}.isd-workspace-table tbody tr:hover,.isd-workspace-table tbody tr:focus-within{background:#142b46}
.isd-workspace-table button{border:0;background:transparent;color:inherit;font:inherit;text-align:left;padding:5px 0;cursor:pointer}
.isd-workspace-table td:first-child button{color:#70d4ff;font-weight:700}.isd-workspace-title{font-weight:650}
.isd-request-views,.isd-request-filters,.isd-workspace-pagination,.isd-request-summary{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:18px 0}
.isd-request-views button,.isd-request-filters button,.isd-workspace-pagination button,.isd-request-back{border:1px solid #35536b;border-radius:9px;background:#102c47;color:#eef4ff;padding:10px 14px;min-height:44px;font:inherit;cursor:pointer}
.isd-request-views button[aria-pressed=true]{background:#146e9e;border-color:#68d4ff}.isd-request-views span{margin-left:7px;color:#c4eaff}
.isd-request-filters{align-items:end}.isd-request-filters label{display:grid;gap:7px;flex:1 1 130px;font-size:.85rem;color:#c3d1e3}.isd-request-filters .isd-request-search{flex:2 1 240px}
.isd-request-filters input,.isd-request-filters select,.isd-workspace-pagination select{width:100%;box-sizing:border-box;background:#091d31;border:1px solid #35536b;color:#eef4ff;border-radius:8px;min-height:44px;padding:9px;font:inherit}
.isd-workspace-pagination{justify-content:flex-end;color:#bdcde1;font-size:.875rem}.isd-workspace-pagination label{display:flex;align-items:center;gap:8px;margin-right:auto}.isd-workspace-pagination select{width:80px}
.isd-workspace-pagination button:disabled,.isd-request-filters select:disabled{opacity:.5;cursor:default}
.isd-request-summary{color:#c1d3e5;font-size:.9rem}.isd-request-summary>span{border-right:1px solid #35536b;padding-right:14px}
.isd-request-detail{margin-top:12px}.isd-request-detail-head h4{font-size:clamp(1.2rem,2.5vw,1.9rem);line-height:1.4;overflow-wrap:anywhere}
.isd-request-tabs{display:flex;gap:5px;border-bottom:1px solid #35536b;margin:24px 0 20px;flex-wrap:wrap}
.isd-request-tabs button{color:#afc4db;background:transparent;border:0;border-bottom:3px solid transparent;padding:14px 17px;min-height:48px;font:inherit;cursor:pointer}
.isd-request-tabs button[aria-selected=true]{color:#7edcff;border-bottom-color:#52c6fb;background:#10283f}
[data-request-tab-panel]{min-width:0;padding-bottom:16px}[data-request-tab-panel]>section:first-child{margin-top:0;border-top:0;padding-top:0}
.isd-request-more{position:relative;align-self:flex-start}.isd-request-more[open]{padding-bottom:0!important;margin-bottom:0!important}
.isd-request-more-actions{position:absolute!important;right:0;top:calc(100% + 6px);z-index:20;display:grid;min-width:220px;max-width:min(280px,75vw);background:#10253b;border:1px solid #35536b;border-radius:10px;padding:8px;box-shadow:0 12px 30px #0008}
.isd-request-more-actions button{width:100%;text-align:left;min-height:44px}
[data-isd-shell-panel=requests] button:focus-visible,[data-isd-shell-panel=requests] input:focus-visible,[data-isd-shell-panel=requests] select:focus-visible,[role=tabpanel]:focus-visible{outline:3px solid #70d4ff;outline-offset:3px}
@media(max-width:760px){
 .isd-workspace-table,.isd-workspace-table tbody{display:block}.isd-workspace-table thead{display:none}.isd-workspace-table tr{display:grid;grid-template-columns:1fr 1fr;border:1px solid #29435d;background:#0b2137;border-radius:12px;padding:14px;margin:12px 0;gap:10px}
 .isd-workspace-table td{display:block;width:auto;border:0;padding:0;font-size:.85rem;min-width:0}.isd-workspace-table td:before{content:attr(data-label);display:block;color:#96aec7;font-size:.72rem;margin-bottom:4px}
 .isd-workspace-table td:nth-child(1),.isd-workspace-table td:nth-child(2),.isd-workspace-table td:nth-child(7){grid-column:1/-1}.isd-workspace-table td:nth-child(2){font-size:1rem}.isd-workspace-table td:nth-child(1):before,.isd-workspace-table td:nth-child(2):before{display:none}
 .isd-request-filters label{flex:1 1 42%}.isd-request-filters .isd-request-search{flex-basis:100%}.isd-request-tabs{gap:0}.isd-request-tabs button{flex:1 1 30%;padding:12px 7px;font-size:.85rem}.isd-request-summary{gap:10px}
 .isd-workspace-pagination{justify-content:space-between}.isd-workspace-pagination>span{flex-basis:100%;order:3}.isd-requests-page-head{flex-wrap:wrap}.isd-requests-page-head>div{flex-basis:100%}
}

/* Operational dashboard and STANDARD SLA administration. */
.isd-app-nav button[hidden]{display:none!important}
.isd-service-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.isd-service-heading h3{font-size:28px;margin:4px 0 8px}.isd-service-heading h4{margin:0 0 8px;font-size:19px}.isd-service-heading p{margin:0;color:#a9bfd0;max-width:780px}.isd-service-heading button,.isd-service-links button,.isd-sla-card button,.isd-sla-editor button,.isd-service-error button,[data-sla-retry]{background:#10334b;color:#e5f0fa;border:1px solid #426681;border-radius:9px;padding:11px 16px;cursor:pointer;font:inherit}.isd-service-heading button:hover,.isd-service-links button:hover{background:#174f70}.isd-service-heading button{flex-shrink:0}.isd-service-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.isd-service-metric{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:9px;min-height:156px;padding:20px;background:#071c2b;border:1px solid #23475b;border-radius:13px;color:#dcebf5;cursor:pointer;font:inherit}.isd-service-metric:hover{background:#0e2c43;border-color:#68bee9}.isd-service-metric strong{font-size:38px;line-height:1.1;color:#7ed4fc}.isd-service-metric small{color:#a9bfd0;font-size:12px}.isd-service-metric.is-alert{border-color:#9f5c50}.isd-service-metric.is-alert strong{color:#ffb5a4}.isd-service-links{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.isd-dashboard-queue{background:#071a28;border:1px solid #23475b;border-radius:14px;padding:22px}.isd-dashboard-queue h4{font-size:20px;margin:0}.isd-dashboard-queue>p{color:#a9bfd0}.isd-dashboard-queue ul{list-style:none;padding:0;margin:0}.isd-dashboard-queue li+li{border-top:1px solid #23475b}.isd-dashboard-queue li button{display:grid;grid-template-columns:140px 1fr;gap:7px 16px;width:100%;padding:16px 0;background:transparent;border:0;text-align:left;color:#e5f0fa;font:inherit;cursor:pointer}.isd-dashboard-queue li button>span{color:#7ed4fc}.isd-dashboard-queue li button>small{grid-column:2;color:#a9bfd0}.isd-service-updated{font-size:12px;color:#9cb2c6;margin-top:18px}.isd-service-error{padding:20px;border:1px solid #ac665d;border-radius:12px}.isd-service-note{padding:14px 17px;border-left:3px solid #63bce7;background:#0b2435;color:#c1d6e5;line-height:1.6}.isd-sla-health{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.isd-sla-health>div{display:flex;flex-direction:column;gap:8px;padding:18px;background:#081f2c;border:1px solid #254957;border-radius:11px}.isd-sla-health small{color:#a9bfd0}.isd-sla-tabs{display:flex;gap:8px;border-bottom:1px solid #345568;margin:25px 0 18px;overflow-x:auto}.isd-sla-tabs button{padding:14px 18px;border:0;border-bottom:3px solid transparent;background:transparent;color:#afc8da;font:inherit;white-space:nowrap;cursor:pointer}.isd-sla-tabs button[aria-selected=true]{color:#8bd9ff;border-color:#62c8f5;background:#102a3f}.isd-sla-cards{display:grid;gap:18px}.isd-sla-card{padding:22px;background:#071b29;border:1px solid #25465d;border-radius:13px;min-width:0}.isd-sla-card p{color:#b3c9d8;line-height:1.6}.isd-sla-card details{margin-top:15px}.isd-sla-card summary{cursor:pointer;color:#8bd9ff}.isd-sla-card table{width:100%;border-collapse:collapse;text-align:left}.isd-sla-card th,.isd-sla-card td{padding:11px;border-bottom:1px solid #294457}.isd-sla-editor{width:min(960px,calc(100vw - 32px));max-width:960px;max-height:90vh;overflow-y:auto}.isd-sla-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.isd-sla-full{grid-column:1/-1}.isd-sla-form-grid label{display:flex;flex-direction:column;gap:8px;min-width:0}.isd-sla-editor input:not([type=checkbox]),.isd-sla-editor select,.isd-sla-editor textarea{box-sizing:border-box;width:100%;border:1px solid #42627a;background:#091d2d;color:#edf5fc;border-radius:7px;padding:10px;font:inherit;min-width:0}.isd-sla-editor input[type=date]{color-scheme:dark}.isd-sla-editor fieldset{border:1px solid #34576c;border-radius:10px;padding:16px;min-width:0}.isd-sla-editor legend{padding:0 6px}.isd-sla-week{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.isd-sla-exception{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;margin-bottom:12px}.isd-sla-exception button{margin-bottom:0}.isd-sla-targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.isd-sla-targets label{margin-bottom:12px}.isd-sla-editor .isd-sla-check{display:flex;flex-direction:row;align-items:flex-start;gap:10px;margin:12px 0;font-size:14px}.isd-sla-check input{width:17px;height:17px;flex:0 0 17px;margin-top:3px}.isd-sla-review-fields{margin:12px 0}.isd-sla-review-fields>div{display:grid;grid-template-columns:190px 1fr;gap:16px;padding:11px 0;border-bottom:1px solid #29475a}.isd-sla-review-fields dt{color:#9fb9cc}.isd-sla-review-fields dd{margin:0;overflow-wrap:anywhere}.isd-sla-editor [data-sla-save-status]{white-space:pre-wrap;overflow-wrap:anywhere}.isd-sla-editor button:disabled{opacity:.5;cursor:wait}.isd-sla-editor [data-sla-review] button{margin-right:10px}.isd-sla-editor [hidden]{display:none!important}.isd-service-metric:focus-visible,.isd-sla-tabs button:focus-visible,.isd-sla-editor :focus-visible,.isd-dashboard-queue button:focus-visible{outline:3px solid #89d8ff;outline-offset:3px}
@media(max-width:1100px){.isd-service-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.isd-service-heading{flex-direction:column;gap:13px}.isd-service-heading h3{font-size:24px}.isd-service-metrics{gap:10px}.isd-service-metric{padding:14px;min-height:150px}.isd-service-metric strong{font-size:32px}.isd-service-metric span{font-size:14px}.isd-service-metric small{font-size:11px}.isd-sla-health,.isd-sla-form-grid,.isd-sla-week,.isd-sla-targets{grid-template-columns:1fr}.isd-sla-card{padding:16px}.isd-sla-tabs button{padding:12px 10px;font-size:14px}.isd-sla-editor{padding:18px}.isd-sla-exception{grid-template-columns:1fr}.isd-sla-review-fields>div{grid-template-columns:1fr;gap:5px}.isd-dashboard-queue li button{grid-template-columns:1fr}.isd-dashboard-queue li button>small{grid-column:1}.isd-sla-card th,.isd-sla-card td{padding:8px;font-size:13px}.isd-dashboard-queue{padding:16px}}
