/* FYNSOURCE ENTERPRISE PORTAL V5 */
.fynv5-page,
.fynv5-page *{box-sizing:border-box}

body.woocommerce-account .site-content,
body.woocommerce-account .content-area,
body.woocommerce-account .site-main,
body.woocommerce-account .ast-container,
body.woocommerce-account #primary,
body.woocommerce-account #main{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important
}

.fynv5-page{
  --blue:#2563eb;
  --blue-dark:#1d4ed8;
  --orange:#f97316;
  --text:#0f172a;
  --muted:#64748b;
  --border:#dbe5f1;
  min-height:620px;
  padding:24px 0 55px;
  background:#f8fafc;
  color:var(--text);
  font-family:Inter,Arial,sans-serif
}

.fynv5-page a{text-decoration:none}
.fynv5-shell{width:min(1640px,calc(100% - 28px));margin:auto;display:grid;grid-template-columns:235px minmax(0,1fr);gap:16px}
.fynv5-sidebar{position:sticky;top:90px;align-self:start}
.fynv5-user-card{padding:16px;border:1px solid var(--border);border-radius:14px;background:#fff;display:flex;align-items:center;gap:10px}
.fynv5-user-card>span{width:44px;height:44px;border-radius:50%;background:#eff6ff;color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900}
.fynv5-user-card div{min-width:0}
.fynv5-user-card small,.fynv5-user-card strong,.fynv5-user-card em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fynv5-user-card small{color:var(--muted);font-size:8px}
.fynv5-user-card strong{margin-top:2px;font-size:11px}
.fynv5-user-card em{margin-top:2px;color:var(--muted);font-size:8px;font-style:normal}
.fynv5-nav{margin-top:10px;padding:8px;border:1px solid var(--border);border-radius:14px;background:#fff}
.fynv5-nav a{min-height:42px;padding:0 11px;border-radius:8px;color:#334155;display:flex;align-items:center;font-size:10px;font-weight:750}
.fynv5-nav a:hover,.fynv5-nav a.is-active{background:var(--blue);color:#fff}
.fynv5-content{min-width:0}
.fynv5-page-head{min-height:120px;padding:22px 24px;border:1px solid var(--border);border-radius:16px;background:radial-gradient(circle at 95% 0%,rgba(37,99,235,.11),transparent 30%),#fff;display:flex;align-items:center;justify-content:space-between;gap:20px}
.fynv5-page-head.simple{min-height:95px}
.fynv5-page-head span,.fynv5-create-head span,.fynv5-form-head>span{display:block;margin-bottom:6px;color:var(--blue);font-size:8px;font-weight:850;letter-spacing:.9px}
.fynv5-page-head h1{margin:0;font-size:30px;line-height:1.1}
.fynv5-page-head p{margin:6px 0 0;color:var(--muted);font-size:10.5px}
.fynv5-page-head>a,.fynv5-page-head>button{min-height:40px;padding:0 14px;border:0;border-radius:8px;background:var(--orange);color:#fff;display:inline-flex;align-items:center;font-size:9px;font-weight:800;cursor:pointer}
.fynv5-kpis{margin:12px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.fynv5-kpis article{min-height:86px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fff}
.fynv5-kpis small{display:block;color:var(--muted);font-size:8.5px}
.fynv5-kpis strong{display:block;margin-top:7px;font-size:22px}
.fynv5-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fynv5-dashboard-grid>section{padding:16px;border:1px solid var(--border);border-radius:14px;background:#fff}
.fynv5-section-head{margin-bottom:11px;display:flex;align-items:center;justify-content:space-between}
.fynv5-section-head h2{margin:0;font-size:16px}
.fynv5-section-head a{color:var(--blue);font-size:8.5px;font-weight:800}
.fynv5-mini-list{display:flex;flex-direction:column;gap:7px}
.fynv5-mini-list article{min-height:54px;padding:9px;border-radius:9px;background:#f8fafc;display:flex;align-items:center;justify-content:space-between;gap:9px}
.fynv5-mini-list small,.fynv5-mini-list strong{display:block}
.fynv5-mini-list small{color:var(--blue);font-size:7.5px}
.fynv5-mini-list strong{margin-top:3px;font-size:9.5px}
.fynv5-mini-list span{padding:5px 7px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:7.5px;font-weight:800}
.fynv5-empty{min-height:110px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:9.5px;text-align:center}
.fynv5-empty.large{min-height:240px;border:1px solid var(--border);border-radius:14px;background:#fff}
.fynv5-rfq-create{margin:12px 0;padding:17px;border:1px solid #bcd0ef;border-radius:15px;background:#fff;box-shadow:0 18px 38px rgba(15,23,42,.07)}
.fynv5-create-head{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #e9eef5;display:flex;justify-content:space-between}
.fynv5-create-head h2{margin:0;font-size:21px}
.fynv5-create-head p{margin:4px 0 0;color:var(--muted);font-size:9px}
.fynv5-close-rfq{width:32px;height:32px;border:0;border-radius:8px;background:#f1f5f9;cursor:pointer}
.fynv5-rfq-lines{display:flex;flex-direction:column;gap:9px}
.fynv5-rfq-line{padding:11px;border:1px solid var(--border);border-radius:10px;background:#f8fafc;display:grid;grid-template-columns:minmax(250px,1.6fr) 130px 115px minmax(180px,1fr) auto;align-items:end;gap:8px}
.fynv5-rfq-line label,.fynv5-rfq-form>label span,.fynv5-customer-grid label span{display:block;margin-bottom:5px;color:#334155;font-size:8px;font-weight:750}
.fynv5-rfq-line input,.fynv5-rfq-line select,.fynv5-customer-grid input,.fynv5-rfq-form textarea{width:100%;height:38px;padding:0 10px;border:1px solid #cfd9e6;border-radius:8px;background:#fff;font-family:inherit;font-size:9.5px;outline:0}
.fynv5-rfq-form textarea{height:auto;min-height:88px;padding:9px;resize:vertical}
.fynv5-product-picker{position:relative}
.fynv5-suggestions{position:absolute;z-index:40;top:62px;width:100%;max-height:250px;overflow:auto;border:1px solid var(--border);border-radius:9px;background:#fff;box-shadow:0 14px 32px rgba(15,23,42,.13)}
.fynv5-suggestion{width:100%;min-height:58px;padding:7px;border:0;border-bottom:1px solid #edf2f7;background:#fff;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:8px;text-align:left;cursor:pointer}
.fynv5-suggestion:hover{background:#eff6ff}
.fynv5-suggestion img,.fynv5-selected-product img{width:42px;height:42px;object-fit:contain}
.fynv5-suggestion strong,.fynv5-suggestion small,.fynv5-selected-product strong,.fynv5-selected-product small{display:block}
.fynv5-suggestion strong,.fynv5-selected-product strong{font-size:9px}
.fynv5-suggestion small,.fynv5-selected-product small{margin-top:2px;color:var(--muted);font-size:7.5px}
.fynv5-selected-product{min-height:53px;padding:6px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;display:grid;grid-template-columns:42px minmax(0,1fr);gap:7px;align-items:center}
.fynv5-qty{height:38px;overflow:hidden;border:1px solid #cfd9e6;border-radius:8px;background:#fff;display:grid;grid-template-columns:35px 1fr 35px}
.fynv5-qty button{border:0;background:#f8fafc;color:var(--blue);font-size:17px;cursor:pointer}
.fynv5-qty input{height:36px;padding:0;border:0;border-left:1px solid #e2e8f0;border-right:1px solid #e2e8f0;border-radius:0;text-align:center}
.fynv5-remove-line{min-height:38px;padding:0 9px;border:1px solid #fecaca;border-radius:8px;background:#fff;color:#b91c1c;font-size:8px;cursor:pointer}
.fynv5-add-line{min-height:35px;margin-top:8px;padding:0 11px;border:1px dashed #93b4e8;border-radius:8px;background:#f8fbff;color:var(--blue);font-size:8.5px;font-weight:800;cursor:pointer}
.fynv5-customer-grid{margin:13px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.fynv5-form-actions{margin-top:11px;display:flex;justify-content:flex-end;gap:7px}
.fynv5-form-actions button{min-height:37px;padding:0 13px;border-radius:8px;font-size:8.5px;font-weight:800;cursor:pointer}
.fynv5-cancel-rfq{border:1px solid var(--border);background:#fff;color:#475569}
.fynv5-rfq-form button[type="submit"]{border:0;background:var(--blue);color:#fff}
.fynv5-form-message{margin-top:9px;padding:9px;border-radius:8px;background:#ecfdf3;color:#166534;font-size:8.5px}
.fynv5-form-message.is-error{background:#fef2f2;color:#b91c1c}
.fynv5-rfq-tools{min-height:56px;margin-bottom:10px;padding:8px;border:1px solid var(--border);border-radius:10px;background:#fff;display:grid;grid-template-columns:1fr 180px;gap:7px}
.fynv5-rfq-tools input,.fynv5-rfq-tools select{width:100%;height:38px;padding:0 10px;border:1px solid #d3deeb;border-radius:8px;background:#fff;font-size:9.5px}
.fynv5-rfq-list{display:flex;flex-direction:column;gap:10px}
.fynv5-rfq-card{padding:16px;border:1px solid var(--border);border-radius:13px;background:#fff}
.fynv5-rfq-card-head{padding-bottom:11px;border-bottom:1px solid #edf2f7;display:flex;justify-content:space-between;gap:12px}
.fynv5-rfq-card-head small,.fynv5-rfq-card-head time{display:block;color:var(--muted);font-size:7.5px}
.fynv5-rfq-card-head small{color:var(--blue);font-weight:800}
.fynv5-rfq-card-head h3{margin:4px 0;font-size:13px}
.fynv5-rfq-card-head>span,.fynv5-rfq-response>div>small{padding:5px 7px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:7.5px;font-weight:800;white-space:nowrap}
.status-under-review{background:#fff7ed!important;color:#c2410c!important}
.status-quoted{background:#f5f3ff!important;color:#7c3aed!important}
.status-accepted{background:#ecfdf3!important;color:#15803d!important}
.status-closed{background:#f1f5f9!important;color:#475569!important}
.status-cancelled{background:#fef2f2!important;color:#b91c1c!important}
.fynv5-rfq-meta{padding:12px 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
.fynv5-rfq-meta>div{min-width:0;padding:9px;border-radius:8px;background:#f8fafc}
.fynv5-rfq-meta small{display:block;color:var(--muted);font-size:7.5px}
.fynv5-rfq-meta strong{display:block;margin-top:4px;overflow-wrap:anywhere;font-size:8.5px}
.fynv5-timeline{padding:7px 0 13px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
.fynv5-timeline span{position:relative;color:#94a3b8;font-size:7px;text-align:center}
.fynv5-timeline span::before{content:"";position:absolute;top:5px;left:-50%;width:100%;height:2px;background:#e2e8f0}
.fynv5-timeline span:first-child::before{display:none}
.fynv5-timeline i{position:relative;z-index:2;width:11px;height:11px;margin:0 auto 5px;border-radius:50%;background:#cbd5e1;display:block}
.fynv5-timeline span.is-done{color:var(--blue);font-weight:800}
.fynv5-timeline span.is-done::before,.fynv5-timeline span.is-done i{background:var(--blue)}
.fynv5-rfq-response{padding:11px;border-radius:9px;background:#f8fafc;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.fynv5-rfq-response>div>small{padding:0;background:none}
.fynv5-rfq-response p{margin:4px 0 0;color:#475569;font-size:8.5px;line-height:1.5}
.fynv5-rfq-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.fynv5-rfq-actions a,.fynv5-rfq-actions button{min-height:31px;padding:0 9px;border:0;border-radius:7px;background:var(--blue);color:#fff;font-size:7.5px;font-weight:800;display:inline-flex;align-items:center;cursor:pointer}
.fynv5-rfq-actions form{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.fynv5-rfq-actions textarea{min-height:31px;padding:7px;border:1px solid var(--border);border-radius:7px;font-size:8px}
.fynv5-rfq-no-results{min-height:180px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:10px}
.fynv5-auth{width:min(1250px,calc(100% - 28px));min-height:610px;margin:auto;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:#fff;display:grid;grid-template-columns:1.1fr .9fr;box-shadow:0 22px 55px rgba(15,23,42,.08)}
.fynv5-auth-art{padding:42px;background:radial-gradient(circle at 85% 20%,rgba(37,99,235,.20),transparent 35%),linear-gradient(135deg,#eff6ff,#fff7ed);display:flex;align-items:center}
.fynv5-auth-art span{color:var(--blue);font-size:9px;font-weight:900;letter-spacing:1px}
.fynv5-auth-art h1{max-width:570px;margin:12px 0;font-size:42px;line-height:1.05}
.fynv5-auth-art p{max-width:520px;color:var(--muted);font-size:12px;line-height:1.6}
.fynv5-auth-art ul{margin:25px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;list-style:none}
.fynv5-auth-art li{padding:12px;border:1px solid rgba(37,99,235,.15);border-radius:10px;background:rgba(255,255,255,.75);font-size:9px;font-weight:750}
.fynv5-auth-panel{padding:35px;display:flex;justify-content:center;flex-direction:column}
.fynv5-auth-tabs{margin-bottom:22px;padding:5px;border-radius:10px;background:#f1f5f9;display:grid;grid-template-columns:1fr 1fr}
.fynv5-auth-tabs a{min-height:38px;border-radius:8px;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800}
.fynv5-auth-tabs a.is-active{background:#fff;color:var(--blue);box-shadow:0 4px 14px rgba(15,23,42,.08)}
.fynv5-form-head h2{margin:0;font-size:27px}
.fynv5-form-head p{margin:6px 0 18px;color:var(--muted);font-size:10px}
#fynv5-login-form p,.fynv5-register-form label{margin:0 0 11px}
#fynv5-login-form label,.fynv5-register-form label span{display:block;margin-bottom:5px;color:#334155;font-size:8.5px;font-weight:750}
#fynv5-login-form input[type="text"],#fynv5-login-form input[type="password"],.fynv5-register-form input{width:100%;height:42px;padding:0 11px;border:1px solid #cfd9e6;border-radius:8px;background:#fff;font-size:10px}
#fynv5_login_submit,.fynv5-register-form>button{width:100%;min-height:42px;border:0;border-radius:8px;background:var(--blue);color:#fff;font-size:9.5px;font-weight:800;cursor:pointer}
.fynv5-register-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 9px}
.fynv5-terms{display:flex!important;align-items:flex-start;gap:7px;color:var(--muted);font-size:8px!important}
.fynv5-terms input{width:auto!important;height:auto!important}
.fynv5-forgot{color:var(--blue);font-size:8.5px;font-weight:750}
.fynv5-alert{margin-bottom:12px;padding:9px;border-radius:8px;font-size:8.5px}
.fynv5-alert.is-error{background:#fef2f2;color:#b91c1c}

@media(max-width:1000px){
  .fynv5-shell{grid-template-columns:200px minmax(0,1fr)}
  .fynv5-rfq-line{grid-template-columns:minmax(220px,1.5fr) 120px 105px}
  .fynv5-rfq-line>div:nth-child(4){grid-column:1/-1}
  .fynv5-rfq-meta{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:767px){
  .fynv5-page{padding:12px 0 35px}
  .fynv5-shell{width:calc(100% - 18px);display:block}
  .fynv5-sidebar{position:static;margin-bottom:10px}
  .fynv5-user-card{display:none}
  .fynv5-nav{display:flex;overflow-x:auto;gap:4px;scrollbar-width:none}
  .fynv5-nav a{flex:0 0 auto;min-height:36px;white-space:nowrap}
  .fynv5-page-head{min-height:auto;padding:15px;display:block}
  .fynv5-page-head h1{font-size:23px}
  .fynv5-page-head p{font-size:9px}
  .fynv5-page-head>a,.fynv5-page-head>button{width:100%;margin-top:10px;justify-content:center}
  .fynv5-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .fynv5-dashboard-grid{grid-template-columns:1fr}
  .fynv5-rfq-line{grid-template-columns:1fr 1fr}
  .fynv5-rfq-line>div:first-child,.fynv5-rfq-line>div:nth-child(4){grid-column:1/-1}
  .fynv5-customer-grid{grid-template-columns:1fr 1fr}
  .fynv5-rfq-tools{grid-template-columns:1fr 130px}
  .fynv5-rfq-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fynv5-rfq-response{grid-template-columns:1fr}
  .fynv5-rfq-actions{justify-content:flex-start}
  .fynv5-auth{width:calc(100% - 18px);min-height:auto;grid-template-columns:1fr}
  .fynv5-auth-art{display:none}
  .fynv5-auth-panel{padding:22px}
}

@media(max-width:430px){
  .fynv5-shell{width:calc(100% - 12px)}
  .fynv5-rfq-line{grid-template-columns:1fr}
  .fynv5-rfq-line>div:first-child,.fynv5-rfq-line>div:nth-child(4){grid-column:auto}
  .fynv5-customer-grid{grid-template-columns:1fr}
  .fynv5-rfq-tools{grid-template-columns:1fr}
  .fynv5-register-grid{grid-template-columns:1fr}
}


/* V5.1 FIXES */
.fynv5-page{
  position:relative!important;
  left:50%!important;
  width:100vw!important;
  max-width:none!important;
  margin-left:-50vw!important;
  margin-right:0!important;
}
.fynv5-page [hidden]{display:none!important}
.fynv5-shell{width:min(1760px,calc(100% - 28px))!important}
.fynv5-rfq-create[hidden]{display:none!important}
.fynv5-suggestions[hidden],.fynv5-selected-product[hidden]{display:none!important}
.fynv5-reject{background:#fff!important;color:#b91c1c!important;border:1px solid #fecaca!important}
@media(max-width:767px){.fynv5-page{width:100vw!important;margin-left:-50vw!important}.fynv5-shell{width:calc(100% - 18px)!important}}


/* =========================================================
   V5.1.2 — RFQ UNIT PRICE, TARGET PRICE & GST TOTALS
   ========================================================= */

.fynv5-rfq-line{
  grid-template-columns:minmax(250px,1.55fr) 130px 115px minmax(175px,1fr) 145px auto!important;
}

.fynv5-line-summary{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
  padding-top:10px;
  border-top:1px solid #dbe5f1;
}

.fynv5-line-summary>span{
  min-width:0;
  padding:9px;
  border:1px solid #e4ebf4;
  border-radius:8px;
  background:#fff;
}

.fynv5-line-summary small,
.fynv5-line-summary strong{
  display:block;
}

.fynv5-line-summary small{
  color:#64748b;
  font-size:7.5px;
}

.fynv5-line-summary strong{
  margin-top:4px;
  color:#0f172a;
  font-size:9px;
  overflow-wrap:anywhere;
}

.fynv5-line-summary>span:last-child{
  border-color:#bfdbfe;
  background:#eff6ff;
}

.fynv5-line-summary>span:last-child strong{
  color:#1d4ed8;
}

.fynv5-rfq-total-box{
  margin-top:12px;
  padding:12px;
  border:1px solid #dbe5f1;
  border-radius:11px;
  background:#f8fafc;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}

.fynv5-rfq-total-box>div{
  padding:9px;
  border-radius:8px;
  background:#fff;
}

.fynv5-rfq-total-box small,
.fynv5-rfq-total-box strong{
  display:block;
}

.fynv5-rfq-total-box small{
  color:#64748b;
  font-size:8px;
}

.fynv5-rfq-total-box strong{
  margin-top:4px;
  font-size:11px;
}

.fynv5-rfq-total-box .is-grand{
  background:#2563eb;
}

.fynv5-rfq-total-box .is-grand small,
.fynv5-rfq-total-box .is-grand strong{
  color:#fff;
}

.fynv5-rfq-meta{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

@media(max-width:1100px){
  .fynv5-rfq-line{
    grid-template-columns:minmax(220px,1.4fr) 120px 105px minmax(160px,1fr)!important;
  }

  .fynv5-rfq-line>div:nth-child(5){
    grid-column:auto;
  }

  .fynv5-remove-line{
    grid-column:1/-1;
    width:max-content;
  }
}

@media(max-width:767px){
  .fynv5-rfq-line{
    grid-template-columns:1fr 1fr!important;
  }

  .fynv5-rfq-line>div:first-child,
  .fynv5-rfq-line>div:nth-child(4),
  .fynv5-rfq-line>div:nth-child(5){
    grid-column:1/-1!important;
  }

  .fynv5-line-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .fynv5-line-summary>span:last-child{
    grid-column:1/-1;
  }

  .fynv5-rfq-total-box{
    grid-template-columns:1fr 1fr;
  }

  .fynv5-rfq-total-box .is-grand{
    grid-column:1/-1;
  }

  .fynv5-rfq-meta{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:430px){
  .fynv5-rfq-line{
    grid-template-columns:1fr!important;
  }

  .fynv5-rfq-line>div:first-child,
  .fynv5-rfq-line>div:nth-child(4),
  .fynv5-rfq-line>div:nth-child(5){
    grid-column:auto!important;
  }

  .fynv5-line-summary,
  .fynv5-rfq-total-box,
  .fynv5-rfq-meta{
    grid-template-columns:1fr!important;
  }

  .fynv5-line-summary>span:last-child,
  .fynv5-rfq-total-box .is-grand{
    grid-column:auto;
  }
}


/* === FYNSOURCE MRO Enterprise Portal v5.2.1 Premium Cart / Checkout === */
body.woocommerce-cart,
body.woocommerce-checkout{
  background:#f5f8fc!important;
  color:#0f172a;
}

.woocommerce-cart .site-main,
.woocommerce-checkout .site-main,
.woocommerce-cart main,
.woocommerce-checkout main{
  width:min(1540px,calc(100% - 32px));
  max-width:none!important;
  margin:0 auto!important;
  padding:30px 0 48px!important;
}

/* Page heading */
.woocommerce-cart .entry-title,
.woocommerce-cart .woocommerce h1,
.woocommerce-checkout .entry-title{
  margin:0 0 20px!important;
  color:#0f172a!important;
  font-size:30px!important;
  line-height:1.2!important;
  font-weight:850!important;
  letter-spacing:-.5px!important;
}
.woocommerce-cart .entry-title:after{
  content:"Review products, update quantity and continue securely to checkout.";
  display:block;
  margin-top:7px;
  color:#64748b;
  font-size:13px;
  line-height:1.5;
  font-weight:500;
  letter-spacing:0;
}

/* ===== CLASSIC WOOCOMMERCE CART ===== */
.woocommerce-cart .woocommerce{
  position:relative;
}
.woocommerce-cart .woocommerce:not(:has(.woocommerce-info)){
  display:block;
}
.woocommerce-cart form.woocommerce-cart-form{
  width:calc(100% - 400px);
  float:left;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.woocommerce-cart .cart-collaterals{
  width:370px!important;
  float:right!important;
  margin:0!important;
}
.woocommerce-cart .cart-collaterals:after,
.woocommerce-cart .woocommerce:after{
  content:"";
  display:block;
  clear:both;
}
.woocommerce-cart .cart-collaterals .cart_totals{
  width:100%!important;
  float:none!important;
  position:sticky;
  top:96px;
  margin:0!important;
  padding:22px!important;
  overflow:hidden;
  border:1px solid #dce6f2!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 12px 36px rgba(15,23,42,.07)!important;
}
.woocommerce-cart .cart-collaterals .cart_totals:before{
  content:"PAYMENT SUMMARY";
  display:block;
  margin-bottom:5px;
  color:#2563eb;
  font-size:9px;
  font-weight:900;
  letter-spacing:1.05px;
}
.woocommerce-cart .cart-collaterals .cart_totals h2{
  margin:0 0 16px!important;
  padding:0 0 14px!important;
  border-bottom:1px solid #edf2f7!important;
  color:#0f172a!important;
  font-size:20px!important;
  font-weight:850!important;
}
.woocommerce-cart .cart-collaterals .shop_table{
  margin:0 0 14px!important;
  border:0!important;
  border-collapse:collapse!important;
}
.woocommerce-cart .cart-collaterals .shop_table th,
.woocommerce-cart .cart-collaterals .shop_table td{
  padding:10px 0!important;
  border:0!important;
  border-bottom:1px solid #f1f5f9!important;
  font-size:12px!important;
}
.woocommerce-cart .cart-collaterals .shop_table th{
  color:#64748b!important;
  font-weight:650!important;
}
.woocommerce-cart .cart-collaterals .shop_table td{
  text-align:right!important;
  color:#0f172a!important;
  font-weight:750!important;
}
.woocommerce-cart .cart-collaterals .order-total th,
.woocommerce-cart .cart-collaterals .order-total td{
  padding-top:15px!important;
  border-bottom:0!important;
  color:#0f172a!important;
  font-size:14px!important;
  font-weight:850!important;
}
.woocommerce-cart .cart-collaterals .order-total .amount{
  color:#2563eb!important;
  font-size:22px!important;
}

.woocommerce-cart table.shop_table.cart{
  width:100%!important;
  margin:0!important;
  overflow:hidden;
  border:1px solid #dce6f2!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 8px 28px rgba(15,23,42,.05)!important;
}
.woocommerce-cart table.shop_table.cart thead th{
  padding:14px 16px!important;
  border:0!important;
  border-bottom:1px solid #e8eef6!important;
  background:#f8fbff!important;
  color:#64748b!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.55px!important;
  text-transform:uppercase!important;
}
.woocommerce-cart table.shop_table.cart tbody td{
  padding:18px 16px!important;
  border:0!important;
  border-bottom:1px solid #edf2f7!important;
  vertical-align:middle!important;
  background:#fff!important;
}
.woocommerce-cart table.shop_table.cart tbody tr:last-child td{
  border-bottom:0!important;
}
.woocommerce-cart .product-thumbnail{
  width:116px!important;
}
.woocommerce-cart .product-thumbnail img{
  width:100px!important;
  height:100px!important;
  padding:7px!important;
  object-fit:contain!important;
  border:1px solid #e4ebf4!important;
  border-radius:12px!important;
  background:#fff!important;
}
.woocommerce-cart .product-name a{
  color:#0f172a!important;
  font-size:13px!important;
  line-height:1.45!important;
  font-weight:800!important;
}
.woocommerce-cart .product-name a:hover{color:#2563eb!important}
.woocommerce-cart .product-price,
.woocommerce-cart .product-subtotal{
  color:#0f172a!important;
  font-size:13px!important;
  font-weight:800!important;
  white-space:nowrap;
}
.woocommerce-cart .product-subtotal .amount{
  color:#2563eb!important;
  font-size:15px!important;
}
.woocommerce-cart .quantity{
  display:inline-flex!important;
  align-items:center!important;
}
.woocommerce-cart .quantity .qty{
  width:72px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 8px!important;
  border:1px solid #cfdbea!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#0f172a!important;
  font-size:12px!important;
  font-weight:750!important;
  text-align:center!important;
}
.woocommerce-cart a.remove{
  width:30px!important;
  height:30px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #fee2e2!important;
  border-radius:8px!important;
  background:#fff5f5!important;
  color:#dc2626!important;
  font-size:18px!important;
  line-height:1!important;
}
.woocommerce-cart a.remove:hover{
  background:#dc2626!important;
  color:#fff!important;
}
.woocommerce-cart td.actions{
  padding:14px 16px!important;
  background:#fbfdff!important;
}
.woocommerce-cart .coupon{
  display:flex!important;
  gap:8px!important;
}
.woocommerce-cart .coupon #coupon_code{
  width:190px!important;
  height:40px!important;
  padding:0 12px!important;
  border:1px solid #d5dfeb!important;
  border-radius:8px!important;
  background:#fff!important;
  font-size:11px!important;
}
.woocommerce-cart td.actions button.button,
.woocommerce-cart .coupon button.button{
  min-height:40px!important;
  padding:0 15px!important;
  border:1px solid #2563eb!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#2563eb!important;
  font-size:10.5px!important;
  font-weight:850!important;
}
.woocommerce-cart td.actions button.button:hover,
.woocommerce-cart .coupon button.button:hover{
  background:#eff6ff!important;
}
.woocommerce-cart .wc-proceed-to-checkout{
  padding:8px 0 0!important;
}
.woocommerce-cart .checkout-button{
  width:100%!important;
  min-height:52px!important;
  margin:0!important;
  padding:0 18px!important;
  border:0!important;
  border-radius:9px!important;
  background:#2563eb!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:12px!important;
  font-weight:850!important;
  box-shadow:0 8px 18px rgba(37,99,235,.18)!important;
}
.woocommerce-cart .checkout-button:hover{background:#1d4ed8!important}
.woocommerce-cart .wc-proceed-to-checkout:after{
  content:"Secure checkout • GST invoice available • Business purchases supported";
  display:block;
  margin-top:11px;
  color:#64748b;
  font-size:9px;
  line-height:1.45;
  text-align:center;
}

/* ===== WOOCOMMERCE CART BLOCK ===== */
.woocommerce-cart .wp-block-woocommerce-cart{
  width:100%!important;
}
.woocommerce-cart .wc-block-cart{
  gap:24px!important;
  align-items:start!important;
}
.woocommerce-cart .wc-block-cart__main{
  padding-right:0!important;
}
.woocommerce-cart .wc-block-cart-items{
  overflow:hidden!important;
  border:1px solid #dce6f2!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 8px 28px rgba(15,23,42,.05)!important;
}
.woocommerce-cart .wc-block-cart-items thead th{
  padding:13px 16px!important;
  background:#f8fbff!important;
  border-color:#e8eef6!important;
  color:#64748b!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.55px!important;
  text-transform:uppercase!important;
}
.woocommerce-cart .wc-block-cart-items__row{
  border-color:#edf2f7!important;
}
.woocommerce-cart .wc-block-cart-item__image{
  padding:18px 8px 18px 16px!important;
}
.woocommerce-cart .wc-block-cart-item__image img{
  aspect-ratio:1/1;
  object-fit:contain!important;
  padding:7px!important;
  border:1px solid #e4ebf4!important;
  border-radius:12px!important;
  background:#fff!important;
}
.woocommerce-cart .wc-block-components-product-name{
  color:#0f172a!important;
  font-size:13px!important;
  line-height:1.4!important;
  font-weight:800!important;
}
.woocommerce-cart .wc-block-components-product-price,
.woocommerce-cart .wc-block-components-product-price__value{
  color:#0f172a!important;
  font-weight:800!important;
}
.woocommerce-cart .wc-block-components-quantity-selector{
  min-height:38px!important;
  overflow:hidden!important;
  border:1px solid #cfdbea!important;
  border-radius:8px!important;
  background:#fff!important;
}
.woocommerce-cart .wc-block-components-quantity-selector input{
  min-width:40px!important;
  font-weight:750!important;
}
.woocommerce-cart .wc-block-cart-item__remove-link{
  color:#dc2626!important;
  font-size:10px!important;
  font-weight:750!important;
  text-decoration:none!important;
}
.woocommerce-cart .wc-block-cart__sidebar{
  position:sticky!important;
  top:96px!important;
  align-self:start!important;
}
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__totals-title,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__submit-container{
  border-color:#edf2f7!important;
}
.woocommerce-cart .wc-block-cart__sidebar{
  padding:20px!important;
  border:1px solid #dce6f2!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 12px 36px rgba(15,23,42,.07)!important;
}
.woocommerce-cart .wc-block-cart__totals-title{
  padding:0 0 14px!important;
  border:0!important;
  color:#0f172a!important;
  font-size:18px!important;
  font-weight:850!important;
  text-align:left!important;
}
.woocommerce-cart .wc-block-cart__totals-title:before{
  content:"PAYMENT SUMMARY";
  display:block;
  margin-bottom:5px;
  color:#2563eb;
  font-size:9px;
  font-weight:900;
  letter-spacing:1.05px;
}
.woocommerce-cart .wc-block-components-totals-item{
  padding:10px 0!important;
  border-color:#f1f5f9!important;
  font-size:12px!important;
}
.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  color:#2563eb!important;
  font-size:20px!important;
  font-weight:850!important;
}
.woocommerce-cart .wc-block-cart__submit-button{
  min-height:52px!important;
  border-radius:9px!important;
  background:#2563eb!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:850!important;
  box-shadow:0 8px 18px rgba(37,99,235,.18)!important;
}
.woocommerce-cart .wc-block-cart__submit-button:hover{background:#1d4ed8!important}
.woocommerce-cart .wc-block-components-totals-coupon__button{
  color:#2563eb!important;
  font-weight:800!important;
}

/* Empty cart */
.woocommerce-cart .cart-empty,
.woocommerce-cart .wc-block-cart__empty-cart__title{
  color:#0f172a!important;
  font-weight:850!important;
}
.woocommerce-cart .return-to-shop .button{
  border-radius:8px!important;
  background:#2563eb!important;
  color:#fff!important;
}

/* ===== CHECKOUT keeps the same premium visual language ===== */
.woocommerce-checkout form.checkout .col2-set,
.woocommerce-checkout #order_review,
.woocommerce-checkout #payment,
.wp-block-woocommerce-checkout .wc-block-components-sidebar{
  border:1px solid #dce6f2!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 8px 28px rgba(15,23,42,.05)!important;
}
.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea{
  min-height:44px;
  border:1px solid #d8e2ef!important;
  border-radius:8px!important;
  background:#fff!important;
}
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout #order_review_heading{
  color:#0f172a!important;
  font-weight:850!important;
}
.woocommerce-checkout #place_order{
  min-height:52px!important;
  border-radius:9px!important;
  background:#2563eb!important;
  color:#fff!important;
  font-weight:850!important;
}

.fynv52-bank-panel{margin:0 0 16px;padding:15px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff}
.fynv52-bank-head span,.fynv52-bank-head strong,.fynv52-bank-head small{display:block}
.fynv52-bank-head span{font-size:9px;font-weight:850;letter-spacing:.9px;color:#2563eb}
.fynv52-bank-head strong{margin-top:3px;font-size:15px;color:#0f172a}
.fynv52-bank-head small{margin-top:4px;color:#64748b;line-height:1.45}
.fynv52-bank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.fynv52-bank-grid article{padding:10px;border:1px solid #dbeafe;border-radius:8px;background:#fff}
.fynv52-bank-grid article span,.fynv52-bank-grid article strong{display:block}
.fynv52-bank-grid article span{margin-top:5px;font-size:9px;color:#64748b}
.fynv52-bank-grid article strong{font-size:11px;overflow-wrap:anywhere}

@media(max-width:1100px){
  .woocommerce-cart form.woocommerce-cart-form{width:calc(100% - 340px)}
  .woocommerce-cart .cart-collaterals{width:315px!important}
}

@media(max-width:900px){
  .woocommerce-cart .site-main,
  .woocommerce-checkout .site-main,
  .woocommerce-cart main,
  .woocommerce-checkout main{
    width:calc(100% - 22px);
    padding:20px 0 36px!important;
  }
  .woocommerce-cart form.woocommerce-cart-form,
  .woocommerce-cart .cart-collaterals{
    width:100%!important;
    float:none!important;
  }
  .woocommerce-cart .cart-collaterals{margin-top:18px!important}
  .woocommerce-cart .cart-collaterals .cart_totals,
  .woocommerce-cart .wc-block-cart__sidebar{position:static!important}
  .woocommerce-cart .wc-block-cart{display:block!important}
  .woocommerce-cart .wc-block-cart__sidebar{margin-top:18px!important}
}

@media(max-width:767px){
  .woocommerce-cart .entry-title,
  .woocommerce-cart .woocommerce h1,
  .woocommerce-checkout .entry-title{font-size:23px!important}
  .woocommerce-cart .entry-title:after{font-size:11px}
  .woocommerce-cart table.shop_table.cart,
  .woocommerce-cart table.shop_table.cart tbody,
  .woocommerce-cart table.shop_table.cart tr,
  .woocommerce-cart table.shop_table.cart td{display:block!important;width:100%!important}
  .woocommerce-cart table.shop_table.cart thead{display:none!important}
  .woocommerce-cart table.shop_table.cart tr.cart_item{position:relative;padding:14px 14px 14px 104px;border-bottom:1px solid #edf2f7}
  .woocommerce-cart table.shop_table.cart tbody td{padding:4px 0!important;border:0!important;text-align:left!important;background:transparent!important}
  .woocommerce-cart table.shop_table.cart td.product-thumbnail{position:absolute;left:14px;top:14px;width:78px!important}
  .woocommerce-cart .product-thumbnail img{width:76px!important;height:76px!important;padding:5px!important}
  .woocommerce-cart table.shop_table.cart td.product-remove{position:absolute;right:12px;top:10px;width:auto!important}
  .woocommerce-cart table.shop_table.cart td.product-name{padding-right:36px!important}
  .woocommerce-cart table.shop_table.cart td.product-price:before{content:"Unit Price: ";color:#64748b;font-size:10px;font-weight:650}
  .woocommerce-cart table.shop_table.cart td.product-quantity:before{content:"Qty: ";color:#64748b;font-size:10px;font-weight:650;margin-right:8px}
  .woocommerce-cart table.shop_table.cart td.product-subtotal:before{content:"Subtotal: ";color:#64748b;font-size:10px;font-weight:650}
  .woocommerce-cart td.actions{padding:12px!important}
  .woocommerce-cart .coupon{width:100%!important;display:grid!important;grid-template-columns:1fr auto!important}
  .woocommerce-cart .coupon #coupon_code{width:100%!important}
  .woocommerce-cart td.actions>button.button{width:100%!important;margin-top:8px!important}
  .woocommerce-cart .cart-collaterals .cart_totals{padding:18px!important}
  .woocommerce-cart .wc-block-cart__sidebar{padding:17px!important}
  .fynv52-bank-grid{grid-template-columns:1fr}
}


/* === v5.2.2 Fynsource marketplace cart + checkout === */
body.woocommerce-cart,body.woocommerce-checkout{background:#f3f5f8!important}
.woocommerce-cart .site-main,.woocommerce-checkout .site-main,.woocommerce-cart main,.woocommerce-checkout main{width:min(1820px,calc(100% - 44px))!important;padding-top:20px!important}
.fyn-commerce-head{width:100%;margin:0 0 14px}.fyn-commerce-steps{height:42px;display:flex;align-items:center;justify-content:center;gap:10px;color:#9aa4b2;font-size:12px;font-weight:700}.fyn-commerce-steps span{display:flex;align-items:center;gap:7px;white-space:nowrap}.fyn-commerce-steps span b{width:20px;height:20px;border:1px solid #cbd5e1;border-radius:50%;display:grid;place-items:center;background:#fff;font-size:9px}.fyn-commerce-steps span.is-active,.fyn-commerce-steps span.is-done{color:#0f172a}.fyn-commerce-steps span.is-active b,.fyn-commerce-steps span.is-done b{border-color:#0f172a;color:#0f172a}.fyn-commerce-steps i{width:50px;height:1px;background:#cbd5e1}
.fyn-commerce-benefits{padding:14px 18px;border:1px solid #dfe5ec;border-radius:10px;background:#fff;box-shadow:0 2px 10px rgba(15,23,42,.07)}.fyn-benefits-title{display:flex;align-items:center;gap:10px;padding-bottom:9px;border-bottom:1px solid #e5e7eb;font-size:15px}.fyn-benefits-title span{font-size:18px}.fyn-benefit{min-height:34px;display:flex;align-items:center;gap:10px;padding:6px 0}.fyn-benefit>span{width:28px;text-align:center}.fyn-benefit>div{min-width:0;flex:1}.fyn-benefit strong{display:block;color:#111827;font-size:12px;line-height:1.35}.fyn-benefit small{display:block;margin-top:2px;color:#64748b;font-size:10px}.fyn-benefit em{padding:3px 7px;border-radius:4px;background:#dcfce7;color:#15803d;font-size:9px;font-style:normal;font-weight:800}.fyn-cart-label{margin:15px 2px 8px;color:#334155;font-size:12px;font-weight:850}.fyn-cart-label span{font-weight:650}
/* flatter marketplace product list */
.woocommerce-cart form.woocommerce-cart-form{width:calc(100% - 470px)!important}.woocommerce-cart .cart-collaterals{width:445px!important}.woocommerce-cart table.shop_table.cart{border-radius:9px!important;box-shadow:0 2px 10px rgba(15,23,42,.06)!important}.woocommerce-cart table.shop_table.cart thead{display:none!important}.woocommerce-cart table.shop_table.cart tbody tr.cart_item{position:relative}.woocommerce-cart table.shop_table.cart tbody td{padding-top:20px!important;padding-bottom:20px!important}.woocommerce-cart .product-thumbnail{width:110px!important}.woocommerce-cart .product-thumbnail img{width:92px!important;height:82px!important;border:0!important;object-fit:contain!important}.woocommerce-cart .product-name a{font-size:13px!important;line-height:1.4!important}.woocommerce-cart .product-price{color:#475569!important;font-size:11px!important}.woocommerce-cart .product-subtotal .amount{font-size:16px!important}.woocommerce-cart .quantity .qty{height:34px!important}.woocommerce-cart a.remove{top:auto!important}
.woocommerce-cart .cart-collaterals .cart_totals{top:90px!important;padding:16px!important;border-radius:8px!important;box-shadow:0 2px 10px rgba(15,23,42,.08)!important}.woocommerce-cart .cart-collaterals .cart_totals:before{content:"PAYMENT SUMMARY";color:#0f172a;font-size:16px;letter-spacing:0}.woocommerce-cart .cart-collaterals .cart_totals h2{display:none}.woocommerce-cart .cart-collaterals .shop_table th,.woocommerce-cart .cart-collaterals .shop_table td{font-size:12px!important}.woocommerce-cart .cart-collaterals .order-total .amount{color:#0f172a!important;font-size:17px!important}.woocommerce-cart .checkout-button{min-height:44px!important;border-radius:6px!important;background:#f97316!important;box-shadow:none!important}.woocommerce-cart .checkout-button:hover{background:#ea580c!important}.woocommerce-cart .wc-proceed-to-checkout:after{content:"Login or register to continue securely • GST invoice available"}
/* block cart equivalent */
.woocommerce-cart .wc-block-cart{grid-template-columns:minmax(0,1fr) 445px!important;gap:14px!important}.woocommerce-cart .wc-block-cart-items{border-radius:9px!important;box-shadow:0 2px 10px rgba(15,23,42,.06)!important}.woocommerce-cart .wc-block-cart__sidebar{top:90px!important;padding:16px!important;border-radius:8px!important;box-shadow:0 2px 10px rgba(15,23,42,.08)!important}.woocommerce-cart .wc-block-cart__totals-title:before{color:#0f172a!important;font-size:16px!important;letter-spacing:0!important}.woocommerce-cart .wc-block-cart__submit-button{min-height:44px!important;border-radius:6px!important;background:#f97316!important;box-shadow:none!important}
/* checkout marketplace layout */
.fyn-checkout-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:8px;padding:16px 18px;border:1px solid #dfe5ec;border-radius:9px;background:#fff;box-shadow:0 2px 10px rgba(15,23,42,.06)}.fyn-checkout-intro>div:first-child span,.fyn-checkout-intro>div:first-child strong,.fyn-checkout-intro>div:first-child small{display:block}.fyn-checkout-intro>div:first-child span{color:#2563eb;font-size:9px;font-weight:900;letter-spacing:.9px}.fyn-checkout-intro>div:first-child strong{margin-top:3px;font-size:18px}.fyn-checkout-intro>div:first-child small{margin-top:4px;color:#64748b;font-size:11px}.fyn-secure-chip{padding:8px 11px;border:1px solid #bbf7d0;border-radius:6px;background:#f0fdf4;color:#15803d;font-size:10px;font-weight:850}
.woocommerce-checkout form.checkout{display:grid!important;grid-template-columns:minmax(0,1fr) 445px!important;gap:14px!important;align-items:start}.woocommerce-checkout form.checkout .col2-set{grid-column:1!important;padding:18px!important;border-radius:9px!important;box-shadow:0 2px 10px rgba(15,23,42,.06)!important}.woocommerce-checkout #order_review_heading{grid-column:2!important;margin:0!important;padding:15px 16px!important;border:1px solid #dce6f2;border-bottom:0;border-radius:9px 9px 0 0;background:#fff;font-size:16px!important}.woocommerce-checkout #order_review{grid-column:2!important;position:sticky;top:90px;margin:0!important;padding:0 16px 16px!important;border-radius:0 0 9px 9px!important;box-shadow:0 2px 10px rgba(15,23,42,.08)!important}.woocommerce-checkout #payment{border-radius:8px!important;box-shadow:none!important}.woocommerce-checkout #place_order{min-height:46px!important;border-radius:6px!important;background:#f97316!important}.woocommerce-checkout #place_order:hover{background:#ea580c!important}.woocommerce-checkout .form-row label{font-size:11px!important;font-weight:750!important;color:#334155!important}.woocommerce-checkout input.input-text,.woocommerce-checkout select,.woocommerce-checkout textarea{min-height:42px!important;border-radius:6px!important}
@media(max-width:1100px){.woocommerce-cart form.woocommerce-cart-form{width:calc(100% - 360px)!important}.woocommerce-cart .cart-collaterals{width:340px!important}.woocommerce-cart .wc-block-cart{grid-template-columns:minmax(0,1fr) 340px!important}.woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1fr) 360px!important}}
@media(max-width:900px){.woocommerce-cart form.woocommerce-cart-form,.woocommerce-cart .cart-collaterals{width:100%!important}.woocommerce-cart .wc-block-cart{display:block!important}.woocommerce-checkout form.checkout{display:block!important}.woocommerce-checkout #order_review_heading{margin-top:16px!important}.woocommerce-checkout #order_review{position:static!important}.fyn-commerce-benefits{padding:12px}.fyn-benefit em{display:none}}
@media(max-width:600px){.woocommerce-cart .site-main,.woocommerce-checkout .site-main,.woocommerce-cart main,.woocommerce-checkout main{width:calc(100% - 18px)!important}.fyn-commerce-steps{gap:6px}.fyn-commerce-steps i{width:24px}.fyn-commerce-benefits{border-radius:8px}.fyn-benefit small{display:none}.fyn-checkout-intro{align-items:flex-start}.fyn-secure-chip{display:none}}


/* === v5.2.3 premium checkout journey === */
body.fyn-checkout-auth{background:#f5f7fb!important}
body.fyn-checkout-auth .site-main,body.fyn-checkout-auth main{width:min(1180px,calc(100% - 28px))!important;margin:24px auto 44px!important}
body.fyn-checkout-auth .fynv5-auth.is-checkout-auth{min-height:auto!important;display:grid!important;grid-template-columns:minmax(0,1fr) 460px!important;border:1px solid #dbe4f0!important;border-radius:16px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 18px 48px rgba(15,23,42,.09)!important}
body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-art{min-height:520px!important;padding:54px!important;background:linear-gradient(145deg,#0b57d0 0%,#2563eb 58%,#3b82f6 100%)!important}
body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-art>div{max-width:520px!important}
body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-art span{font-size:11px!important;letter-spacing:1.3px!important;color:#dbeafe!important}
body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-art h1{margin:10px 0 12px!important;color:#fff!important;font-size:35px!important;line-height:1.12!important}
body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-art p{max-width:460px!important;color:#eaf2ff!important;font-size:14px!important;line-height:1.7!important}
body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-art li{color:#fff!important;font-size:13px!important}
body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-panel{padding:34px 36px!important;background:#fff!important}
body.fyn-checkout-auth .fynv5-auth-tabs{padding:4px!important;border-radius:10px!important;background:#f1f5f9!important}
body.fyn-checkout-auth .fynv5-auth-tabs a{min-height:42px!important;border-radius:8px!important;font-size:12px!important}
body.fyn-checkout-auth .fynv5-form-head h2{font-size:25px!important;margin:6px 0!important}
body.fyn-checkout-auth .fynv5-form-head p{font-size:12px!important;color:#64748b!important}
body.fyn-checkout-auth #fynv5-login-form input[type=text],body.fyn-checkout-auth #fynv5-login-form input[type=password],body.fyn-checkout-auth .fynv5-register-form input{min-height:46px!important;border:1px solid #d8e2ef!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important}
body.fyn-checkout-auth #fynv5_login_submit,body.fyn-checkout-auth .fynv5-register-form button{min-height:48px!important;border-radius:8px!important;background:#2563eb!important;box-shadow:none!important;font-size:12px!important;font-weight:850!important}
body.fyn-checkout-auth #fynv5_login_submit:hover,body.fyn-checkout-auth .fynv5-register-form button:hover{background:#1d4ed8!important}

/* actual checkout: cleaner marketplace layout */
body.woocommerce-checkout:not(.fyn-checkout-auth) .fyn-commerce-steps{margin:4px 0 12px!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) .fyn-checkout-intro{padding:14px 16px!important;border-radius:12px!important;box-shadow:none!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr)!important;gap:18px!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout .col2-set{padding:20px 22px!important;border:1px solid #dce5f0!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) .woocommerce-billing-fields h3{margin:0 0 16px!important;padding-bottom:12px!important;border-bottom:1px solid #e8edf4!important;font-size:18px!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) .form-row{margin-bottom:12px!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) .form-row label{margin-bottom:5px!important;font-size:11px!important;font-weight:800!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) input.input-text,body.woocommerce-checkout:not(.fyn-checkout-auth) select,body.woocommerce-checkout:not(.fyn-checkout-auth) textarea{min-height:44px!important;padding:10px 12px!important;border:1px solid #d8e2ef!important;border-radius:7px!important;background:#fff!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review_heading{padding:16px 18px!important;border:1px solid #dce5f0!important;border-bottom:0!important;border-radius:12px 12px 0 0!important;font-size:17px!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review{top:86px!important;padding:0 18px 18px!important;border:1px solid #dce5f0!important;border-top:0!important;border-radius:0 0 12px 12px!important;background:#fff!important;box-shadow:0 10px 28px rgba(15,23,42,.06)!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review table.shop_table{border:0!important;margin-bottom:12px!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review table.shop_table th,body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review table.shop_table td{padding:11px 4px!important;border-color:#edf1f6!important;font-size:12px!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) #payment{padding:12px!important;border:1px solid #e2e8f0!important;background:#f8fafc!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) #place_order{width:100%!important;min-height:48px!important;border-radius:8px!important;background:#f97316!important;font-weight:850!important;text-transform:none!important}
body.woocommerce-checkout:not(.fyn-checkout-auth) .fynv52-bank-panel{margin:12px 0!important;border-radius:10px!important}

@media(max-width:900px){body.fyn-checkout-auth .fynv5-auth.is-checkout-auth{grid-template-columns:1fr!important}body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-art{display:none!important}body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-panel{padding:24px 18px!important}body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout{display:block!important}}


/* ======================================================================
   FYNSOURCE MRO ENTERPRISE PORTAL v5.2.4
   Premium full-width Cart + Checkout UI — desktop/tablet/mobile
   ====================================================================== */

:root{
  --fyn-commerce-blue:#2563eb;
  --fyn-commerce-blue-dark:#1d4ed8;
  --fyn-commerce-blue-soft:#eff6ff;
  --fyn-commerce-text:#0f172a;
  --fyn-commerce-muted:#64748b;
  --fyn-commerce-border:#dbe5f1;
  --fyn-commerce-bg:#f4f7fb;
  --fyn-commerce-success:#15803d;
}

body.woocommerce-cart,
body.woocommerce-checkout{
  background:var(--fyn-commerce-bg)!important;
}

/* Remove theme width constraints that were shrinking checkout into a tiny column. */
body.woocommerce-cart .site-content,
body.woocommerce-checkout .site-content,
body.woocommerce-cart .ast-container,
body.woocommerce-checkout .ast-container,
body.woocommerce-cart .content-area,
body.woocommerce-checkout .content-area,
body.woocommerce-cart #primary,
body.woocommerce-checkout #primary,
body.woocommerce-cart .site-main,
body.woocommerce-checkout .site-main,
body.woocommerce-cart main.site-main,
body.woocommerce-checkout main.site-main,
body.woocommerce-cart article,
body.woocommerce-checkout article,
body.woocommerce-cart .entry-content,
body.woocommerce-checkout .entry-content,
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
}

body.woocommerce-cart .site-content,
body.woocommerce-checkout .site-content,
body.woocommerce-cart .ast-container,
body.woocommerce-checkout .ast-container{
  display:block!important;
  padding-left:0!important;
  padding-right:0!important;
}

body.woocommerce-cart #primary,
body.woocommerce-checkout #primary,
body.woocommerce-cart .site-main,
body.woocommerce-checkout .site-main,
body.woocommerce-cart main.site-main,
body.woocommerce-checkout main.site-main{
  float:none!important;
  padding:22px 0 54px!important;
}

body.woocommerce-cart article,
body.woocommerce-checkout article,
body.woocommerce-cart .entry-content,
body.woocommerce-checkout .entry-content,
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce{
  padding:0!important;
}

body.woocommerce-cart .entry-header,
body.woocommerce-checkout .entry-header,
body.woocommerce-cart .entry-title,
body.woocommerce-checkout .entry-title{
  width:min(1500px,calc(100% - 36px))!important;
  margin:0 auto 14px!important;
}

body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce{
  width:min(1500px,calc(100% - 36px))!important;
  margin:0 auto!important;
}

/* ---------- shared commerce progress / intro ---------- */
.fyn-commerce-head{
  width:100%!important;
  margin:0 0 16px!important;
}

.fyn-commerce-steps{
  min-height:44px!important;
  margin:0 0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  color:#94a3b8!important;
  font-size:11px!important;
  font-weight:750!important;
}
.fyn-commerce-steps span{display:flex!important;align-items:center!important;gap:7px!important}
.fyn-commerce-steps span b{
  width:21px!important;height:21px!important;border:1px solid #cbd5e1!important;
  border-radius:999px!important;background:#fff!important;display:grid!important;place-items:center!important;
  color:#94a3b8!important;font-size:9px!important
}
.fyn-commerce-steps span.is-active,.fyn-commerce-steps span.is-done{color:var(--fyn-commerce-blue)!important}
.fyn-commerce-steps span.is-active b,.fyn-commerce-steps span.is-done b{
  border-color:var(--fyn-commerce-blue)!important;background:var(--fyn-commerce-blue)!important;color:#fff!important
}
.fyn-commerce-steps i{width:58px!important;height:1px!important;background:#cbd5e1!important}

.fyn-checkout-intro{
  margin:0!important;
  padding:16px 18px!important;
  border:1px solid var(--fyn-commerce-border)!important;
  border-top:3px solid var(--fyn-commerce-blue)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(15,23,42,.05)!important;
}
.fyn-checkout-intro>div:first-child span{color:var(--fyn-commerce-blue)!important}
.fyn-checkout-intro>div:first-child strong{color:var(--fyn-commerce-text)!important;font-size:18px!important}
.fyn-secure-chip{
  border-color:#bfdbfe!important;background:var(--fyn-commerce-blue-soft)!important;color:var(--fyn-commerce-blue-dark)!important
}

/* ---------- coupon ---------- */
body.woocommerce-checkout .woocommerce-form-coupon-toggle{
  margin:14px 0!important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  margin:0!important;
  padding:12px 16px!important;
  border:1px solid var(--fyn-commerce-border)!important;
  border-left:4px solid var(--fyn-commerce-blue)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#475569!important;
  font-size:12px!important;
  box-shadow:none!important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info:before{
  color:var(--fyn-commerce-blue)!important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle a{
  color:var(--fyn-commerce-blue)!important;font-weight:800!important
}
body.woocommerce-checkout form.checkout_coupon{
  margin:0 0 14px!important;padding:14px!important;border:1px solid var(--fyn-commerce-border)!important;
  border-radius:10px!important;background:#fff!important
}
body.woocommerce-checkout form.checkout_coupon .form-row{margin:0!important}
body.woocommerce-checkout form.checkout_coupon button{
  min-height:42px!important;border-radius:8px!important;background:var(--fyn-commerce-blue)!important;color:#fff!important
}

/* ---------- checkout desktop ---------- */
body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 430px!important;
  grid-template-areas:
    "details heading"
    "details review"!important;
  gap:0 20px!important;
  align-items:start!important;
}
body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout>.col2-set{
  grid-area:details!important;
  width:100%!important;
  max-width:none!important;
  float:none!important;
  margin:0!important;
  padding:22px!important;
  border:1px solid var(--fyn-commerce-border)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(15,23,42,.05)!important;
}
body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout>.col2-set>.col-1,
body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout>.col2-set>.col-2{
  float:none!important;width:100%!important;max-width:none!important
}
body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review_heading{
  grid-area:heading!important;
  width:100%!important;
  margin:0!important;
  padding:16px 18px!important;
  border:1px solid var(--fyn-commerce-border)!important;
  border-bottom:0!important;
  border-radius:14px 14px 0 0!important;
  background:#fff!important;
  color:var(--fyn-commerce-text)!important;
  font-size:17px!important;
  font-weight:850!important;
}
body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review{
  grid-area:review!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  float:none!important;
  position:sticky!important;
  top:92px!important;
  margin:0!important;
  padding:0 18px 18px!important;
  border:1px solid var(--fyn-commerce-border)!important;
  border-top:0!important;
  border-radius:0 0 14px 14px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(15,23,42,.07)!important;
  overflow:hidden!important;
}

body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout h3#ship-to-different-address{
  margin:0 0 18px!important;
  padding:0 0 12px!important;
  border-bottom:1px solid #e8eef6!important;
  color:var(--fyn-commerce-text)!important;
  font-size:18px!important;
  font-weight:850!important;
}
body.woocommerce-checkout .woocommerce-additional-fields h3{
  margin:20px 0 12px!important;color:var(--fyn-commerce-text)!important;font-size:16px!important
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px 14px!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row{
  width:100%!important;float:none!important;margin:0!important;padding:0!important
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-wide,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-checkout #billing_company_field,
body.woocommerce-checkout #billing_email_field,
body.woocommerce-checkout #billing_phone_field,
body.woocommerce-checkout #fyn_gst_number_field{
  grid-column:1/-1!important
}

body.woocommerce-checkout .form-row label{
  display:block!important;margin:0 0 5px!important;color:#334155!important;font-size:11px!important;font-weight:800!important
}
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout input[type="text"],
body.woocommerce-checkout input[type="email"],
body.woocommerce-checkout input[type="tel"],
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-container .select2-selection--single{
  width:100%!important;
  min-height:44px!important;
  padding:10px 12px!important;
  border:1px solid #cfdbea!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--fyn-commerce-text)!important;
  font-size:12px!important;
  box-shadow:none!important;
}
body.woocommerce-checkout .select2-container .select2-selection--single{padding:7px 11px!important}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:28px!important;padding:0!important}
body.woocommerce-checkout input:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus{
  border-color:var(--fyn-commerce-blue)!important;
  outline:0!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.10)!important;
}

body.woocommerce-checkout #order_review table.shop_table{
  width:100%!important;table-layout:fixed!important;margin:0 0 12px!important;border:0!important
}
body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td{
  padding:11px 2px!important;border-color:#edf2f7!important;color:#334155!important;font-size:11px!important;line-height:1.45!important;
  overflow-wrap:anywhere!important;word-break:normal!important
}
body.woocommerce-checkout #order_review table.shop_table th:first-child,
body.woocommerce-checkout #order_review table.shop_table td:first-child{width:68%!important;padding-right:12px!important}
body.woocommerce-checkout #order_review table.shop_table th:last-child,
body.woocommerce-checkout #order_review table.shop_table td:last-child{width:32%!important;text-align:right!important;white-space:nowrap!important}
body.woocommerce-checkout #order_review table.shop_table .order-total th,
body.woocommerce-checkout #order_review table.shop_table .order-total td{
  padding-top:14px!important;color:var(--fyn-commerce-text)!important;font-size:13px!important;font-weight:900!important
}
body.woocommerce-checkout #order_review table.shop_table .order-total .amount{color:var(--fyn-commerce-blue)!important;font-size:18px!important}

body.woocommerce-checkout #payment{
  margin-top:10px!important;padding:12px!important;border:1px solid #e1e8f0!important;border-radius:10px!important;background:#f8fafc!important
}
body.woocommerce-checkout #payment ul.payment_methods{margin:0!important;padding:0!important;border-bottom:0!important}
body.woocommerce-checkout #payment .payment_box{margin:9px 0!important;border-radius:8px!important;background:#fff!important;color:#475569!important;font-size:11px!important}
body.woocommerce-checkout #place_order{
  width:100%!important;
  min-height:50px!important;
  margin-top:12px!important;
  border:0!important;
  border-radius:9px!important;
  background:var(--fyn-commerce-blue)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  box-shadow:0 8px 18px rgba(37,99,235,.18)!important;
}
body.woocommerce-checkout #place_order:hover{background:var(--fyn-commerce-blue-dark)!important}
body.woocommerce-checkout .fynv52-bank-panel{
  border-color:#bfdbfe!important;background:#f8fbff!important
}

/* ---------- cart desktop ---------- */
body.woocommerce-cart .fyn-commerce-benefits{
  border-top:3px solid var(--fyn-commerce-blue)!important;
  box-shadow:0 8px 24px rgba(15,23,42,.05)!important;
}
body.woocommerce-cart .fyn-benefits-title span,
body.woocommerce-cart .fyn-cart-label{color:var(--fyn-commerce-blue)!important}

body.woocommerce-cart form.woocommerce-cart-form{
  width:calc(100% - 450px)!important;
  float:left!important;
}
body.woocommerce-cart .cart-collaterals{
  width:425px!important;
  float:right!important;
}
body.woocommerce-cart table.shop_table.cart,
body.woocommerce-cart .wc-block-cart-items{
  border-radius:12px!important;
  box-shadow:0 8px 24px rgba(15,23,42,.05)!important;
}
body.woocommerce-cart .cart-collaterals .cart_totals,
body.woocommerce-cart .wc-block-cart__sidebar{
  border-top:3px solid var(--fyn-commerce-blue)!important;
  border-radius:12px!important;
}
body.woocommerce-cart .checkout-button,
body.woocommerce-cart .wc-block-cart__submit-button{
  background:var(--fyn-commerce-blue)!important;
  color:#fff!important;
  border-radius:8px!important;
}
body.woocommerce-cart .checkout-button:hover,
body.woocommerce-cart .wc-block-cart__submit-button:hover{background:var(--fyn-commerce-blue-dark)!important}
body.woocommerce-cart .cart-collaterals .order-total .amount,
body.woocommerce-cart .product-subtotal .amount{color:var(--fyn-commerce-blue)!important}

/* ---------- tablet ---------- */
@media (max-width:1100px){
  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout .woocommerce{width:min(100% - 24px,1120px)!important}
  body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout{
    grid-template-columns:minmax(0,1fr) 350px!important;gap:0 14px!important
  }
  body.woocommerce-cart form.woocommerce-cart-form{width:calc(100% - 365px)!important}
  body.woocommerce-cart .cart-collaterals{width:345px!important}
}

/* ---------- mobile / narrow tablet ---------- */
@media (max-width:860px){
  body.woocommerce-cart #primary,
  body.woocommerce-checkout #primary,
  body.woocommerce-cart .site-main,
  body.woocommerce-checkout .site-main{padding-top:12px!important;padding-bottom:32px!important}
  body.woocommerce-cart .entry-header,
  body.woocommerce-checkout .entry-header,
  body.woocommerce-cart .entry-title,
  body.woocommerce-checkout .entry-title,
  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout .woocommerce{width:calc(100% - 20px)!important}

  .fyn-commerce-steps{min-height:38px!important;margin-bottom:8px!important;font-size:10px!important;gap:6px!important}
  .fyn-commerce-steps i{width:26px!important}
  .fyn-commerce-steps span b{width:19px!important;height:19px!important}
  .fyn-checkout-intro{padding:13px 14px!important;border-radius:10px!important}
  .fyn-checkout-intro>div:first-child strong{font-size:15px!important}
  .fyn-checkout-intro>div:first-child small{font-size:9.5px!important;line-height:1.45!important}
  .fyn-secure-chip{display:none!important}

  body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout{
    display:block!important;width:100%!important
  }
  body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout>.col2-set{
    padding:15px!important;border-radius:10px!important
  }
  body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review_heading{
    margin-top:14px!important;border-radius:10px 10px 0 0!important
  }
  body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review{
    position:static!important;border-radius:0 0 10px 10px!important;padding:0 14px 14px!important
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{
    grid-template-columns:1fr!important;gap:10px!important
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row{
    grid-column:1!important
  }
  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout input[type="text"],
  body.woocommerce-checkout input[type="email"],
  body.woocommerce-checkout input[type="tel"],
  body.woocommerce-checkout select,
  body.woocommerce-checkout textarea,
  body.woocommerce-checkout .select2-container .select2-selection--single{
    min-height:43px!important;font-size:12px!important
  }
  body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{padding:11px 12px!important;font-size:10.5px!important}

  body.woocommerce-cart form.woocommerce-cart-form,
  body.woocommerce-cart .cart-collaterals{width:100%!important;float:none!important}
  body.woocommerce-cart .cart-collaterals{margin-top:14px!important}
}

@media (max-width:560px){
  body.woocommerce-cart .entry-title,
  body.woocommerce-checkout .entry-title{font-size:22px!important}
  .fyn-commerce-steps span{font-size:9px!important}
  .fyn-commerce-steps i{width:18px!important}
  .fyn-commerce-benefits{padding:10px 12px!important}
  .fyn-benefits-title{font-size:13px!important}
  .fyn-benefit{gap:7px!important;padding:5px 0!important}
  .fyn-benefit small,.fyn-benefit em{display:none!important}
  body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout>.col2-set{padding:13px!important}
  body.woocommerce-checkout #order_review_heading{padding:13px 14px!important;font-size:15px!important}
  body.woocommerce-checkout #order_review table.shop_table th,
  body.woocommerce-checkout #order_review table.shop_table td{font-size:10.5px!important}
  body.woocommerce-checkout #place_order{min-height:48px!important}
}


/* =========================================================
   FYNSOURCE MRO v5.2.5 — PAYMENT SUMMARY REFINEMENT
   ========================================================= */

/* The custom rows below replace WooCommerce's repetitive subtotal/tax/shipping rows. */
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.cart-subtotal,
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.tax-rate,
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.shipping {
  display:none !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table .fyn-summary-row {
  display:table-row !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table .fyn-summary-row th,
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table .fyn-summary-row td {
  padding:9px 0 !important;
  border:0 !important;
  background:transparent !important;
  font-size:13px !important;
  line-height:1.35 !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table .fyn-summary-row th {
  color:#334155 !important;
  font-weight:600 !important;
  text-align:left !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table .fyn-summary-row td {
  color:#0f172a !important;
  font-weight:800 !important;
  text-align:right !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals .fyn-free-shipping {
  color:#16a34a !important;
  font-weight:850 !important;
}

/* Final payable amount */
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total {
  border-top:1px solid #dbe5f1 !important;
  display:table-row !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total th,
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total td {
  padding:14px 0 8px !important;
  border:0 !important;
  background:transparent !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total th {
  font-size:0 !important;
  color:#0f172a !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total th:after {
  content:"Amount Payable";
  font-size:14px !important;
  font-weight:850 !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total td {
  text-align:right !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total .amount {
  color:#2563eb !important;
  font-size:20px !important;
  font-weight:900 !important;
}

/* Remove the visible cart-item metadata line if another plugin outputs it with standard item-data markup. */
body.woocommerce-cart .product-name dl.variation dt:has(+ dd p),
body.woocommerce-cart .product-name dl.variation dd {
  font-size:11px;
}

/* Compact mobile summary while retaining all four amounts. */
@media (max-width: 767px) {
  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table .fyn-summary-row th,
  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table .fyn-summary-row td {
    padding:8px 0 !important;
    font-size:12px !important;
  }
  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total .amount {
    font-size:18px !important;
  }
}


/* v5.2.6 — GST is rendered in the custom Payment Summary row, so hide
   WooCommerce's standard fee row for the same GST charge. */
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.fee {
  display:none !important;
}


/* =========================================================
   FYNSOURCE MRO v5.2.7 — FULL RESPONSIVE COMMERCE / AUTH FIX
   Fixes checkout-login horizontal overflow on iPhone and
   reinforces cart + checkout responsiveness on all screens.
   ========================================================= */

html,
body {
  max-width:100% !important;
  overflow-x:hidden !important;
}

/* ---------- Checkout login / registration ---------- */
body.fyn-checkout-auth,
body.fyn-checkout-auth .site,
body.fyn-checkout-auth .site-content,
body.fyn-checkout-auth .ast-container,
body.fyn-checkout-auth .content-area,
body.fyn-checkout-auth #primary,
body.fyn-checkout-auth .site-main,
body.fyn-checkout-auth main,
body.fyn-checkout-auth article,
body.fyn-checkout-auth .entry-content {
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  float:none !important;
  transform:none !important;
}

/* Undo the old 100vw/left:50% full-bleed rule on auth pages.
   That rule was the source of the iPhone right-side overflow. */
body.fyn-checkout-auth .fynv5-page {
  position:static !important;
  left:auto !important;
  right:auto !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:24px 0 44px !important;
  overflow:hidden !important;
  transform:none !important;
}

body.fyn-checkout-auth .site-main,
body.fyn-checkout-auth main.site-main {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

body.fyn-checkout-auth .fynv5-auth.is-checkout-auth {
  width:min(1180px,calc(100% - 28px)) !important;
  max-width:1180px !important;
  min-width:0 !important;
  min-height:auto !important;
  margin:0 auto !important;
  grid-template-columns:minmax(0,1fr) minmax(360px,460px) !important;
}

body.fyn-checkout-auth .fynv5-auth.is-checkout-auth > *,
body.fyn-checkout-auth .fynv5-auth-panel,
body.fyn-checkout-auth .fynv5-auth-art,
body.fyn-checkout-auth form,
body.fyn-checkout-auth .fynv5-register-grid,
body.fyn-checkout-auth .fynv5-auth-tabs {
  min-width:0 !important;
  max-width:100% !important;
}

body.fyn-checkout-auth #fynv5-login-form input,
body.fyn-checkout-auth .fynv5-register-form input,
body.fyn-checkout-auth .fynv5-register-form select,
body.fyn-checkout-auth .fynv5-register-form textarea,
body.fyn-checkout-auth #fynv5_login_submit,
body.fyn-checkout-auth .fynv5-register-form button {
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}

/* ---------- Cart / checkout global containment ---------- */
body.woocommerce-cart,
body.woocommerce-checkout {
  overflow-x:hidden !important;
}

body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce {
  min-width:0 !important;
  max-width:1500px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.woocommerce-cart form.woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals,
body.woocommerce-checkout form.checkout,
body.woocommerce-checkout form.checkout > .col2-set,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout #order_review_heading {
  min-width:0 !important;
}

/* Prevent long product names / addresses / payment text from forcing width. */
body.woocommerce-cart .product-name,
body.woocommerce-cart .product-name a,
body.woocommerce-checkout #order_review td,
body.woocommerce-checkout #order_review th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table {
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}

/* ---------- Tablet ---------- */
@media (max-width: 900px) {
  body.fyn-checkout-auth .fynv5-page {
    padding:18px 0 34px !important;
  }

  body.fyn-checkout-auth .fynv5-auth.is-checkout-auth {
    width:calc(100% - 24px) !important;
    grid-template-columns:1fr !important;
    border-radius:14px !important;
  }

  body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-art {
    display:none !important;
  }

  body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-panel {
    width:100% !important;
    padding:26px 24px !important;
  }

  body.woocommerce-cart form.woocommerce-cart-form,
  body.woocommerce-cart .cart-collaterals {
    width:100% !important;
    max-width:100% !important;
    float:none !important;
  }

  body.woocommerce-cart .cart-collaterals {
    margin-top:16px !important;
  }

  body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout {
    display:block !important;
  }

  body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout > .col2-set,
  body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review_heading,
  body.woocommerce-checkout:not(.fyn-checkout-auth) #order_review {
    width:100% !important;
    max-width:100% !important;
    position:static !important;
    top:auto !important;
  }
}

/* ---------- Mobile ---------- */
@media (max-width: 600px) {
  body.fyn-checkout-auth .fynv5-page {
    padding:12px 0 28px !important;
  }

  body.fyn-checkout-auth .fynv5-auth.is-checkout-auth {
    width:calc(100% - 20px) !important;
    max-width:none !important;
    margin:0 auto !important;
    border-radius:13px !important;
    box-shadow:0 10px 30px rgba(15,23,42,.08) !important;
  }

  body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-panel {
    padding:18px 15px 20px !important;
  }

  body.fyn-checkout-auth .fynv5-auth-tabs {
    margin-bottom:18px !important;
    gap:3px !important;
  }

  body.fyn-checkout-auth .fynv5-auth-tabs a {
    min-height:42px !important;
    font-size:12px !important;
  }

  body.fyn-checkout-auth .fynv5-form-head span {
    font-size:9px !important;
  }

  body.fyn-checkout-auth .fynv5-form-head h2 {
    font-size:24px !important;
    line-height:1.15 !important;
  }

  body.fyn-checkout-auth .fynv5-form-head p {
    margin-bottom:16px !important;
    font-size:12px !important;
    line-height:1.5 !important;
  }

  body.fyn-checkout-auth #fynv5-login-form label,
  body.fyn-checkout-auth .fynv5-register-form label span {
    font-size:11px !important;
  }

  body.fyn-checkout-auth #fynv5-login-form input[type="text"],
  body.fyn-checkout-auth #fynv5-login-form input[type="password"],
  body.fyn-checkout-auth .fynv5-register-form input {
    min-height:46px !important;
    height:46px !important;
    padding:0 12px !important;
    font-size:14px !important;
  }

  body.fyn-checkout-auth #fynv5_login_submit,
  body.fyn-checkout-auth .fynv5-register-form > button {
    min-height:48px !important;
    font-size:13px !important;
  }

  body.fyn-checkout-auth .fynv5-register-grid {
    grid-template-columns:1fr !important;
    gap:0 !important;
  }

  body.fyn-checkout-auth .fynv5-forgot,
  body.fyn-checkout-auth .fynv5-terms {
    font-size:11px !important;
  }

  /* Commerce page side gutters */
  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout .woocommerce,
  body.woocommerce-cart .entry-title,
  body.woocommerce-checkout .entry-title {
    width:calc(100% - 16px) !important;
    max-width:none !important;
  }

  .fyn-commerce-steps {
    width:100% !important;
    overflow:hidden !important;
    gap:5px !important;
  }

  .fyn-commerce-steps span {
    min-width:0 !important;
    font-size:9px !important;
    white-space:nowrap !important;
  }

  .fyn-commerce-steps i {
    width:14px !important;
    min-width:14px !important;
  }

  /* Checkout address form: always one column on phones */
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
  body.woocommerce-checkout .form-row-first,
  body.woocommerce-checkout .form-row-last {
    width:100% !important;
    max-width:100% !important;
    grid-column:1 / -1 !important;
  }

  body.woocommerce-checkout:not(.fyn-checkout-auth) form.checkout > .col2-set {
    padding:14px !important;
    border-radius:11px !important;
  }

  body.woocommerce-checkout input.input-text,
  body.woocommerce-checkout input[type="text"],
  body.woocommerce-checkout input[type="email"],
  body.woocommerce-checkout input[type="tel"],
  body.woocommerce-checkout select,
  body.woocommerce-checkout textarea,
  body.woocommerce-checkout .select2-container {
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    font-size:14px !important;
  }

  body.woocommerce-checkout #order_review_heading {
    margin-top:14px !important;
    border-radius:11px 11px 0 0 !important;
  }

  body.woocommerce-checkout #order_review {
    padding:0 13px 14px !important;
    border-radius:0 0 11px 11px !important;
    overflow:hidden !important;
  }

  body.woocommerce-checkout #order_review table.shop_table {
    table-layout:fixed !important;
    width:100% !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:first-child,
  body.woocommerce-checkout #order_review table.shop_table td:first-child {
    width:64% !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:last-child,
  body.woocommerce-checkout #order_review table.shop_table td:last-child {
    width:36% !important;
    white-space:normal !important;
  }

  body.woocommerce-checkout #payment,
  body.woocommerce-checkout #payment .payment_box {
    max-width:100% !important;
    overflow-wrap:anywhere !important;
  }

  body.woocommerce-checkout #place_order {
    width:100% !important;
    min-height:50px !important;
    font-size:13px !important;
  }

  /* Classic Woo cart table -> phone-friendly product cards */
  body.woocommerce-cart table.shop_table.cart {
    border:0 !important;
    background:transparent !important;
  }

  body.woocommerce-cart table.shop_table.cart thead {
    display:none !important;
  }

  body.woocommerce-cart table.shop_table.cart tbody,
  body.woocommerce-cart table.shop_table.cart tr.woocommerce-cart-form__cart-item {
    display:block !important;
    width:100% !important;
  }

  body.woocommerce-cart table.shop_table.cart tr.woocommerce-cart-form__cart-item {
    position:relative !important;
    margin:0 0 10px !important;
    padding:13px !important;
    border:1px solid #dbe5f1 !important;
    border-radius:12px !important;
    background:#fff !important;
  }

  body.woocommerce-cart table.shop_table.cart tr.woocommerce-cart-form__cart-item td {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    padding:5px 0 !important;
    border:0 !important;
    text-align:left !important;
  }

  body.woocommerce-cart table.shop_table.cart .product-remove {
    position:absolute !important;
    top:10px !important;
    right:10px !important;
    width:auto !important;
    z-index:2 !important;
  }

  body.woocommerce-cart table.shop_table.cart .product-thumbnail {
    width:74px !important;
    padding-right:8px !important;
  }

  body.woocommerce-cart table.shop_table.cart .product-thumbnail img {
    width:68px !important;
    height:68px !important;
    object-fit:contain !important;
  }

  body.woocommerce-cart table.shop_table.cart .product-name {
    padding-right:32px !important;
    font-size:13px !important;
    line-height:1.4 !important;
  }

  body.woocommerce-cart table.shop_table.cart .product-price,
  body.woocommerce-cart table.shop_table.cart .product-subtotal {
    display:inline-block !important;
    width:auto !important;
    margin-right:14px !important;
    font-size:13px !important;
  }

  body.woocommerce-cart table.shop_table.cart .product-quantity {
    margin-top:5px !important;
  }

  body.woocommerce-cart table.shop_table.cart td.actions {
    margin-top:10px !important;
    padding:12px !important;
    border:1px solid #dbe5f1 !important;
    border-radius:12px !important;
    background:#fff !important;
  }

  body.woocommerce-cart table.shop_table.cart td.actions .coupon {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:8px !important;
    width:100% !important;
  }

  body.woocommerce-cart table.shop_table.cart td.actions .coupon input,
  body.woocommerce-cart table.shop_table.cart td.actions .coupon button {
    width:100% !important;
    min-width:0 !important;
  }

  body.woocommerce-cart table.shop_table.cart td.actions > button[name="update_cart"] {
    width:100% !important;
    margin-top:8px !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals {
    width:100% !important;
    padding:16px !important;
    border-radius:12px !important;
  }
}

/* Very narrow phones */
@media (max-width: 380px) {
  body.fyn-checkout-auth .fynv5-auth.is-checkout-auth {
    width:calc(100% - 12px) !important;
  }

  body.fyn-checkout-auth .fynv5-auth.is-checkout-auth .fynv5-auth-panel {
    padding:16px 12px 18px !important;
  }

  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout .woocommerce {
    width:calc(100% - 10px) !important;
  }
}
