/* True North Core — front-end component styling.
   Brand tokens duplicated from the live site (Elementor global kit) so the
   native components match the site after Jet/Elementor widgets are retired.
   Each token prefers the live Elementor global var, with the captured hex as
   a fallback (keeps in sync while Elementor is present; self-contained if not). */
:root{
  --tnc-primary:   var(--e-global-color-primary,   #586E86);
  --tnc-secondary: var(--e-global-color-secondary, #102A3C);
  --tnc-text:      var(--e-global-color-text,      #102A3C);
  --tnc-accent:    var(--e-global-color-accent,    #7E9965);
  --tnc-accent-dk: #3F593A;
  --tnc-cream:     #F4F0E9;
  --tnc-tan:       #DED3BA;
  --tnc-tan-lt:    #E7E0D1;
  --tnc-white:     #FFFFFF;
  --tnc-border:    rgba(0,0,0,.05);
  --tnc-font:      var(--e-global-typography-primary-font-family, "indivisible-variable"), -apple-system, sans-serif;
  --tnc-heading:   "GD Sherpa", var(--e-global-typography-primary-font-family, "indivisible-variable"), sans-serif;
  --tnc-radius:    14px;
  --tnc-pill:      30px;
}

/* shared */
.tnc-form,.tnc-dir,.tnc-profile,.tnc-msg,.tnc-bookings{font-family:var(--tnc-font);color:var(--tnc-text)}
.tnc-form-h,.tnc-profile h2,.tnc-profile h3{font-family:var(--tnc-heading);color:var(--tnc-secondary);font-weight:500}

/* buttons (brand pill) */
button.tnc-btn,a.tnc-btn,input.tnc-btn,.tnc-btn{display:inline-block;background:var(--tnc-primary)!important;color:#fff!important;
  border:0!important;border-radius:var(--tnc-pill)!important;padding:.8rem 2rem!important;font-family:var(--tnc-font);font-size:1rem;
  font-weight:500;line-height:1.2;cursor:pointer;text-decoration:none!important;transition:filter .15s;width:auto}
.tnc-btn:hover{filter:brightness(.93);color:#fff!important}
.tnc-btn-sm{padding:.45rem 1.1rem;font-size:.85rem}
.tnc-btn-alt,button.tnc-btn-alt{background:var(--tnc-accent-dk)!important}
.tnc-btn-alt:hover{filter:brightness(.93)}

/* forms — polished card */
.tnc-form{max-width:520px;margin:2.5rem auto;background:#fff;border:1px solid var(--tnc-border);
  border-radius:18px;box-shadow:0 12px 34px rgba(16,42,60,.07);padding:2.4rem 2.3rem 2.1rem;box-sizing:border-box}
.tnc-form .tnc-form-h{margin:0 0 1.5rem;font-size:1.8rem;text-align:center;line-height:1.15}
.tnc-field{display:flex;flex-direction:column;gap:.4rem;margin:0 0 1.1rem}
.tnc-field label{font-weight:500;font-size:.84rem;color:var(--tnc-secondary);text-transform:none}
.tnc-field input,.tnc-field select,.tnc-field textarea{
  padding:.8rem .95rem!important;border:1.5px solid #d8ddd8!important;border-radius:12px!important;
  font-size:1rem!important;font-family:var(--tnc-font)!important;color:var(--tnc-text)!important;background:#fff!important;
  width:100%!important;box-sizing:border-box!important;transition:border-color .15s,box-shadow .15s;line-height:1.3}
.tnc-field input::placeholder,.tnc-field textarea::placeholder{color:#a4adb0}
.tnc-field input:focus,.tnc-field select:focus,.tnc-field textarea:focus{
  outline:none!important;border-color:var(--tnc-primary)!important;box-shadow:0 0 0 3px rgba(88,110,134,.18)!important}
.tnc-field textarea{min-height:96px;resize:vertical}
.tnc-check{display:flex;gap:.55rem;align-items:flex-start;margin:.6rem 0 1.2rem;font-size:.9rem;color:var(--tnc-text)}
.tnc-check input{margin-top:.15rem;accent-color:var(--tnc-primary)}
.tnc-form .tnc-btn{width:100%;margin-top:.3rem;padding:.9rem 2rem!important;font-size:1.02rem}
.tnc-form .tnc-btn.tnc-btn-sm,.tnc-form-actions .tnc-btn{width:auto}
.tnc-form-errors{background:#fdecea;border:1px solid #f3c0bd;border-radius:12px;padding:.7rem 1rem;margin:0 0 1.1rem;font-size:.92rem}
.tnc-form-errors ul{margin:0;padding-left:1.1rem}
.tnc-form-ok{background:#eaf1e4;border:1px solid var(--tnc-accent);border-radius:12px;padding:.7rem 1rem;margin:0 0 1.1rem;color:var(--tnc-accent-dk)}
.tnc-form-note{max-width:520px;margin:2rem auto;padding:1rem 1.2rem;background:#fff;border:1px solid var(--tnc-border);border-radius:14px;color:var(--tnc-text)}
.tnc-field-note{color:#5a6b70;font-size:.88rem;margin:.2rem 0 .8rem}
.tnc-hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}

/* directory */
.tnc-dir-filters{display:flex;flex-wrap:wrap;gap:.6rem;margin:0 0 1.4rem}
.tnc-dir-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.1rem}
.tnc-card{display:block;border:1px solid var(--tnc-border);border-radius:var(--tnc-radius);overflow:hidden;text-decoration:none;color:inherit;background:#fff;transition:box-shadow .15s,transform .15s}
.tnc-card:hover{box-shadow:0 8px 24px rgba(16,42,60,.12);transform:translateY(-2px)}
.tnc-card-imgwrap{aspect-ratio:4/3;background:var(--tnc-tan-lt);overflow:hidden}
.tnc-card-img{width:100%;height:100%;object-fit:cover}
.tnc-card-noimg{width:100%;height:100%;background:linear-gradient(135deg,var(--tnc-tan-lt),var(--tnc-tan))}
.tnc-card-body{padding:.9rem}
.tnc-card-body h4{margin:0 0 .3rem;font-family:var(--tnc-heading);color:var(--tnc-secondary)}
.tnc-card-rating{color:#b8860b;font-size:.9rem}
.tnc-card-rating span{color:#5a6b70}
.tnc-card-rating.tnc-new{color:var(--tnc-accent-dk);font-weight:500}
.tnc-card-meta{color:#5a6b70;font-size:.85rem;margin:.2rem 0}
.tnc-card-cta{color:var(--tnc-primary);font-weight:500;font-size:.9rem}
.tnc-dir-empty{color:#5a6b70}

/* profile */
.tnc-profile{max-width:760px}
.tnc-profile-services{list-style:none;padding:0}
.tnc-profile-services li{padding:.5rem 0;border-bottom:1px solid var(--tnc-border)}
.tnc-review{border-left:3px solid var(--tnc-accent);padding:.3rem .9rem;margin:.7rem 0}

/* messaging */
.tnc-msg-log{border:1px solid var(--tnc-border);border-radius:var(--tnc-radius);height:340px;overflow-y:auto;padding:.9rem;display:flex;flex-direction:column;gap:.45rem;background:#fbfaf7}
.tnc-msg-bubble{max-width:75%;padding:.5rem .8rem;border-radius:14px;font-size:.95rem}
.tnc-msg-bubble.mine{align-self:flex-end;background:var(--tnc-primary);color:#fff}
.tnc-msg-bubble.theirs{align-self:flex-start;background:var(--tnc-tan-lt);color:var(--tnc-text)}
.tnc-msg-bubble time{display:block;font-size:.7rem;opacity:.7;margin-top:.2rem}
.tnc-msg-form{display:flex;gap:.5rem;margin-top:.7rem}
.tnc-msg-form textarea{flex:1}

/* social + bookings */
.tnc-social-google{display:inline-block;background:#fff;color:#3c4043;border:1px solid var(--tnc-border);border-radius:var(--tnc-pill);text-decoration:none;font-weight:500;padding:.7rem 1.4rem}
.tnc-social-google:hover{background:#f7f6f3;color:#3c4043}
.tnc-badge{font-size:.78rem;padding:.18rem .6rem;border-radius:999px;background:var(--tnc-tan-lt);text-transform:capitalize;color:var(--tnc-secondary)}
.tnc-badge.tnc-completed{background:#eaf1e4;color:var(--tnc-accent-dk)}
.tnc-badge.tnc-cancelled{background:#fdecea;color:#a23}
.tnc-booking-row,.tnc-approve-row{padding:.6rem 0;border-bottom:1px solid var(--tnc-border)}
.tnc-days{display:inline-flex;flex-wrap:wrap;gap:.6rem}
.tnc-day{display:inline-flex;gap:.3rem;align-items:center;font-size:.9rem}

/* vendor onboarding dashboard */
.tnc-onb{max-width:680px;margin:2.5rem auto}
.tnc-onb-h{font-family:var(--tnc-heading);color:var(--tnc-secondary);font-size:1.7rem;margin:0 0 1.2rem}
.tnc-onb-banner{padding:.9rem 1.1rem;border-radius:12px;margin:0 0 1.3rem;font-weight:500}
.tnc-onb-ok{background:#eaf1e4;border:1px solid var(--tnc-accent);color:var(--tnc-accent-dk)}
.tnc-onb-review{background:#eef3f6;border:1px solid var(--tnc-border);color:var(--tnc-secondary)}
.tnc-onb-prog{height:8px;background:#e7e1d6;border-radius:99px;overflow:hidden}
.tnc-onb-prog-bar{height:100%;background:var(--tnc-accent);transition:width .3s}
.tnc-onb-prog-label{font-size:.85rem;color:#5a6b70;margin:.4rem 0 1.4rem}
.tnc-onb-steps{background:#fff;border:1px solid var(--tnc-border);border-radius:16px;overflow:hidden}
.tnc-onb-step{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.3rem;border-bottom:1px solid var(--tnc-border);text-decoration:none;color:inherit;transition:background .12s}
a.tnc-onb-step:hover{background:#fbfaf7}
.tnc-onb-step:last-child{border-bottom:0}
.tnc-onb-check{flex:0 0 28px;width:28px;height:28px;border-radius:99px;border:2px solid var(--tnc-border);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:500;font-size:.95rem}
.tnc-onb-step.is-done .tnc-onb-check{background:var(--tnc-accent);border-color:var(--tnc-accent)}
.tnc-onb-step-main{flex:1;display:flex;flex-direction:column;gap:.15rem}
.tnc-onb-step-title{font-weight:500;color:var(--tnc-secondary);font-size:1.02rem}
.tnc-onb-opt{font-weight:400;color:#8a949a;font-style:italic;font-size:.8rem}
.tnc-onb-step-desc{color:#5a6b70;font-size:.88rem}
.tnc-onb-meta{flex:0 0 auto;color:#8a949a;font-size:.85rem;white-space:nowrap}
.tnc-onb-step.is-done .tnc-onb-meta{color:var(--tnc-accent-dk);font-weight:500}
.tnc-onb-arrow{color:var(--tnc-primary);font-size:1.1rem}
.tnc-onb-submit{margin:1.6rem 0;text-align:center}
.tnc-onb-submit .tnc-btn{min-width:280px}
.tnc-agreement-body{max-height:300px;overflow-y:auto;background:#fbfaf7;border:1px solid var(--tnc-border);border-radius:12px;padding:1rem 1.2rem;margin:0 0 1rem;font-size:.92rem}
.tnc-agreement-body ul{padding-left:1.1rem}

/* richer edit-profile form */
.tnc-form-wide{max-width:640px}
.tnc-row2{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
@media(max-width:560px){.tnc-row2{grid-template-columns:1fr}}
.tnc-photo-field{display:flex;gap:1.1rem;align-items:center;margin:0 0 1.2rem}
.tnc-photo-prev{flex:0 0 84px;width:84px;height:84px;border-radius:50%;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center}
.tnc-photo-img{width:100%;height:100%;object-fit:cover}
.tnc-photo-ph{color:#8a949a;font-size:.8rem}
.tnc-photo-up{flex:1}
.tnc-photo-up label{font-weight:500;font-size:.84rem;color:var(--tnc-secondary);display:block;margin-bottom:.3rem}

/* rich vendor profile */
.tnc-vp{max-width:960px;margin:2rem auto;font-family:var(--tnc-font);color:var(--tnc-text)}
.tnc-vp-head{display:flex;gap:1.4rem;align-items:flex-start;padding:0 0 1.5rem;border-bottom:1px solid var(--tnc-border)}
.tnc-vp-avatar{flex:0 0 110px;width:110px;height:110px;border-radius:50%;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center}
.tnc-vp-avatar-img{width:100%;height:100%;object-fit:cover}
.tnc-vp-avatar-ph{font-family:var(--tnc-heading);font-size:2.6rem;color:var(--tnc-primary)}
.tnc-vp-name{font-family:var(--tnc-heading);color:var(--tnc-secondary);margin:0;font-size:2rem;line-height:1.1}
.tnc-vp-tagline{margin:.3rem 0 .5rem;color:#5a6b70;font-size:1.05rem}
.tnc-vp-sub{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;align-items:center;font-size:.95rem}
.tnc-vp-loc{color:#5a6b70}
.tnc-vp-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}
.tnc-badge-trust{background:#eaf1e4;color:var(--tnc-accent-dk);border:1px solid var(--tnc-accent);font-size:.8rem;padding:.25rem .7rem}
.tnc-badge-trust::before{content:"\2713 ";font-weight:500}
.tnc-vp-cols{display:grid;grid-template-columns:1fr 320px;gap:2.2rem;margin-top:1.6rem}
@media(max-width:780px){.tnc-vp-cols{grid-template-columns:1fr}}
.tnc-vp-sec{margin:0 0 1.8rem}
.tnc-vp-sec h3{font-family:var(--tnc-heading);color:var(--tnc-secondary);font-size:1.3rem;margin:0 0 .7rem}
.tnc-vp-bio{line-height:1.6;color:#3a474c}
.tnc-vp-right{align-self:start}
.tnc-vp-book{background:#fff;border:1px solid var(--tnc-border);border-radius:16px;box-shadow:0 10px 28px rgba(16,42,60,.07);padding:1.4rem}
.tnc-vp-from{font-size:1.05rem;margin:0 0 .6rem}
.tnc-vp-from strong{font-size:1.5rem;color:var(--tnc-secondary)}
.tnc-vp-avail{font-size:.88rem;color:#5a6b70;margin:0 0 1rem;line-height:1.4}
.tnc-vp-avail span{display:block;font-weight:500;color:var(--tnc-secondary);text-transform:uppercase;font-size:.72rem;letter-spacing:.05em}
.tnc-vp-book .tnc-btn{width:100%}
.tnc-vp-msg{display:block;text-align:center;margin-top:.7rem;color:var(--tnc-primary);font-weight:500;text-decoration:none;font-size:.92rem}

/* default cleaner avatar/logo */
.tnc-card-noimg{display:flex;align-items:center;justify-content:center;background:#F4F0E9}
.tnc-card-logo{width:56%;height:auto}

/* rich profile: gallery, chips, stats, sidebar */
.tnc-vp-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1.4rem 0}
@media(max-width:600px){.tnc-vp-gallery{grid-template-columns:repeat(2,1fr)}}
.tnc-vp-gitem{aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:var(--tnc-tan-lt)}
.tnc-vp-gimg{width:100%;height:100%;object-fit:cover;display:block}
.tnc-vp-chips{display:flex;flex-wrap:wrap;gap:.5rem}
.tnc-vp-chip{background:var(--tnc-tan-lt);color:var(--tnc-secondary);border-radius:99px;padding:.35rem .9rem;font-size:.9rem}
.tnc-vp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
@media(max-width:600px){.tnc-vp-stats{grid-template-columns:repeat(2,1fr)}}
.tnc-vp-stat{background:#fff;border:1px solid var(--tnc-border);border-radius:14px;padding:1rem .8rem;text-align:center}
.tnc-vp-stat b{display:block;font-family:var(--tnc-heading);font-size:1.7rem;color:var(--tnc-secondary);line-height:1}
.tnc-vp-stat span{display:block;color:#5a6b70;font-size:.8rem;margin-top:.35rem}
.tnc-vp-side{background:#fff;border:1px solid var(--tnc-border);border-radius:14px;padding:1.1rem 1.2rem;margin-top:1rem}
.tnc-vp-side h4{font-family:var(--tnc-heading);color:var(--tnc-secondary);margin:0 0 .6rem;font-size:1.05rem}
.tnc-vp-feenote{color:#8a949a;font-size:.78rem;margin:.5rem 0 0}
.tnc-vp-trust{list-style:none;padding:0;margin:0}
.tnc-vp-trust li{padding:.25rem 0;color:var(--tnc-accent-dk)}
.tnc-vp-trust li::before{content:"\2713  ";font-weight:500}

/* ===== Rover-style search ===== */
.tnc-srch{font-family:var(--tnc-font);color:var(--tnc-text);max-width:1280px;margin:0 auto}
.tnc-srch-bar{display:flex;flex-wrap:wrap;gap:.7rem;align-items:flex-end;background:#fff;border:1px solid var(--tnc-border);border-radius:14px;padding:.9rem 1rem;margin:0 0 1rem;position:sticky;top:0;z-index:30}
.tnc-srch-field{display:flex;flex-direction:column;gap:.2rem}
.tnc-srch-field label{font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:#8a949a}
.tnc-srch-field select,.tnc-srch-field input{padding:.6rem .7rem .6rem 2.15rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:10px!important;font-family:var(--tnc-font);min-width:150px}
.tnc-srch-ctl{position:relative;display:flex;align-items:center}
.tnc-srch-ctl select,.tnc-srch-ctl input{width:100%}
.tnc-srch-ic{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--tnc-primary);pointer-events:none}
.tnc-srch-actions{margin-left:auto;display:flex;gap:.6rem;align-items:center}
.tnc-srch-filterbtn{width:46px;height:46px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;padding:0;background:#fff;border:1.5px solid var(--tnc-border);color:var(--tnc-primary);cursor:pointer;flex:0 0 auto;transition:background .15s,color .15s}
.tnc-srch-filterbtn:hover{background:var(--tnc-cream,#f5f1e8)}
.tnc-srch-filterbtn.is-active{background:var(--tnc-primary);border-color:var(--tnc-primary);color:#fff}
.tnc-filters-cols{display:flex;flex-wrap:wrap;gap:1rem 2.4rem}
.tnc-filters{background:#fff;border:1px solid var(--tnc-border);border-radius:14px;padding:1.1rem 1.3rem;margin:0 0 1rem}
.tnc-filters-grp h4{font-family:var(--tnc-heading);color:var(--tnc-secondary);margin:0 0 .5rem}
.tnc-filters-grp label{display:flex;gap:.5rem;align-items:center;margin:.3rem 0;font-size:.95rem}
.tnc-filters-act{display:flex;justify-content:space-between;align-items:center;margin-top:.9rem}
.tnc-filters-act a{color:var(--tnc-primary);font-weight:500;text-decoration:none}
.tnc-srch-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,46%);gap:1.4rem;align-items:start}
@media(max-width:880px){.tnc-srch-body{grid-template-columns:1fr}.tnc-srch-map{display:none}}
.tnc-srch-head{display:flex;justify-content:space-between;align-items:baseline;margin:.2rem 0 .9rem}
.tnc-srch-head strong{font-family:var(--tnc-heading);color:var(--tnc-secondary);font-size:1.25rem}
.tnc-srch-head span{color:#8a949a;font-size:.9rem}
.tnc-srch-map{position:sticky;top:90px}
#tnc-map{height:640px;border-radius:16px;overflow:hidden;border:1px solid var(--tnc-border)}
.tnc-pin span{display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:var(--tnc-secondary);color:#fff;border:2px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);font-size:.8rem;font-weight:500;box-shadow:0 2px 6px rgba(0,0,0,.3)}
.tnc-pin span{}
.tnc-pin span > *{transform:rotate(45deg)}
.tnc-pin span{}
/* number upright */
.tnc-pin span{}
a.tnc-rc{display:flex;gap:1rem;padding:1.2rem .3rem;border-bottom:1px solid var(--tnc-border);text-decoration:none;color:inherit}
a.tnc-rc:hover{background:#fbfaf7}
.tnc-rc-avatar{position:relative;flex:0 0 80px;width:80px;height:80px}
.tnc-rc-avatar-img{width:80px;height:80px;border-radius:50%;object-fit:cover}
.tnc-rc-verified{position:absolute;bottom:-2px;right:-2px;width:24px;height:24px;background:var(--tnc-primary);color:#fff;border:2px solid #fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:500}
.tnc-rc-main{flex:1;min-width:0}
.tnc-rc-top{display:flex;justify-content:space-between;align-items:baseline;gap:.6rem}
.tnc-rc-top .tnc-rc-name{font-family:var(--tnc-heading);color:var(--tnc-secondary);font-size:1.25rem;font-weight:500}
.tnc-rc-price{text-align:right;white-space:nowrap;color:var(--tnc-accent-dk)}
.tnc-rc-price strong{font-size:1.2rem}
.tnc-rc-price small{display:block;color:#8a949a;font-size:.72rem}
.tnc-rc-tag{color:#3a474c;margin:.15rem 0}
.tnc-rc-loc{color:#5a6b70;font-size:.9rem}
.tnc-rc-meta{display:flex;flex-wrap:wrap;gap:.3rem 1rem;margin:.4rem 0;font-size:.9rem}
.tnc-rc-new{color:var(--tnc-accent-dk);font-weight:500}
.tnc-rc-repeat{color:#5a6b70}
.tnc-rc-snip{color:#5a6b70;font-size:.9rem;font-style:italic;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}

/* google map off-state */
#tnc-map.tnc-map-off{display:flex;align-items:center;justify-content:center;text-align:center;background:#eef3f4;color:#5a6b70;padding:1.5rem;font-size:.9rem}

/* ---- sitewide sticky footer: content fills the viewport, footer to the bottom ---- */
body{min-height:100vh;display:flex;flex-direction:column}
body > main#content,body > main.site-main{flex:1 0 auto;width:100%}

/* ---- address book ---- */
.tnc-addr-list{display:flex;flex-direction:column;gap:.8rem;margin:.4rem 0 1rem}
.tnc-addr-card{border:1px solid var(--tnc-border);border-radius:12px;padding:1rem 1.1rem;background:#fff;display:flex;justify-content:space-between;gap:1rem}
.tnc-addr-card.is-default{border-color:var(--tnc-primary);box-shadow:0 0 0 1px var(--tnc-primary) inset}
.tnc-addr-main{min-width:0}
.tnc-addr-label{font-weight:500;color:var(--tnc-secondary);display:flex;align-items:center;gap:.5rem}
.tnc-addr-badge{font-size:.66rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;background:var(--tnc-primary);color:#fff;border-radius:99px;padding:.12rem .5rem}
.tnc-addr-lines{color:#5a6b70;font-size:.92rem;margin:.25rem 0}
.tnc-addr-home{color:#8a949a;font-size:.84rem}
.tnc-addr-actions{display:flex;flex-direction:column;gap:.4rem;align-items:flex-end;flex:0 0 auto}
.tnc-addr-actions a,.tnc-addr-actions button{font-size:.84rem;font-weight:500;color:var(--tnc-primary);background:none;border:none;cursor:pointer;text-decoration:none;padding:0}
.tnc-addr-actions .tnc-addr-del{color:#b0444a}
.tnc-addr-empty{color:#8a949a;padding:1rem 0}

/* ---- booking detail ---- */
.tnc-bk-row{display:block;border:1px solid var(--tnc-border);border-radius:12px;padding:.9rem 1.1rem;margin:0 0 .7rem;background:#fff;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}
.tnc-bk-row:hover{border-color:var(--tnc-primary);box-shadow:0 2px 10px rgba(0,0,0,.05)}
.tnc-bk-row-top{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.tnc-bk-svc{font-weight:500;color:var(--tnc-secondary)}
.tnc-bk-when{color:#5a6b70;font-size:.9rem;margin-top:.15rem}
.tnc-bk-chev{color:#b9c2c6;flex:0 0 auto}
.tnc-bk-detail{border:1px solid var(--tnc-border);border-radius:14px;background:#fff;padding:1.3rem 1.4rem}
.tnc-bk-back{display:inline-flex;align-items:center;gap:.3rem;color:var(--tnc-primary);font-weight:500;text-decoration:none;margin-bottom:.8rem}
.tnc-bk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.9rem 1.4rem;margin:1rem 0}
.tnc-bk-grid dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#8a949a;font-weight:500}
.tnc-bk-grid dd{margin:.15rem 0 0;color:var(--tnc-secondary);font-weight:500}
.tnc-bk-price{border-top:1px solid var(--tnc-border);margin-top:.6rem;padding-top:.8rem}
.tnc-bk-price .tnc-bk-line{display:flex;justify-content:space-between;padding:.18rem 0;color:#5a6b70}
.tnc-bk-price .tnc-bk-total{font-weight:500;color:var(--tnc-secondary);border-top:1px dashed var(--tnc-border);margin-top:.3rem;padding-top:.4rem}
.tnc-bk-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.1rem;padding-top:1rem;border-top:1px solid var(--tnc-border)}
.tnc-btn-ghost{background:#fff!important;color:var(--tnc-secondary)!important;border:1.5px solid var(--tnc-border)!important}
.tnc-btn-danger{background:#fff!important;color:#b0444a!important;border:1.5px solid #e3b7ba!important}
.tnc-bk-modify{margin-top:1rem;padding:1rem;border:1px dashed var(--tnc-border);border-radius:12px;background:var(--tnc-cream,#f5f1e8)}

/* form header row (title + action button) */
.tnc-form-headrow{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.2rem}
.tnc-form-headrow .tnc-form-h{margin:0}
/* payout / onboarding status pills */
.tnc-onb-status{display:inline-flex;align-items:center;gap:.4rem;font-weight:500;border-radius:99px;padding:.32rem .85rem;font-size:.85rem;margin:0 0 .6rem}
.tnc-onb-status.is-active{background:#e7f3ec;color:#2f7d52}
.tnc-onb-status.is-pending{background:#fbf2dd;color:#9a7b1f}

/* ---- services: selectable + per-service rates ---- */
.tnc-svc-form .tnc-field-note{margin-bottom:1rem}
.tnc-svc{border:1px solid var(--tnc-border);border-radius:12px;margin:0 0 .7rem;overflow:hidden;background:#fff}
.tnc-svc.is-on{border-color:var(--tnc-primary)}
.tnc-svc-head{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;cursor:pointer;font-weight:500;color:var(--tnc-secondary);margin:0}
.tnc-svc-head input{accent-color:var(--tnc-primary);width:18px;height:18px;flex:0 0 auto}
.tnc-svc-ic{color:var(--tnc-primary);flex:0 0 auto}
.tnc-svc.is-on .tnc-svc-head{background:var(--tnc-cream,#f5f1e8)}
.tnc-svc-name{flex:1}
.tnc-svc-body{padding:.6rem 1rem 1rem;border-top:1px solid var(--tnc-border)}
.tnc-svc-rates-h{font-size:.74rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:#8a949a;margin:.5rem 0 .55rem}
.tnc-svc-rates-h small{text-transform:none;letter-spacing:0;font-weight:500}
.tnc-rate-row{display:grid;grid-template-columns:1fr 92px 122px;gap:.5rem;align-items:center;margin:0 0 .45rem}
.tnc-rate-label-fixed{font-size:.92rem;color:var(--tnc-text)}
.tnc-rate-row input,.tnc-rate-row select{padding:.5rem .6rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:9px!important;font-family:var(--tnc-font)!important;background:#fff!important;box-sizing:border-box;width:100%}
@media(max-width:560px){.tnc-rate-row{grid-template-columns:1fr 64px 96px;gap:.35rem}}
/* sitewide service-icon adornments */
.tnc-profile-services li{display:flex;justify-content:space-between;align-items:center;gap:.6rem}
.tnc-profile-services li>span{display:flex;align-items:center;gap:.45rem}
.tnc-svc-li-ic,.tnc-bk-ic{color:var(--tnc-primary);flex:0 0 auto}
.tnc-bk-svc{display:flex;align-items:center;gap:.5rem}
.tnc-svc-rate-chips{display:flex!important;flex-wrap:wrap;gap:.35rem;justify-content:flex-start!important;margin:-.2rem 0 .4rem;padding-left:1.55rem}
.tnc-chip{background:var(--tnc-cream,#f5f1e8);color:var(--tnc-secondary);border-radius:99px;padding:.12rem .55rem;font-size:.74rem;font-weight:500}

/* ---- admin: cleaner application review ---- */
.tnc-rev-list{display:flex;flex-direction:column;gap:.7rem}
.tnc-rev-card{display:flex;align-items:center;gap:.9rem;border:1px solid var(--tnc-border);border-radius:12px;padding:.8rem 1rem;background:#fff;text-decoration:none!important;color:inherit;transition:border-color .15s,box-shadow .15s}
.tnc-rev-card:hover{border-color:var(--tnc-primary);box-shadow:0 2px 10px rgba(0,0,0,.05)}
.tnc-rev-av{width:48px;height:48px;border-radius:50%;object-fit:cover;flex:0 0 auto;background:#fff}
.tnc-rev-card-main{flex:1;min-width:0}
.tnc-rev-card-name{font-weight:500;color:var(--tnc-secondary)}
.tnc-rev-card-sub{color:#5a6b70;font-size:.86rem;margin:.1rem 0 .35rem}
.tnc-rev-card-cta{color:var(--tnc-primary);font-weight:500;font-size:.9rem;flex:0 0 auto;white-space:nowrap}
.tnc-rev-head{display:flex;gap:1rem;align-items:center;margin:.6rem 0 1rem}
.tnc-rev-head-av{width:76px;height:76px;border-radius:50%;object-fit:cover;flex:0 0 auto;background:#fff}
.tnc-rev-tag{margin:.25rem 0;color:#5a6b70}
.tnc-rev-meta{margin:.1rem 0;color:#8a949a;font-size:.88rem}
.tnc-rev-checks{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1.1rem;padding-bottom:1.1rem;border-bottom:1px solid var(--tnc-border)}
.tnc-rev-sec{margin:0 0 1.1rem}
.tnc-rev-sec h4{font-family:var(--tnc-heading);color:var(--tnc-secondary);margin:0 0 .45rem;font-size:1rem}
.tnc-rev-sec p{margin:0;color:var(--tnc-text)}
.tnc-chips{display:flex;flex-wrap:wrap;gap:.35rem}
.tnc-chip-ok{background:#e7f3ec;color:#2f7d52}
.tnc-chip-wait{background:#fbf2dd;color:#9a7b1f}
.tnc-rev-gallery{display:flex;flex-wrap:wrap;gap:.4rem}
.tnc-rev-decision{margin-top:.3rem;padding-top:1.1rem;border-top:1px solid var(--tnc-border)}
.tnc-rev-decision h4{font-family:var(--tnc-heading);color:var(--tnc-secondary);margin:0 0 .55rem;font-size:1rem}
.tnc-rev-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:.3rem}
.tnc-rev-actions .tnc-btn{width:auto!important}

/* ---- availability: per-day hours + blocked dates ---- */
.tnc-avail-default{display:flex;align-items:center;gap:.6rem;margin:.2rem 0}
.tnc-avail-default select,.tnc-day-hrs select{padding:.5rem .6rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:9px!important;background:#fff!important;font-family:var(--tnc-font)!important}
.tnc-avail-days{display:flex;flex-direction:column;gap:.5rem;margin:.3rem 0 .2rem}
.tnc-avail-day{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;padding:.5rem .8rem;border:1px solid var(--tnc-border);border-radius:10px;background:#fff}
.tnc-avail-day.is-open{border-color:var(--tnc-primary)}
.tnc-day-ck{display:flex;align-items:center;gap:.5rem;font-weight:500;color:var(--tnc-secondary);min-width:120px;margin:0}
.tnc-day-ck input{accent-color:var(--tnc-primary);width:18px;height:18px;flex:0 0 auto}
.tnc-day-hrs{display:flex;align-items:center;gap:.4rem;color:#5a6b70}
.tnc-block-list{display:flex;flex-direction:column;gap:.4rem;margin:.3rem 0 .6rem}
.tnc-block-row{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--tnc-border);border-radius:10px;padding:.5rem .8rem;margin:0}
.tnc-block-rm{display:flex;align-items:center;gap:.35rem;color:#b0444a;font-size:.85rem;cursor:pointer}
.tnc-block-add{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.2rem 0 .4rem}
.tnc-block-add input[type=date]{padding:.5rem .6rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:9px!important}
.tnc-block-add small{flex-basis:100%;color:#8a949a}

/* ---- booking status badges + request/adjust ---- */
.tnc-badge{display:inline-block;border-radius:99px;padding:.2rem .7rem;font-size:.72rem;font-weight:500;background:#eef3f4;color:#5a6b70;text-transform:capitalize;white-space:nowrap}
.tnc-badge.tnc-pending{background:#fbf2dd;color:#9a7b1f}
.tnc-badge.tnc-scheduled,.tnc-badge.tnc-on_the_way,.tnc-badge.tnc-in_progress{background:#e7f0fb;color:#3a5e8c}
.tnc-badge.tnc-completed{background:#e7f3ec;color:#2f7d52}
.tnc-badge.tnc-cancelled,.tnc-badge.tnc-declined{background:#fdecea;color:#b0444a}
.tnc-bk-pending{background:#fbf2dd;color:#7a611a;border-radius:10px;padding:.6rem .9rem;margin:.5rem 0 .8rem;font-size:.92rem;font-weight:500}
.tnc-bk-adjust{margin-top:1rem;padding:1rem 1.1rem;border:1px dashed var(--tnc-border);border-radius:12px;background:#fff}
.tnc-bk-adjust .tnc-svc-rates-h{margin:.6rem 0 .5rem}

/* ---- booking change proposals / negotiation ---- */
.tnc-bk-prop{margin-top:1rem;padding:1rem 1.1rem;border:1.5px solid var(--tnc-primary);border-radius:12px;background:#fff}
.tnc-bk-prop>strong{display:block;margin-bottom:.5rem;color:var(--tnc-secondary)}
.tnc-adj-row{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--tnc-border);border-radius:9px;padding:.4rem .3rem .4rem .7rem;margin:0 0 .35rem;font-size:.92rem;color:var(--tnc-secondary)}
.tnc-adj-x{background:none;border:none;color:#b0444a;font-size:1.3rem;line-height:1;cursor:pointer;padding:0 .4rem}
.tnc-adj-x:hover{color:#8a3338}

/* reschedule toggle + move/style cancel */
.tnc-link-toggle{background:none;border:none;color:var(--tnc-primary);font-weight:500;text-decoration:underline;cursor:pointer;padding:0;font-size:.92rem;margin:.2rem 0 .7rem;font-family:var(--tnc-font);display:inline-block}
.tnc-bk-modify-actions{display:flex;gap:.6rem;flex-wrap:wrap}
.tnc-bk-cancel-wrap{margin-top:1.3rem;text-align:center}
button.tnc-bk-cancel{background:none!important;border:none!important;color:#b0444a!important;text-decoration:underline;cursor:pointer;font-weight:500;font-size:.9rem;padding:.4rem;font-family:var(--tnc-font);width:auto!important}
button.tnc-bk-cancel:hover{color:#8a3338!important}

/* ---- bottom action bar + toggled forms ---- */
.tnc-bk-bottom{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--tnc-border)}
.tnc-bk-actions form{margin:0}
.tnc-bk-detail .tnc-btn{width:auto}
.tnc-bk-toggle-form{margin:.8rem 0;padding:1rem 1.1rem;border:1px dashed var(--tnc-border);border-radius:12px;background:#fff}

/* ---- messages: threads list + avatars ---- */
.tnc-av{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:0 0 auto;background:#fff}
.tnc-av-ini{display:inline-flex;align-items:center;justify-content:center;background:var(--tnc-primary);color:#fff;font-weight:500;font-size:.95rem;text-transform:uppercase}
.tnc-thread-list{display:flex;flex-direction:column;gap:.4rem;margin-top:.4rem}
.tnc-thread{display:flex;align-items:center;gap:.8rem;padding:.7rem .8rem;border:1px solid var(--tnc-border);border-radius:12px;background:#fff;text-decoration:none!important;color:inherit;transition:border-color .15s,box-shadow .15s}
.tnc-thread:hover{border-color:var(--tnc-primary);box-shadow:0 2px 10px rgba(0,0,0,.05)}
.tnc-thread-main{flex:1;min-width:0;display:flex;flex-direction:column}
.tnc-thread-name{font-weight:500;color:var(--tnc-secondary);display:flex;align-items:center;gap:.4rem}
.tnc-thread-unread{background:var(--tnc-primary);color:#fff;border-radius:99px;font-size:.7rem;font-weight:500;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0 .3rem}
.tnc-thread-snip{color:#8a949a;font-size:.86rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tnc-thread-time{color:#b9c2c6;font-size:.78rem;flex:0 0 auto}
.tnc-msg-head{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.6rem}
.tnc-msg-head-id{display:flex;align-items:center;gap:.6rem;color:var(--tnc-secondary);font-size:1.05rem}
.tnc-msg-head-id .tnc-av{width:38px;height:38px}

/* ---- messages: log, bubbles, chips, input ---- */
.tnc-msg-log{display:flex;flex-direction:column;gap:.4rem;max-height:48vh;overflow-y:auto;padding:.5rem 0;margin-bottom:.6rem}
.tnc-msg-bubble{max-width:78%;padding:.5rem .8rem;border-radius:14px;font-size:.92rem;line-height:1.35}
.tnc-msg-bubble.theirs{align-self:flex-start;background:#eef3f4;color:var(--tnc-text)}
.tnc-msg-bubble.mine{align-self:flex-end;background:var(--tnc-primary);color:#fff}
.tnc-msg-bubble time,.tnc-msg-chip time{display:block;font-size:.66rem;opacity:.7;margin-top:.15rem}
.tnc-msg-chip{align-self:center;display:flex;align-items:center;gap:.5rem;background:var(--tnc-cream,#f5f1e8);border:1px solid var(--tnc-border);border-radius:99px;padding:.35rem .85rem;font-size:.85rem;font-weight:500;color:var(--tnc-secondary);max-width:92%}
.tnc-msg-chip time{display:inline;margin:0 0 0 .2rem;font-weight:400}
.tnc-msg-chip-link{color:var(--tnc-primary);text-decoration:underline;font-weight:500}
.tnc-msg-form{display:flex;gap:.5rem;align-items:flex-end}
.tnc-msg-input{flex:1;resize:none!important;overflow:hidden;min-height:44px;max-height:160px;padding:.7rem .9rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:12px!important;font-family:var(--tnc-font)!important;line-height:1.4}
.tnc-msg-form .tnc-btn{width:auto;flex:0 0 auto}

/* you're-live banner + onboarding complete card */
.tnc-live-banner{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;background:#e7f3ec;color:#2f7d52;border:1px solid #bfe0cb;border-radius:12px;padding:.8rem 1.1rem;margin:0 0 1.2rem;font-size:.95rem}
.tnc-live-dismiss{margin-left:auto;color:#2f7d52!important;text-decoration:underline;font-weight:500;font-size:.85rem}
.tnc-onb-done{text-align:center;padding:2.2rem 2rem}
.tnc-onb-done-ic{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:#e7f3ec;color:#2f7d52;font-size:2rem;font-weight:500}
/* base-price $ icon */
.tnc-price-wrap{position:relative;display:flex;align-items:center}
.tnc-price-dollar{position:absolute;left:.9rem;color:#8a949a;font-weight:500;pointer-events:none}
.tnc-price-input{padding-left:1.7rem!important}

/* ---- availability v2: schedule pills, custom hours, time-off repeater ---- */
.tnc-day-pills{display:flex;flex-wrap:wrap;gap:.45rem;margin:.2rem 0 .8rem}
.tnc-day-pill{position:relative;display:inline-flex;align-items:center;border:1.5px solid var(--tnc-border);border-radius:99px;padding:.4rem .95rem;cursor:pointer;font-weight:500;color:var(--tnc-secondary);user-select:none;transition:background .12s,color .12s,border-color .12s}
.tnc-day-pill input{position:absolute;opacity:0;width:0;height:0}
.tnc-day-pill.is-on{background:var(--tnc-primary);border-color:var(--tnc-primary);color:#fff}
.tnc-inline-label{font-weight:500;color:var(--tnc-secondary);margin-right:.2rem}
.tnc-avail-default{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.2rem 0}
.tnc-avail-default select{padding:.5rem .6rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:9px!important;background:#fff!important}
.tnc-custom-hours{margin:.5rem 0 .6rem;display:flex;flex-direction:column;gap:.4rem}
.tnc-cust-day{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;padding:.45rem .7rem;border:1px solid var(--tnc-border);border-radius:10px;background:#fff}
.tnc-cust-check-lbl{display:flex;align-items:center;gap:.5rem;min-width:120px;font-weight:500;color:var(--tnc-secondary);margin:0}
.tnc-cust-check-lbl input{accent-color:var(--tnc-primary);width:18px;height:18px}
.tnc-cust-hrs{display:flex;align-items:center;gap:.4rem}
.tnc-cust-hrs select{padding:.45rem .6rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:9px!important;background:#fff!important}
.tnc-timeoff{margin:.5rem 0}
.tnc-timeoff-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:0 0 .5rem;padding:.55rem .6rem;border:1px solid var(--tnc-border);border-radius:10px;background:#fff}
.tnc-timeoff-row input[type=date]{padding:.5rem .6rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:9px!important;flex:1 1 140px;min-width:128px}
.tnc-timeoff-row .tnc-block-name{padding:.5rem .6rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:9px!important;flex:2 1 160px;min-width:140px;font-family:var(--tnc-font)}
.tnc-timeoff-row .tnc-to{color:#8a949a}
.tnc-yearly{display:flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--tnc-secondary);white-space:nowrap}
.tnc-yearly input{accent-color:var(--tnc-primary)}
.tnc-block-x{background:none;border:none;color:#b0444a;font-size:1.4rem;cursor:pointer;line-height:1;padding:0 .35rem}
/* autosave indicator */
.tnc-saved-tag{font-size:.78rem;font-weight:500;color:#2f7d52;opacity:0;transition:opacity .2s;float:right}
.tnc-saved-tag.is-on{opacity:1}

/* payouts: manage + recent payouts */
.tnc-payout-manage{margin-top:.4rem}
.tnc-payout-hist{margin-top:1rem}
.tnc-payout-list{list-style:none;margin:.3rem 0 0;padding:0;display:flex;flex-direction:column;gap:.3rem}
.tnc-payout-list li{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--tnc-border);border-radius:10px;padding:.55rem .8rem;background:#fff}
.tnc-payout-list em{color:#8a949a;font-style:normal;font-size:.82rem;margin-left:.3rem}
.tnc-payout-list strong{color:var(--tnc-secondary)}

/* ---- services head: inline base price + lighter icon + spacing; pill toggles ---- */
.tnc-svc-head{gap:1rem;cursor:default}
.tnc-svc-head-l{display:flex;align-items:center;gap:.9rem;flex:1;min-width:0;margin:0;cursor:pointer}
.tnc-svc-head-l input{accent-color:var(--tnc-primary);width:18px;height:18px;flex:0 0 auto}
.tnc-svc-ic{color:#bcc6cb}
.tnc-svc-head-price{flex:0 0 auto;width:128px;margin:0}
.tnc-svc-head-price .tnc-price-input{padding:.45rem .55rem .45rem 1.5rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:9px!important;width:100%;font-family:var(--tnc-font)}
.tnc-svc-head-price .tnc-price-dollar{left:.65rem}
@media(max-width:520px){.tnc-svc-head{flex-wrap:wrap;gap:.6rem}.tnc-svc-head-price{width:100%}}

/* pill-style toggles (services rates, availability custom-hours/time-off, booking reschedule) */
.tnc-link-toggle{display:inline-flex;align-items:center;gap:.4rem;background:var(--tnc-cream,#f5f1e8);border:1px solid var(--tnc-border);color:var(--tnc-secondary)!important;font-weight:500;text-decoration:none!important;cursor:pointer;padding:.5rem .95rem;border-radius:99px;font-size:.86rem;font-family:var(--tnc-font);margin:.3rem 0 .7rem;line-height:1.2}
.tnc-link-toggle:hover{background:#ece5d8}

/* external link */
.tnc-extlink{color:var(--tnc-primary);font-weight:500;text-decoration:underline;white-space:nowrap}

/* ---- messaging layout v2 (Rover-style) ---- */
.tnc-msg-log{display:flex;flex-direction:column;gap:.3rem;max-height:52vh;overflow-y:auto;padding:.5rem .2rem;margin-bottom:.6rem}
.tnc-msg-date{align-self:center;font-size:.74rem;color:#8a949a;font-weight:500;margin:.6rem 0 .25rem}
.tnc-msg-bubble{max-width:75%;padding:.55rem .8rem .4rem;border-radius:16px;font-size:.93rem;line-height:1.38}
.tnc-msg-bubble.theirs{align-self:flex-start;background:#eef1f0;color:var(--tnc-text);border-bottom-left-radius:5px}
.tnc-msg-bubble.mine{align-self:flex-end;background:var(--tnc-primary);color:#fff;border-bottom-right-radius:5px}
.tnc-msg-bubble time{display:block;text-align:right;font-size:.64rem;opacity:.72;margin-top:.15rem}
.tnc-msg-note{align-self:stretch;display:flex;align-items:center;gap:.55rem;background:#fbf6ea;border:1px solid #efe4c7;border-radius:10px;padding:.55rem .85rem;font-size:.86rem;color:#7a611a;margin:.25rem 0}
.tnc-msg-note-ic{flex:0 0 auto}
.tnc-msg-note-txt{flex:1;min-width:0}
.tnc-msg-note-link{color:var(--tnc-primary)!important;font-weight:500;text-decoration:underline;flex:0 0 auto}
.tnc-msg-note time{font-size:.66rem;color:#a08a4f;flex:0 0 auto;white-space:nowrap}

/* ---- combined auth (sign in / sign up switcher) ---- */
.tnc-auth{max-width:460px;margin:2.5rem auto}
.tnc-auth-tabs{display:flex;background:var(--tnc-cream,#f5f1e8);border-radius:99px;padding:4px;margin:.2rem 0 1.4rem}
.tnc-auth-tab{flex:1;border:none;background:none;padding:.6rem;border-radius:99px;font-weight:500;color:var(--tnc-secondary);cursor:pointer;font-family:var(--tnc-font);font-size:.95rem}
.tnc-auth-tab.is-on{background:var(--tnc-primary);color:#fff}
.tnc-auth-or{display:flex;align-items:center;text-align:center;color:#8a949a;font-size:.82rem;margin:1.2rem 0 .8rem}
.tnc-auth-or::before,.tnc-auth-or::after{content:"";flex:1;height:1px;background:var(--tnc-border)}
.tnc-auth-or span{padding:0 .7rem}
.tnc-auth-switch{text-align:center;font-size:.88rem;color:var(--tnc-text);margin:1rem 0 0}
.tnc-auth-switch a{color:var(--tnc-primary);font-weight:500}
.tnc-auth-sub{text-align:center;margin:.6rem 0 0}
.tnc-auth-sub a{color:var(--tnc-primary);font-size:.85rem}
.tnc-social-google{display:block;text-align:center;width:100%}

/* profile gallery: images fill their tiles */
.tnc-vp-gitem{aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:var(--tnc-cream,#f5f1e8)}
.tnc-vp-gimg{width:100%;height:100%;object-fit:cover;display:block}
.tnc-vp-avatar-img{width:100%;height:100%;object-fit:cover;display:block}
.tnc-gallery-thumb{object-fit:cover}

/* icons use the Elementor accent (sage green) */
.tnc-svc-ic,.tnc-svc-li-ic,.tnc-bk-ic,.tnc-srch-ic,.tnc-dico,.tnc-srch-filterbtn{color:var(--e-global-color-accent,#7E9965)}
.tnc-dash-nav a.is-active .tnc-dico,.tnc-srch-filterbtn.is-active{color:#fff}

/* settings sub-tabs */
.tnc-subtabs{display:flex;gap:.2rem;max-width:640px;margin:0 auto 1.1rem;border-bottom:1px solid var(--tnc-border)}
.tnc-subtab{background:none;border:none;border-bottom:2px solid transparent;padding:.6rem 1.1rem;font-weight:500;color:#8a949a;cursor:pointer;font-family:var(--tnc-font);font-size:.95rem;margin-bottom:-1px}
.tnc-subtab.is-on{color:var(--tnc-secondary);border-bottom-color:var(--tnc-primary)}

.tnc-suggested{background:#e7f3ec;color:#2f7d52;border-radius:99px;padding:.05rem .5rem;font-size:.66rem;font-weight:500;margin-left:.35rem;vertical-align:middle}

/* gallery thumb remove [x] */
.tnc-gallery-prev{display:flex;flex-wrap:wrap;gap:.55rem;margin:.3rem 0 .6rem}
.tnc-gthumb{position:relative;display:inline-block;line-height:0;width:64px;height:64px}
.tnc-gthumb .tnc-gallery-thumb{width:64px!important;height:64px!important;object-fit:cover;display:block;border-radius:8px}
.tnc-gthumb-x{position:absolute!important;top:-6px;right:-6px;width:19px!important;height:19px!important;min-width:0!important;box-sizing:border-box!important;border-radius:50%!important;background:#fff!important;color:#5a6b70!important;border:1px solid rgba(0,0,0,.12)!important;box-shadow:0 1px 3px rgba(0,0,0,.28)!important;font-size:14px!important;font-weight:500;line-height:1!important;cursor:pointer;padding:0!important;margin:0!important;display:flex!important;align-items:center;justify-content:center}
.tnc-gthumb-x:hover{background:#fff!important;color:#b0444a!important}

/* saved-tag: pin to card top-right so it doesn't offset the centered title */
.tnc-form{position:relative}
.tnc-saved-tag{position:absolute;top:1.5rem;right:1.6rem;float:none;margin:0;font-size:.78rem;font-weight:500;color:#2f7d52;opacity:0;transition:opacity .2s}
.tnc-saved-tag.is-on{opacity:1}
@media(max-width:520px){.tnc-saved-tag{position:static;display:block;text-align:right;margin-top:.2rem}}

/* profile photo: clickable avatar + view/change menu + lightbox */
.tnc-photo-field{display:flex;align-items:center;gap:1rem;margin:0 0 1.3rem}
.tnc-photo-menu-wrap{position:relative;flex:0 0 auto}
.tnc-photo-trigger{position:relative;width:84px;height:84px;border-radius:50%;overflow:visible;border:none;padding:0;cursor:pointer;background:none;display:block}
.tnc-photo-trigger .tnc-photo-img{width:84px;height:84px;border-radius:50%;object-fit:cover;display:block;background:#fff}
.tnc-photo-cam{position:absolute;right:0;bottom:0;width:26px;height:26px;border-radius:50%;background:var(--tnc-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;border:2px solid #fff}
.tnc-photo-menu{position:absolute;top:92px;left:0;z-index:30;background:#fff;border:1px solid var(--tnc-border);border-radius:10px;box-shadow:0 8px 24px rgba(16,42,60,.14);overflow:hidden;min-width:120px}
.tnc-photo-menu button{display:block;width:100%;text-align:left;background:none;border:none;padding:.55rem .95rem;cursor:pointer;font-family:var(--tnc-font);font-size:.9rem;color:var(--tnc-secondary)}
.tnc-photo-menu button:hover{background:var(--tnc-cream,#f5f1e8)}
.tnc-photo-meta{display:flex;flex-direction:column;gap:.1rem}
.tnc-photo-meta strong{color:var(--tnc-secondary)}
.tnc-lightbox{position:fixed;inset:0;background:rgba(16,42,60,.85);display:flex;align-items:center;justify-content:center;z-index:99999;padding:2rem;cursor:zoom-out}
.tnc-lightbox img{max-width:90vw;max-height:90vh;border-radius:10px;box-shadow:0 12px 40px rgba(0,0,0,.4)}
.tnc-lightbox-x{position:fixed;top:1.2rem;right:1.4rem;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;border:none;font-size:1.6rem;cursor:pointer}

/* gallery add (+) box, sized like a thumbnail */
.tnc-gallery-add{width:64px;height:64px;border:2px dashed var(--tnc-border);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.9rem;color:#9aa7ad;cursor:pointer;flex:0 0 auto;background:#fff;line-height:1}
.tnc-gallery-add:hover{border-color:var(--tnc-primary);color:var(--tnc-primary)}
.tnc-gallery-add.has-files{border-style:solid;border-color:var(--tnc-primary);color:var(--tnc-primary);font-size:.95rem;font-weight:500}

/* ---- auth: subtler toggle, matched radii, Google-brand button ---- */
.tnc-auth-tabs{display:inline-flex;width:auto;gap:2px;background:var(--tnc-cream,#f5f1e8);border-radius:10px;padding:3px;margin:.2rem auto 1.4rem}
.tnc-auth{display:flex;flex-direction:column}
.tnc-auth>.tnc-auth-tabs{align-self:center}
.tnc-auth-tab{flex:0 0 auto;border:none;background:none;padding:.34rem .9rem;border-radius:8px;font-weight:500;color:#8a949a;cursor:pointer;font-size:.84rem;font-family:var(--tnc-font)}
.tnc-auth-tab.is-on{background:#fff;color:var(--tnc-secondary);box-shadow:0 1px 3px rgba(16,42,60,.12)}
.tnc-auth .tnc-btn{border-radius:12px!important}
.tnc-google-btn{display:flex;align-items:center;justify-content:center;gap:.6rem;width:100%;background:#fff;color:#3c4043;border:1px solid #dadce0;border-radius:12px;padding:.72rem 1rem;font-weight:500;font-family:var(--tnc-font);font-size:.95rem;text-decoration:none!important;cursor:pointer}
.tnc-google-btn:hover{background:#f7f8f8;color:#1f1f1f}
.tnc-g-ico{flex:0 0 auto}

/* auth toggle hover stays readable (was inheriting white text) */
.tnc-auth-tab:hover{color:var(--tnc-secondary)!important;background:rgba(255,255,255,.55)}
.tnc-auth-tab.is-on,.tnc-auth-tab.is-on:hover{background:#fff!important;color:var(--tnc-secondary)!important}

/* filter (funnel) button matches theme */
.tnc-srch-filterbtn{background:#fff!important;border:1.5px solid var(--tnc-primary)!important;color:var(--tnc-primary)!important}
.tnc-srch-filterbtn:hover,.tnc-srch-filterbtn.is-active{background:var(--tnc-primary)!important;border-color:var(--tnc-primary)!important;color:#fff!important}

/* fix white-on-tan hover states (theme was forcing white text on light hover bg) */
.tnc-photo-menu button:hover,.tnc-link-toggle:hover,.tnc-dash-nav a:hover,.tnc-subtab:hover,.tnc-photo-menu button:focus{color:var(--tnc-secondary)!important}
.tnc-dash-nav a.is-active,.tnc-dash-nav a.is-active:hover{color:#fff!important}

/* settings sub-tabs: readable on the tan page bg (theme was forcing near-white) */
.tnc-subtab{color:#5a6b70!important}
.tnc-subtab.is-on,.tnc-subtab.is-on:hover{color:var(--tnc-secondary)!important;border-bottom-color:var(--tnc-primary)!important}

/* payment / order history */
.tnc-pay-hist{display:flex;flex-direction:column;gap:.45rem;margin-top:.4rem}
.tnc-pay-row{display:flex;align-items:center;gap:.8rem;border:1px solid var(--tnc-border);border-radius:10px;padding:.6rem .9rem;background:#fff}
.tnc-pay-main{flex:1;min-width:0}
.tnc-pay-svc{font-weight:500;color:var(--tnc-secondary)}
.tnc-pay-sub{color:#8a949a;font-size:.84rem}
.tnc-pay-amt{display:flex;align-items:center;gap:.5rem;flex:0 0 auto}
.tnc-pay-amt strong{color:var(--tnc-secondary)}
.tnc-pay-view{color:var(--tnc-primary)!important;font-weight:500;flex:0 0 auto;text-decoration:none}

/* link-style toggles (override the earlier pill) + helper text + summaries */
.tnc-link-toggle{display:inline!important;background:none!important;border:none!important;color:var(--tnc-primary)!important;font-weight:500;text-decoration:underline;cursor:pointer;padding:0!important;font-size:.92rem;font-family:var(--tnc-font);margin:0;line-height:1.5}
.tnc-link-toggle:hover{background:none!important;color:var(--tnc-secondary)!important}
.tnc-toggle-help{color:#8a949a;font-size:.82rem;margin-left:.45rem}
.tnc-avail-summary,.tnc-rate-summary{display:flex;flex-wrap:wrap;gap:.35rem;margin:.35rem 0 .5rem}
/* base price field: more padding */
.tnc-svc-head-price .tnc-price-input{padding:.6rem .7rem .6rem 1.7rem!important}
.tnc-svc-head-price .tnc-price-dollar{left:.78rem}
/* Rover-style payment history */
.tnc-ph-list{margin-top:.5rem}
.tnc-ph-row{display:flex;align-items:flex-start;gap:1.2rem;padding:1rem 0;border-bottom:1px solid var(--tnc-border)}
.tnc-ph-row:last-child{border-bottom:none}
.tnc-ph-date{flex:0 0 120px;color:var(--tnc-primary)!important;font-weight:500;text-decoration:underline;font-size:.92rem}
.tnc-ph-desc{flex:1;min-width:0}
.tnc-ph-title{color:var(--tnc-secondary);font-weight:500}
.tnc-ph-method{color:#8a949a;font-size:.82rem;margin-top:.15rem}
.tnc-ph-paid{color:#2f7d52;font-weight:500}
.tnc-ph-unpaid{color:#9a7b1f;font-weight:500}
.tnc-ph-amt{flex:0 0 auto;font-weight:500;color:var(--tnc-secondary);font-size:1.1rem}
@media(max-width:560px){.tnc-ph-row{flex-wrap:wrap;gap:.4rem}.tnc-ph-date{flex-basis:auto}.tnc-ph-amt{margin-left:auto}}

/* Rover-style saved payment methods */
.tnc-pm-list{margin:.6rem 0;border:1px solid var(--tnc-border);border-radius:12px;overflow:hidden}
.tnc-pm-row{display:flex;align-items:center;gap:.85rem;padding:1rem 1.1rem;border-bottom:1px solid var(--tnc-border)}
.tnc-pm-row:last-child{border-bottom:none}
.tnc-pm-row.is-default{background:#fafbf9}
.tnc-pm-brand{flex:0 0 auto;font-size:.68rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;background:#eef1ec;color:var(--tnc-secondary);padding:.4rem .55rem;border-radius:6px;min-width:48px;text-align:center}
.tnc-pm-main{flex:1;min-width:0}
.tnc-pm-name{color:var(--tnc-secondary);font-weight:500}
.tnc-pm-exp{color:#8a949a;font-size:.82rem;margin-top:.1rem}
.tnc-pm-default{display:inline-block;margin-top:.35rem;font-size:.64rem;font-weight:500;letter-spacing:.05em;background:#eef1ec;color:var(--tnc-secondary);padding:.22rem .45rem;border-radius:5px}
.tnc-pm-empty{padding:1.1rem;border:1px dashed var(--tnc-border);border-radius:12px;color:#8a949a;text-align:center}
.tnc-pm-add{color:var(--tnc-primary)!important;font-weight:500;text-decoration:underline}
.tnc-pm-add:hover{color:var(--tnc-secondary)!important}

/* cleaner earnings summary */
.tnc-earn-grid{display:flex;gap:.8rem;flex-wrap:wrap;margin:.4rem 0 1.1rem}
.tnc-earn-card{flex:1;min-width:130px;border:1px solid var(--tnc-border);border-radius:12px;padding:1rem;text-align:center;background:#fafbf9}
.tnc-earn-amt{font-size:1.5rem;font-weight:500;color:var(--tnc-secondary)}
.tnc-earn-lbl{color:#8a949a;font-size:.8rem;margin-top:.2rem}

/* Special rates schedule */
.tnc-day-pills{display:flex;flex-wrap:wrap;gap:.4rem;margin:.2rem 0 .3rem}
.tnc-hol-grid{display:grid;grid-template-columns:1fr 1fr;gap:.35rem .9rem;margin:.2rem 0 .4rem}
.tnc-hol{display:flex;align-items:center;gap:.4rem}
.tnc-hol-date{color:#8a949a;font-size:.8rem;margin-left:auto;white-space:nowrap}
.tnc-rate-sched .tnc-timeoff-row{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin:.35rem 0}
.tnc-rate-sched .tnc-timeoff-row input[type=text]{flex:1;min-width:140px}
.tnc-gotab{color:var(--tnc-primary)!important;font-weight:500;text-decoration:underline;cursor:pointer}
.tnc-gotab:hover{color:var(--tnc-secondary)!important}
@media(max-width:560px){.tnc-hol-grid{grid-template-columns:1fr}}

/* booking detail: two-pane (details | conversation) */
.tnc-bk-split{display:flex;gap:1.3rem;align-items:flex-start}
.tnc-bk-split .tnc-bk-detail{flex:0 0 42%;max-width:450px;min-width:0}
.tnc-bk-convo{flex:1;min-width:0;position:sticky;top:1rem}
.tnc-msg-embed{display:flex;flex-direction:column;height:620px;border:1px solid var(--tnc-border);border-radius:14px;background:#fff;overflow:hidden}
.tnc-msg-embed .tnc-msg-head{padding:.85rem 1rem;border-bottom:1px solid var(--tnc-border);margin:0;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem}
.tnc-msg-embed .tnc-msg-head-id{flex:1 1 auto;min-width:0;margin:0}
.tnc-msg-embed .tnc-msg-head-id strong,.tnc-msg-embed .tnc-msg-namelink{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tnc-msg-embed .tnc-msg-head-actions{display:flex;align-items:center;gap:.5rem;flex:0 0 auto}
.tnc-msg-embed .tnc-msg-log{flex:1;overflow-y:auto;padding:1rem;min-height:0}
.tnc-msg-embed .tnc-msg-form{border-top:1px solid var(--tnc-border);padding:.6rem;margin:0;display:flex;gap:.5rem}
.tnc-msg-embed-empty{padding:2rem 1rem;text-align:center;color:#8a949a;border:1px solid var(--tnc-border);border-radius:14px;background:#fff}
.tnc-thread-booking{display:block;font-size:.78rem;color:var(--e-global-color-accent,#7E9965);font-weight:500;margin:.05rem 0}
.tnc-msg-head-bk{display:block;font-size:.78rem;color:#8a949a;font-weight:500}
@media(max-width:900px){.tnc-bk-split{flex-direction:column}.tnc-bk-split .tnc-bk-detail{flex:none;max-width:none;width:100%}.tnc-bk-convo{width:100%;position:static}.tnc-msg-embed{height:480px}}

/* cleaner profile gallery: Rover-style collage */
.tnc-vp-collage{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:.5rem;height:380px;margin:1.3rem 0}
.tnc-vp-ctile{position:relative;border:0;padding:0;margin:0;cursor:pointer;overflow:hidden;border-radius:10px;background:#eef1ec}
.tnc-vp-cmain{grid-row:1 / span 2;grid-column:1}
.tnc-vp-ctile .tnc-vp-gimg{width:100%;height:100%;object-fit:cover;display:block}
.tnc-vp-more{position:absolute;inset:0;background:rgba(16,42,60,.55);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1}
.tnc-vp-more b{font-size:1.6rem}
.tnc-vp-viewall{font-weight:500;text-decoration:underline;font-size:.85rem;margin-top:.25rem}
@media(max-width:600px){.tnc-vp-collage{grid-template-columns:1fr 1fr;grid-template-rows:auto;height:auto}.tnc-vp-cmain{grid-row:auto;grid-column:1 / span 2;height:220px}.tnc-vp-ctile:not(.tnc-vp-cmain){height:120px}}
/* lightbox */
.tnc-lb{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:99999;display:flex;align-items:center;justify-content:center}
.tnc-lb-img{max-width:90vw;max-height:86vh;border-radius:8px}
.tnc-lb-x{position:absolute;top:18px;right:22px;background:none;border:0;color:#fff;font-size:2.4rem;line-height:1;cursor:pointer}
.tnc-lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);border:0;color:#fff;font-size:2.6rem;width:54px;height:72px;border-radius:8px;cursor:pointer}
.tnc-lb-prev{left:18px}.tnc-lb-next{right:18px}
.tnc-lb-count{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#fff;font-size:.9rem;letter-spacing:.03em}

/* inline add-card modal */
.tnc-card-modal{position:fixed;inset:0;background:rgba(16,42,60,.55);z-index:99999;display:flex;align-items:center;justify-content:center;padding:1rem}
.tnc-card-box{background:#fff;border-radius:16px;padding:1.6rem 1.5rem 1.4rem;max-width:440px;width:100%;position:relative;box-shadow:0 20px 50px rgba(0,0,0,.28)}
.tnc-card-box h3{margin:0 0 1rem;color:var(--tnc-secondary);font-family:var(--tnc-font)}
.tnc-card-x{position:absolute;top:12px;right:15px;background:none;border:0;font-size:1.7rem;cursor:pointer;color:#8a949a;line-height:1}
.tnc-card-err{color:#b0444a;font-size:.85rem;margin:.55rem 0 0;min-height:1em}
.tnc-card-save{margin-top:1.1rem;width:100%}

/* focused booking view: hide the dashboard sidebar so the two panes get the room */
.tnc-dash--focus{grid-template-columns:minmax(0,1fr)!important}
.tnc-dash--focus .tnc-dash-side{display:none}
@media(min-width:901px){.tnc-dash--focus .tnc-bk-split .tnc-bk-detail{flex:0 0 38%;max-width:460px}}

/* live banner: view public profile link */
.tnc-live-link{color:var(--e-global-color-accent,#7E9965)!important;font-weight:500;text-decoration:underline;margin-right:.8rem;white-space:nowrap}
.tnc-live-link:hover{color:var(--tnc-secondary)!important}

/* review page: who/what/when recap */
.tnc-rev-recap{display:flex;align-items:center;gap:.8rem;background:#fafbf9;border:1px solid var(--tnc-border);border-radius:12px;padding:.8rem 1rem;margin:.2rem 0 1rem}
.tnc-rev-recap-av{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.tnc-rev-recap-txt{display:flex;flex-direction:column;min-width:0}
.tnc-rev-recap-txt strong{color:var(--tnc-secondary)}
.tnc-rev-recap-txt span{color:#8a949a;font-size:.85rem;margin-top:.1rem}

/* review shown on the booking page */
.tnc-bk-review{margin-top:1rem;padding:.9rem 1rem;background:#fafbf9;border:1px solid var(--tnc-border);border-radius:12px}
.tnc-bk-review-h{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#8a949a;font-weight:500;margin-bottom:.25rem}
.tnc-bk-review-stars{color:#e6b94e;font-size:1.05rem;letter-spacing:.05em}
.tnc-bk-review-txt{color:var(--tnc-secondary);margin:.35rem 0 .2rem;font-style:italic}
.tnc-bk-review-date{color:#8a949a;font-size:.8rem}

/* private (cleaners-only) customer reviews */
.tnc-priv-tag{display:inline-block;font-size:.6rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;background:#eef1ec;color:#5a6b70;padding:.15rem .42rem;border-radius:5px;margin-left:.45rem;vertical-align:middle}
.tnc-cust-rep{margin:.7rem 0 0;padding:.8rem 1rem;background:#fbfaf6;border:1px solid var(--tnc-border);border-radius:12px}
.tnc-cust-rep-h{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#8a949a;font-weight:500;margin-bottom:.3rem}
.tnc-cust-rep-score{color:var(--tnc-secondary);font-weight:500}
.tnc-cust-rep-stars,.tnc-cust-rep-istars{color:#e6b94e}
.tnc-cust-rep-item{color:#5a6b70;font-size:.85rem;margin-top:.35rem;line-height:1.35}
.tnc-cust-rep-none{color:#8a949a;font-size:.85rem}

/* customer rating pill + inline "you rated · edit · remove" */
.tnc-cust-pill{display:inline-block;font-size:.72rem;font-weight:500;background:#eef1ec;color:var(--tnc-secondary);padding:.1rem .45rem;border-radius:99px;margin-left:.4rem;vertical-align:middle}
.tnc-cust-pill .tnc-cust-pill{margin:0}
.tnc-cust-pill-new{background:#eaf0f5;color:#5a7186}
.tnc-myrating{margin-top:.5rem;color:#5a6b70;font-size:.88rem;display:flex;align-items:center;flex-wrap:wrap;gap:.25rem}
.tnc-myrating-stars{color:#e6b94e}
.tnc-myrating a{color:var(--tnc-primary)!important;font-weight:500;text-decoration:underline}
.tnc-inline-form{display:inline}
.tnc-linkbtn{background:none;border:0;padding:0;color:#b0444a!important;font-weight:500;text-decoration:underline;cursor:pointer;font-size:.88rem;font-family:inherit}

/* customer profile (cleaner-facing) */
.tnc-cprofile{max-width:760px;margin:0 auto}
.tnc-cprofile-head{display:flex;gap:1rem;align-items:center;margin-bottom:1.2rem}
.tnc-cprofile-av{width:84px;height:84px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.tnc-cprofile-name{margin:0;color:var(--tnc-secondary);font-family:var(--tnc-heading)}
.tnc-cprofile-loc{color:#8a949a;font-size:.9rem;margin:.1rem 0 .3rem}
.tnc-cprofile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;margin-bottom:1.4rem}
.tnc-cstat{border:1px solid var(--tnc-border);border-radius:12px;padding:.9rem;text-align:center;background:#fafbf9}
.tnc-cstat b{display:block;font-size:1.2rem;color:var(--tnc-secondary)}
.tnc-cstat span{color:#8a949a;font-size:.72rem}
.tnc-cprofile-h{color:var(--tnc-secondary);font-family:var(--tnc-heading);margin:.5rem 0 .6rem}
.tnc-cfb{border-bottom:1px solid var(--tnc-border);padding:.8rem 0}
.tnc-cfb:last-child{border-bottom:none}
.tnc-cfb-top{display:flex;justify-content:space-between;gap:1rem;align-items:center}
.tnc-cfb-stars{color:#e6b94e}
.tnc-cfb-meta{color:#8a949a;font-size:.8rem}
.tnc-cfb-txt{color:var(--tnc-secondary);margin-top:.25rem}
@media(max-width:600px){.tnc-cprofile-stats{grid-template-columns:1fr 1fr}}
/* rebook grid */
.tnc-rebook-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:1rem;margin-top:.5rem}
.tnc-rebook-card{border:1px solid var(--tnc-border);border-radius:14px;padding:1rem;text-align:center;background:#fff}
.tnc-rebook-av{width:64px;height:64px;border-radius:50%;object-fit:cover;margin:0 auto .5rem;display:block}
.tnc-rebook-name{font-weight:500;color:var(--tnc-secondary)}
.tnc-rebook-name a{color:var(--tnc-secondary)!important;text-decoration:none}
.tnc-rebook-name a:hover{text-decoration:underline}
.tnc-rebook-svc{color:#5a6b70;font-size:.85rem}
.tnc-rebook-date{color:#8a949a;font-size:.78rem;margin:.15rem 0 .65rem}
/* clickable name on booking page */
.tnc-bk-namelink{color:var(--tnc-primary)!important;font-weight:500;text-decoration:underline}
.tnc-bk-namelink:hover{color:var(--tnc-secondary)!important}

/* compact "you rated" line + fewer label styles */
.tnc-myrating{display:block!important;margin-top:.5rem;color:#5a6b70;font-size:.85rem;line-height:1.55}
.tnc-myrating .tnc-inline-form,.tnc-myrating .tnc-linkbtn,.tnc-myrating a{display:inline}
.tnc-bk-grid dt,.tnc-svc-rates-h,.tnc-bk-review-h{font-size:.72rem!important;letter-spacing:.04em!important;font-weight:500!important;color:#8a949a!important;text-transform:uppercase!important}
.tnc-bk-review-txt{font-style:normal!important}

/* read-only profile on the customer dashboard */
.tnc-home-profile{position:relative;margin-bottom:1.3rem}
.tnc-home-profile-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}
.tnc-home-h{font-family:var(--tnc-heading);color:var(--tnc-secondary);font-size:1.3rem;margin:0}
.tnc-home-profile .tnc-form>.tnc-form-h{display:none}
.tnc-home-profile.tnc-locked input:disabled,.tnc-home-profile.tnc-locked select:disabled,.tnc-home-profile.tnc-locked textarea:disabled{background:#fafbf9!important;color:var(--tnc-secondary)!important;-webkit-text-fill-color:var(--tnc-secondary);opacity:1!important;cursor:default;border-color:var(--tnc-border)!important}
.tnc-home-profile.tnc-locked .tnc-saved-tag,.tnc-home-profile.tnc-locked .tnc-field-note{display:none}

/* GLOBAL backdrop for modals + lightboxes (brand slate-blue) */
:root{--tnc-backdrop:rgba(16,42,60,.55);--tnc-backdrop-strong:rgba(16,42,60,.86)}
.tnc-card-modal{background:var(--tnc-backdrop)!important}
.tnc-lb,.tnc-lightbox{background:var(--tnc-backdrop-strong)!important}

/* availability: default-hours time selects in one row */
.tnc-avail-default{display:block!important;margin:.2rem 0!important}
.tnc-avail-default>.tnc-inline-label{display:block;font-weight:500;color:var(--tnc-secondary);margin-bottom:.4rem}
.tnc-hours-row{display:flex;align-items:center;gap:.6rem}
.tnc-hours-row select{flex:1;min-width:0;padding:.55rem .6rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:9px!important;background:#fff!important}
.tnc-hours-row .tnc-to{flex:0 0 auto;color:#5a6b70}
.tnc-cust-hrs{display:inline-flex!important;align-items:center;gap:.4rem}
.tnc-cust-hrs select{min-width:0}

/* booking page: topbar (back + badge), single-column left meta, clean chat, circle avatar */
.tnc-bk-topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem}
.tnc-bk-topbar .tnc-bk-back{margin-bottom:0}
.tnc-bk-grid{grid-template-columns:1fr!important}
.tnc-msg-embed .tnc-msg-log{border:none!important;border-radius:0!important;background:#fbfaf7}
.tnc-msg-head-id img,.tnc-msg-head-id .tnc-av{border-radius:50%!important;object-fit:cover}
/* report an issue */
.tnc-bk-reportbar{text-align:center;margin:1.1rem 0 .3rem}
.tnc-bk-report-link{background:none!important;border:0;color:#8a949a!important;text-decoration:none!important;cursor:pointer;font-size:.85rem;font-family:var(--tnc-font);display:inline-flex;align-items:center;gap:.35rem}
.tnc-bk-report-link:hover{color:#b0444a!important;text-decoration:none!important;background:none!important}
.tnc-report-contact{margin-top:1rem;text-align:center;color:#5a6b70;font-size:.88rem}
.tnc-report-contact a{color:var(--tnc-primary)!important;font-weight:500}
.tnc-card-modal[hidden]{display:none!important}
.tnc-report-modal .tnc-card-box{max-width:470px}
.tnc-report-modal h3{margin:0 0 1rem;color:var(--tnc-secondary);font-family:var(--tnc-font)}
.tnc-stripe-card{border:1.5px solid var(--tnc-border);border-radius:10px;padding:.85rem .9rem;background:#fff}

/* edit links + pencil icon */
.tnc-edit-ico{display:inline-block;vertical-align:-1px;flex:0 0 auto}
.tnc-edit-link{color:var(--tnc-primary)!important;font-weight:500;text-decoration:none!important;cursor:pointer;display:inline-flex;align-items:center;gap:.3rem;background:none!important;border:0;font-size:.9rem;font-family:var(--tnc-font)}
.tnc-edit-link:hover{color:var(--tnc-secondary)!important;text-decoration:none!important;background:none!important}
.tnc-profile-edit{position:absolute;top:1.3rem;right:1.5rem;z-index:3}
@media(max-width:560px){.tnc-profile-edit{top:.8rem;right:1rem}}

/* profile: centered Book CTA + shorter gallery collage */
.tnc-vp-book .tnc-btn{width:100%;display:block;text-align:center}
.tnc-vp-collage{height:280px}
@media(max-width:600px){.tnc-vp-collage{height:auto}}

/* map marker popup with profile photo */
.tnc-map-iw{display:flex;align-items:center;gap:.6rem;font-family:var(--tnc-font);padding:.1rem}
.tnc-map-iw-av{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.tnc-map-iw-txt{color:var(--tnc-secondary);font-size:.9rem;line-height:1.35}
.tnc-map-iw-txt a{color:var(--tnc-primary);font-weight:500;text-decoration:none}

/* cleaner dashboard home */
.tnc-vh-head{display:flex;align-items:center;gap:1rem;background:#fff;border:1px solid var(--tnc-border);border-radius:16px;padding:1.2rem 1.4rem;margin-bottom:1.1rem}
.tnc-vh-av{width:66px;height:66px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.tnc-vh-id{flex:1;min-width:0}
.tnc-vh-name{font-family:var(--tnc-heading);font-size:1.3rem;color:var(--tnc-secondary);font-weight:500}
.tnc-vh-sub{color:#8a949a;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:500}
.tnc-vh-rating{color:#5a6b70;font-size:.9rem;margin-top:.2rem}
.tnc-vh-stars{color:#e6b94e}
.tnc-vh-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;gap:1rem}
.tnc-vh-job{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--tnc-border);text-decoration:none}
.tnc-vh-job:last-child{border-bottom:none}
.tnc-vh-job-svc{color:var(--tnc-secondary);font-weight:500}
.tnc-vh-job-meta{color:#8a949a;font-size:.83rem;margin-top:.1rem}
.tnc-vh-rev{padding:.7rem 0;border-bottom:1px solid var(--tnc-border)}
.tnc-vh-rev:last-child{border-bottom:none}
.tnc-vh-rev-stars{color:#e6b94e}
.tnc-vh-rev-txt{color:var(--tnc-secondary);margin:.2rem 0;font-size:.92rem}
.tnc-vh-rev-meta{color:#8a949a;font-size:.8rem}

/* special rates: anchor the autosave indicator to the card */
.tnc-rate-sched{position:relative}

/* cleaner dashboard: card spacing + 50/50 row + left-aligned headings */
.tnc-vh > *{margin-bottom:1.2rem!important}
.tnc-vh .tnc-form-h{text-align:left!important;font-size:1.25rem!important;margin:0 0 .7rem!important}
.tnc-vh-2col{display:flex;gap:1.2rem;align-items:flex-start}
.tnc-vh-2col > *{flex:1;min-width:0;margin-bottom:0!important}
@media(max-width:820px){.tnc-vh-2col{flex-direction:column}.tnc-vh-2col > *{margin-bottom:1.2rem!important}}
/* profile gallery collage: tighter gap, bg tiles, rounded corners */
.tnc-vp-collage{gap:.35rem}
.tnc-vp-ctile{background:#eef1ec!important;border-radius:12px!important;overflow:hidden!important}
.tnc-vp-ctile .tnc-vp-gimg{border-radius:12px}

/* conversation header: name link + right-side actions */
.tnc-msg-embed .tnc-msg-head{justify-content:space-between!important;gap:.6rem}
.tnc-msg-head-actions{display:flex;gap:.45rem;flex:0 0 auto}
.tnc-msg-headlink{background:none;border:1px solid var(--tnc-border);border-radius:99px;padding:.3rem .75rem;font-size:.8rem;color:var(--tnc-secondary)!important;text-decoration:none;cursor:pointer;font-family:var(--tnc-font);display:inline-flex;align-items:center;gap:.25rem;line-height:1}
.tnc-msg-headlink:hover{background:#f3f4f2;color:var(--tnc-secondary)!important}
.tnc-msg-namelink{color:var(--tnc-secondary)!important;font-weight:500;text-decoration:underline}
.tnc-msg-namelink:hover{color:var(--tnc-primary)!important}
@media(max-width:560px){.tnc-msg-head-actions .tnc-msg-headlink{padding:.3rem .5rem;font-size:.75rem}}

/* booking list card: who (cleaner/customer) between service and date */
.tnc-bk-who{color:var(--tnc-secondary);font-weight:500;font-size:.92rem;margin-top:.1rem}

/* payment history: title links to details */
.tnc-ph-titlelink{color:var(--tnc-secondary)!important;text-decoration:none}
.tnc-ph-titlelink:hover{text-decoration:underline;color:var(--tnc-primary)!important}

/* services cards: no dark bg, no checkbox — selected = accent border + green icon + bold name */
.tnc-svc-toggle{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;margin:0!important;pointer-events:none}
.tnc-svc.is-on .tnc-svc-head{background:transparent!important}
.tnc-svc{border:1.5px solid var(--tnc-border)}
.tnc-svc.is-on{border-color:var(--e-global-color-accent,#7E9965)!important;border-width:2px}
.tnc-svc.is-on .tnc-svc-ic{color:var(--e-global-color-accent,#7E9965)!important}
.tnc-svc:not(.is-on) .tnc-svc-ic{color:#bcc6cb!important}
.tnc-svc.is-on .tnc-svc-name{color:var(--tnc-secondary)!important;font-weight:500}
.tnc-svc:not(.is-on) .tnc-svc-name{color:#7a878d}
.tnc-svc-head-l{cursor:pointer}
.tnc-svc:not(.is-on) .tnc-svc-head-l:hover .tnc-svc-name{color:var(--tnc-secondary)!important}

/* per-field save indicator (spinner = checkmark) */
.tnc-fstat{position:absolute;right:.5rem;bottom:.6rem;width:15px;height:15px;pointer-events:none;z-index:3}
.tnc-fstat.is-saving{border:2px solid rgba(16,42,60,.18);border-top-color:var(--tnc-primary);border-radius:50%;animation:tncspin .6s linear infinite}
.tnc-fstat.is-saved::after{content:'\2713';color:#2f7d52;font-weight:500;font-size:13px;line-height:15px;display:block;text-align:center}
.tnc-fstat.is-fail::after{content:'!';color:#b0444a;font-weight:500;font-size:14px;line-height:15px;display:block;text-align:center}
@keyframes tncspin{to{transform:rotate(360deg)}}
/* hide the price field until a service is selected */
.tnc-svc:not(.is-on) .tnc-svc-head-price{display:none}

/* store-credit banner on Supplies */
.tnc-credit-banner{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;background:#eef3ec;border:1px solid #d7e3cf;border-radius:12px;padding:.8rem 1rem;margin:0 0 1rem}
.tnc-credit-banner strong{color:var(--tnc-secondary);font-size:1.05rem}
.tnc-credit-banner span{color:#5a6b70;font-size:.88rem}

/* inbox sort/filter */
.tnc-inbox-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin:.2rem 0 1rem}
.tnc-inbox-filters{display:flex;flex-wrap:wrap;gap:.4rem}
.tnc-inbox-pill{background:#fff;border:1.5px solid var(--tnc-border);border-radius:99px;padding:.35rem .85rem;font-size:.85rem;font-weight:500;color:#5a6b70;cursor:pointer;font-family:var(--tnc-font)}
.tnc-inbox-pill.is-on{background:var(--tnc-primary);border-color:var(--tnc-primary);color:#fff}
.tnc-inbox-sort{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}
.tnc-inbox-unread{display:flex;align-items:center;gap:.35rem;font-size:.85rem;color:#5a6b70}
.tnc-inbox-order{padding:.35rem .6rem!important;border:1.5px solid var(--tnc-border)!important;border-radius:9px!important;background:#fff!important;font-family:var(--tnc-font);font-size:.85rem}
.tnc-inbox-empty{color:#8a949a;text-align:center;padding:1rem}
/* order-details modal */
.tnc-ord-modal[hidden]{display:none!important}
.tnc-ord-modal .tnc-card-box{max-width:460px}
.tnc-ord-h{margin:0 0 .2rem;color:var(--tnc-secondary);font-family:var(--tnc-font)}
.tnc-ord-meta{color:#8a949a;font-size:.85rem;margin:.2rem 0}
.tnc-ord-table{width:100%;border-collapse:collapse;margin:.7rem 0}
.tnc-ord-table td{padding:.45rem 0;border-bottom:1px solid var(--tnc-border);color:var(--tnc-secondary);font-size:.9rem}
.tnc-ord-table td:last-child{text-align:right;white-space:nowrap}
.tnc-ord-table .tnc-ord-total td{font-weight:500;border-bottom:none}
button.tnc-ph-date,button.tnc-ph-titlelink{background:none!important;border:0!important;padding:0!important;font:inherit;cursor:pointer}

/* inbox filter pills: keep text visible (theme forces white on hover) */
.tnc-inbox-pill{color:#5a6b70!important}
.tnc-inbox-pill:hover{background:#f3f4f2!important;color:var(--tnc-secondary)!important}
.tnc-inbox-pill.is-on,.tnc-inbox-pill.is-on:hover{background:var(--tnc-primary)!important;border-color:var(--tnc-primary)!important;color:#fff!important}

/* hide native number steppers on price/rate inputs (cleaner + frees the right edge) */
.tnc-price-input::-webkit-outer-spin-button,.tnc-price-input::-webkit-inner-spin-button,.tnc-rate-row input[type=number]::-webkit-outer-spin-button,.tnc-rate-row input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tnc-price-input,.tnc-rate-row input[type=number]{-moz-appearance:textfield}
/* save indicator: vertically centered on the right; bottom-aligned for stacked label+input fields */
.tnc-fstat{position:absolute;right:.5rem;top:50%;bottom:auto;transform:translateY(-50%);width:14px;height:14px;pointer-events:none;z-index:3}
.tnc-field > .tnc-fstat{top:auto;bottom:.68rem;transform:none}
.tnc-bk-empty{color:#8a949a;text-align:center;padding:1rem}

/* payment history: consistent date (plain) + title (clickable) across order types */
.tnc-ph-date{color:#8a949a!important;font-weight:500;text-decoration:none!important;cursor:default}
.tnc-ph-titlelink{color:var(--tnc-secondary)!important;text-decoration:none!important;font-weight:500;cursor:pointer;font-family:var(--tnc-font);font-size:1rem}
button.tnc-ph-titlelink{background:none!important;border:0!important;padding:0!important;text-align:left}
.tnc-ph-titlelink:hover{text-decoration:underline!important;color:var(--tnc-primary)!important}

/* booking form: cleaner avatar in the header */
.tnc-book-head{display:flex;flex-direction:column;align-items:center;gap:.6rem;margin-bottom:1.3rem}
.tnc-book-av{width:72px;height:72px;border-radius:50%;object-fit:cover;background:#fff}

/* admin background-check override label */
.tnc-rev-bglbl{color:#5a6b70;font-size:.85rem;margin-right:.3rem;align-self:center}

/* ===== Rover-style review card ===== */
.tnc-rc-list,.tnc-reviews{display:flex;flex-direction:column;gap:1rem}
.tnc-reviews .tnc-rc{margin:0}
.tnc-rc{border:1px solid var(--tnc-border);border-radius:12px;padding:1rem 1.1rem;background:#fff}
.tnc-rc-head{display:flex;align-items:center;gap:.65rem}
.tnc-rc-av{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:0 0 44px;background:#fff}
.tnc-rc-id{display:flex;flex-direction:column;min-width:0}
.tnc-rc-name{font-weight:500;color:#1f2b2e;line-height:1.2}
.tnc-rc-sub{font-size:.82rem;color:#6b7a7e;margin-top:.1rem}
.tnc-rc-stars{color:#e0a93b;letter-spacing:1px;margin:.5rem 0 .35rem;font-size:.95rem}
.tnc-rc-text{margin:0;color:#33414a;line-height:1.5;white-space:pre-line}
.tnc-rc-text:not(.is-short){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tnc-rc-tog:checked ~ .tnc-rc-text{display:block;-webkit-line-clamp:unset}
.tnc-rc-more{display:inline-block;margin-top:.4rem;color:var(--tnc-accent,#586E86);font-weight:500;font-size:.88rem;cursor:pointer}
.tnc-rc-more::after{content:"Read more"}
.tnc-rc-tog:checked ~ .tnc-rc-more::after{content:"Show less"}
.tnc-rc-more:hover{text-decoration:underline}

/* ===== Jobs: List / Calendar view toggle ===== */
.tnc-jv-toggle{display:inline-flex;background:var(--tnc-cream,#f5f1e8);border-radius:99px;padding:3px;margin:0 0 1rem}
.tnc-jv-btn{border:0;background:transparent;padding:.35rem 1.15rem;border-radius:99px;font-family:var(--tnc-font);font-weight:500;font-size:.82rem;line-height:1.2;color:var(--tnc-secondary);cursor:pointer}
.tnc-jv-btn.is-on{background:var(--tnc-primary);color:#fff}

/* ===== Jobs calendar ===== */
.tnc-cal-head{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}
.tnc-cal-title{font-weight:500;font-size:1.05rem;color:#1f2b2e;min-width:9.5rem;text-align:center}
.tnc-cal-nav{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--tnc-border);border-radius:8px;color:#33414a;text-decoration:none;font-size:1.1rem;line-height:1}
.tnc-cal-nav:hover{background:#f6f3ee}
.tnc-cal-today{margin-left:auto;font-size:.85rem;font-weight:500;color:var(--tnc-accent,#586E86);text-decoration:none}
.tnc-cal-today:hover{text-decoration:underline}
.tnc-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.tnc-cal-dow{text-align:center;font-size:.72rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:#8a979b;padding:.25rem 0}
.tnc-cal-cell{min-height:92px;border:1px solid var(--tnc-border);border-radius:8px;padding:4px;background:#fff;display:flex;flex-direction:column;gap:3px;overflow:hidden}
.tnc-cal-cell.is-empty{background:transparent;border:0}
.tnc-cal-cell.is-today{border-color:var(--tnc-accent,#586E86);box-shadow:inset 0 0 0 1px var(--tnc-accent,#586E86)}
.tnc-cal-dnum{font-size:.78rem;font-weight:500;color:#6b7a7e}
.tnc-cal-cell.is-today .tnc-cal-dnum{color:var(--tnc-accent,#586E86)}
.tnc-cal-job{display:block;font-size:.72rem;line-height:1.25;padding:2px 5px;border-radius:5px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:3px solid #9aa6aa;background:#f3f5f6;color:#33414a}
.tnc-cal-job:hover{filter:brightness(.97)}
.tnc-cal-job.tnc-pending{background:#fdf3e3;border-left-color:#e0a93b;color:#7a5a16}
.tnc-cal-job.tnc-accepted,.tnc-cal-job.tnc-scheduled,.tnc-cal-job.tnc-on_the_way,.tnc-cal-job.tnc-in_progress{background:#eaf0f6;border-left-color:#586E86;color:#2f4257}
.tnc-cal-job.tnc-completed{background:#e9f4ec;border-left-color:#3d9a5b;color:#1f5e34}
.tnc-cal-job.tnc-cancelled,.tnc-cal-job.tnc-declined{background:#f4f4f5;border-left-color:#c3c8ca;color:#9aa1a4;text-decoration:line-through}
@media(max-width:640px){
  .tnc-cal-grid{gap:3px}
  .tnc-cal-cell{min-height:64px;padding:2px}
  .tnc-cal-dow{font-size:.6rem}
  .tnc-cal-job{font-size:.6rem;padding:1px 3px}
}

/* ===== Cleaner dashboard: today's job lineup (quick actions) ===== */
.tnc-today-list{display:flex;flex-direction:column;gap:.5rem}
.tnc-tjob{display:flex;align-items:center;gap:.75rem;border:1px solid var(--tnc-border);border-radius:10px;padding:.55rem .7rem;background:#fff;transition:opacity .2s ease,background .2s ease}
.tnc-tjob.is-done{opacity:.6;background:#f6f9f6}
.tnc-tjob-open{display:flex;align-items:center;gap:.75rem;flex:1 1 auto;min-width:0;text-decoration:none;color:inherit}
.tnc-tjob-time{font-weight:500;color:#1f2b2e;font-size:.9rem;flex:0 0 auto;width:4.3rem}
.tnc-tjob-main{display:flex;flex-direction:column;min-width:0}
.tnc-tjob-svc{font-weight:500;color:#1f2b2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tnc-tjob-cust{font-size:.82rem;color:#6b7a7e}
.tnc-tjob.is-done .tnc-tjob-svc{text-decoration:line-through}
.tnc-tjob-side{display:flex;align-items:center;gap:.5rem;flex:0 0 auto}
.tnc-tjob-check{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#e9f4ec;color:#3d9a5b;font-weight:500;font-size:.95rem}
@media(max-width:560px){.tnc-tjob-time{width:auto;font-size:.82rem}.tnc-tjob-badge{display:none}}

/* ===== Sidebar unread dot ===== */
.tnc-dash-nav a{position:relative}
.tnc-nav-dot{margin-left:auto;width:9px;height:9px;border-radius:50%;background:#d9534f;flex:0 0 auto;box-shadow:0 0 0 2px #fff}

/* ===== Customer dashboard greeting / notifications ===== */
.tnc-greet-hi{font-size:1.35rem;font-weight:500;color:#1f2b2e;margin-bottom:.25rem}
.tnc-greet-notes{display:flex;flex-direction:column;gap:.5rem;margin-top:.6rem}
.tnc-greet-note{display:flex;align-items:center;gap:.6rem;padding:.6rem .8rem;border:1px solid var(--tnc-border);border-radius:10px;text-decoration:none;color:#33414a;background:#fff}
.tnc-greet-note:hover{background:#f6f9f6}
.tnc-greet-note .tnc-nav-dot{margin-left:0}
.tnc-greet-ico{color:#7E9965;font-size:.7rem;flex:0 0 auto}
.tnc-greet-note-txt{flex:1 1 auto;min-width:0}
.tnc-greet-note-cta{flex:0 0 auto;font-weight:500;font-size:.85rem;color:var(--tnc-accent,#586E86)}

/* ===== Manager console ===== */
.tnc-mgr-badge{width:44px;height:44px;border-radius:10px;background:var(--tnc-primary,#102A3C);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:500;letter-spacing:.02em;flex:0 0 auto}
.tnc-mgr-h4{margin:1.2rem 0 .5rem;font-size:.95rem;color:#1f2b2e;font-weight:500}
.tnc-mgr-search{display:flex;gap:.5rem;margin:.2rem 0 1rem}
.tnc-mgr-search input[type=search]{flex:1 1 auto;padding:.5rem .7rem;border:1px solid var(--tnc-border);border-radius:8px}
.tnc-mgr-list{display:flex;flex-direction:column;gap:.5rem}
.tnc-mgr-row{display:flex;align-items:center;gap:.75rem;border:1px solid var(--tnc-border);border-radius:10px;padding:.6rem .8rem;background:#fff;text-decoration:none;color:inherit}
a.tnc-mgr-row:hover{background:#f6f9f6}
.tnc-mgr-row-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}
.tnc-mgr-row-name{font-weight:500;color:#1f2b2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tnc-mgr-row-sub{font-size:.82rem;color:#6b7a7e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tnc-mgr-row-act{display:flex;align-items:center;gap:.4rem;flex:0 0 auto}
.tnc-mgr-row-act .tnc-inline-form{margin:0}
.tnc-mgr-row-time{font-size:.78rem;color:#8a979b;flex:0 0 auto}

/* ===== Manager notifications: bars + bell ===== */
.tnc-notices{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}
.tnc-notice{display:flex;align-items:flex-start;gap:.6rem;padding:.7rem .9rem;border-radius:10px;border:1px solid var(--tnc-border);font-size:.92rem;line-height:1.45}
.tnc-notice-body{flex:1 1 auto}
.tnc-notice-body a{font-weight:500;text-decoration:underline}
.tnc-notice-info{background:#eaf0f6;border-color:#cdddec;color:#2f4257}
.tnc-notice-success{background:#e9f4ec;border-color:#cce7d4;color:#1f5e34}
.tnc-notice-warn{background:#fdf3e3;border-color:#f0dcb4;color:#7a5a16}
.tnc-notice-x{background:none;border:0;font-size:1.25rem;line-height:1;cursor:pointer;color:inherit;opacity:.6;flex:0 0 auto}
.tnc-notice-x:hover{opacity:1}
.tnc-bell-wrap{margin-left:auto;position:relative}
.tnc-bell{position:relative;background:none;border:0;cursor:pointer;color:var(--tnc-secondary,#33414a);padding:4px;border-radius:8px;display:inline-flex}
.tnc-bell:hover{background:#f1ede6}
.tnc-bell-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#d9534f;color:#fff;font-size:.66rem;font-weight:500;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #fff}
.tnc-bell-menu{position:absolute;right:0;top:36px;z-index:60;width:280px;max-height:380px;overflow-y:auto;background:#fff;border:1px solid var(--tnc-border);border-radius:12px;box-shadow:0 12px 30px rgba(16,42,60,.16)}
.tnc-bell-head{padding:.6rem .85rem;font-weight:500;color:#1f2b2e;border-bottom:1px solid var(--tnc-border)}
.tnc-bell-item{padding:.65rem .85rem;border-bottom:1px solid #f1efe9}
.tnc-bell-item:last-child{border-bottom:0}
.tnc-bell-item-t{font-weight:500;color:#1f2b2e;font-size:.9rem}
.tnc-bell-item-b{color:#4a565b;font-size:.85rem;margin-top:.1rem}
.tnc-bell-item-l{display:inline-block;margin-top:.25rem;font-size:.82rem;font-weight:500;color:var(--tnc-accent,#586E86)}
.tnc-bell-item-d{display:block;margin-top:.2rem;font-size:.72rem;color:#9aa1a4}
.tnc-help{display:block;margin-top:.25rem;font-size:.8rem;color:#8a949a}

/* ===== Dashboard/Manager body card spacing + manager link buttons ===== */
.tnc-dash-body{display:flex;flex-direction:column;gap:1.1rem}
.tnc-dash--focus .tnc-dash-body{display:block}
.tnc-mgr-act{background:none;border:0;padding:.25rem .2rem;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:500;color:var(--tnc-accent,#586E86);text-decoration:none}
.tnc-mgr-act:hover{text-decoration:underline}
.tnc-mgr-act-danger{color:#d9534f}
.tnc-foot-logout{color:#d9534f!important}

/* ===== No underlined links across the TNC app UI ===== */
[class^="tnc-"] a, [class*=" tnc-"] a, a[class^="tnc-"], a[class*=" tnc-"]{text-decoration:none!important}
[class^="tnc-"] a:hover, [class*=" tnc-"] a:hover, a[class^="tnc-"]:hover, a[class*=" tnc-"]:hover{text-decoration:none!important}

/* ===== Manager account rows: photo, status by name, consistent type, hover fix ===== */
.tnc-mgr-row-av{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:0 0 42px;background:#fff}
.tnc-mgr-row .tnc-mgr-row-name{display:flex;align-items:center;gap:.5rem;white-space:normal;overflow:visible;font-weight:500}
.tnc-mgr-row .tnc-badge{font-size:.68rem;padding:.12rem .5rem;font-weight:500}
.tnc-mgr-act{font-size:.85rem;font-weight:500}
.tnc-mgr-act:hover{color:var(--tnc-secondary)!important}
.tnc-mgr-act-danger{color:#d9534f}
.tnc-mgr-act-danger:hover{color:#b23b38!important}

/* ===== Mobile: smart-sticky top bar + app-style bottom nav ===== */
.tnc-bottomnav{display:none}
.tnc-bn-sheet{display:none}
.tnc-topbar{display:none}
.tnc-bn-tab .tnc-dico{stroke:currentColor!important}
@media(max-width:820px){
  .tnc-dash-side{display:none}
  .tnc-dash-body{padding-bottom:82px}

  /* Top bar: identity + viewing-as + links (smart-sticky) */
  .tnc-topbar{display:flex;align-items:center;gap:.6rem;position:sticky;top:0;z-index:9000;background:#fff;border:1px solid var(--tnc-border);border-radius:14px;padding:.5rem .65rem;margin:0 0 .9rem;box-shadow:0 2px 10px rgba(16,42,60,.08);overflow-x:auto;scrollbar-width:none;transition:transform .25s ease}
  .tnc-topbar::-webkit-scrollbar{display:none}
  .tnc-topbar.tnc-tb-hide{transform:translateY(-135%)}
  .tnc-topbar-id{display:flex;align-items:center;gap:.5rem;flex:0 0 auto}
  .tnc-topbar-av{width:34px;height:34px;border-radius:50%;object-fit:cover;background:#fff;flex:0 0 auto}
  .tnc-topbar-idtxt{display:flex;flex-direction:column;min-width:0}
  .tnc-topbar-idtxt strong{font-size:.85rem;line-height:1.1;white-space:nowrap}
  .tnc-topbar-idtxt span{font-size:.62rem;color:#8a949a;text-transform:uppercase;letter-spacing:.04em;font-weight:500;white-space:nowrap}
  .tnc-topbar-switch{display:flex;background:var(--tnc-cream,#f5f1e8);border-radius:99px;padding:3px;flex:0 0 auto}
  .tnc-topbar-switch a{font-size:.76rem;font-weight:500;padding:.3rem .7rem;border-radius:99px;color:var(--tnc-secondary);text-decoration:none!important;white-space:nowrap}
  .tnc-topbar-switch a.is-on{background:var(--tnc-primary);color:#fff}
  .tnc-topbar-links{display:flex;align-items:center;gap:.8rem;margin-left:auto;flex:0 0 auto;padding-left:.4rem}
  .tnc-topbar-links a{font-size:.78rem;font-weight:500;color:var(--tnc-secondary);text-decoration:none!important;white-space:nowrap}

  /* Bottom nav: app-style tabs + More (smart-sticky) */
  .tnc-dash .tnc-dash-nav{display:none!important}
  .tnc-bottomnav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9000;background:#fff;border-top:1px solid var(--tnc-border);box-shadow:0 -2px 14px rgba(16,42,60,.10);padding:5px 2px;padding-bottom:calc(5px + env(safe-area-inset-bottom,0px));transition:transform .25s ease}
  .tnc-bottomnav.tnc-bn-hide{transform:translateY(130%)}
  .tnc-bn-tab{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:3px;padding:5px 2px;background:none;border:0;color:#6b7a7e;font:700 .62rem/1 var(--tnc-font);text-decoration:none!important;cursor:pointer;position:relative;min-width:0}
  .tnc-bn-tab .tnc-dico{width:22px;height:22px}
  .tnc-bn-tab.is-on{color:var(--tnc-primary)}
  .tnc-bn-tab>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .tnc-bn-dot{position:absolute;top:2px;left:calc(50% + 7px);width:8px;height:8px;border-radius:50%;background:#d9534f;box-shadow:0 0 0 2px #fff}
  .tnc-bn-sheet{display:block;position:fixed;left:0;right:0;bottom:66px;z-index:9001;padding:0 .6rem}
  .tnc-bn-sheet[hidden]{display:none}
  .tnc-bn-sheet-inner{background:#fff;border:1px solid var(--tnc-border);border-radius:14px;box-shadow:0 12px 30px rgba(16,42,60,.18);padding:.4rem}
  .tnc-bn-sheet-row{display:flex;align-items:center;gap:.7rem;padding:.7rem .8rem;color:var(--tnc-secondary);text-decoration:none!important;border-radius:10px;font-weight:500;position:relative}
  .tnc-bn-sheet-row .tnc-dico{width:20px;height:20px}
  .tnc-bn-sheet-row.is-on{background:var(--tnc-cream,#f5f1e8)}
  .tnc-bn-sheet-row .tnc-bn-dot{position:static;margin-left:auto;box-shadow:none}
}

/* ===== Resources & Events ===== */
.tnc-res-wrap{max-width:1000px;margin:0 auto}
.tnc-res-h{font-size:1.6rem;color:#1f2b2e;margin:0 0 1rem}
.tnc-res-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}
.tnc-res-card{display:flex;flex-direction:column;gap:.4rem;border:1px solid var(--tnc-border);border-radius:14px;padding:1rem;background:#fff;text-decoration:none!important;color:inherit;transition:border-color .15s,box-shadow .15s}
.tnc-res-card:hover{border-color:#cdddec;box-shadow:0 6px 18px rgba(16,42,60,.08)}
.tnc-res-card-aud{display:flex;flex-wrap:wrap;gap:.3rem}
.tnc-chip-ev{background:#e9f4ec!important;color:#1f5e34!important}
.tnc-res-card-title{font-weight:500;color:#1f2b2e;font-size:1.02rem;line-height:1.25}
.tnc-res-card-when{font-size:.82rem;color:#586E86;font-weight:500}
.tnc-res-card-ex{font-size:.88rem;color:#5a6b70;line-height:1.45}
.tnc-res-single{max-width:760px}
.tnc-res-title{font-size:1.7rem;color:#1f2b2e;margin:.3rem 0 .8rem;line-height:1.2}
.tnc-res-event{background:#f6f9f6;border:1px solid #cce7d4;border-radius:12px;padding:.9rem 1rem;margin:0 0 1.2rem}
.tnc-res-event-row{color:#1f3a29;margin-bottom:.3rem}
.tnc-res-rsvp{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-top:.6rem}
.tnc-res-rsvp-count{font-size:.85rem;color:#5a6b70;font-weight:500}
.tnc-res-body{color:#33414a;line-height:1.65;font-size:1rem}
.tnc-res-body h3{margin:1.3rem 0 .5rem;color:#1f2b2e}
.tnc-res-body p{margin:0 0 1rem}
.tnc-res-body ul{margin:0 0 1rem 1.2rem}
.tnc-res-hl{display:flex;flex-direction:column;gap:.15rem;padding:.7rem .85rem;border:1px solid var(--tnc-border);border-radius:10px;text-decoration:none!important;color:inherit;margin-top:.5rem}
.tnc-res-hl:hover{background:#f6f9f6}
.tnc-res-hl-ev{border-color:#cce7d4;background:#f6f9f6}
.tnc-res-hl-t{font-weight:500;color:#1f2b2e}
.tnc-res-hl-w{font-size:.84rem;color:#6b7a7e}
.tnc-res-evfields{border-top:1px dashed var(--tnc-border);margin-top:.5rem;padding-top:.8rem}
.tnc-ck-row{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;align-items:center}
.tnc-ck{display:inline-flex;align-items:center;gap:.4rem;font-weight:500;color:#33414a}
.tnc-ck input{width:auto;margin:0}
.tnc-res-reminders{margin-bottom:1rem}

/* ===== Simple WYSIWYG (Resources body) ===== */
.tnc-wysiwyg{border:1px solid var(--tnc-border);border-radius:10px;overflow:hidden;background:#fff}
.tnc-wys-tb{display:flex;gap:3px;flex-wrap:wrap;background:#f6f3ee;border-bottom:1px solid var(--tnc-border);padding:5px}
.tnc-wys-tb button{min-width:32px;height:30px;padding:0 .5rem;border:0;background:#fff;border-radius:6px;cursor:pointer;font-size:.9rem;color:#33414a;font-family:var(--tnc-font);line-height:1}
.tnc-wys-tb button:hover{background:var(--tnc-cream,#f5f1e8)}
.tnc-wys-ed{min-height:200px;max-height:520px;overflow-y:auto;padding:.8rem .9rem;outline:none;line-height:1.6;color:#33414a;font-family:var(--tnc-font)}
.tnc-wys-ed:focus{box-shadow:inset 0 0 0 2px rgba(88,110,134,.18)}
.tnc-wys-ed:empty:before{content:"Write the article\2026";color:#9aa1a4}
.tnc-wys-ed h3{margin:.7rem 0 .35rem;color:#1f2b2e}
.tnc-wys-ed p{margin:0 0 .7rem}
.tnc-wys-ed ul,.tnc-wys-ed ol{margin:0 0 .7rem 1.3rem}
.tnc-wys-ed a{color:var(--tnc-accent,#586E86)}

/* ===== Distinguish field titles from checkbox option labels ===== */
.tnc-field > label{font-weight:500}
.tnc-field label.tnc-ck{display:inline-flex;align-items:center;gap:.45rem;margin:0;font-weight:500;font-size:.92rem;color:#33414a;white-space:nowrap;text-transform:none;letter-spacing:0}
.tnc-ck-row{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;align-items:center;margin-top:.25rem}
.tnc-field label.tnc-ck input{width:auto;margin:0;flex:0 0 auto}
.tnc-chip-draft{background:#eceff1!important;color:#5a6b70!important}

/* ===== Content form fixes: checkboxes, inline actions, featured image ===== */
.tnc-field input[type=checkbox],.tnc-field input[type=radio]{width:auto!important;height:16px;min-height:0!important;margin:0!important;flex:0 0 auto;box-shadow:none!important;accent-color:var(--tnc-primary)}
.tnc-form-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.7rem}
.tnc-form-actions .tnc-btn{width:auto!important;margin-top:0!important;flex:0 0 auto}
.tnc-res-thumb-prev{display:block;width:120px;height:80px;object-fit:cover;border-radius:8px;margin:0 0 .5rem;border:1px solid var(--tnc-border)}
.tnc-res-card-img{display:block;width:100%;height:140px;border-radius:10px;background-size:cover;background-position:center;background-color:#f1ede6;margin-bottom:.2rem}
.tnc-res-hero{display:block;width:100%;max-height:320px;object-fit:cover;border-radius:14px;margin:0 0 1rem}
.tnc-chip-cat{background:#eaf0f6!important;color:#2f4257!important}
.tnc-chip-tag{background:transparent!important;color:#6b7a7e!important;border:1px solid var(--tnc-border)}

/* ============================================================
   GLOBAL LIGHT-BUTTON STYLING — bulletproof hover/focus/active.
   Use class .tnc-lbtn for any light/secondary button going forward.
   Also retro-applied to existing light buttons + the editor toolbar
   so the theme's button:hover styles can never wash them out again.
   ============================================================ */
.tnc-lbtn,
.tnc-btn.tnc-btn-ghost,
.tnc-wys-tb button{
  background:#fff!important;
  color:var(--tnc-secondary,#33414a)!important;
  border:1px solid var(--tnc-border)!important;
  cursor:pointer;
  transition:background .15s,color .15s,border-color .15s;
}
.tnc-lbtn:hover,.tnc-lbtn:focus,.tnc-lbtn:active,
.tnc-btn.tnc-btn-ghost:hover,.tnc-btn.tnc-btn-ghost:focus,.tnc-btn.tnc-btn-ghost:active,
.tnc-wys-tb button:hover,.tnc-wys-tb button:focus,.tnc-wys-tb button:active{
  background:var(--tnc-cream,#f5f1e8)!important;
  color:var(--tnc-secondary,#33414a)!important;
  border-color:var(--tnc-border)!important;
  box-shadow:none!important;
}
/* text/link-style light buttons: no fill, stable colour on hover */
.tnc-lbtn--link,.tnc-mgr-act,.tnc-linkbtn{background:none!important;border:0!important;color:var(--tnc-accent,#586E86)!important}
.tnc-lbtn--link:hover,.tnc-mgr-act:hover,.tnc-mgr-act:focus,.tnc-linkbtn:hover,.tnc-linkbtn:focus{background:none!important;color:var(--tnc-secondary,#33414a)!important}
/* danger text buttons */
.tnc-lbtn--danger,.tnc-mgr-act-danger{color:#d9534f!important;background:none!important;border:0!important}
.tnc-lbtn--danger:hover,.tnc-lbtn--danger:focus,.tnc-mgr-act-danger:hover,.tnc-mgr-act-danger:focus{color:#b23b38!important;background:none!important}

/* ===== Taxonomy pickers + styled file input ===== */
.tnc-termbox{display:flex;flex-wrap:wrap;gap:.4rem 1rem;border:1px solid var(--tnc-border);border-radius:9px;padding:.6rem .7rem;max-height:150px;overflow:auto;margin-bottom:.45rem;background:#fff}
.tnc-termbox .tnc-ck{font-size:.9rem}
.tnc-term-new{font-size:.9rem!important}
.tnc-field input[type=file]{padding:.45rem .6rem!important;border:1px solid var(--tnc-border)!important;border-radius:9px!important;background:#fff!important;font-family:var(--tnc-font);font-size:.9rem;cursor:pointer}
.tnc-field input[type=file]::file-selector-button{margin-right:.8rem;padding:.45rem 1rem;border:1px solid var(--tnc-border);border-radius:99px;background:var(--tnc-cream,#f5f1e8);color:var(--tnc-secondary);font-weight:500;font-family:var(--tnc-font);font-size:.85rem;cursor:pointer;transition:background .15s}
.tnc-field input[type=file]::file-selector-button:hover{background:#ece6db}
.tnc-field input[type=file]::-webkit-file-upload-button{margin-right:.8rem;padding:.45rem 1rem;border:1px solid var(--tnc-border);border-radius:99px;background:var(--tnc-cream,#f5f1e8);color:var(--tnc-secondary);font-weight:500;font-family:var(--tnc-font);font-size:.85rem;cursor:pointer}

/* ===== Event RSVP buttons: inline, auto-width (not full-width) ===== */
.tnc-res-rsvp{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.tnc-res-rsvp .tnc-inline-form{margin:0}
.tnc-res-rsvp .tnc-btn{width:auto!important;margin-top:0!important;padding:.55rem 1.3rem!important;font-size:.95rem}

/* ===== One-page cart+checkout: editable AJAX cart ===== */
.tnc-cocart{border:1px solid var(--tnc-border);border-radius:14px;background:#fff;padding:1rem 1.1rem;margin:0 0 1.5rem;transition:opacity .15s}
.tnc-cocart.is-loading{opacity:.5;pointer-events:none}
.tnc-cocart-head{display:flex;justify-content:space-between;align-items:center;font-weight:500;color:#1f2b2e;margin-bottom:.6rem;font-size:1.05rem}
.tnc-cocart-shop{font-size:.85rem;font-weight:500;color:var(--tnc-accent,#586E86);text-decoration:none!important}
.tnc-cocart-items{display:flex;flex-direction:column;gap:.5rem}
.tnc-cocart-row{display:flex;align-items:center;gap:.8rem;padding:.55rem 0;border-bottom:1px solid #f1efe9}
.tnc-cocart-row:last-child{border-bottom:0}
.tnc-cocart-img{flex:0 0 56px;width:56px}
.tnc-cocart-img img{width:56px;height:56px;object-fit:cover;border-radius:8px;display:block;background:#f1ede6}
.tnc-cocart-info{flex:1 1 auto;min-width:0}
.tnc-cocart-name{font-weight:500;color:#1f2b2e;line-height:1.25}
.tnc-cocart-each{font-size:.82rem;color:#6b7a7e}
.tnc-cocart-qty{display:inline-flex;align-items:center;border:1px solid var(--tnc-border);border-radius:99px;overflow:hidden;flex:0 0 auto}
.tnc-cocart-qty button{width:30px;height:32px;border:0;background:#fff;cursor:pointer;font-size:1rem;color:#33414a;font-family:var(--tnc-font);line-height:1}
.tnc-cocart-qty button:hover{background:var(--tnc-cream,#f5f1e8)}
.tnc-cocart-q{width:38px;text-align:center;border:0!important;padding:0!important;font-family:var(--tnc-font);background:#fff;box-shadow:none!important}
.tnc-cocart-line{flex:0 0 auto;font-weight:500;color:#1f2b2e;min-width:70px;text-align:right}
.tnc-cocart-rm{flex:0 0 auto;background:none;border:0;color:#b0b8bb;font-size:1.3rem;line-height:1;cursor:pointer;padding:0 .2rem}
.tnc-cocart-rm:hover{color:#d9534f}
@media(max-width:560px){.tnc-cocart-row{flex-wrap:wrap}.tnc-cocart-info{flex:1 1 60%}.tnc-cocart-line{order:5;margin-left:auto}}

/* ===== WooCommerce pages — brand styling ===== */
.woocommerce,.woocommerce-page{font-family:var(--tnc-font);color:var(--tnc-text,#33414a)}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce-page a.button,.woocommerce-page button.button,.woocommerce-page input.button,.woocommerce #place_order,.woocommerce button.button.alt,.woocommerce .button.alt{background:var(--tnc-primary)!important;color:#fff!important;border:0!important;border-radius:99px!important;font-family:var(--tnc-font)!important;font-weight:500!important;padding:.72rem 1.6rem!important;line-height:1.2!important;text-shadow:none!important}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #place_order:hover,.woocommerce .button.alt:hover{filter:brightness(1.07)}
.woocommerce a.button.wc-backward,.woocommerce .added_to_cart{background:#fff!important;color:var(--tnc-secondary)!important;border:1px solid var(--tnc-border)!important}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce-page form .form-row input.input-text,.woocommerce input[type=text],.woocommerce input[type=email],.woocommerce input[type=tel],.woocommerce input[type=password],.woocommerce select,.woocommerce textarea,.select2-container .select2-selection{border:1px solid var(--tnc-border)!important;border-radius:9px!important;padding:.6rem .75rem!important;font-family:var(--tnc-font)!important;box-shadow:none!important;min-height:auto}
.woocommerce table.shop_table{border:1px solid var(--tnc-border)!important;border-radius:12px!important;border-collapse:separate!important;overflow:hidden}
.woocommerce-checkout #payment,.woocommerce .cart_totals{background:#f6f3ee!important;border-radius:12px}
.woocommerce-checkout #payment{border:1px solid var(--tnc-border)}
.woocommerce .woocommerce-message,.woocommerce-info,.woocommerce .woocommerce-error{border-top:3px solid var(--tnc-primary)!important;border-radius:8px;font-family:var(--tnc-font);background:#fff}
.woocommerce .woocommerce-message{border-top-color:#7E9965!important}
.woocommerce-checkout h3,.woocommerce-checkout h2,.woocommerce .cart_totals h2,.woocommerce #order_review_heading,.woocommerce-billing-fields h3,.woocommerce-account h2,.woocommerce ul.products li.product h2,.woocommerce div.product .product_title{color:#1f2b2e!important;font-family:var(--tnc-font)!important}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:#1f2b2e!important}
.woocommerce a{color:var(--tnc-accent,#586E86)}

/* Editable cart lives in the order-review column; hide Woo's duplicate item rows */
#order_review_heading{display:none!important}
.woocommerce-checkout-review-order-table thead{display:none!important}
.woocommerce-checkout-review-order-table .cart_item{display:none!important}
.woocommerce-checkout .tnc-cocart{margin:0 0 1rem;padding:.85rem 1rem}
.woocommerce-checkout .tnc-cocart-img{flex:0 0 44px;width:44px}
.woocommerce-checkout .tnc-cocart-img img{width:44px;height:44px}

/* Remove the default fieldset "groove" border boxes in the payment area */
.woocommerce-checkout #payment fieldset,.woocommerce-checkout #payment .wc-upe-form,.woocommerce-checkout #payment .wc-payment-form{border:0!important;margin:0!important;padding:0!important;min-width:0}

/* Select2 dropdowns: match input height + vertically center the text */
.select2-container--default .select2-selection--single{height:38px!important;min-height:38px!important;border:1px solid var(--tnc-border)!important;border-radius:9px!important;padding:0 .75rem!important;display:flex!important;align-items:center!important;background:#fbfaf8!important}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.3!important;padding:0!important;color:var(--tnc-text,#33414a)!important}
.select2-container--default .select2-selection--single .select2-selection__arrow{top:0!important;height:38px!important;right:8px}
.select2-container{width:100%!important}
.select2-container--open .select2-dropdown{border-color:var(--tnc-border)!important;font-family:var(--tnc-font)}

/* ===== Editable cart rows: stacked layout (fits the narrow order-review column) ===== */
.tnc-cocart-row{display:flex!important;align-items:flex-start;gap:.7rem;padding:.7rem 0;border-bottom:1px solid #f1efe9}
.tnc-cocart-row:last-child{border-bottom:0}
.tnc-cocart-img{flex:0 0 46px;width:46px}
.tnc-cocart-img img{width:46px;height:46px;object-fit:cover;border-radius:8px;display:block;background:#f1ede6}
.tnc-cocart-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:.5rem}
.tnc-cocart-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}
.tnc-cocart-info{min-width:0}
.tnc-cocart-name{font-weight:500;color:#1f2b2e;line-height:1.25;font-size:.93rem;white-space:normal}
.tnc-cocart-each{font-size:.8rem;color:#6b7a7e;margin-top:.1rem}
.tnc-cocart-rm{flex:0 0 auto;background:none;border:0;color:#b0b8bb;font-size:1.25rem;line-height:1;cursor:pointer;padding:0 .1rem}
.tnc-cocart-rm:hover{color:#d9534f}
.tnc-cocart-bottom{display:flex;justify-content:space-between;align-items:center;gap:.6rem}
.tnc-cocart-line{font-weight:500;color:#1f2b2e;white-space:nowrap}

/* ===== Minicart row v2: inline price, compact stepper, trash at qty 1 ===== */
.tnc-cocart-top{display:flex!important;justify-content:space-between;align-items:baseline;gap:.5rem}
.tnc-cocart-name{font-weight:500;color:#1f2b2e;font-size:.93rem;line-height:1.25;min-width:0}
.tnc-cocart-line{font-weight:500;color:#1f2b2e;white-space:nowrap}
.tnc-cocart-each{font-size:.78rem;color:#6b7a7e;margin:.05rem 0 .45rem}
.tnc-cocart-qty{display:inline-flex;align-items:center;border:1px solid var(--tnc-border);border-radius:99px;overflow:hidden;width:max-content}
.tnc-cocart-qty button{width:30px;height:30px;border:0;background:#fff;cursor:pointer;font-size:1rem;color:#33414a;display:inline-flex;align-items:center;justify-content:center;line-height:1;padding:0}
.tnc-cocart-qty button:hover{background:var(--tnc-cream,#f5f1e8)}
.tnc-cocart-dec.is-trash{color:#d9534f}
.tnc-cocart-dec.is-trash:hover{background:#fdecec;color:#c0392b}
.tnc-cocart-q{width:40px!important;min-width:40px;text-align:center;border:0!important;padding:0!important;background:#fff;font-family:var(--tnc-font);box-shadow:none!important;font-size:.92rem}

/* ===== Minicart row v3: stepper inline with 'each', compact + bulletproof hover ===== */
.tnc-cocart-sub{display:flex!important;align-items:center;justify-content:space-between;gap:.6rem;margin-top:.2rem}
.tnc-cocart-sub .tnc-cocart-each{margin:0!important}
.tnc-cocart-qty{display:inline-flex;align-items:center;border:1px solid var(--tnc-border);border-radius:99px;overflow:hidden;width:max-content;flex:0 0 auto}
.tnc-cocart-qty button,.tnc-cocart-qty button:hover,.tnc-cocart-qty button:focus,.tnc-cocart-qty button:active{width:26px!important;height:26px!important;min-height:0!important;border:0!important;cursor:pointer;font-size:.95rem;color:#33414a!important;background:#fff!important;display:inline-flex!important;align-items:center;justify-content:center;line-height:1;padding:0!important;box-shadow:none!important;text-shadow:none!important}
.tnc-cocart-qty button:hover{background:var(--tnc-cream,#f5f1e8)!important}
.tnc-cocart-dec.is-trash,.tnc-cocart-dec.is-trash:focus{color:#d9534f!important;background:#fff!important}
.tnc-cocart-dec.is-trash:hover{color:#c0392b!important;background:#fdecec!important}
.tnc-cocart-q,.tnc-cocart-q:focus{width:34px!important;min-width:34px!important;text-align:center;border:0!important;padding:0!important;background:#fff!important;font-family:var(--tnc-font);font-size:.9rem;box-shadow:none!important;color:#1f2b2e!important}

/* qty input: remove top/bottom padding (beat .woocommerce input[type=text]) */
.tnc-cocart-qty input.tnc-cocart-q,.woocommerce .tnc-cocart-qty input.tnc-cocart-q{padding-top:0!important;padding-bottom:0!important;height:26px!important;line-height:26px!important}

/* ===== [tnc_account_menu] header account widget ===== */
.tnc-acctnav{position:relative;display:inline-flex;align-items:center;font-family:var(--tnc-font)}
.tnc-acctnav-out{gap:.7rem}
.tnc-acctnav-signin{color:var(--tnc-secondary,#33414a)!important;font-weight:500;text-decoration:none!important;font-size:.92rem}
.tnc-acctnav-signin:hover{color:var(--tnc-primary,#102A3C)!important}
.tnc-acctnav-signup{background:var(--tnc-primary,#102A3C);color:#fff!important;font-weight:500;padding:.45rem 1rem;border-radius:99px;text-decoration:none!important;font-size:.9rem;line-height:1}
.tnc-acctnav-signup:hover{filter:brightness(1.08);color:#fff!important}
.tnc-acctnav-trigger{display:inline-flex;align-items:center;gap:.5rem;background:none;border:0;cursor:pointer;font-family:var(--tnc-font);color:var(--tnc-secondary,#33414a);padding:.2rem .3rem}
.tnc-acctnav-av{width:32px;height:32px;border-radius:50%;object-fit:cover;background:#fff;flex:0 0 auto}
.tnc-acctnav-name{font-weight:500;font-size:.92rem;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit}
.tnc-acctnav-caret{transition:transform .15s;flex:0 0 auto}
.tnc-acctnav.is-open .tnc-acctnav-caret{transform:rotate(180deg)}
.tnc-acctnav-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:210px;background:#fff;border:1px solid var(--tnc-border);border-radius:12px;box-shadow:0 14px 34px rgba(16,42,60,.18);padding:.4rem;display:none;z-index:99999}
.tnc-acctnav.is-open .tnc-acctnav-menu{display:block}
.tnc-acctnav-menu a{display:flex;align-items:center;gap:.6rem;padding:.6rem .75rem;color:var(--tnc-secondary,#33414a)!important;text-decoration:none!important;border-radius:8px;font-size:.9rem;font-weight:500}
.tnc-acctnav-menu a:hover{background:var(--tnc-cream,#f5f1e8)!important;color:var(--tnc-secondary,#33414a)!important}
.tnc-acctnav-menu .tnc-acctnav-logout,.tnc-acctnav-menu .tnc-acctnav-logout:hover{color:#d9534f!important}
.tnc-acctnav-menu hr{border:0;border-top:1px solid var(--tnc-border);margin:.3rem 0}

/* ===== Dedicated background-check screen ===== */
.tnc-bgscreen .tnc-bg-intro{color:#33414a;margin:.2rem 0 .9rem;line-height:1.55}
.tnc-bg-steps{margin:0 0 1.1rem 1.15rem;color:#33414a;line-height:1.6}
.tnc-bg-steps li{margin-bottom:.55rem}
.tnc-req{color:#d9534f}

/* ===== [tnc_account_menu] fixes: size, weight, hover, alignment ===== */
.tnc-acctnav-trigger{align-items:center}
.tnc-acctnav-av{width:26px!important;height:26px!important}
.tnc-acctnav-name{font-weight:500!important;font-size:.9rem;line-height:1;color:var(--tnc-secondary,#33414a)}
.tnc-acctnav-menu a{font-weight:500!important;justify-content:flex-start}
.tnc-acctnav-menu a,.tnc-acctnav-menu a:link,.tnc-acctnav-menu a:visited,.tnc-acctnav-menu a:hover,.tnc-acctnav-menu a:focus,.tnc-acctnav-menu a:active{color:var(--tnc-secondary,#33414a)!important;text-decoration:none!important}
.tnc-acctnav-menu a:hover,.tnc-acctnav-menu a:focus{background:var(--tnc-cream,#f5f1e8)!important}
.tnc-acctnav-menu .tnc-acctnav-logout,.tnc-acctnav-menu .tnc-acctnav-logout:hover,.tnc-acctnav-menu .tnc-acctnav-logout:focus{color:#d9534f!important;background:#fdecec!important}
.tnc-acctnav-menu .tnc-acctnav-logout:hover{background:#fdecec!important}

/* ===== Cleaner profile: sticky book/message bottom bar ===== */
.tnc-vp-stickybar{position:fixed;left:0;right:0;bottom:0;z-index:9000;background:#fff;border-top:1px solid var(--tnc-border);box-shadow:0 -2px 16px rgba(16,42,60,.12);transform:translateY(115%);transition:transform .25s ease}
.tnc-vp-stickybar.is-shown{transform:none}
.tnc-vp-stickybar-in{max-width:1120px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1.1rem;padding-bottom:calc(.7rem + env(safe-area-inset-bottom,0px))}
.tnc-vp-sb-name{font-weight:500;color:#1f2b2e;line-height:1.2}
.tnc-vp-sb-from{font-size:.85rem;color:#586E86;font-weight:500}
.tnc-vp-sb-actions{display:flex;gap:.6rem;flex:0 0 auto}
.tnc-vp-stickybar .tnc-btn{width:auto!important;padding:.62rem 1.3rem!important;margin:0!important;display:inline-block}
@media(max-width:520px){.tnc-vp-sb-from{display:none}.tnc-vp-sb-name{font-size:.95rem}.tnc-vp-stickybar .tnc-btn{padding:.55rem .95rem!important;font-size:.9rem}.tnc-vp-stickybar-in{padding:.6rem .8rem}}

/* ===== Account-nav: indicators + alignment ===== */
.tnc-acctnav,.tnc-acctnav-in,.tnc-acctnav-out{display:inline-flex!important;align-items:center;gap:.45rem;vertical-align:middle;line-height:1}
.tnc-acctnav-ind{position:relative;display:inline-flex;align-items:center;justify-content:center;color:var(--tnc-secondary,#33414a)!important;padding:.3rem;border-radius:8px;text-decoration:none!important;flex:0 0 auto}
.tnc-acctnav-ind:hover,.tnc-acctnav-ind:focus{background:var(--tnc-cream,#f5f1e8)!important;color:var(--tnc-secondary,#33414a)!important}
.tnc-acctnav-ind .tnc-dico{width:20px;height:20px;display:block}
.tnc-acctnav-badge{position:absolute;top:-1px;right:-1px;min-width:15px;height:15px;padding:0 3px;border-radius:8px;background:#d9534f;color:#fff;font-size:.6rem;font-weight:500;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #fff;line-height:1}
.tnc-acctnav-trigger{display:inline-flex;align-items:center;gap:.45rem;line-height:1}
.tnc-acctnav-trigger .tnc-acctnav-av{display:block}
.tnc-acctnav-caret{display:block}

/* ===== Account-nav: notification bell (dropdown) in header ===== */
.tnc-bell-empty{padding:1rem .85rem;color:#7a8487;font-size:.85rem;text-align:center}
.tnc-acctnav-in .tnc-bell-wrap{margin-left:0;display:inline-flex;align-items:center}
.tnc-acctnav-in .tnc-bell{padding:.3rem;border-radius:8px}
.tnc-acctnav-in .tnc-bell:hover{background:var(--tnc-cream,#f5f1e8)}
.tnc-acctnav-in .tnc-bell-menu{top:40px}

/* ===== Account nav v2: chip trigger, dropdown nav w/ icons, viewing-as switch ===== */
.tnc-acctnav-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .55rem;border-radius:999px;background:transparent;border:1px solid transparent;cursor:pointer;line-height:1}
.tnc-acctnav-chip:hover,.tnc-acctnav.is-open .tnc-acctnav-chip{background:var(--tnc-cream,#f5f1e8);border-color:var(--tnc-border,#e6e1d7)}
.tnc-acctnav-meta{display:flex;flex-direction:column;line-height:1.12;text-align:left}
.tnc-acctnav-sub{font-size:.62rem;letter-spacing:.04em;text-transform:uppercase;color:#9aa1a4;font-weight:500;margin-top:1px}
.tnc-acctnav-in .tnc-acctnav-av{width:30px!important;height:30px!important}
/* dropdown anchored under the chip (left edge) */
.tnc-acctnav-in .tnc-acctnav-menu{left:0;right:auto;min-width:240px}
/* viewing-as toggle in dropdown */
.tnc-acctnav-switch{padding:.45rem .65rem .15rem}
.tnc-acctnav-switch-lbl{display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;color:#9aa1a4;font-weight:500;margin-bottom:.35rem}
.tnc-acctnav-switch-btns{display:inline-flex;width:100%;background:#efeae0;border-radius:999px;padding:3px;gap:2px}
.tnc-acctnav-switch-btns a{flex:1;text-align:center;padding:.35rem .6rem;border-radius:999px;font-size:.85rem;font-weight:500;color:#4a565b!important;text-decoration:none!important}
.tnc-acctnav-switch-btns a:hover{color:var(--tnc-secondary,#33414a)!important}
.tnc-acctnav-switch-btns a.is-on,.tnc-acctnav-switch-btns a.is-on:hover{background:var(--tnc-secondary,#33414a);color:#fff!important}
/* dropdown item icons */
.tnc-acctnav-menu a svg,.tnc-acctnav-menu a .tnc-dico{width:18px;height:18px;flex:0 0 auto;color:#8a9196}
.tnc-acctnav-menu .tnc-acctnav-logout svg{color:#d9534f}
/* notification bell must NOT turn white on hover/focus/active */
.tnc-acctnav-in .tnc-bell{color:var(--tnc-secondary,#33414a)!important;background:transparent}
.tnc-acctnav-in .tnc-bell:hover,.tnc-acctnav-in .tnc-bell:focus,.tnc-acctnav-in .tnc-bell:active{color:var(--tnc-secondary,#33414a)!important;background:var(--tnc-cream,#f5f1e8)!important}
.tnc-acctnav-in .tnc-bell svg,.tnc-acctnav-in .tnc-bell:hover svg,.tnc-acctnav-in .tnc-bell:focus svg,.tnc-acctnav-in .tnc-bell:active svg{color:var(--tnc-secondary,#33414a)!important;stroke:currentColor!important}

/* ===== TNFC-ACCTNAV-V2 : header account nav + jobs pills + profile photos =====
   The active theme forces border-radius:3px and padding:8px 16px on ALL buttons,
   which squashes our pill toggles and the header chip. These rules restore intent. */

/* Jobs view: Calendar/List toggle + status filter pills = restore pill shape */
.tnc-jv-toggle{border-radius:99px!important}
.tnc-jv-toggle .tnc-jv-btn{border-radius:99px!important;padding:.4rem 1.15rem!important;height:auto!important}
.tnc-inbox-filters .tnc-inbox-pill{border-radius:99px!important;padding:.4rem .9rem!important;height:auto!important}

/* Account nav: layout — max-width 100%, stay inline, match Help item (13.6px / #102A3C) */
.tnc-acctnav.tnc-acctnav-in{max-width:100%!important;flex-wrap:nowrap;gap:.35rem;align-items:center;font-size:13.6px;line-height:1;color:#102A3C}
.tnc-acctnav-in .tnc-acctnav-trigger.tnc-acctnav-chip{border-radius:999px!important;padding:.2rem .45rem!important;height:auto!important;gap:.4rem}
.tnc-acctnav-in .tnc-acctnav-av{width:20px!important;height:20px!important;background:transparent!important}
.tnc-acctnav-in .tnc-acctnav-meta{min-width:0}
.tnc-acctnav-in .tnc-acctnav-name{font-size:13.6px!important;color:#102A3C!important;font-weight:500!important;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.15}
.tnc-acctnav-in .tnc-acctnav-sub{font-size:9px;line-height:1.1}
.tnc-acctnav-in .tnc-acctnav-caret{width:14px;height:14px;color:#102A3C!important;flex:0 0 auto}

/* Icons identical size + neutralize theme button padding */
.tnc-acctnav-in .tnc-acctnav-ind,
.tnc-acctnav-in .tnc-bell{padding:4px!important;border-radius:8px!important;height:auto!important;display:inline-flex;align-items:center;justify-content:center}
.tnc-acctnav-in .tnc-acctnav-ind .tnc-dico,
.tnc-acctnav-in .tnc-bell svg{width:18px!important;height:18px!important}

/* Hover = text/icon COLOR change, no tan background; fix white caret-on-hover */
.tnc-acctnav-in .tnc-acctnav-chip:hover,
.tnc-acctnav-in.tnc-acctnav.is-open .tnc-acctnav-chip{background:transparent!important;border-color:transparent!important}
.tnc-acctnav-in .tnc-acctnav-chip:hover .tnc-acctnav-name,
.tnc-acctnav-in .tnc-acctnav-chip:hover .tnc-acctnav-sub,
.tnc-acctnav-in .tnc-acctnav-chip:hover .tnc-acctnav-caret,
.tnc-acctnav-in.tnc-acctnav.is-open .tnc-acctnav-caret{color:#586E86!important}
.tnc-acctnav-in .tnc-acctnav-ind:hover,
.tnc-acctnav-in .tnc-bell:hover,
.tnc-acctnav-in .tnc-bell:focus,
.tnc-acctnav-in .tnc-bell:active{background:transparent!important;color:#586E86!important}
.tnc-acctnav-in .tnc-acctnav-ind:hover .tnc-dico,
.tnc-acctnav-in .tnc-bell:hover svg,
.tnc-acctnav-in .tnc-bell:focus svg{color:#586E86!important}

/* Viewing-as toggle: centered items + sidebar light-blue track */
.tnc-acctnav-switch-btns{background:#E4EAF1!important;justify-content:center}
.tnc-acctnav-switch-btns a{justify-content:center;text-align:center;border-radius:999px!important;padding:.35rem .8rem!important;color:#33414a!important}
.tnc-acctnav-switch-btns a.is-on,
.tnc-acctnav-switch-btns a.is-on:hover{background:#586E86!important;color:#fff!important}

/* ALL profile photos: transparent background (no white/tan on the image element) */
.tnc-acctnav-av,.tnc-dash-av,.tnc-topbar-av,.tnc-photo-img,.tnc-photo-prev,
.tnc-vp-avatar,.tnc-vp-avatar-img,.tnc-rev-av,.tnc-rev-head-av,.tnc-rev-recap-av,
.tnc-av,.tnc-book-av,.tnc-rc-av,.tnc-rc-avatar-img,.tnc-mgr-row-av,.tnc-cprofile-av,
.tnc-rebook-av,.tnc-vh-av,.tnc-co-av,.tnc-map-iw-av,.tnc-photo-trigger .tnc-photo-img{background:transparent!important}

/* Keep chip horizontal + avatar round (theme resets button flex-direction and img radius) */
.tnc-acctnav-in .tnc-acctnav-trigger.tnc-acctnav-chip{display:inline-flex!important;flex-direction:row!important;align-items:center!important}
.tnc-acctnav.tnc-acctnav-in{flex-direction:row!important}
.tnc-acctnav-in .tnc-acctnav-av{border-radius:50%!important}
/* ===== /TNFC-ACCTNAV-V2 ===== */

/* Dashboard card: View public profile + Edit profile links */
.tnc-vh-head-links {
  display: flex;
  gap: 1rem;
  align-items: center;
  flex-wrap: wrap;
}
/* Owner-only edit-profile button on public vendor profile */
.tnc-vp-editprofile {
  width: 100%;
  text-align: center;
}

/* [tnc_vendor_search] compact search bar */
.tnc-vsearch {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0.75rem;
  background: #fff;
  border: 1px solid var(--tnc-border);
  border-radius: 14px;
  padding: 1rem 1.1rem;
  box-shadow: 0 8px 24px rgba(16, 42, 60, 0.06);
}
.tnc-vsearch-field {
  flex: 1 1 160px;
  min-width: 0;
}
.tnc-vsearch-field > label {
  display: block;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-weight: 700;
  color: #8a949a;
  margin-bottom: 0.3rem;
}
.tnc-vsearch-ctl {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  border: 1.5px solid var(--tnc-border);
  border-radius: 10px;
  padding: 0 0.7rem;
  background: #fff;
}
.tnc-vsearch-ctl select,
.tnc-vsearch-ctl input {
  border: 0 !important;
  background: transparent !important;
  padding: 0.6rem 0 !important;
  width: 100%;
  font-family: var(--tnc-font);
}
.tnc-vsearch-btn {
  flex: 0 0 auto;
}
@media (max-width: 640px) {
  .tnc-vsearch-field {
    flex: 1 1 100%;
  }
  .tnc-vsearch-btn {
    width: 100%;
  }
}

/* Chat image attachment */
.tnc-msg-attach {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  color: var(--tnc-secondary, #33414a);
  cursor: pointer;
}
.tnc-msg-attach:hover {
  background: var(--tnc-cream, #f5f1e8);
}
.tnc-msg-form.is-uploading .tnc-msg-attach {
  opacity: 0.5;
  pointer-events: none;
}
.tnc-msg-bubble.has-img {
  padding: 4px;
  background: transparent !important;
}
.tnc-msg-imglink {
  display: block;
}
.tnc-msg-img {
  display: block;
  max-width: min(260px, 70vw);
  max-height: 320px;
  width: auto;
  height: auto;
  border-radius: 12px;
  object-fit: cover;
}

/* Archive links (conversation header + booking detail topbar) */
.tnc-msg-archive {
  flex: 0 0 auto;
  margin-left: auto;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--tnc-accent, #586e86) !important;
  text-decoration: none !important;
  padding: 0.3rem 0.7rem;
  border: 1px solid var(--tnc-border);
  border-radius: 999px;
  white-space: nowrap;
}
.tnc-msg-archive:hover {
  background: var(--tnc-cream, #f5f1e8);
}
.tnc-bk-topbar-right {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
}
.tnc-bk-topbar-right .tnc-msg-archive {
  margin-left: 0;
}

/* [tnc_recent_reviews] — recent 4-star+ reviews linking to vendor profiles */
.tnc-rr-list {
  display: grid;
  grid-template-columns: repeat(var(--tnc-rr-cols, 3), minmax(0, 1fr));
  gap: 1rem;
}
.tnc-rr {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--tnc-border);
  border-radius: 14px;
  padding: 1.1rem 1.2rem;
  text-decoration: none !important;
  color: inherit;
  transition: box-shadow 0.15s ease, transform 0.15s ease;
}
.tnc-rr:hover {
  box-shadow: 0 12px 30px rgba(16, 42, 60, 0.1);
  transform: translateY(-2px);
}
.tnc-rr-stars {
  color: #e0a93b;
  letter-spacing: 1px;
  font-size: 0.95rem;
  margin-bottom: 0.45rem;
}
.tnc-rr-text {
  margin: 0 0 0.9rem;
  color: #33414a;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.tnc-rr-foot {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-top: auto;
}
.tnc-rr-av {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  object-fit: cover;
  flex: 0 0 auto;
  background: transparent;
}
.tnc-rr-meta {
  display: flex;
  flex-direction: column;
  min-width: 0;
  line-height: 1.25;
}
.tnc-rr-author {
  font-weight: 700;
  color: #1f2b2e;
  font-size: 0.9rem;
}
.tnc-rr-vendor {
  font-size: 0.8rem;
  color: #6b7a7e;
}
@media (max-width: 720px) {
  .tnc-rr-list {
    grid-template-columns: 1fr;
  }
}

/* Search-bar selects: custom caret instead of the native dropdown control */
.tnc-vsearch-ctl select,
.tnc-srch-ctl select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2333414a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat: no-repeat;
  background-position: right 0.1rem center;
  background-size: 15px 15px;
  padding-right: 1.35rem !important;
  cursor: pointer;
}
.tnc-svc-led {
  flex: 0 0 auto;
}

/* Collapsible panels: the [hidden] attribute must beat the panel's own display
   rule, otherwise they ignore "hidden" and start expanded. */
.tnc-custom-hours[hidden],
.tnc-hol-grid[hidden],
.tnc-cust-hrs[hidden],
.tnc-timeoff[hidden],
#tnc-custom-hol[hidden],
#tnc-custom-hours[hidden],
#tnc-holidays[hidden],
#tnc-timeoff[hidden] {
  display: none !important;
}

/* The [hidden] attribute must always win inside the plugin UI — several panels
   and fields set their own display (flex/grid) which otherwise overrides it. */
[class*="tnc-"][hidden] {
  display: none !important;
}

/* Archived folder pill — sits inline with the status filter pills */
.tnc-pill-arch {
  text-decoration: none !important;
  margin-left: 0.35rem;
}

/* Booking report bar: "Report an issue" + "Archive" inline, centered, plain text */
.tnc-bk-reportbar {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.4rem;
  flex-wrap: wrap;
}
a.tnc-bk-report-link {
  text-decoration: none !important;
}

/* Jobs calendar — interactive availability */
.tnc-cal-hint {
  margin: 0 0 0.6rem;
  font-size: 0.82rem;
  color: #8a949a;
}
.tnc-cal-cell[data-date] {
  cursor: pointer;
}
.tnc-cal-cell[data-date]:not(.is-off):not(.is-loading):hover {
  background: var(--tnc-cream, #f5f1e8);
}
.tnc-cal-cell.is-off {
  background: repeating-linear-gradient(-45deg, #f4f1ec, #f4f1ec 6px, #e6e2d8 6px, #e6e2d8 12px);
}
.tnc-cal-cell.is-off .tnc-cal-dnum {
  color: #9aa1a4;
}
.tnc-cal-off {
  display: block;
  margin-top: 0.1rem;
  font-size: 0.6rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #9aa1a4;
}
.tnc-cal-cell.is-past {
  opacity: 0.5;
  cursor: default;
}
.tnc-cal-cell.is-loading {
  opacity: 0.45;
  pointer-events: none;
}

/* Jobs calendar availability modal */
.tnc-cal-cell {
  position: relative;
}
.tnc-cal-sp {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--tnc-accent, #7e9965);
}
.tnc-cal-modal-date {
  margin: 0 0 0.8rem;
}
.tnc-cal-seg {
  display: inline-flex;
  background: #efeae0;
  border-radius: 999px;
  padding: 3px;
  margin: 0 0 1rem;
}
.tnc-cal-seg-btn {
  border: 0 !important;
  background: transparent !important;
  padding: 0.4rem 1.1rem !important;
  border-radius: 999px !important;
  font-weight: 600;
  cursor: pointer;
  color: #4a565b;
}
.tnc-cal-seg-btn.is-on {
  background: var(--tnc-primary, #586e86) !important;
  color: #fff;
}
.tnc-cal-hours {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.7rem;
}
.tnc-cal-hours select {
  flex: 1;
}
.tnc-cal-modal-actions {
  margin-top: 1.2rem;
}

/* Branded inputs inside modals/card boxes (calendar popup, report, etc.) */
.tnc-card-box input[type="text"],
.tnc-card-box input[type="number"],
.tnc-card-box input[type="email"],
.tnc-card-box input[type="tel"],
.tnc-card-box input[type="date"],
.tnc-card-box input[type="search"],
.tnc-card-box select,
.tnc-card-box textarea {
  border: 1.5px solid var(--tnc-border) !important;
  border-radius: 10px !important;
  padding: 0.6rem 0.75rem !important;
  background-color: #fff !important;
  font-family: var(--tnc-font) !important;
  color: var(--tnc-text) !important;
  font-size: 0.95rem !important;
  width: 100%;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.tnc-card-box input:focus,
.tnc-card-box select:focus,
.tnc-card-box textarea:focus {
  outline: none !important;
  border-color: var(--tnc-primary, #586e86) !important;
  box-shadow: 0 0 0 3px rgba(88, 110, 134, 0.15) !important;
}
.tnc-card-box select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2333414a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat: no-repeat;
  background-position: right 0.6rem center;
  background-size: 14px 14px;
  padding-right: 1.7rem !important;
  cursor: pointer;
}
.tnc-cal-hours select {
  width: auto;
  flex: 1;
}

/* Account settings inline forms */
.tnc-acct-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 0.4rem;
}
.tnc-form-msg {
  font-size: 0.9rem;
  font-weight: 600;
}
.tnc-form-msg.is-ok {
  color: #3f7d4f;
}
.tnc-form-msg.is-err {
  color: #d9534f;
}

/* Manager content: AJAX tag/category select */
.tnc-form-sub {
  margin: 1.6rem 0 0.6rem;
  font-family: var(--tnc-heading);
  color: var(--tnc-secondary);
  font-weight: 600;
  border-top: 1px solid var(--tnc-border);
  padding-top: 1rem;
}
.tnc-tagselect {
  position: relative;
}
.tnc-tagselect-control {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem;
  border: 1.5px solid var(--tnc-border);
  border-radius: 10px;
  padding: 0.4rem 0.5rem;
  background: #fff;
}
.tnc-tagselect-control:focus-within {
  border-color: var(--tnc-primary, #586e86);
  box-shadow: 0 0 0 3px rgba(88, 110, 134, 0.15);
}
.tnc-tagselect-pills {
  display: contents;
}
.tnc-tagpill {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  background: var(--tnc-cream, #f4f0e9);
  color: var(--tnc-secondary, #102a3c);
  border-radius: 999px;
  padding: 0.2rem 0.3rem 0.2rem 0.65rem;
  font-size: 0.85rem;
  font-weight: 600;
}
.tnc-tagpill-x {
  border: 0 !important;
  background: transparent !important;
  cursor: pointer;
  color: #8a949a;
  font-size: 1rem;
  line-height: 1;
  padding: 0 0.2rem !important;
}
.tnc-tagpill-x:hover {
  color: #d9534f;
}
.tnc-tagselect-q {
  flex: 1;
  min-width: 120px;
  border: 0 !important;
  outline: none !important;
  background: transparent !important;
  padding: 0.3rem 0.2rem !important;
  font-family: var(--tnc-font);
}
.tnc-tagselect-menu {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  z-index: 50;
  background: #fff;
  border: 1px solid var(--tnc-border);
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(16, 42, 60, 0.14);
  overflow: hidden;
  max-height: 240px;
  overflow-y: auto;
}
.tnc-tagselect-opt {
  display: block;
  width: 100%;
  text-align: left;
  border: 0 !important;
  background: #fff !important;
  padding: 0.55rem 0.8rem !important;
  cursor: pointer;
  font-family: var(--tnc-font);
  color: var(--tnc-text);
}
.tnc-tagselect-opt:hover {
  background: var(--tnc-cream, #f4f0e9) !important;
}
.tnc-tagselect-add {
  color: var(--tnc-primary, #586e86);
  font-weight: 600;
}

/* ===== Cleaner, more professional typography ===== */
/* Panel headings: smaller, left-aligned, less heavy (was 1.8rem centered) */
.tnc-form .tnc-form-h {
  font-size: 1.3rem;
  font-weight: 600;
  text-align: left;
  line-height: 1.25;
  margin: 0 0 1rem;
}
.tnc-mgr-h4 {
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.02em;
}
/* Soften over-bold body text */
.tnc-bk-svc,
.tnc-vh-job-svc,
.tnc-bk-row-top .tnc-bk-svc,
.tnc-thread-name,
.tnc-mgr-row-name {
  font-weight: 600;
}

/* Manager Accounts filters */
.tnc-mgr-search {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}
.tnc-mgr-search input[type="search"] {
  flex: 1 1 200px;
}
.tnc-mgr-filter {
  border: 1.5px solid var(--tnc-border) !important;
  border-radius: 10px !important;
  padding: 0.55rem 1.8rem 0.55rem 0.7rem !important;
  background-color: #fff !important;
  font-family: var(--tnc-font) !important;
  color: var(--tnc-text) !important;
  font-size: 0.92rem !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2333414a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat: no-repeat;
  background-position: right 0.55rem center;
  background-size: 13px 13px;
  cursor: pointer;
}

/* Manager product manager */
.tnc-prod-add {
  margin-bottom: 1.6rem;
}
.tnc-prod-row {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.8rem 0;
  border-bottom: 1px solid var(--tnc-border);
}
.tnc-prod-row:last-child {
  border-bottom: 0;
}
.tnc-prod-main {
  flex: 1;
  min-width: 0;
}
.tnc-prod-name {
  font-weight: 600;
  color: #1f2b2e;
  margin-bottom: 0.45rem;
}
.tnc-prod-fields {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
}
.tnc-prod-f {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.85rem;
  color: #5a6b70;
}
.tnc-prod-f input {
  width: 84px;
  padding: 0.35rem 0.5rem !important;
  border: 1.5px solid var(--tnc-border) !important;
  border-radius: 8px !important;
}


/* ===== Typography refinement v3 — lighter & smaller (Nick: "too big and fat") ===== */
.tnc-form .tnc-form-h{font-size:1.12rem;font-weight:500;margin-bottom:1.05rem}
.tnc-vh .tnc-form-h{font-size:1.05rem!important}
.tnc-greet-hi{font-size:1.14rem;font-weight:500}
.tnc-home-h{font-size:1.06rem;font-weight:500}
.tnc-vh-name{font-size:1.06rem;font-weight:500}
.tnc-res-h{font-size:1.2rem}
.tnc-res-title{font-size:1.34rem;font-weight:500}
.tnc-onb-h{font-size:1.3rem}
.tnc-dash-title{font-size:1.16rem}
.tnc-mgr-h4{font-weight:500}
.tnc-form-sub{font-weight:500}
.tnc-earn-amt{font-weight:500;font-size:1.34rem}
.tnc-vp-name{font-size:1.55rem}
.tnc-vp-stat b{font-size:1.4rem}
.tnc-vp-from strong{font-size:1.2rem}
.tnc-vp-sec h3{font-size:1.16rem}
/* tame heavy body bold throughout the dashboard */
.tnc-dash-body strong,.tnc-form strong,.tnc-dash-id-txt strong{font-weight:500}
.tnc-mgr-row-name,.tnc-prod-name,.tnc-mgr-row .tnc-mgr-row-name{font-weight:500}
.tnc-dash-nav a{font-weight:500}

/* ===== Manager product manager — table, modal, switch (v0.97.21) ===== */
.tnc-prod-toolbar{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin:.5rem 0 1rem}
.tnc-prod-searchbox{flex:1 1 240px;position:relative;display:flex;align-items:center}
.tnc-prod-searchbox svg{position:absolute;left:.7rem;color:#8a979b;pointer-events:none}
.tnc-prod-searchbox input{width:100%;padding:.5rem .8rem .5rem 2.1rem;border:1px solid var(--tnc-border);border-radius:9px;background:#fff;font-family:var(--tnc-font)}
.tnc-prod-fvis,.tnc-prod-sort{padding:.5rem .7rem;border:1px solid var(--tnc-border);border-radius:9px;background:#fff;font-size:.86rem;color:var(--tnc-secondary);font-family:var(--tnc-font)}
.tnc-prod-tablewrap{overflow-x:auto;border:1px solid var(--tnc-border);border-radius:12px}
.tnc-prod-table{width:100%;border-collapse:collapse;font-size:.92rem}
.tnc-prod-table thead th{text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#8a979b;font-weight:500;padding:.55rem .7rem;background:#f8faf8;border-bottom:1px solid var(--tnc-border)}
.tnc-prod-table .tnc-pth-c{text-align:center}
.tnc-prod-table .tnc-pth-r{text-align:right}
.tnc-prod-table .tnc-pth-img{width:52px}
.tnc-prod-trow{border-bottom:1px solid var(--tnc-border)}
.tnc-prod-trow:last-child{border-bottom:0}
.tnc-prod-trow:hover{background:#f8faf8}
.tnc-prod-trow>td{padding:.5rem .7rem;vertical-align:middle}
.tnc-pt-thumb{width:40px;height:40px;border-radius:8px;object-fit:cover;background:#fff;display:block}
.tnc-pt-title{font-weight:500;color:#1f2b2e;display:block;line-height:1.25}
.tnc-pt-cats{font-size:.74rem;color:#9aa7ad}
.tnc-pt-price{white-space:nowrap;color:#33414a}
.tnc-pt-sale{color:#2f7d52;font-weight:500}
.tnc-pt-was{color:#a4adb0;margin-left:.25rem;font-size:.85em}
.tnc-pt-stock{color:#5a6b70}
.tnc-pt-vis{text-align:center}
.tnc-vis-toggle{background:none;border:0;cursor:pointer;padding:.25rem;border-radius:8px;line-height:0;transition:background .15s}
.tnc-vis-toggle.is-on{color:#2f7d52}
.tnc-vis-toggle.is-off{color:#b0444a}
.tnc-vis-toggle:hover{background:#eef2ee}
.tnc-pt-act{text-align:right;white-space:nowrap}
.tnc-prod-view{margin-left:.55rem;font-size:.85rem;color:var(--tnc-primary);text-decoration:none}
.tnc-prod-view:hover{text-decoration:underline}
.tnc-prod-noresult{color:#8a979b;padding:1rem .2rem}
.tnc-prod-emptyrow td{padding:1.3rem .7rem;color:#8a979b;text-align:center}
.tnc-prod-wrap .tnc-form-headrow{margin:.2rem 0 .3rem}
.tnc-prod-addbtn{width:auto!important;flex:0 0 auto;margin-top:0!important;padding:.5rem 1.15rem!important;font-size:.88rem!important}
.tnc-prod-toolbar{margin:1rem 0 1.1rem}
/* slim, light Edit button + light View link in the actions cell */
.tnc-pt-act{display:flex;justify-content:flex-end;align-items:center;gap:.15rem}
.tnc-pt-act .tnc-prod-edit{width:auto!important;margin-top:0!important;padding:.3rem .85rem!important;font-size:.8rem!important;font-weight:500;border-width:1px!important}
.tnc-pt-act .tnc-prodlink,.tnc-pt-act .tnc-qv-btn{background:none!important;border:0!important;border-radius:6px!important;padding:.3rem .55rem!important;margin:0!important;color:var(--tnc-primary)!important;font-size:.8rem;font-weight:500;font-family:inherit;cursor:pointer;width:auto!important}
.tnc-pt-act .tnc-prodlink:hover,.tnc-pt-act .tnc-qv-btn:hover{text-decoration:underline;background:none!important}

/* modal */
.tnc-pm-overlay{position:fixed;inset:0;z-index:99999;background:rgba(16,42,60,.45);display:flex;align-items:flex-start;justify-content:center;padding:3vh 1rem;overflow-y:auto}
.tnc-pm-overlay[hidden]{display:none}
body.tnc-pm-open{overflow:hidden}
.tnc-pm-box{background:#fff;border-radius:16px;max-width:660px;width:100%;box-shadow:0 24px 60px rgba(16,42,60,.25);margin:auto}
.tnc-pm-head{display:flex;align-items:center;justify-content:space-between;padding:1.05rem 1.3rem;border-bottom:1px solid var(--tnc-border)}
.tnc-pm-title{margin:0;font-size:1.1rem;font-weight:500;color:var(--tnc-secondary);font-family:var(--tnc-heading)}
.tnc-pm-x{background:none;border:0;font-size:1.6rem;line-height:1;color:#8a979b;cursor:pointer;padding:0 .2rem}
.tnc-pm-body{padding:1.2rem 1.3rem}
.tnc-pm-foot{display:flex;justify-content:flex-end;gap:.6rem;padding:1rem 1.3rem;border-top:1px solid var(--tnc-border)}
.tnc-pm-imgrow{display:flex;gap:1rem;align-items:center;margin-bottom:1.1rem}
.tnc-pm-feat{width:96px;height:96px;border-radius:10px;border:1px solid var(--tnc-border);overflow:hidden;display:flex;align-items:center;justify-content:center;background:#f7f9f7;flex:0 0 auto}
.tnc-pm-feat img{width:100%;height:100%;object-fit:cover}
.tnc-pm-feat-empty{font-size:.76rem;color:#9aa7ad}
.tnc-pm-imgactions{display:flex;flex-direction:column;gap:.45rem;align-items:flex-start}
.tnc-pm-uplabel,.tnc-pm-galup{display:inline-flex;align-items:center;cursor:pointer}
.tnc-pm-gallery{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.55rem}
.tnc-pm-galitem{position:relative;width:56px;height:56px;border-radius:8px;overflow:hidden;border:1px solid var(--tnc-border)}
.tnc-pm-galitem img{width:100%;height:100%;object-fit:cover}
.tnc-pm-galrm{position:absolute;top:1px;right:1px;width:18px;height:18px;border-radius:50%;border:0;background:rgba(16,42,60,.72);color:#fff;font-size:.78rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.tnc-pm-visrow{display:flex;align-items:center;justify-content:space-between;padding:.65rem .9rem;border:1px solid var(--tnc-border);border-radius:10px;margin:.5rem 0 .2rem}
.tnc-pm-vislabel{font-weight:500;color:var(--tnc-secondary);font-size:.9rem}
.tnc-pm-err{background:#fdecec;color:#a0303a;border-radius:8px;padding:.6rem .8rem;font-size:.88rem;margin-top:.7rem}
.tnc-pm-body .tnc-row2 .tnc-field{justify-content:flex-end}
.tnc-pm-body .tnc-row2 .tnc-field>label{min-height:1.2rem}
/* product tagselect (modal) */
.tnc-ptagsel{position:relative}
.tnc-ptagsel .tnc-tagselect-control{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;border:1px solid var(--tnc-border);border-radius:9px;padding:.35rem .5rem;background:#fff;min-height:42px}
.tnc-ptagsel .tnc-tagselect-control:focus-within{border-color:var(--tnc-primary);box-shadow:0 0 0 3px rgba(88,110,134,.13)}
.tnc-ptag-pills{display:contents}
.tnc-ptag-q{flex:1;min-width:90px;border:0;outline:0;background:none;padding:.2rem;font-family:var(--tnc-font);font-size:.9rem}
/* switch */
.tnc-switch{display:inline-flex;align-items:center;gap:.55rem;cursor:pointer;margin:0}
.tnc-switch input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.tnc-switch-track{width:42px;height:24px;border-radius:99px;background:#cdd5d8;position:relative;transition:background .15s;flex:0 0 auto}
.tnc-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.tnc-switch input:checked + .tnc-switch-track{background:#2f7d52}
.tnc-switch input:checked + .tnc-switch-track:after{transform:translateX(18px)}
.tnc-switch-state{font-size:.86rem;color:var(--tnc-secondary);font-weight:500;min-width:46px}
@media(max-width:560px){
  .tnc-prod-table thead{display:none}
  .tnc-prod-trow{display:grid;grid-template-columns:48px 1fr auto;grid-template-areas:"img name act" "img price vis" "img stock vis";gap:.1rem .5rem;padding:.6rem;align-items:center}
  .tnc-prod-trow>td{padding:.1rem 0;border:0}
  .tnc-pt-img{grid-area:img}.tnc-pt-name{grid-area:name}.tnc-pt-price{grid-area:price}.tnc-pt-stock{grid-area:stock;font-size:.82rem}
  .tnc-pt-vis{grid-area:vis}.tnc-pt-act{grid-area:act;text-align:right}
  .tnc-pt-price:before{content:"Price: ";color:#9aa7ad;font-size:.8rem}
  .tnc-pt-stock:before{content:"Stock: ";color:#9aa7ad;font-size:.8rem}
}

/* ===== Storefront quick view popup (v0.97.21) ===== */
.tnc-qv-overlay{position:fixed;inset:0;z-index:99999;background:rgba(16,42,60,.5);display:flex;align-items:center;justify-content:center;padding:4vh 1rem;overflow-y:auto}
.tnc-qv-overlay[hidden]{display:none}
body.tnc-qv-open{overflow:hidden}
.tnc-qv-box{position:relative;background:#fff;border-radius:16px;max-width:760px;width:100%;box-shadow:0 24px 60px rgba(16,42,60,.28);margin:auto;padding:1.6rem}
.tnc-qv-x{position:absolute;top:.7rem;right:.9rem;background:none;border:0;font-size:1.7rem;line-height:1;color:#8a979b;cursor:pointer;z-index:2}
.tnc-qv-loading{padding:3rem 1rem;text-align:center;color:#8a979b}
.tnc-qv-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem}
@media(max-width:640px){.tnc-qv-grid{grid-template-columns:1fr}.tnc-qv-box{padding:1.2rem}}
.tnc-qv-mainimg{border-radius:12px;overflow:hidden;background:#f7f9f7;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}
.tnc-qv-mainimg img{width:100%;height:100%;object-fit:cover}
.tnc-qv-thumbs{display:flex;gap:.5rem;margin-top:.6rem;flex-wrap:wrap}
.tnc-qv-thumb{width:52px;height:52px;border-radius:8px;overflow:hidden;border:1.5px solid var(--tnc-border);background:#fff;cursor:pointer;padding:0}
.tnc-qv-thumb.is-on{border-color:var(--tnc-primary)}
.tnc-qv-thumb img{width:100%;height:100%;object-fit:cover}
.tnc-qv-cat{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:#8a979b;font-weight:500;margin-bottom:.3rem}
.tnc-qv-title{font-family:var(--tnc-heading);font-size:1.45rem;color:var(--tnc-secondary);margin:0 0 .5rem;line-height:1.15}
.tnc-qv-price{font-size:1.2rem;color:var(--tnc-secondary);font-weight:500;margin-bottom:.7rem}
.tnc-qv-price del{color:#a4adb0;font-weight:400;font-size:.85em;margin-right:.3rem}
.tnc-qv-price ins{text-decoration:none;color:#2f7d52}
.tnc-qv-desc{color:#4a575c;font-size:.92rem;line-height:1.55;margin-bottom:.9rem}
.tnc-qv-desc p{margin:0 0 .5rem}
.tnc-qv-stock{font-size:.82rem;font-weight:500;margin-bottom:.9rem}
.tnc-qv-stock.is-in{color:#2f7d52}
.tnc-qv-stock.is-out{color:#b0444a}
.tnc-qv-cart{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.tnc-qv-cart--done{opacity:.55;pointer-events:none}
.tnc-qv-qty{display:inline-flex;align-items:center;border:1px solid var(--tnc-border);border-radius:99px;overflow:hidden}
.tnc-qv-qty button{background:none;border:0;width:34px;height:40px;font-size:1.1rem;cursor:pointer;color:var(--tnc-secondary)}
.tnc-qv-qtyin{width:44px;border:0;text-align:center;font-family:var(--tnc-font);-moz-appearance:textfield;padding:0}
.tnc-qv-qtyin::-webkit-inner-spin-button,.tnc-qv-qtyin::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.tnc-qv-added{margin-top:.8rem;font-size:.9rem;color:#2f7d52}
.tnc-qv-added a{margin-left:.5rem;color:var(--tnc-primary);font-weight:500;text-decoration:none}
.tnc-qv-detlink{display:inline-block;margin-top:1rem;font-size:.85rem;color:var(--tnc-primary);text-decoration:none}
.tnc-qv-detlink:hover{text-decoration:underline}
.tnc-qv-btn{display:inline-block;margin:.45rem 0 0;background:#fff;border:1.5px solid var(--tnc-border);color:var(--tnc-secondary);border-radius:99px;padding:.4rem 1rem;font-size:.82rem;font-weight:500;font-family:var(--tnc-font);cursor:pointer;transition:background .15s,border-color .15s}
.tnc-qv-btn:hover{border-color:var(--tnc-primary);background:#f6f9f6}

/* ===== Single product page — brand restyle (v0.97.21) ===== */
.single-product div.product .product_title{font-family:var(--tnc-heading);color:var(--tnc-secondary);font-size:1.9rem;line-height:1.15;font-weight:500}
.single-product div.product p.price,.single-product div.product span.price{color:var(--tnc-secondary);font-weight:500;font-size:1.4rem}
.single-product div.product p.price del,.single-product div.product span.price del{color:#a4adb0;font-weight:400}
.single-product div.product p.price ins,.single-product div.product span.price ins{text-decoration:none;color:#2f7d52}
.single-product .woocommerce-product-gallery__image img,.single-product .woocommerce-product-gallery img{border-radius:12px}
.single-product div.product .woocommerce-product-details__short-description{color:#4a575c;line-height:1.6}
.single-product div.product form.cart .quantity input.qty{border:1px solid var(--tnc-border)!important;border-radius:9px!important;height:auto;padding:.6rem .5rem!important;width:64px}
.single-product .woocommerce-tabs ul.tabs{border-bottom:1px solid var(--tnc-border);padding:0;margin:0 0 1.2rem}
.single-product .woocommerce-tabs ul.tabs:before{display:none}
.single-product .woocommerce-tabs ul.tabs li{background:none!important;border:0!important;border-radius:0!important;margin:0 1.2rem 0 0!important;padding:0!important}
.single-product .woocommerce-tabs ul.tabs li:before,.single-product .woocommerce-tabs ul.tabs li:after{display:none!important}
.single-product .woocommerce-tabs ul.tabs li a{font-family:var(--tnc-font);color:#6b7a7e;font-weight:500;padding:.5rem 0!important;display:inline-block;border-bottom:2px solid transparent}
.single-product .woocommerce-tabs ul.tabs li.active a{color:var(--tnc-secondary);border-bottom-color:var(--tnc-primary)}
.single-product .woocommerce-Tabs-panel h2,.single-product .related.products>h2,.single-product .up-sells>h2{font-family:var(--tnc-heading);color:var(--tnc-secondary);font-weight:500;font-size:1.35rem}
.single-product div.product .woocommerce-product-rating .star-rating{color:var(--tnc-accent,#7E9965)}
.tnc-qv-unavail{color:#8a979b;font-weight:500;font-size:.9rem;margin:.4rem 0 0}

/* ===== Mobile header: hamburger collapses all links into one menu (v0.97.28) ===== */
.tnc-acctnav-in .tnc-mobnav-toggle,.tnc-mobnav-toggle{display:none!important}
.tnc-acctnav-pub{display:none}            /* public links: mobile-only (live in the desktop nav otherwise) */
.tnc-acctnav-mid{display:none}            /* in-menu identity header: mobile-only */
.tnc-acctnav-menu-cta{background:var(--tnc-primary,#102A3C)!important;color:#fff!important;justify-content:center!important;font-weight:500;margin-top:.2rem}
.tnc-acctnav-menu-cta:hover,.tnc-acctnav-menu-cta:focus{filter:brightness(1.07);background:var(--tnc-primary,#102A3C)!important;color:#fff!important}
.tnc-acctnav-mid{align-items:center;gap:.6rem;padding:.5rem .65rem .55rem}
.tnc-acctnav-mid .tnc-acctnav-av{width:34px!important;height:34px!important;background:transparent!important}
.tnc-acctnav-mid-txt{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.tnc-acctnav-mid-txt strong{font-weight:500;font-size:.95rem;color:var(--tnc-secondary,#33414a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}
.tnc-acctnav-mid-txt span{font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;color:#9aa1a4}
@media (max-width:1024px){
  .tnc-acctnav-in .tnc-acctnav-chip{display:none!important}                 /* swap chip -> hamburger */
  .tnc-acctnav-out .tnc-acctnav-signin,.tnc-acctnav-out .tnc-acctnav-signup{display:none!important}
  .tnc-acctnav-in .tnc-mobnav-toggle,.tnc-acctnav-out .tnc-mobnav-toggle{display:inline-flex!important;align-items:center;justify-content:center;background:none;border:0;cursor:pointer;color:var(--tnc-secondary,#33414a);padding:.3rem;border-radius:8px;flex:0 0 auto}
  .tnc-mobnav-toggle:hover{background:var(--tnc-cream,#f5f1e8)}
  .tnc-acctnav-pub{display:block}
  .tnc-acctnav-mid{display:flex;border-bottom:1px solid var(--tnc-border);margin-bottom:.25rem}
  .tnc-acctnav-menu,.tnc-acctnav-in .tnc-acctnav-menu{left:auto!important;right:0;min-width:min(290px,86vw);max-height:80vh;overflow-y:auto}
}

/* ===== Payment methods manager — card actions (v0.97.33) ===== */
.tnc-pm-row{display:flex;align-items:center;gap:.8rem}
.tnc-pm-actions{margin-left:auto;display:flex;align-items:center;gap:.9rem;flex:0 0 auto}
.tnc-pm-mkdef{color:var(--tnc-primary,#586E86)!important;font-size:.85rem;font-weight:600;text-decoration:none!important}
.tnc-pm-mkdef:hover{text-decoration:underline!important}
.tnc-pm-del{color:#b0444a!important;font-size:.85rem;font-weight:600;text-decoration:none!important}
.tnc-pm-del:hover{text-decoration:underline!important}
.tnc-pm-primary-note{color:#8a979b;font-size:.78rem;font-style:italic}

/* Inline card-added confirmation on the booking form */
.tnc-book-cardok{color:#1a7f4b !important;font-weight:500}
.tnc-book-addcard{background:#fff;border:1px solid var(--tnc-navy,#12324f);color:var(--tnc-navy,#12324f)}

/* ===== account deletion (danger zone) ===== */
.tnc-danger-zone{border:1px solid #f0d4d6;background:#fffafa}
.tnc-danger-zone .tnc-form-h{color:#b0444a}
.tnc-btn-danger{background:#b0444a!important;border-color:#b0444a!important;color:#fff!important}
.tnc-btn-danger:hover{filter:brightness(1.07)}
.tnc-mgr-act-danger{color:#b0444a!important}


/* ===== theme-reset pink guard =====
   Hello Elementor's reset.css styles bare links and buttons with a pink (#c36),
   including button:hover/:focus. A theme rollback restored that file once and it
   surfaced as pink tabs, photo borders and close buttons. These rules keep it
   on-brand even if that file comes back. Class-based rules above still win. */
a{color:var(--tnc-primary,#102A3C)}
button:hover,button:focus{background-color:transparent}


/* ===== subtabs match inbox pills ===== */
.tnc-subtabs{border-bottom:none;gap:.4rem;max-width:none;margin:0 0 1.1rem;flex-wrap:wrap}
.tnc-subtab{background:#fff!important;border:1.5px solid var(--tnc-border)!important;border-radius:99px!important;padding:.4rem .9rem!important;font-size:.85rem;font-weight:500;color:#5a6b70!important;cursor:pointer;font-family:var(--tnc-font);margin-bottom:0;height:auto}
.tnc-subtab:hover{background:#f3f4f2!important;color:var(--tnc-secondary)!important;border-color:var(--tnc-border)!important}
.tnc-subtab.is-on,.tnc-subtab.is-on:hover,.tnc-subtab.is-on:focus{background:var(--tnc-primary)!important;border-color:var(--tnc-primary)!important;color:#fff!important}
.tnc-subtab:focus{outline:none}
/* profile photo: no border, no focus ring */
.tnc-photo-trigger,.tnc-photo-trigger:hover,.tnc-photo-trigger:focus,.tnc-photo-trigger:focus-visible{border:none!important;outline:none!important;box-shadow:none!important;background:none!important}

/* ===== manager account row: icon actions + tooltips =====
   Scanning a long list matters more than any single action, so the icons stay
   quiet until you engage with a row. Weight is by consequence: inspect actions
   are borderless grey, state changes tint on hover, delete is always tinted red
   and separated so it can never be hit by accident. */
.tnc-mgr-row-act{display:flex;align-items:center;gap:.15rem;flex:0 0 auto}
.tnc-iact{position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:32px;height:32px;padding:0;border:none!important;border-radius:8px;background:none!important;
  cursor:pointer;color:#7d8b92!important;text-decoration:none!important;opacity:.8;
  transition:background .12s,color .12s,opacity .12s}
.tnc-iact svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.85;
  stroke-linecap:round;stroke-linejoin:round;display:block;transition:stroke-width .12s}
.tnc-iact:hover svg,.tnc-iact:focus-visible svg{stroke-width:2.1}
/* full strength once the row is engaged, so a list of ten reads calmly */
.tnc-mgr-row:hover .tnc-iact,.tnc-mgr-row:focus-within .tnc-iact{opacity:1}
.tnc-iact:hover,.tnc-iact:focus-visible{opacity:1}
.tnc-iact-quiet:hover,.tnc-iact-quiet:focus-visible{background:#e4ebef!important;color:#22303a!important}
.tnc-iact-warn:hover,.tnc-iact-warn:focus-visible{background:#fbe7c4!important;color:#7a5510!important}
.tnc-iact-danger{color:#bd6a70!important}
.tnc-mgr-row:hover .tnc-iact-danger{color:#a83b41!important}
.tnc-iact-danger:hover,.tnc-iact-danger:focus-visible{background:#f9dede!important;color:#7d2a2f!important}
.tnc-iact-sep{width:1px;height:18px;background:var(--tnc-border,#e2e8ec);margin:0 .35rem;flex:0 0 auto}
.tnc-iact[data-tip]::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 7px);left:50%;
  transform:translateX(-50%);background:var(--tnc-secondary,#33414a);color:#fff;font-size:.72rem;
  line-height:1.2;padding:.35rem .55rem;border-radius:6px;white-space:nowrap;opacity:0;
  pointer-events:none;transition:opacity .12s;z-index:30}
.tnc-iact[data-tip]:hover::after,.tnc-iact[data-tip]:focus-visible::after{opacity:1}
.tnc-mgr-row .tnc-inline-form{display:inline-flex;margin:0}
@media(max-width:560px){
  .tnc-iact{width:29px;height:29px;opacity:1}
  .tnc-iact svg{width:16px;height:16px}
  .tnc-iact-sep{margin:0 .2rem}
}

/* ===== inactive / suspended cleaner notice ===== */
.tnc-inactive-notice{border:1px solid #e8d9b0;background:#fdf6e6;color:#6b4f12;border-radius:10px;padding:.85rem 1rem;font-size:.92rem;line-height:1.55}
.tnc-inactive-notice strong{display:block;margin-bottom:.15rem;color:#5a410d}
.tnc-inactive-notice a{color:#5a410d!important;text-decoration:underline!important;font-weight:500}
.tnc-vp-inactive-mini{font-size:.88rem;font-weight:500;color:#6b4f12;background:#fdf6e6;border:1px solid #e8d9b0;border-radius:99px;padding:.4rem .9rem;white-space:nowrap}

/* ===== manager: why a cleaner is not listed ===== */
.tnc-mgr-row-main{flex:1 1 auto;min-width:0}
.tnc-mgr-row-name{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}
.tnc-mgr-row-blockers{display:inline-block;font-size:.74rem;line-height:1.3;color:#8a5f12;background:#fdf6e6;border:1px solid #efe0bd;border-radius:5px;padding:.1rem .4rem;margin-top:.2rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:default}
.tnc-mgr-row .tnc-badge{flex:0 0 auto;white-space:nowrap}
