#repair-flow.ths-repair{
--blue:#0066cc;
--blue2:#0b5ed7;
--bg:#eef4ff;
--card:#ffffff;
--line:rgba(0,0,0,.10);
--text:#0b1b33;
--muted:rgba(11,27,51,.65);
position: relative; margin: 0 auto;
width: calc(100vw - 10px);
max-width: 1600px;
box-sizing: border-box;
padding: 18px 32px;
background: var(--bg);
border: 1px solid var(--line);
border-radius: 0;
} .ths-repair__head{
display:flex;
align-items:flex-start;
justify-content:space-between;
gap:12px;
flex-wrap:wrap;
margin-bottom: 14px;
}
.ths-repair__title{
margin:0;
font-size:28px;
font-weight:900;
color: var(--blue);
}
.ths-repair__crumb{
margin-top:6px;
font-size:14px;
color:#0b5ed7;
font-weight:600;
}
.ths-repair__actions{display:flex;gap:10px;align-items:center}
.ths-btn{
border:1px solid var(--line);
background:#fff;
color: var(--text);
border-radius:5px;
padding:10px 14px;
font-weight:900;
cursor:pointer;
}
.ths-btn--primary{
border-color: rgba(0,102,204,.35);
background: rgba(0,102,204,.10);
color: var(--blue2);
} #repair-flow .ths-repair__grid{
width: 100%;
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr 1.25fr 2.75fr;
gap: 0px;
} .ths-col{
background: var(--card);
border:1px solid var(--line);
border-radius:5px;
padding:12px;
min-width:0;
}
.ths-col__title{
font-weight:900;
color: var(--blue);
font-size:13px;
margin-bottom:10px;
}
.ths-col__list{
display:flex;
flex-direction:column;
gap:8px;
max-height: 460px;
overflow:auto;
padding-right: 4px;
} .rf-item{
border:1px solid rgba(0,0,0,.10);
background:#fff;
border-radius:5px;
padding:10px 10px;
cursor:pointer;
display:flex;
justify-content:space-between;
align-items:center;
gap:10px;
transition: transform .12s ease, border-color .12s ease, background .12s ease;
}
.rf-item:hover{
transform: translateY(-1px);
border-color: rgba(0,102,204,.45);
background: rgba(0,102,204,.06);
}
.rf-item.active{
border-color: rgba(0,102,204,.60);
background: rgba(0,102,204,.12);
}
.rf-name{font-weight:900;font-size:13.5px;color:var(--text)}
.rf-arrow{opacity:.6;font-weight:900}
.ths-right{text-align:right}
.rf-price{font-weight:900;white-space:nowrap}
.ths-muted{color:var(--muted)} #repair-flow .ths-col--parts,
#repair-flow .ths-col--parts .ths-parts{
width: 100%;
}
#repair-flow .ths-parts__table{
width: 100%;
table-layout: fixed;
border-collapse: collapse;
border:1px solid rgba(0,0,0,.08);
border-radius:14px;
overflow:hidden;
}
#repair-flow .ths-parts__table thead th{
background: rgba(0,102,204,.08);
font-weight: 600;
font-size: 15px;
padding: 12px 16px;
color: #1f2937;
text-transform:none;
}
#repair-flow .ths-parts__table th,
#repair-flow .ths-parts__table td{
border-bottom:1px solid rgba(0,0,0,.06);
padding:10px;
font-size:13px;
vertical-align: top;
}
#repair-flow .ths-parts__table thead th:last-child{ width: 160px; }
#repair-flow .ths-parts__table tbody td:first-child{
text-align:left;
padding:12px 16px;
white-space:normal;
word-break:break-word;
}
#repair-flow .ths-parts__table tbody td:last-child{
text-align:right;
padding:12px 16px;
white-space:nowrap;
font-weight:600;
} .rf-note-row td{
padding:14px 10px;
background:#f9fbff;
border-top:1px solid #e6eefc;
}
.rf-note-foot{
display:flex;
align-items:center;
justify-content:center;
gap:8px;
font-size:14px;
font-weight:600;
color: var(--blue);
}
.rf-note-label{ cursor:pointer; }
.rf-note-btn{
width:22px;
height:22px;
border-radius:50%;
border:1.5px solid #ff4d4f;
background:#fff;
color:#ff4d4f;
font-weight:700;
font-size:13px;
line-height:1;
cursor:pointer;
display:flex;
align-items:center;
justify-content:center;
transition: all 0.2s ease;
}
.rf-note-btn:hover{
background:#ff4d4f;
color:#fff;
} .ths-modal[hidden]{display:none !important;}
.ths-modal{
position:fixed;
inset:0;
z-index:99999;
}
.ths-modal__backdrop{
position:absolute;
inset:0;
background: rgba(0,0,0,.35);
}
#rf-note-modal .ths-modal__dialog{
position:relative;
max-width: 720px;
width: calc(100% - 28px);
margin: 8vh auto 0;
background:#fff;
border-radius:14px;
border:1px solid rgba(0,0,0,.10);
overflow:hidden;
}
#rf-note-modal .ths-modal__head{
display:flex;
align-items:center;
justify-content:space-between;
padding:12px 14px;
background: rgba(0,102,204,.06);
border-bottom:1px solid rgba(0,0,0,.08);
}
#rf-note-modal .ths-modal__title{
color:#122033;
font-weight:800;
}
.ths-modal__close{
border:0;
background:transparent;
font-size:26px;
cursor:pointer;
line-height:1;
} #rf-note-body{
padding:14px;
color:#223047;
font-size:14px;
line-height:1.55;
font-weight:450;
white-space: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
#rf-note-body p{ margin: 0 0 10px; color:#3a4a63; }
#rf-note-body p:last-child{ margin-bottom: 0; }
#rf-note-body strong,
#rf-note-body b{ color:#162235; font-weight:700; }
#rf-note-body h1,
#rf-note-body h2,
#rf-note-body h3{
margin: 0 0 10px;
line-height: 1.25;
color:#122033;
}
#rf-note-body ul,
#rf-note-body ol{
margin: 0 0 10px 18px;
padding: 0;
}
#rf-note-body li{ margin: 4px 0; }  @media (min-width: 721px) and (max-width: 1100px){
#repair-flow.ths-repair{
width: 95vw;
max-width: none;
margin-left: auto;
margin-right: auto;
padding: 16px;
box-sizing: border-box;
}
#repair-flow .ths-repair__grid{
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
}
#repair-flow .ths-col__list{
max-height: 300px;
}
#repair-flow .ths-col--parts{
grid-column: 1 / -1;
}
#repair-flow .ths-repair__head{
align-items: stretch;
}
#repair-flow .ths-repair__actions{
width: 100%;
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
gap: 10px;
align-items: center;
}
#repair-flow .ths-repair__search{
width: 100%;
min-width: 0;
display: grid;
grid-template-columns: minmax(0, 1fr) 44px;
gap: 8px;
align-items: center;
flex-wrap: nowrap;
}
#repair-flow .ths-search-wrap{
width: 100%;
min-width: 0;
}
#repair-flow .ths-search{
width: 100%;
min-width: 0;
}
#repair-flow #rf-btn-reset{
min-width: 92px;
white-space: nowrap;
}
} @media (max-width: 720px){
#repair-flow.ths-repair{
width: 100%;
max-width: 100%;
margin-left: 0;
margin-right: 0;
padding: 12px;
box-sizing: border-box;
}
#repair-flow .ths-repair__grid{
grid-template-columns: 1fr;
gap: 10px;
}
#repair-flow .ths-col__list{
max-height: 260px;
}
#repair-flow .ths-repair__actions{
width: 100%;
display: grid;
grid-template-columns: 1fr;
gap: 10px;
}
#repair-flow .ths-repair__search{
width: 100%;
display: grid;
grid-template-columns: minmax(0, 1fr) 44px;
gap: 8px;
align-items: center;
flex-wrap: nowrap;
}
#repair-flow .ths-search-wrap,
#repair-flow .ths-search{
width: 100%;
min-width: 0;
}
#repair-flow #rf-btn-reset{
width: 100%;
}
} .ths-cart{
margin-top:12px;
border:2px solid #22c55e;
border-radius:12px;
background:#f0fdf4;
padding:12px;
}
.ths-cart__head{
display:flex;
align-items:center;
justify-content:space-between;
gap:10px;
margin-bottom:8px;
}
.ths-cart__title{
font-weight:800;
color:#0b1b33;
}
.ths-cart__clear{
border:0;
background:transparent;
color:#0b5ed7;
font-weight:700;
cursor:pointer;
padding:6px 8px;
border-radius:8px;
}
.ths-cart__clear:hover{ background:#eef4ff; }
.ths-cart__empty{
color:rgba(11,27,51,.65);
font-size:13px;
padding:10px 8px;
border:1px dashed rgba(0,0,0,.12);
border-radius:10px;
background:#f7fbff;
}
.ths-cart__items{
list-style:none;
padding:0;
margin:10px 0 8px;
display:none;
max-height:180px;
overflow:auto;
border:1px solid rgba(0,0,0,.08);
border-radius:10px;
}
.ths-cart__item{
display:flex;
align-items:flex-start;
justify-content:space-between;
gap:10px;
padding:10px 12px;
margin:6px;
border-radius:10px;
background:#f8fafc;
border:1px solid rgba(0,0,0,.06);
}
.ths-cart__name{
font-weight:700;
font-size:13px;
color:#0b1b33;
line-height:1.25;
}
.ths-cart__meta{
margin-top:4px;
font-size:12px;
color:rgba(11,27,51,.65);
}
.ths-cart__right{
display:flex;
align-items:center;
gap:10px;
flex-shrink:0;
}
.ths-cart__price{
font-weight:800;
white-space:nowrap;
}
.ths-cart__remove{
width:28px;
height:28px;
border-radius:8px;
border:1px solid rgba(0,0,0,.12);
background:#fff;
cursor:pointer;
line-height:26px;
text-align:center;
font-weight:900;
}
.ths-cart__remove:hover{ background:#fff2f2; border-color:#ffb4b4; }
.ths-cart__totals{
margin-top:10px;
border-top:1px solid rgba(0,0,0,.08);
padding-top:10px;
}
.ths-cart__row{
display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
padding:4px 0;
font-size:13px;
}
.ths-cart__row--total{ font-size:14px; }
.ths-cart__actions{
margin-top:12px;
display:flex;
gap:10px;
}
.ths-btn[disabled]{
opacity:.5;
cursor:not-allowed;
} #rf-parts-body tr{ cursor:pointer; }
#rf-parts-body tr:hover{ background:#eef4ff; }
@media (max-width: 900px){
.ths-cart__actions{ flex-direction:column; }
} .ths-repair__search{
display:flex;
gap:10px;
align-items:center;
flex-wrap:wrap;
}
.ths-search{
width: min(520px, 70vw);
border:1px solid rgba(0,0,0,.12);
border-radius:10px;
padding:10px 12px;
font-size:14px;
outline:none;
background:#fff;
}
.ths-search:focus{
border-color: rgba(0,102,204,.55);
box-shadow: 0 0 0 3px rgba(0,102,204,.10);
}
.ths-suggest{
margin: 8px 0 0;
background:#fff;
border:1px solid rgba(0,0,0,.10);
border-radius:12px;
padding:8px;
}
.ths-suggest .s-item{
padding:10px 10px;
border-radius:10px;
cursor:pointer;
}
.ths-suggest .s-item:hover{ background: rgba(0,102,204,.06); }
.ths-suggest .s-path{
font-size:12px;
color: rgba(11,27,51,.65);
margin-top:2px;
} .ths-mic{
width:44px;
height:44px;
display:inline-flex;
align-items:center;
justify-content:center;
border:1px solid rgba(0,0,0,.12);
background:#fff;
border-radius:10px;
padding:0;
cursor:pointer;
}
.ths-mic__icon{
width:20px;
height:20px;
fill:#0b1b33;
opacity:.85;
}
.ths-mic:hover{ filter:brightness(.98); }
.ths-mic:active{ transform:translateY(1px); }
.ths-mic.is-listening{
border-color: rgba(0,102,204,.45);
box-shadow: 0 0 0 3px rgba(0,102,204,.18);
}
.ths-mic.is-listening .ths-mic__icon{ opacity:1; }  #repair-flow .ths-search{
border: 2px solid #0066cc !important;
} #repair-flow .ths-mic{
border: 2px solid #0066cc !important;
} #repair-flow .ths-repair__search .ths-btn{
border: 2px solid #0066cc !important;
color: #0066cc !important; background: #fff !important; } #repair-flow .ths-repair__search .ths-btn:hover{
background: rgba(0,102,204,.06) !important;
} #repair-flow .ths-search:focus{
box-shadow: 0 0 0 3px rgba(0,102,204,.15) !important;
} #repair-flow .ths-col{
position: relative;
transition: opacity .18s ease, filter .18s ease, transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
#repair-flow .ths-col.rf-locked{
opacity: .42;
filter: grayscale(0.25);
pointer-events: none;
}
#repair-flow .ths-col.rf-active{
opacity: 1;
filter: none;
pointer-events: auto;
border-color: rgba(0,102,204,.55);
box-shadow: 0 0 0 3px rgba(0,102,204,.10);
transform: translateY(-1px);
}
#repair-flow .rf-hint{
padding: 8px 6px;
border: 1px dashed rgba(0,0,0,.14);
border-radius: 10px;
background: #f7fbff;
color: rgba(11,27,51,.65);
font-size: 13px;
line-height: 1.35;
}
#repair-flow .ths-col.rf-active .ths-col__title{ color: var(--blue2); } #rf-parts-body tr.ths-part-hit{
outline: 2px solid rgba(0,102,204,.45);
outline-offset: -2px;
background: rgba(0,102,204,.08);
}
.ths-repair__microcopy{
margin-top:4px;
font-size:14px;
color:rgba(11,27,51,.65);
} #repair-flow .ths-aftertool{ margin-top: 14px; } #repair-flow .ths-trustbar{
display:grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap:10px;
padding:12px;
background:#fff;
border:1px solid rgba(0,0,0,.10);
border-radius:12px;
}
#repair-flow .ths-trustitem{
font-size:13px;
font-weight:700;
color:#14532d; padding:8px 10px;
border-radius:10px;
background:#f0fdf4; border:2px solid #16a34a; text-align:center;
} #repair-flow .ths-info-grid{
margin-top: 12px;
display: grid;
grid-template-columns: 3fr 2fr; gap: 12px;
align-items: stretch;
}
#repair-flow .ths-info-grid > *{ align-self: stretch; }
#repair-flow .ths-card{
background:#fff;
border:1px solid rgba(0,0,0,.10);
border-radius:12px;
padding:14px;
height: 100%;
box-sizing: border-box;
} #repair-flow .ths-card > :first-child{
margin-top: 0 !important;
}
#repair-flow .ths-card__title{
margin: 0 0 10px;
font-weight:900;
color:#0b1b33;
font-size:14px;
} #repair-flow .ths-steps{
margin:0;
padding-left:18px;
color: rgba(11,27,51,.85);
font-size:13.5px;
line-height:1.5;
}
#repair-flow .ths-steps li{ margin: 6px 0; }
#repair-flow .ths-card__note{
margin-top:10px;
display:flex;
flex-wrap:wrap;
align-items:center;
gap:8px;
color: rgba(11,27,51,.70);
font-size:12.5px;
}
#repair-flow .ths-badge{
font-weight:800;
background: rgba(34,197,94,.08);
border:1px solid rgba(34,197,94,.25);
padding:4px 8px;
border-radius:999px;
}
#repair-flow .ths-dot{ opacity:.6; } #repair-flow .ths-contact{
display:flex;
flex-direction:column;
gap:10px;
font-size:13.5px;
color: rgba(11,27,51,.85);
}
#repair-flow .ths-contact__row{
display:flex;
gap:10px;
}
#repair-flow .ths-contact__label{
width:120px;
flex: 0 0 auto;
font-weight:900;
color: rgba(11,27,51,.75);
}
#repair-flow .ths-contact__value{
flex:1;
font-weight:800;
}
#repair-flow .ths-link{
color:#0b5ed7;
text-decoration:none;
font-weight:900;
}
#repair-flow .ths-link:hover{ text-decoration:underline; } #repair-flow .ths-cta{
margin-top:12px;
display:flex;
gap:10px;
}
#repair-flow .ths-cta__btn{
flex:1;
text-align:center;
} #repair-flow .ths-btn--ghost{
border:1px solid rgba(0,0,0,.12);
background:#fff;
color:#0b1b33;
}
#repair-flow .ths-btn--ghost:hover{
background: rgba(0,102,204,.06);
border-color: rgba(0,102,204,.25);
} #repair-flow .ths-minihelp{
margin-top:10px;
font-size:12.5px;
color: rgba(11,27,51,.65);
padding:10px 12px;
border-radius:10px;
background: rgba(0,102,204,.04);
border:1px solid rgba(0,0,0,.08);
} @media (max-width: 1100px){
#repair-flow .ths-trustbar{ grid-template-columns: 1fr; }
#repair-flow .ths-info-grid{ grid-template-columns: 1fr; }
#repair-flow .ths-contact__label{ width:auto; }
} .ths-branches{
margin-top:14px;
background:#fff;
border:1px solid rgba(0,0,0,.10);
border-radius:12px;
padding:14px;
}
.ths-branches__head{
display:flex;
align-items:baseline;
justify-content:space-between;
gap:10px;
margin-bottom:10px;
}
.ths-branches__title{ font-weight:900; color:#0b1b33; }
.ths-branches__sub{ color:rgba(11,27,51,.65); font-size:13px; }
.ths-branches__grid{
display:grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap:10px;
}
.ths-branch{
border:1px solid rgba(0,0,0,.10);
border-radius:12px;
padding:12px;
background:#f8fbff;
}
.ths-branch__name{
font-weight:900;
color:#0066cc;
margin-bottom:6px;
}
.ths-branch__row{
font-size:13px;
color:#0b1b33;
margin:4px 0;
}
.ths-branch__row a{
color:#0b5ed7;
font-weight:700;
text-decoration:none;
}
.ths-branch__row a:hover{ text-decoration:underline; } .ths-branch__actions{
display:flex;
gap:6px;
margin-top:10px;
flex-wrap:wrap; }
.ths-branch__btn{
display:inline-flex;
align-items:center;
justify-content:center;
flex: 1 1 auto; min-width: 0;
padding:7px 9px; border-radius:10px;
border:1px solid rgba(0,0,0,.12);
background:#fff;
font-weight:900;
font-size:12.5px; line-height:1.1;
white-space:nowrap; text-decoration:none;
color:#0b1b33;
}
.ths-branch__btn--primary{
border-color: rgba(0,102,204,.35);
background: rgba(0,102,204,.10);
color:#0b5ed7;
}
.ths-branches__tip{
margin-top:10px;
padding:10px 12px;
border-radius:10px;
border:1px solid rgba(0,0,0,.08);
background:#f7fbff;
color:rgba(11,27,51,.75);
font-size:13px;
}
@media (max-width: 1100px){
.ths-branch__btn{ flex: 1 1 48%; } }
@media (max-width: 900px){
.ths-branches__grid{ grid-template-columns: 1fr; }
} .ths-card__irp{
margin-top:12px;
padding:12px 14px;
border-radius:12px;
background: rgba(0,102,204,.025);
border:1px solid rgba(0,0,0,.08);
}
.ths-irp-title{
font-weight:900;
color:#0b5ed7;
font-size:13.5px;
margin-bottom:8px;
}
.ths-irp-list{
margin:0;
padding-left:18px;
font-size:13.5px;
color:rgba(11,27,51,.85);
line-height:1.5;
}
.ths-irp-list li{ margin:4px 0; }
.ths-irp-note{
margin-top:8px;
font-size:12.5px;
color:rgba(11,27,51,.65);
font-style:italic;
} .ths-trust-title{
grid-column:1/-1;
font-weight:900;
font-size:15px;
margin-bottom:6px;
background: linear-gradient(90deg, #0066cc, #0b5ed7);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
letter-spacing: .2px;
} .ths-bundle-hint{
margin-top:12px;
padding:14px 16px;
border-radius:14px;
background: linear-gradient(135deg, #fff7ed, #fffbeb);
border:2px solid #f59e0b;
color:#92400e;
font-size:15px;
font-weight:800;
display:flex;
align-items:center;
gap:10px;
box-shadow: 0 0 0 3px rgba(245,158,11,.12);
}
.ths-bundle-hint::before{
content:"%";
width:28px;
height:28px;
border-radius:50%;
background:#f59e0b;
color:#fff;
display:inline-flex;
align-items:center;
justify-content:center;
font-weight:900;
margin-right:8px;
}
.ths-bundle-hint span{
color:#b45309;
font-weight:900;
}
.ths-trust-title{
margin-top: 10px; } #ths-initializing-overlay {
display: none;
position: fixed;
top: 0; left: 0;
width: 100%; height: 100%;
background: rgba(0,0,0,0.7);
z-index: 9999;
color: #fff;
text-align: center;
padding-top: 20%;
font-size: 24px;
font-weight: bold;
font-family: sans-serif;
}
.spinner-ring {
display: inline-block;
width: 40px; height: 40px;
border: 4px solid #f3f3f3;
border-top: 4px solid #0073aa;
border-radius: 50%;
animation: spin 1s linear infinite;
margin-bottom: 15px;
}
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } #repair-flow .ths-search-wrap{
position: relative;
display: inline-block;
width: min(520px, 70vw); } #repair-flow .ths-search-wrap .ths-search{
width: 100%;
padding-right: 52px; } #repair-flow .ths-search-wrap .ths-mic.ths-mic--in{
position: absolute;
top: 50%;
right: 8px;
transform: translateY(-50%);
width: 38px;
height: 38px;
border-radius: 10px;
border: 0 !important; background: transparent;
box-shadow: none !important;
padding: 0;
}
#repair-flow .ths-search-wrap .ths-mic.ths-mic--in:hover{
background: rgba(0,102,204,.08);
} #repair-flow .ths-search-wrap::after{
content:"";
position:absolute;
top: 8px;
bottom: 8px;
right: 52px;
width: 1px;
background: rgba(0,0,0,.10);
} #repair-flow .ths-search-wrap .ths-mic.ths-mic--in.is-listening{
background: rgba(0,102,204,.12);
} #repair-flow .ths-btn--icon{
padding: 10px;
width: 44px;
height: 44px;
display:inline-flex;
align-items:center;
justify-content:center;
border: 2px solid #0066cc;
background:#fff;
color:#0066cc;
}
#repair-flow .ths-btn--icon:hover{
background: rgba(0,102,204,.06);
} #repair-flow .ths-search-icon{
width:20px;
height:20px;
fill: currentColor;
}
#repair-flow .ths-search-icon{
width:20px;
height:20px;
stroke: currentColor;
} #repair-flow .ths-repair__search{
gap: 4px; } #repair-flow .ths-search{
border: 2px solid #0066cc;
border-radius: 12px;
padding-right: 56px; height: 44px;
} #repair-flow .ths-mic{
height: 44px;
width: 44px;
border: 0; border-left: 1px solid rgba(0,0,0,.12); border-radius: 0 10px 10px 0;
margin-left: -52px; background: transparent;
} #repair-flow .ths-btn--icon{
height: 44px;
width: 44px;
padding: 0;
border: 2px solid #0066cc;
border-radius: 12px;
color: #0066cc;
background: #fff;
} #repair-flow #rf-btn-reset{
border: 1px solid rgba(0,0,0,.14);
background: #fff;
}
#repair-flow #rf-btn-reset{
border-color: rgba(0,0,0,.12);
color: rgba(11,27,51,.75);
} body.ths-quote-open{ overflow:hidden; } .ths-quote-modal{
position: fixed !important;
inset: 0 !important;
z-index: 2147483000 !important;
}
.ths-quote-modal[hidden]{ display:none !important; }
body.ths-quote-open{ overflow:hidden !important; }
.ths-quote-modal[hidden]{ display:none !important; }
.ths-quote-modal{
position:fixed;
inset:0;
z-index:100000;
}
.ths-quote-modal__backdrop{
position:absolute;
inset:0;
background:rgba(3, 14, 33, .48);
}
.ths-quote-modal__dialog{
position:relative;
width:min(920px, calc(100vw - 28px));
max-height:calc(100vh - 36px);
margin:18px auto;
background:#fff;
border:1px solid rgba(0,102,204,.20);
border-radius:18px;
box-shadow:0 28px 80px rgba(3,14,33,.28);
overflow:hidden;
display:flex;
flex-direction:column;
}
.ths-quote-modal__head{
display:flex;
justify-content:space-between;
align-items:flex-start;
gap:16px;
padding:18px 20px;
background:linear-gradient(135deg, #eef6ff, #ffffff);
border-bottom:1px solid rgba(0,0,0,.08);
}
.ths-quote-modal__eyebrow{
font-size:12px;
font-weight:900;
letter-spacing:.08em;
text-transform:uppercase;
color:#0066cc;
}
.ths-quote-modal__title{
margin-top:4px;
font-size:22px;
line-height:1.15;
font-weight:900;
color:#0b1b33;
}
.ths-quote-modal__close{
width:40px;
height:40px;
border:1px solid rgba(0,0,0,.12);
border-radius:12px;
background:#fff;
color:#0b1b33;
font-size:26px;
line-height:1;
cursor:pointer;
}
.ths-quote-modal__close:hover{ background:#eef4ff; }
.ths-quote-modal__body{
padding:18px 20px 20px;
overflow:auto;
}
.ths-quote-steps{
display:grid;
grid-template-columns:repeat(3, minmax(0,1fr));
gap:10px;
padding:12px 20px;
border-bottom:1px solid rgba(0,0,0,.08);
background:#f8fbff;
}
.ths-quote-step{
display:flex;
align-items:center;
gap:8px;
font-size:13px;
font-weight:900;
color:rgba(11,27,51,.55);
}
.ths-quote-step span{
width:26px;
height:26px;
display:inline-flex;
align-items:center;
justify-content:center;
border-radius:999px;
background:#e5edf7;
color:#64748b;
font-size:12px;
}
.ths-quote-step.is-active{ color:#0066cc; }
.ths-quote-step.is-active span{ background:#0066cc; color:#fff; }
.ths-quote-step.is-done{ color:#15803d; }
.ths-quote-step.is-done span{ background:#22c55e; color:#fff; }
.ths-quote-message{
margin:14px 20px 0;
padding:11px 13px;
border-radius:12px;
font-size:13px;
font-weight:700;
}
.ths-quote-message[hidden]{ display:none !important; }
.ths-quote-message.is-error{ background:#fff1f1; border:1px solid #fecaca; color:#b42318; }
.ths-quote-message.is-success{ background:#f0fdf4; border:1px solid #bbf7d0; color:#15803d; }
.ths-quote-message.is-info{ background:#eef6ff; border:1px solid #bfd8ff; color:#0b4ea2; }
.ths-quote-card{
border:1px solid rgba(0,0,0,.10);
background:#fff;
border-radius:16px;
padding:18px;
}
.ths-quote-card__title{
font-size:18px;
font-weight:900;
color:#0b1b33;
}
.ths-quote-card__sub{
margin-top:4px;
color:rgba(11,27,51,.65);
font-size:14px;
}
.ths-quote-form{
margin-top:16px;
display:grid;
grid-template-columns:repeat(2, minmax(0,1fr));
gap:14px;
}
.ths-quote-field{
display:flex;
flex-direction:column;
gap:7px;
font-size:13px;
font-weight:900;
color:#0b1b33;
}
.ths-quote-field b{ color:#dc2626; }
.ths-quote-field--wide{ grid-column:1 / -1; }
.ths-quote-field input{
width:100%;
height:48px;
padding:0 14px;
border:1px solid rgba(0,0,0,.14);
border-radius:12px;
background:#fff;
font-size:15px;
color:#0b1b33;
outline:none;
box-sizing:border-box;
}
.ths-quote-field input:focus{
border-color:#0066cc;
box-shadow:0 0 0 3px rgba(0,102,204,.12);
}
.ths-quote-note-box{
margin-top:14px;
padding:12px 14px;
border-radius:12px;
background:#eef6ff;
border:1px solid #bfd8ff;
color:#0b4ea2;
font-size:13px;
font-weight:700;
}
.ths-quote-actions{
display:flex;
justify-content:flex-end;
gap:10px;
margin-top:16px;
}
.ths-quote-actions--center{ justify-content:center; }
.ths-quote-review{
border:1px solid rgba(0,0,0,.10);
border-radius:16px;
overflow:hidden;
background:#fff;
}
.ths-quote-review__head{
display:flex;
justify-content:space-between;
align-items:flex-start;
gap:14px;
padding:18px;
background:#eef6ff;
border-bottom:1px solid rgba(0,0,0,.08);
}
.ths-quote-review__kicker{
color:#0066cc;
font-size:12px;
font-weight:900;
text-transform:uppercase;
letter-spacing:.08em;
}
.ths-quote-review__title{
margin-top:4px;
font-size:22px;
font-weight:900;
color:#0b1b33;
}
.ths-quote-review__quote-no{
color:#475569;
font-size:13px;
}
.ths-quote-customer{
display:grid;
grid-template-columns:repeat(3, minmax(0,1fr));
gap:8px 14px;
padding:14px 18px;
background:#fff;
border-bottom:1px solid rgba(0,0,0,.08);
font-size:13px;
color:#0b1b33;
}
.ths-quote-customer__path{ grid-column:1 / -1; color:#0b5ed7; }
.ths-quote-table{
width:100%;
border-collapse:collapse;
}
.ths-quote-table th{
background:#f8fbff;
color:#1f2937;
font-size:13px;
padding:12px;
border-bottom:1px solid rgba(0,0,0,.08);
}
.ths-quote-table td{
padding:12px;
border-bottom:1px solid rgba(0,0,0,.06);
font-size:13px;
vertical-align:top;
}
.ths-quote-totalbox{
margin:14px 18px 0 auto;
max-width:320px;
padding-bottom:14px;
}
.ths-quote-totalbox div{
display:flex;
justify-content:space-between;
gap:18px;
padding:5px 0;
font-size:14px;
}
.ths-quote-totalbox__grand{
margin-top:6px;
padding-top:10px !important;
border-top:2px solid #0066cc;
font-size:17px !important;
}
.ths-quote-tech-note{
margin:0 18px 18px;
padding:14px;
border-radius:12px;
background:#fff7ed;
border:1px solid #fed7aa;
}
.ths-quote-tech-note__title{
font-weight:900;
color:#92400e;
margin-bottom:6px;
}
.ths-quote-tech-note p{
margin:0;
font-size:13px;
line-height:1.5;
color:#7c2d12;
}
.ths-quote-card--success{
text-align:center;
background:linear-gradient(135deg, #f0fdf4, #ffffff);
border-color:#bbf7d0;
}
.ths-quote-success-icon{
width:54px;
height:54px;
margin:0 auto 12px;
display:flex;
align-items:center;
justify-content:center;
border-radius:999px;
background:#22c55e;
color:#fff;
font-weight:900;
font-size:28px;
}
.ths-quote-print-question{
margin-top:14px;
font-weight:900;
color:#0b1b33;
}
@media (max-width: 760px){
.ths-quote-modal__dialog{
width:calc(100vw - 16px);
margin:8px auto;
max-height:calc(100vh - 16px);
}
.ths-quote-steps,
.ths-quote-form,
.ths-quote-customer{
grid-template-columns:1fr;
}
.ths-quote-actions{
flex-direction:column-reverse;
}
.ths-quote-actions .ths-btn{
width:100%;
}
.ths-quote-review__head{
flex-direction:column;
}
} #repair-flow .ths-quote-actions .ths-btn.is-loading,
#repair-flow .ths-quote-actions .ths-btn[disabled]{
opacity:.65;
cursor:wait;
} #repair-flow .ths-cart__helper{
margin-top:10px;
padding:10px 12px;
border-radius:10px;
background:#eef6ff;
border:1px solid rgba(0,102,204,.20);
color:#0b4ea2;
font-size:13px;
font-weight:800;
line-height:1.35;
}
#repair-flow .ths-cart__helper.is-warning{
background:#fff7ed;
border-color:#f59e0b;
color:#92400e;
box-shadow:0 0 0 3px rgba(245,158,11,.12);
}
#repair-flow .ths-cart.ths-cart--needs-item{
border-color:#f59e0b !important;
background:#fffbeb !important;
box-shadow:0 0 0 4px rgba(245,158,11,.16), 0 10px 28px rgba(245,158,11,.12);
animation: thsCartNeedPulse .55s ease-in-out 0s 2;
}
#repair-flow .ths-col--parts.ths-parts--needs-item{
border-color:#f59e0b !important;
box-shadow:0 0 0 3px rgba(245,158,11,.14);
}
@keyframes thsCartNeedPulse{
0%{ transform:translateY(0); }
50%{ transform:translateY(-2px); }
100%{ transform:translateY(0); }
} #repair-flow #rf-btn-quote,
#repair-flow #rf-btn-booking{
opacity:1 !important;
cursor:pointer !important;
} #repair-flow .ths-col--parts{
opacity:1 !important;
filter:none !important;
pointer-events:auto !important;
}
#repair-flow .ths-col--parts .ths-cart,
#repair-flow .ths-col--parts .ths-cart *{
pointer-events:auto;
}
#repair-flow #rf-btn-quote,
#repair-flow #rf-btn-booking{
opacity:1 !important;
cursor:pointer !important;
pointer-events:auto !important;
} body.ths-booking-open{ overflow:hidden !important; }
.ths-booking-modal[hidden]{ display:none !important; }
.ths-booking-modal{
position: fixed !important;
inset: 0 !important;
z-index: 2147483000 !important;
}
.ths-booking-modal__backdrop{
position:absolute;
inset:0;
background:rgba(3, 14, 33, .48);
}
.ths-booking-modal__dialog{
position:relative;
width:min(980px, calc(100vw - 28px));
max-height:calc(100vh - 36px);
margin:18px auto;
background:#fff;
border:1px solid rgba(0,102,204,.20);
border-radius:18px;
box-shadow:0 28px 80px rgba(3,14,33,.28);
overflow:hidden;
display:flex;
flex-direction:column;
}
.ths-booking-modal__head{
display:flex;
justify-content:space-between;
align-items:flex-start;
gap:16px;
padding:18px 20px;
background:linear-gradient(135deg, #eef6ff, #ffffff);
border-bottom:1px solid rgba(0,0,0,.08);
}
.ths-booking-modal__eyebrow{
font-size:12px;
font-weight:900;
letter-spacing:.08em;
text-transform:uppercase;
color:#0066cc;
}
.ths-booking-modal__title{
margin-top:4px;
font-size:22px;
line-height:1.15;
font-weight:900;
color:#0b1b33;
}
.ths-booking-modal__close{
width:40px;
height:40px;
border:1px solid rgba(0,102,204,.20);
border-radius:12px;
background:#fff;
color:#0b5ed7;
font-size:26px;
line-height:1;
cursor:pointer;
box-shadow:0 6px 14px rgba(0,102,204,.08);
}
.ths-booking-modal__close:hover{
background:#eef6ff;
border-color:rgba(0,102,204,.38);
color:#005bb8;
}
.ths-booking-modal__body{
padding:18px 20px 20px;
overflow:auto;
}
.ths-booking-steps{
display:grid;
grid-template-columns:repeat(4, minmax(0,1fr));
gap:10px;
padding:12px 20px;
border-bottom:1px solid rgba(0,0,0,.08);
background:#f8fbff;
}
.ths-booking-step{
display:flex;
align-items:center;
gap:8px;
font-size:13px;
font-weight:900;
color:rgba(11,27,51,.55);
}
.ths-booking-step span{
width:26px;
height:26px;
display:inline-flex;
align-items:center;
justify-content:center;
border-radius:999px;
background:#e5edf7;
color:#64748b;
font-size:12px;
}
.ths-booking-step.is-active{ color:#0066cc; }
.ths-booking-step.is-active span{ background:#0066cc; color:#fff; }
.ths-booking-step.is-done{ color:#15803d; }
.ths-booking-step.is-done span{ background:#22c55e; color:#fff; }
.ths-booking-message{
margin:14px 20px 0;
padding:11px 13px;
border-radius:12px;
font-size:13px;
font-weight:800;
}
.ths-booking-message[hidden]{ display:none !important; }
.ths-booking-message.is-error{ background:#fff1f1; border:1px solid #fecaca; color:#b42318; }
.ths-booking-message.is-success{ background:#f0fdf4; border:1px solid #bbf7d0; color:#15803d; }
.ths-booking-message.is-info{ background:#eef6ff; border:1px solid #bfd8ff; color:#0b4ea2; }
.ths-booking-card{
border:1px solid rgba(0,0,0,.10);
background:#fff;
border-radius:16px;
padding:18px;
}
.ths-booking-card__title{
font-size:18px;
font-weight:900;
color:#0b1b33;
}
.ths-booking-card__sub{
margin-top:4px;
color:rgba(11,27,51,.65);
font-size:14px;
}
.ths-booking-form{
margin-top:16px;
display:grid;
grid-template-columns:repeat(2, minmax(0,1fr));
gap:14px;
}
.ths-booking-field{
display:flex;
flex-direction:column;
gap:7px;
font-size:13px;
font-weight:900;
color:#0b1b33;
}
.ths-booking-field b,
.ths-booking-section__title b{ color:#dc2626; }
.ths-booking-field--wide{ grid-column:1 / -1; }
.ths-booking-field input,
.ths-booking-field textarea{
width:100%;
min-height:48px;
padding:0 14px;
border:1px solid rgba(0,0,0,.14);
border-radius:12px;
background:#fff;
font-size:15px;
color:#0b1b33;
outline:none;
box-sizing:border-box;
}
.ths-booking-field textarea{
padding:12px 14px;
resize:vertical;
line-height:1.45;
}
.ths-booking-field input:focus,
.ths-booking-field textarea:focus{
border-color:#0066cc;
box-shadow:0 0 0 3px rgba(0,102,204,.12);
}
.ths-booking-note-box{
margin-top:14px;
padding:12px 14px;
border-radius:12px;
background:#eef6ff;
border:1px solid #bfd8ff;
color:#0b4ea2;
font-size:13px;
font-weight:800;
}
.ths-booking-note-box--warn{
margin:16px 18px 18px;
background:#fff7ed;
border-color:#fed7aa;
color:#92400e;
}
.ths-booking-section{ margin-top:18px; }
.ths-booking-section__title{
display:flex;
align-items:baseline;
gap:8px;
flex-wrap:wrap;
font-size:14px;
font-weight:900;
color:#0b1b33;
margin-bottom:10px;
}
.ths-booking-section__title span{
font-size:12.5px;
font-weight:700;
color:rgba(11,27,51,.60);
}
.ths-booking-branches{
display:grid;
grid-template-columns:repeat(3, minmax(0,1fr));
gap:10px;
}
.ths-booking-branch{
text-align:left;
border:2px solid rgba(0,102,204,.16);
background:#f8fbff;
border-radius:14px;
padding:13px;
cursor:pointer;
color:#0b1b33;
transition:background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .08s ease;
}
.ths-booking-branch:hover{
background:#eef6ff;
border-color:rgba(0,102,204,.38);
transform:translateY(-1px);
}
.ths-booking-branch.is-selected{
background:#eaf4ff;
border-color:#0066cc;
box-shadow:0 0 0 3px rgba(0,102,204,.12);
}
.ths-booking-branch__name{
display:block;
font-size:14px;
font-weight:900;
color:#0066cc;
margin-bottom:5px;
}
.ths-booking-branch__meta{
display:block;
font-size:12.5px;
color:rgba(11,27,51,.70);
line-height:1.35;
margin-top:3px;
}
.ths-booking-branch__status{
display:inline-flex;
margin-top:9px;
padding:4px 8px;
border-radius:999px;
background:#f0fdf4;
border:1px solid #bbf7d0;
color:#15803d;
font-size:12px;
font-weight:900;
}
.ths-booking-empty{
grid-column:1 / -1;
padding:13px;
border:1px dashed #fecaca;
border-radius:12px;
background:#fff1f1;
color:#b42318;
font-weight:800;
font-size:13px;
}
.ths-booking-dates,
.ths-booking-times{
display:flex;
flex-wrap:wrap;
gap:8px;
}
.ths-booking-date,
.ths-booking-time{
border:2px solid rgba(0,102,204,.16);
background:#fff;
color:#0b5ed7;
border-radius:12px;
padding:9px 12px;
cursor:pointer;
min-height:44px;
font-weight:900;
transition:background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .08s ease;
}
.ths-booking-date{
min-width:112px;
display:flex;
flex-direction:column;
align-items:flex-start;
gap:2px;
}
.ths-booking-date small{
color:rgba(11,27,51,.55);
font-size:11px;
font-weight:800;
}
.ths-booking-date:hover,
.ths-booking-time:hover{
background:#eef6ff;
border-color:rgba(0,102,204,.38);
transform:translateY(-1px);
}
.ths-booking-date.is-selected,
.ths-booking-time.is-selected{
background:linear-gradient(135deg, #0066cc, #0b5ed7);
border-color:#0066cc;
color:#fff;
box-shadow:0 8px 20px rgba(0,102,204,.22);
}
.ths-booking-date.is-selected small{ color:rgba(255,255,255,.82); }
.ths-booking-actions{
display:flex;
justify-content:flex-end;
gap:10px;
margin-top:16px;
}
.ths-booking-actions--center{ justify-content:center; }
.ths-booking-modal .ths-btn,
.ths-booking-modal button.ths-btn,
.ths-booking-actions .ths-btn{
min-height:48px;
padding:0 22px;
border-radius:12px;
font-weight:900;
font-size:15px;
display:inline-flex;
align-items:center;
justify-content:center;
border:2px solid #0066cc;
background:#fff;
color:#0066cc;
box-shadow:0 6px 16px rgba(0,102,204,.10);
transition:background .16s ease, color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .08s ease;
}
.ths-booking-modal .ths-btn:hover,
.ths-booking-actions .ths-btn:hover{
background:rgba(0,102,204,.07);
border-color:#0b5ed7;
color:#0b5ed7;
box-shadow:0 8px 22px rgba(0,102,204,.16);
transform:translateY(-1px);
}
.ths-booking-modal .ths-btn--primary,
.ths-booking-actions .ths-btn--primary{
background:linear-gradient(135deg, #0066cc, #0b5ed7);
border-color:#0066cc;
color:#fff;
box-shadow:0 10px 24px rgba(0,102,204,.26);
}
.ths-booking-modal .ths-btn--primary:hover,
.ths-booking-actions .ths-btn--primary:hover{
background:linear-gradient(135deg, #005bb8, #0954c7);
color:#fff;
box-shadow:0 12px 28px rgba(0,102,204,.32);
}
.ths-booking-modal .ths-btn--ghost,
.ths-booking-actions .ths-btn--ghost{
background:#eef6ff;
border-color:rgba(0,102,204,.32);
color:#0b5ed7;
box-shadow:none;
}
.ths-booking-review{
border:1px solid rgba(0,0,0,.10);
border-radius:16px;
overflow:hidden;
background:#fff;
}
.ths-booking-review__head{
display:flex;
justify-content:space-between;
align-items:flex-start;
gap:14px;
padding:18px;
background:#eef6ff;
border-bottom:1px solid rgba(0,0,0,.08);
}
.ths-booking-review__kicker{
color:#0066cc;
font-size:12px;
font-weight:900;
text-transform:uppercase;
letter-spacing:.08em;
}
.ths-booking-review__title{
margin-top:4px;
font-size:22px;
font-weight:900;
color:#0b1b33;
}
.ths-booking-review__status{
color:#475569;
font-size:13px;
}
.ths-booking-summary-grid{
display:grid;
grid-template-columns:repeat(3, minmax(0,1fr));
gap:10px;
padding:14px 18px;
border-bottom:1px solid rgba(0,0,0,.08);
}
.ths-booking-summary-grid div{
padding:10px;
border-radius:10px;
background:#f8fbff;
border:1px solid rgba(0,0,0,.06);
}
.ths-booking-summary-grid div.wide{ grid-column:1 / -1; }
.ths-booking-summary-grid b,
.ths-booking-summary-grid span{ display:block; }
.ths-booking-summary-grid b{
color:#0b5ed7;
font-size:12px;
margin-bottom:4px;
}
.ths-booking-summary-grid span{
color:#0b1b33;
font-size:13px;
font-weight:800;
}
.ths-booking-table{
width:100%;
border-collapse:collapse;
}
.ths-booking-table th{
background:#f8fbff;
color:#1f2937;
font-size:13px;
padding:12px;
border-bottom:1px solid rgba(0,0,0,.08);
}
.ths-booking-table td{
padding:12px;
border-bottom:1px solid rgba(0,0,0,.06);
font-size:13px;
vertical-align:top;
}
.ths-booking-totalbox{
margin:14px 18px 0 auto;
max-width:340px;
padding-bottom:14px;
}
.ths-booking-totalbox div{
display:flex;
justify-content:space-between;
gap:18px;
padding:5px 0;
font-size:14px;
}
.ths-booking-totalbox__grand{
margin-top:6px;
padding-top:10px !important;
border-top:2px solid #0066cc;
font-size:17px !important;
}
.ths-booking-card--success{
text-align:center;
background:linear-gradient(135deg, #f0fdf4, #ffffff);
border-color:#bbf7d0;
}
.ths-booking-success-icon{
width:54px;
height:54px;
margin:0 auto 12px;
display:flex;
align-items:center;
justify-content:center;
border-radius:999px;
background:#22c55e;
color:#fff;
font-weight:900;
font-size:28px;
}
.ths-booking-finish-note{
margin:14px auto 0;
max-width:560px;
padding:12px 14px;
border-radius:12px;
background:#eef6ff;
border:1px solid #bfd8ff;
color:#0b4ea2;
font-size:13px;
font-weight:800;
}
@media (max-width: 860px){
.ths-booking-modal__dialog{
width:calc(100vw - 16px);
margin:8px auto;
max-height:calc(100vh - 16px);
}
.ths-booking-steps,
.ths-booking-form,
.ths-booking-branches,
.ths-booking-summary-grid{
grid-template-columns:1fr;
}
.ths-booking-actions{
flex-direction:column-reverse;
}
.ths-booking-actions .ths-btn{
width:100%;
}
.ths-booking-review__head{
flex-direction:column;
}
} .ths-booking-dates{
display:block;
}
.ths-booking-calendar{
border:1px solid rgba(0,102,204,.14);
border-radius:16px;
background:#ffffff;
overflow:hidden;
box-shadow:0 8px 22px rgba(0,102,204,.06);
}
.ths-booking-calendar__head{
display:grid;
grid-template-columns:repeat(7, minmax(0,1fr));
background:#eef6ff;
border-bottom:1px solid rgba(0,102,204,.12);
}
.ths-booking-calendar__dow{
padding:10px 6px;
text-align:center;
font-size:12px;
font-weight:900;
color:#0b5ed7;
text-transform:uppercase;
letter-spacing:.04em;
}
.ths-booking-calendar__grid{
display:grid;
grid-template-columns:repeat(7, minmax(0,1fr));
gap:0;
background:#e8eef7;
}
.ths-booking-calendar .ths-booking-date{
min-width:0;
min-height:74px;
width:100%;
border:0;
border-right:1px solid #e8eef7;
border-bottom:1px solid #e8eef7;
border-radius:0;
background:#fff;
color:#0b1b33;
padding:9px 7px;
align-items:center;
justify-content:center;
text-align:center;
gap:2px;
box-shadow:none;
}
.ths-booking-calendar .ths-booking-date:nth-child(7n){ border-right:0; }
.ths-booking-calendar .ths-booking-date:hover{
background:#f0fdf4;
color:#14532d;
transform:none;
box-shadow:inset 0 0 0 2px rgba(34,197,94,.30);
}
.ths-booking-calendar .ths-booking-date__num{
display:block;
font-size:20px;
line-height:1;
font-weight:900;
color:#111827;
}
.ths-booking-calendar .ths-booking-date small{
display:block;
margin-top:3px;
color:#64748b;
font-size:12px;
font-weight:900;
text-transform:uppercase;
}
.ths-booking-calendar .ths-booking-date em{
display:inline-flex;
margin-top:5px;
padding:2px 6px;
border-radius:999px;
background:#dcfce7;
color:#15803d;
font-style:normal;
font-size:10px;
font-weight:900;
}
.ths-booking-calendar .ths-booking-date.is-today{
background:#f8fff9;
}
.ths-booking-calendar .ths-booking-date.is-selected{
background:linear-gradient(135deg, #16a34a, #22c55e);
border-color:transparent;
color:#fff;
box-shadow:inset 0 0 0 2px rgba(255,255,255,.45), 0 8px 18px rgba(22,163,74,.24);
position:relative;
z-index:1;
}
.ths-booking-calendar .ths-booking-date.is-selected .ths-booking-date__num,
.ths-booking-calendar .ths-booking-date.is-selected small,
.ths-booking-calendar .ths-booking-date.is-selected em{
color:#fff;
}
.ths-booking-calendar .ths-booking-date.is-selected em{
background:rgba(255,255,255,.20);
}
@media (max-width: 760px){
.ths-booking-calendar__dow{
font-size:10px;
padding:8px 2px;
}
.ths-booking-calendar .ths-booking-date{
min-height:62px;
padding:7px 2px;
}
.ths-booking-calendar .ths-booking-date__num{
font-size:16px;
}
.ths-booking-calendar .ths-booking-date small{
font-size:10px;
}
.ths-booking-calendar .ths-booking-date em{
font-size:9px;
padding:1px 4px;
}
} .ths-booking-card--progressive .ths-booking-section--revealed{
animation: thsBookingReveal .18s ease-out;
}
@keyframes thsBookingReveal{
from{ opacity:0; transform:translateY(6px); }
to{ opacity:1; transform:translateY(0); }
}
.ths-booking-step-num{
width:26px;
height:26px;
display:inline-flex;
align-items:center;
justify-content:center;
border-radius:999px;
background:#0066cc;
color:#fff;
font-size:12px;
font-weight:900;
line-height:1;
flex:0 0 auto;
}
.ths-booking-progress-pill{
display:inline-flex;
align-items:center;
gap:5px;
margin:14px 0 2px;
padding:8px 12px;
border-radius:999px;
background:#f0fdf4;
border:1px solid #bbf7d0;
color:#15803d;
font-size:13px;
font-weight:900;
}
.ths-booking-progress-pill b{
color:#14532d;
}
.ths-booking-note-field textarea{
min-height:104px;
}
.ths-booking-actions #ob-next-review[disabled]{
opacity:.55;
cursor:not-allowed;
filter:grayscale(.1);
} .ths-booking-time.is-unavailable,
.ths-booking-time[disabled]{
opacity:.48;
cursor:not-allowed;
background:#f1f5f9 !important;
color:#94a3b8 !important;
border-color:#cbd5e1 !important;
box-shadow:none !important;
transform:none !important;
}
.ths-booking-time.is-unavailable small{
display:block;
margin-top:3px;
font-size:11px;
font-weight:800;
color:#dc2626;
}
#rf-booking-modal .ths-btn.is-loading,
#rf-booking-modal .ths-btn[disabled]{
opacity:.72;
cursor:wait;
} .ths-booking-empty--info{
background:#eef6ff !important;
border-color:#bfd8ff !important;
color:#0b4ea2 !important;
}
.ths-booking-time.is-unavailable,
.ths-booking-time[disabled]{
opacity:.62;
cursor:not-allowed !important;
background:#f3f4f6 !important;
color:#9ca3af !important;
border-color:#d1d5db !important;
box-shadow:none !important;
transform:none !important;
}
.ths-booking-time.is-unavailable:hover,
.ths-booking-time[disabled]:hover{
background:#f3f4f6 !important;
border-color:#d1d5db !important;
transform:none !important;
}
.ths-booking-time.is-unavailable small,
.ths-booking-time[disabled] small{
display:block;
margin-top:3px;
font-size:11px;
font-weight:900;
color:#dc2626;
}