.sh-tpc{background:#FFFFFF; border:1px solid #E5DDD5; border-radius:18px; margin:32px 0; overflow:hidden; overflow:clip; color:#2D2A26; box-shadow:0 24px 60px -30px rgba(45,42,38,0.45);}
.sh-tpc *{box-sizing:border-box;}
.sh-tpc button{touch-action:manipulation;}
.sh-tpc button:active{transform:scale(0.985);}
.sh-tpc-head{background:linear-gradient(135deg,#26231F 0%,#2D2A26 55%,#3A342C 100%); padding:36px 36px 30px; position:relative; overflow:hidden;}
.sh-tpc-head::after{content:""; position:absolute; top:-70px; right:-40px; width:220px; height:220px; border-radius:50%; background:radial-gradient(circle,rgba(201,167,125,0.22),rgba(201,167,125,0) 70%);}
.sh-tpc-head .sh-tpc-eyebrow{font-size:11px; letter-spacing:2.4px; text-transform:uppercase; color:#C9A77D; margin:0 0 7px;}
#sh-tpc .sh-tpc-head .sh-tpc-band-title{margin:0 0 6px; color:#FFFFFF; font-size:clamp(28px,3.2vw,44px); line-height:1.18; letter-spacing:0.2px;}
.sh-tpc-uline{display:block; width:64px; height:3px; border-radius:2px; margin:10px 0 12px; background:linear-gradient(110deg,#C9A77D 25%,#F0DCB4 50%,#C9A77D 75%); background-size:200% 100%; animation:shTpcSheen 2.8s linear infinite;}
#sh-tpc .sh-tpc-head p{margin:0; color:#B5AEA4; font-size:14px; line-height:1.55; max-width:560px;}
.sh-tpc-steps{display:grid; grid-template-columns:repeat(3,1fr); gap:8px; padding:18px 28px 0;}
.sh-tpc-step-pill{display:grid; grid-template-columns:auto 1fr; gap:8px; align-items:center; border:1px solid #E5DDD5; border-radius:999px; padding:8px 13px; font-size:12px; font-weight:600; color:#8A7F72; background:#FFFFFF; cursor:pointer; transition:border-color .2s, box-shadow .2s; text-align:left;}
.sh-tpc-step-pill:hover:not([disabled]){border-color:#C9A77D;}
.sh-tpc-step-pill[disabled]{opacity:.55; cursor:default;}
.sh-tpc-step-pill .sh-tpc-dot{width:21px; height:21px; border-radius:50%; background:#F5F0EB; color:#8A7F72; font-size:11px; display:grid; place-items:center; transition:background .25s,color .25s;}
.sh-tpc-step-pill.sh-tpc-on{border-color:#2D2A26; color:#2D2A26; box-shadow:0 4px 14px -8px rgba(45,42,38,.5);}
.sh-tpc-step-pill.sh-tpc-on .sh-tpc-dot{background:#2D2A26; color:#FFFFFF;}
.sh-tpc-step-pill.sh-tpc-done{border-color:#C9A77D; color:#5A5045;}
.sh-tpc-step-pill.sh-tpc-done .sh-tpc-dot{background:#C9A77D; color:#2D2A26;}
.sh-tpc-body{display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,0.85fr); gap:26px; padding:22px 28px 28px;}
.sh-tpc-anim{animation:shTpcUp .38s ease both;}
.sh-tpc-panel h4{margin:0 0 4px; font-size:17px; outline:none;}
.sh-tpc-panel .sh-tpc-sub{margin:0 0 16px; font-size:13px; color:#8A7F72; line-height:1.5;}
.sh-tpc-field{margin:0 0 15px;}
.sh-tpc-field > label{display:block; font-size:13px; font-weight:600; margin:0 0 6px;}
.sh-tpc-lightlabel{font-weight:400; color:#8A7F72;}
.sh-tpc-hint{display:block; font-size:12px; color:#8A7F72; margin-top:5px; line-height:1.45;}
.sh-tpc-hint a{color:#5A5045;}
.sh-tpc input[type="number"], .sh-tpc select{width:100%; background:#FBF9F6; border:1px solid #E5DDD5; border-radius:9px; padding:12px 13px; font-size:16px; color:#2D2A26; transition:border-color .2s, box-shadow .2s;}
.sh-tpc input[type="number"]:focus, .sh-tpc select:focus{outline:none; border-color:#C9A77D; box-shadow:0 0 0 3px rgba(201,167,125,0.25); background:#FFFFFF;}
.sh-tpc-2col{display:grid; grid-template-columns:1fr 1fr; gap:12px;}
.sh-tpc-presets{display:grid; grid-template-columns:repeat(3,auto) 1fr; gap:6px; margin-top:7px;}
.sh-tpc-presets button{background:#FFFFFF; border:1px solid #E5DDD5; border-radius:999px; font-size:11px; font-weight:700; color:#5A5045; padding:5px 11px; cursor:pointer; transition:all .2s; white-space:nowrap;}
.sh-tpc-presets button:hover{border-color:#C9A77D;}
.sh-tpc-colls{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:8px;}
.sh-tpc-colls button{background:#FBF9F6; border:1px solid #E5DDD5; border-radius:11px; padding:11px 10px; cursor:pointer; text-align:left; transition:all .2s; color:#2D2A26;}
.sh-tpc-colls button:hover{border-color:#C9A77D; transform:translateY(-1px);}
.sh-tpc-colls button.sh-tpc-sel{background:#FAF6E8; border-color:#C9A77D; box-shadow:inset 0 0 0 1px #C9A77D, 0 6px 14px -10px rgba(201,167,125,.9);}
.sh-tpc-colls .sh-tpc-cn{display:block; font-size:13px; font-weight:700; line-height:1.25; color:#2D2A26;}
.sh-tpc-colls .sh-tpc-cd{display:block; font-size:11px; color:#8A7F72; margin-top:2px; line-height:1.3;}
.sh-tpc-colls .sh-tpc-cp{display:block; font-size:12px; font-weight:700; color:#8A6F4D; margin-top:5px;}
.sh-tpc-cards{display:grid; grid-template-columns:repeat(auto-fit,minmax(105px,1fr)); gap:8px;}
.sh-tpc-cards button{background:#FBF9F6; border:1px solid #E5DDD5; border-radius:11px; padding:11px 8px; cursor:pointer; text-align:center; transition:all .2s; color:#2D2A26;}
.sh-tpc-cards button:hover{border-color:#C9A77D; transform:translateY(-1px);}
.sh-tpc-cards button.sh-tpc-sel{background:#FAF6E8; border-color:#C9A77D; box-shadow:inset 0 0 0 1px #C9A77D, 0 6px 14px -10px rgba(201,167,125,.9);}
.sh-tpc-cards .sh-tpc-ct{display:block; font-size:13px; font-weight:600; line-height:1.25; color:#2D2A26;}
.sh-tpc-cards .sh-tpc-cs{display:block; font-size:11px; color:#8A7F72; margin-top:3px; line-height:1.3;}
.sh-tpc-toggle{display:grid; grid-template-columns:1fr 1fr; gap:8px;}
.sh-tpc-toggle button{background:#FBF9F6; border:1px solid #E5DDD5; border-radius:9px; padding:12px 8px; font-size:13px; font-weight:600; color:#5A5045; cursor:pointer; transition:all .2s;}
.sh-tpc-toggle button.sh-tpc-sel{background:#2D2A26; border-color:#2D2A26; color:#FFFFFF; box-shadow:0 6px 16px -8px rgba(45,42,38,.6);}
.sh-tpc-nav{display:grid; grid-template-columns:auto 1fr; gap:10px; align-items:center; margin-top:20px;}
.sh-tpc-back{background:none; border:none; color:#8A7F72; font-size:13px; font-weight:600; cursor:pointer; padding:10px 4px; text-align:left;}
.sh-tpc-back:hover{color:#2D2A26;}
.sh-tpc-next{background:#2D2A26; border:none; border-radius:9px; color:#FFFFFF; font-size:15px; font-weight:600; padding:15px 18px; cursor:pointer; width:100%; transition:all .22s; box-shadow:0 10px 22px -12px rgba(45,42,38,.8);}
.sh-tpc-next:hover{background:#443F39; transform:translateY(-1px); box-shadow:0 14px 26px -12px rgba(45,42,38,.85);}
.sh-tpc-warn{display:none; background:#F7EFF1; border:1px solid #E8D5DA; border-radius:8px; padding:10px 14px; font-size:13px; color:#5A5045; margin:12px 0 0; line-height:1.5;}
.sh-tpc-receipt-wrap{align-self:start; position:sticky; top:16px;}
.sh-tpc-receipt{position:relative; background:#FDFCF9; border:1px solid #E5DDD5; border-radius:12px 12px 0 0; padding:20px 20px 16px; box-shadow:0 16px 34px -22px rgba(45,42,38,.5); font-variant-numeric:tabular-nums;}
.sh-tpc-receipt::after{content:""; position:absolute; left:0; right:0; bottom:-9px; height:10px; background:linear-gradient(-45deg, transparent 70%, #FDFCF9 72%) 0 0/14px 10px repeat-x, linear-gradient(45deg, transparent 70%, #FDFCF9 72%) 0 0/14px 10px repeat-x; filter:drop-shadow(0 3px 2px rgba(45,42,38,.12));}
.sh-tpc-cat{position:absolute; top:-17px; right:16px; width:52px; height:23px;}
.sh-tpc-rk{font-size:11px; letter-spacing:1.6px; text-transform:uppercase; color:#8A6F4D; margin:0 0 12px; padding-bottom:9px; border-bottom:1.5px dashed #E5DDD5;}
.sh-tpc-rline{display:grid; grid-template-columns:1fr auto; gap:10px; font-size:13px; color:#5A5045; padding:4px 0; transition:background .3s;}
.sh-tpc-rline .sh-tpc-rl2{font-weight:600; color:#2D2A26;}
.sh-tpc-rline.sh-tpc-flash{background:#FAF6E8; border-radius:5px;}
.sh-tpc-rsep{border-top:1.5px dashed #E5DDD5; margin-top:7px; padding-top:9px;}
.sh-tpc-rpromo .sh-tpc-rl1, .sh-tpc-rpromo .sh-tpc-rl2{color:#8A6F4D; font-weight:700;}
.sh-tpc-rtotal{border-top:1.5px dashed #E5DDD5; margin-top:7px; padding-top:10px;}
.sh-tpc-rtotal .sh-tpc-rl1{font-weight:700; color:#2D2A26;}
.sh-tpc-rtotal .sh-tpc-rl2{font-size:19px; font-weight:800;}
.sh-tpc-rfoot{font-size:11px; color:#8A7F72; line-height:1.5; margin:12px 0 0; padding-top:9px; border-top:1.5px dashed #E5DDD5;}
.sh-tpc-rbtns{display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:16px;}
.sh-tpc-copy, .sh-tpc-share{background:rgba(201,167,125,.14); border:1px solid #C9A77D; color:#8A6F4D; border-radius:9px; font-size:12px; font-weight:700; padding:10px 14px; cursor:pointer; transition:all .2s;}
.sh-tpc-copy:hover, .sh-tpc-share:hover{background:rgba(201,167,125,.28);}
.sh-tpc-stats{display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:0 0 14px;}
.sh-tpc-stat{background:#FBF9F6; border:1px solid #E5DDD5; border-radius:12px; padding:14px 12px; transition:transform .2s;}
.sh-tpc-stat:hover{transform:translateY(-2px);}
.sh-tpc-stat .sh-tpc-k{font-size:10px; letter-spacing:1.2px; text-transform:uppercase; color:#8A7F72; margin:0 0 5px;}
.sh-tpc-stat .sh-tpc-v{font-size:23px; font-weight:800; margin:0; line-height:1.1; font-variant-numeric:tabular-nums;}
.sh-tpc-stat .sh-tpc-s{font-size:11px; color:#8A7F72; margin:4px 0 0; line-height:1.35;}
.sh-tpc-stat-hero{background:linear-gradient(135deg,#26231F,#2D2A26 60%,#37312A); border-color:#2D2A26;}
.sh-tpc-stat-hero .sh-tpc-k{color:#C9A77D;}
.sh-tpc-stat-hero .sh-tpc-v{color:#FFFFFF;}
.sh-tpc-stat-hero .sh-tpc-s{color:#B5AEA4;}
.sh-tpc-chart{margin:0 0 14px;}
.sh-tpc-chart .sh-tpc-rl{font-size:11px; letter-spacing:1.2px; text-transform:uppercase; color:#8A7F72; margin:0 0 8px;}
.sh-tpc-chart svg{display:block; width:100%; height:auto; background:linear-gradient(180deg,#F7F2EA,#F2EBDF); border:1px solid #EFE3B8; border-radius:12px; touch-action:pan-y; cursor:grab;}
.sh-tpc-notes{display:grid; gap:8px; margin:0 0 4px;}
.sh-tpc-note-card{display:grid; grid-template-columns:auto 1fr; gap:10px; align-items:start; background:#FBF9F6; border:1px solid #E5DDD5; border-radius:10px; padding:11px 14px;}
.sh-tpc-note-card .sh-tpc-ni{color:#C9A77D; font-size:14px; line-height:1.5;}
.sh-tpc-note-card p{margin:0; font-size:12.5px; color:#5A5045; line-height:1.55;}
.sh-tpc-recos{padding:2px 28px 28px; position:relative;}
.sh-tpc-recos h4{margin:0 0 4px; font-size:19px;}
.sh-tpc-recos .sh-tpc-sub{margin:0 0 16px; font-size:13px; color:#8A7F72; line-height:1.5;}
.sh-tpc-reco-grid{display:grid; grid-template-columns:1fr; gap:14px;}
.sh-tpc-reco{border:1px solid #C9A77D; border-radius:14px; overflow:hidden; background:#FFFFFF; display:grid; grid-template-columns:minmax(0,280px) minmax(0,1fr); transition:transform .25s, box-shadow .25s; box-shadow:0 12px 30px -18px rgba(201,167,125,.95);}
.sh-tpc-reco:hover{transform:translateY(-4px); box-shadow:0 20px 38px -22px rgba(45,42,38,.5);}
.sh-tpc-reco .sh-tpc-imgwrap{position:relative; background:#F5F0EB; overflow:hidden;}
.sh-tpc-reco img{display:block; width:100%; height:100%; min-height:210px; object-fit:cover; transition:transform .45s ease;}
.sh-tpc-reco:hover img{transform:scale(1.05);}
.sh-tpc-badge{position:absolute; top:10px; left:10px; font-size:10px; letter-spacing:1.2px; text-transform:uppercase; font-weight:700; padding:5px 11px; border-radius:999px; background:linear-gradient(110deg,#C9A77D 25%,#EBD5AE 50%,#C9A77D 75%); background-size:200% 100%; animation:shTpcSheen 2.6s linear infinite; color:#2D2A26;}
.sh-tpc-reco-body{padding:16px 18px; display:grid; grid-template-rows:auto auto 1fr auto; gap:7px;}
.sh-tpc-reco-body h5{margin:0; font-size:17px; line-height:1.3;}
.sh-tpc-reco-body .sh-tpc-price{font-size:13px; color:#5A5045; margin:0;}
.sh-tpc-reco-body .sh-tpc-why{font-size:13px; color:#5A5045; line-height:1.55; margin:0;}
.sh-tpc-reco-body a{display:block; text-align:center; background:#2D2A26; color:#FFFFFF; padding:13px 14px; border-radius:9px; text-decoration:none; font-weight:600; font-size:14px; transition:all .2s;}
.sh-tpc-reco-body a:hover{background:#443F39; color:#FFFFFF; transform:translateY(-1px);}
.sh-tpc-fork{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:14px;}
.sh-tpc-fork-card{border-radius:12px; padding:16px 18px; display:grid; grid-template-rows:auto 1fr auto; gap:8px;}
.sh-tpc-fork-card.sh-tpc-fk1{background:#F5F0EB; border:1px solid #E5DDD5;}
.sh-tpc-fork-card.sh-tpc-fk2{background:#FAF6E8; border:1px dashed #C9A77D;}
.sh-tpc-fork-card h6{margin:0; font-size:14px; color:#2D2A26;}
.sh-tpc-fork-card p{margin:0; font-size:12.5px; color:#5A5045; line-height:1.55;}
.sh-tpc-fork-card a{display:block; text-align:center; background:#2D2A26; color:#FFFFFF; padding:11px 14px; border-radius:8px; text-decoration:none; font-weight:600; font-size:13px; transition:all .2s;}
.sh-tpc-fork-card a:hover{background:#443F39; color:#FFFFFF;}
.sh-tpc-fork-card.sh-tpc-fk2 a{background:none; color:#2D2A26; border:1px solid #C9A77D;}
.sh-tpc-fork-card.sh-tpc-fk2 a:hover{background:#FFFFFF;}
.sh-tpc-toast{position:fixed; left:50%; bottom:26px; transform:translateX(-50%) translateY(20px); background:#2D2A26; color:#FFFFFF; font-size:13px; padding:12px 20px; border-radius:999px; opacity:0; pointer-events:none; transition:all .35s; z-index:99; box-shadow:0 14px 34px -12px rgba(0,0,0,.5); max-width:88vw; text-align:center;}
.sh-tpc-toast.sh-tpc-show{opacity:1; transform:translateX(-50%) translateY(0);}
.sh-tpc-promo{margin:14px 0 0; font-size:13px; color:#5A5045; text-align:center; line-height:1.5;}
.sh-tpc-foot{margin:10px 0 0; font-size:11px; color:#8A7F72; text-align:center; line-height:1.5;}
.sh-tpc-foot a{color:#8A7F72;}
.sh-tpc-restart{background:none; border:1px solid #E5DDD5; border-radius:9px; color:#5A5045; font-size:13px; font-weight:600; padding:10px 16px; cursor:pointer; display:block; margin:16px auto 0; transition:all .2s;}
.sh-tpc-restart:hover{border-color:#C9A77D; color:#2D2A26;}
.sh-tpc-cfwrap{position:absolute; inset:0; overflow:hidden; pointer-events:none; border-radius:14px;}
.sh-tpc-cf{position:absolute; top:-14px; width:8px; height:8px; border-radius:2px; animation:shTpcFall 1.5s ease-in forwards;}
.sh-tpc-paused .sh-tpc-uline, .sh-tpc-paused .sh-tpc-badge{animation-play-state:paused;}
@keyframes shTpcSheen{to{background-position:-200% 0;}}
@keyframes shTpcUp{from{opacity:0; transform:translateY(12px);} to{opacity:1; transform:none;}}
@keyframes shTpcFall{0%{transform:translateY(0) rotate(0deg); opacity:1;} 100%{transform:translateY(260px) rotate(560deg); opacity:0;}}
@media (max-width: 760px){
  .sh-tpc{width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); border-radius:0; border-left:none; border-right:none;}
  .sh-tpc-body{grid-template-columns:minmax(0,1fr); padding:18px 16px 22px;}
  .sh-tpc-receipt-wrap{position:static; margin-top:6px;}
  .sh-tpc-2col{grid-template-columns:1fr;}
  .sh-tpc-reco{grid-template-columns:1fr;}
  .sh-tpc-reco img{max-height:220px;}
  .sh-tpc-fork{grid-template-columns:1fr;}
  .sh-tpc-steps{padding:14px 16px 0;}
  .sh-tpc-recos{padding:2px 16px 22px;}
  .sh-tpc-head{padding:22px 18px 18px;}
  .sh-tpc-step-pill span.sh-tpc-lbl{display:none;}
  .sh-tpc-step-pill{grid-template-columns:auto; justify-content:center;}
  .sh-tpc-stats{grid-template-columns:1fr;}
  .sh-tpc-rbtns{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));}
}
@media (prefers-reduced-motion: reduce){
  .sh-tpc *, .sh-tpc *::after{animation:none !important; transition:none !important;}
}
