/* ═══════════════════════════════════════════════════════════════════════
   Customer accounts — popup, header control, account pages, order tracker.

   Colours and type are the site's own: navy #0B1F3A, royal #1E5EFF,
   cyan #00D4FF, Poppins for headings, Inter for everything else. Nothing
   here restyles the wider site.
   ═══════════════════════════════════════════════════════════════════════ */

/* ─────────────────────── header control ─────────────────────── */

.nrdl-acc-wrap{position:relative;display:inline-flex;}

.nrd-nav > ul > li > .nrdl-acc-btn,
.nrdl-acc-btn{
  display:inline-flex;align-items:center;gap:7px;
  padding:7px 13px 7px 10px;border-radius:9px;cursor:pointer;
  font:600 .8rem/1 'Inter',system-ui,sans-serif;color:#0B1F3A;
  background:rgba(11,31,58,.03);border:1px solid rgba(11,31,58,.14);
  transition:background .22s,border-color .22s,color .22s;
}
.nrdl-acc-btn svg{width:17px;height:17px;flex:none;}
.nrdl-acc-btn:hover{background:rgba(0,212,255,.14);border-color:rgba(0,212,255,.5);color:#1E5EFF;}
.nrdl-acc-btn:focus-visible{outline:2px solid #00D4FF;outline-offset:3px;}
.nrdl-acc-name{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

.nrdl-acc-menu{
  position:absolute;top:calc(100% + 10px);right:0;z-index:1200;min-width:216px;
  background:#fff;border:1px solid rgba(11,31,58,.12);border-radius:13px;padding:7px;
  box-shadow:0 18px 44px rgba(11,31,58,.18);
}
.nrdl-acc-menu[hidden]{display:none !important;}
.nrdl-acc-hello{
  display:block;padding:9px 12px 11px;font-size:.72rem;color:#6b7f96;
  border-bottom:1px solid #eef2f7;margin-bottom:5px;line-height:1.5;
}
.nrdl-acc-hello b{display:block;color:#0B1F3A;font-size:.78rem;font-weight:600;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.nrdl-acc-menu a{
  display:block;padding:9px 12px;border-radius:8px;text-decoration:none;
  font-size:.83rem;font-weight:500;color:#12263f;transition:background .18s,color .18s;
}
.nrdl-acc-menu a:hover{background:rgba(30,94,255,.08);color:#1E5EFF;}
.nrdl-acc-menu a.is-out{border-top:1px solid #eef2f7;margin-top:5px;padding-top:11px;color:#b3364a;}
.nrdl-acc-menu a.is-out:hover{background:rgba(179,54,74,.08);color:#b3364a;}

/* ─────────────────────── popup ─────────────────────── */

body.nrdl-modal-open{overflow:hidden;}

.nrdl-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;
  justify-content:center;padding:20px;}
.nrdl-modal[hidden]{display:none !important;}
.nrdl-modal-veil{position:absolute;inset:0;background:rgba(6,18,34,.62);backdrop-filter:blur(3px);}

.nrdl-modal-card{
  position:relative;z-index:1;width:100%;max-width:428px;
  max-height:calc(100vh - 40px);overflow-y:auto;-webkit-overflow-scrolling:touch;
  background:#fff;border-radius:18px;padding:26px 26px 22px;
  box-shadow:0 30px 80px rgba(6,18,34,.4);
  font-family:'Inter',system-ui,sans-serif;
  animation:nrdlPop .22s cubic-bezier(.2,.9,.3,1);
}
@keyframes nrdlPop{from{opacity:0;transform:translateY(12px) scale(.98);}to{opacity:1;transform:none;}}

/* The close control stays pinned inside the card, above the scrolling
   content, so it is reachable no matter how small the screen. */
.nrdl-modal-x{
  position:sticky;float:right;top:0;margin:-6px -6px 0 0;
  width:36px;height:36px;flex:none;display:flex;align-items:center;justify-content:center;
  border-radius:50%;cursor:pointer;color:#5d738f;
  background:#f1f5fa;border:1px solid rgba(11,31,58,.1);
  transition:background .2s,color .2s,transform .2s;
}
.nrdl-modal-x svg{width:16px;height:16px;}
.nrdl-modal-x:hover{background:#e2e9f3;color:#0B1F3A;transform:rotate(90deg);}
.nrdl-modal-x:focus-visible{outline:2px solid #1E5EFF;outline-offset:2px;}

.nrdl-modal-head{display:flex;align-items:center;gap:13px;margin-bottom:18px;}
.nrdl-modal-head img{border-radius:9px;flex:none;}
.nrdl-modal-head h2{font-family:'Poppins',sans-serif;font-size:1.22rem;font-weight:800;
  color:#0B1F3A;margin:0;letter-spacing:-.01em;}
.nrdl-modal-head p{font-size:.81rem;color:#5d738f;margin:4px 0 0;line-height:1.5;}

.nrdl-modal-gate{
  background:rgba(30,94,255,.08);border:1px solid rgba(30,94,255,.28);border-radius:10px;
  padding:11px 14px;font-size:.82rem;color:#1a3a7a;line-height:1.5;margin:0 0 14px;font-weight:500;
}
.nrdl-modal-gate[hidden]{display:none !important;}

.nrdl-modal-msg{border-radius:10px;padding:10px 13px;font-size:.81rem;line-height:1.5;margin:0 0 14px;}
.nrdl-modal-msg[hidden]{display:none !important;}
.nrdl-modal-msg.is-error{background:#fdeaec;border:1px solid #f3c2c9;color:#a02a3c;}
.nrdl-modal-msg.is-ok{background:#e8f8ef;border:1px solid #bde5cd;color:#1c6b41;}

.nrdl-form{display:flex;flex-direction:column;gap:13px;}
.nrdl-form[hidden]{display:none !important;}
.nrdl-f{display:block;}
.nrdl-f > span{display:block;font-size:.76rem;font-weight:600;color:#12263f;margin-bottom:6px;}
.nrdl-f input{
  width:100%;padding:11px 13px;border-radius:10px;
  font:400 .88rem/1.3 'Inter',sans-serif;color:#12263f;
  background:#f8fafd;border:1.5px solid #dbe4ef;
  transition:border-color .2s,background .2s;
}
.nrdl-f input:focus{outline:none;border-color:#1E5EFF;background:#fff;}
.nrdl-f.has-error input{border-color:#e0798a;background:#fdf6f7;}
.nrdl-err{display:block;font-size:.74rem;color:#a02a3c;margin-top:5px;line-height:1.4;}

.nrdl-two{display:grid;grid-template-columns:1fr 1fr;gap:11px;}
.nrdl-hint{font-size:.74rem;color:#6b7f96;margin:-4px 0 0;line-height:1.5;}

.nrdl-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.nrdl-check{display:flex;align-items:center;gap:8px;font-size:.79rem;color:#5d738f;cursor:pointer;}
.nrdl-check input{width:15px;height:15px;accent-color:#1E5EFF;}
.nrdl-row a{font-size:.79rem;color:#1E5EFF;text-decoration:none;font-weight:500;}
.nrdl-row a:hover{text-decoration:underline;}

.nrdl-submit{
  margin-top:3px;padding:13px 20px;border:0;border-radius:10px;cursor:pointer;
  font:700 .87rem/1 'Inter',sans-serif;color:#fff;
  background:linear-gradient(90deg,#1E5EFF,#00A6D4);
  transition:transform .2s,box-shadow .2s,opacity .2s;
}
.nrdl-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 24px rgba(30,94,255,.28);}
.nrdl-submit:disabled{opacity:.65;cursor:progress;}
.nrdl-submit:focus-visible{outline:2px solid #0B1F3A;outline-offset:3px;}

.nrdl-swap{text-align:center;font-size:.81rem;color:#5d738f;margin:6px 0 0;}
.nrdl-swap button{
  background:none;border:0;padding:0;cursor:pointer;
  font:600 .81rem 'Inter',sans-serif;color:#1E5EFF;text-decoration:underline;
}

/* ─────────────────────── order tracker ─────────────────────── */

.nrdl-track{
  background:#f8fafd;border:1px solid #e2e9f3;border-radius:14px;
  padding:20px 22px;margin:0 0 26px;
}
.nrdl-track-steps{
  list-style:none;margin:0;padding:0;display:flex;align-items:flex-start;gap:0;
}
.nrdl-track-steps li{
  flex:1;text-align:center;position:relative;font-family:'Inter',sans-serif;
}
/* the connecting rail, drawn behind each dot */
.nrdl-track-steps li::before{
  content:"";position:absolute;top:15px;left:-50%;width:100%;height:3px;
  background:#dbe4ef;z-index:0;
}
.nrdl-track-steps li:first-child::before{display:none;}
.nrdl-track-steps li.is-done::before,
.nrdl-track-steps li.is-current::before{background:#1E5EFF;}

.nrdl-track-dot{
  position:relative;z-index:1;display:flex;align-items:center;justify-content:center;
  width:32px;height:32px;margin:0 auto 9px;border-radius:50%;
  font-size:14px;font-weight:700;line-height:1;
  background:#fff;border:3px solid #dbe4ef;color:#fff;
}
.is-done .nrdl-track-dot{background:#1E5EFF;border-color:#1E5EFF;}
.is-current .nrdl-track-dot{background:#1E5EFF;border-color:#1E5EFF;
  box-shadow:0 0 0 5px rgba(30,94,255,.16);}

.nrdl-track-label{display:block;font-size:.78rem;line-height:1.4;color:#6b7f96;padding:0 4px;}
.is-done .nrdl-track-label,
.is-current .nrdl-track-label{color:#0B1F3A;font-weight:600;}

.nrdl-track-now{margin:16px 0 0;font-size:.83rem;color:#5d738f;text-align:center;}
.nrdl-track-now b{color:#0B1F3A;}

.nrdl-track-halt b{display:block;font-family:'Poppins',sans-serif;font-size:.95rem;color:#a02a3c;margin-bottom:5px;}
.nrdl-track-halt span{font-size:.82rem;color:#5d738f;line-height:1.55;}

/* ─────────────────────── my account ─────────────────────── */

.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:flex;
  flex-direction:column;gap:4px;}
.woocommerce-MyAccount-navigation li a{
  display:block;padding:10px 14px;border-radius:9px;text-decoration:none;
  font-size:.86rem;font-weight:500;color:#12263f;transition:background .18s,color .18s;
}
.woocommerce-MyAccount-navigation li a:hover{background:rgba(30,94,255,.07);color:#1E5EFF;}
.woocommerce-MyAccount-navigation li.is-active a{background:#0B1F3A;color:#fff;font-weight:600;}

/* ─────────────────────── responsive ─────────────────────── */

@media(max-width:560px){
  .nrdl-modal{padding:12px;align-items:flex-start;padding-top:24px;}
  .nrdl-modal-card{padding:22px 18px 18px;max-height:calc(100vh - 48px);border-radius:15px;}
  .nrdl-two{grid-template-columns:1fr;}
  .nrdl-modal-head h2{font-size:1.1rem;}
  .nrdl-track{padding:16px 12px;}
  .nrdl-track-label{font-size:.7rem;}
  .nrdl-track-dot{width:28px;height:28px;border-width:2.5px;}
  .nrdl-track-steps li::before{top:13px;}
  .nrdl-acc-name{display:none;}
  .nrdl-acc-btn{padding:8px;}
}

@media(prefers-reduced-motion:reduce){
  .nrdl-modal-card{animation:none;}
  .nrdl-submit,.nrdl-acc-btn,.nrdl-modal-x{transition:none;}
  .nrdl-submit:hover:not(:disabled){transform:none;}
  .nrdl-modal-x:hover{transform:none;}
}

/* ═══════════════════════════════════════════════════════════════════════
   HEADER ALIGNMENT

   The account control sits inside the theme's white pill bar, beside
   Collaborate (.nrd-plain) and Get a Quote (.nrd-btn). Both of those are
   50px pills with 10-11px of vertical padding and no border, so a 9px
   rounded, bordered, shorter button read as a foreign element wedged
   between them. These match .nrd-plain's metrics exactly, which is what
   makes the row line up.
   ═══════════════════════════════════════════════════════════════════════ */
.nrd-right .nrdl-acc-btn,
.nrd-right .nrdl-acc-wrap .nrdl-acc-btn{
  padding:10px 16px 10px 13px;
  border:0;border-radius:50px;
  background:transparent;color:#0B1F3A;
  font-family:'Inter',sans-serif;font-weight:600;font-size:.86rem;line-height:1.4;
  gap:7px;white-space:nowrap;
}
.nrd-right .nrdl-acc-btn:hover{background:rgba(30,94,255,.08);color:#1E5EFF;}
.nrd-right .nrdl-acc-btn svg{width:16px;height:16px;}

/* the dropdown hangs from the pill, so clear its rounded edge */
.nrd-right .nrdl-acc-menu{top:calc(100% + 14px);}

/* ═══════════════════════════════════════════════════════════════════════
   MY ACCOUNT FORMS

   WooCommerce lays these rows out with floats — .form-row-first is
   float:left;width:47%, .form-row-last is float:right. That only holds
   together inside WooCommerce's own page templates; dropped into this
   theme the floats collapse and labels end up beside or below their
   inputs instead of above them.

   Floats are switched off entirely and replaced with a two-column grid,
   which puts every label above its own field and keeps the pairs level
   however long the labels are.
   ═══════════════════════════════════════════════════════════════════════ */

.woocommerce-account .woocommerce-address-fields__field-wrapper,
.woocommerce-account .woocommerce-EditAccountForm{
  display:grid;grid-template-columns:1fr 1fr;gap:0 20px;align-items:start;
}

/* rows that must span the full width */
.woocommerce-account .form-row-wide,
.woocommerce-account .woocommerce-EditAccountForm fieldset,
.woocommerce-account .woocommerce-EditAccountForm > p:last-of-type,
.woocommerce-account .woocommerce-address-fields__field-wrapper > .form-row-wide{
  grid-column:1 / -1;
}

/* the floats have to go, or the grid inherits their widths */
.woocommerce-account form .form-row{
  float:none !important;width:auto !important;
  display:block;margin:0 0 16px;padding:0;
}

.woocommerce-account form .form-row label,
.woocommerce-account form fieldset legend{
  display:block;margin:0 0 6px;padding:0;
  font-family:'Inter',system-ui,sans-serif;font-weight:600;font-size:.79rem;
  color:#12263f;line-height:1.4;
}
.woocommerce-account form .form-row label .required{color:#c0392b;text-decoration:none;border:0;}
.woocommerce-account form .woocommerce-input-wrapper{display:block;width:100%;}

.woocommerce-account form input[type=text],
.woocommerce-account form input[type=email],
.woocommerce-account form input[type=tel],
.woocommerce-account form input[type=password],
.woocommerce-account form select,
.woocommerce-account form textarea,
.woocommerce-account form .select2-container .select2-selection--single{
  width:100%;box-sizing:border-box;
  padding:11px 13px;border-radius:10px;
  font:400 .87rem/1.4 'Inter',system-ui,sans-serif;color:#12263f;
  background:#f8fafd;border:1.5px solid #dbe4ef;
  transition:border-color .2s,background .2s;
}
.woocommerce-account form input:focus,
.woocommerce-account form select:focus,
.woocommerce-account form textarea:focus{outline:none;border-color:#1E5EFF;background:#fff;}

/* select2, which WooCommerce uses for country and state */
.woocommerce-account form .select2-container .select2-selection--single{height:auto;display:flex;align-items:center;}
.woocommerce-account form .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:1.4;padding:0;color:#12263f;
}
.woocommerce-account form .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;transform:translateY(-50%);right:8px;}

.woocommerce-account form fieldset{
  border:1px solid #e2e9f3;border-radius:12px;padding:18px 20px 4px;margin:6px 0 20px;background:#fbfcfe;
}
.woocommerce-account form fieldset legend{
  font-family:'Poppins',sans-serif;font-weight:700;font-size:.9rem;color:#0B1F3A;padding:0 8px;
}

.woocommerce-account form .woocommerce-Button,
.woocommerce-account form button[type=submit]{
  grid-column:1 / -1;justify-self:start;
  padding:12px 26px;border:0;border-radius:10px;cursor:pointer;
  font:700 .86rem/1 'Inter',system-ui,sans-serif;color:#fff;
  background:linear-gradient(90deg,#1E5EFF,#00A6D4);
  transition:transform .2s,box-shadow .2s;
}
.woocommerce-account form .woocommerce-Button:hover,
.woocommerce-account form button[type=submit]:hover{
  transform:translateY(-1px);box-shadow:0 10px 24px rgba(30,94,255,.28);
}

.woocommerce-account form em,
.woocommerce-account form span.description{
  display:block;font-style:normal;font-size:.75rem;color:#6b7f96;margin-top:5px;line-height:1.5;
}

/* the two saved-address cards */
.woocommerce-account .woocommerce-Addresses{
  display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;
}
.woocommerce-account .woocommerce-Address{
  background:#fff;border:1px solid #e2e9f3;border-radius:13px;padding:20px 22px;
}
.woocommerce-account .woocommerce-Address-title{
  display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  margin-bottom:12px;padding-bottom:11px;border-bottom:1px solid #eef2f7;
}
.woocommerce-account .woocommerce-Address-title h2,
.woocommerce-account .woocommerce-Address-title h3{
  font-family:'Poppins',sans-serif;font-size:1rem;font-weight:700;color:#0B1F3A;margin:0;
}
.woocommerce-account .woocommerce-Address-title a{
  font-size:.79rem;font-weight:600;color:#1E5EFF;text-decoration:none;white-space:nowrap;
}
.woocommerce-account .woocommerce-Address-title a:hover{text-decoration:underline;}
.woocommerce-account .woocommerce-Address address{
  font-style:normal;font-size:.85rem;line-height:1.7;color:#5d738f;
}

@media(max-width:760px){
  .woocommerce-account .woocommerce-address-fields__field-wrapper,
  .woocommerce-account .woocommerce-EditAccountForm,
  .woocommerce-account .woocommerce-Addresses{grid-template-columns:1fr;}
}

/* ── the two address cards ──────────────────────────────────────────────
   WooCommerce's col2-set floats its children and gives them width:48%.
   A grid on the container does not undo that: each card became 48% of its
   own grid cell, and the floats staggered them vertically. The children
   have to be released before the grid can lay them out.                */
.woocommerce-account .woocommerce-Addresses > .col-1,
.woocommerce-account .woocommerce-Addresses > .col-2,
.woocommerce-account .woocommerce-Addresses > .u-column1,
.woocommerce-account .woocommerce-Addresses > .u-column2,
.woocommerce-account .woocommerce-Addresses > div,
.woocommerce-account .col2-set > .col-1,
.woocommerce-account .col2-set > .col-2{
  float:none !important;
  max-width:none !important;
  margin:0 !important;
  min-width:0;
}

/* the header row: title on the left, the add/edit link on the right, and
   neither allowed to squash the other onto two lines */
.woocommerce-account .woocommerce-Address-title{
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:nowrap;
}
.woocommerce-account .woocommerce-Address-title h2,
.woocommerce-account .woocommerce-Address-title h3{
  flex:1;min-width:0;line-height:1.3;
}
.woocommerce-account .woocommerce-Address-title .edit{flex:none;}

/* the intro line above the cards */
.woocommerce-account .woocommerce-MyAccount-content > p:first-child{
  color:#5d738f;font-size:.86rem;line-height:1.6;margin:0 0 4px;
}

/* clear the floats so nothing below rides up into the cards */

/* ── address cards, made unconditional ─────────────────────────────────
   Everything about this section fought back: WooCommerce floats the two
   cards AND sets width:48% on them, the wrapper only exists when shipping
   is enabled, and a clearfix I had added was becoming a third grid item.
   Rather than keep matching specificity against a moving target, the
   layout is stated outright here. Flex is used instead of grid so the
   rule still works if the wrapper is ever absent and these end up as
   plain siblings.                                                     */
.woocommerce-account .woocommerce-Addresses,
.woocommerce-account .u-columns.addresses,
.woocommerce-account .col2-set.addresses{
  display:flex !important;flex-wrap:wrap;gap:20px;
  width:100% !important;margin:18px 0 0 !important;
}
.woocommerce-account .woocommerce-Address{
  float:none !important;
  flex:1 1 260px !important;
  max-width:none;margin:0;
  min-width:0;
  background:#fff;border:1px solid #e2e9f3;border-radius:13px;
}
.woocommerce-account .woocommerce-Addresses::after,
.woocommerce-account .col2-set.addresses::after{display:none !important;}

.woocommerce-account .woocommerce-Address-title{
  display:flex !important;align-items:baseline;justify-content:space-between;
  gap:14px;flex-wrap:nowrap;margin:0 0 12px;padding:0 0 11px;
  border-bottom:1px solid #eef2f7;
}
.woocommerce-account .woocommerce-Address-title h2{
  font-family:'Poppins',sans-serif;font-size:1rem;font-weight:700;color:#0B1F3A;
  margin:0 !important;flex:1;min-width:0;line-height:1.3;white-space:nowrap;
}
.woocommerce-account .woocommerce-Address-title .edit{
  flex:none;font-size:.79rem;font-weight:600;color:#1E5EFF;text-decoration:none;white-space:nowrap;
}
.woocommerce-account .woocommerce-Address address{
  font-style:normal;font-size:.85rem;line-height:1.7;color:#5d738f;margin:0;
}
@media(max-width:640px){
  .woocommerce-account .woocommerce-Addresses{flex-direction:column;}
}

/* ── My Account, signed out: one form at a time ─────────────────────── */

.nrdl-tabs{
  display:flex;gap:4px;padding:5px;margin:0 auto 20px;max-width:520px;
  background:#eef2f8;border-radius:12px;
}
.nrdl-tab{
  flex:1;padding:11px 16px;border:0;border-radius:9px;cursor:pointer;
  font:600 .86rem/1 'Inter',system-ui,sans-serif;color:#5d738f;background:none;
  transition:background .2s,color .2s,box-shadow .2s;
}
.nrdl-tab:hover{color:#0B1F3A;}
.nrdl-tab.is-on{background:#fff;color:#0B1F3A;box-shadow:0 2px 8px rgba(11,31,58,.1);}
.nrdl-tab:focus-visible{outline:2px solid #1E5EFF;outline-offset:2px;}

/* the two columns stack into one card once only one is shown */
.woocommerce-account #customer_login.nrdl-tabbed{
  display:block !important;max-width:520px;margin:0 auto;
}
.woocommerce-account #customer_login.nrdl-tabbed > div{
  float:none !important;width:auto !important;margin:0 !important;
}
.woocommerce-account #customer_login.nrdl-tabbed > div[hidden]{display:none !important;}

.woocommerce-account #customer_login h2{display:none;}
.woocommerce-account #customer_login form.login,
.woocommerce-account #customer_login form.register{
  border:1px solid #e2e9f3;border-radius:14px;padding:24px 24px 20px;
  background:#fff;margin:0;
}
.nrdl-acc-hintline{font-size:.75rem;color:#6b7f96;margin:-6px 0 14px;line-height:1.5;}

.woocommerce-account #customer_login .woocommerce-form-login__rememberme{
  display:inline-flex;align-items:center;gap:7px;font-size:.8rem;color:#5d738f;margin:0 0 0 14px;
}
.woocommerce-account #customer_login .lost_password{margin:12px 0 0;font-size:.8rem;}
.woocommerce-account #customer_login .lost_password a{color:#1E5EFF;text-decoration:none;font-weight:500;}
.woocommerce-account #customer_login .lost_password a:hover{text-decoration:underline;}

@media(max-width:560px){
  .nrdl-tabs{max-width:none;}
  .woocommerce-account #customer_login.nrdl-tabbed{max-width:none;}
  .woocommerce-account #customer_login form.login,
  .woocommerce-account #customer_login form.register{padding:20px 18px 16px;}
}

/* ── address cards: laid out without relying on the container ───────────
   Two attempts to lay these out via the parent (grid, then flex) did not
   take, and I could not determine why from the server side. So the cards
   size themselves instead: inline-block with an explicit width works
   whether the container ends up block, flex or grid, because in every one
   of those cases an explicit width on the child still applies.

   min-height keeps the pair identical when one has an address saved and
   the other does not, which is what made Shipping look taller.        */
.woocommerce-account .woocommerce-Address{
  display:inline-block !important;
  vertical-align:top !important;
  width:calc(50% - 12px) !important;
  min-height:132px !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:20px 22px !important;
}
.woocommerce-account .woocommerce-Addresses{
  font-size:0;            /* closes the inline-block whitespace gap */
  display:block !important;
  gap:0 !important;
}
.woocommerce-account .woocommerce-Address + .woocommerce-Address{
  margin-left:20px !important;
}
/* restore text sizing inside the cards, which font-size:0 above suppressed */
.woocommerce-account .woocommerce-Address > *{font-size:1rem;}
.woocommerce-account .woocommerce-Address address{font-size:.85rem;}
.woocommerce-account .woocommerce-Address-title h2{font-size:1rem;}
.woocommerce-account .woocommerce-Address-title .edit{font-size:.79rem;}

@media(max-width:700px){
  .woocommerce-account .woocommerce-Address{
    width:100% !important;min-height:0 !important;
  }
  .woocommerce-account .woocommerce-Address + .woocommerce-Address{
    margin-left:0 !important;margin-top:18px !important;
  }
}

/* ── card sizing, stated at a specificity nothing here can outrank ─────
   An earlier rule in this same file, .woocommerce-Addresses > div, used
   an element selector and therefore outranked .woocommerce-Address even
   though both were !important. That is why the cards kept their full
   width while padding and min-height applied. Matching on the container
   AND the card class puts this above it.                             */
.woocommerce-account .woocommerce-Addresses > .woocommerce-Address,
.woocommerce-account .col2-set.addresses > .woocommerce-Address{
  display:inline-block !important;
  vertical-align:top !important;
  width:calc(50% - 11px) !important;
  max-width:calc(50% - 11px) !important;
  min-height:140px !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:20px 22px !important;
}
.woocommerce-account .woocommerce-Addresses > .woocommerce-Address + .woocommerce-Address{
  margin-left:18px !important;
}
@media(max-width:700px){
  .woocommerce-account .woocommerce-Addresses > .woocommerce-Address,
  .woocommerce-account .col2-set.addresses > .woocommerce-Address{
    width:100% !important;max-width:100% !important;min-height:0 !important;
  }
  .woocommerce-account .woocommerce-Addresses > .woocommerce-Address + .woocommerce-Address{
    margin:18px 0 0 !important;
  }
}

/* ── card header: title above, link below ──────────────────────────────
   Side by side these cards are ~295px, and a nowrap heading next to a
   nowrap link simply does not fit. min-width:0 let the heading's box
   shrink while the text kept its width, so it overflowed and printed on
   top of the link. Stacking them removes the conflict entirely and reads
   better at this width.                                              */
.woocommerce-account .woocommerce-Addresses > .woocommerce-Address .woocommerce-Address-title{
  display:block !important;
  margin:0 0 14px !important;
  padding:0 0 13px !important;
  border-bottom:1px solid #eef2f7 !important;
}
.woocommerce-account .woocommerce-Addresses > .woocommerce-Address .woocommerce-Address-title h2{
  display:block !important;
  white-space:normal !important;
  overflow:visible !important;
  font-family:'Poppins',sans-serif !important;
  font-size:1.02rem !important;font-weight:700 !important;color:#0B1F3A !important;
  line-height:1.35 !important;margin:0 0 8px !important;
}
.woocommerce-account .woocommerce-Addresses > .woocommerce-Address .woocommerce-Address-title .edit{
  display:inline-flex !important;align-items:center;gap:6px;
  font-size:.78rem !important;font-weight:600 !important;
  color:#1E5EFF !important;text-decoration:none !important;
  padding:6px 12px;border-radius:20px;
  background:rgba(30,94,255,.08);
  transition:background .2s,color .2s;
}
.woocommerce-account .woocommerce-Addresses > .woocommerce-Address .woocommerce-Address-title .edit:hover{
  background:rgba(30,94,255,.16);color:#0B3FCB !important;
}

/* the card body */
.woocommerce-account .woocommerce-Addresses > .woocommerce-Address address{
  font-style:normal !important;font-size:.85rem !important;
  line-height:1.75 !important;color:#5d738f !important;margin:0 !important;
}
.woocommerce-account .woocommerce-Addresses > .woocommerce-Address{
  border:1px solid #e2e9f3 !important;border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 1px 3px rgba(11,31,58,.04) !important;
  transition:border-color .2s, box-shadow .2s;
}
.woocommerce-account .woocommerce-Addresses > .woocommerce-Address:hover{
  border-color:#cfdcec !important;box-shadow:0 6px 18px rgba(11,31,58,.07) !important;
}

/* ── My Account → Orders table ─────────────────────────────────────────
   Fits the content column without scrolling: a short date, a status badge,
   the total with its item count underneath, and compact action buttons
   side by side. Date, Status and Total cells are rendered by
   NRDL_Acc_Orders through WooCommerce's column hooks.                   */
@media (min-width:769px){
  .woocommerce-account .woocommerce-MyAccount-navigation{width:22%;}
  .woocommerce-account .woocommerce-MyAccount-content{width:76%;}
}

.woocommerce-account table.woocommerce-orders-table{width:100%;table-layout:auto;}
.woocommerce-account table.woocommerce-orders-table th,
.woocommerce-account table.woocommerce-orders-table td{
  vertical-align:middle;padding:14px 16px;
}
.woocommerce-account table.woocommerce-orders-table thead th{padding-top:12px;padding-bottom:12px;}
.woocommerce-account .woocommerce-orders-table__cell-order-number a{
  font-family:'Poppins',sans-serif;font-weight:700;color:#0B1F3A;text-decoration:none;
}
.woocommerce-account .woocommerce-orders-table__cell-order-number a:hover{color:#1E5EFF;}

.nrdl-odate{white-space:nowrap;color:#12263f;}

.nrdl-ostat{
  display:inline-block;white-space:nowrap;padding:4px 11px;border-radius:20px;
  font-size:.74rem;font-weight:600;line-height:1.3;
  background:#eef2f7;color:#41566f;
}
.nrdl-ostat.is-processing{background:rgba(30,94,255,.1);color:#1E4FD8;}
.nrdl-ostat.is-nrdl-shipping{background:rgba(0,180,220,.12);color:#00789a;}
.nrdl-ostat.is-completed{background:rgba(40,170,100,.12);color:#1c7a47;}
.nrdl-ostat.is-pending,.nrdl-ostat.is-on-hold{background:rgba(230,160,40,.14);color:#94600c;}
.nrdl-ostat.is-cancelled,.nrdl-ostat.is-failed,.nrdl-ostat.is-refunded{background:rgba(200,50,70,.1);color:#a02a3c;}

.nrdl-ototal{display:block;white-space:nowrap;font-weight:700;color:#0B1F3A;}
.nrdl-ototal del{font-weight:400;color:#8a9bb0;margin-right:3px;}
.nrdl-ototal ins{text-decoration:none;}
.nrdl-oitems{display:block;font-size:.74rem;color:#6b7f96;margin-top:2px;white-space:nowrap;}

.woocommerce-account td.woocommerce-orders-table__cell-order-actions{white-space:nowrap;}
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.button{
  display:inline-flex !important;align-items:center;justify-content:center;
  margin:0 6px 0 0 !important;padding:7px 16px !important;
  font-size:.78rem !important;line-height:1.2 !important;white-space:nowrap;vertical-align:middle;
  border:1.5px solid transparent !important;
}
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.button:last-child{margin-right:0 !important;}
/* Invoice as the secondary action */
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.button.invoice{
  background:#fff !important;color:#1E5EFF !important;border-color:#1E5EFF !important;
}
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.button.invoice:hover{
  background:rgba(30,94,255,.07) !important;color:#0B3FCB !important;
}
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.button:hover{
  box-shadow:0 6px 16px rgba(30,94,255,.22);transform:translateY(-1px);
}
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.button:not(:hover):not(:focus-visible){
  box-shadow:none !important;transform:none !important;
}

/* phones: WooCommerce shows each order as a card; buttons may wrap there */
@media (max-width:768px){
  .woocommerce-account td.woocommerce-orders-table__cell-order-actions{white-space:normal;}
  .woocommerce-account .woocommerce-orders-table__cell-order-actions a.button{margin:4px 6px 4px 0 !important;}
  .nrdl-oitems{display:inline;margin:0 0 0 6px;}
  .nrdl-ototal{display:inline;}
}
