/* NiKKi dark — My Account + Order received (thank-you)
   Paste into: Appearance > Customize > Additional CSS (or Elementor > Site Settings > Custom CSS).
   Cart + Checkout live in cart-checkout-dark.css. This file REPLACES the old light woocommerce.css —
   remove the old one, it conflicts with the dark checkout.
   Set the My Account and Order received page backgrounds to #121214 in Elementor if they are not already.
   !important is used where the theme / Elementor Pro styles must be overridden. */

body.woocommerce-account,
body.woocommerce-order-received{
  --nk-bg:#121214;
  --nk-panel:#1e1a17;
  --nk-panel-2:#292420;
  --nk-field:#16130f;
  --nk-line:rgba(250,247,242,.14);
  --nk-line-soft:rgba(250,247,242,.08);
  --nk-text:#faf7f2;
  --nk-muted:#a79d90;
  --nk-clay:#c17a52;
  --nk-clay-dark:#a8643f;
  --nk-sage:#a9bea3;
  --nk-radius:15px;
  --nk-display:"Bebas Neue",sans-serif;
  --nk-body:"Montserrat",-apple-system,"Segoe UI",sans-serif;
  background:var(--nk-bg) !important;
  color:var(--nk-text);
}

/* ---------- page titles ---------- */
body.woocommerce-account .entry-title,
body.woocommerce-account main h1,
body.woocommerce-account h1,
body.woocommerce-order-received h1{
  font-family:var(--nk-display) !important;font-weight:400 !important;
  font-size:clamp(40px,5vw,56px) !important;line-height:1.05 !important;
  letter-spacing:.01em;text-transform:uppercase;
  color:var(--nk-clay) !important;text-align:center;
}

/* ---------- breathing room above and below the page content ---------- */
:is(body.woocommerce-account,body.woocommerce-order-received) .site-main{padding-top:clamp(40px,6vw,80px) !important;padding-bottom:clamp(40px,6vw,80px) !important;}

/* ---------- base text ---------- */
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce p,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce label,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce span,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce td,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce th,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce li,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce strong,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce address,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce .amount,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce bdi{font-family:var(--nk-body);color:var(--nk-text);}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce label{font-size:13px;font-weight:600;letter-spacing:.02em;}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce .required{color:var(--nk-clay) !important;text-decoration:none;}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce a:not(.button){color:var(--nk-clay);text-decoration:none;}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce a:not(.button):hover{color:var(--nk-sage);}

/* ---------- fields ---------- */
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce input.input-text,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce input[type=text],
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce input[type=email],
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce input[type=tel],
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce input[type=password],
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce select,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce textarea{
  font-family:var(--nk-body);font-size:15px;
  background:var(--nk-field) !important;color:var(--nk-text) !important;
  border:1px solid var(--nk-line) !important;border-radius:8px !important;box-shadow:none;
  transition:border-color .2s,box-shadow .2s;
}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce input::placeholder,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce textarea::placeholder{color:var(--nk-muted) !important;opacity:1;}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce input:focus,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce select:focus,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce textarea:focus{
  outline:none;border-color:var(--nk-clay) !important;box-shadow:0 0 0 3px rgba(193,122,82,.22) !important;
}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce input:-webkit-autofill{
  -webkit-text-fill-color:var(--nk-text);box-shadow:0 0 0 1000px var(--nk-field) inset;caret-color:var(--nk-text);
}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce input[type=checkbox],
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce input[type=radio]{accent-color:var(--nk-clay);}
body.woocommerce-account .select2-container--default .select2-selection--single{background:var(--nk-field) !important;border:1px solid var(--nk-line) !important;border-radius:8px !important;}
body.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--nk-text) !important;}

/* ---------- buttons ---------- */
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce .button,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce button.button,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce a.button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:13px 28px;
  font-family:var(--nk-body);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1;
  color:#fff !important;background:var(--nk-clay) !important;
  border:1px solid var(--nk-clay) !important;border-radius:8px !important;
  cursor:pointer;text-decoration:none;
  transition:background .2s,border-color .2s,transform .15s;
}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce .button:hover,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce a.button:hover{
  background:var(--nk-clay-dark) !important;border-color:var(--nk-clay-dark) !important;color:#fff !important;transform:translateY(-1px);
}

/* ---------- notices ---------- */
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-message,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-info,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-error{
  background:var(--nk-panel) !important;
  border:1px solid var(--nk-line) !important;border-left:4px solid var(--nk-sage) !important;
  border-radius:10px;color:var(--nk-text) !important;
  padding:16px 20px;margin:0 0 24px;list-style:none;
}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-error{border-left-color:#e0745f !important;}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-message::before,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-info::before,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-error::before{display:none;}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-message *,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-info *,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-error *{color:var(--nk-text);}

/* ---------- dark overrides on the layout rules below ---------- */
:is(body.woocommerce-account,body.woocommerce-order-received) table.shop_table,
:is(body.woocommerce-account,body.woocommerce-order-received) table.shop_table td,
:is(body.woocommerce-account,body.woocommerce-order-received) table.shop_table th{background:transparent !important;color:var(--nk-text) !important;border-color:var(--nk-line-soft) !important;}
:is(body.woocommerce-account,body.woocommerce-order-received) table.shop_table th{color:var(--nk-muted) !important;}
body.woocommerce-account .woocommerce table.shop_table{border:1px solid var(--nk-line) !important;}
body.woocommerce-account .woocommerce table.shop_table th{background:var(--nk-panel-2) !important;}
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce-order h2,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce h2,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce h3,
:is(body.woocommerce-account,body.woocommerce-order-received) .woocommerce legend{color:var(--nk-text) !important;}
body.woocommerce-order-received ul.woocommerce-order-overview li{color:var(--nk-muted) !important;}
body.woocommerce-order-received ul.woocommerce-order-overview li strong{color:var(--nk-text) !important;}
body.woocommerce-order-received .woocommerce-thankyou-order-received{color:var(--nk-text) !important;}
body.woocommerce-account .woocommerce-MyAccount-navigation li a{color:var(--nk-text);}
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{color:var(--nk-clay) !important;}
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a{color:var(--nk-muted);}
body.woocommerce-account form.woocommerce-form-login .woocommerce-form-login__rememberme span{color:var(--nk-muted);}
body.woocommerce-account .woocommerce .show-password-input{filter:invert(1);}
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-Address{color:var(--nk-text);}

/* =====================================================================
   ORDER RECEIVED (thank-you page)
   ===================================================================== */
body.woocommerce-order-received .woocommerce-order{
  max-width:960px;margin:0 auto;padding:clamp(24px,5vw,56px) 24px clamp(48px,8vw,96px);
  font-family:var(--nk-body);color:var(--nk-text);
}
body.woocommerce-order-received .woocommerce-thankyou-order-received{
  background:var(--nk-panel);border:1px solid var(--nk-line);border-left:5px solid var(--nk-sage);border-radius:var(--nk-radius);
  padding:22px 26px;margin:0 0 24px;font-size:17px;font-weight:600;color:var(--nk-text);
}
body.woocommerce-order-received ul.woocommerce-order-overview{
  list-style:none;margin:0 0 32px;padding:0;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;border:0;
}
body.woocommerce-order-received ul.woocommerce-order-overview li{
  float:none;margin:0;border:1px solid var(--nk-line);border-radius:12px;background:var(--nk-panel);
  padding:16px 18px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--nk-muted);
}
body.woocommerce-order-received ul.woocommerce-order-overview li strong{
  display:block;margin-top:8px;font-size:16px;letter-spacing:0;text-transform:none;color:var(--nk-text);
}
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details{
  background:var(--nk-panel);border:1px solid var(--nk-line);border-radius:var(--nk-radius);
  padding:24px 28px;margin:0 0 24px;
}
body.woocommerce-order-received .woocommerce-order h2,
body.woocommerce-order-received .woocommerce-order-details__title,
body.woocommerce-order-received .woocommerce-column__title{
  font-family:var(--nk-display);font-weight:400;font-size:32px;letter-spacing:.01em;
  text-transform:uppercase;color:var(--nk-text);margin:0 0 16px;
}
body.woocommerce-order-received table.shop_table{width:100%;border:0;border-collapse:collapse;}
body.woocommerce-order-received table.shop_table th,
body.woocommerce-order-received table.shop_table td{padding:14px 0;border:0;border-bottom:1px solid var(--nk-line-soft);text-align:left;}
body.woocommerce-order-received table.shop_table th{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--nk-muted);}
body.woocommerce-order-received address{font-style:normal;line-height:1.7;border:0;padding:0;}

/* =====================================================================
   MY ACCOUNT
   ===================================================================== */
body.woocommerce-account .woocommerce{
  max-width:1120px;margin:0 auto;padding:clamp(24px,5vw,64px) 24px clamp(48px,8vw,96px);
}
body.woocommerce-account .woocommerce h2,
body.woocommerce-account .woocommerce h3{font-family:var(--nk-body);font-weight:600;color:var(--nk-text);margin:0 0 18px;}
body.woocommerce-account .woocommerce h2{font-size:clamp(22px,2.6vw,28px);}
body.woocommerce-account .woocommerce h3{font-size:19px;}
body.woocommerce-account .woocommerce p{line-height:1.65;}

/* logged out: centred login card */
body.woocommerce-account:not(.logged-in) .woocommerce{max-width:480px;padding-top:12px;}
body.woocommerce-account:not(.logged-in) .woocommerce h2{text-align:center;}
body.woocommerce-account:not(.logged-in) .entry-title,
body.woocommerce-account:not(.logged-in) main h1{margin:clamp(24px,5vw,56px) 0 0;}
body.woocommerce-account form.woocommerce-form-login,
body.woocommerce-account form.woocommerce-form-register,
body.woocommerce-account form.lost_reset_password{
  background:var(--nk-panel);border:1px solid var(--nk-line);border-radius:var(--nk-radius);
  padding:32px 28px 28px;margin:0;
}
body.woocommerce-account .woocommerce form .form-row{margin:0 0 18px;padding:0;}
body.woocommerce-account .woocommerce form .form-row label{display:block;margin-bottom:8px;line-height:1.3;}
body.woocommerce-account .woocommerce input.input-text,
body.woocommerce-account .woocommerce select{width:100%;height:auto;min-height:48px;padding:12px 14px;}
body.woocommerce-account .woocommerce .password-input{display:block;position:relative;}
body.woocommerce-account .woocommerce .password-input input{padding-right:48px;}
body.woocommerce-account .woocommerce .show-password-input{
  position:absolute;top:50%;right:6px;transform:translateY(-50%);
  width:40px;height:40px;background:none;border:0;cursor:pointer;opacity:.55;
}
body.woocommerce-account form.woocommerce-form-login .form-row:not(.form-row-wide){
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin:6px 0 0;
}
body.woocommerce-account form.woocommerce-form-login .form-row::before,
body.woocommerce-account form.woocommerce-form-login .form-row::after{display:none;}
body.woocommerce-account form.woocommerce-form-login .woocommerce-form-login__submit{order:2;min-width:140px;}
body.woocommerce-account form.woocommerce-form-login .woocommerce-form-login__rememberme{
  order:1;display:inline-flex;align-items:center;gap:8px;margin:0;font-weight:500;color:var(--nk-muted);
}
body.woocommerce-account .woocommerce input[type=checkbox]{width:16px;height:16px;margin:0;}
body.woocommerce-account .woocommerce-LostPassword{margin:20px 0 0;font-size:14px;}

/* logged in: sidebar + content */
body.woocommerce-account.logged-in .woocommerce{
  display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px 40px;align-items:start;
}
body.woocommerce-account.logged-in .woocommerce-notices-wrapper{grid-column:1 / -1;}
/* WooCommerce clearfix pseudo-elements would otherwise occupy grid cells and swap the columns */
body.woocommerce-account.logged-in .woocommerce::before,
body.woocommerce-account.logged-in .woocommerce::after{content:none !important;display:none !important;}
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation{grid-column:1;grid-row:2;}
body.woocommerce-account.logged-in .woocommerce-MyAccount-content{grid-column:2;grid-row:2;width:100% !important;min-width:0;}
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content{float:none;width:auto;}
body.woocommerce-account .woocommerce-MyAccount-navigation{
  background:var(--nk-panel);border:1px solid var(--nk-line);border-radius:var(--nk-radius);
  padding:10px;position:sticky;top:110px;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;}
body.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0;}
body.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:block;padding:13px 16px;font-size:14px;font-weight:600;color:var(--nk-text);
  border-radius:8px;border-left:3px solid transparent;text-decoration:none;transition:background .2s,color .2s;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:var(--nk-panel-2);color:var(--nk-clay);}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
  background:rgba(193,122,82,.1);color:var(--nk-clay);border-left-color:var(--nk-clay);
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a{
  color:var(--nk-muted);font-weight:500;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  background:var(--nk-panel);border:1px solid var(--nk-line);border-radius:var(--nk-radius);
  padding:clamp(24px,3vw,40px);
}
body.woocommerce-account .woocommerce-MyAccount-content > p:first-child{margin-top:0;}
body.woocommerce-account .woocommerce-MyAccount-content fieldset{border:1px solid var(--nk-line);border-radius:10px;padding:20px;margin:24px 0;}
body.woocommerce-account .woocommerce-MyAccount-content legend{padding:0 8px;font-weight:600;}

/* tables */
body.woocommerce-account .woocommerce table.shop_table{
  width:100%;border:1px solid var(--nk-line);border-radius:10px;border-collapse:separate;border-spacing:0;overflow:hidden;margin:0 0 24px;
}
body.woocommerce-account .woocommerce table.shop_table th{
  background:var(--nk-panel-2);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--nk-muted);
  padding:14px 16px;text-align:left;border:0;border-bottom:1px solid var(--nk-line);
}
body.woocommerce-account .woocommerce table.shop_table td{padding:16px;border:0;border-bottom:1px solid var(--nk-line-soft);font-size:14.5px;vertical-align:middle;}
body.woocommerce-account .woocommerce table.shop_table tr:last-child td{border-bottom:0;}
body.woocommerce-account .woocommerce table.shop_table .button{min-height:38px;padding:9px 18px;font-size:12px;}

/* addresses + account details */
body.woocommerce-account .woocommerce-Addresses{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;}
body.woocommerce-account .woocommerce-Addresses .col-1,
body.woocommerce-account .woocommerce-Addresses .col-2{float:none;width:auto;}
body.woocommerce-account .woocommerce-Address{border:1px solid var(--nk-line);border-radius:10px;padding:20px 22px;background:var(--nk-panel-2);}
body.woocommerce-account .woocommerce-Address address{font-style:normal;line-height:1.7;}
body.woocommerce-account .woocommerce-Address-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;}
body.woocommerce-account .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-Address-title h3{margin:0 0 10px;font-size:18px;}
body.woocommerce-account .woocommerce-Address-title a{font-size:13px;font-weight:600;}
body.woocommerce-account .woocommerce form .form-row-first,
body.woocommerce-account .woocommerce form .form-row-last{width:calc(50% - 10px);float:left;}
body.woocommerce-account .woocommerce form .form-row-first{margin-right:20px;}
body.woocommerce-account .woocommerce form .form-row-wide{clear:both;}

/* ---------- mobile ---------- */
@media (max-width:860px){
  body.woocommerce-account.logged-in .woocommerce{grid-template-columns:1fr;}
  body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation,
  body.woocommerce-account.logged-in .woocommerce-MyAccount-content{grid-column:1;grid-row:auto;}
  body.woocommerce-account .woocommerce-MyAccount-navigation{position:static;}
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;}
  body.woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none;}
  body.woocommerce-account .woocommerce-MyAccount-navigation li a{white-space:nowrap;border-left:0;border-bottom:3px solid transparent;border-radius:6px 6px 0 0;}
  body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{border-bottom-color:var(--nk-clay);}
}

/* ---------- shop / single product: gallery zoom icon ---------- */
body.woocommerce .woocommerce-product-gallery__trigger,
body.single-product .woocommerce-product-gallery__trigger{
  background:var(--nk-panel,#1e1a17) !important;border:1px solid rgba(250,247,242,.14) !important;
  color:#faf7f2 !important;border-radius:50% !important;
}
body.woocommerce .woocommerce-product-gallery__trigger::before,
body.single-product .woocommerce-product-gallery__trigger::before{border-color:#faf7f2 !important;}
body.woocommerce .woocommerce-product-gallery__trigger::after,
body.single-product .woocommerce-product-gallery__trigger::after{background:#faf7f2 !important;}
