@import url('/assets/nord-platform.v0.6.13-core.css?v=0.9.2-stability-pass-3');

/* Workspace rail: Discord servers are the primary context. */
.rail-servers{overflow-x:visible!important;padding:2px 0 6px}
.rail-server{overflow:visible!important;padding:4px;background:var(--surface-2)!important}
.rail-server-avatar{width:100%;height:100%;border-radius:13px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,var(--surface-3),var(--surface-2));color:var(--text-2);font-size:12px;font-weight:900;letter-spacing:.02em}
.rail-server-avatar img{width:100%;height:100%;display:block;object-fit:cover}
.rail-server:hover .rail-server-avatar{filter:brightness(1.06)}
.rail-server.active{background:var(--surface)!important;border-color:rgba(120,135,255,.66)!important;box-shadow:0 0 0 2px var(--surface),0 0 0 4px rgba(120,135,255,.30)}
.rail-server.active .rail-server-avatar{color:var(--accent)}
.rail-server-bot{position:absolute;right:-5px;bottom:-5px;width:21px;height:21px;border-radius:8px;display:grid;place-items:center;background:var(--surface);border:2px solid var(--surface);box-shadow:0 0 0 1px var(--border-strong);font-size:8px;color:var(--muted);z-index:3}
.rail-server-bot.online,.rail-server-bot.starting{color:var(--success);background:var(--success-soft)}
.rail-server-bot.offline,.rail-server-bot.error{color:var(--danger);background:var(--danger-soft)}
.rail-server-bot.empty{color:var(--muted);background:var(--surface-3)}

/* First-owner default bot onboarding. */
body.onboarding-open{overflow:hidden!important}
.nord-onboarding-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:rgba(5,9,16,.80);backdrop-filter:saturate(.9)}
.nord-onboarding-backdrop[hidden]{display:none!important}
.nord-onboarding-card{width:min(680px,100%);max-height:calc(100dvh - 48px);overflow:auto;border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:0 30px 100px rgba(0,0,0,.5);padding:24px}
.nord-onboarding-brand{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--border)}
.nord-onboarding-brand>div{display:grid;gap:2px}.nord-onboarding-brand>div span{font-size:10px;font-weight:900;letter-spacing:.13em;color:var(--muted)}.nord-onboarding-brand>div strong{font-size:16px;color:var(--text)}
.nord-onboarding-brand em{margin-left:auto;font-style:normal;font-size:11px;font-weight:800;color:var(--muted);padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2)}
.nord-onboarding-logo{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,var(--accent),#8f62ff);color:white;font-size:17px}
.nord-onboarding-copy{padding:22px 2px 12px}.nord-onboarding-kicker{font-size:10px;font-weight:900;letter-spacing:.14em;color:var(--accent)}
.nord-onboarding-copy h2{margin:8px 0 8px;font-size:25px;line-height:1.15;color:var(--text)}
.nord-onboarding-copy p{margin:0;color:var(--muted);line-height:1.65;font-size:14px}
.nord-onboarding-security{display:flex;gap:12px;align-items:flex-start;padding:14px 15px;margin:8px 0 18px;border:1px solid rgba(87,205,161,.24);background:rgba(87,205,161,.07);border-radius:15px}.nord-onboarding-security>i{margin-top:2px;color:var(--success);font-size:17px}.nord-onboarding-security>div{display:grid;gap:3px}.nord-onboarding-security strong{font-size:13px;color:var(--text)}.nord-onboarding-security span{font-size:12px;line-height:1.45;color:var(--muted)}
.nord-onboarding-form{display:grid;gap:15px}.nord-onboarding-form>label{display:grid;gap:7px}.nord-onboarding-form>label>span{font-size:12px;font-weight:800;color:var(--text-2)}
.nord-secret-field{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px}.nord-secret-field button{border:1px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--text-2);cursor:pointer}.nord-secret-field button:hover{border-color:var(--border-strong);color:var(--text)}
.nord-onboarding-status{display:flex;gap:11px;align-items:flex-start;padding:13px 14px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2)}.nord-onboarding-status>i{margin-top:2px}.nord-onboarding-status>div{display:grid;gap:3px}.nord-onboarding-status strong{font-size:13px}.nord-onboarding-status span{font-size:12px;line-height:1.45;color:var(--muted)}
.nord-onboarding-status.processing{border-color:rgba(119,134,255,.28);background:rgba(119,134,255,.08)}.nord-onboarding-status.processing>i{color:var(--accent)}
.nord-onboarding-status.success{border-color:rgba(87,205,161,.28);background:rgba(87,205,161,.08)}.nord-onboarding-status.success>i{color:var(--success)}
.nord-onboarding-status.error{border-color:rgba(255,91,111,.28);background:rgba(255,91,111,.08)}.nord-onboarding-status.error>i{color:var(--danger)}
.nord-onboarding-submit{width:100%;justify-content:center;min-height:46px;margin-top:2px}.nord-onboarding-submit:disabled{opacity:.72;cursor:wait}
.nord-onboarding-foot{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border);font-size:11px;color:var(--muted)}

/* Mobile navigation hotfix.
   Desktop remains owned by the core stylesheet. Only narrow viewports are
   converted into a real off-canvas drawer. */
#mobileMenu.mobile-menu{display:none!important}
.sidebar-backdrop{border:0;padding:0;margin:0}

@media (max-width:820px){
  body.sidebar-open{overflow:hidden!important;touch-action:none}

  .nord-shell{grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  .nord-rail{display:none!important}
  .nord-main{grid-column:1!important;min-width:0!important;width:100%!important;max-width:100vw!important}

  .nord-sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    left:0!important;
    top:0!important;
    width:min(86vw,320px)!important;
    max-width:calc(100vw - 54px)!important;
    height:100dvh!important;
    min-height:100dvh!important;
    transform:translate3d(calc(-100% - 20px),0,0)!important;
    transition:transform .22s ease!important;
    box-shadow:0 24px 70px rgba(0,0,0,.42)!important;
    z-index:120!important;
    overflow:hidden!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  body.sidebar-open .nord-sidebar{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  #mobileMenu.mobile-menu{
    display:grid!important;
    place-items:center!important;
    position:relative!important;
    z-index:82!important;
    width:42px!important;
    height:42px!important;
    flex:0 0 42px!important;
  }

  .sidebar-close{
    display:grid!important;
    place-items:center!important;
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    flex:0 0 36px!important;
    border:1px solid var(--border)!important;
    border-radius:11px!important;
    background:var(--surface-2)!important;
    color:var(--text-2)!important;
    padding:0!important;
    z-index:2!important;
  }

  .sidebar-backdrop{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    background:rgba(3,7,13,.68)!important;
    z-index:115!important;
  }
  .sidebar-backdrop[hidden]{display:none!important}

  .nord-sidebar .sidebar-workspace{flex:0 0 auto!important}
  .nord-sidebar .nord-nav{min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important}
  .nord-sidebar .sidebar-footer{flex:0 0 auto!important}

  .nord-topbar{
    width:100%!important;
    height:auto!important;
    min-height:66px!important;
    padding:10px 12px!important;
    z-index:80!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) auto auto auto!important;
    gap:8px!important;
    align-items:center!important;
  }
  .mobile-menu{grid-column:1!important;grid-row:1!important}
  .topbar-spacer{display:none!important}
  .user-chip,.connection-pill,#refreshBtn{display:none!important}
  .language-select{grid-column:3!important;grid-row:1!important;margin:0!important;min-width:68px!important}
  #themeBtn{grid-column:4!important;grid-row:1!important}
  #logoutBtn{grid-column:5!important;grid-row:1!important}

  .server-context{grid-column:1/-1!important;grid-row:2!important;width:100%!important;display:grid!important;grid-template-columns:minmax(92px,.75fr) minmax(0,1.25fr)!important;gap:8px!important}
  .context-select,.context-select.small{min-width:0!important;width:100%!important}
  .context-select select,.context-select.small select{width:100%!important;min-width:0!important;max-width:none!important;height:40px!important}

  .nord-page{padding:18px 12px 28px!important;max-width:100%!important;overflow-x:hidden!important}
  .page-head{align-items:flex-start!important;flex-direction:column!important;gap:12px!important;margin-bottom:16px!important}
  .page-head h1{font-size:24px!important}
  .head-actions{width:100%!important}
  .head-actions .btn{flex:1;min-width:0}
  .metrics{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .metric-card,.card{border-radius:15px;padding:14px}
  .grid-2,.grid-3{grid-template-columns:1fr!important;gap:10px!important;margin-top:10px!important}
  .form-grid,.form-grid.cols-3{grid-template-columns:1fr!important}
  .page-switch{width:100%;overflow:auto}
  .button-editor{grid-template-columns:1fr!important}
  .button-editor>*:last-child{grid-column:auto!important}

  .nord-onboarding-backdrop{padding:12px;align-items:end}
  .nord-onboarding-card{width:100%;max-height:92dvh;border-radius:22px 22px 16px 16px;padding:18px}
  .nord-onboarding-copy h2{font-size:22px}
}

@media (max-width:560px){
  .nord-sidebar{width:min(88vw,310px)!important;max-width:calc(100vw - 48px)!important;padding:13px 11px!important}
  .sidebar-workspace{padding-inline:5px!important}
  .workspace-avatar{width:42px!important;height:42px!important;border-radius:14px!important}
  .nord-topbar{grid-template-columns:42px minmax(0,1fr) auto auto!important;padding:9px 10px!important}
  #logoutBtn{display:none!important}
  .language-select{grid-column:3!important}
  #themeBtn{grid-column:4!important}
  .metrics{grid-template-columns:1fr!important}
  .head-actions{display:grid!important;grid-template-columns:1fr!important}
  .head-actions .btn{width:100%!important}
  .server-context{grid-template-columns:1fr 1.35fr!important}
}

/* Explicit desktop safety fence. Nothing mobile can leak into the PC layout. */
@media (min-width:821px){
  body.sidebar-open{overflow:auto;touch-action:auto}
  #mobileMenu.mobile-menu{display:none!important}
  .sidebar-close,.sidebar-backdrop{display:none!important}
}


/* v0.8.20 mobile navigation stabilization.
   Do not depend on pointer/hover capability: Android WebViews and some
   browsers can report a fine pointer even on a phone, which previously
   exposed the desktop rail + sidebar at the same time. */
@media (max-width:1024px){
  html,body{max-width:100%;overflow-x:hidden}
  body.sidebar-open{overflow:hidden!important;touch-action:none!important}

  .nord-shell{
    display:block!important;
    width:100%!important;
    max-width:100vw!important;
    min-height:100dvh!important;
  }

  /* Mobile has one navigation surface only: the off-canvas sidebar. */
  #workspaceRail.nord-rail,
  .nord-rail{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    min-width:0!important;
    pointer-events:none!important;
  }

  .nord-main{
    display:block!important;
    grid-column:1!important;
    width:100%!important;
    max-width:100vw!important;
    min-width:0!important;
    margin:0!important;
    overflow-x:hidden!important;
  }

  .nord-sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:min(86vw,330px)!important;
    max-width:calc(100vw - 48px)!important;
    height:100dvh!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:
      calc(14px + env(safe-area-inset-top,0px))
      12px
      calc(12px + env(safe-area-inset-bottom,0px))
      12px!important;
    transform:translate3d(calc(-100% - 24px),0,0)!important;
    left:0!important;
    transition:transform .22s cubic-bezier(.2,.8,.2,1),visibility .22s!important;
    visibility:hidden!important;
    pointer-events:none!important;
    overflow:hidden!important;
    box-shadow:0 24px 80px rgba(0,0,0,.55)!important;
    z-index:2140!important;
  }

  body.sidebar-open .nord-sidebar{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  .nord-sidebar .sidebar-workspace{flex:0 0 auto!important}
  .nord-sidebar .sidebar-context-line{flex:0 0 auto!important}
  .nord-sidebar .nord-search{flex:0 0 auto!important}
  .nord-sidebar .nord-nav{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:18px!important;
  }
  .nord-sidebar .sidebar-footer{flex:0 0 auto!important}

  #mobileMenu.mobile-menu{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    flex:0 0 42px!important;
    position:relative!important;
    z-index:2110!important;
  }

  .sidebar-close{
    display:grid!important;
    place-items:center!important;
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    padding:0!important;
  }

  #sidebarBackdrop.sidebar-backdrop{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    border:0!important;
    background:rgba(3,7,13,.72)!important;
    z-index:2130!important;
    -webkit-tap-highlight-color:transparent;
  }
  #sidebarBackdrop.sidebar-backdrop[hidden]{display:none!important}

  .nord-topbar{
    width:100%!important;
    max-width:100vw!important;
    min-height:64px!important;
    height:auto!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) auto auto auto!important;
    gap:8px!important;
    align-items:center!important;
    padding:
      calc(9px + env(safe-area-inset-top,0px))
      11px
      9px!important;
    margin:0!important;
    overflow:visible!important;
  }

  .mobile-menu{grid-column:1!important;grid-row:1!important}
  .topbar-spacer{display:none!important}
  .user-chip,.connection-pill,#refreshBtn{display:none!important}
  .language-select{grid-column:3!important;grid-row:1!important;margin:0!important}
  #themeBtn{grid-column:4!important;grid-row:1!important}
  #logoutBtn{grid-column:5!important;grid-row:1!important}

  .server-context{
    grid-column:1/-1!important;
    grid-row:2!important;
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;
    gap:8px!important;
    margin:0!important;
  }
  .server-context .context-select,
  .server-context .context-select.small{min-width:0!important;width:100%!important}
  .server-context select{width:100%!important;min-width:0!important;max-width:100%!important}

  .nord-page{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:16px 12px 28px!important;
    overflow-x:hidden!important;
  }

  .page-head{width:100%!important;max-width:100%!important}
  .page-head>div{min-width:0!important;max-width:100%!important}
  .page-head h1,.page-head p{max-width:100%!important;overflow-wrap:anywhere}
  .card,.metric-card,.managed-server-card,.managed-bot-card{max-width:100%!important;min-width:0!important}
  .table-wrap{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
}

@media (max-width:560px){
  .nord-sidebar{
    width:min(90vw,320px)!important;
    max-width:calc(100vw - 36px)!important;
  }
  .nord-topbar{
    grid-template-columns:42px minmax(0,1fr) auto!important;
    padding-left:9px!important;
    padding-right:9px!important;
  }
  .language-select{display:none!important}
  #themeBtn{grid-column:3!important}
  #logoutBtn{display:none!important}
  .server-context{grid-template-columns:1fr!important}
  .nord-page{padding-left:10px!important;padding-right:10px!important}
}


/* v0.9.1 ticket history: cards + details modal */
.ticket-config-card{margin-top:0}
.ticket-config-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.ticket-history-card{overflow:hidden}
.ticket-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ticket-card{appearance:none;width:100%;min-width:0;display:flex;flex-direction:column;gap:13px;padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer;transition:border-color .16s ease,transform .16s ease,background .16s ease,box-shadow .16s ease}
.ticket-card:hover{border-color:var(--border-strong);background:var(--hover);transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.12)}
.ticket-card:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.ticket-card-top{display:flex;align-items:center;gap:8px;width:100%}
.ticket-card-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:12px}
.ticket-card-id{font-size:11px;font-weight:900;color:var(--text-2)}
.ticket-status{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:900;letter-spacing:.055em;text-transform:uppercase;border:1px solid var(--border);background:var(--surface-3);color:var(--muted)}
.ticket-status.open{border-color:rgba(87,205,161,.24);background:var(--success-soft);color:var(--success)}
.ticket-status.closed{border-color:var(--border);background:var(--surface-3);color:var(--muted)}
.ticket-status.neutral{background:var(--warning-soft);color:var(--warning)}
.ticket-card-subject{display:block;min-height:22px;font-size:14px;font-weight:850;letter-spacing:-.015em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ticket-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ticket-card-meta>span{min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr);grid-template-rows:auto auto;column-gap:5px;padding:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
.ticket-card-meta i{grid-row:1/3;align-self:center;color:var(--muted);font-size:9px}
.ticket-card-meta b{font-size:7px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.ticket-card-meta em{font-style:normal;font-size:9px;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2)}
.ticket-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:11px;border-top:1px solid var(--border);font-size:8px;color:var(--muted)}
.ticket-card-footer>span{display:inline-flex;align-items:center;gap:6px}
.ticket-card-open{color:var(--accent);font-weight:850}
.ticket-empty{min-height:170px;display:grid;place-content:center}
.ticket-details-modal{width:min(700px,100%)}
.ticket-modal-kicker{display:block;margin-bottom:4px;color:var(--accent);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.11em}
.ticket-detail-hero{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}
.ticket-detail-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:var(--accent-soft);color:var(--accent);font-size:16px}
.ticket-detail-hero small,.ticket-detail-hero strong{display:block}.ticket-detail-hero small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.ticket-detail-hero strong{margin-top:4px;font-size:14px}
.ticket-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:11px}
.ticket-detail-item{min-width:0;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.ticket-detail-item span,.ticket-detail-item strong{display:block}.ticket-detail-item span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.055em}.ticket-detail-item span i{width:16px;color:var(--accent)}.ticket-detail-item strong{margin-top:6px;font-size:10px;overflow-wrap:anywhere}
.ticket-history-head{gap:16px}.ticket-history-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.ticket-detail-danger{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding:12px 13px;border:1px solid rgba(239,68,68,.2);border-radius:12px;background:rgba(239,68,68,.045)}
.ticket-detail-danger-copy{min-width:0;display:flex;align-items:flex-start;gap:10px}.ticket-detail-danger-copy>i{width:31px;height:31px;display:grid;place-items:center;flex:0 0 31px;border-radius:9px;background:rgba(239,68,68,.09);color:var(--danger)}
.ticket-detail-danger-copy strong,.ticket-detail-danger-copy small{display:block}.ticket-detail-danger-copy strong{font-size:10px;color:var(--text)}.ticket-detail-danger-copy small{margin-top:3px;max-width:420px;color:var(--muted);font-size:8px;line-height:1.45}
.ticket-detail-danger .btn{flex:0 0 auto;min-height:36px;font-size:9px}
@media(max-width:1180px){.ticket-config-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.ticket-config-grid,.ticket-grid,.ticket-detail-grid{grid-template-columns:1fr}.ticket-card-meta{grid-template-columns:1fr}.ticket-detail-hero{grid-template-columns:44px minmax(0,1fr)}.ticket-detail-hero .ticket-status{grid-column:1/-1;margin-left:0;width:max-content}.ticket-details-modal{max-height:88dvh}.ticket-history-actions{width:100%;justify-content:flex-start}.ticket-detail-danger{align-items:stretch;flex-direction:column}.ticket-detail-danger .btn{width:100%}}


/* v0.9.1 giveaway grid + create/details modals */
.giveaway-history-card{overflow:hidden}
.giveaway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.giveaway-card{appearance:none;width:100%;min-width:0;display:flex;flex-direction:column;gap:13px;padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer;transition:border-color .16s ease,transform .16s ease,background .16s ease,box-shadow .16s ease}
.giveaway-card:hover{border-color:var(--border-strong);background:var(--hover);transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.12)}
.giveaway-card:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.giveaway-card-top{display:flex;align-items:center;gap:8px;width:100%}.giveaway-card-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:12px}.giveaway-card-id{font-size:11px;font-weight:900;color:var(--text-2)}
.giveaway-status{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-3);font-size:8px;font-weight:900;letter-spacing:.055em;text-transform:uppercase;color:var(--muted)}
.giveaway-status.active{border-color:rgba(87,205,161,.24);background:var(--success-soft);color:var(--success)}.giveaway-status.ending{border-color:rgba(245,158,11,.24);background:var(--warning-soft);color:var(--warning)}.giveaway-status.ended{color:var(--muted)}
.giveaway-card-prize{display:block;min-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:850;letter-spacing:-.015em}
.giveaway-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.giveaway-card-meta>span{min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr);grid-template-rows:auto auto;column-gap:5px;padding:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.giveaway-card-meta i{grid-row:1/3;align-self:center;color:var(--muted);font-size:9px}.giveaway-card-meta b{font-size:7px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.giveaway-card-meta em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-size:9px;font-weight:750;color:var(--text-2)}
.giveaway-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:11px;border-top:1px solid var(--border);font-size:8px;color:var(--muted)}.giveaway-card-footer>span{display:inline-flex;align-items:center;gap:6px}.giveaway-card-open{color:var(--accent);font-weight:850}.giveaway-empty{min-height:180px;display:grid;place-content:center}
.giveaway-modal-kicker{display:block;margin-bottom:4px;color:var(--accent);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.11em}.giveaway-create-modal{width:min(620px,100%)}.giveaway-create-modal .modal-head{align-items:flex-start}.giveaway-create-modal .modal-head h3{margin:3px 0 0}.giveaway-create-modal .modal-help{margin:5px 0 0;max-width:430px}
.giveaway-create-hero{display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;align-items:center;margin-bottom:14px;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.giveaway-create-hero>span{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:var(--accent-soft);color:var(--accent);font-size:14px}.giveaway-create-hero strong,.giveaway-create-hero small{display:block}.giveaway-create-hero strong{font-size:10px}.giveaway-create-hero small{margin-top:3px;color:var(--muted);font-size:8px}
.giveaway-create-grid{grid-template-columns:1fr 1fr}.giveaway-create-note{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:10px 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--muted);font-size:8px;line-height:1.45}.giveaway-create-note i{margin-top:1px;color:var(--accent)}
.giveaway-details-modal{width:min(700px,100%)}.giveaway-detail-hero{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.giveaway-detail-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:var(--accent-soft);color:var(--accent);font-size:16px}.giveaway-detail-hero small,.giveaway-detail-hero strong{display:block}.giveaway-detail-hero small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.giveaway-detail-hero strong{margin-top:4px;font-size:14px;overflow-wrap:anywhere}
.giveaway-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:11px}.giveaway-detail-item{min-width:0;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.giveaway-detail-item span,.giveaway-detail-item strong{display:block}.giveaway-detail-item span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.055em}.giveaway-detail-item span i{width:16px;color:var(--accent)}.giveaway-detail-item strong{margin-top:6px;font-size:10px;overflow-wrap:anywhere}
@media(max-width:1180px){.giveaway-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.giveaway-grid,.giveaway-create-grid,.giveaway-detail-grid{grid-template-columns:1fr}.giveaway-card-meta{grid-template-columns:1fr}.giveaway-detail-hero{grid-template-columns:44px minmax(0,1fr)}.giveaway-detail-hero .giveaway-status{grid-column:1/-1;margin-left:0;width:max-content}.giveaway-create-modal,.giveaway-details-modal{max-height:90dvh}}


/* v0.9.1 platform readability pass
   Titles keep their existing scale; supporting text gets a readable desktop floor. */
#appShell{font-size:14px}

#appShell :where(p,li,dt,dd){
  font-size:14px!important;
  line-height:1.55!important;
}
#appShell :where(label,button,a,input,textarea,select,option,td){
  font-size:13px!important;
  line-height:1.4!important;
}
#appShell th{
  font-size:12px!important;
  line-height:1.35!important;
}
#appShell :where(small,time,code,kbd){
  font-size:12px!important;
  line-height:1.4!important;
}

#appShell :where(
  .page-kicker,.metric-label,.metric-note,.nav-heading,.nav-badge,
  .sidebar-context-label,.sidebar-context-value,.sidebar-account-label,
  .pill,.badge,.eyebrow,.caption,.hint,.help-text,.helper-text,.form-hint,
  [class*="-label"],[class*="-meta"],[class*="-note"],[class*="-hint"],
  [class*="-caption"],[class*="-kicker"],[class*="-eyebrow"],
  [class*="-badge"],[class*="-pill"]
){
  font-size:12px!important;
  line-height:1.4!important;
}

#appShell :where(
  .nav-text strong,.workspace-copy strong,.user-chip strong,
  .quick-action strong,.status-row strong,
  [class*="-copy"] > strong,[class*="-user"] > strong,
  [class*="-thread"] strong,[class*="-message"] strong
){
  font-size:14px!important;
  line-height:1.35!important;
}

#appShell :where(
  .nav-text small,.workspace-copy small,.user-chip small,
  .quick-action small,.status-row small
){
  font-size:12px!important;
  line-height:1.4!important;
}

#appShell .metric-label{font-size:12px!important}
#appShell .metric-note{font-size:13px!important}
#appShell .card-title p{font-size:13px!important}
#appShell .btn.small{font-size:12px!important}
#appShell .permission-tag{font-size:11px!important}
#appShell .role-card p{font-size:12px!important}
#appShell .role-card h3{font-size:14px!important}
#appShell .permission-group h4{font-size:13px!important}

/* Nexus: all non-title copy must stay readable even when feature JS injects smaller CSS later. */
body.nord-nexus-active #page-hub :where(p,label,button,a,input,textarea,select,option,td){
  font-size:13px!important;
  line-height:1.45!important;
}
body.nord-nexus-active #page-hub :where(small,time,code,kbd){
  font-size:12px!important;
  line-height:1.4!important;
}
body.nord-nexus-active #page-hub :where(
  [class*="nx-"][class*="-meta"],
  [class*="nx-"][class*="-label"],
  [class*="nx-"][class*="-note"],
  [class*="nx-"][class*="-hint"],
  [class*="nx-"][class*="-badge"],
  [class*="nx-"][class*="-pill"]
){
  font-size:12px!important;
  line-height:1.4!important;
}
body.nord-nexus-active #page-hub :where(
  .nx-dm-thread-copy strong,.nx-dm-chat-profile-copy strong,
  .nx-dm-person-copy strong,.nx-profile-bio strong,
  .nx-notification strong,.nx-explore-section-head strong
){
  font-size:14px!important;
}
body.nord-nexus-active #page-hub :where(
  .nx-dm-thread-copy p,.nx-dm-chat-profile-copy small,
  .nx-dm-person-copy small,.nx-profile-bio .handle,
  .nx-profile-bio p,.nx-profile-stats span,
  .nx-explore-section-head span
){
  font-size:12px!important;
}
body.nord-nexus-active #page-hub .nx-profile-stats strong{font-size:15px!important}
body.nord-nexus-active #page-hub .nx-dm-bubble{font-size:13px!important;line-height:1.5!important}
body.nord-nexus-active #page-hub .nx-dm-time{font-size:11px!important}
body.nord-nexus-active #page-hub .nx-dm-seen{font-size:11px!important}
body.nord-nexus-active #page-hub .nx-dm-compose input{font-size:13px!important}
body.nord-nexus-active #page-hub .nx-profile-tabs-instagram button{font-size:12px!important}
body.nord-nexus-active #page-hub .nx-profile-grid-text p{font-size:13px!important}

/* Do not let readability rules alter established headline/value hierarchy. */
#appShell :where(h1,h2,h3,h4,h5,h6) :where(span,strong,small){
  font-size:inherit!important;
  line-height:inherit!important;
}
#appShell :where(.metric-value,.metric-value *,[class*="-value"].metric-value){
  font-size:inherit!important;
}


/* v0.9.1 Discord mobile final authority
   Loaded after legacy mobile rules so the rail + context panel model always wins. */
@media (max-width:1024px){
  :root{--mobile-rail:72px}

  html,body{max-width:100%;overflow-x:hidden}
  body.sidebar-open{overflow:hidden!important;touch-action:none!important}

  .nord-shell{
    display:grid!important;
    grid-template-columns:var(--mobile-rail) minmax(0,1fr)!important;
    width:100%!important;
    max-width:100vw!important;
    min-height:100dvh!important;
  }

  #workspaceRail.nord-rail,.nord-rail{
    display:flex!important;
    visibility:visible!important;
    position:fixed!important;
    inset:0 auto 0 0!important;
    left:0!important;
    width:var(--mobile-rail)!important;
    min-width:var(--mobile-rail)!important;
    max-width:var(--mobile-rail)!important;
    height:100dvh!important;
    padding:12px 8px!important;
    pointer-events:auto!important;
    overflow:hidden!important;
    border-right:1px solid var(--border)!important;
    background:var(--surface)!important;
    z-index:2200!important;
  }
  .nord-rail .rail-top,.nord-rail .rail-bottom{width:100%!important}
  .nord-rail .rail-bots{
    width:100%!important;
    max-height:calc(100dvh - 214px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-width:none!important;
  }
  .nord-rail .rail-bots::-webkit-scrollbar{display:none!important}
  .nord-rail .rail-item{
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    flex:0 0 50px!important;
    border-radius:16px!important;
  }

  .nord-main{
    display:block!important;
    grid-column:2!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    overflow-x:hidden!important;
  }

  .nord-sidebar{
    display:flex!important;
    position:fixed!important;
    inset:0 auto 0 var(--mobile-rail)!important;
    left:var(--mobile-rail)!important;
    top:0!important;
    width:min(330px,calc(100vw - var(--mobile-rail) - 12px))!important;
    max-width:calc(100vw - var(--mobile-rail))!important;
    height:100dvh!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:
      calc(14px + env(safe-area-inset-top,0px))
      12px
      calc(12px + env(safe-area-inset-bottom,0px))
      12px!important;
    transform:translate3d(calc(-100% - 14px),0,0)!important;
    transition:transform .22s cubic-bezier(.2,.8,.2,1),visibility .22s!important;
    visibility:hidden!important;
    pointer-events:none!important;
    overflow:hidden!important;
    box-shadow:0 24px 80px rgba(0,0,0,.52)!important;
    z-index:2140!important;
  }
  body.sidebar-open .nord-sidebar{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  #sidebarBackdrop.sidebar-backdrop,.sidebar-backdrop{
    display:block!important;
    position:fixed!important;
    inset:0 0 0 var(--mobile-rail)!important;
    left:var(--mobile-rail)!important;
    border:0!important;
    background:rgba(3,7,13,.64)!important;
    z-index:2100!important;
    -webkit-tap-highlight-color:transparent;
  }
  #sidebarBackdrop.sidebar-backdrop[hidden],.sidebar-backdrop[hidden]{display:none!important}

  #mobileMenu.mobile-menu{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    flex:0 0 42px!important;
    position:relative!important;
    z-index:2110!important;
  }

  .nord-sidebar .nord-nav{
    flex:1 1 auto!important;
    min-width:0!important;
    min-height:0!important;
    width:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-gutter:stable!important;
    padding:0 5px 18px 2px!important;
  }
  .nord-sidebar .nav-group,
  .nord-sidebar .nav-panel,
  .nord-sidebar .nav-heading,
  .nord-sidebar .nav-item{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  .nord-sidebar .nav-item{
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
    padding:10px 9px!important;
    overflow:hidden!important;
  }
  .nord-sidebar .nav-icon{
    width:34px!important;
    min-width:34px!important;
    height:34px!important;
  }
  .nord-sidebar .nav-text{
    min-width:0!important;
    width:100%!important;
    overflow:hidden!important;
  }
  .nord-sidebar .nav-text strong,
  .nord-sidebar .nav-text small{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .nord-sidebar .nav-text strong{font-size:14px!important}
  .nord-sidebar .nav-text small{font-size:12px!important}
  .nord-sidebar .nav-heading{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    padding:10px 8px 7px!important;
    overflow:hidden!important;
  }
  .nord-sidebar .nav-heading span{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .nord-sidebar .sidebar-workspace,
  .nord-sidebar .sidebar-context-line,
  .nord-sidebar .nord-search,
  .nord-sidebar .sidebar-footer{
    min-width:0!important;
    max-width:100%!important;
  }

  /* Ready/Beta/version chips are intentionally removed from navigation. */
  .nav-badge{display:none!important}
}

@media (max-width:560px){
  :root{--mobile-rail:68px}
  #workspaceRail.nord-rail,.nord-rail{
    width:var(--mobile-rail)!important;
    min-width:var(--mobile-rail)!important;
    max-width:var(--mobile-rail)!important;
    padding-inline:7px!important;
  }
  .nord-rail .rail-item{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    flex-basis:48px!important;
  }
  .nord-sidebar{
    left:var(--mobile-rail)!important;
    inset:0 auto 0 var(--mobile-rail)!important;
    width:min(318px,calc(100vw - var(--mobile-rail)))!important;
    max-width:calc(100vw - var(--mobile-rail))!important;
  }
  #sidebarBackdrop.sidebar-backdrop,.sidebar-backdrop{
    left:var(--mobile-rail)!important;
  }
}


/* Global account center: intentionally separate from Nexus/RP profiles. */
.account-settings-page{width:min(1120px,100%);margin:0 auto;padding-bottom:42px}
.account-page-head{padding-bottom:20px}
.account-overview-card{padding:0;overflow:hidden}
.account-profile-hero{display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px}
.account-profile-avatar{width:64px;height:64px;display:grid;place-items:center;border:1px solid var(--border);border-radius:18px;background:var(--accent-soft);color:var(--accent);font-size:24px;font-weight:950}
.account-profile-copy{min-width:0}.account-profile-copy strong,.account-profile-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-profile-copy strong{font-size:18px;color:var(--text);letter-spacing:-.02em}.account-profile-copy span{margin-top:4px;color:var(--muted);font-size:12px}
.account-profile-badges{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.account-profile-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--border)}
.account-profile-meta>div{padding:14px 18px;border-right:1px solid var(--border)}.account-profile-meta>div:last-child{border-right:0}
.account-profile-meta small,.account-profile-meta strong{display:block}.account-profile-meta small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.account-profile-meta strong{margin-top:5px;color:var(--text);font-size:12px}
.account-settings-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:16px;margin-top:16px}
.account-settings-card{min-width:0}.account-settings-card .card-title{align-items:flex-start}
.account-card-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--accent);font-size:14px}
.account-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.account-inline-note{display:flex;align-items:flex-start;gap:9px;margin-top:12px;padding:10px 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--muted);font-size:11px;line-height:1.45}
.account-inline-note i{margin-top:2px;color:var(--accent)}
.account-sessions-card #sessionsTable{display:grid;gap:8px}
.account-session{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.account-session.current{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface-2))}
.account-session-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:var(--surface);color:var(--muted);font-size:14px}
.account-session-copy{min-width:0}.account-session-copy strong,.account-session-copy small{display:block}.account-session-copy strong{color:var(--text);font-size:12px}.account-session-copy small{margin-top:4px;color:var(--muted);font-size:10px;line-height:1.45;overflow-wrap:anywhere}
@media(max-width:900px){.account-settings-grid{grid-template-columns:1fr}.account-profile-hero{grid-template-columns:62px minmax(0,1fr)}.account-profile-badges{grid-column:1/-1;justify-content:flex-start;padding-left:78px;margin-top:-5px}.account-profile-meta{grid-template-columns:1fr}.account-profile-meta>div{border-right:0;border-bottom:1px solid var(--border)}.account-profile-meta>div:last-child{border-bottom:0}}
@media(max-width:620px){.account-settings-page{padding-bottom:28px}.account-profile-hero{padding:16px;gap:12px}.account-profile-avatar{width:54px;height:54px;border-radius:15px;font-size:20px}.account-profile-copy strong{font-size:16px}.account-profile-badges{padding-left:66px}.account-form-grid{grid-template-columns:1fr}.account-session{grid-template-columns:36px minmax(0,1fr)}.account-session-icon{width:36px;height:36px}.account-session>.pill,.account-session>.btn{grid-column:2;justify-self:start}}


/* v0.9.1 global account workspace — separate from community navigation */
.community-sidebar-view,.account-sidebar-view{display:flex;flex-direction:column;min-width:0;width:100%;height:100%;min-height:0}
.community-sidebar-view[hidden],.account-sidebar-view[hidden]{display:none!important}
.account-sidebar-head{margin-bottom:12px}
.account-workspace-avatar{background:linear-gradient(145deg,var(--accent),#8b5cf6);font-size:17px}
.account-settings-nav{padding-top:6px}
.account-settings-nav .nav-group{margin-top:0}
.account-settings-nav .account-nav-heading{cursor:default}
.account-settings-nav .account-nav-item{width:100%;border:1px solid transparent;background:transparent;text-align:left}
.account-settings-nav .account-nav-item.active{border-color:rgba(120,135,255,.28);background:linear-gradient(90deg,var(--accent-soft),rgba(139,92,246,.055));color:var(--accent)}
.account-settings-nav .account-nav-item.active .nav-icon{background:var(--surface);border:1px solid var(--border);border-radius:10px}
.account-sidebar-footer{display:grid;gap:10px}
.account-sidebar-user{display:grid;grid-template-columns:36px minmax(0,1fr) 34px;align-items:center;gap:9px;padding:10px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}
.account-sidebar-user>div{min-width:0}
.account-sidebar-user strong,.account-sidebar-user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-sidebar-user strong{font-size:12px;color:var(--text)}
.account-sidebar-user small{margin-top:2px;font-size:10px;color:var(--muted)}
.account-sidebar-logout{width:34px;height:34px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--muted);display:grid;place-items:center}
.account-sidebar-logout:hover{color:var(--danger);border-color:rgba(255,113,136,.32);background:var(--danger-soft)}
.community-sidebar-footer{padding:10px 0 0;margin-top:auto}
.community-sidebar-user{background:var(--surface-2);border-radius:14px}
.community-sidebar-user .sidebar-user-avatar{width:36px;height:36px;border-radius:11px}
.community-sidebar-user .account-sidebar-logout{width:34px;height:34px}
.account-topbar-context{display:flex;align-items:center;gap:10px;min-width:0}
.account-topbar-context[hidden]{display:none!important}
.account-topbar-icon{width:38px;height:38px;border:1px solid var(--border);border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}
.account-topbar-context>div{min-width:0}
.account-topbar-context strong,.account-topbar-context small{display:block}
.account-topbar-context strong{font-size:13px;color:var(--text)}
.account-topbar-context small{margin-top:2px;font-size:10px;color:var(--muted)}
body.account-workspace .server-context,body.account-workspace #runtimePill,body.account-workspace #refreshBtn{display:none!important}
body.account-workspace .nord-page{max-width:1320px}
.account-settings-panel{animation:accountPanelIn .16s ease}
.account-settings-panel[hidden]{display:none!important}
@keyframes accountPanelIn{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:none}}
.account-security-card{max-width:760px}
.account-settings-panel[data-account-panel="preferences"] .account-settings-card{max-width:820px}
.account-settings-panel[data-account-panel="connections"] .account-connections-card{max-width:980px}
.account-settings-panel[data-account-panel="sessions"] .account-sessions-card{max-width:980px}
.account-settings-page>.account-settings-panel>.page-head{margin-bottom:18px}

.account-connections-card .card-title h2{display:flex;align-items:center;gap:8px}
.account-connections-card .card-title h2>i{color:#5865f2}
.account-discord-icon{color:#5865f2;background:color-mix(in srgb,#5865f2 10%,var(--surface-2));border-color:color-mix(in srgb,#5865f2 24%,var(--border))}
.account-connection-state{margin-top:8px}
.account-connection-loading{min-height:96px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px dashed var(--border);border-radius:14px;background:var(--surface-2);color:var(--muted);font-size:12px}
.account-connection-loading i{color:var(--accent)}
.account-connection-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--surface-2)}
.account-connection-row.connected{border-color:color-mix(in srgb,var(--success) 28%,var(--border));background:color-mix(in srgb,var(--success) 5%,var(--surface-2))}
.account-connection-row.error{border-color:color-mix(in srgb,var(--danger) 26%,var(--border));background:color-mix(in srgb,var(--danger) 4%,var(--surface-2))}
.account-connection-avatar{width:54px;height:54px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--border);border-radius:15px;background:var(--surface);color:#5865f2;font-size:21px}
.account-connection-avatar img{width:100%;height:100%;object-fit:cover}
.account-connection-copy{min-width:0}
.account-connection-copy strong,.account-connection-copy small{display:block;overflow:hidden;text-overflow:ellipsis}
.account-connection-copy strong{margin-top:5px;color:var(--text);font-size:14px}
.account-connection-copy small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
.account-connection-status{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.055em}
.account-connection-status.connected{color:var(--success)}
.account-connection-status.connecting{color:#5865f2}
.account-connection-status.warning{color:var(--warning)}
.account-connection-status.error{color:var(--danger)}
.account-connection-row.connecting{border-color:color-mix(in srgb,#5865f2 34%,var(--border));background:color-mix(in srgb,#5865f2 6%,var(--surface-2))}
.account-connection-row.connecting .account-connection-avatar{border-color:color-mix(in srgb,#5865f2 30%,var(--border));background:color-mix(in srgb,#5865f2 8%,var(--surface))}
.account-connection-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.account-connection-actions .btn{min-height:38px}
@media(max-width:760px){
  .account-connection-row{grid-template-columns:48px minmax(0,1fr);align-items:start}
  .account-connection-avatar{width:48px;height:48px;border-radius:13px}
  .account-connection-actions{grid-column:1/-1;justify-content:flex-start;padding-top:2px}
}
@media(max-width:1024px){
  .account-sidebar-view,.community-sidebar-view{height:100%;min-height:0}
  body.account-workspace .account-topbar-context{display:flex!important}
}


/* v0.9.1 Nord custom scrollbars — global, consistent across the whole platform */
:root{
  --nord-scrollbar-size:9px;
  --nord-scrollbar-track:transparent;
  --nord-scrollbar-thumb:color-mix(in srgb,var(--border-strong) 82%,transparent);
  --nord-scrollbar-thumb-hover:color-mix(in srgb,var(--muted) 78%,transparent);
  --nord-scrollbar-thumb-active:color-mix(in srgb,var(--accent) 72%,var(--border-strong));
}
html[data-theme="dark"]{
  --nord-scrollbar-thumb:color-mix(in srgb,var(--border-strong) 88%,transparent);
  --nord-scrollbar-thumb-hover:color-mix(in srgb,var(--muted) 88%,transparent);
  --nord-scrollbar-thumb-active:color-mix(in srgb,var(--accent) 78%,var(--border-strong));
}

/* Firefox */
html,body,*{
  scrollbar-width:thin;
  scrollbar-color:var(--nord-scrollbar-thumb) var(--nord-scrollbar-track);
}

/* Chromium / Edge / Safari */
*::-webkit-scrollbar{
  width:var(--nord-scrollbar-size);
  height:var(--nord-scrollbar-size);
}
*::-webkit-scrollbar-track{
  background:var(--nord-scrollbar-track);
}
*::-webkit-scrollbar-thumb{
  background:var(--nord-scrollbar-thumb);
  border:2px solid transparent;
  border-radius:999px;
  background-clip:padding-box;
}
*::-webkit-scrollbar-thumb:hover{
  background:var(--nord-scrollbar-thumb-hover);
  border:2px solid transparent;
  background-clip:padding-box;
}
*::-webkit-scrollbar-thumb:active{
  background:var(--nord-scrollbar-thumb-active);
  border:2px solid transparent;
  background-clip:padding-box;
}
*::-webkit-scrollbar-corner{
  background:transparent;
}

/* Keep every previously hidden platform scrollbar visible and custom. */
.rail-bots::-webkit-scrollbar,
.nord-nav::-webkit-scrollbar,
.modal::-webkit-scrollbar,
.table-wrap::-webkit-scrollbar,
.permission-builder::-webkit-scrollbar,
textarea::-webkit-scrollbar,
.account-settings-page::-webkit-scrollbar,
.account-sidebar-view::-webkit-scrollbar,
.community-sidebar-view::-webkit-scrollbar{
  display:block!important;
  width:var(--nord-scrollbar-size)!important;
  height:var(--nord-scrollbar-size)!important;
}
.rail-bots,
.nord-nav,
.modal,
.table-wrap,
.permission-builder,
textarea,
.account-settings-page,
.account-sidebar-view,
.community-sidebar-view{
  scrollbar-width:thin!important;
  scrollbar-color:var(--nord-scrollbar-thumb) transparent!important;
}

/* Horizontal scroll areas use the same low-profile Nord treatment. */
.table-wrap,
.page-switch,
.permission-builder,
pre,
code,
.nord-scroll-x{
  scrollbar-gutter:stable;
}

/* Avoid layout jumps on the main document while still keeping the custom bar subtle. */
html{
  scrollbar-gutter:stable;
}


/* v0.9.1 Nord custom selects — every native single select gets the same dropdown UI */
.nord-select-ui{position:relative;min-width:0;width:100%}
select.nord-native-select{
  position:absolute!important;
  inset:auto!important;
  width:1px!important;
  min-width:0!important;
  max-width:1px!important;
  height:1px!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
  overflow:hidden!important;
}
.nord-select-trigger{
  width:100%;
  min-width:0;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 12px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--surface-2);
  color:var(--text);
  font:inherit;
  font-size:13px;
  font-weight:700;
  text-align:left;
  outline:0;
  transition:border-color .15s,background .15s,box-shadow .15s;
}
.nord-select-trigger:hover{border-color:var(--border-strong);background:var(--hover)}
.nord-select-trigger:focus-visible,.nord-select-trigger.open{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.nord-select-trigger:disabled{cursor:not-allowed;opacity:.55}
.nord-select-value{display:block;min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nord-select-trigger.is-placeholder,.nord-select-ui .nord-select-trigger.is-placeholder{color:var(--muted)}
.nord-select-chevron{flex:0 0 auto;color:var(--muted);font-size:11px;transition:transform .15s}
.nord-select-trigger.open .nord-select-chevron{transform:rotate(180deg)}
.nord-select-menu{
  position:fixed;
  z-index:2147482500;
  display:block;
  overflow-y:auto;
  overflow-x:hidden;
  padding:6px;
  border:1px solid var(--border-strong);
  border-radius:12px;
  background:var(--surface);
  box-shadow:0 18px 50px rgba(0,0,0,.32);
  overscroll-behavior:contain;
}
.nord-select-menu[hidden]{display:none!important}
.nord-select-option{
  width:100%;
  min-height:38px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 18px;
  align-items:center;
  gap:10px;
  border:0;
  border-radius:8px;
  padding:8px 10px;
  background:transparent;
  color:var(--text-2);
  font:inherit;
  font-size:13px;
  font-weight:700;
  text-align:left;
  outline:0;
}
.nord-select-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nord-select-option i{justify-self:center;color:var(--accent);font-size:11px}
.nord-select-option:hover,.nord-select-option:focus-visible{background:var(--hover);color:var(--text)}
.nord-select-option.selected{background:var(--accent-soft);color:var(--accent)}
.nord-select-option:disabled{opacity:.42;cursor:not-allowed}
.nord-select-group{padding:8px 10px 5px;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.nord-select-empty{padding:14px 12px;color:var(--muted);font-size:12px;text-align:center}

/* Compact variants preserve the old layout dimensions. */
.nord-select-ui.is-inline{width:auto;min-width:92px}
.nord-select-ui.is-inline .nord-select-trigger{height:30px;border-radius:8px;padding:0 9px;font-size:12px;background:var(--surface)}
.context-select .nord-select-ui{min-width:190px}
.context-select.small .nord-select-ui{min-width:150px}
.context-select .nord-select-trigger{height:42px;border-radius:12px;font-weight:650}
.language-select .nord-select-ui{width:auto;min-width:48px;flex:1}
.language-select .nord-select-trigger{height:38px;border:0;background:transparent;box-shadow:none!important;padding:0 22px 0 7px;font-size:13px;font-weight:900;letter-spacing:.05em}
.language-select .nord-select-chevron{position:absolute;right:7px}
.language-select>i.lang-chevron{display:none!important}
.context-select:has(.nord-select-ui)>i.fa-chevron-down{display:none!important}
.auth-language:has(.nord-select-ui)>i.fa-chevron-down{display:none!important}
.auth-language .nord-select-trigger{border:0;background:transparent;box-shadow:none!important}

/* The sidebar still scrolls, but the extra permanent vertical bar stays out of sight. */
.nord-nav{scrollbar-gutter:auto!important;scrollbar-color:transparent transparent!important}
.nord-nav::-webkit-scrollbar-track{background:transparent!important}
.nord-nav::-webkit-scrollbar-thumb{background:transparent!important;border-color:transparent!important}
.nord-sidebar:hover .nord-nav,.nord-nav:focus-within{scrollbar-color:var(--nord-scrollbar-thumb) transparent!important}
.nord-sidebar:hover .nord-nav::-webkit-scrollbar-thumb,.nord-nav:focus-within::-webkit-scrollbar-thumb{
  background:var(--nord-scrollbar-thumb)!important;
  border:2px solid transparent!important;
  background-clip:padding-box!important;
}
.nord-sidebar:hover .nord-nav::-webkit-scrollbar-thumb:hover{background:var(--nord-scrollbar-thumb-hover)!important;background-clip:padding-box!important}

@media(max-width:880px){
  .context-select .nord-select-ui{min-width:135px}
  .context-select.small .nord-select-ui{min-width:105px}
}
@media(max-width:600px){
  .context-select,.context-select.small,.context-select .nord-select-ui,.context-select.small .nord-select-ui{width:100%;min-width:0}
}


/* v0.9.1 topbar language select: compact, fixed and never clipped */
.nord-topbar{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.nord-topbar .topbar-spacer{
  flex:1 1 12px;
  min-width:0;
}
.nord-topbar .user-chip{
  min-width:0;
  max-width:170px;
  flex:0 1 170px;
}
.nord-topbar .user-chip>div{
  min-width:0;
}
.nord-topbar .user-chip strong,
.nord-topbar .user-chip small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.nord-topbar .connection-pill{
  flex:0 0 auto;
  white-space:nowrap;
}
.nord-topbar .language-select{
  width:78px;
  min-width:78px;
  max-width:78px;
  flex:0 0 78px;
  padding:0 7px;
  gap:5px;
  box-sizing:border-box;
  overflow:visible;
}
.nord-topbar .language-select>i:first-child{
  flex:0 0 auto;
  width:14px;
  text-align:center;
  font-size:13px;
}
.nord-topbar .language-select .nord-select-ui{
  flex:1 1 auto;
  width:auto;
  min-width:0;
  max-width:none;
}
.nord-topbar .language-select .nord-select-trigger{
  width:100%;
  min-width:0;
  height:38px;
  padding:0 15px 0 2px;
  border:0;
  background:transparent;
  box-shadow:none!important;
  font-size:12px;
  letter-spacing:.04em;
}
.nord-topbar .language-select .nord-select-value{
  overflow:visible;
  text-overflow:clip;
}
.nord-topbar .language-select .nord-select-chevron{
  right:1px;
  font-size:10px;
}
.nord-topbar .language-select>i.lang-chevron{
  display:none!important;
}

/* Compact desktop topbar before the mobile layout takes over. */
@media (min-width:1025px) and (max-width:1800px){
  .nord-topbar{gap:9px;padding-left:18px;padding-right:18px}
  .nord-topbar .user-chip{max-width:150px;flex-basis:150px}
  .nord-topbar .connection-pill{padding-inline:9px}
  .nord-topbar .language-select{width:74px;min-width:74px;max-width:74px;flex-basis:74px}
}


/* v0.9.1 language dropdown visibility fix */
.nord-select-menu.is-language-menu{
  min-width:104px!important;
  width:104px;
  overflow-x:visible!important;
}
.nord-select-menu.is-language-menu .nord-select-option{
  box-sizing:border-box;
  grid-template-columns:minmax(48px,1fr) 16px;
  gap:8px;
  padding:8px 9px;
}
.nord-select-menu.is-language-menu .nord-select-option span{
  display:block!important;
  min-width:48px!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  color:inherit!important;
}
.nord-select-menu.is-language-menu .nord-select-option i{
  width:16px;
  justify-self:end;
}


/* v0.9.1 Giveaway Studio */
.giveaway-create-modal{width:min(1040px,calc(100vw - 40px));max-height:min(900px,calc(100dvh - 40px));overflow:auto}
.giveaway-builder{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);gap:18px;align-items:start}
.giveaway-builder-form{min-width:0}
.giveaway-builder-section{margin-top:4px;padding-top:14px;border-top:1px solid var(--border)}
.giveaway-builder-section>span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}
.giveaway-color-input{min-height:42px;padding:5px!important}
.giveaway-preview-panel{position:sticky;top:0;min-width:0;padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2)}
.giveaway-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;color:var(--text-2)}
.giveaway-preview-head span{display:flex;align-items:center;gap:7px;font-weight:850}
.giveaway-preview-head i{color:var(--accent)}
.giveaway-preview-head small{color:var(--muted)}
.giveaway-discord-message{padding:14px;border:1px solid var(--border);border-radius:14px;background:#11151d}
.giveaway-discord-author{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.giveaway-discord-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:900}
.giveaway-discord-author strong,.giveaway-discord-author small{display:block}
.giveaway-discord-author strong{font-size:13px}.giveaway-discord-author small{margin-top:1px;color:#8f96a3;font-size:10px}
.giveaway-discord-embed{--giveaway-preview-color:#5865F2;position:relative;padding:13px 14px 12px 16px;border-radius:4px;background:#1e1f22;overflow:hidden}
.giveaway-discord-embed:before{content:'';position:absolute;inset:0 auto 0 0;width:4px;background:var(--giveaway-preview-color)}
.giveaway-preview-title{font-size:15px;font-weight:900;color:#f2f3f5;line-height:1.3}
.giveaway-preview-description{margin-top:8px;color:#dbdee1;font-size:12px;line-height:1.45;white-space:pre-wrap}
.giveaway-preview-prize,.giveaway-preview-how{display:grid;gap:3px;margin-top:12px}
.giveaway-preview-prize strong,.giveaway-preview-how strong,.giveaway-preview-fields strong{font-size:11px;color:#f2f3f5}
.giveaway-preview-prize span,.giveaway-preview-how span,.giveaway-preview-fields span{font-size:11px;color:#dbdee1}
.giveaway-preview-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.giveaway-preview-fields>div{display:grid;gap:3px}
#giveawayPreviewImage{display:block;width:100%;max-height:220px;object-fit:cover;margin-top:12px;border-radius:4px}
#giveawayPreviewImage[hidden]{display:none!important}
.giveaway-preview-footer{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06);color:#949ba4;font-size:10px}
.giveaway-preview-button{margin-top:8px;border:0;border-radius:4px;padding:8px 14px;font-size:12px;font-weight:800;color:#fff;pointer-events:none}
.giveaway-preview-button.success{background:#248046}.giveaway-preview-button.primary{background:#5865F2}.giveaway-preview-button.secondary{background:#4e5058}.giveaway-preview-button.danger{background:#da373c}
.giveaway-builder-actions{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}

.giveaway-details-modal{width:min(860px,calc(100vw - 40px));max-height:min(900px,calc(100dvh - 40px));overflow:auto}
.giveaway-participants{margin-top:12px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.giveaway-participants-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.giveaway-participants-head>div{display:flex;align-items:center;gap:8px}.giveaway-participants-head i{color:var(--accent)}
.giveaway-participants-head strong{font-size:13px}.giveaway-participants-head span{display:inline-flex;min-width:27px;height:27px;align-items:center;justify-content:center;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-weight:900}
.giveaway-participant-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:300px;overflow:auto;padding-right:3px}
.giveaway-participant{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}
.giveaway-participant-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:900}
.giveaway-participant-avatar img{width:100%;height:100%;object-fit:cover}
.giveaway-participant-copy{min-width:0}.giveaway-participant-copy strong,.giveaway-participant-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.giveaway-participant-copy strong{font-size:12px}.giveaway-participant-copy small{margin-top:2px;color:var(--muted);font-size:10px}
.giveaway-participant-time{color:var(--muted);font-size:10px;white-space:nowrap}
.giveaway-participants-empty{padding:22px;text-align:center;border:1px dashed var(--border);border-radius:11px;color:var(--muted)}

@media(max-width:900px){
  .giveaway-builder{grid-template-columns:1fr}
  .giveaway-preview-panel{position:static}
}
@media(max-width:700px){
  .giveaway-participant-list{grid-template-columns:1fr}
}


/* v0.9.1 Giveaway details tabs */
.giveaway-detail-tabs{
  display:flex;
  align-items:center;
  gap:6px;
  margin:0 0 14px;
  padding:5px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface-2);
}
.giveaway-detail-tab{
  min-width:0;
  flex:0 1 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  padding:8px 13px;
  border:1px solid transparent;
  border-radius:10px;
  background:transparent;
  color:var(--muted);
  font-weight:800;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,color .16s ease;
}
.giveaway-detail-tab:hover{color:var(--text);background:var(--surface)}
.giveaway-detail-tab.active{
  border-color:rgba(116,124,255,.32);
  background:var(--accent-soft);
  color:var(--accent);
}
.giveaway-detail-tab i{font-size:12px}
.giveaway-detail-tab em{
  min-width:22px;
  height:22px;
  padding:0 7px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:var(--surface-3);
  color:var(--text-2);
  font-style:normal;
  font-size:11px;
  font-weight:900;
}
.giveaway-detail-tab.active em{background:rgba(116,124,255,.16);color:var(--accent)}
.giveaway-detail-panel[hidden]{display:none!important}
.giveaway-detail-panel.active{animation:giveawayTabIn .16s ease}
.giveaway-participants-tab{margin-top:0}
.giveaway-participants-tab .giveaway-participants-head{margin-bottom:12px}
.giveaway-participants-head>small{margin-left:auto;color:var(--muted)}
@keyframes giveawayTabIn{from{opacity:.55;transform:translateY(2px)}to{opacity:1;transform:none}}
@media(max-width:700px){
  .giveaway-detail-tabs{display:grid;grid-template-columns:1fr 1fr}
  .giveaway-detail-tab{width:100%;padding-inline:10px}
  .giveaway-participants-head{align-items:flex-start;flex-direction:column}
  .giveaway-participants-head>small{margin-left:0}
}


/* v0.9.1 ended giveaway deletion */
.giveaway-detail-delete-zone{
  margin-top:14px;
  padding:13px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid rgba(255,92,119,.22);
  border-radius:13px;
  background:rgba(255,92,119,.045);
}
.giveaway-detail-delete-zone>div{min-width:0}
.giveaway-detail-delete-zone strong,.giveaway-detail-delete-zone small{display:block}
.giveaway-detail-delete-zone strong{font-size:12px;color:var(--text)}
.giveaway-detail-delete-zone small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.45}
.giveaway-delete-button{flex:0 0 auto}
@media(max-width:650px){
  .giveaway-detail-delete-zone{align-items:stretch;flex-direction:column}
  .giveaway-delete-button{width:100%;justify-content:center}
}


/* v0.9.1 giveaways: fill available page workspace */
#page-giveaways.active{
  display:flex;
  flex-direction:column;
  min-height:calc(100dvh - 130px);
}
#page-giveaways.active .giveaway-history-card{
  flex:1 1 auto;
  min-height:0;
  display:flex;
  flex-direction:column;
}
#page-giveaways.active #giveawaysTable{
  flex:1 1 auto;
  min-height:0;
  display:flex;
  flex-direction:column;
}
#page-giveaways.active .giveaway-grid{width:100%}
#page-giveaways.active .giveaway-empty{
  flex:1 1 auto;
  min-height:320px;
  width:100%;
}
@media(max-width:1024px){
  #page-giveaways.active{min-height:calc(100dvh - 112px)}
  #page-giveaways.active .giveaway-empty{min-height:280px}
}


/* v0.9.1 Giveaway Creator tabs */
.giveaway-create-tabs-modal{
  width:min(1100px,calc(100vw - 40px));
  height:min(760px,calc(100dvh - 40px));
  max-height:760px;
  padding:0!important;
  overflow:hidden!important;
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr) auto;
}
.giveaway-create-head{padding:18px 20px 13px;margin:0!important;border-bottom:0}
.giveaway-create-head .modal-help{margin-top:4px}
.giveaway-create-tabs{display:flex;align-items:center;gap:6px;padding:0 20px 12px;border-bottom:1px solid var(--border)}
.giveaway-create-tab{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:7px 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font-size:12px;font-weight:850;cursor:pointer}
.giveaway-create-tab:hover{background:var(--surface-2);color:var(--text)}
.giveaway-create-tab.active{border-color:rgba(116,124,255,.28);background:var(--accent-soft);color:var(--accent)}
.giveaway-preview-mobile-tab{display:none}
.giveaway-tabs-builder{min-height:0;height:100%;overflow:hidden;grid-template-columns:minmax(0,1.05fr) minmax(330px,.8fr);gap:0}
.giveaway-tabs-builder .giveaway-builder-form{min-height:0;overflow-y:auto;padding:18px 20px 24px;border-right:1px solid var(--border)}
.giveaway-create-panel[hidden]{display:none!important}
.giveaway-create-panel.active{animation:giveawayCreatorIn .15s ease}
@keyframes giveawayCreatorIn{from{opacity:.55;transform:translateY(2px)}to{opacity:1;transform:none}}
.giveaway-panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.giveaway-panel-title>div{min-width:0}.giveaway-panel-title strong,.giveaway-panel-title small{display:block}
.giveaway-panel-title strong{font-size:15px;color:var(--text)}.giveaway-panel-title small{margin-top:4px;font-size:11px;color:var(--muted)}
.giveaway-panel-title>span{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--border);border-radius:11px;background:var(--accent-soft);color:var(--accent)}
.giveaway-create-grid{gap:13px}
.giveaway-quick-note{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:10px 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--muted);font-size:10px;line-height:1.45}
.giveaway-quick-note i{margin-top:2px;color:var(--accent)}
.giveaway-settings-card{padding:14px;margin-top:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}
.giveaway-settings-card:first-of-type{margin-top:0}
.giveaway-settings-card-title{display:flex;align-items:center;gap:8px;margin-bottom:13px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2)}
.giveaway-settings-card-title i{color:var(--accent)}
.giveaway-char-count{float:right;color:var(--muted);font-size:9px;font-weight:700;text-transform:none;letter-spacing:0}
.giveaway-description-input{min-height:112px;resize:vertical}.giveaway-end-message{min-height:86px}
.giveaway-color-field{height:42px;display:flex;align-items:center;gap:10px;padding:5px 10px 5px 5px;border:1px solid var(--border);border-radius:11px;background:var(--surface)}
.giveaway-color-field input[type="color"]{width:38px;height:30px;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer}
.giveaway-color-field span{font-size:11px;font-weight:800;color:var(--text-2)}
.giveaway-switch-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:10px;padding:11px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface);cursor:pointer}
.giveaway-switch-row>span:first-child{min-width:0}.giveaway-switch-row strong,.giveaway-switch-row small{display:block}
.giveaway-switch-row strong{font-size:11px;color:var(--text)}.giveaway-switch-row small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.4}
.giveaway-switch-row input{position:absolute;opacity:0;pointer-events:none}
.giveaway-switch{position:relative;width:38px;height:22px;flex:0 0 auto;border-radius:999px;background:var(--border-strong);transition:.16s}
.giveaway-switch:before{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.16s}
.giveaway-switch-row input:checked+.giveaway-switch{background:var(--accent)}
.giveaway-switch-row input:checked+.giveaway-switch:before{transform:translateX(16px)}
.giveaway-fixed-rule{opacity:.7;cursor:default}
.giveaway-tabs-builder .giveaway-preview-panel{position:static!important;min-height:0;height:100%;overflow-y:auto;border:0!important;border-radius:0!important;padding:18px!important;background:var(--surface-2)!important}
.giveaway-sticky-actions{margin:0!important;padding:12px 20px!important;border-top:1px solid var(--border);background:var(--surface);display:flex;justify-content:flex-end;gap:8px;position:relative;z-index:3}

@media(max-width:760px){
  .giveaway-create-tabs-modal{width:calc(100vw - 20px);height:min(760px,calc(100dvh - 20px));max-height:none}
  .giveaway-create-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-inline:12px}
  .giveaway-create-tab{padding-inline:6px;font-size:10px}.giveaway-create-tab i{display:none}
  .giveaway-preview-mobile-tab{display:inline-flex}
  .giveaway-tabs-builder{display:block}
  .giveaway-tabs-builder .giveaway-builder-form{height:100%;padding:14px 14px 20px;border-right:0}
  .giveaway-tabs-builder .giveaway-preview-panel{display:none;height:100%;padding:14px!important}
  .giveaway-preview-tab-active .giveaway-builder-form{display:none}
  .giveaway-preview-tab-active .giveaway-preview-panel{display:block}
  .giveaway-sticky-actions{padding-inline:14px!important}
}
@media(max-width:480px){.giveaway-create-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* v0.9.1 Giveaway creator internal auto-scroll */
.giveaway-tabs-builder .giveaway-builder-form{
  height:100%!important;
  max-height:100%!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  scroll-behavior:smooth;
  padding-bottom:28px!important;
}
.giveaway-tabs-builder .giveaway-create-panel{
  min-height:min-content;
  padding-bottom:4px;
}
.giveaway-tabs-builder .giveaway-builder-form::-webkit-scrollbar{
  width:8px!important;
}
.giveaway-tabs-builder .giveaway-builder-form::-webkit-scrollbar-track{
  background:transparent!important;
}
.giveaway-tabs-builder .giveaway-builder-form::-webkit-scrollbar-thumb{
  background:var(--nord-scrollbar-thumb)!important;
  border:2px solid transparent!important;
  border-radius:999px!important;
  background-clip:padding-box!important;
}
.giveaway-tabs-builder .giveaway-builder-form::-webkit-scrollbar-thumb:hover{
  background:var(--nord-scrollbar-thumb-hover)!important;
  background-clip:padding-box!important;
}
.giveaway-tabs-builder .giveaway-builder-form{
  scrollbar-width:thin!important;
  scrollbar-color:var(--nord-scrollbar-thumb) transparent!important;
}


/* v0.9.1 Announcement Center */
.announcement-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px;
}
.announcement-summary-card{
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 15px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface);
}
.announcement-summary-card>span{
  width:40px;
  height:40px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:var(--accent-soft);
  color:var(--accent);
}
.announcement-summary-card small,.announcement-summary-card strong{display:block}
.announcement-summary-card small{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.announcement-summary-card strong{margin-top:2px;font-size:18px;color:var(--text)}
.announcement-history-card{min-height:220px}
.announcement-list{display:grid;gap:8px}
.announcement-row{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  padding:13px 14px 13px 17px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface-2);
  overflow:hidden;
}
.announcement-row-accent{position:absolute;inset:0 auto 0 0;width:3px;background:var(--announcement-row-color,#5865F2)}
.announcement-row-main{min-width:0}
.announcement-row-title{display:flex;align-items:center;gap:9px;min-width:0}
.announcement-row-title>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.announcement-row p{
  margin:6px 0 0;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  color:var(--text-2);
  font-size:11px;
  line-height:1.45;
}
.announcement-row-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:9px;color:var(--muted);font-size:10px}
.announcement-row-meta span{display:inline-flex;align-items:center;gap:5px}
.announcement-row-meta i{color:var(--accent)}
.announcement-row-actions{display:flex;align-items:center}
.announcement-status{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:22px;
  padding:3px 8px;
  border-radius:999px;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.announcement-status.sent{background:rgba(57,190,126,.12);color:#4ad495}
.announcement-status.scheduled{background:var(--accent-soft);color:var(--accent)}
.announcement-status.sending{background:rgba(245,183,77,.12);color:#eeb85d}
.announcement-status.failed{background:rgba(255,92,119,.12);color:#ff6e88}
.announcement-status.cancelled{background:var(--surface-3);color:var(--muted)}
.announcement-status.sending i{animation:announcementSpin 1s linear infinite}
@keyframes announcementSpin{to{transform:rotate(360deg)}}

.announcement-create-modal{
  width:min(1040px,calc(100vw - 40px));
  height:min(720px,calc(100dvh - 40px));
  max-height:720px;
  padding:0!important;
  overflow:hidden!important;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
}
.announcement-modal-head{padding:18px 20px 14px;margin:0!important;border-bottom:1px solid var(--border)}
.announcement-modal-kicker{display:block;margin-bottom:5px;color:var(--accent);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.announcement-builder{min-height:0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.85fr);overflow:hidden}
.announcement-form-scroll{
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:17px 20px 24px;
  border-right:1px solid var(--border);
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.announcement-section{
  padding:14px;
  margin-bottom:12px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface-2);
}
.announcement-section:last-child{margin-bottom:0}
.announcement-section-title{display:flex;align-items:flex-start;gap:9px;margin-bottom:13px}
.announcement-section-title>i{margin-top:2px;color:var(--accent)}
.announcement-section-title strong,.announcement-section-title small{display:block}
.announcement-section-title strong{font-size:12px;color:var(--text)}
.announcement-section-title small{margin-top:2px;color:var(--muted);font-size:9px}
.announcement-char-count{float:right;color:var(--muted);font-size:9px;font-weight:700}
.announcement-message-input{min-height:142px;resize:vertical}
.announcement-color-field{
  height:42px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:5px 10px 5px 5px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--surface);
}
.announcement-color-field input[type="color"]{width:38px;height:30px;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer}
.announcement-color-field span{font-size:11px;font-weight:800;color:var(--text-2)}
.announcement-schedule-group[hidden]{display:none!important}

.announcement-preview-panel{min-height:0;overflow-y:auto;padding:18px;background:var(--surface-2)}
.announcement-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;color:var(--text-2)}
.announcement-preview-head>span{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:850}
.announcement-preview-head i{color:var(--accent)}
.announcement-preview-head small{color:var(--muted);font-size:9px}
.announcement-discord-message{padding:14px;border:1px solid var(--border);border-radius:14px;background:#11151d}
.announcement-discord-author{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.announcement-discord-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:900}
.announcement-discord-author strong,.announcement-discord-author small{display:block}
.announcement-discord-author strong{font-size:13px}.announcement-discord-author small{margin-top:1px;color:#8f96a3;font-size:10px}
.announcement-discord-embed{
  --announcement-preview-color:#5865F2;
  position:relative;
  padding:13px 14px 12px 16px;
  border-radius:4px;
  background:#1e1f22;
  overflow:hidden;
}
.announcement-discord-embed:before{content:'';position:absolute;inset:0 auto 0 0;width:4px;background:var(--announcement-preview-color)}
.announcement-preview-title{font-size:15px;font-weight:900;color:#f2f3f5;line-height:1.3}
.announcement-preview-message{margin-top:8px;color:#dbdee1;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
#announcementPreviewImage{display:block;width:100%;max-height:250px;object-fit:cover;margin-top:12px;border-radius:4px}
#announcementPreviewImage[hidden]{display:none!important}
.announcement-preview-footer{margin-top:12px;padding-top:9px;border-top:1px solid rgba(255,255,255,.06);color:#949ba4;font-size:10px}
.announcement-schedule-preview{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin-top:12px;
  padding:11px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface);
}
.announcement-schedule-preview>i{margin-top:2px;color:var(--accent)}
.announcement-schedule-preview strong,.announcement-schedule-preview small{display:block}
.announcement-schedule-preview strong{font-size:11px}.announcement-schedule-preview small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.4}
.announcement-modal-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  padding:12px 20px;
  border-top:1px solid var(--border);
  background:var(--surface);
}
.announcement-form-scroll::-webkit-scrollbar,.announcement-preview-panel::-webkit-scrollbar{width:8px!important}
.announcement-form-scroll::-webkit-scrollbar-thumb,.announcement-preview-panel::-webkit-scrollbar-thumb{
  background:var(--nord-scrollbar-thumb)!important;
  border:2px solid transparent!important;
  border-radius:999px!important;
  background-clip:padding-box!important;
}
.announcement-form-scroll,.announcement-preview-panel{scrollbar-width:thin!important;scrollbar-color:var(--nord-scrollbar-thumb) transparent!important}

@media(max-width:900px){
  .announcement-summary-grid{grid-template-columns:1fr}
  .announcement-create-modal{width:calc(100vw - 20px);height:min(820px,calc(100dvh - 20px));max-height:none}
  .announcement-builder{grid-template-columns:1fr}
  .announcement-form-scroll{border-right:0}
  .announcement-preview-panel{border-top:1px solid var(--border);max-height:330px}
}
@media(max-width:620px){
  .announcement-row{grid-template-columns:1fr}
  .announcement-row-actions{justify-content:flex-end}
  .announcement-modal-actions{padding-inline:14px}
}


/* v0.9.1 Announcement creator tabs */
.announcement-create-tabs-modal{
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
}
.announcement-create-tabs{
  display:flex;
  align-items:center;
  gap:6px;
  padding:0 20px 12px;
  border-bottom:1px solid var(--border);
  background:var(--surface);
}
.announcement-create-tab{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:7px 12px;
  border:1px solid transparent;
  border-radius:10px;
  background:transparent;
  color:var(--muted);
  font-size:12px;
  font-weight:850;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,color .16s ease;
}
.announcement-create-tab:hover{
  background:var(--surface-2);
  color:var(--text);
}
.announcement-create-tab.active{
  border-color:rgba(116,124,255,.28);
  background:var(--accent-soft);
  color:var(--accent);
}
.announcement-preview-mobile-tab{display:none}
.announcement-tabs-builder{
  min-height:0;
  height:100%;
  overflow:hidden;
}
.announcement-tabs-builder .announcement-form-scroll{
  height:100%;
  max-height:100%;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:18px 20px 24px;
  scrollbar-gutter:stable;
  scroll-behavior:smooth;
}
.announcement-create-panel[hidden]{display:none!important}
.announcement-create-panel.active{animation:announcementCreatorIn .15s ease}
@keyframes announcementCreatorIn{
  from{opacity:.55;transform:translateY(2px)}
  to{opacity:1;transform:none}
}
.announcement-panel-title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.announcement-panel-title>div{min-width:0}
.announcement-panel-title strong,
.announcement-panel-title small{display:block}
.announcement-panel-title strong{
  font-size:15px;
  color:var(--text);
}
.announcement-panel-title small{
  margin-top:4px;
  color:var(--muted);
  font-size:11px;
  line-height:1.4;
}
.announcement-panel-title>span{
  width:38px;
  height:38px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--accent-soft);
  color:var(--accent);
}
.announcement-create-grid{gap:13px}
.announcement-tab-note{
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin-top:14px;
  padding:10px 11px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--surface-2);
  color:var(--muted);
  font-size:10px;
  line-height:1.45;
}
.announcement-tab-note i{
  margin-top:2px;
  color:var(--accent);
}
.announcement-custom-card{
  padding:14px;
  margin-top:12px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface-2);
}
.announcement-custom-card:first-of-type{margin-top:0}
.announcement-custom-card-title{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:13px;
  color:var(--text-2);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.announcement-custom-card-title i{color:var(--accent)}
.announcement-tabs-builder .announcement-preview-panel{
  position:static!important;
  min-height:0;
  height:100%;
  overflow-y:auto;
}
.announcement-create-tabs-modal .announcement-modal-actions{
  position:relative;
  z-index:3;
}
.announcement-tabs-builder .announcement-form-scroll::-webkit-scrollbar,
.announcement-tabs-builder .announcement-preview-panel::-webkit-scrollbar{
  width:8px!important;
}
.announcement-tabs-builder .announcement-form-scroll::-webkit-scrollbar-track,
.announcement-tabs-builder .announcement-preview-panel::-webkit-scrollbar-track{
  background:transparent!important;
}
.announcement-tabs-builder .announcement-form-scroll::-webkit-scrollbar-thumb,
.announcement-tabs-builder .announcement-preview-panel::-webkit-scrollbar-thumb{
  background:var(--nord-scrollbar-thumb)!important;
  border:2px solid transparent!important;
  border-radius:999px!important;
  background-clip:padding-box!important;
}
.announcement-tabs-builder .announcement-form-scroll::-webkit-scrollbar-thumb:hover,
.announcement-tabs-builder .announcement-preview-panel::-webkit-scrollbar-thumb:hover{
  background:var(--nord-scrollbar-thumb-hover)!important;
  background-clip:padding-box!important;
}
.announcement-tabs-builder .announcement-form-scroll,
.announcement-tabs-builder .announcement-preview-panel{
  scrollbar-width:thin!important;
  scrollbar-color:var(--nord-scrollbar-thumb) transparent!important;
}

@media(max-width:900px){
  .announcement-create-tabs{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    padding-inline:12px;
  }
  .announcement-create-tab{
    padding-inline:6px;
    font-size:10px;
  }
  .announcement-create-tab i{display:none}
  .announcement-preview-mobile-tab{display:inline-flex}
  .announcement-tabs-builder{
    display:block;
  }
  .announcement-tabs-builder .announcement-form-scroll{
    height:100%;
    border-right:0;
    padding:14px 14px 20px;
  }
  .announcement-tabs-builder .announcement-preview-panel{
    display:none;
    height:100%;
    max-height:none;
    border-top:0;
    padding:14px;
  }
  .announcement-preview-tab-active .announcement-form-scroll{display:none}
  .announcement-preview-tab-active .announcement-preview-panel{display:block}
}
@media(max-width:520px){
  .announcement-create-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* v0.9.1 Announcement tab alignment */
.announcement-create-tabs{
  min-height:64px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.05fr) minmax(330px,.85fr)!important;
  align-items:stretch!important;
  gap:0!important;
  padding:0!important;
  background:var(--surface)!important;
  border-bottom:1px solid var(--border)!important;
}
.announcement-tab-group{
  min-width:0;
  min-height:64px;
  height:64px;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:center;
  align-content:center;
  gap:6px;
  padding:0 20px;
  border-right:1px solid var(--border);
}
.announcement-tab-group .announcement-create-tab{
  width:100%;
  min-width:0;
  min-height:42px;
  height:42px;
  padding:0 12px;
  align-items:center;
  justify-content:center;
  text-align:center;
  line-height:1;
  white-space:nowrap;
}
.announcement-tab-group .announcement-create-tab i{
  width:15px;
  flex:0 0 15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  line-height:1;
}
.announcement-tab-group .announcement-create-tab span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  line-height:1;
}
@media(max-width:900px){
  .announcement-create-tabs{
    display:block!important;
  }
  .announcement-tab-group{
    min-height:64px;
    height:64px;
    grid-template-columns:repeat(4,minmax(0,1fr));
    padding:0 12px;
    align-items:center;
    align-content:center;
    border-right:0;
  }
}
@media(max-width:520px){
  .announcement-tab-group{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* v0.9.1 professional whitelist workspace */
#page-whitelist{padding-bottom:42px}
.wl-shell{display:grid;gap:16px}
.wl-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.wl-page-head .page-kicker{margin-bottom:7px}
.wl-page-head h1{margin:0;font-size:28px;line-height:1.15}
.wl-page-head p{max-width:780px;margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.55}
.wl-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wl-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.wl-stat{position:relative;min-width:0;padding:16px;border:1px solid var(--border);border-radius:15px;background:var(--surface);overflow:hidden}
.wl-stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent)}
.wl-stat[data-tone="warning"]:before{background:#f59e0b}.wl-stat[data-tone="success"]:before{background:#22c55e}.wl-stat[data-tone="danger"]:before{background:#ef4444}
.wl-stat-top{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.wl-stat-top i{font-size:13px}.wl-stat strong{display:block;margin-top:8px;font-size:24px;line-height:1}.wl-stat small{display:block;margin-top:7px;color:var(--muted);font-size:10.5px}
.wl-tabs{display:flex;align-items:center;gap:7px;padding:7px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.wl-tab{height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:12px;font-weight:850;cursor:pointer;transition:.15s ease}
.wl-tab:hover{background:var(--surface-2);color:var(--text)}.wl-tab.active{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--accent-soft);color:var(--accent)}
.wl-tab i{width:14px;text-align:center}
.wl-panel[hidden]{display:none!important}.wl-panel{animation:wlFade .14s ease}
@keyframes wlFade{from{opacity:.55;transform:translateY(3px)}to{opacity:1;transform:none}}
.wl-grid-2{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:14px}
.wl-card{padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.wl-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:15px}
.wl-card-title{display:flex;align-items:flex-start;gap:11px;min-width:0}.wl-card-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:11px;background:var(--accent-soft);color:var(--accent)}
.wl-card-title strong{display:block;font-size:14px}.wl-card-title small{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45}
.wl-flow-list{display:grid;gap:8px}.wl-flow-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}
.wl-flow-row span{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11.5px}.wl-flow-row strong{font-size:11.5px;text-align:right}.wl-dot{width:7px;height:7px;border-radius:999px;background:#64748b}.wl-dot.on{background:#22c55e}.wl-dot.warn{background:#f59e0b}
.wl-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.wl-quick{min-height:72px;display:flex;align-items:center;gap:11px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer}.wl-quick:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}
.wl-quick i{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border-radius:10px;background:var(--accent-soft);color:var(--accent)}.wl-quick strong{display:block;font-size:11.5px}.wl-quick small{display:block;margin-top:3px;color:var(--muted);font-size:9.5px;line-height:1.35}
.wl-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wl-question-card{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:start;gap:11px;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}
.wl-question-index{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:900}.wl-question-copy{min-width:0}.wl-question-copy strong{display:block;font-size:12px;line-height:1.35}.wl-question-copy p{margin:5px 0 0;color:var(--muted);font-size:10.5px;line-height:1.45}
.wl-chips{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:8px}.wl-chip{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:0 7px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:9px;font-weight:750}
.wl-card-actions{display:flex;align-items:center;gap:5px}.wl-icon-btn{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--muted);cursor:pointer}.wl-icon-btn:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.wl-icon-btn.danger:hover{color:#ef4444}
.wl-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:13px}.wl-search{position:relative;flex:1 1 240px}.wl-search i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:10px}.wl-search input{width:100%;height:40px;padding:0 12px 0 34px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);font:inherit;font-size:11px;outline:none}.wl-search input:focus{border-color:var(--accent)}
.wl-filter{height:40px;padding:0 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);font:inherit;font-size:10.5px}
.wl-app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.wl-app-card{position:relative;min-width:0;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}
.wl-app-card:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}.wl-app-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.wl-app-user{display:flex;align-items:center;gap:9px;min-width:0}.wl-app-avatar{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:13px;font-weight:900}
.wl-app-user-copy{min-width:0}.wl-app-user-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.wl-app-user-copy small{display:block;margin-top:3px;color:var(--muted);font-size:9px}.wl-status{display:inline-flex;align-items:center;gap:5px;min-height:25px;padding:0 8px;border-radius:999px;border:1px solid var(--border);font-size:8.5px;font-weight:900;text-transform:uppercase;letter-spacing:.035em}
.wl-status.pending{border-color:rgba(245,158,11,.28);background:rgba(245,158,11,.08);color:#f59e0b}.wl-status.approved{border-color:rgba(34,197,94,.28);background:rgba(34,197,94,.08);color:#22c55e}.wl-status.rejected{border-color:rgba(239,68,68,.28);background:rgba(239,68,68,.08);color:#ef4444}
.wl-app-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:13px}.wl-app-meta div{padding:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.wl-app-meta span,.wl-app-meta strong{display:block}.wl-app-meta span{color:var(--muted);font-size:8px;text-transform:uppercase;font-weight:850}.wl-app-meta strong{margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.wl-app-actions{display:flex;align-items:center;gap:6px;margin-top:12px}.wl-app-actions .btn{flex:1;min-height:35px;font-size:10px}
.wl-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wl-form-group{display:grid;gap:7px}.wl-form-group.full{grid-column:1/-1}.wl-form-group label{font-size:10px;font-weight:850}.wl-form-group input,.wl-form-group select,.wl-form-group textarea{width:100%;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);font:inherit;font-size:11.5px;outline:none}.wl-form-group input,.wl-form-group select{height:42px;padding:0 11px}.wl-form-group textarea{min-height:96px;padding:10px;resize:vertical;line-height:1.5}.wl-form-group input:focus,.wl-form-group select:focus,.wl-form-group textarea:focus{border-color:var(--accent)}.wl-form-group small{color:var(--muted);font-size:9.5px;line-height:1.4}
.wl-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}.wl-toggle-copy strong{display:block;font-size:11px}.wl-toggle-copy small{display:block;margin-top:3px;color:var(--muted);font-size:9.5px;line-height:1.35}.wl-toggle-row input{width:18px;height:18px;accent-color:var(--accent)}
.wl-empty{grid-column:1/-1;padding:34px 18px;border:1px dashed var(--border);border-radius:13px;text-align:center;color:var(--muted)}.wl-empty i{font-size:20px;color:var(--accent)}.wl-empty strong{display:block;margin-top:9px;color:var(--text);font-size:12px}.wl-empty small{display:block;margin-top:5px;font-size:10px}
.wl-modal{width:min(720px,calc(100vw - 30px));max-height:90dvh;overflow:hidden}.wl-modal.wide{width:min(980px,calc(100vw - 30px))}.wl-modal-body{max-height:calc(90dvh - 135px);overflow-y:auto;padding:18px}.wl-modal .modal-head h3{font-size:17px}.wl-modal .form-actions{padding:13px 18px;border-top:1px solid var(--border);margin:0}.wl-answer-list{display:grid;gap:9px}.wl-answer{padding:12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}.wl-answer strong{display:block;font-size:10.5px}.wl-answer p{margin:6px 0 0;white-space:pre-wrap;color:var(--text-2);font-size:11px;line-height:1.5}
.wl-review-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}.wl-review-summary div{padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.wl-review-summary span,.wl-review-summary strong{display:block}.wl-review-summary span{font-size:8px;color:var(--muted);text-transform:uppercase;font-weight:850}.wl-review-summary strong{margin-top:4px;font-size:10.5px}
.wl-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:180px;overflow:auto}.wl-role-option{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);font-size:10.5px}.wl-role-option input{accent-color:var(--accent)}
@media(max-width:1180px){.wl-app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wl-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.wl-grid-2{grid-template-columns:1fr}.wl-question-grid{grid-template-columns:1fr}}
@media(max-width:640px){
  .wl-page-head{display:grid}.wl-head-actions{width:100%}.wl-head-actions .btn{flex:1}.wl-page-head h1{font-size:23px}
  .wl-stats{grid-template-columns:1fr 1fr;gap:7px}.wl-stat{padding:12px}.wl-stat strong{font-size:20px}
  .wl-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:5px}.wl-tab{min-width:0;height:38px;padding:0 3px;gap:3px;font-size:8.5px}.wl-tab i{display:none}.wl-tab span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .wl-card{padding:13px}.wl-card-title strong{font-size:13px}.wl-card-title small{font-size:10px}
  .wl-quick-grid{grid-template-columns:1fr}.wl-app-grid{grid-template-columns:1fr}.wl-settings-grid{grid-template-columns:1fr}.wl-form-group.full{grid-column:auto}
  .wl-review-summary{grid-template-columns:1fr}.wl-role-grid{grid-template-columns:1fr}.wl-modal,.wl-modal.wide{width:100%;max-height:94dvh}.wl-modal-body{max-height:calc(94dvh - 130px)}
}


/* v0.9.1 whitelist automation modal tabs and iOS switches */
.wl-automation-modal{
  height:min(760px,calc(100dvh - 32px));
  max-height:calc(100dvh - 32px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.wl-automation-head{
  flex:0 0 auto;
  align-items:center;
  min-height:86px;
  padding:18px 20px;
  border-bottom:1px solid var(--border);
}
.wl-automation-head-copy{min-width:0}
.wl-automation-kicker{
  display:block;
  margin-bottom:5px;
  color:var(--accent);
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
}
.wl-automation-head h3{margin:0;font-size:19px!important;line-height:1.2}
.wl-automation-head p{
  max-width:660px;
  margin:6px 0 0;
  color:var(--muted);
  font-size:11px;
  line-height:1.45;
}
.wl-automation-tabs{
  flex:0 0 62px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:center;
  gap:7px;
  padding:10px 18px;
  border-bottom:1px solid var(--border);
  background:color-mix(in srgb,var(--surface-2) 42%,var(--surface));
}
.wl-automation-tab{
  min-width:0;
  height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:11px;
  background:transparent;
  color:var(--muted);
  font:inherit;
  font-size:11.5px;
  font-weight:850;
  cursor:pointer;
  transition:.15s ease;
}
.wl-automation-tab i{width:14px;text-align:center;font-size:11px}
.wl-automation-tab span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wl-automation-tab:hover{background:var(--surface-2);color:var(--text)}
.wl-automation-tab.active{
  border-color:color-mix(in srgb,var(--accent) 42%,var(--border));
  background:var(--accent-soft);
  color:var(--accent);
}
.wl-automation-body{
  flex:1 1 auto;
  min-height:0;
  max-height:none;
  overflow-y:auto;
  padding:18px 20px 22px;
  scrollbar-gutter:stable;
}
.wl-automation-body::-webkit-scrollbar{width:8px}
.wl-automation-body::-webkit-scrollbar-track{background:transparent}
.wl-automation-body::-webkit-scrollbar-thumb{
  border:2px solid transparent;
  border-radius:999px;
  background:var(--nord-scrollbar-thumb);
  background-clip:padding-box;
}
.wl-automation-panel[hidden]{display:none!important}
.wl-automation-panel{animation:wlAutomationTabIn .14s ease}
@keyframes wlAutomationTabIn{from{opacity:.55;transform:translateY(3px)}to{opacity:1;transform:none}}
.wl-automation-section-head{
  display:flex;
  align-items:flex-start;
  gap:11px;
  margin-bottom:16px;
  padding-bottom:14px;
  border-bottom:1px solid var(--border);
}
.wl-automation-section-icon{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  flex:0 0 36px;
  border-radius:10px;
  background:var(--accent-soft);
  color:var(--accent);
  font-size:11px;
}
.wl-automation-section-head strong{display:block;font-size:14px}
.wl-automation-section-head small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:10.5px;
  line-height:1.45;
}
.wl-automation-panel .wl-form-group label{font-size:11px}
.wl-automation-panel .wl-form-group input,
.wl-automation-panel .wl-form-group select{height:45px;font-size:12px}
.wl-automation-panel .wl-form-group small{font-size:10px;line-height:1.45}
.wl-automation-actions{
  flex:0 0 auto;
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  padding:12px 18px!important;
  background:var(--surface);
}
.wl-automation-actions .btn{min-height:40px;font-size:11.5px}

/* Boolean settings use an iOS-style switch instead of raw checkboxes. */
.wl-ios-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.wl-ios-card{
  min-width:0;
  min-height:88px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 15px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface-2);
  cursor:pointer;
  transition:.15s ease;
}
.wl-ios-card:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}
.wl-ios-card:has(.wl-ios-switch input:checked){
  border-color:color-mix(in srgb,var(--accent) 32%,var(--border));
  background:color-mix(in srgb,var(--accent) 5%,var(--surface-2));
}
.wl-ios-card .wl-toggle-copy{min-width:0}
.wl-ios-card .wl-toggle-copy strong{font-size:12.5px}
.wl-ios-card .wl-toggle-copy small{margin-top:5px;font-size:10.5px;line-height:1.45}
.wl-ios-switch{
  position:relative;
  width:52px;
  height:30px;
  flex:0 0 52px;
  display:inline-block;
}
.wl-ios-switch input{
  position:absolute;
  width:1px!important;
  height:1px!important;
  margin:0!important;
  opacity:0;
  pointer-events:none;
}
.wl-ios-track{
  position:absolute;
  inset:0;
  border:1px solid color-mix(in srgb,var(--border) 74%,transparent);
  border-radius:999px;
  background:color-mix(in srgb,var(--muted) 25%,var(--surface));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);
  transition:.18s ease;
}
.wl-ios-track:before{
  content:"";
  position:absolute;
  left:3px;
  top:3px;
  width:22px;
  height:22px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 7px rgba(0,0,0,.32);
  transition:transform .18s ease;
}
.wl-ios-switch input:checked + .wl-ios-track{
  border-color:var(--accent);
  background:var(--accent);
}
.wl-ios-switch input:checked + .wl-ios-track:before{transform:translateX(22px)}
.wl-ios-switch input:focus-visible + .wl-ios-track{box-shadow:0 0 0 3px var(--accent-soft)}

/* Reviewer roles remain multi-select, but use custom compact selection cards. */
.wl-reviewer-role-grid{max-height:250px;padding-right:3px}
.wl-reviewer-role-grid .wl-role-option{
  position:relative;
  min-height:46px;
  padding:9px 11px;
  cursor:pointer;
  transition:.15s ease;
}
.wl-reviewer-role-grid .wl-role-option:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}
.wl-reviewer-role-grid .wl-role-option input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.wl-role-check{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  flex:0 0 22px;
  border:1px solid var(--border);
  border-radius:7px;
  background:var(--surface);
  color:transparent;
  font-size:9px;
  transition:.15s ease;
}
.wl-reviewer-role-grid .wl-role-option input:checked + .wl-role-check{
  border-color:var(--accent);
  background:var(--accent);
  color:#fff;
}
.wl-reviewer-role-grid .wl-role-option:has(input:checked){
  border-color:color-mix(in srgb,var(--accent) 34%,var(--border));
  background:color-mix(in srgb,var(--accent) 6%,var(--surface-2));
}
.wl-reviewer-role-grid .wl-role-option>span:last-child{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:11px;
  font-weight:750;
}

@media(max-width:760px){
  .wl-automation-modal{width:calc(100vw - 16px)!important;height:min(92dvh,760px);max-height:92dvh}
  .wl-automation-head{min-height:76px;padding:14px}
  .wl-automation-head h3{font-size:17px!important}
  .wl-automation-head p{font-size:10px}
  .wl-automation-tabs{
    flex-basis:56px;
    gap:4px;
    padding:7px 8px;
  }
  .wl-automation-tab{
    height:40px;
    gap:4px;
    padding:0 4px;
    border-radius:9px;
    font-size:9px;
  }
  .wl-automation-tab i{display:none}
  .wl-automation-body{padding:14px}
  .wl-automation-section-head{margin-bottom:13px;padding-bottom:12px}
  .wl-automation-section-head strong{font-size:13px}
  .wl-automation-section-head small{font-size:10px}
  .wl-ios-grid{grid-template-columns:1fr}
  .wl-ios-card{min-height:78px;padding:12px}
  .wl-ios-card .wl-toggle-copy strong{font-size:12px}
  .wl-ios-card .wl-toggle-copy small{font-size:10px}
  .wl-automation-actions{min-height:60px;padding:10px 12px!important}
  .wl-automation-actions .btn{flex:1}
  .wl-reviewer-role-grid{grid-template-columns:1fr;max-height:230px}
}
@media(max-width:390px){
  .wl-automation-tab{font-size:8.5px}
  .wl-automation-tabs{padding-left:6px;padding-right:6px}
}


/* v0.9.1 whitelist reviewer role picker modal */
.wl-reviewer-picker{
  width:100%;
  min-height:68px;
  display:grid;
  grid-template-columns:40px minmax(0,1fr) auto 14px;
  align-items:center;
  gap:11px;
  padding:11px 13px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface-2);
  color:var(--text);
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:.15s ease;
}
.wl-reviewer-picker:hover{
  border-color:color-mix(in srgb,var(--accent) 38%,var(--border));
  background:color-mix(in srgb,var(--accent) 4%,var(--surface-2));
}
.wl-reviewer-picker:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}
.wl-reviewer-picker-icon{
  width:40px;height:40px;display:grid;place-items:center;
  border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:12px;
}
.wl-reviewer-picker-copy{min-width:0}
.wl-reviewer-picker-copy strong{display:block;font-size:11.5px}
.wl-reviewer-picker-copy small{
  display:block;margin-top:4px;color:var(--muted);font-size:10px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.wl-reviewer-picker-count{
  min-width:27px;height:27px;display:grid;place-items:center;
  padding:0 7px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));
  border-radius:999px;background:var(--accent-soft);color:var(--accent);
  font-size:10px;font-weight:900;
}
.wl-reviewer-picker-arrow{color:var(--muted);font-size:10px}
.wl-reviewer-selected{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px}
.wl-reviewer-chip,.wl-reviewer-empty-chip{
  min-height:25px;display:inline-flex;align-items:center;gap:6px;
  padding:0 8px;border:1px solid var(--border);border-radius:999px;
  background:var(--surface);color:var(--muted);font-size:9.5px;font-weight:750;
}
.wl-reviewer-chip i{color:var(--accent);font-size:8px}
.wl-reviewer-empty-chip{border-style:dashed}

#whitelistReviewerRolesModal{z-index:2147482100}
.wl-reviewer-role-modal{
  width:min(680px,calc(100vw - 28px));
  height:min(700px,calc(100dvh - 38px));
  max-height:calc(100dvh - 38px);
  display:flex;flex-direction:column;overflow:hidden;
}
.wl-reviewer-role-modal .modal-head{
  flex:0 0 auto;align-items:center;padding:17px 18px;
  border-bottom:1px solid var(--border);
}
.wl-reviewer-role-modal .modal-head h3{margin:4px 0 0;font-size:17px}
.wl-reviewer-role-subtitle{
  max-width:520px;margin:5px 0 0;color:var(--muted);font-size:10.5px;line-height:1.45;
}
.wl-reviewer-role-body{
  flex:1 1 auto;min-height:0;max-height:none;overflow:hidden;
  display:flex;flex-direction:column;padding:15px 17px;
}
.wl-reviewer-role-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.wl-reviewer-role-search{position:relative;flex:1 1 auto}
.wl-reviewer-role-search i{
  position:absolute;left:12px;top:50%;transform:translateY(-50%);
  color:var(--muted);font-size:10px;pointer-events:none;
}
.wl-reviewer-role-search input{
  width:100%;height:42px;padding:0 12px 0 34px;
  border:1px solid var(--border);border-radius:10px;background:var(--surface-2);
  color:var(--text);font:inherit;font-size:11px;outline:none;
}
.wl-reviewer-role-search input:focus{border-color:var(--accent)}
.wl-reviewer-role-meta{
  flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;
  gap:10px;margin-bottom:9px;color:var(--muted);font-size:9.5px;font-weight:800;
}
.wl-reviewer-role-meta strong{color:var(--text);font-size:9.5px}
.wl-reviewer-role-options{
  flex:1 1 auto;min-height:0;overflow-y:auto;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  align-content:start;gap:7px;padding-right:4px;
}
.wl-reviewer-role-options::-webkit-scrollbar{width:8px}
.wl-reviewer-role-options::-webkit-scrollbar-track{background:transparent}
.wl-reviewer-role-options::-webkit-scrollbar-thumb{
  border:2px solid transparent;border-radius:999px;
  background:var(--nord-scrollbar-thumb);background-clip:padding-box;
}
.wl-reviewer-role-option{
  min-width:0;min-height:58px;
  display:grid;grid-template-columns:34px minmax(0,1fr) 24px;
  align-items:center;gap:9px;padding:9px 10px;
  border:1px solid var(--border);border-radius:11px;
  background:var(--surface-2);color:var(--text);font:inherit;text-align:left;
  cursor:pointer;transition:.15s ease;
}
.wl-reviewer-role-option:hover{
  border-color:color-mix(in srgb,var(--accent) 32%,var(--border));
  transform:translateY(-1px);
}
.wl-reviewer-role-option.selected{
  border-color:color-mix(in srgb,var(--accent) 50%,var(--border));
  background:color-mix(in srgb,var(--accent) 7%,var(--surface-2));
}
.wl-reviewer-role-option-icon{
  width:34px;height:34px;display:grid;place-items:center;
  border-radius:9px;background:var(--surface);color:var(--muted);font-size:10px;
}
.wl-reviewer-role-option.selected .wl-reviewer-role-option-icon{
  background:var(--accent-soft);color:var(--accent);
}
.wl-reviewer-role-option-copy{min-width:0}
.wl-reviewer-role-option-copy strong{
  display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.8px
}
.wl-reviewer-role-option-copy small{
  display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  color:var(--muted);font-size:8.5px;
}
.wl-reviewer-role-option-check{
  width:22px;height:22px;display:grid;place-items:center;
  border:1px solid var(--border);border-radius:7px;background:var(--surface);
  color:transparent;font-size:8px;transition:.15s ease;
}
.wl-reviewer-role-option.selected .wl-reviewer-role-option-check{
  border-color:var(--accent);background:var(--accent);color:#fff;
}
.wl-reviewer-role-actions{
  flex:0 0 auto;min-height:62px;display:flex;align-items:center;justify-content:flex-end;
  gap:8px;padding:10px 17px!important;border-top:1px solid var(--border);background:var(--surface);
}
.wl-reviewer-role-actions .btn{min-height:39px;font-size:11px}

@media(max-width:640px){
  .wl-reviewer-picker{grid-template-columns:36px minmax(0,1fr) auto 12px;min-height:62px;padding:9px 10px}
  .wl-reviewer-picker-icon{width:36px;height:36px}
  .wl-reviewer-picker-copy strong{font-size:11px}
  .wl-reviewer-picker-copy small{font-size:9.5px}
  .wl-reviewer-role-modal{width:calc(100vw - 14px);height:92dvh;max-height:92dvh}
  .wl-reviewer-role-modal .modal-head{padding:14px}
  .wl-reviewer-role-body{padding:12px}
  .wl-reviewer-role-toolbar{align-items:stretch}
  .wl-reviewer-role-toolbar .btn{width:42px;padding:0}
  .wl-reviewer-role-toolbar .btn span{display:none}
  .wl-reviewer-role-options{grid-template-columns:1fr}
  .wl-reviewer-role-actions{padding:9px 12px!important}
  .wl-reviewer-role-actions .btn{flex:1}
}


/* v0.9.1 configurable access plans */
.plan-admin-note{
  display:flex;align-items:flex-start;gap:9px;margin:0 0 14px;
  padding:11px 12px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));
  border-radius:11px;background:color-mix(in srgb,var(--accent) 4%,var(--surface-2));
  color:var(--muted);font-size:10.5px;line-height:1.45;
}
.plan-admin-note i{margin-top:2px;color:var(--accent)}
.plan-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.plan-admin-card{
  --plan-color:#6f7cff;
  position:relative;min-width:0;padding:14px;
  border:1px solid var(--border);border-radius:14px;background:var(--surface-2);overflow:hidden;
}
.plan-admin-card:before{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--plan-color);
}
.plan-admin-card-head{display:flex;align-items:flex-start;gap:10px}
.plan-admin-icon{
  width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;
  border-radius:10px;background:color-mix(in srgb,var(--plan-color) 14%,var(--surface));
  color:var(--plan-color);font-size:11px;
}
.plan-admin-card-copy{min-width:0;flex:1}
.plan-admin-card-copy>div{display:flex;align-items:center;gap:7px;min-width:0}
.plan-admin-card-copy strong{
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;
}
.plan-admin-code{
  flex:0 0 auto;padding:3px 6px;border:1px solid var(--border);border-radius:999px;
  background:var(--surface);color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.04em;
}
.plan-admin-card-copy p{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  min-height:30px;margin:5px 0 0;color:var(--muted);font-size:9.5px;line-height:1.45;
}
.plan-admin-status{
  flex:0 0 auto;min-height:24px;display:inline-flex;align-items:center;
  padding:0 7px;border:1px solid rgba(239,68,68,.25);border-radius:999px;
  background:rgba(239,68,68,.06);color:#ef4444;font-size:8px;font-weight:900;text-transform:uppercase;
}
.plan-admin-status.active{border-color:rgba(34,197,94,.25);background:rgba(34,197,94,.06);color:#22c55e}
.plan-admin-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px}
.plan-admin-stats div{
  min-width:0;padding:8px;border:1px solid var(--border);border-radius:9px;background:var(--surface);
}
.plan-admin-stats span,.plan-admin-stats strong{display:block}
.plan-admin-stats span{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);
  font-size:7.5px;font-weight:850;text-transform:uppercase;
}
.plan-admin-stats strong{margin-top:4px;font-size:10.5px}
.plan-admin-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:11px}
.plan-admin-actions .btn{min-height:34px;font-size:9.5px}

.plan-admin-modal{
  width:min(980px,calc(100vw - 30px));
  max-height:92dvh;display:flex;flex-direction:column;overflow:hidden;
}
.plan-admin-modal .modal-head{flex:0 0 auto}
.plan-admin-kicker{
  display:block;margin-bottom:4px;color:var(--accent);
  font-size:8.5px;font-weight:900;letter-spacing:.08em;
}
.plan-enabled-card{
  grid-column:1/-1;
  min-height:72px;
}
.plan-permissions-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  padding:14px 18px 10px;border-top:1px solid var(--border);
}
.plan-permissions-head strong{display:block;font-size:12px}
.plan-permissions-head small{
  display:block;max-width:620px;margin-top:4px;color:var(--muted);font-size:9.5px;line-height:1.45;
}
.plan-permission-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.plan-permission-builder{
  flex:1 1 auto;min-height:0;overflow-y:auto;margin:0 18px 14px;
  padding-right:4px;
}
.plan-permission-builder::-webkit-scrollbar{width:8px}
.plan-permission-builder::-webkit-scrollbar-track{background:transparent}
.plan-permission-builder::-webkit-scrollbar-thumb{
  border:2px solid transparent;border-radius:999px;
  background:var(--nord-scrollbar-thumb);background-clip:padding-box;
}
.plan-admin-modal>.form-grid{padding:0 18px 16px}
.plan-admin-modal>.form-actions{flex:0 0 auto;margin:0;padding:12px 18px!important;border-top:1px solid var(--border)}

@media(max-width:1180px){
  .plan-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .plan-admin-grid{grid-template-columns:1fr}
  .plan-admin-modal{width:calc(100vw - 14px);max-height:94dvh}
  .plan-admin-modal>.form-grid{grid-template-columns:1fr;padding:0 12px 12px}
  .plan-enabled-card{grid-column:auto}
  .plan-permissions-head{display:grid;padding:12px}
  .plan-permission-actions{display:grid;grid-template-columns:1fr 1fr}
  .plan-permission-actions .btn{width:100%}
  .plan-permission-builder{margin:0 12px 12px}
  .plan-admin-modal>.form-actions{padding:10px 12px!important}
  .plan-admin-stats{grid-template-columns:1fr 1fr 1fr}
}


/* v0.9.1 professional automations workspace */
.automation-shell{display:flex;flex-direction:column;gap:16px}
.automation-page-head{margin-bottom:0}
.automation-page-head h1{font-size:28px}
.automation-page-head p{max-width:760px}
.automation-head-actions{align-self:flex-start}

.automation-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.automation-stat{
  min-width:0;
  min-height:104px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  align-items:center;
  gap:12px;
  padding:14px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface);
  box-shadow:var(--shadow-sm);
}
.automation-stat-icon{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:11px;
  background:var(--surface-2);
  color:var(--muted);
  font-size:12px;
}
.automation-stat[data-tone="success"] .automation-stat-icon{background:rgba(34,197,94,.09);color:#22c55e}
.automation-stat[data-tone="accent"] .automation-stat-icon{background:var(--accent-soft);color:var(--accent)}
.automation-stat[data-tone="muted"] .automation-stat-icon{background:rgba(148,163,184,.08);color:#94a3b8}
.automation-stat small,.automation-stat span{display:block}
.automation-stat small{
  color:var(--muted);
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.automation-stat strong{
  display:block;
  margin:4px 0 1px;
  color:var(--text);
  font-size:23px;
  line-height:1;
}
.automation-stat div>span{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  color:var(--muted);
  font-size:9px;
}

.automation-workspace{
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:12px;
  align-items:start;
}
.automation-list-card,.automation-runtime-card{min-width:0}
.automation-list-title{margin-bottom:12px}
.automation-toolbar{
  display:grid;
  grid-template-columns:minmax(220px,1fr) 190px;
  gap:8px;
  margin-bottom:12px;
}
.automation-search{position:relative}
.automation-search i{
  position:absolute;left:12px;top:50%;transform:translateY(-50%);
  color:var(--muted);font-size:10px;pointer-events:none;
}
.automation-search input{
  width:100%;
  height:40px;
  padding:0 12px 0 34px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--surface-2);
  color:var(--text);
  font:inherit;
  font-size:11px;
  outline:none;
  transition:.15s ease;
}
.automation-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.automation-filter{height:40px!important;font-size:10.5px!important}

.automation-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
.automation-card{
  position:relative;
  min-width:0;
  padding:13px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface-2);
  overflow:hidden;
  transition:.15s ease;
}
.automation-card:before{
  content:"";
  position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--muted);
  opacity:.55;
}
.automation-card.active:before{background:#22c55e;opacity:1}
.automation-card:hover{
  border-color:color-mix(in srgb,var(--accent) 24%,var(--border));
  transform:translateY(-1px);
}
.automation-card-head{
  display:grid;
  grid-template-columns:36px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
}
.automation-card-icon{
  width:36px;height:36px;
  display:grid;place-items:center;
  border-radius:10px;
  background:var(--surface);
  color:var(--accent);
  font-size:10px;
}
.automation-card-title{min-width:0}
.automation-card-title strong,
.automation-card-title span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.automation-card-title strong{font-size:11.5px}
.automation-card-title span{margin-top:3px;color:var(--muted);font-size:9px}
.automation-status{
  min-height:24px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:0 7px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface);
  color:var(--muted);
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  white-space:nowrap;
}
.automation-status i{font-size:7px}
.automation-status.active{
  border-color:rgba(34,197,94,.22);
  background:rgba(34,197,94,.06);
  color:#22c55e;
}
.automation-message-preview{
  min-height:63px;
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin:11px 0;
  padding:10px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--surface);
}
.automation-message-preview i{margin-top:2px;color:var(--muted);font-size:8px}
.automation-message-preview p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0;
  color:var(--text-soft,var(--text));
  font-size:9.7px;
  line-height:1.55;
}
.automation-card-meta{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
}
.automation-card-meta div{
  min-width:0;
  padding:7px 8px;
  border:1px solid var(--border);
  border-radius:9px;
  background:color-mix(in srgb,var(--surface) 76%,transparent);
}
.automation-card-meta span,.automation-card-meta strong{display:block}
.automation-card-meta span{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  color:var(--muted);
  font-size:7px;
  font-weight:850;
  text-transform:uppercase;
}
.automation-card-meta strong{
  margin-top:3px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-size:8.8px;
}
.automation-card-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:34px;
  margin-top:9px;
}
.automation-created{
  min-width:0;
  display:inline-flex;
  align-items:center;
  gap:6px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--muted);
  font-size:8.5px;
}
.automation-created i{font-size:8px}
.automation-card-footer .icon-only{width:34px;min-width:34px;padding:0}

.automation-empty{
  grid-column:1/-1;
  min-height:260px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:24px;
  border:1px dashed color-mix(in srgb,var(--border) 82%,transparent);
  border-radius:12px;
  background:color-mix(in srgb,var(--surface-2) 72%,transparent);
  text-align:center;
}
.automation-empty.compact{min-height:210px}
.automation-empty>span{
  width:46px;height:46px;
  display:grid;place-items:center;
  border-radius:13px;
  background:var(--accent-soft);
  color:var(--accent);
  font-size:13px;
}
.automation-empty strong{margin-top:3px;font-size:12px}
.automation-empty small{max-width:390px;color:var(--muted);font-size:9.5px;line-height:1.5}
.automation-empty .btn{margin-top:6px}

.automation-runtime-card{
  position:sticky;
  top:76px;
}
.automation-runtime-live{
  display:inline-flex;align-items:center;gap:5px;
  padding:5px 7px;border:1px solid rgba(34,197,94,.18);
  border-radius:999px;background:rgba(34,197,94,.05);
  color:#22c55e;font-size:8px;font-weight:900;text-transform:uppercase;
}
.automation-runtime-live i{
  width:6px;height:6px;border-radius:50%;background:#22c55e;
  box-shadow:0 0 0 4px rgba(34,197,94,.08);
}
.automation-runtime-stack{display:grid;gap:7px}
.automation-runtime-row{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  padding:10px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--surface-2);
}
.automation-runtime-icon{
  width:34px;height:34px;display:grid;place-items:center;
  border-radius:9px;background:var(--surface);color:var(--accent);font-size:10px;
}
.automation-runtime-row div{min-width:0}
.automation-runtime-row strong,.automation-runtime-row small{display:block}
.automation-runtime-row strong{font-size:10.5px}
.automation-runtime-row small{
  margin-top:3px;
  color:var(--muted);
  font-size:8.7px;
  line-height:1.4;
}
.automation-runtime-value{
  color:#22c55e;
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
}
.automation-runtime-summary{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  margin-top:10px;
}
.automation-runtime-summary div{
  padding:10px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--surface);
}
.automation-runtime-summary span,.automation-runtime-summary strong{display:block}
.automation-runtime-summary span{
  color:var(--muted);font-size:7.5px;font-weight:850;text-transform:uppercase;
}
.automation-runtime-summary strong{
  margin-top:4px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-size:9.5px;
}
.automation-runtime-note{
  display:flex;align-items:flex-start;gap:8px;
  margin-top:10px;padding:10px;
  border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));
  border-radius:10px;
  background:color-mix(in srgb,var(--accent) 4%,var(--surface-2));
  color:var(--muted);
  font-size:8.8px;
  line-height:1.45;
}
.automation-runtime-note i{margin-top:2px;color:var(--accent)}

.automation-create-modal{
  width:min(820px,calc(100vw - 30px));
  max-height:92dvh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.automation-create-head{flex:0 0 auto;align-items:center}
.automation-modal-kicker{
  display:block;margin-bottom:4px;
  color:var(--accent);
  font-size:8.5px;
  font-weight:900;
  letter-spacing:.08em;
}
.automation-create-body{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  padding:16px 18px;
}
.automation-create-body::-webkit-scrollbar{width:8px}
.automation-create-body::-webkit-scrollbar-track{background:transparent}
.automation-create-body::-webkit-scrollbar-thumb{
  border:2px solid transparent;
  border-radius:999px;
  background:var(--nord-scrollbar-thumb);
  background-clip:padding-box;
}
.automation-create-section{
  padding:14px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface-2);
}
.automation-create-section+.automation-create-section{margin-top:10px}
.automation-section-title{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin-bottom:12px;
  padding-bottom:11px;
  border-bottom:1px solid var(--border);
}
.automation-section-title>span{
  width:34px;height:34px;
  display:grid;place-items:center;flex:0 0 34px;
  border-radius:9px;background:var(--accent-soft);color:var(--accent);font-size:10px;
}
.automation-section-title strong,.automation-section-title small{display:block}
.automation-section-title strong{font-size:11.5px}
.automation-section-title small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.4}
.automation-message-input{min-height:135px!important;resize:vertical}
.automation-char-count{float:right;color:var(--muted);font-size:8px;font-weight:800}
.automation-create-note{
  display:flex;align-items:flex-start;gap:8px;
  margin-top:10px;
  padding:10px 11px;
  border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border));
  border-radius:10px;
  background:color-mix(in srgb,var(--accent) 4%,var(--surface-2));
  color:var(--muted);
  font-size:9px;
  line-height:1.45;
}
.automation-create-note i{margin-top:2px;color:var(--accent)}
.automation-create-actions{
  flex:0 0 auto;
  min-height:64px;
  padding:11px 18px!important;
  border-top:1px solid var(--border);
  background:var(--surface);
}

@media(max-width:1180px){
  .automation-workspace{grid-template-columns:minmax(0,1fr) 290px}
  .automation-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
  .automation-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .automation-workspace{grid-template-columns:1fr}
  .automation-runtime-card{position:static}
  .automation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .automation-shell{gap:12px}
  .automation-page-head{display:grid;gap:12px}
  .automation-head-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .automation-head-actions .btn{width:100%;justify-content:center}
  .automation-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .automation-stat{min-height:88px;grid-template-columns:34px minmax(0,1fr);padding:10px;gap:9px}
  .automation-stat-icon{width:34px;height:34px;border-radius:9px}
  .automation-stat strong{font-size:19px}
  .automation-stat div>span{font-size:8px}
  .automation-toolbar{grid-template-columns:1fr}
  .automation-grid{grid-template-columns:1fr}
  .automation-card-meta{grid-template-columns:1fr 1fr}
  .automation-card-meta div:last-child{grid-column:1/-1}
  .automation-runtime-card{order:-1}
  .automation-create-modal{width:calc(100vw - 14px);max-height:94dvh}
  .automation-create-body{padding:12px}
  .automation-create-section{padding:11px}
  .automation-create-section .form-grid{grid-template-columns:1fr}
  .automation-create-actions{padding:10px 12px!important}
  .automation-create-actions .btn{flex:1}
}
@media(max-width:420px){
  .automation-stats{grid-template-columns:1fr 1fr}
  .automation-stat{grid-template-columns:1fr;align-items:start}
  .automation-stat-icon{display:none}
  .automation-card-head{grid-template-columns:34px minmax(0,1fr)}
  .automation-status{grid-column:1/-1;justify-self:start;margin-left:43px}
  .automation-card-meta{grid-template-columns:1fr}
  .automation-card-meta div:last-child{grid-column:auto}
}


/* v0.9.1 automations cleanup: single workspace + precise icon alignment */
#page-automations .automation-workspace{
  grid-template-columns:minmax(0,1fr);
  width:100%;
}
#page-automations .automation-list-card{width:100%}
#page-automations .automation-card-head{align-items:center}
#page-automations .automation-head-actions .btn,
#page-automations .automation-card-footer .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
#page-automations .automation-head-actions .btn>i,
#page-automations .automation-card-footer .btn>i,
#page-automations .automation-empty .btn>i{
  width:1em;
  min-width:1em;
  display:inline-grid;
  place-items:center;
  line-height:1;
  text-align:center;
}
#page-automations .automation-card-icon>i,
#page-automations .automation-message-preview>i,
#page-automations .automation-created>i{
  width:1em;
  height:1em;
  display:grid;
  place-items:center;
  line-height:1;
  text-align:center;
}
#page-automations .automation-search>i{
  width:1em;
  height:1em;
  display:grid;
  place-items:center;
  line-height:1;
  text-align:center;
}


/* v0.9.1 messages & autorole production workspace */
#page-messages.messages-page{
  display:none;
  gap:16px;
}
#page-messages.messages-page.active{
  display:grid;
}

.messages-page-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.messages-page-head h1{
  margin:5px 0 4px;
}
.messages-page-head p{
  margin:0;
  max-width:760px;
  color:var(--muted);
}
.messages-head-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.messages-overview{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.messages-stat{
  min-width:0;
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:13px;
  border:1px solid var(--border);
  border-radius:13px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 58%,var(--surface)),var(--surface));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.015);
}
.messages-stat-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:11px;
  border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));
  background:var(--accent-soft);
  color:var(--accent);
}
.messages-stat-icon.welcome{background:rgba(34,197,94,.08);color:#22c55e;border-color:rgba(34,197,94,.16)}
.messages-stat-icon.leave{background:rgba(245,158,11,.08);color:#f59e0b;border-color:rgba(245,158,11,.16)}
.messages-stat-icon.role{background:rgba(99,102,241,.09);color:#818cf8;border-color:rgba(99,102,241,.2)}
.messages-stat small,
.messages-stat strong,
.messages-stat em{
  display:block;
  min-width:0;
}
.messages-stat small{
  color:var(--muted);
  font-size:7px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.messages-stat strong{
  margin-top:3px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--text);
  font-size:12px;
  line-height:1.15;
}
.messages-stat em{
  margin-top:3px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--muted);
  font-size:7.5px;
  font-style:normal;
}

.messages-workspace{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:12px;
  align-items:start;
}
.messages-config-column,
.messages-side-column{
  min-width:0;
  display:grid;
  gap:10px;
}
.messages-side-column{
  position:sticky;
  top:14px;
}
.messages-config-card,
.messages-preview-card,
.messages-health-card{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.012);
}
.messages-card-head{
  min-height:62px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border-bottom:1px solid var(--border);
  background:color-mix(in srgb,var(--surface-2) 54%,var(--surface));
}
.messages-card-head.compact{
  min-height:58px;
}
.messages-card-head>div{
  min-width:0;
  flex:1;
}
.messages-card-head strong,
.messages-card-head small{
  display:block;
}
.messages-card-head strong{
  font-size:10px;
  color:var(--text);
}
.messages-card-head small{
  margin-top:3px;
  color:var(--muted);
  font-size:8px;
  line-height:1.35;
}
.messages-card-icon{
  width:36px;
  height:36px;
  flex:0 0 36px;
  display:grid;
  place-items:center;
  border:1px solid color-mix(in srgb,var(--accent) 17%,var(--border));
  border-radius:10px;
  background:var(--accent-soft);
  color:var(--accent);
}
.messages-card-icon.welcome{background:rgba(34,197,94,.08);color:#22c55e;border-color:rgba(34,197,94,.17)}
.messages-card-icon.leave{background:rgba(245,158,11,.08);color:#f59e0b;border-color:rgba(245,158,11,.17)}
.messages-card-icon.role{background:rgba(99,102,241,.09);color:#818cf8;border-color:rgba(99,102,241,.18)}
.messages-card-icon.health{background:rgba(20,184,166,.08);color:#2dd4bf;border-color:rgba(20,184,166,.18)}
.messages-section-badge,
.messages-live-badge{
  flex:0 0 auto;
  min-height:25px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:0 8px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface);
  color:var(--muted);
  font-size:6.6px;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.messages-live-badge{
  border-color:rgba(34,197,94,.25);
  background:rgba(34,197,94,.06);
  color:#22c55e;
}
.messages-live-badge i{
  font-size:5px;
}
.messages-live-badge.off{
  border-color:var(--border);
  background:var(--surface);
  color:var(--muted);
}
.messages-live-badge.neutral{
  border-color:rgba(99,102,241,.22);
  background:rgba(99,102,241,.06);
  color:#818cf8;
}
.messages-card-body{
  padding:12px;
}
.messages-card-body .form-group{
  margin:0;
}
.messages-card-body .select{
  min-height:42px;
}
.messages-editor-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:7px;
  color:var(--muted);
  font-size:7.4px;
}
.messages-counter{
  font-variant-numeric:tabular-nums;
}
.messages-counter strong{
  color:var(--text);
}
.messages-variable-row{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-bottom:8px;
}
.messages-variable-row button{
  min-height:25px;
  padding:0 7px;
  border:1px solid var(--border);
  border-radius:7px;
  background:var(--surface-2);
  color:var(--muted);
  font:inherit;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:7px;
  cursor:pointer;
  transition:.14s ease;
}
.messages-variable-row button:hover{
  border-color:color-mix(in srgb,var(--accent) 38%,var(--border));
  background:var(--accent-soft);
  color:var(--accent);
}
.messages-textarea{
  min-height:108px!important;
  resize:vertical;
  line-height:1.55;
}

.messages-preview-card{
  background:color-mix(in srgb,var(--surface-2) 40%,var(--surface));
}
.messages-preview-head{
  min-height:60px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  padding:10px 11px;
  border-bottom:1px solid var(--border);
}
.messages-preview-head strong,
.messages-preview-head small{
  display:block;
}
.messages-preview-head strong{
  font-size:9.5px;
}
.messages-preview-head small{
  margin-top:3px;
  color:var(--muted);
  font-size:7.5px;
}
.messages-preview-tabs{
  display:flex;
  gap:3px;
  padding:3px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--surface);
}
.messages-preview-tabs button{
  min-height:27px;
  padding:0 8px;
  border:0;
  border-radius:6px;
  background:transparent;
  color:var(--muted);
  font:inherit;
  font-size:7px;
  font-weight:800;
  cursor:pointer;
}
.messages-preview-tabs button.active{
  background:var(--accent-soft);
  color:var(--accent);
}
.messages-discord-preview{
  margin:11px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--border) 92%,transparent);
  border-radius:11px;
  background:#1e1f22;
  color:#f2f3f5;
}
.messages-discord-channel{
  min-height:34px;
  display:flex;
  align-items:center;
  gap:6px;
  padding:0 10px;
  border-bottom:1px solid rgba(255,255,255,.06);
  color:#b5bac1;
  font-size:8px;
}
.messages-discord-message{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:8px;
  padding:12px 10px 15px;
}
.messages-discord-avatar{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(135deg,#111827,#0f172a);
  color:#8ea1ff;
  font-size:13px;
  font-weight:900;
}
.messages-discord-author{
  display:flex;
  align-items:center;
  gap:5px;
  line-height:1;
}
.messages-discord-author strong{
  color:#f2f3f5;
  font-size:9px;
}
.messages-discord-author span{
  padding:2px 4px;
  border-radius:3px;
  background:#5865f2;
  color:#fff;
  font-size:5.5px;
  font-weight:900;
}
.messages-discord-author small{
  color:#949ba4;
  font-size:6.5px;
}
.messages-discord-message p{
  margin:5px 0 0;
  color:#dbdee1;
  font-size:8.4px;
  line-height:1.45;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.messages-health-list{
  display:grid;
  gap:0;
  padding:4px 11px;
}
.messages-health-row{
  min-height:41px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border-bottom:1px solid var(--border);
}
.messages-health-row:last-child{
  border-bottom:0;
}
.messages-health-row span{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  color:var(--muted);
}
.messages-health-row span i{
  width:18px;
  color:var(--muted);
  text-align:center;
}
.messages-health-row b{
  color:var(--text);
  font-size:8px;
  font-weight:750;
}
.messages-health-row em{
  flex:0 0 auto;
  color:var(--muted);
  font-size:6.8px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.messages-health-row.good em{color:#22c55e}
.messages-health-row.warn em{color:#f59e0b}
.messages-health-row.bad em{color:#ef4444}
.messages-production-note{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin:0 11px 11px;
  padding:10px;
  border:1px solid rgba(34,197,94,.16);
  border-radius:10px;
  background:rgba(34,197,94,.045);
}
.messages-production-note>i{
  margin-top:2px;
  color:#22c55e;
}
.messages-production-note strong{
  display:block;
  color:var(--text);
  font-size:8.5px;
}
.messages-production-note p{
  margin:3px 0 0;
  color:var(--muted);
  font-size:7.4px;
  line-height:1.45;
}

@media(max-width:1180px){
  .messages-overview{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .messages-workspace{
    grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);
  }
}
@media(max-width:920px){
  .messages-page-head{
    flex-direction:column;
  }
  .messages-head-actions{
    width:100%;
    justify-content:flex-start;
  }
  .messages-workspace{
    grid-template-columns:1fr;
  }
  .messages-side-column{
    position:static;
  }
}
@media(max-width:620px){
  .messages-overview{
    grid-template-columns:1fr;
  }
  .messages-head-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .messages-runtime-pill{
    grid-column:1/-1;
    justify-content:center;
  }
  .messages-card-head{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  .messages-section-badge,
  .messages-live-badge{
    margin-left:46px;
  }
}


/* v0.9.1 compact messages cards + edit modals */
#page-messages .messages-hub-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:12px;
  align-items:start;
}
#page-messages .messages-management{
  min-width:0;
  display:grid;
  gap:10px;
}
#page-messages .messages-section-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:42px;
}
#page-messages .messages-section-heading strong,
#page-messages .messages-section-heading small{
  display:block;
}
#page-messages .messages-section-heading strong{
  color:var(--text);
  font-size:11px;
}
#page-messages .messages-section-heading small{
  margin-top:3px;
  color:var(--muted);
  font-size:8px;
}
#page-messages .messages-management-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
#page-messages .messages-manage-card{
  min-width:0;
  max-width:100%;
  min-height:218px;
  overflow:hidden;
  display:grid;
  grid-template-rows:auto auto 1fr auto;
  gap:12px;
  padding:13px;
  border:1px solid var(--border);
  border-radius:14px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 55%,var(--surface)),var(--surface));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.012);
  transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease;
}
#page-messages .messages-manage-card:hover{
  border-color:color-mix(in srgb,var(--accent) 26%,var(--border));
  transform:translateY(-1px);
  box-shadow:0 10px 26px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.015);
}
#page-messages .messages-manage-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
#page-messages .messages-manage-copy strong,
#page-messages .messages-manage-copy p{
  display:block;
}
#page-messages .messages-manage-copy strong{
  color:var(--text);
  font-size:10.5px;
}
#page-messages .messages-manage-copy p{
  min-height:34px;
  margin:4px 0 0;
  color:var(--muted);
  font-size:8px;
  line-height:1.45;
}
#page-messages .messages-current-value{
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:62px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  padding:10px 11px;
  border:1px solid var(--border);
  border-radius:10px;
  background:color-mix(in srgb,var(--surface-2) 48%,var(--surface));
}
#page-messages .messages-current-value small{
  color:var(--muted);
  font-size:6.7px;
  font-weight:900;
  letter-spacing:.055em;
  text-transform:uppercase;
}
#page-messages .messages-current-value strong{
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--text);
  font-size:9px;
  font-weight:750;
}
#page-messages .messages-current-value.message strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  min-height:26px;
  overflow:hidden;
  white-space:normal;
  line-height:1.45;
}
#page-messages .messages-manage-card footer{
  display:flex;
  justify-content:flex-end;
}
#page-messages .messages-edit-btn{
  width:100%;
  min-height:36px;
  justify-content:center;
  border-color:color-mix(in srgb,var(--accent) 18%,var(--border));
  background:color-mix(in srgb,var(--accent) 4%,var(--surface));
}
#page-messages .messages-edit-btn:hover{
  border-color:color-mix(in srgb,var(--accent) 42%,var(--border));
  background:var(--accent-soft);
  color:var(--accent);
}

/* Modal surfaces */
.messages-settings-modal{
  width:min(920px,calc(100vw - 32px));
  max-height:min(760px,calc(100dvh - 32px));
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  border-radius:18px;
  border:1px solid var(--border);
  background:var(--surface);
  box-shadow:0 30px 90px rgba(0,0,0,.46);
}
.messages-settings-modal.small{
  width:min(620px,calc(100vw - 32px));
}
.messages-modal-head{
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 16px;
  border-bottom:1px solid var(--border);
  background:color-mix(in srgb,var(--surface-2) 52%,var(--surface));
}
.messages-modal-title{
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
}
.messages-modal-title>div{
  min-width:0;
}
.messages-modal-kicker{
  display:block;
  color:var(--accent);
  font-size:6.7px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.messages-modal-title h3{
  margin:4px 0 0;
  color:var(--text);
  font-size:17px;
  line-height:1.1;
}
.messages-modal-title p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:8px;
  line-height:1.4;
}
.messages-modal-body{
  min-height:0;
  overflow:auto;
  padding:15px;
}
.messages-modal-grid{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(270px,.82fr);
  gap:12px;
  overflow:auto;
  padding:15px;
}
.messages-modal-editor{
  min-width:0;
  display:flex;
  flex-direction:column;
}
.messages-modal-preview{
  min-width:0;
  padding:11px;
  border:1px solid var(--border);
  border-radius:12px;
  background:color-mix(in srgb,var(--surface-2) 50%,var(--surface));
}
.messages-modal-preview-label{
  display:block;
  margin-bottom:8px;
  color:var(--muted);
  font-size:6.8px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.messages-textarea.modal-editor{
  min-height:220px!important;
  flex:1;
}
.messages-modal-actions{
  min-height:62px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  padding:10px 14px;
  border-top:1px solid var(--border);
  background:color-mix(in srgb,var(--surface-2) 42%,var(--surface));
}
.messages-modal-actions .btn{
  min-height:38px;
}
.messages-modal-note{
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin-top:12px;
  padding:10px;
  border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));
  border-radius:10px;
  background:color-mix(in srgb,var(--accent) 4%,var(--surface));
  color:var(--muted);
  font-size:8px;
  line-height:1.45;
}
.messages-modal-note>i{
  margin-top:2px;
  color:var(--accent);
}
.messages-modal-note.warning{
  border-color:rgba(245,158,11,.2);
  background:rgba(245,158,11,.045);
}
.messages-modal-note.warning>i{
  color:#f59e0b;
}

/* Side column stays compact */
#page-messages .messages-side-column{
  position:sticky;
  top:14px;
}
#page-messages .messages-preview-card,
#page-messages .messages-health-card{
  border-radius:14px;
}

@media(max-width:1280px){
  #page-messages .messages-management-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:1080px){
  #page-messages .messages-hub-grid{
    grid-template-columns:1fr;
  }
  #page-messages .messages-side-column{
    position:static;
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:760px){
  #page-messages .messages-management-grid,
  #page-messages .messages-side-column{
    grid-template-columns:1fr;
  }
  .messages-modal-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:560px){
  .messages-settings-modal,
  .messages-settings-modal.small{
    width:calc(100vw - 16px);
    max-height:calc(100dvh - 16px);
  }
  .messages-modal-head{
    align-items:flex-start;
  }
  .messages-modal-actions{
    flex-wrap:wrap;
  }
  .messages-modal-actions .btn{
    flex:1;
  }
}


/* v0.9.1 per-event messages: join, leave, boost and role promotion */
#page-messages .messages-card-icon.boost{
  background:rgba(236,72,153,.09);
  color:#f472b6;
  border-color:rgba(236,72,153,.2);
}
#page-messages .messages-card-icon.promotion{
  background:rgba(14,165,233,.09);
  color:#38bdf8;
  border-color:rgba(14,165,233,.2);
}
#page-messages .messages-current-value.event{
  min-height:92px;
  justify-content:flex-start;
}
#page-messages .messages-current-value.event small+strong{
  margin-bottom:4px;
}
#page-messages .messages-current-value.event strong+small{
  margin-top:3px;
}
#page-messages .messages-current-value.event strong[id$="Value"]{
  display:-webkit-box;
  width:100%;
  max-width:100%;
  min-width:0;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
  line-height:1.42;
}
#page-messages .messages-manage-card{
  min-height:258px;
}
.messages-modal-channel{
  margin:0 0 14px!important;
}
.messages-modal-channel .select{
  min-height:42px;
}


/* v0.9.1 tabbed automatic message editor */
.messages-event-modal{
  width:min(1080px,calc(100vw - 34px));
  height:min(780px,calc(100dvh - 34px));
  max-height:calc(100dvh - 34px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.messages-event-head{flex:0 0 auto}
.messages-event-tabs{
  flex:0 0 58px;
  display:flex;
  align-items:flex-end;
  gap:5px;
  padding:0 18px;
  border-bottom:1px solid var(--border);
  background:color-mix(in srgb,var(--surface) 92%,transparent);
}
.messages-event-tab{
  height:44px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 14px;
  border:1px solid transparent;
  border-bottom:0;
  border-radius:10px 10px 0 0;
  background:transparent;
  color:var(--muted);
  font:inherit;
  font-size:10.5px;
  font-weight:850;
  cursor:pointer;
  transition:.16s ease;
}
.messages-event-tab i{width:13px;text-align:center;font-size:10px}
.messages-event-tab:hover{color:var(--text);background:var(--surface-2)}
.messages-event-tab.active{
  border-color:var(--border);
  background:var(--surface-2);
  color:var(--accent);
  box-shadow:0 -1px 0 color-mix(in srgb,var(--accent) 40%,transparent) inset;
}
.messages-event-layout{
  flex:1 1 auto;
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(330px,.85fr);
  overflow:hidden;
}
.messages-event-editor{
  min-width:0;
  min-height:0;
  overflow-y:auto;
  padding:18px 20px 22px;
  border-right:1px solid var(--border);
  scrollbar-gutter:stable;
}
.messages-event-editor::-webkit-scrollbar{width:8px}
.messages-event-editor::-webkit-scrollbar-track{background:transparent}
.messages-event-editor::-webkit-scrollbar-thumb{
  border:2px solid transparent;
  border-radius:999px;
  background:var(--nord-scrollbar-thumb);
  background-clip:padding-box;
}
.messages-event-panel{animation:messagesTabIn .14s ease}
.messages-event-panel[hidden]{display:none!important}
@keyframes messagesTabIn{from{opacity:.55;transform:translateY(3px)}to{opacity:1;transform:none}}
.messages-panel-heading{
  display:flex;
  align-items:flex-start;
  gap:11px;
  margin-bottom:16px;
  padding-bottom:14px;
  border-bottom:1px solid var(--border);
}
.messages-panel-icon{
  width:36px;height:36px;
  display:grid;place-items:center;
  flex:0 0 36px;
  border-radius:10px;
  background:var(--accent-soft);
  color:var(--accent);
  font-size:11px;
}
.messages-panel-heading strong{display:block;font-size:13px}
.messages-panel-heading small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:10px;
  line-height:1.45;
}
.messages-option-card{
  min-width:0;
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:13px 14px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface-2);
  cursor:pointer;
  transition:.15s ease;
}
.messages-option-card:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}
.messages-option-card:has(input:checked){
  border-color:color-mix(in srgb,var(--accent) 36%,var(--border));
  background:color-mix(in srgb,var(--accent) 5%,var(--surface-2));
}
.messages-option-card.wide{margin-bottom:15px}
.messages-option-card>div{min-width:0}
.messages-option-card strong{display:block;font-size:11.5px}
.messages-option-card small{display:block;margin-top:4px;color:var(--muted);font-size:9.5px;line-height:1.4}
.messages-ios-switch{
  position:relative;
  width:50px;
  height:29px;
  flex:0 0 50px;
  display:inline-block;
}
.messages-ios-switch input{
  position:absolute;
  width:1px!important;
  height:1px!important;
  opacity:0;
  pointer-events:none;
}
.messages-ios-switch>span{
  position:absolute;
  inset:0;
  border:1px solid color-mix(in srgb,var(--border) 82%,transparent);
  border-radius:999px;
  background:color-mix(in srgb,var(--muted) 22%,var(--surface));
  transition:.18s ease;
}
.messages-ios-switch>span:before{
  content:"";
  position:absolute;
  left:3px;top:3px;
  width:21px;height:21px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 7px rgba(0,0,0,.3);
  transition:transform .18s ease;
}
.messages-ios-switch input:checked+span{
  border-color:var(--accent);
  background:var(--accent);
}
.messages-ios-switch input:checked+span:before{transform:translateX(21px)}
.messages-ios-switch input:focus-visible+span{box-shadow:0 0 0 3px var(--accent-soft)}
.messages-options-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin-top:13px;
}
.messages-event-fields{
  display:grid;
  grid-template-columns:minmax(0,1fr) 94px;
  gap:10px;
  margin-top:14px;
}
.messages-event-fields .span-2{grid-column:1/-1}
.messages-color-input{
  min-height:43px!important;
  padding:5px!important;
  cursor:pointer;
}
.messages-variable-groups{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:8px 0 12px;
}
.messages-variable-group>span{
  display:block;
  margin-bottom:6px;
  color:var(--muted);
  font-size:8px;
  font-weight:900;
  letter-spacing:.07em;
}
.messages-variable-group>div{display:flex;flex-wrap:wrap;gap:5px}
.messages-variable-chip{
  min-height:29px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 9px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--surface-2);
  color:var(--muted);
  cursor:pointer;
  transition:.14s ease;
}
.messages-variable-chip code{font-size:9.5px;color:inherit}
.messages-variable-chip i{font-size:7px;color:var(--accent)}
.messages-variable-chip:hover{
  border-color:color-mix(in srgb,var(--accent) 35%,var(--border));
  background:var(--accent-soft);
  color:var(--text);
}
.messages-event-textarea{
  width:100%;
  min-height:225px;
  resize:vertical;
}
.messages-delete-after{margin-top:15px}
.messages-number-field{
  display:grid;
  grid-template-columns:minmax(0,170px) auto;
  align-items:center;
  gap:9px;
}
.messages-number-field span{color:var(--muted);font-size:10px;font-weight:800}
.messages-event-preview{
  min-width:0;
  min-height:0;
  overflow-y:auto;
  padding:18px;
  background:color-mix(in srgb,var(--surface-2) 65%,var(--surface));
}
.messages-preview-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}
.messages-preview-head span:first-child{display:block;font-size:9px;font-weight:900;text-transform:uppercase;color:var(--muted)}
.messages-preview-head small{display:block;margin-top:3px;color:var(--muted);font-size:8.5px}
.messages-preview-live{
  display:inline-flex!important;
  align-items:center;
  gap:5px;
  padding:4px 7px;
  border:1px solid rgba(34,197,94,.22);
  border-radius:999px;
  background:rgba(34,197,94,.06);
  color:#22c55e!important;
  font-size:7.5px!important;
  font-weight:900!important;
}
.messages-preview-live i{font-size:5px}
.messages-event-discord{
  min-height:270px;
  background:#1e1f22;
}
.messages-event-discord .messages-discord-message>div{min-width:0;flex:1}
.messages-preview-content-mention{
  margin:5px 0 4px;
  color:#c9cdfb;
  font-size:11px;
}
.messages-preview-plain{
  margin:5px 0 0;
  color:#dbdee1;
  font-size:11px;
  line-height:1.55;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.messages-preview-embed{
  --message-embed-color:#5865F2;
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  margin-top:7px;
  padding:11px 12px 11px 15px;
  border-radius:4px;
  background:#2b2d31;
  overflow:hidden;
}
.messages-preview-embed:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:4px;
  background:var(--message-embed-color);
}
.messages-preview-embed-copy{min-width:0}
.messages-preview-embed-copy strong{display:block;color:#f2f3f5;font-size:11px;line-height:1.35}
.messages-preview-embed-copy p{
  margin:5px 0 0;
  color:#dbdee1;
  font-size:10.5px;
  line-height:1.5;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.messages-preview-embed-copy small{display:block;margin-top:9px;color:#b5bac1;font-size:8.5px;line-height:1.4}
.messages-preview-thumbnail{
  width:44px;height:44px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#111827;
  color:#8ea1ff;
  font-size:12px;
  font-weight:900;
}
.messages-preview-timestamp{color:#949ba4}
.messages-event-actions{flex:0 0 auto}
.messages-actions-spacer{flex:1 1 auto}
#messageEventHeaderIcon.boost{background:rgba(236,72,153,.09);color:#f472b6;border-color:rgba(236,72,153,.2)}
#messageEventHeaderIcon.promotion{background:rgba(14,165,233,.09);color:#38bdf8;border-color:rgba(14,165,233,.2)}

@media(max-width:900px){
  .messages-event-modal{width:calc(100vw - 18px);height:92dvh;max-height:92dvh}
  .messages-event-layout{grid-template-columns:1fr}
  .messages-event-editor{border-right:0;border-bottom:1px solid var(--border)}
  .messages-event-preview{display:none}
}
@media(max-width:620px){
  .messages-event-tabs{padding:0 8px;gap:2px;overflow-x:auto}
  .messages-event-tab{padding:0 9px;font-size:9px}
  .messages-event-tab i{display:none}
  .messages-event-editor{padding:14px}
  .messages-options-grid{grid-template-columns:1fr}
  .messages-event-fields{grid-template-columns:1fr}
  .messages-event-fields .span-2{grid-column:auto}
  .messages-event-actions{padding:10px!important}
  .messages-event-actions .btn{min-width:0}
  #messageEventReset span{display:none}
}


/* v0.9.1 automatic message media library */
.messages-media-slots{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
}
.messages-media-slot{
  min-width:0;
  padding:14px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface-2);
}
.messages-media-slot-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:11px;
}
.messages-media-slot-head strong{display:block;font-size:12px}
.messages-media-slot-head small{display:block;margin-top:4px;color:var(--muted);font-size:9.5px;line-height:1.42}
.messages-media-slot-badge{
  width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;
  border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));
  border-radius:10px;background:var(--accent-soft);color:var(--accent);font-size:10px;
}
.messages-media-slot-badge.logo{color:#f472b6;background:rgba(236,72,153,.08);border-color:rgba(236,72,153,.2)}
.messages-media-selected{
  min-height:78px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:11px;
  padding:10px;
  border:1px dashed color-mix(in srgb,var(--border) 86%,transparent);
  border-radius:11px;
  background:var(--surface);
}
.messages-media-selected>img{
  width:54px;height:54px;display:block;object-fit:cover;
  border:1px solid var(--border);border-radius:10px;background:#0b1019;
}
.messages-media-selected>div{min-width:0}
.messages-media-selected strong{
  display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px
}
.messages-media-selected small{
  display:block;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  color:var(--muted);font-size:8.5px
}
.messages-media-empty-icon{
  width:54px;height:54px;display:grid;place-items:center;
  border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:13px;
}
.messages-media-slot-actions{
  display:flex;align-items:center;gap:7px;margin:9px 0 12px;
}
.messages-media-slot-actions .btn{flex:1;min-width:0;font-size:9.5px}
.btn.danger-soft{border-color:rgba(239,68,68,.2);background:rgba(239,68,68,.04);color:#f87171}
.btn.danger-soft:hover{border-color:rgba(239,68,68,.35);background:rgba(239,68,68,.08)}

#messageMediaLibraryModal{z-index:2147482300}
.message-media-library-modal{
  width:min(1120px,calc(100vw - 30px));
  height:min(820px,calc(100dvh - 30px));
  max-height:calc(100dvh - 30px);
  display:flex;flex-direction:column;overflow:hidden;
}
.message-media-library-body{
  flex:1 1 auto;min-height:0;overflow-y:auto;
  padding:16px 18px 20px;scrollbar-gutter:stable;
}
.message-media-library-body::-webkit-scrollbar{width:8px}
.message-media-library-body::-webkit-scrollbar-track{background:transparent}
.message-media-library-body::-webkit-scrollbar-thumb{
  border:2px solid transparent;border-radius:999px;background:var(--nord-scrollbar-thumb);background-clip:padding-box;
}
.message-media-storage{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(180px,.65fr);
  grid-template-areas:"copy meter" "hint meter";
  align-items:center;
  gap:4px 14px;
  margin-bottom:12px;padding:12px 13px;
  border:1px solid var(--border);border-radius:12px;background:var(--surface-2);
}
.message-media-storage-copy{grid-area:copy}
.message-media-storage-copy span{display:block;color:var(--muted);font-size:8.5px;font-weight:900;text-transform:uppercase}
.message-media-storage-copy strong{display:block;margin-top:4px;font-size:12px}
.message-media-storage>small{grid-area:hint;color:var(--muted);font-size:8.5px}
.message-media-storage-meter{
  grid-area:meter;height:9px;border:1px solid var(--border);border-radius:999px;background:var(--surface);overflow:hidden;
}
.message-media-storage-meter i{
  display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#8b5cf6);transition:width .2s ease;
}

.message-media-upload{
  margin-bottom:13px;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2);
}
.message-media-dropzone{
  width:100%;min-height:72px;display:flex;align-items:center;gap:12px;padding:11px 13px;
  border:1px dashed color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:11px;
  background:color-mix(in srgb,var(--accent) 3%,var(--surface));color:var(--text);font:inherit;text-align:left;cursor:pointer;
}
.message-media-dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}
.message-media-dropzone>.message-media-dropzone-icon{
  width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:11px;background:var(--accent-soft);color:var(--accent)
}
.message-media-dropzone strong{display:block;font-size:11px}
.message-media-dropzone small{display:block;margin-top:4px;color:var(--muted);font-size:9px}
.message-media-upload-fields{
  display:grid;grid-template-columns:minmax(0,1.4fr) minmax(160px,.7fr) auto;align-items:end;gap:9px;margin-top:10px;
}
.message-media-upload-fields .form-group{margin:0}
.message-media-upload-fields .btn{min-height:42px}
.message-media-upload-progress{
  position:relative;height:25px;margin-top:9px;border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden;
}
.message-media-upload-progress i{
  position:absolute;inset:0 auto 0 0;width:0;background:var(--accent-soft);transition:width .12s linear
}
.message-media-upload-progress span{
  position:relative;z-index:1;height:100%;display:grid;place-items:center;color:var(--text);font-size:8.5px;font-weight:900
}

.message-media-library-toolbar{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);align-items:center;gap:10px;margin-bottom:11px;
}
.message-media-filters{display:flex;align-items:center;gap:5px;overflow-x:auto;padding-bottom:1px}
.message-media-filters button{
  min-height:34px;padding:0 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);
  color:var(--muted);font:inherit;font-size:9px;font-weight:850;white-space:nowrap;cursor:pointer
}
.message-media-filters button.active{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:var(--accent-soft);color:var(--accent)}
.message-media-search{position:relative}
.message-media-search i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:9px;pointer-events:none}
.message-media-search .input{padding-left:32px}

.message-media-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;align-content:start;
}
.message-media-asset{
  min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);transition:.15s ease
}
.message-media-asset:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));transform:translateY(-1px)}
.message-media-asset.selected{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 38%,transparent)}
.message-media-asset-preview{position:relative;aspect-ratio:16/10;background:#0b1019;overflow:hidden}
.message-media-asset-preview img{width:100%;height:100%;display:block;object-fit:cover}
.message-media-asset-preview span{
  position:absolute;left:7px;bottom:7px;padding:3px 6px;border:1px solid rgba(255,255,255,.12);border-radius:999px;
  background:rgba(8,12,20,.82);color:#dbe4f4;font-size:7.5px;font-weight:900;text-transform:uppercase
}
.message-media-asset-copy{padding:9px 9px 5px;min-width:0}
.message-media-asset-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px}
.message-media-asset-copy small{display:block;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:8px}
.message-media-asset-actions{display:flex;gap:5px;padding:7px 9px 9px}
.message-media-asset-actions .btn:first-child{flex:1}
.message-media-asset-actions .btn{min-height:32px;font-size:8.5px}
.message-media-library-empty{
  grid-column:1/-1;min-height:180px;display:grid;place-items:center;align-content:center;gap:7px;
  border:1px dashed var(--border);border-radius:13px;background:var(--surface-2);text-align:center
}
.message-media-library-empty i{font-size:24px;color:var(--muted)}
.message-media-library-empty strong{font-size:12px}
.message-media-library-empty small{color:var(--muted);font-size:9.5px}
.messages-library-selection-hint{color:var(--muted);font-size:9.5px;font-weight:750}

.messages-preview-media-thumbnail{
  width:44px;height:44px;display:block;object-fit:cover;border-radius:8px;background:#111827;
}
.messages-preview-embed-author{
  display:flex;align-items:center;gap:6px;margin-bottom:6px;color:#f2f3f5;font-size:9px;font-weight:800
}
.messages-preview-embed-author img{width:20px;height:20px;display:block;object-fit:cover;border-radius:50%}
.messages-preview-embed-image{
  width:100%;max-height:220px;display:block;object-fit:cover;margin-top:9px;border-radius:4px;background:#111827
}
.messages-preview-embed-footer{display:flex!important;align-items:center;gap:6px}
.messages-preview-footer-icon{width:18px;height:18px;display:block;object-fit:cover;border-radius:50%}
.messages-preview-attachments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:8px}
.messages-preview-attachments img{
  width:100%;max-height:160px;display:block;object-fit:cover;border-radius:6px;background:#111827
}

@media(max-width:980px){
  .messages-media-slots{grid-template-columns:1fr}
  .message-media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .message-media-library-modal{width:calc(100vw - 14px);height:94dvh;max-height:94dvh}
  .message-media-storage{grid-template-columns:1fr;grid-template-areas:"copy" "meter" "hint"}
  .message-media-upload-fields{grid-template-columns:1fr}
  .message-media-library-toolbar{grid-template-columns:1fr}
  .message-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){
  .message-media-grid{grid-template-columns:1fr}
}


/* v0.9.1 clean media library + compact message media layout */
#page-messages .messages-event-panel[data-message-panel="media"] .messages-media-slots{
  grid-template-columns:1fr;
  gap:9px;
}
#page-messages .messages-event-panel[data-message-panel="media"] .messages-media-slot{
  padding:12px;
  border-radius:12px;
}
#page-messages .messages-event-panel[data-message-panel="media"] .messages-media-slot-head{
  margin-bottom:9px;
}
#page-messages .messages-event-panel[data-message-panel="media"] .messages-media-selected{
  min-height:64px;
  grid-template-columns:46px minmax(0,1fr);
  gap:10px;
  padding:8px 9px;
}
#page-messages .messages-event-panel[data-message-panel="media"] .messages-media-selected>img,
#page-messages .messages-event-panel[data-message-panel="media"] .messages-media-empty-icon{
  width:46px;height:46px;border-radius:9px;
}
#page-messages .messages-event-panel[data-message-panel="media"] .messages-media-slot-actions{
  margin:7px 0 10px;
}
#page-messages .messages-event-panel[data-message-panel="media"] .messages-media-slot-actions .btn{
  min-height:36px;
}
#page-messages .messages-event-panel[data-message-panel="media"] .messages-modal-note{
  margin-top:10px;
}

/* Library is now selection-first. Upload lives in its own modal. */
.message-media-library-modal{
  width:min(1080px,calc(100vw - 28px));
  height:min(760px,calc(100dvh - 30px));
  max-height:calc(100dvh - 30px);
}
.message-media-library-body.clean{
  padding:14px 18px 18px;
}
.message-media-storage-card{
  margin-bottom:13px;
  padding:13px 14px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface-2);
}
.message-media-storage-top{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
}
.message-media-storage-top>div{min-width:0}
.message-media-storage-top span:first-child{
  display:block;
  color:var(--muted);
  font-size:8.5px;
  font-weight:900;
  letter-spacing:.065em;
  text-transform:uppercase;
}
.message-media-storage-top strong{
  display:block;
  margin-top:4px;
  font-size:15px;
  letter-spacing:-.015em;
}
.message-media-storage-percent{
  flex:0 0 auto;
  color:var(--text);
  font-size:12px!important;
  font-weight:900!important;
}
.message-media-storage-meter.premium{
  height:7px;
  margin-top:10px;
}
.message-media-storage-meta{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:9px;
  flex-wrap:wrap;
}
.message-media-storage-meta>span{
  min-height:25px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:0 8px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface);
  color:var(--muted);
  font-size:8.5px;
  font-weight:750;
}
.message-media-storage-meta i{color:var(--accent);font-size:8px}
.message-media-storage-meta b{color:var(--text);font-size:8.5px}

.message-media-library-actions-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  margin-bottom:11px;
}
.message-media-library-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.message-media-library-actions .message-media-search{
  width:min(300px,34vw);
}
.message-media-new-upload{
  min-height:38px;
  white-space:nowrap;
}

.message-media-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.message-media-asset{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:0;
  border-radius:11px;
}
.message-media-asset-select{
  display:block;
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.message-media-asset-preview{
  aspect-ratio:16/9;
}
.message-media-asset-preview>i{
  position:absolute;
  right:7px;
  top:7px;
  width:23px;height:23px;
  display:grid;place-items:center;
  border-radius:50%;
  background:var(--accent);
  color:white;
  box-shadow:0 4px 15px rgba(0,0,0,.25);
  font-size:8px;
}
.message-media-asset-copy{
  padding:8px 9px 6px;
}
.message-media-asset-actions{
  margin-top:auto;
  padding:0 9px 9px;
}
.message-media-asset-actions .btn{
  width:100%;
}
.message-media-asset.selected{
  border-color:var(--accent);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent);
}
.message-media-library-empty{
  min-height:250px;
}

/* Dedicated upload modal */
#messageMediaUploadModal{z-index:2147482350}
.message-media-upload-modal{
  width:min(620px,calc(100vw - 28px));
  max-height:calc(100dvh - 32px);
  overflow:hidden;
}
.message-media-upload-modal-body{
  padding:17px 18px 19px;
}
.message-media-dropzone.premium{
  position:relative;
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:10px;
  padding:20px;
  text-align:center;
  border-radius:14px;
}
.message-media-dropzone.premium .message-media-dropzone-icon{
  width:48px;height:48px;
  display:grid;place-items:center;
  border-radius:13px;
  background:var(--accent-soft);
  color:var(--accent);
  font-size:15px;
}
.message-media-dropzone.premium strong{
  font-size:12px;
}
.message-media-dropzone.premium.dragging{
  border-color:var(--accent);
  background:var(--accent-soft);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 34%,transparent);
}
.message-media-dropzone.premium.has-file{
  border-style:solid;
  border-color:color-mix(in srgb,var(--accent) 40%,var(--border));
}
.message-media-dropzone.premium small{
  max-width:420px;
  margin-top:4px;
  font-size:9.5px;
  line-height:1.5;
}
.message-media-file-pill{
  width:min(100%,360px);
  height:auto;
  min-height:46px;
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  padding:7px 11px;
  border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));
  border-radius:11px;
  background:var(--accent-soft);
  color:var(--text);
  text-align:left;
  box-sizing:border-box;
}
.message-media-file-pill>i{
  width:30px;height:30px;
  display:grid;place-items:center;
  flex:0 0 30px;
  border-radius:8px;
  background:color-mix(in srgb,var(--accent) 12%,var(--surface));
  color:var(--accent);
  font-size:11px;
}
.message-media-file-copy{
  min-width:0;
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
}
.message-media-file-copy strong{
  min-width:0;
  flex:1 1 auto;
  overflow:hidden;
  color:var(--text);
  font-size:9.5px;
  font-weight:850;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.message-media-file-copy small{
  flex:0 0 auto;
  margin:0!important;
  color:var(--muted);
  font-size:8.5px!important;
  line-height:1!important;
  white-space:nowrap;
}
.message-media-upload-form{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(170px,.7fr);
  gap:10px;
  margin-top:13px;
}
.message-media-upload-form .form-group{margin:0}
.message-media-upload-modal .message-media-upload-progress{
  margin-top:12px;
}

@media(max-width:900px){
  .message-media-library-actions-row{grid-template-columns:1fr}
  .message-media-library-actions{justify-content:stretch}
  .message-media-library-actions .message-media-search{width:auto;flex:1}
  .message-media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:660px){
  .message-media-library-modal{width:calc(100vw - 14px);height:94dvh;max-height:94dvh}
  .message-media-library-actions{display:grid;grid-template-columns:1fr}
  .message-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .message-media-upload-form{grid-template-columns:1fr}
  .message-media-file-pill{width:100%}
  .message-media-file-copy{grid-template-columns:minmax(0,1fr)}
  .message-media-file-copy small{margin-top:2px!important}
}
@media(max-width:420px){
  .message-media-grid{grid-template-columns:1fr}
}


/* v0.9.1 clean media modal chrome */
#messageMediaLibraryModal .message-media-library-modal,
#messageMediaUploadModal .message-media-upload-modal{
  background:var(--surface);
}

#messageMediaLibraryModal .messages-modal-head,
#messageMediaUploadModal .messages-modal-head{
  min-height:auto;
  padding:18px 18px 10px;
  margin:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

#messageMediaLibraryModal .message-media-library-body.clean{
  padding-top:10px;
}

#messageMediaLibraryModal .messages-modal-actions,
#messageMediaUploadModal .messages-modal-actions{
  min-height:auto;
  padding:10px 18px 16px;
  margin:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

#messageMediaLibraryModal .messages-library-selection-hint{
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

#messageMediaLibraryModal .modal-close,
#messageMediaUploadModal .modal-close{
  background:transparent;
  box-shadow:none;
}

#messageMediaLibraryModal .modal-close:hover,
#messageMediaUploadModal .modal-close:hover{
  background:var(--surface-2);
}


/* v0.9.1 clean automatic message modal chrome */
#messagesEventModal .messages-event-modal{
  background:var(--surface);
}

#messagesEventModal .messages-modal-head{
  min-height:auto;
  padding:18px 18px 10px;
  margin:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

#messagesEventModal .messages-event-tabs{
  background:transparent;
}

#messagesEventModal .messages-modal-actions{
  min-height:auto;
  padding:10px 18px 16px;
  margin:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

#messagesEventModal .modal-close{
  background:transparent;
  box-shadow:none;
}

#messagesEventModal .modal-close:hover{
  background:var(--surface-2);
}



/* FiveM Heartbeat workspace */
.fivem-heartbeat-page{
  min-height:calc(100dvh - 118px);
  display:none;
  flex-direction:column;
  padding-bottom:18px;
}
.fivem-heartbeat-page.active{
  display:flex;
}
#page-fivem:not(.active){display:none!important}
.fivem-page-head{align-items:flex-start;flex:0 0 auto}
.fivem-head-actions{align-items:center}
.fivem-live-shell{
  min-height:0;
  margin-top:8px;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
}
.fivem-live-shell>.fivem-live-card{flex:0 0 auto}
.fivem-live-shell>.fivem-empty-live{flex:1 1 auto}
.fivem-live-card{
  position:relative;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:18px;
  background:var(--surface);
  box-shadow:0 18px 48px rgba(0,0,0,.12);
}
.fivem-live-card:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,var(--accent),transparent 72%);
}
.fivem-live-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 20px 16px;
  border-bottom:1px solid var(--border);
}
.fivem-live-identity{display:flex;align-items:center;gap:13px;min-width:0}
.fivem-live-icon{
  width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px;
  border:1px solid rgba(115,128,255,.22);
  border-radius:13px;
  background:rgba(115,128,255,.10);
  color:var(--accent);
  font-size:16px;
}
.fivem-live-copy{min-width:0}
.fivem-live-copy span,.fivem-live-copy strong,.fivem-live-copy small{display:block}
.fivem-live-copy span{
  color:var(--muted);
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.fivem-live-copy strong{
  margin-top:4px;
  color:var(--text);
  font-size:17px;
  line-height:1.25;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fivem-live-copy small{
  margin-top:5px;
  color:var(--muted);
  font-size:10.5px;
  line-height:1.4;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fivem-live-status{
  min-height:30px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 11px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface-2);
  color:var(--muted);
  font-size:9px;
  font-weight:900;
  white-space:nowrap;
}
.fivem-live-status i{font-size:8px}
.fivem-live-status.online{
  border-color:rgba(34,197,94,.24);
  background:rgba(34,197,94,.07);
  color:#22c55e;
}
.fivem-live-status.offline{
  border-color:rgba(239,68,68,.20);
  background:rgba(239,68,68,.06);
  color:#ef4444;
}
.fivem-live-status.waiting{
  border-color:rgba(245,158,11,.24);
  background:rgba(245,158,11,.07);
  color:#f59e0b;
}
.fivem-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  padding:14px 20px 18px;
}
.fivem-metric{
  min-width:0;
  display:flex;
  align-items:center;
  gap:11px;
  padding:13px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface-2);
}
.fivem-metric-icon{
  width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;
  border-radius:10px;
  background:var(--surface);
  color:var(--accent);
  font-size:12px;
}
.fivem-metric-copy{min-width:0}
.fivem-metric-copy span,.fivem-metric-copy strong,.fivem-metric-copy small{display:block}
.fivem-metric-copy span{color:var(--muted);font-size:9px;font-weight:800}
.fivem-metric-copy strong{
  margin-top:3px;
  color:var(--text);
  font-size:15px;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fivem-metric-copy small{
  margin-top:3px;
  color:var(--muted);
  font-size:8.5px;
  line-height:1.35;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fivem-server-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 20px 14px;
  border-top:1px solid var(--border);
  background:rgba(255,255,255,.01);
}
.fivem-context-inline{
  min-width:0;
  display:flex;
  align-items:center;
  gap:16px;
  color:var(--muted);
  font-size:8.5px;
}
.fivem-context-inline span{display:flex;align-items:center;gap:6px;min-width:0}
.fivem-context-inline i{color:var(--accent)}
.fivem-context-inline strong{
  max-width:210px;
  overflow:hidden;
  color:var(--text-2);
  font:9px ui-monospace,SFMono-Regular,Menlo,monospace;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.fivem-server-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.fivem-server-actions .btn{min-height:34px}
.fivem-empty-live{
  min-height:420px;
  height:100%;
  display:grid;
  place-items:center;
  align-content:center;
  text-align:center;
  padding:30px;
  border:1px dashed var(--border-strong);
  border-radius:18px;
  background:var(--surface);
  color:var(--muted);
}
.fivem-empty-live .fivem-empty-icon{
  width:52px;height:52px;display:grid;place-items:center;
  margin-bottom:12px;
  border-radius:14px;
  background:rgba(115,128,255,.10);
  color:var(--accent);
  font-size:19px;
}
.fivem-empty-live strong{color:var(--text);font-size:14px}
.fivem-empty-live small{max-width:460px;margin-top:6px;font-size:10.5px;line-height:1.5}
.fivem-empty-manage .btn{margin-top:16px}

/* FiveM management modals */
.fivem-server-modal{width:min(720px,calc(100vw - 28px));max-height:calc(100dvh - 34px);overflow:hidden}
.fivem-integration-modal{width:min(900px,calc(100vw - 28px));max-height:calc(100dvh - 34px);overflow:hidden}
.fivem-modal-head{align-items:flex-start}
.fivem-modal-title{display:flex;align-items:flex-start;gap:12px;min-width:0}
.fivem-modal-icon{
  width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px;
  border:1px solid rgba(115,128,255,.2);
  border-radius:13px;
  background:rgba(115,128,255,.09);
  color:var(--accent);
  font-size:15px;
}
.fivem-modal-kicker{
  display:block;
  margin:0 0 4px;
  color:var(--accent);
  font-size:8.5px;
  font-weight:950;
  letter-spacing:.1em;
}
.fivem-modal-head h3{margin:0;font-size:18px}
.fivem-modal-head .modal-help{margin-top:5px;font-size:10.5px;line-height:1.45}
.fivem-modal-body{padding:4px 18px 18px;overflow-y:auto}
.fivem-context-note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-bottom:14px;
  padding:11px 12px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--surface-2);
}
.fivem-context-note>i{margin-top:2px;color:var(--accent)}
.fivem-context-note strong,.fivem-context-note small{display:block}
.fivem-context-note strong{font-size:10.5px}
.fivem-context-note small{margin-top:3px;color:var(--muted);font-size:9.5px}
.fivem-modal-body .form-grid{grid-template-columns:1fr 1fr;gap:12px}
.fivem-modal-body .form-group.full{grid-column:1/-1}
.fivem-modal-body .form-group label{font-size:10.5px}
.fivem-modal-body .form-group .help{font-size:9px;line-height:1.4}
.fivem-pairing-result{
  margin-top:14px;
  overflow:hidden;
  border:1px solid rgba(115,128,255,.24);
  border-radius:12px;
  background:rgba(115,128,255,.045);
}
.fivem-pairing-result-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 12px;
  border-bottom:1px solid var(--border);
}
.fivem-pairing-result-head span,.fivem-pairing-result-head strong{display:block}
.fivem-pairing-result-head span{
  color:var(--muted);
  font-size:9px;
  font-weight:850;
}
.fivem-pairing-result-head strong{
  margin-top:3px;
  color:var(--text);
  font-size:10px;
}
.fivem-pairing-key{
  min-height:auto;
  padding:13px 14px;
  color:#d9e1ff;
  font-size:11px;
  letter-spacing:.02em;
  white-space:pre-wrap;
  word-break:break-all;
}
.fivem-pairing-result>small{
  display:block;
  padding:9px 12px 11px;
  border-top:1px solid var(--border);
  color:var(--muted);
  font-size:9px;
}
.fivem-modal-note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-top:14px;
  padding:12px;
  border:1px solid rgba(115,128,255,.18);
  border-radius:11px;
  background:rgba(115,128,255,.045);
}
.fivem-modal-note>span{
  width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;
  border-radius:9px;
  background:rgba(115,128,255,.09);
  color:var(--accent);
}
.fivem-modal-note strong,.fivem-modal-note small{display:block}
.fivem-modal-note strong{font-size:10.5px}
.fivem-modal-note small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.45}
.fivem-modal-actions{
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  padding:16px 18px 18px;
  margin:0;
  border-top:1px solid var(--border);
  background:var(--surface);
}
.fivem-modal-actions .btn{
  min-height:38px;
}
.fivem-integration-body{
  display:grid;
  gap:12px;
  max-height:calc(100dvh - 190px);
  padding:4px 18px 18px;
  overflow-y:auto;
}
.fivem-integration-section{
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface-2);
}
.fivem-integration-section-head{
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:0 12px;
  border-bottom:1px solid var(--border);
}
.fivem-integration-section-head>div{display:flex;align-items:center;gap:9px}
.fivem-integration-section-head strong{font-size:10.5px}
.fivem-method,.fivem-json-label{
  min-height:22px;
  display:inline-flex;
  align-items:center;
  padding:0 7px;
  border:1px solid rgba(115,128,255,.24);
  border-radius:7px;
  background:rgba(115,128,255,.08);
  color:var(--accent);
  font-size:8px;
  font-weight:950;
  letter-spacing:.05em;
}
.fivem-icon-button{
  width:30px;height:30px;display:grid;place-items:center;
  border:1px solid transparent;
  border-radius:8px;
  background:transparent;
  color:var(--muted);
  cursor:pointer;
  transition:.14s;
}
.fivem-icon-button:hover{border-color:var(--border);background:var(--surface);color:var(--text)}
.fivem-code-block{
  min-height:72px;
  margin:0;
  padding:14px 16px;
  overflow:auto;
  border:0;
  border-radius:0;
  background:#090e16;
  color:#c9d4ef;
  font:10px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  white-space:pre-wrap;
  word-break:break-word;
}
.fivem-payload-code{min-height:190px}
.fivem-auth-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:12px 16px;
  border-top:1px solid var(--border);
}
.fivem-auth-row>span{display:flex;align-items:center;gap:7px;color:var(--text);font-size:9.5px}
.fivem-auth-row>span i{color:var(--accent)}
.fivem-auth-row small{max-width:66%;color:var(--muted);font-size:9px;line-height:1.45;text-align:right}
.fivem-security-note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:0;
  padding:12px;
  border:1px solid rgba(34,197,94,.17);
  border-radius:11px;
  background:rgba(34,197,94,.04);
}
.fivem-security-note>i{margin-top:2px;color:#22c55e}
.fivem-security-note strong,.fivem-security-note small{display:block}
.fivem-security-note strong{font-size:10px}
.fivem-security-note small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.45}

@media(max-width:1050px){
  .fivem-metrics{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .fivem-head-actions{width:100%;display:grid;grid-template-columns:1fr 1fr 42px}
  .fivem-head-actions .btn{justify-content:center}
  .fivem-live-head{align-items:flex-start;flex-direction:column}
  .fivem-metrics{grid-template-columns:1fr}
  .fivem-server-footer{align-items:stretch;flex-direction:column}
  .fivem-context-inline{align-items:flex-start;flex-direction:column;gap:7px}
  .fivem-server-actions{display:grid;grid-template-columns:1fr 1fr 40px}
  .fivem-modal-body .form-grid{grid-template-columns:1fr}
  .fivem-modal-body .form-group.full{grid-column:auto}
  .fivem-auth-row{flex-direction:column}
  .fivem-auth-row small{max-width:none;text-align:left}
}



/* v0.9.2 Custom Bots manager tabs + global plan quota */
.custom-bots-overview{grid-template-columns:repeat(5,minmax(0,1fr))}
.custom-bots-quota-stat{border-color:rgba(111,126,255,.22)}
.custom-bot-manage-tabs{display:flex;align-items:center;gap:7px;margin:0 0 12px;padding:6px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}
.custom-bot-manage-tab{height:36px;min-width:0;flex:1;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:9.5px;font-weight:850;cursor:pointer;transition:.15s ease}
.custom-bot-manage-tab i{font-size:9px}
.custom-bot-manage-tab:hover{background:var(--surface);color:var(--text-2)}
.custom-bot-manage-tab.active{border-color:rgba(111,126,255,.26);background:var(--accent-soft);color:var(--accent)}
.custom-bot-manage-panels{min-height:300px}
.custom-bot-manage-panel{display:none;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);padding:14px;gap:13px}
.custom-bot-manage-panel.active{display:grid}
.custom-bot-manage-panel .custom-bot-runtime-actions{margin-top:2px}
.plan-admin-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
#planMaxCustomBots+.field-help{display:block;margin-top:5px;color:var(--muted);font-size:8.5px;line-height:1.4}
@media(max-width:1380px){
  .custom-bots-overview{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .custom-bots-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .custom-bots-overview{grid-template-columns:1fr}
  .custom-bot-manage-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .custom-bot-manage-tab{width:100%}
  .plan-admin-stats{grid-template-columns:1fr 1fr}
}


/* History panels stretch to the remaining usable viewport height. */
#page-tickets.active,#page-announcements.active{display:flex;flex-direction:column;min-height:calc(100dvh - 115px)}
#page-tickets .ticket-history-card,#page-announcements .announcement-history-card{flex:1;min-height:clamp(360px,calc(100dvh - 345px),1600px);display:flex;flex-direction:column;min-width:0}
#page-tickets #ticketsTable,#page-announcements #announcementsList{flex:1;min-height:0;overflow-y:auto}
#page-tickets .ticket-empty,#page-announcements .announcement-empty{min-height:240px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}
#page-announcements .announcement-row-actions{display:flex;align-items:center;gap:7px;flex-shrink:0}
@media(max-width:760px){
  #page-tickets.active,#page-announcements.active{min-height:calc(100dvh - 90px)}
  #page-tickets .ticket-history-card,#page-announcements .announcement-history-card{min-height:350px}
  #page-announcements .announcement-row-actions{align-self:flex-end}
}


/* Preserve the original announcement card layout; actions alone float to the far right. */
#page-announcements .announcement-list{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;width:100%}
#page-announcements .announcement-row{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:14px;width:100%;min-height:118px;height:auto}
#page-announcements .announcement-row-accent{position:absolute;inset:0 auto 0 0;width:3px}
#page-announcements .announcement-row-main{grid-column:1;min-width:0;width:100%;overflow-wrap:normal;word-break:normal}
#page-announcements .announcement-row-title,#page-announcements .announcement-row-meta{min-width:0}
#page-announcements .announcement-row-actions{grid-column:2;justify-self:end;align-self:center;margin:0;display:flex;align-items:center;justify-content:flex-end;gap:8px}
#page-announcements .announcement-row-actions .btn{flex:0 0 auto}
#page-tickets #ticketsTable{display:flex;flex-direction:column;min-height:0;overflow:visible}
#page-tickets #ticketsTable>.ticket-empty{flex:1 1 auto;min-height:0;height:auto;align-self:stretch}
#page-tickets #ticketsTable>.ticket-grid{flex:1;min-height:0;overflow-y:auto}


/* Nord unified Windows-inspired startup loader */
#authBootScreen{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;background:var(--bg);color:var(--text);opacity:1;transition:opacity .28s ease,visibility .28s ease}
#authBootScreen.nord-loader-exit{opacity:0;pointer-events:none;visibility:hidden}
#authBootScreen .nord-modern-loader{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;width:min(440px,calc(100vw - 36px));padding:36px 32px 30px;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:0 20px 65px rgba(0,0,0,.12);text-align:center}
.nord-loader-brand{display:flex;align-items:center;gap:11px;text-align:left}
.nord-loader-brand .nord-logo{width:43px;height:43px;flex:0 0 43px;display:grid;place-items:center;border-radius:12px;background:var(--accent);color:#fff;font-size:19px;font-weight:900}
.nord-loader-brand strong{display:block;font-size:12px;letter-spacing:.13em;font-weight:900}
.nord-loader-brand small{display:block;margin-top:4px;color:var(--muted);font-size:10px}
.nord-loader-orbit{width:68px;height:68px;position:relative;animation:nord-loader-rotate 1.5s linear infinite}
.nord-loader-orbit span{position:absolute;top:50%;left:50%;width:7px;height:7px;margin:-3.5px;border-radius:50%;background:var(--accent);transform:rotate(calc(var(--dot) * 45deg)) translateY(-26px);opacity:calc(.2 + var(--dot) * .1)}
.nord-loader-orbit span:nth-child(1){--dot:0}.nord-loader-orbit span:nth-child(2){--dot:1}.nord-loader-orbit span:nth-child(3){--dot:2}.nord-loader-orbit span:nth-child(4){--dot:3}.nord-loader-orbit span:nth-child(5){--dot:4}.nord-loader-orbit span:nth-child(6){--dot:5}.nord-loader-orbit span:nth-child(7){--dot:6}.nord-loader-orbit span:nth-child(8){--dot:7}
@keyframes nord-loader-rotate{to{transform:rotate(360deg)}}
#authBootScreen .auth-boot-copy{display:flex;flex-direction:column;align-items:center;gap:8px}
#authBootScreen .auth-boot-copy strong{font-size:19px;letter-spacing:-.02em;font-weight:850}
#authBootScreen .auth-boot-copy span{font-size:12px;color:var(--muted);line-height:1.5}
.nord-loader-track{width:100%;height:4px;border-radius:99px;overflow:hidden;background:var(--surface-3)}
.nord-loader-track>span{display:block;width:34%;height:100%;border-radius:99px;background:var(--accent);animation:nord-loader-progress 1.5s ease-in-out infinite}
@keyframes nord-loader-progress{from{transform:translateX(-120%)}to{transform:translateX(310%)}}
#authBootScreen.nord-loader-error .nord-loader-orbit,#authBootScreen.nord-loader-error .nord-loader-track{display:none}
#authBootScreen.nord-loader-error #authBootRetry{display:inline-flex!important}
@media(prefers-reduced-motion:reduce){.nord-loader-orbit,.nord-loader-track>span{animation:none!important}#authBootScreen{transition:none}}


/* Minimal full-screen startup: one spinner, no card and no simulated progress. */
#authBootScreen{background:var(--bg,#f5f7fb)!important}
#authBootScreen .nord-modern-loader{width:min(540px,calc(100vw - 32px));padding:24px 18px;gap:28px;min-height:210px;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
#authBootScreen .nord-loader-brand,#authBootScreen .nord-loader-track{display:none!important}
#authBootScreen .nord-loader-orbit{width:76px;height:76px;animation:nord-loader-rotate 1.65s cubic-bezier(.42,0,.58,1) infinite}
#authBootScreen .nord-loader-orbit span{transform:rotate(calc(var(--dot) * 45deg)) translateY(-28px);width:7px;height:7px}
#authBootScreen .auth-boot-copy{gap:12px;min-height:69px;justify-content:flex-start}
#authBootScreen .auth-boot-copy strong{font-size:clamp(20px,3.2vw,24px);font-weight:800}
#authBootScreen .auth-boot-copy span{font-size:13px;line-height:1.5;max-width:390px;transition:opacity .18s ease}
#authBootScreen .auth-boot-copy span.nord-message-changing{opacity:0}
#authBootScreen .nord-loader-signature{position:absolute;bottom:max(25px,env(safe-area-inset-bottom));left:28px;color:var(--muted,#64748b);font-size:10px;font-weight:800;letter-spacing:.16em;opacity:.7}
#authBootScreen.nord-loader-error .nord-loader-orbit{display:none}
@media(max-width:520px){#authBootScreen .nord-loader-signature{left:20px;bottom:max(20px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){#authBootScreen .auth-boot-copy span{transition:none!important}}


/* Topbar 2.0: compact profile-first navigation. */
.nord-topbar .nord-legacy-topbar-action{display:none!important}
.nord-account-menu-wrap{position:relative;flex:0 0 auto;z-index:80}
.nord-account-trigger{display:flex;align-items:center;gap:10px;min-height:42px;max-width:230px;padding:5px 10px 5px 6px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.nord-account-trigger:hover,.nord-account-trigger[aria-expanded="true"]{border-color:var(--accent);background:var(--surface-2)}
.nord-account-trigger .user-avatar{flex:0 0 34px;width:34px;height:34px;border-radius:10px}
.nord-account-trigger-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.nord-account-trigger-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nord-account-trigger-copy small{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nord-account-trigger>i{margin-left:auto;font-size:10px;color:var(--muted)}
.nord-account-dropdown{position:absolute;right:0;top:calc(100% + 10px);width:min(315px,calc(100vw - 24px));padding:8px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 18px 50px rgba(15,23,42,.16);z-index:1000}
.nord-account-dropdown[hidden]{display:none!important}
.nord-account-dropdown-head{display:flex;flex-direction:column;gap:3px;padding:12px 12px 10px}
.nord-account-dropdown-head strong{font-size:13px}
.nord-account-dropdown-head small{color:var(--muted);font-size:11px}
.nord-account-dropdown-divider{height:1px;background:var(--border);margin:6px 5px}
.nord-account-dropdown>button,.nord-account-select-row,.nord-account-theme-row{box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;min-height:43px;padding:9px 11px;border:0;border-radius:10px;background:transparent;color:var(--text);font:inherit;font-size:12px;font-weight:650;text-align:left}
.nord-account-dropdown>button{cursor:pointer}
.nord-account-dropdown>button:hover{background:var(--surface-2)}
.nord-account-dropdown>button>i,.nord-account-select-row>i,.nord-account-theme-row>i{width:17px;color:var(--muted);text-align:center}
.nord-account-select-row select{margin-left:auto;max-width:130px;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);font:inherit;font-size:11px;padding:6px 8px;cursor:pointer}
.nord-account-theme-options{display:flex;gap:5px;margin-left:auto}
.nord-account-theme-options button{width:34px;height:30px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--muted);cursor:pointer}
.nord-account-theme-options button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}
.nord-account-dropdown>.nord-account-danger{color:var(--danger,#e05252)}
.nord-account-dropdown>.nord-account-danger>i{color:inherit}
@media(max-width:760px){.nord-account-trigger{padding:4px;border:0;background:transparent}.nord-account-trigger-copy,.nord-account-trigger>i{display:none}.nord-account-dropdown{right:0}}


/* Account avatar: prevent legacy user-avatar styles from collapsing the tile. */
.nord-topbar .nord-account-trigger .user-avatar{
  box-sizing:border-box!important;position:relative;display:grid!important;place-items:center!important;
  flex:0 0 36px!important;width:36px!important;height:36px!important;
  min-width:36px!important;min-height:36px!important;padding:0!important;margin:0!important;
  border-radius:11px!important;border:1px solid var(--border)!important;
  background:var(--accent-soft)!important;color:var(--accent)!important;
  font-size:14px!important;font-weight:800!important;line-height:1!important;
  text-align:center!important;overflow:hidden!important;
}
.nord-topbar .nord-account-trigger .user-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.nord-topbar .nord-account-trigger{display:flex;align-items:center;gap:11px;min-height:48px;padding:5px 10px 5px 6px}
.nord-topbar .nord-account-trigger-copy{display:flex;flex-direction:column;justify-content:center;min-width:0}
.nord-topbar #refreshBtn,.nord-topbar #nxTopbarRefresh{display:none!important}


/* Compact language selector: keep the label on one line. */
.nord-account-dropdown .nord-account-select-row{display:flex!important;flex-wrap:nowrap!important;gap:9px!important;min-width:0}
.nord-account-dropdown .nord-account-select-row>i{flex:0 0 17px}
.nord-account-dropdown .nord-account-select-row>span{flex:0 0 auto;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;min-width:max-content}
.nord-account-dropdown .nord-account-select-row>select{box-sizing:border-box;display:block;flex:0 1 122px!important;width:122px!important;max-width:122px!important;min-width:0!important;margin-left:auto!important;padding:6px 22px 6px 9px!important;text-overflow:ellipsis}


/* Nexus load failures occupy the full usable content area without changing normal feed grids. */
body.nord-nexus-active #page-hub .nx-grid:has(#nxMain .nx-load-error){
  width:100%!important;max-width:none!important;
  grid-template-columns:minmax(0,1fr)!important;gap:0!important;padding:0!important;
}
body.nord-nexus-active #page-hub .nx-grid:has(#nxMain .nx-load-error)>.nx-right{display:none!important}
body.nord-nexus-active #page-hub .nx-grid:has(#nxMain .nx-load-error)>.nx-main{
  grid-column:1!important;width:100%!important;max-width:none!important;
  min-height:calc(100dvh - 74px)!important;border-left:0!important;border-right:0!important;
}
body.nord-nexus-active #page-hub #nxMain>.nx-load-error{
  box-sizing:border-box;display:flex;align-items:center;justify-content:center;
  width:100%;min-height:calc(100dvh - 74px);padding:32px 20px;
}
body.nord-nexus-active #page-hub #nxMain>.nx-load-error>div{max-width:min(520px,100%);margin:auto;text-align:center}

/* Global account trigger: show avatar and dropdown only, never concatenate the
   account/community name with the current page heading (Dashboard/Nexus/etc). */
#appShell .nord-topbar #nordAccountTrigger .nord-account-trigger-copy{display:none!important}
#appShell .nord-topbar #nordAccountTrigger{max-width:none;gap:6px;justify-content:center}
#appShell .nord-topbar #nordAccountTrigger .user-avatar{flex-shrink:0}
