/* ==========================================================================
   NIDS Account Style — WooCommerce My Account, restyled to the NIDS 2026 look.
   Scoped under body.nids-acct so nothing leaks to the rest of the site.
   ========================================================================== */
body.nids-acct{
  --na-navy:#0B1E3F; --na-navy2:#12336A; --na-accent:#16B8E8; --na-blue:#0077B6;
  --na-orange:#F58220; --na-ink:#1A2333; --na-soft:#5A6E8C; --na-line:#E3EAF4;
  --na-bg:#F5F8FC; --na-radius:18px; --na-ease:cubic-bezier(.22,.8,.2,1);
}

/* --------------------------------------------------------------------------
   Welcome banner
   -------------------------------------------------------------------------- */
body.nids-acct .nids-acct-welcome{
  margin:0 0 18px;
}
body.nids-acct .nids-acct-welcome-inner{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--na-navy),var(--na-navy2));
  border-radius:var(--na-radius);
  padding:22px 24px;
  display:flex;flex-direction:column;align-items:flex-start;gap:12px;
  box-shadow:0 24px 50px -34px rgba(11,30,63,.6);
}
body.nids-acct .nids-acct-welcome-inner::after{
  content:"";position:absolute;right:-50px;top:-50px;width:200px;height:200px;
  background:radial-gradient(circle,rgba(22,184,232,.35),transparent 70%);
  border-radius:50%;pointer-events:none;
  animation:naBloom 1.1s .1s var(--na-ease) both;
}
@keyframes naBloom{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
body.nids-acct .nids-acct-welcome-txt{position:relative;z-index:1}
body.nids-acct .nids-acct-hello{
  color:#c7d8ef;margin:0 0 2px;font-size:14px;font-weight:500;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
body.nids-acct .nids-acct-name{
  color:#fff;margin:0;font-size:24px;font-weight:800;line-height:1.15;
  font-family:'Sora','Inter',sans-serif;letter-spacing:-.01em;
  overflow-wrap:break-word;word-break:normal;hyphens:none;max-width:100%;
}
body.nids-acct .nids-acct-role{
  position:relative;z-index:1;flex:none;display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);
  color:#eaf7ff;font-weight:700;font-size:12.5px;letter-spacing:.03em;
  padding:7px 15px;border-radius:999px;text-transform:uppercase;
}
body.nids-acct .nids-acct-role .nar-sep{opacity:.55;font-weight:400}
body.nids-acct .nids-acct-role .nar-part{white-space:nowrap}
/* Registration state cue: a small dot before the reg label. The dot carries
   the colour; the label text stays white for legibility on the navy banner. */
body.nids-acct .nids-acct-role .nar-reg{display:inline-flex;align-items:center;gap:6px}
body.nids-acct .nids-acct-role .nar-reg::before{
  content:"";width:7px;height:7px;border-radius:50%;background:#cfe6f4;flex:none;
}
body.nids-acct .nids-acct-role .nar-reg[data-state="confirmed"]::before{background:#4ddb8a}
body.nids-acct .nids-acct-role .nar-reg[data-state="pending"]::before{background:#ffc247}

/* --------------------------------------------------------------------------
   Overall account layout
   -------------------------------------------------------------------------- */
body.nids-acct.woocommerce-account .woocommerce{
  max-width:1120px;margin-inline:auto;
}
body.nids-acct.woocommerce-account .woocommerce-MyAccount-content,
body.nids-acct.woocommerce-account .woocommerce-MyAccount-navigation{
  box-sizing:border-box;
}
/* Two-column: sidebar + content */
@media (min-width:783px){
  /* Two-column layout ONLY when logged in (the navigation exists). WooCommerce
     adds .logged-in to <body> for authenticated users. When logged out there is
     no menu — just the login/register form — so the grid must not apply, or the
     form gets squeezed into the narrow first column with dead space beside it. */
  body.nids-acct.woocommerce-account.logged-in .woocommerce{
    display:grid;
    grid-template-columns:270px 1fr;
    gap:26px;
    align-items:start;
  }
  body.nids-acct.woocommerce-account.logged-in .woocommerce-MyAccount-navigation{
    width:auto;float:none;margin:0;grid-column:1;
  }
  body.nids-acct.woocommerce-account.logged-in .woocommerce-MyAccount-content{
    width:auto;float:none;margin:0;grid-column:2;
  }
}

/* --------------------------------------------------------------------------
   Logged-out: a clean, centred login / register experience
   -------------------------------------------------------------------------- */
body.nids-acct.woocommerce-account:not(.logged-in) .woocommerce{
  max-width:920px;margin-inline:auto;
}
/* The login and register columns sit side by side, centred, as cards. */
body.nids-acct.woocommerce-account:not(.logged-in) #customer_login.u-columns{
  display:grid;grid-template-columns:1fr;gap:22px;
}
@media (min-width:783px){
  body.nids-acct.woocommerce-account:not(.logged-in) #customer_login.col2-set{
    grid-template-columns:1fr 1fr;
  }
}
body.nids-acct.woocommerce-account:not(.logged-in) #customer_login .u-column1,
body.nids-acct.woocommerce-account:not(.logged-in) #customer_login .u-column2,
body.nids-acct.woocommerce-account:not(.logged-in) .woocommerce-form-login,
body.nids-acct.woocommerce-account:not(.logged-in) .woocommerce-form-register{
  width:auto;float:none;margin:0;box-sizing:border-box;
  background:#fff;border:1px solid var(--na-line);border-radius:var(--na-radius);
  padding:28px 30px;box-shadow:0 20px 50px -42px rgba(11,30,63,.5);
}
/* If the login form sits directly in .woocommerce (no columns wrapper), centre
   and constrain it so it is not stranded on the left. */
body.nids-acct.woocommerce-account:not(.logged-in) > .woocommerce > .woocommerce-form-login,
body.nids-acct.woocommerce-account:not(.logged-in) .woocommerce > .woocommerce-form-login{
  max-width:460px;margin-inline:auto;
}
body.nids-acct.woocommerce-account:not(.logged-in) .woocommerce-form-login h2,
body.nids-acct.woocommerce-account:not(.logged-in) .woocommerce-form-register h2,
body.nids-acct.woocommerce-account:not(.logged-in) #customer_login h2{
  font-family:'Sora','Inter',sans-serif;color:var(--na-navy);margin-top:0;
}

/* --------------------------------------------------------------------------
   Sidebar navigation
   -------------------------------------------------------------------------- */
body.nids-acct .woocommerce-MyAccount-navigation{
  background:#fff;border:1px solid var(--na-line);border-radius:var(--na-radius);
  padding:12px;box-shadow:0 20px 50px -40px rgba(11,30,63,.5);
  position:sticky;top:20px;
}
body.nids-acct .woocommerce-MyAccount-navigation ul{
  list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;
}
body.nids-acct .woocommerce-MyAccount-navigation li{margin:0}
body.nids-acct .woocommerce-MyAccount-navigation li a{
  display:flex;align-items:center;gap:12px;
  padding:12px 14px;border-radius:12px;text-decoration:none;
  color:var(--na-ink);font-weight:600;font-size:15px;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  transition:background .2s var(--na-ease),color .2s var(--na-ease),transform .2s var(--na-ease);
  position:relative;
}
/* Icon chip before each link */
body.nids-acct .woocommerce-MyAccount-navigation li a::before{
  content:"";flex:none;width:34px;height:34px;border-radius:10px;
  background:var(--na-bg) center/18px 18px no-repeat;
  transition:background-color .2s var(--na-ease);
}
@media (hover:hover){
  body.nids-acct .woocommerce-MyAccount-navigation li a:hover{
    background:var(--na-bg);color:var(--na-navy);transform:translateX(2px);
  }
}
body.nids-acct .woocommerce-MyAccount-navigation li a:active{transform:scale(.98)}
/* Active tab */
body.nids-acct .woocommerce-MyAccount-navigation li.is-active a{
  background:linear-gradient(135deg,var(--na-navy),var(--na-navy2));color:#fff;
  box-shadow:0 12px 26px -14px rgba(11,30,63,.6);
}
body.nids-acct .woocommerce-MyAccount-navigation li.is-active a::before{
  background-color:rgba(255,255,255,.16);
}

/* Per-tab icons (background-image on the ::before chip). SVGs are inline,
   URL-encoded, so no external files are needed. */
body.nids-acct .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard a::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='9'/%3E%3Crect x='14' y='3' width='7' height='5'/%3E%3Crect x='14' y='12' width='7' height='9'/%3E%3Crect x='3' y='16' width='7' height='5'/%3E%3C/svg%3E");
}
body.nids-acct .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders a::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E");
}
body.nids-acct .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads a::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3Cpath d='M12 15V3'/%3E%3C/svg%3E");
}
body.nids-acct .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address a::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
}
body.nids-acct .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account a::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E");
}
body.nids-acct .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpath d='M16 17l5-5-5-5'/%3E%3Cpath d='M21 12H9'/%3E%3C/svg%3E");
}
/* Platform + hub tabs */
body.nids-acct .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--conference-dashboard a::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3v18h18'/%3E%3Cpath d='M7 15l4-4 3 3 5-6'/%3E%3C/svg%3E");
}
body.nids-acct .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--my-abstracts a::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z'/%3E%3Cpath d='M14 2v6h6'/%3E%3Cpath d='M8 13h8M8 17h6'/%3E%3C/svg%3E");
}
body.nids-acct .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--my-receipt a::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 2v20l2-1 2 1 2-1 2 1 2-1 2 1 2-1 2 1V2l-2 1-2-1-2 1-2-1-2 1-2-1-2 1Z'/%3E%3Cpath d='M8 7h8M8 11h8M8 15h5'/%3E%3C/svg%3E");
}
body.nids-acct .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--conference-hub a::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077B6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='23 7 16 12 23 17 23 7'/%3E%3Crect x='1' y='5' width='15' height='14' rx='2'/%3E%3C/svg%3E");
}
/* On the active tab, recolour icons to white via a brightness trick */
body.nids-acct .woocommerce-MyAccount-navigation li.is-active a::before{
  filter:brightness(0) invert(1);
}

/* --------------------------------------------------------------------------
   Content panel
   -------------------------------------------------------------------------- */
body.nids-acct .woocommerce-MyAccount-content{
  background:#fff;border:1px solid var(--na-line);border-radius:var(--na-radius);
  padding:30px 32px;box-shadow:0 20px 50px -42px rgba(11,30,63,.5);
  min-height:340px;
}
body.nids-acct .woocommerce-MyAccount-content > p:first-child{margin-top:0}
body.nids-acct .woocommerce-MyAccount-content a:not(.button):not(.nids-acct-role):not([class*="nidsreg-btn"]):not([class*="nids-vh-btn"]):not([class*="np-btn"]){
  color:var(--na-blue);text-decoration:none;font-weight:600;
}
body.nids-acct .woocommerce-MyAccount-content a:not(.button):not([class*="nidsreg-btn"]):not([class*="nids-vh-btn"]):not([class*="np-btn"]):hover{text-decoration:underline}

/* Headings inside content */
body.nids-acct .woocommerce-MyAccount-content h1,
body.nids-acct .woocommerce-MyAccount-content h2,
body.nids-acct .woocommerce-MyAccount-content h3{
  font-family:'Sora','Inter',sans-serif;color:var(--na-navy);
}

/* --------------------------------------------------------------------------
   Buttons
   -------------------------------------------------------------------------- */
body.nids-acct .woocommerce #payment #place_order,
body.nids-acct .woocommerce a.button,
body.nids-acct .woocommerce button.button,
body.nids-acct .woocommerce input.button,
body.nids-acct .woocommerce .button{
  background:linear-gradient(135deg,var(--na-orange),#ff9f45)!important;
  color:#2a1400!important;border:0!important;border-radius:999px!important;
  font-weight:700!important;padding:12px 26px!important;
  box-shadow:0 14px 30px -16px rgba(245,130,32,.7);
  transition:transform .2s var(--na-ease),box-shadow .2s var(--na-ease)!important;
  min-height:46px;line-height:1.2;
}
@media (hover:hover){
  body.nids-acct .woocommerce a.button:hover,
  body.nids-acct .woocommerce button.button:hover,
  body.nids-acct .woocommerce input.button:hover,
  body.nids-acct .woocommerce .button:hover{
    transform:translateY(-2px);box-shadow:0 20px 36px -16px rgba(245,130,32,.8);
  }
}
body.nids-acct .woocommerce .button:active{transform:scale(.97)}
/* Secondary / ghost buttons (e.g. "View" on orders) */
body.nids-acct .woocommerce .woocommerce-button--view,
body.nids-acct .woocommerce a.button.wc-forward{
  background:#fff!important;color:var(--na-navy)!important;
  border:1px solid var(--na-line)!important;box-shadow:none;
}

/* --------------------------------------------------------------------------
   Tables (orders, downloads, etc.)
   -------------------------------------------------------------------------- */
body.nids-acct .woocommerce table.shop_table{
  border:1px solid var(--na-line)!important;border-radius:14px!important;
  border-collapse:separate!important;border-spacing:0;overflow:hidden;
  background:#fff;
}
body.nids-acct .woocommerce table.shop_table thead th{
  background:var(--na-navy)!important;color:#fff!important;
  font-weight:700;font-size:13.5px;padding:14px 16px!important;border:0!important;
  text-transform:none;letter-spacing:0;
}
body.nids-acct .woocommerce table.shop_table tbody td{
  padding:14px 16px!important;border:0!important;
  border-top:1px solid var(--na-line)!important;color:var(--na-ink);font-size:14px;
}
body.nids-acct .woocommerce table.shop_table tbody tr:nth-child(even) td{
  background:var(--na-bg);
}
body.nids-acct .woocommerce table.shop_table td.woocommerce-orders-table__cell-order-status{
  font-weight:700;
}

/* Order status pills */
body.nids-acct .woocommerce .order-status,
body.nids-acct .woocommerce mark.order-status{
  display:inline-block;padding:3px 12px;border-radius:999px;
  font-size:12.5px;font-weight:700;background:var(--na-bg);color:var(--na-navy);
}
body.nids-acct .woocommerce .status-completed{background:rgba(26,127,55,.12);color:#1a7f37}
body.nids-acct .woocommerce .status-processing{background:rgba(0,119,182,.12);color:var(--na-blue)}
body.nids-acct .woocommerce .status-pending,
body.nids-acct .woocommerce .status-on-hold{background:rgba(245,130,32,.14);color:#c4630a}

/* --------------------------------------------------------------------------
   Forms (edit account, addresses)
   -------------------------------------------------------------------------- */
body.nids-acct .woocommerce form .form-row label,
body.nids-acct .woocommerce-EditAccountForm label,
body.nids-acct .woocommerce-address-fields label{
  font-weight:600;color:var(--na-navy);font-size:14px;margin-bottom:6px;display:block;
}
body.nids-acct .woocommerce form .input-text,
body.nids-acct .woocommerce form input[type="text"],
body.nids-acct .woocommerce form input[type="email"],
body.nids-acct .woocommerce form input[type="tel"],
body.nids-acct .woocommerce form input[type="password"],
body.nids-acct .woocommerce form select,
body.nids-acct .woocommerce form textarea{
  border:1px solid var(--na-line)!important;border-radius:11px!important;
  padding:12px 14px!important;font-size:16px!important;color:var(--na-ink)!important;
  background:#fff!important;min-height:48px;width:100%;box-sizing:border-box;
  transition:border-color .2s,box-shadow .2s;
}
body.nids-acct .woocommerce form .input-text:focus,
body.nids-acct .woocommerce form select:focus,
body.nids-acct .woocommerce form textarea:focus{
  outline:none!important;border-color:var(--na-accent)!important;
  box-shadow:0 0 0 3px rgba(22,184,232,.15)!important;
}

/* Notices */
body.nids-acct .woocommerce-message,
body.nids-acct .woocommerce-info,
body.nids-acct .woocommerce-error{
  border-radius:12px!important;border:0!important;
  border-left:4px solid var(--na-accent)!important;
  background:var(--na-bg)!important;color:var(--na-ink)!important;
  padding:14px 18px!important;
}
body.nids-acct .woocommerce-message{border-left-color:#1a7f37!important}
body.nids-acct .woocommerce-error{border-left-color:#c62a2f!important}

/* --------------------------------------------------------------------------
   Reveal — orchestrated entrance
   -------------------------------------------------------------------------- */
body.nids-acct .nids-acct-welcome{animation:naUp .6s var(--na-ease) both}
body.nids-acct .woocommerce-MyAccount-navigation{animation:naUp .6s .08s var(--na-ease) both}
body.nids-acct .woocommerce-MyAccount-content{animation:naFade .7s .18s var(--na-ease) both}
@keyframes naUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes naFade{from{opacity:0;transform:translateY(10px) scale(.995)}to{opacity:1;transform:none}}

/* Sidebar tabs cascade in one after another. */
body.nids-acct .woocommerce-MyAccount-navigation li{
  animation:naSlide .5s var(--na-ease) both;
}
body.nids-acct .woocommerce-MyAccount-navigation li:nth-child(1){animation-delay:.14s}
body.nids-acct .woocommerce-MyAccount-navigation li:nth-child(2){animation-delay:.20s}
body.nids-acct .woocommerce-MyAccount-navigation li:nth-child(3){animation-delay:.26s}
body.nids-acct .woocommerce-MyAccount-navigation li:nth-child(4){animation-delay:.32s}
body.nids-acct .woocommerce-MyAccount-navigation li:nth-child(5){animation-delay:.38s}
body.nids-acct .woocommerce-MyAccount-navigation li:nth-child(6){animation-delay:.44s}
body.nids-acct .woocommerce-MyAccount-navigation li:nth-child(7){animation-delay:.50s}
body.nids-acct .woocommerce-MyAccount-navigation li:nth-child(8){animation-delay:.56s}
body.nids-acct .woocommerce-MyAccount-navigation li:nth-child(9){animation-delay:.62s}
@keyframes naSlide{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}

/* The active tab's icon chip gives a subtle pop as it settles. */
body.nids-acct .woocommerce-MyAccount-navigation li.is-active a::before{
  animation:naPop .5s .3s var(--na-ease) both;
}
@keyframes naPop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.12)}100%{transform:scale(1);opacity:1}}

/* Content headings and the first paragraph ease in just after the panel. */
body.nids-acct .woocommerce-MyAccount-content > *{
  animation:naUp .55s var(--na-ease) both;animation-delay:.24s;
}

/* ==========================================================================
   MOBILE — a distinct, app-style experience (not the desktop squeezed)
   ========================================================================== */
@media (max-width:782px){
  body.nids-acct .nids-acct-welcome-inner{padding:20px 22px;border-radius:16px}
  body.nids-acct .nids-acct-role{align-self:flex-start}

  /* The navigation becomes a compact grid of icon tiles under the welcome —
     like an app's home screen — so EVERY tab is visible at once without any
     swiping or scrolling. (Horizontal scroll was unreliable across themes and
     hid tabs off-screen with no cue to swipe.) */
  body.nids-acct.woocommerce-account .woocommerce-MyAccount-navigation{
    position:static;padding:10px;border-radius:16px;margin:0 0 18px;overflow:visible;
  }
  body.nids-acct .woocommerce-MyAccount-navigation ul{
    display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:auto;min-width:0;
  }
  body.nids-acct .woocommerce-MyAccount-navigation li a{
    flex-direction:column;gap:6px;padding:12px 6px;border-radius:12px;
    font-size:11.5px;font-weight:700;white-space:normal;text-align:center;
    line-height:1.2;min-width:0;justify-content:flex-start;height:100%;box-sizing:border-box;
  }
  body.nids-acct .woocommerce-MyAccount-navigation li a::before{
    width:30px;height:30px;background-size:17px 17px;
  }
  body.nids-acct .woocommerce-MyAccount-navigation li a:hover{transform:none}

  /* Content panel goes edge-to-edge and lighter on padding for phones. */
  body.nids-acct .woocommerce-MyAccount-content{
    padding:20px 18px;border-radius:16px;
  }

  /* Tables reflow to stacked cards on phones — no more sideways scrolling. */
  body.nids-acct .woocommerce table.shop_table thead{display:none}
  body.nids-acct .woocommerce table.shop_table tbody tr{
    display:block;background:#fff;border:1px solid var(--na-line);
    border-radius:14px;padding:6px 4px;margin-bottom:12px;
  }
  body.nids-acct .woocommerce table.shop_table tbody tr:nth-child(even) td{background:transparent}
  body.nids-acct .woocommerce table.shop_table tbody td{
    display:flex;justify-content:space-between;align-items:center;gap:14px;
    border:0!important;border-top:1px solid var(--na-line)!important;
    padding:11px 14px!important;text-align:right;
  }
  body.nids-acct .woocommerce table.shop_table tbody tr td:first-child{border-top:0!important}
  /* Show the column label on the left of each stacked cell. */
  body.nids-acct .woocommerce table.shop_table tbody td::before{
    content:attr(data-title);font-weight:700;color:var(--na-soft);
    font-size:12.5px;text-align:left;text-transform:uppercase;letter-spacing:.03em;
  }
  body.nids-acct .woocommerce table.shop_table tbody td.woocommerce-orders-table__cell-order-actions{
    justify-content:flex-end;
  }
  body.nids-acct .woocommerce table.shop_table tbody td.woocommerce-orders-table__cell-order-actions::before{
    display:none;
  }
  body.nids-acct .woocommerce .button{width:100%;justify-content:center;text-align:center}
  body.nids-acct .woocommerce .woocommerce-orders-table__cell-order-actions .button{width:auto}
}

/* Accessibility */
@media (prefers-reduced-motion:reduce){
  body.nids-acct .nids-acct-welcome,
  body.nids-acct .woocommerce-MyAccount-navigation,
  body.nids-acct .woocommerce-MyAccount-navigation li,
  body.nids-acct .woocommerce-MyAccount-navigation li.is-active a::before,
  body.nids-acct .woocommerce-MyAccount-content,
  body.nids-acct .woocommerce-MyAccount-content > *,
  body.nids-acct .nids-acct-welcome-inner::after{
    animation:none!important;opacity:1!important;transform:none!important;
  }
  body.nids-acct .woocommerce-MyAccount-navigation li a,
  body.nids-acct .woocommerce .button{transition:none!important}
}
