.nx-cards-page{min-height:75vh;padding:70px 25px}.nx-cards-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:35px}.nx-cards-head h1{font-size:40px;margin:5px 0}.nx-cards-head p{color:#777}.nx-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.nx-card-item{background:#fff;border:1px solid #e1dfd8;border-radius:17px;padding:20px;transition:.2s}.nx-card-item:hover{transform:translateY(-3px);box-shadow:0 15px 35px #1111}.nx-card-item-top{display:flex;flex-direction:column;gap:8px}.nx-card-item-top>span{align-self:start;background:#efffc7;padding:4px 8px;border-radius:12px;font-size:10px}.nx-card-item-top b{font-size:19px}.nx-card-item>p{color:#777;font-size:12px}.nx-card-item>div:last-child{display:flex;align-items:center;gap:12px;font-size:12px}.nx-card-item>div:last-child span{margin-left:auto;color:#888}.nx-card-item a{color:#6846ca}.nx-empty{background:#fff;border:1px dashed #ccc9c0;border-radius:20px;padding:65px;text-align:center}.nx-empty b{font-size:23px}.nx-empty p{color:#777}.nx-lock-note,.nx-credit-note{font-size:12px;line-height:1.8;padding:11px;border-radius:9px;background:#fff2d8;color:#6b4d0c}.nx-credit-note{background:#e4f8df;color:#285d23}.nx-buy-slug{display:block;text-align:center;border:1px solid #7653dd;color:#6844d0;padding:11px;border-radius:10px;font-weight:800}.nx-trial,.nx-onboarding{padding:12px 15px;border-radius:10px;margin-bottom:12px;background:#efffc7}.nx-onboarding{display:flex;flex-direction:column;background:#eee8ff}.nx-onboarding span{font-size:12px;color:#666;margin-top:4px}@media(max-width:800px){.nx-card-grid{grid-template-columns:1fr}.nx-cards-head{align-items:flex-start;flex-direction:column;gap:15px}.nx-cards-head h1{font-size:32px}.nx-empty{padding:40px 20px}}
.nx-capacity-note{display:flex;align-items:center;gap:12px;background:#fff2d8;color:#66490d;border:1px solid #ead09a;border-radius:12px;padding:13px 16px;margin:-15px 0 22px}.nx-capacity-note span{font-size:12px}.nx-extra-card{white-space:nowrap}@media(max-width:800px){.nx-capacity-note{align-items:flex-start;flex-direction:column}}
.nx-card-stats{display:flex!important;align-items:center;gap:10px;flex-wrap:wrap}.nx-card-stats span{margin-left:auto;color:#888}.nx-card-stats a{font-size:11px}

/* NexID 0.5.0.3 — polished mobile dashboard actions */
.nx-cards-page,
.nx-cards-page *{box-sizing:border-box}
.nx-cards-page .nx-cards-head{gap:24px}
.nx-cards-page .nx-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.nx-cards-page .nx-head-action{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;line-height:1.2;text-align:center}
.nx-cards-page .nx-head-action-icon{width:24px;height:24px;display:grid;place-items:center;flex:0 0 24px;border-radius:8px;background:#f0eee7;color:#555;font-family:Arial,sans-serif;font-size:13px;font-weight:900}
.nx-cards-page .nx-head-action-primary .nx-head-action-icon{background:#11151b;color:#caff3d}
.nx-cards-page .nx-card-item{overflow:hidden}
.nx-cards-page .nx-card-stats{display:grid;gap:13px;margin-top:16px}
.nx-cards-page .nx-card-view-count{display:inline-flex;align-items:center;gap:7px;justify-self:start;border-radius:999px;background:#f1efe9;color:#686b70;padding:7px 11px;font-size:11px;line-height:1}
.nx-cards-page .nx-card-view-count b{font-size:14px;color:#171a20}
.nx-cards-page .nx-card-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;width:100%}
.nx-cards-page .nx-card-tool{min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dedbd3;border-radius:12px;padding:10px 9px;background:#fff;color:#24262b!important;text-decoration:none!important;font-size:11px;font-weight:850;line-height:1.45;text-align:center;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}
.nx-cards-page .nx-card-tool:hover,.nx-cards-page .nx-card-tool:focus-visible{transform:translateY(-1px);border-color:#7653dd;background:#f7f4ff;box-shadow:0 8px 20px #7653dd14;outline:0}
.nx-cards-page .nx-card-tool-icon{width:25px;height:25px;display:grid;place-items:center;flex:0 0 25px;border-radius:8px;background:#f0ecff;color:#6846ca;font-family:Arial,sans-serif;font-size:13px;font-weight:900}
.nx-cards-page .nx-card-tool-view{background:#11151b;color:#fff!important;border-color:#11151b}
.nx-cards-page .nx-card-tool-view .nx-card-tool-icon{background:#caff3d;color:#11151b}
.nx-cards-page .nx-card-tool-view:hover,.nx-cards-page .nx-card-tool-view:focus-visible{background:#222730;border-color:#222730;color:#fff!important}
.nx-cards-page .nx-card-actions{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #ece9e2}
.nx-cards-page .nx-card-actions a{min-width:0;min-height:42px;display:flex;align-items:center;justify-content:center;border:1px solid #ddd9d0;border-radius:11px;padding:9px 8px!important;background:#f8f7f3;color:#3d3f45!important;text-decoration:none!important;font-size:10.5px!important;font-weight:750;line-height:1.5;text-align:center;white-space:normal;overflow-wrap:normal;word-break:normal}
.nx-cards-page .nx-card-actions a:hover,.nx-cards-page .nx-card-actions a:focus-visible{border-color:#7653dd;background:#f4f0ff;color:#5d3eb8!important;outline:0}
.nx-cards-page .nx-card-actions a.nx-danger{background:#fff8f8;color:#a52b2b!important;border-color:#efcaca}

@media(max-width:800px){
  .nx-cards-page{padding:42px 16px}
  .nx-cards-page .nx-cards-head{margin-bottom:26px;gap:21px}
  .nx-cards-page .nx-cards-head h1{font-size:34px;line-height:1.3}
  .nx-cards-page .nx-cards-head p{font-size:13px;line-height:2;margin-bottom:0}
  .nx-cards-page .nx-head-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
  .nx-cards-page .nx-head-actions>*{min-width:0;width:100%;margin:0}
  .nx-cards-page .nx-head-action{padding:12px 10px!important;font-size:12px;white-space:nowrap}
  .nx-cards-page .nx-head-action-primary,
  .nx-cards-page .nx-head-actions>.nx-extra-card,
  .nx-cards-page .nx-head-actions>.nx-plans-empty{grid-column:1/-1}
  .nx-cards-page .nx-head-actions>.nx-extra-card{min-height:50px;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none!important}
  .nx-cards-page .nx-card-grid{gap:14px}
  .nx-cards-page .nx-card-item{padding:18px;border-radius:20px}
  .nx-cards-page .nx-card-item-top b{font-size:20px;line-height:1.6}
  .nx-cards-page .nx-card-item>p{font-size:11px;overflow-wrap:anywhere}
  .nx-cards-page .nx-card-view-count{justify-self:stretch;justify-content:center;min-height:38px}
  .nx-cards-page .nx-card-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .nx-cards-page .nx-card-tool{min-height:52px;padding:10px 8px;font-size:11.5px}
  .nx-cards-page .nx-card-tool-view{grid-column:1/-1}
  .nx-cards-page .nx-card-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .nx-cards-page .nx-card-actions a{min-height:46px;font-size:11px!important}
}

@media(max-width:360px){
  .nx-cards-page .nx-head-actions{grid-template-columns:1fr}
  .nx-cards-page .nx-head-action-primary,
  .nx-cards-page .nx-head-actions>.nx-extra-card,
  .nx-cards-page .nx-head-actions>.nx-plans-empty{grid-column:auto}
  .nx-cards-page .nx-card-tools,
  .nx-cards-page .nx-card-actions{grid-template-columns:1fr}
  .nx-cards-page .nx-card-tool-view{grid-column:auto}
}

/* Reset legacy inline-link rules for the redesigned card toolbar. */
.nx-cards-page .nx-card-stats{display:grid!important}
.nx-cards-page .nx-card-stats span{margin-left:0;color:inherit}
.nx-cards-page .nx-card-tools span{margin-left:0!important;color:inherit!important}

/* NexID 0.9.0 — public QR sharing */
.nx-card-links .nx-card-qr-trigger{appearance:none;border:0;font:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 15px;border-radius:var(--nx-button-radius,18px);background:color-mix(in srgb,var(--nx-card-primary) 13%,#fff);color:var(--nx-card-text);font-weight:800;transition:.2s ease}
.nx-card-links .nx-card-qr-trigger:hover,.nx-card-links .nx-card-qr-trigger:focus-visible{transform:translateY(-1px);box-shadow:0 8px 20px rgba(20,24,38,.12);outline:2px solid color-mix(in srgb,var(--nx-card-primary) 55%,transparent);outline-offset:2px}
.nx-card-qr-modal[hidden]{display:none!important}.nx-card-qr-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:20px;background:rgba(11,14,24,.74);backdrop-filter:blur(10px)}
.nx-card-qr-dialog{position:relative;width:min(520px,100%);max-height:calc(100vh - 40px);overflow:auto;text-align:center;background:#fff;color:#15171c;border-radius:28px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.28)}
.nx-card-qr-dialog>small:first-of-type{display:block;color:#6e7380;font-weight:700;margin-bottom:5px}.nx-card-qr-dialog h2{font-size:clamp(22px,4vw,31px);margin:0 0 8px}.nx-card-qr-dialog>p{color:#626978;line-height:1.9;margin:0 0 18px}
.nx-card-qr-close{position:absolute;inset:16px auto auto 16px;width:38px;height:38px;border:0;border-radius:50%;background:#f0f2f6;color:#20242c;font-size:26px;line-height:1;cursor:pointer}
.nx-card-qr-canvas{width:min(340px,82vw);aspect-ratio:1;margin:0 auto 18px;padding:15px;border:1px solid #e8eaf0;border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(35,40,58,.08)}.nx-card-qr-canvas canvas{display:block;width:100%;height:100%;image-rendering:pixelated}
.nx-card-qr-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:8px}.nx-card-qr-actions button{appearance:none;-webkit-appearance:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin:0;border:1px solid #dfe2e9;background:#f7f8fb;color:#242832;border-radius:12px;padding:10px 13px;font:inherit;font-weight:700;line-height:1.45;text-align:center;white-space:nowrap;cursor:pointer}.nx-card-qr-actions .nx-btn,.nx-card-qr-actions [data-nx-card-qr-fullscreen]{background:#171a22;color:#fff!important;border-color:#171a22}.nx-card-qr-actions .nx-btn:hover,.nx-card-qr-actions .nx-btn:focus-visible,.nx-card-qr-actions [data-nx-card-qr-fullscreen]:hover,.nx-card-qr-actions [data-nx-card-qr-fullscreen]:focus-visible{background:#242936;color:#fff!important;border-color:#242936}
.nx-card-qr-hint{display:block;margin-top:15px;color:#727988;line-height:1.8}.nx-card-qr-modal.is-fullscreen{padding:0;background:#fff}.nx-card-qr-modal.is-fullscreen .nx-card-qr-dialog{width:100%;height:100%;max-height:none;border-radius:0;display:flex;flex-direction:column;justify-content:center;align-items:center}.nx-card-qr-modal.is-fullscreen .nx-card-qr-canvas{width:min(72vh,88vw);max-width:none}.nx-modal-open{overflow:hidden}
.nx-preview-public-banner{position:sticky;top:0;z-index:1000;display:flex;justify-content:center;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 18px;background:#fff4cc;color:#594300;border-bottom:1px solid #ead783;text-align:center}.nx-preview-public-banner b{font-size:14px}.nx-preview-public-banner span{font-size:12px}
@media(max-width:600px){.nx-card-qr-modal{padding:0;align-items:end}.nx-card-qr-dialog{width:100%;max-height:94vh;border-radius:26px 26px 0 0;padding:26px 18px 22px}.nx-card-qr-canvas{width:min(320px,86vw)}.nx-card-qr-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.nx-card-qr-actions button{width:100%}.nx-card-qr-modal.is-fullscreen .nx-card-qr-actions{max-width:420px}}

/* NexID 0.9.1 — uniform contact actions and exact text centering */
.nx-card-050 .nx-card-links>a,
.nx-card-050 .nx-card-links>button{
  appearance:none;
  -webkit-appearance:none;
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  vertical-align:middle;
  min-height:42px;
  height:auto;
  margin:0;
  padding:7px 12px;
  border:1px solid color-mix(in srgb,var(--nx-card-text) 24%,transparent);
  background:transparent;
  color:var(--nx-card-text);
  border-radius:20px;
  font:inherit;
  font-size:11px;
  font-weight:400;
  line-height:1.4;
  text-align:center;
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
  transition:border-color .2s ease,color .2s ease,background-color .2s ease;
}
.nx-card-050 .nx-card-links>a:hover,
.nx-card-050 .nx-card-links>a:focus-visible,
.nx-card-050 .nx-card-links>button:hover,
.nx-card-050 .nx-card-links>button:focus-visible{
  border-color:var(--nx-card-primary);
  background:transparent;
  color:var(--nx-card-text);
  transform:none;
  box-shadow:none;
  outline:0;
}
.nx-card-050 .nx-card-links>.nx-card-qr-trigger{
  min-height:42px;
  padding:7px 12px;
  border-width:1px;
  background:transparent;
  color:var(--nx-card-text);
  font-weight:400;
}
.nx-buttons-pill .nx-card-links>a,
.nx-buttons-pill .nx-card-links>button{border-radius:999px}
.nx-buttons-rounded .nx-card-links>a,
.nx-buttons-rounded .nx-card-links>button{border-radius:11px}
.nx-buttons-square .nx-card-links>a,
.nx-buttons-square .nx-card-links>button{border-radius:3px}



/* NexID 0.9.2 — QR fullscreen action readability */
.nx-card-qr-modal.is-fullscreen .nx-card-qr-actions [data-nx-card-qr-fullscreen]{background:#171a22;color:#fff!important;border-color:#171a22}


/* NexID 0.10.0 — centered free-card action and deletion-request workflow */
.nx-free-card-empty{display:grid;justify-items:center;align-content:center;min-height:320px}
.nx-free-card-button{min-width:210px;margin-top:8px}
.nx-card-item.has-delete-request{border-color:#e9b55b;background:linear-gradient(145deg,#fffaf0,#fff)}
.nx-card-actions button,.nx-inline-action-form button{border:0;background:none;color:#6846ca;font:inherit;font-size:12px;padding:0;cursor:pointer}
.nx-card-actions .nx-danger{color:#b42338}
.nx-inline-action-form{display:inline-flex;margin:0}
.nx-delete-request-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px;background:rgba(12,16,24,.7);backdrop-filter:blur(5px)}
.nx-delete-request-modal[hidden]{display:none!important}
.nx-delete-request-dialog{position:relative;width:min(100%,560px);max-height:92vh;overflow:auto;background:#fff;border-radius:24px;padding:25px;box-shadow:0 30px 100px rgba(0,0,0,.35)}
.nx-delete-request-dialog>small{color:#a15d0b;font-weight:900}
.nx-delete-request-dialog h2{margin:4px 0 8px;font-size:24px}
.nx-delete-request-dialog>p{margin:0 0 18px;color:#6c7482;line-height:1.9}
.nx-delete-request-dialog form{display:grid;gap:14px}
.nx-delete-request-dialog label{display:grid;gap:7px;font-size:13px;font-weight:850}
.nx-delete-request-dialog label>span{font-size:11px;color:#7a8190;font-weight:500}
.nx-delete-request-dialog input[type="text"],.nx-delete-request-dialog textarea{width:100%;box-sizing:border-box;border:1px solid #d9dde5;border-radius:12px;padding:11px 12px;font:inherit}
.nx-delete-request-check{display:flex!important;align-items:flex-start;grid-template-columns:none!important;gap:9px;padding:12px;border:1px solid #ece2c9;border-radius:13px;background:#fffaf0}
.nx-delete-request-check input{margin-top:3px}
.nx-delete-request-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px}
.nx-delete-request-actions button{border:1px solid #dfe3e9;border-radius:11px;background:#fff;padding:10px 15px;font:inherit;font-weight:850;cursor:pointer}
.nx-delete-request-actions .nx-danger-confirm{background:#b42338;border-color:#b42338;color:#fff}
.nx-delete-request-close{position:absolute;left:16px;top:14px;width:36px;height:36px;border:0;border-radius:11px;background:#f2f3f5;font-size:22px;cursor:pointer}
body.nx-delete-request-open{overflow:hidden}
@media(max-width:620px){
  .nx-delete-request-dialog{padding:22px 16px}
  .nx-delete-request-actions{flex-direction:column-reverse}
  .nx-delete-request-actions button{width:100%}
}

/* 0.14.38 — supported social links are displayed as one unified public list */


/* NexID 0.23.1 — card action buttons share one visual system */
.nx-cards-page .nx-card-actions>a,
.nx-cards-page .nx-card-actions>button,
.nx-cards-page .nx-card-actions>.nx-inline-action-form,
.nx-cards-page .nx-card-actions>.nx-inline-action-form>button{
  min-width:0;
  min-height:42px;
  width:100%;
  box-sizing:border-box;
}
.nx-cards-page .nx-card-actions>button,
.nx-cards-page .nx-card-actions>.nx-inline-action-form>button{
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:9px 8px!important;
  border:1px solid #ddd9d0!important;
  border-radius:11px;
  background:#f8f7f3;
  color:#3d3f45;
  font:inherit;
  font-size:10.5px!important;
  font-weight:750;
  line-height:1.5;
  text-align:center;
  white-space:normal;
  cursor:pointer;
}
.nx-cards-page .nx-card-actions>.nx-inline-action-form{
  display:block;
  margin:0;
}
.nx-cards-page .nx-card-actions>button:hover,
.nx-cards-page .nx-card-actions>button:focus-visible,
.nx-cards-page .nx-card-actions>.nx-inline-action-form>button:hover,
.nx-cards-page .nx-card-actions>.nx-inline-action-form>button:focus-visible{
  border-color:#7653dd!important;
  background:#f4f0ff;
  color:#5d3eb8;
  outline:0;
}
.nx-cards-page .nx-card-actions>.nx-delete-request-trigger,
.nx-cards-page .nx-card-actions>.nx-inline-action-form>button{
  border-color:#efcaca!important;
  background:#fff8f8;
  color:#a52b2b;
}
.nx-cards-page .nx-card-actions>.nx-delete-request-trigger:hover,
.nx-cards-page .nx-card-actions>.nx-delete-request-trigger:focus-visible,
.nx-cards-page .nx-card-actions>.nx-inline-action-form>button:hover,
.nx-cards-page .nx-card-actions>.nx-inline-action-form>button:focus-visible{
  border-color:#dcaeae!important;
  background:#fff0f0;
  color:#8e2020;
}
@media(max-width:800px){
  .nx-cards-page .nx-card-actions>button,
  .nx-cards-page .nx-card-actions>.nx-inline-action-form>button{min-height:46px;font-size:11px!important}
}

/* NexID 0.25.0 — installable card web app */
.nx-pwa-install{
  position:fixed;
  inset-inline:12px;
  bottom:max(12px,env(safe-area-inset-bottom));
  z-index:100050;
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto 34px;
  align-items:center;
  gap:10px;
  max-width:680px;
  margin-inline:auto;
  padding:10px;
  color:#172033;
  background:rgba(255,255,255,.97);
  border:1px solid rgba(23,58,99,.18);
  border-radius:18px;
  box-shadow:0 18px 55px rgba(10,27,50,.22);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  font-family:var(--nexid-font-family,Tahoma,Arial,sans-serif);
  animation:nx-pwa-enter .28s ease both;
}
.nx-pwa-install__icon{
  width:52px;
  height:52px;
  display:block;
  border-radius:14px;
  object-fit:cover;
  box-shadow:0 6px 16px rgba(15,48,82,.2);
}
.nx-pwa-install__copy{min-width:0;display:grid;gap:2px;line-height:1.55}
.nx-pwa-install__copy small{font-size:11px;color:#64728a}
.nx-pwa-install__copy b{font-size:14px;color:#172033;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nx-pwa-install__copy span{font-size:11px;color:#67748a}
.nx-pwa-install__button,
.nx-pwa-guide__done{
  border:0;
  border-radius:12px;
  background:#173a63;
  color:#fff;
  min-height:42px;
  padding:0 18px;
  font:700 13px/1 var(--nexid-font-family,Tahoma,Arial,sans-serif);
  cursor:pointer;
}
.nx-pwa-install__close,
.nx-pwa-guide__close{
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  background:#f0f3f7;
  color:#56647a;
  font:400 24px/1 Arial,sans-serif;
  cursor:pointer;
}
.nx-pwa-guide{
  position:fixed;
  inset:0;
  z-index:100060;
  display:grid;
  place-items:end center;
  padding:18px 14px max(18px,env(safe-area-inset-bottom));
  background:rgba(6,17,31,.52);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.nx-pwa-guide__dialog{
  position:relative;
  width:min(100%,500px);
  box-sizing:border-box;
  padding:26px 22px 20px;
  border-radius:24px;
  background:#fff;
  color:#172033;
  box-shadow:0 25px 70px rgba(0,0,0,.3);
  font-family:var(--nexid-font-family,Tahoma,Arial,sans-serif);
  animation:nx-pwa-sheet .28s ease both;
}
.nx-pwa-guide__dialog>small{display:block;color:#64728a;font-size:12px;margin-bottom:5px}
.nx-pwa-guide__dialog h2{margin:0 0 16px;font-size:20px;line-height:1.7;color:#172033}
.nx-pwa-guide__dialog ol{margin:0 0 20px;padding:0 24px 0 0;display:grid;gap:12px;color:#435168;line-height:1.9;font-size:14px}
.nx-pwa-guide__dialog li::marker{font-weight:800;color:#173a63}
.nx-pwa-guide__close{position:absolute;inset-inline-end:14px;top:14px}
.nx-pwa-guide__done{width:100%;font-size:14px}
body.nx-pwa-guide-open{overflow:hidden!important}
.nx-pwa-standalone .nx-pwa-install{display:none!important}
@keyframes nx-pwa-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes nx-pwa-sheet{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
@media(max-width:560px){
  .nx-pwa-install{
    grid-template-columns:46px minmax(0,1fr) auto 30px;
    gap:8px;
    border-radius:16px;
    padding:9px;
  }
  .nx-pwa-install__icon{width:46px;height:46px;border-radius:12px}
  .nx-pwa-install__copy span{display:none}
  .nx-pwa-install__copy b{font-size:13px}
  .nx-pwa-install__button{min-height:38px;padding-inline:13px}
  .nx-pwa-install__close{width:30px;height:30px}
}
@media(max-width:390px){
  .nx-pwa-install{grid-template-columns:42px minmax(0,1fr) auto}
  .nx-pwa-install__icon{width:42px;height:42px}
  .nx-pwa-install__close{position:absolute;top:-9px;inset-inline-end:-5px;border:1px solid #dde3eb;background:#fff}
}

/* NexID 0.25.1 — installed cards keep the remaining primary action full width */
.nx-pwa-standalone [data-nx-pwa-install]{display:none!important}
.nx-pwa-standalone [data-nx-card-primary-actions]{grid-template-columns:minmax(0,1fr)}
.nx-pwa-standalone [data-nx-card-primary-actions].is-install-only{display:none}

/* NexID 0.25.4 — hidden install controls must never override the contact button width */
[data-nx-pwa-install][hidden]{display:none!important}
[data-nx-card-primary-actions].is-pwa-installed{grid-template-columns:minmax(0,1fr)!important}
[data-nx-card-primary-actions].is-install-only:not(.is-pwa-ready){display:none!important}


/* NexID 0.25.8 — install action is available only on real phone devices */
html:not(.nx-phone-device) [data-nx-pwa-install]{
  display:none!important;
}
html:not(.nx-phone-device) [data-nx-card-primary-actions]{
  grid-template-columns:minmax(0,1fr)!important;
}
html:not(.nx-phone-device) [data-nx-card-primary-actions].is-install-only{
  display:none!important;
}

/* NexID 0.25.25: compact user dashboard with server-rendered tabs. */
.nx-dashboard-home .nx-cards-head{margin-bottom:18px}
.nx-dashboard-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 18px;padding:8px;border:1px solid #e4e1d9;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(24,28,36,.04)}
.nx-dashboard-tabs a{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;min-width:0;min-height:62px;padding:10px 12px;border:1px solid transparent;border-radius:14px;color:#5f626b;text-decoration:none!important;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.nx-dashboard-tabs a>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#f0eee8;color:#5c4acb;font-size:16px;font-weight:900}
.nx-dashboard-tabs a b{overflow:hidden;color:#25272e;font-size:13px;line-height:1.5;white-space:nowrap;text-overflow:ellipsis}
.nx-dashboard-tabs a small{overflow:hidden;color:#858890;font-size:10px;line-height:1.45;white-space:nowrap;text-overflow:ellipsis}
.nx-dashboard-tabs a:hover,.nx-dashboard-tabs a:focus-visible{transform:translateY(-1px);border-color:#d7d0fb;background:#faf8ff;outline:0}
.nx-dashboard-tabs a.is-active{border-color:#cfc5ff;background:linear-gradient(135deg,#f5f1ff,#fbfff1);box-shadow:0 8px 20px rgba(91,70,232,.08)}
.nx-dashboard-tabs a.is-active>span{background:#5b46e8;color:#fff}
.nx-dashboard-tab-content{display:grid;gap:17px}
.nx-dashboard-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.nx-dashboard-status-grid>a{display:flex;align-items:center;gap:12px;min-width:0;padding:17px;border:1px solid #e5e2da;border-radius:18px;background:#fff;color:#20232a;text-decoration:none!important;box-shadow:0 9px 25px rgba(27,30,38,.035);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.nx-dashboard-status-grid>a:hover,.nx-dashboard-status-grid>a:focus-visible{transform:translateY(-2px);border-color:#cfc5ff;box-shadow:0 12px 28px rgba(91,70,232,.08);outline:0}
.nx-dashboard-status-grid>a>span{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:13px;background:#f0ecff;color:#5b46e8;font-size:18px;font-weight:900}
.nx-dashboard-status-grid>a>div{min-width:0}
.nx-dashboard-status-grid small,.nx-dashboard-status-grid b,.nx-dashboard-status-grid em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nx-dashboard-status-grid small{color:#858891;font-size:10px}
.nx-dashboard-status-grid b{margin-top:3px;color:#1b1e25;font-size:14px;line-height:1.6}
.nx-dashboard-status-grid em{color:#747780;font-size:10px;font-style:normal}
.nx-dashboard-section{padding:20px;border:1px solid #e5e2da;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(27,30,38,.04)}
.nx-dashboard-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}
.nx-dashboard-section-head small{display:block;color:#6c5bd0;font-size:11px;font-weight:800}
.nx-dashboard-section-head h2{margin:3px 0 0;color:#1d2027;font-size:20px;line-height:1.5}
.nx-dashboard-section-head>a{flex:0 0 auto;padding:8px 11px;border-radius:10px;background:#f4f1ff;color:#5c45c8;text-decoration:none!important;font-size:11px;font-weight:800}
.nx-dashboard-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.nx-dashboard-metrics article{display:flex;align-items:center;gap:11px;min-width:0;padding:14px;border:1px solid #ece9e2;border-radius:16px;background:#faf9f6}
.nx-dashboard-metrics article>span{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:12px;background:#edf9d2;color:#426800;font-family:Arial,sans-serif;font-size:16px;font-weight:900}
.nx-dashboard-metrics article>div{min-width:0}
.nx-dashboard-metrics small,.nx-dashboard-metrics b,.nx-dashboard-metrics em{display:block}
.nx-dashboard-metrics small{color:#747780;font-size:10px}
.nx-dashboard-metrics b{margin:2px 0;color:#181b22;font-size:21px;line-height:1.25}
.nx-dashboard-metrics em{color:#8a8d94;font-size:9.5px;font-style:normal}
.nx-dashboard-primary-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}
.nx-dashboard-card-status{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eaf9df;color:#396500;font-size:10px;font-weight:800}
.nx-dashboard-primary-body p{margin:9px 0;color:#777b84;font-size:11px;overflow-wrap:anywhere}
.nx-dashboard-primary-actions{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:8px}
.nx-dashboard-primary-actions>a{display:flex;align-items:center;justify-content:center;min-height:43px;padding:9px 12px;border:1px solid #ddd9d0;border-radius:11px;background:#f8f7f3;color:#3d3f45!important;text-decoration:none!important;font-size:11px;font-weight:800;text-align:center}
.nx-dashboard-primary-actions>a.nx-btn{border-color:transparent;background:var(--nx);color:#111!important}
.nx-dashboard-cards-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;border:1px solid #e5e2da;border-radius:19px;background:#fff}
.nx-dashboard-cards-summary small,.nx-dashboard-cards-summary b,.nx-dashboard-cards-summary span{display:block}
.nx-dashboard-cards-summary small{color:#7b7e87;font-size:10px}
.nx-dashboard-cards-summary b{margin:3px 0;font-size:19px}
.nx-dashboard-cards-summary span{color:#747780;font-size:11px}
.nx-dashboard-card-ranking{display:grid;gap:8px}
.nx-dashboard-card-ranking>a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border:1px solid #ece9e2;border-radius:14px;background:#faf9f6;color:#2d3037;text-decoration:none!important}
.nx-dashboard-card-ranking>a:hover{border-color:#cfc5ff;background:#faf8ff}
.nx-dashboard-card-ranking b,.nx-dashboard-card-ranking small{display:block}
.nx-dashboard-card-ranking b{font-size:13px}
.nx-dashboard-card-ranking small{margin-top:2px;color:#80838b;font-size:10px}
.nx-dashboard-card-ranking strong{flex:0 0 auto;min-width:46px;color:#5b46e8;font-size:20px;text-align:center}
.nx-dashboard-empty-performance{display:grid;place-items:center;min-height:250px;padding:35px 20px;border:1px dashed #d6d1c7;border-radius:22px;background:#fff;text-align:center}
.nx-dashboard-empty-performance>span{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#f1efff;color:#5b46e8;font-size:25px}
.nx-dashboard-empty-performance>b{margin-top:12px;font-size:18px}
.nx-dashboard-empty-performance>p{max-width:560px;margin:7px auto 0;color:#777b84;font-size:12px;line-height:2}

@media(max-width:1050px){
  .nx-dashboard-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nx-dashboard-primary-body{grid-template-columns:1fr}
  .nx-dashboard-primary-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .nx-dashboard-tabs{display:flex;overflow-x:auto;scroll-snap-type:x proximity;padding:7px;scrollbar-width:thin}
  .nx-dashboard-tabs a{flex:0 0 170px;scroll-snap-align:start}
  .nx-dashboard-status-grid{grid-template-columns:1fr}
  .nx-dashboard-section{padding:16px;border-radius:19px}
  .nx-dashboard-section-head{align-items:flex-start}
  .nx-dashboard-section-head h2{font-size:17px}
  .nx-dashboard-primary-actions{grid-template-columns:1fr}
  .nx-dashboard-cards-summary{align-items:stretch;flex-direction:column}
  .nx-dashboard-cards-summary .nx-btn,.nx-dashboard-cards-summary .nx-extra-card{width:100%;box-sizing:border-box;text-align:center}
}
@media(max-width:420px){
  .nx-dashboard-metrics{grid-template-columns:1fr}
}
