/* ==== BBS ACCOUNT AND CART ==== */

/* Required markers must not be red */
.woocommerce .required,
.woocommerce abbr.required,
.woocommerce-page .required,
.woocommerce form .form-row .required,
.woocommerce form .form-row.woocommerce-invalid label{color:#0C0C0E!important;border:0!important;text-decoration:none!important;}
.woocommerce form .form-row.woocommerce-invalid input.input-text{border-color:#0C0C0E!important;}

/* ---------- Logged out: intro and two cards ---------- */
.woocommerce-account:not(.logged-in) .woocommerce{max-width:1040px;margin:0 auto;}
.bbs-account-intro{text-align:center;margin:0 0 14px;}
.bbs-account-intro h1{font-family:Archivo,sans-serif;font-weight:700;font-size:44px;line-height:1.05;letter-spacing:-.03em;color:#0C0C0E;margin:0 0 12px;}
.bbs-account-intro p{font-family:'Instrument Sans',sans-serif;font-size:17px;color:#71717A;margin:0;}
.bbs-account-benefits{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:0 0 40px;}
.bbs-account-benefits span{font-family:'Instrument Sans',sans-serif;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#71717A;border:1px solid #E4E4E7;padding:8px 14px;}

/* Beat WooCommerce's float layout and the base col2-set widths */
.woocommerce-account .woocommerce > .u-columns#customer_login,
.woocommerce-account #customer_login.col2-set{display:grid!important;grid-template-columns:1fr 1fr!important;gap:20px!important;margin:0!important;float:none!important;width:100%!important;align-items:start;}
.woocommerce-account #customer_login::before,
.woocommerce-account #customer_login::after{display:none!important;content:none!important;}
.woocommerce-account #customer_login > .col-1,
.woocommerce-account #customer_login > .col-2,
.woocommerce-account .woocommerce .col2-set .col-1,
.woocommerce-account .woocommerce .col2-set .col-2{width:100%!important;max-width:none!important;float:none!important;clear:none!important;margin:0!important;padding:34px 32px!important;border:1px solid #E4E4E7;background:#fff;box-sizing:border-box;}
.woocommerce-account #customer_login h2{font-family:Archivo,sans-serif;font-weight:700;font-size:21px;letter-spacing:-.02em;margin:0 0 18px;padding:0;border:0;}
.woocommerce-account #customer_login form.login,
.woocommerce-account #customer_login form.register{border:0!important;padding:0!important;margin:0!important;}
.woocommerce-account .woocommerce-form-login__rememberme{font-size:14px;color:#71717A;display:flex;align-items:center;gap:8px;margin:4px 0 14px;}
.woocommerce-account .woocommerce-form-login__rememberme input{margin:0;}
.woocommerce-account .woocommerce-LostPassword{margin:14px 0 0;font-size:14px;}
.woocommerce-account .woocommerce-LostPassword a{color:#71717A;text-decoration:underline;text-underline-offset:3px;}
.woocommerce-account .woocommerce-LostPassword a:hover{color:#0C0C0E;}
.woocommerce-account #customer_login .button{width:100%;text-align:center;margin-top:6px;}
.woocommerce-account .woocommerce-privacy-policy-text{font-size:13px;color:#71717A;margin-top:14px;}
.woocommerce-account .show-password-input{color:#71717A;}

/* ---------- Dashboard ---------- */
.woocommerce-account.logged-in .woocommerce{display:flex;gap:44px;align-items:flex-start;max-width:1240px;margin:0 auto;}
.woocommerce-account .woocommerce-MyAccount-navigation{width:230px;flex:0 0 230px;float:none;margin:0;}
.woocommerce-account .woocommerce-MyAccount-content{width:auto;flex:1 1 auto;float:none;}
.woocommerce-account .woocommerce-MyAccount-navigation ul{border-top:1px solid #E4E4E7;}
.woocommerce-account .woocommerce-MyAccount-navigation li a{padding:14px 0;font-size:15px;color:#71717A;display:flex;justify-content:space-between;align-items:center;}
.woocommerce-account .woocommerce-MyAccount-navigation li a::after{content:'';width:6px;height:6px;border-right:1px solid currentColor;border-top:1px solid currentColor;transform:rotate(45deg);opacity:.5;}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{color:#0C0C0E;font-weight:600;}

.bbs-dash-head h2{font-family:Archivo,sans-serif;font-weight:700;font-size:32px;letter-spacing:-.03em;line-height:1.08;color:#0C0C0E;margin:0 0 8px;}
.bbs-dash-head p{font-family:'Instrument Sans',sans-serif;color:#71717A;font-size:16px;margin:0 0 28px;}
.bbs-dash-latest{border:1px solid #0C0C0E;padding:22px 24px;margin:0 0 24px;}
.bbs-dash-label{display:block;font-family:'Instrument Sans',sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#71717A;margin-bottom:12px;}
.bbs-dash-latest-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.bbs-dash-latest-row > div:first-child{display:flex;flex-direction:column;gap:4px;flex:1 1 200px;}
.bbs-dash-latest-row strong{font-family:Archivo,sans-serif;font-size:18px;color:#0C0C0E;}
.bbs-dash-latest-row span{font-family:'Instrument Sans',sans-serif;font-size:14px;color:#71717A;}
.bbs-dash-latest-total{font-family:'Instrument Sans',sans-serif;font-weight:600;font-size:18px;color:#0C0C0E;}
.bbs-dash-latest .button{padding:12px 22px!important;}
.bbs-dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.bbs-dash-card{border:1px solid #E4E4E7;padding:24px 22px;display:flex;flex-direction:column;}
.bbs-dash-card h3{font-family:Archivo,sans-serif;font-weight:700;font-size:18px;letter-spacing:-.02em;color:#0C0C0E;margin:0 0 8px;}
.bbs-dash-card p{font-family:'Instrument Sans',sans-serif;font-size:14px;line-height:1.55;color:#71717A;margin:0 0 18px;}
.bbs-dash-card a{margin-top:auto;font-family:'Instrument Sans',sans-serif;font-weight:600;font-size:14px;color:#0C0C0E;border-bottom:1px solid #0C0C0E;align-self:flex-start;padding-bottom:2px;}
.bbs-dash-card a:hover{color:#71717A;border-bottom-color:#71717A;}

/* ---------- Mobile ---------- */
@media(max-width:900px){.bbs-dash-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:767px){
  .bbs-account-intro h1{font-size:30px;}
  .woocommerce-account .woocommerce > .u-columns#customer_login,
  .woocommerce-account #customer_login.col2-set{grid-template-columns:1fr!important;}
  .woocommerce-account #customer_login > .col-1,
  .woocommerce-account #customer_login > .col-2{padding:26px 22px!important;}
  .woocommerce-account.logged-in .woocommerce{flex-direction:column;gap:28px;}
  .woocommerce-account .woocommerce-MyAccount-navigation{width:100%;flex:1 1 auto;}
  .bbs-dash-grid{grid-template-columns:1fr;}
  .bbs-dash-head h2{font-size:25px;}
}

/* ==== BBS CART NOTICE ==== */
/* Woo and Astra give the notice a coloured bar; keep it monochrome. */
.woocommerce-message,.woocommerce-info,.woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-message{
  background:#F4F4F5!important;color:#0C0C0E!important;
  border:0!important;border-left:2px solid #0C0C0E!important;
  border-radius:0!important;box-shadow:none!important;
  font-family:'Instrument Sans',sans-serif;font-size:15px;line-height:1.5;
  padding:16px 20px!important;margin:0 0 20px!important;
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none!important;}
.woocommerce-message a.button,.woocommerce-info a.button{
  background:#0C0C0E!important;color:#fff!important;
  border:1px solid #0C0C0E!important;border-radius:0!important;
  font-family:'Instrument Sans',sans-serif;font-weight:600;font-size:14px;
  padding:11px 20px!important;min-height:0!important;order:2;margin:0!important;}
.woocommerce-message a.button:hover{background:#fff!important;color:#0C0C0E!important;}
@media(max-width:767px){
  .woocommerce-message,.woocommerce-info,.woocommerce-error{font-size:14px;padding:14px 16px!important;}
  .woocommerce-message a.button{width:100%;text-align:center;}
}
