/* TasTech modern layer – loaded AFTER stylesheet20220302.min.css (see includes/stylesheet.php).
   Restyles the existing markup so every page becomes responsive. Remove the <link> to roll back. */
:root{--btn-blue:#506387;--btn-orange:#7963d3;--btn-green:#157f3b;--btn-red:#b42318;--bg:#f6f7f9;--surf:#fff;--tx:#14181f;--mut:#41464e;--pid:#878b91;--bd:#e2e5ea;--ac:#334155;--act:#fff;--hov:#eef3fa;--ok:#157f3b;--bad:#b42318;--r:14px;--ft:#e8ecf2;--ach:#d9e8fb;--acd:#084f9a;--hl:#941614;color-scheme:light}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg)!important;color:var(--tx);font-family:system-ui,-apple-system,"Segoe UI",Roboto,Verdana,sans-serif;line-height:1.5}
img{max-width:100%}
img:not([src*="pixel_"]){height:auto}
img[src*="pixel_silver"],img[src*="pixel_black"]{display:block;width:100%}
input[type=text],input[type=search],input[type=password],input[type=email],input[type=tel],input[type=number],select,textarea{font-size:16px}
#wrapper{width:auto;max-width:1280px;margin:0 auto;background:none;box-shadow:none;border-radius:0}

/* ---- Header ---- */
#header,#header *,#nav,#left_column,#left_column *,#main,#middle_inner{box-sizing:border-box}
#header{width:auto;position:relative;z-index:500;display:flex;flex-wrap:wrap;justify-content:space-around;align-items:center;gap:8px 10px;height:auto;padding:8px max(12px,calc((100% - 1280px)/2 + 12px));background:var(--surf);border-bottom:1px solid var(--bd);border-radius:0}
.header_container_outer,.header_right_container{display:contents}
#tt-menu-btn{order:1;flex:none;display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 16px 0 14px;border:1px solid var(--bd);border-radius:10px;background:none;color:var(--tx);font:inherit;font-size:14px;cursor:pointer}
#tt-menu-btn b{font-weight:600}
#tt-menu-btn:hover{background:var(--hov)}
#tt-menu-btn span{position:relative;display:block;flex:none;width:18px;height:2px;background:var(--tx);border-radius:2px}
#tt-menu-btn span::before,#tt-menu-btn span::after{content:"";position:absolute;left:0;width:18px;height:2px;background:var(--tx);border-radius:2px}
#tt-menu-btn span::before{top:-6px}#tt-menu-btn span::after{top:6px}
@media (max-width:399px){#tt-menu-btn b{display:none}#tt-menu-btn{padding:0 13px}}
#tt-logo{order:2;flex:1;font-size:28px;font-weight:800;letter-spacing:-.02em;color:var(--tx);text-decoration:none;white-space:nowrap}
#tt-logo span{color:var(--ac)}
.account_container{order:3;position:static;width:auto;display:flex;align-items:center;gap:8px;font-size:13px;text-align:left;color:var(--tx)}
.account_container br{display:none}
.account_container a,.account_container .fwhite,#header .fwhite{color:var(--tx)!important;text-decoration:none;font-family:inherit;font-size:12px;font-weight:300}
.account_container img{width:20px;height:20px}
.account_container a.main{display:none}
.account_container .abutton{display:inline-flex;align-items:center;justify-content:center;font-weight:600;min-height:40px;padding:0 14px;border-radius:10px;font-size:14px;text-shadow:none}
#minicart{order:4;position:relative;margin:0}
.minicart_header,.minicart_header_empty{position:static;display:inline-flex!important;align-items:center;margin:0;width:auto;min-height:44px;padding:0 14px;border-radius:10px;font-size:13px;font-weight:600;white-space:nowrap}
.minicart_header{background:var(--ac);color:var(--act)}
.minicart_header span{display:none}
.minicart_header_empty{background:none;color:var(--mut);border:1px solid var(--bd)}
@media (max-width:599px){.minicart_header_empty{font-size:0;padding:0 12px}.minicart_header_empty::before{content:"\1F6D2";font-size:18px}.minicart_header{max-width:150px;white-space:normal;line-height:1.2;font-size:11px;padding:4px 10px;min-height:44px}}
.minicart_items{position:absolute;top:44px;right:0;left:auto;width:min(92vw,540px);margin:0;padding:6px 12px 14px;background:var(--surf);color:var(--tx);border:1px solid var(--bd);border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.2);font-size:14px;text-align:left;z-index:300}
.minicart_items .fwhite,.minicart_items span{color:var(--tx)!important}
.minicart_product_name{width:auto;margin:0;padding:5px 0 0;border-top:1px solid var(--bd)}
.minicart_product_name a{color:var(--ac)!important}
.minicart_product_price{margin:0;padding:0 0 5px}.minicart_product_remove{padding:0}
.minicart_footer{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;margin:12px 0 0;padding-top:12px;border-top:1px solid var(--bd)}
.search_container{order:5;position:relative;flex:1 1 100%;width:auto;top:auto;left:auto}
.search_container form{margin:0}
.searchBox{width:100%;height:44px;padding:0 48px 0 14px;border:1px solid var(--bd);border-radius:12px;background:var(--bg);color:var(--tx);text-align:left}
.searchBox:focus{background:var(--surf);border-color:var(--ac);outline:2px solid var(--ac)}
.searchSubmit{top:4px;left:auto;right:4px;width:36px;height:36px;margin:0 5px 0 0;background-image:url(../images/icons/search.png);background-position:center;background-size:20px;background-repeat:no-repeat;background-color:transparent}
.button_container{order:6;position:static;margin:0;flex:1 1 100%;display:flex;justify-content:space-between;align-items:center;font-size:14px}
.button_container label{color:var(--mut);cursor:pointer;margin-left:4px}
.button_container input{width:20px;height:20px;vertical-align:middle}
.header_button{display:inline-flex;align-items:center;height:36px;margin:0;padding:0 14px;font-size:14px;color:var(--tx);background:var(--surf);border:1px solid var(--bd);border-radius:10px}
.header_button:hover{background:var(--hov)}
#empty-message{display:none}
.ui-autocomplete{max-width:92vw;z-index:400!important;font-size:15px;border-radius:12px;border:1px solid var(--bd);box-shadow:0 12px 32px rgba(0,0,0,.18);max-height:60vh;overflow:auto;z-index:501 !important}
.ui-menu-item-wrapper{padding:10px 12px!important}

/* ---- Breadcrumb bar ---- */
#nav{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 12px;height:auto;margin:0;padding:8px 14px;background:none;font-size:14px}
div.headerNavigation,div.headerNavigationRight{float:none;font-family:inherit;font-size:14px;line-height:1.5;color:var(--mut);font-weight:400}
a.headerNavigation{color:var(--ac);padding:0}a.headerNavigation:hover{background:none;color:var(--ac);text-decoration:underline}
.loggedinstatus{font-size:13px}

.headerNavigationRight{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:2px 12px}
a.tt-navlink{display:inline-flex;align-items:center;gap:6px;min-height:36px;color:var(--ac);font-size:14px;font-weight:600;text-decoration:none}
a.tt-navlink img{width:18px;height:18px}

/* ---- Page frame ---- */
body:not(:has(#left_column)) #tt-menu-btn{display:none}
body:not(:has(#left_column)) #tt-logo{flex:1}
#main{display:block;padding:0 12px 12px}
#middle_inner,#middle_inner_970{z-index:1;width:auto;min-width:0;margin:0;padding:12px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);overflow-x:auto}
#middle_inner:has(.tt-modern-page),#middle_inner:has(.middle_inner_container){padding:0;background:none;border:0;overflow:visible}
#login_form_div{position:fixed;top:12%;left:50%;transform:translateX(-50%);width:min(94vw,420px);padding:0;margin:0;background:var(--surf);border:1px solid var(--bd);border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.35);z-index:9999}
#login_form_div>form>div,#login_form_div form>div{width:auto!important;max-width:100%;background:none!important;border:0!important}
#login_form_div p{margin:0!important;text-align:left!important}

/* ---- Category menu: drawer on phones, sidebar on desktop ---- */
#left_column{position:fixed;inset:0 auto 0 0;width:min(88vw,360px);margin:0;padding:56px 12px 12px;background:var(--surf);z-index:1000;overflow:auto;transform:translateX(-102%);transition:transform .22s ease,visibility 0s linear .22s;visibility:hidden}
body.tt-menu-open #left_column{transform:none;visibility:visible;transition-delay:0s}
#tt-scrim{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:900}
body.tt-menu-open #tt-scrim{display:block}
body.tt-menu-open{overflow:hidden}
#tt-menu-close{display:none;position:fixed;top:8px;left:calc(min(88vw,360px) - 52px);z-index:1001;width:44px;height:44px;border:0;border-radius:50%;background:var(--hov);color:var(--tx);font-size:28px;line-height:1;cursor:pointer}
body.tt-menu-open #tt-menu-close{display:block}
#left_column>img{display:none}
.ttnavcontainer{margin:0 0 16px}
.infoBoxHeading{border:0;text-align:left;text-transform:uppercase;letter-spacing:.06em;font-size:12px;color:var(--mut);padding:6px 8px;margin:0;text-shadow:none}
#ttnav1,#ttnav2{list-style:none;margin:0;padding:0;font-family:inherit;font-size:15px}
#ttnav1 li,#ttnav2 li{float:none;display:block;position:static;width:auto;height:auto;line-height:1.4;border:0;border-bottom:1px solid var(--bd);background:none;cursor:default}
#ttnav1 li a,#ttnav2 li a{display:block;width:auto;height:auto;min-height:44px;padding:11px 8px;color:var(--tx);background:none;text-decoration:none}
#ttnav1 img,#ttnav2 img{display:none}
#ttnav1 li:hover,#ttnav1 li:hover>a,#ttnav2 li:hover,#ttnav2 li:hover>a{background:var(--ach)!important;color:var(--acd)!important}
#ttnav2 a.ttnavselected,#ttnav1 a.ttnavselected{background:var(--hov);color:var(--ac);font-weight:700}
#ttnav2 li.cat_sort{display:flex;flex-wrap:wrap;align-items:center}
#ttnav2 li.cat_sort>a{flex:1;min-width:0}
.tt-tog{flex:none;width:44px;height:44px;border:0;background:none;cursor:pointer;position:relative}
.tt-tog::before{content:"";position:absolute;left:17px;top:16px;width:8px;height:8px;border-right:2px solid var(--mut);border-bottom:2px solid var(--mut);transform:rotate(-45deg);transition:transform .15s}
li.open>.tt-tog::before{transform:rotate(45deg)}
#ttnav2 li.cat_sort:hover>ul.ttnav2,#ttnav2 ul.ttnav2{display:none;position:static;flex-basis:100%;width:auto;left:auto;top:auto;border:0;box-shadow:none;padding:0 0 8px 14px}
#ttnav2 li.cat_sort.open>ul.ttnav2,#ttnav2 li.cat_sort.open:hover>ul.ttnav2{display:block}
#ttnav2 .ttnav2 li{width:auto;height:auto;background:none;border:0}
#ttnav2 .ttnav2 li a{min-height:40px;padding:9px 8px;font-size:14px;color:var(--mut)}

/* ---- Footer ---- */
#footer{padding:16px max(12px,calc((100% - 1280px)/2 + 12px)) 20px;text-align:center;border-top:1px solid var(--mut);margin:20px 0 0;background:var(--ac)}
#footer_menu{height:auto;line-height:1.4;background:none;font-size:13px;color:var(--pid);padding:0 0 8px;font-family:inherit}
#footer_menu a{display:inline-block;margin:0;padding:8px 10px;color:var(--bd)}
#footer_menu a:hover{background:none;color:var(--surf)}

/* ---- Buttons (all pages) ---- */
.abutton,.sbutton,.cbutton{min-height:40px;border-radius:10px;text-shadow:none}

/* ---- Tablet / small laptop ---- */
@media (min-width:600px){.account_container a.main{display:inline}#tt-logo{flex:none}}
/* ---- Desktop: sidebar replaces drawer ---- */
@media (min-width:1000px){
 #header{position:sticky;top:0;flex-wrap:nowrap;padding:10px max(20px,calc((100% - 1280px)/2 + 20px))}
 #tt-menu-btn{order:1;margin-right:4px}
 #tt-logo{order:2;margin-right:8px}
 .search_container{order:3;flex:1 1 auto;max-width:520px}
 .button_container{order:4;flex:none;gap:14px;justify-content:flex-end}
 .account_container{order:5}#minicart{order:6}
 #nav{padding:10px 20px}
 #main{display:block;padding:0 20px 20px}
 #middle_inner,#middle_inner_970{min-width:0}
}

/* ---- Category super-menu: full-width overlay on desktop ---- */
@media (min-width:900px){
 #left_column{inset:0 0 auto 0;width:auto;max-height:calc(100vh - 100px);overflow-y:auto;padding:36px max(24px,calc((100vw - 1180px)/2)) 40px;border-radius:0 0 22px 22px;box-shadow:0 28px 70px rgba(0,0,0,.4);transform:translateY(-104%);display:flex;flex-wrap:wrap;align-items:flex-start;gap:20px 56px}
 body.tt-menu-open #left_column{transform:none}
 #tt-menu-close{left:auto;right:22px;top:16px}
 #left_column>.ttnavcontainer:first-child{flex:0 0 240px;margin:0}
 #left_column>.ttnavcontainer:last-of-type{flex:1 1 640px;margin:0}
 #ttnav1 li,#ttnav2 li{border:0}
 #ttnav2{column-width:230px;column-gap:36px}
 #ttnav2>li.cat_sort{display:block;break-inside:avoid;margin:0 0 16px}
 #ttnav2>li.cat_sort>a{min-height:0;padding:6px 8px;font-weight:700}
 #ttnav2 .tt-tog{display:none}
 #ttnav2 li.cat_sort ul.ttnav2,#ttnav2 li.cat_sort:hover>ul.ttnav2{display:block!important;padding:0 0 0 8px}
 #ttnav2 .ttnav2 li a{min-height:0;padding:5px 8px;font-size:14px}
}
/* ================= STAGE 2: category / product listing pages ================= */
.middle_inner_container{display:flex;margin:0 0 8px}
#header_listing_left,#header_listing_right{width:50%;margin:0;align-items:stretch}#header_listing_left{justify-content:flex-start}
.middle_heading_listing{font-size:clamp(22px,4vw,30px);font-weight:800;letter-spacing:-.02em;line-height:1.2;text-align:left;color:var(--tx);margin:4px 0 8px}
.middle_heading_listing a{color:var(--ac)}
.middle_display_options{width:auto;margin:0 0 10px;text-align:left;font-size:14px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;color:var(--mut)}
.middle_display_options form,.middle_display_options>span:first-child{display:none}
.tt-seg{display:flex;border:1px solid var(--bd);border-radius:10px;overflow:hidden}
.tt-seg button{border:0;background:var(--surf);color:var(--tx);width:48px;height:40px;font-size:18px;cursor:pointer}
.tt-seg button.on{background:var(--ac);color:var(--act)}
#images_view{width:auto!important;text-align:left!important;height:40px;border:1px solid var(--bd);border-radius:10px;padding:0 8px;background:var(--surf);color:var(--tx)}
.middle_display_options label{display:inline-flex;align-items:center;min-height:40px;color:var(--tx)}
.middle_display_options input[type=checkbox]{width:20px;height:20px;margin:0 0 0 8px}
#most_popular_recent_container{display:none}
.category_notes{float:none;width:auto;text-align:left;font-size:14px;margin:0 0 12px;color:var(--bad)}
#category_jumps{box-sizing:border-box;width:auto;padding:0;justify-content:flex-start}
#category_jumps.tt-hidden{display:none}
#tt-chips{display:flex;flex-flow:row wrap;justify-content:flex-start;gap:8px;overflow-x:auto;padding:6px 0 10px;margin:0 0 4px;scrollbar-width:none;position:sticky;top:0;z-index:50;background:var(--bg)}
#tt-chips::-webkit-scrollbar{display:none}
.tt-chip{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border:1px solid var(--bd);background:var(--surf);color:var(--tx);border-radius:99px;font:inherit;font-size:14px;cursor:pointer}
.tt-chip small{opacity:.65}
.tt-chip.on{background:var(--ac);color:var(--act);border-color:var(--ac)}
.tt-hide{display:none!important}

.middle_product_listing{float:none;clear:none;width:100%;margin:0 0 18px}
.middle_product_listing table.tablesorter{display:block;width:100%;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden}
table.tablesorter>thead,table.tablesorter>tbody{display:block}
table.tablesorter>thead>tr{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--hov);border-bottom:1px solid var(--bd)}
table.tablesorter>thead>tr>td{display:none}
table.tablesorter>thead>tr:not(:has(>th)){display:none}
table.tablesorter>thead>tr>th{display:block;width:auto;padding:0;border:0;border-radius:0;background:none!important;color:var(--tx)!important;font-size:14px;font-weight:600;text-align:left}
table.tablesorter>thead>tr>th:first-child{flex:1;font-size:16px;font-weight:700}
table.tablesorter>thead th.CatHeading_availability{display:none}
table.tablesorter>thead a,table.tablesorter>thead .subsubcatlink{color:var(--tx)!important;background:none!important}
table.tablesorter>thead .subsubcatlink{cursor:pointer}
table.tablesorter>thead nobr{white-space:normal}
tr.products_table_listing{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"img desc" "img avail" "img price";gap:4px 12px;align-items:center;height:auto;padding:12px 14px;border-bottom:1px solid var(--bd);background:none}
tr.products_table_listing:last-child{border-bottom:0}
tr.products_table_listing:hover{background:var(--hov)}
tr.products_table_listing>td{display:block;width:auto;padding:0;border:0;text-align:left;height:auto}
tr.products_table_listing>td:first-child{grid-area:img}
tr.products_table_listing>td.productListing_desc{grid-area:desc;position:relative;padding-left:0;font-size:15px;line-height:1.4;color:var(--tx)}
tr.products_table_listing>td.productListing_availability{grid-area:avail;font-size:13px;color:var(--mut)}
tr.products_table_listing>td.productListing_availability span{font-size:12px!important}
tr.products_table_listing>td.productListing_price{grid-area:price;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:20px;font-weight:800;color:var(--tx)}
td.productListing_availability img{vertical-align:middle;margin-right:4px}
td.productListing_desc a{color:var(--ac);font-weight:400;text-decoration:none}
td.productListing_desc a:hover{text-decoration:underline}
.product_highlight{display:inline-block;margin:0 0 0 8px;padding:1px 8px;border-radius:99px;font-size:12px;background:#c2410c;color:#fff}
.product_subname{font-size:13px;color:var(--mut)}
.product_bonus{font-size:inherit;color:var(--ok)}
.product_pid{margin:2px 0 0;font-size:11px;color:var(--pid)}
img.galleryprice{padding:0 10px;margin-bottom:0}
.listing_quickpinfo{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;font-size:16px;color:var(--ac)}
.listing_small,.listing_large{max-width:64px;max-height:64px;width:auto;height:auto;object-fit:contain;border-radius:8px}
.listing_large{max-width:96px;max-height:96px}
td.productListing_image_small,td.productListing_image_large{width:auto;height:auto;padding:0;border:0}
.product_listing_addtocart{margin:0}
.product_listing_addtocart .abutton,.gallery_addtocart .abutton{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;font-size:14px;font-weight:600;line-height:1.2;white-space:nowrap}
.cart_out_listing{display:none}
.cart_in_listing{flex:none;position:absolute;display:inline-block;width:22px;height:22px;margin:-24px -4px 0 0!important;border:0;border-radius:50%;vertical-align:middle;background:#157f3b url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4.5 10.5 3.5 3.5 7.5-8'/%3E%3C/svg%3E") center/13px no-repeat}
.moduleboxgallery2>.cart_in_listing{position:absolute;top:10px;right:10px;z-index:1;margin:0!important}

/* list view uses the same font as gallery view */
td.productListing_desc,td.productListing_availability,td.productListing_price,td.productListing_image_small,td.productListing_image_large,td.productListing_icons,.product_pid,.product_subname,.product_bonus{font-family:inherit}
/* gallery mode */
.middle_product_listing:has(.moduleboxgallery2){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.moduleboxgallery2{float:none;position:relative;width:auto;height:auto;margin:0;padding:10px;display:flex;flex-direction:column;gap:6px;text-align:left;font-size:14px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);box-shadow:none}
.moduleboxgallery2:hover{border-color:var(--ac);box-shadow:none}
.gallery_image,.gallery_manufacturer_logo,.gallery_highlight,.gallery_text,.gallery_addtocart,.gallery_price{position:static;width:auto;height:auto;margin:0}
.gallery_image{display:grid;place-items:center;min-height:110px;text-align:center}
.gallery_image img{max-height:110px;object-fit:contain}
.gallery_text{overflow:visible}.gallery_text a{color:var(--ac);font-weight:600;text-decoration:none}
.gallery_highlight{align-self:flex-start;padding:1px 8px;border-radius:99px;font-size:12px;background:#c2410c;color:#fff}
.gallery_price{font-size:17px;font-weight:800}
.gallery_addtocart{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.CatHeading_Gallery{float:none;width:auto;margin:18px 0 8px;padding:10px 14px;display:flex;flex-wrap:wrap;gap:6px 12px;justify-content:space-between;align-items:center;background:var(--hov);color:var(--tx);border:1px solid var(--bd);border-radius:12px;font-size:16px;font-weight:700}
.CatHeading_Gallery a,.CatHeading_Gallery span{color:var(--tx)}
.search_split_results{font-size:14px;color:var(--mut);padding:8px 2px}

@media (min-width:760px){
 tr.products_table_listing{grid-template-columns:auto 1fr 140px 290px;grid-template-areas:"img desc avail price"}
 tr.products_table_listing>td.productListing_price{justify-content:flex-end}
 table.tablesorter>thead>tr>th.CatHeading_availability{display:none}
 .middle_product_listing:has(.moduleboxgallery2){grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:1000px){
 #tt-chips{top:65px}
 .middle_product_listing:has(.moduleboxgallery2){grid-template-columns:repeat(4,minmax(0,1fr))}
 #most_popular_recent_container{display:block;font-size:13px}
 ul.most_popular_recent{margin:0 0 8px;padding:0 0 0 16px}
 .most_popular_recent_heading{margin:8px 0 0}
}


/* ================= STAGE 3: product detail page ================= */
.middleProductHeading{font-size:clamp(22px,4vw,30px);font-weight:800;line-height:1.2;letter-spacing:-.02em;text-align:left;color:var(--tx);margin:4px 0 12px;padding:0;background:none;border:0;height:auto;text-shadow:none}
.middleProductSubHeading{font-size:15px;font-weight:400;letter-spacing:0;color:var(--mut);margin:4px 0 0;width:auto;font-style:normal;text-align:left}
#product_info_inner_container.tt-pi{display:flex;flex-direction:column;gap:16px;width:auto;margin:0;padding:0;float:none;border-top:0}
.tt-pi .pi-main,.tt-pi .pi-side{display:contents}
.tt-pi #product_left,.tt-pi .pi-buy,.tt-pi #product_info_inner,.tt-pi .pi-facts{float:none;width:auto;margin:0;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);padding:16px;min-width:0;text-align:left;box-sizing:border-box;font-family:inherit;font-size:15px;color:var(--tx);height:auto;box-shadow:none;background-image:none}
.tt-pi #product_left{order:1;padding:12px}
.tt-pi .pi-buy{order:2}
.tt-pi #product_info_inner{order:3;overflow-x:auto;font-size:15px;line-height:1.6}
.tt-pi .pi-facts{order:4}
.tt-pi #product_info_inner:empty,.tt-pi .pi-facts:empty{display:none}
#product_info_inner img{max-width:100%;height:auto}
.product_info_image{position:static;text-align:center;margin:0;float:none;width:auto}
img.productInfo{border:0;border-radius:8px;box-shadow:none;margin:0}
.compare_in_product,.compare_out_product{width:20px;height:20px;margin:0;border:2px solid var(--mut);border-radius:6px;background-color:var(--surf);background-size:14px;background-position:center;flex:none}
.compare_in_product{background-color:var(--ac);border-color:var(--ac);background-image:url(images/tick02.png);background-repeat:no-repeat}
img.productInfo,img.manufacturerInfo{max-width:100%;max-height:380px;width:auto;height:auto;object-fit:contain;border-radius:4px}
.tt-pi #product_left h3{display:inline-block;margin:10px 0 0;padding:2px 12px;border-radius:99px;background:#c2410c;color:#fff;font-size:13px}
.product_info_manufacturer_logo{margin-top:8px;text-align:center}
.product_info_manufacturer_logo img{max-height:40px;width:auto}
.pi-buy>div[style]{padding:0!important;text-align:left!important}
.pi-buy form{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0}
.pi-buy h4{flex:1 1 100%;margin:0;font-size:30px;line-height:1.1;letter-spacing:-.02em;color:var(--tx)}
.pi-buy h4 b{font-weight:800}
#cartbutton{flex:1 1 auto;min-height:50px;padding:0 24px;font-size:17px;font-weight:700;border-radius:12px;cursor:pointer}
.pi-buy .cart_in_listing,.pi-buy .cart_out_listing{margin:0!important;position:static}
.pi-buy a.loginforpricing{display:inline-block;padding:12px 0;font-weight:600}
.pi-buy p,.pi-facts p,.tt-pi #product_left p{margin:0;padding:12px 0 0;font-size:15px;line-height:1.5;border-top:0}
.pi-facts p{padding:10px 0;border-bottom:1px solid var(--bd)}
.pi-facts p:first-child{padding-top:0}.pi-facts p:last-child{border-bottom:0;padding-bottom:0}
.pi-buy p b,.pi-facts p b{display:block;margin-bottom:2px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.pi-buy p b+br,.pi-facts p b+br{display:none}
.pi-buy p img{vertical-align:middle}
.pi-facts a,.pi-buy p a{color:var(--ac)}
.infotools{margin-top:14px;padding-top:12px;border-top:1px solid var(--bd);display:flex;flex-wrap:wrap;gap:4px 16px;font-size:14px;line-height:1.4}
.infotools br{display:none}
.infotools a{display:inline-flex;align-items:center;gap:6px;min-height:36px;color:var(--ac);text-decoration:none}
.infotools a.compare_in_product,.infotools a.compare_out_product{display:inline-block;min-height:0;width:20px;height:20px;margin:0 -8px 0 0}
#product_left .product_info_manufacturer_logo{border-top:0;padding:0}
.product_info_manufacturer_logo:empty{display:none}
#product_info_footer{float:none;width:auto;margin:16px 0 0;padding:16px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);text-align:left;font-size:15px}
#product_info_footer ul{margin:8px 0 0;padding-left:20px}
#product_info_footer li{padding:5px 0}
#product_info_footer a{color:var(--ac)}
@media (min-width:800px){
 #product_info_inner_container.tt-pi{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start}
 .tt-pi .pi-main,.tt-pi .pi-side{display:flex;flex-direction:column;gap:16px;min-width:0}
}

/* ================= Quick View pop-up (fancybox) ================= */
#fancybox-outer{padding:10px;background:var(--surf)!important;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.4)}
#fancybox-content{border:0!important;background:var(--surf);border-radius:12px;overflow:auto!important;margin:0 auto}
#fancybox-title-inside{background:var(--surf);padding:10px 12px 14px!important;border-top:1px solid var(--bd);text-align:left!important}
#fancybox-title-inside b{display:flex;gap:8px;flex-wrap:wrap}
#fancybox-title-inside a.fbox{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:10px;background:var(--ac);color:var(--act)!important;font-weight:600;text-decoration:none;font-size:15px}
#fancybox-title-inside a.fbox+a.fbox,#fancybox-title-inside a.fbox:last-child:not(:first-child){background:none;color:var(--tx)!important;border:1px solid var(--bd)}
#fancybox-close{top:8px;right:8px;width:30px;height:30px;z-index:1103}
#thisstuff{padding:4px 6px!important;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:15px;line-height:1.5;color:var(--tx);background:var(--surf);text-align:left}
#thisstuff .middleProductHeading{font-size:21px;font-weight:800;text-align:left;text-shadow:none;margin:0 30px 4px 0;padding:0;line-height:1.25;color:var(--tx)}
#thisstuff .middleProductSubHeading{font-size:14px;width:auto;margin:2px 0 0;text-align:left;font-style:normal;color:var(--mut)}
#thisstuff #product_info_inner_container{display:flex;flex-direction:column;gap:14px;border:0;margin:10px 0 0;padding:0;float:none;width:auto}
#thisstuff #product_left{float:none;width:auto;margin:0;padding:0;border:0;box-shadow:none;background:none;font-family:inherit;font-size:15px;color:var(--tx);height:auto}
#thisstuff #product_info_inner{float:none;width:auto;margin:0;padding:0;font-size:15px;line-height:1.6;color:var(--tx);overflow-x:auto}
#thisstuff #product_right_image{float:none!important;width:auto!important;text-align:center!important}
#thisstuff #product_right_image img{max-width:100%!important;height:auto}
#thisstuff .product_info_image{position:static;width:auto;margin:0;text-align:center}
#thisstuff img.productInfo{max-width:100%;max-height:220px;width:auto;height:auto;border:0;border-radius:8px;box-shadow:none;cursor:zoom-in}
#thisstuff #product_left h3{display:inline-block;margin:10px 0 0;padding:2px 12px;border-radius:99px;background:#c2410c;color:#fff;font-size:13px}
#thisstuff .prinfoprice{margin:10px 0 0;font-size:28px;font-weight:800;letter-spacing:-.02em;color:var(--tx);text-align:left}
#thisstuff #product_left p{margin:0;padding:10px 0;border-top:1px solid var(--bd);font-size:15px;line-height:1.5}
#thisstuff #product_left p:hover{background:none}
#thisstuff #product_left p b{display:block;margin-bottom:2px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
#thisstuff #product_left p b+br{display:none}
#thisstuff a{color:var(--ac)}
#thisstuff img{max-width:100%;height:auto}
@media (min-width:720px){
 #thisstuff #product_info_inner_container{display:grid;grid-template-columns:270px minmax(0,1fr);gap:22px;align-items:start}
}

/* ================= STAGE 4: cart, checkout, order confirmation ================= */
#middle_inner.tt-checkout,#middle_inner_970.tt-checkout{padding:0;background:none;border:0;overflow:visible;font-family:inherit;font-size:15px;line-height:1.5;color:var(--tx)}
.tt-page .middle_heading,.tt-checkout .middle_heading{font-size:clamp(24px,5vw,32px);font-weight:800;letter-spacing:-.02em;text-align:left;color:var(--tx);padding:4px 0 10px;border:0}
.tt-checkout table,.tt-checkout tbody,.tt-checkout tr,.tt-checkout td,.tt-checkout center{display:block;width:auto!important;max-width:100%;border:0;padding:0;background:none;text-align:left;box-sizing:border-box}
.tt-checkout img[src*="pixel_trans"]{display:none}
.tt-checkout td:has(>img[src*="pixel_trans"]:only-child){display:none}
.tt-checkout .moduleboxcheckout,.tt-checkout td[width="48%"]:not(.moduleboxcheckout)>table{background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);box-shadow:none;padding:16px;margin:0 0 16px;font-size:15px}
.tt-checkout td[width="48%"]:not(.moduleboxcheckout),.tt-checkout td[width="2%"]{padding:0}
.tt-checkout td[width="2%"]{display:none}
.tt-checkout .detailsheading{display:block;float:none!important;margin:18px 0 8px;padding:0;font:800 19px/1.3 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--tx)}
.tt-checkout .rssicon{float:none;display:inline-block;margin:0 0 0 12px;font-size:14px;font-weight:400}
.tt-checkout .rssicon a{display:inline-block;padding:6px 4px;color:var(--ac)}
.tt-checkout a{color:var(--ac)}
.tt-checkout a.abutton,.tt-checkout a.cbutton{color:#fff}
.tt-checkout .main,.tt-checkout .formlabel,.tt-checkout .infoBoxContents{font-family:inherit;font-size:15px;color:var(--tx)}
.tt-checkout td.formlabel{text-align:left!important;font-size:14px;font-weight:600;color:var(--tx);padding:12px 0 4px}
.tt-checkout td.formlabel b{font-weight:600}
.tt-checkout td.formlabel[colspan]{font-size:15px;font-weight:400;color:var(--tx);padding-left:0!important}
.tt-checkout input.login,.tt-checkout select,.tt-checkout textarea,.tt-checkout #geocodeautocomplete{width:100%!important;box-sizing:border-box;min-height:46px;padding:0 12px;border:1px solid var(--bd);border-radius:10px;background:var(--bg);color:var(--tx);font:inherit;font-size:16px}
.tt-checkout textarea{padding:10px 12px;min-height:96px;resize:vertical}
.tt-checkout input.login:focus,.tt-checkout select:focus,.tt-checkout textarea:focus{background:var(--surf);border-color:var(--ac);outline:2px solid var(--ac)}
.tt-checkout input[name$="postcode"],.tt-checkout input[name="postal_code"]{width:140px!important}
.tt-checkout #cartTable td.checkoutproducts:nth-child(5){white-space:nowrap}
.tt-checkout .inputRequirement{color:var(--bad);font-family:inherit;font-size:13px}
.tt-checkout .fauxhref{display:inline-block;padding:8px 4px;color:var(--ac);border:0;text-decoration:underline;cursor:pointer}
.tt-checkout #invoice_details_edit,.tt-checkout #copy_invoice_address,.tt-checkout [id^="copy_"]{font-size:14px}
.tt-checkout div[style*="text-align:right"]{text-align:left!important;padding-right:0!important}
.tt-checkout td[style*="padding-left:50px"]{padding-left:0!important}
.tt-checkout .notes{font-style:italic;font-size:11.5px;line-height:1.35;color:var(--mut);padding:3px 0 4px 12px}
.tt-checkout .tt-warn .notes{color:var(--bad)}
.tt-checkout .notes a{color:var(--ac)}
.tt-checkout tr[style*="display:none"],.tt-checkout tr[style*="display: none"]{display:none}
.tt-checkout .sbutton,.tt-checkout .abutton,.tt-pleaselogin .abutton{min-height:48px;padding:0 22px;font-size:16px;font-weight:700;border-radius:12px;border:0;text-shadow:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;line-height:1.2;text-decoration:none}
.tt-checkout .sbutton.ssmallwrap{min-height:40px;font-size:14px;padding:0 14px;white-space:normal}
.tt-checkout input.slarge,.tt-checkout #process{width:100%;min-height:56px;font-size:18px}
.tt-checkout input[type=checkbox]{width:22px;height:22px;vertical-align:middle;margin-right:8px}
.tt-checkout td:has(>#ttagreeterms){text-align:center;padding:8px 0 14px}
.tt-checkout .cbutton{width:40px;height:40px;border-radius:10px;font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;text-shadow:none;margin-left:4px}
#terms_div,#courierinfo_div{width:min(86vw,560px)!important;height:auto!important;max-height:70vh}
#terms_div,#courierinfo_div{font-size:12.5px}

/* cart table -> cards */
.tt-checkout #cartTable{width:100%!important;font-size:15px}
.tt-checkout #cartTable tr:has(>th){display:none}
.tt-checkout #cartTable tr:has(>td.checkoutproducts){display:grid;position:relative;grid-template-columns:56px auto minmax(0,1fr) auto auto;grid-template-areas:"img desc desc desc desc" "img qty avail unit tot";gap:8px 12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--bd);background:none!important}
.tt-checkout #cartTable tr.rowHighlight:has(>td.checkoutproducts){background:var(--hov)!important}
.tt-checkout #cartTable td.checkoutproducts{font-size:15px;font-family:inherit;color:var(--tx);padding:0}
.tt-checkout #cartTable td.checkoutproducts:nth-child(1){grid-area:img}
.tt-checkout #cartTable td.checkoutproducts:nth-child(2){grid-area:qty}
.tt-checkout #cartTable td.checkoutproducts:nth-child(3){grid-area:desc;padding-right:44px}
.tt-checkout #cartTable td.checkoutproducts:nth-child(4){grid-area:avail;text-align:left}
.tt-checkout #cartTable td.checkoutproducts:nth-child(5){grid-area:unit;text-align:right;color:var(--mut);font-size:14px}
.tt-checkout #cartTable td.checkoutproducts:nth-child(6){grid-area:tot;text-align:right;font-weight:800;font-size:17px}
.tt-checkout #cartTable td.checkoutproducts:nth-child(7){position:absolute;top:8px;right:0;text-align:right}
.tt-checkout #cartTable td.checkoutproducts:nth-child(7) a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px}
.tt-checkout #cartTable td.checkoutproducts:nth-child(7) a:hover{background:var(--hov)}
.tt-checkout #cartTable td.checkoutproducts:nth-child(5)::before{content:"each ";font-size:12px}
.tt-checkout #cartTable input[name="cart_quantity[]"]{width:64px!important;min-height:44px;text-align:center;font-size:16px;padding:0;border:1px solid var(--bd);border-radius:10px;background:var(--bg);color:var(--tx)}
.tt-checkout #cartTable img.listing_small{max-width:56px;max-height:56px;width:auto;height:auto;object-fit:contain;border-radius:8px}
.tt-checkout #cartTable .product_pid{font-size:12px;color:var(--pid)}
.tt-checkout #cartTable td.checkoutproducts a{color:var(--ac);font-weight:600;text-decoration:none}
.tt-checkout #cartTable tr:not(:has(>td.checkoutproducts))>td:not([class]):not(:has(*)){display:none}
.tt-checkout #cartTable tr:has(>td.ordersTotal){display:flex;justify-content:flex-end;align-items:baseline;gap:12px;padding:14px 0 4px}
.tt-checkout #cartTable td.ordersTotal{border:0;background:none;font-size:15px;color:var(--mut);font-weight:600}
.tt-checkout #cartTable td.ordersTotal+td.ordersTotal{font-size:24px;font-weight:800;color:var(--tx);letter-spacing:-.02em}
.tt-checkout #cartTable tr:has(#tr2){text-align:right;font-size:13px;color:var(--mut)}
.tt-checkout #cartTable tr:has(#tr2) td{text-align:right}
.tt-checkout #cartTable #tr2{display:block}
.tt-checkout #cartTable td.red,.tt-checkout #cartTable td[style*="color:#cc0000"]{background:#fff4f2;border:1px solid #f4b4a8;border-radius:12px;padding:12px 14px;margin-top:10px;color:var(--bad)!important;text-align:left!important;font-weight:600}
.tt-checkout #cartTable hr{display:none}
.tt-checkout td:has(>input[name="updatecart"]){display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding-top:10px}
.tt-checkout td:has(>input[name="updatecart"])>.sbutton,.tt-checkout td:has(>input[name="updatecart"])>.abutton{flex:1 1 180px}

/* saved carts */
.tt-checkout tr:has(>td>a.cbutton){display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.tt-checkout td[width="40px"]{flex:none}
.tt-checkout tr:has(>td[width="40px"]){display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--bd)}
.tt-checkout tr:has(>td[width="40px"])>td[width="100%"]{flex:1;min-width:0}
.tt-checkout .heading1{text-align:left;font-size:17px;font-family:inherit}

/* order confirmation page */
.tt-checkout table[style*="border-radius:10px"]{display:grid;grid-template-columns:1fr;gap:12px;background:var(--surf);border:1px solid var(--bd)!important;border-radius:var(--r)!important;padding:16px!important;font-size:15px!important;width:100%!important;max-width:640px}
.tt-checkout table[style*="border-radius:10px"] td{width:auto!important;text-align:left!important}
.tt-checkout #ordersTable{width:100%!important;max-width:640px;margin:16px 0;border:0;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);padding:4px 14px}
.tt-checkout td.main span[style*="font-size:12px"]{font-size:20px!important}
.tt-checkout #ordersTable tr:has(>th){display:none}
.tt-checkout #ordersTable tr:has(>td:nth-child(4):last-child){display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:2px 10px;padding:12px 0;border-bottom:1px solid var(--bd);background:none}
.tt-checkout #ordersTable tr:has(>td:nth-child(4):last-child)>td:nth-child(2){grid-column:2}
.tt-checkout #ordersTable tr:has(>td:nth-child(4):last-child)>td:nth-child(3){grid-column:3;grid-row:1;text-align:right;color:var(--mut);font-size:13px}
.tt-checkout #ordersTable tr:has(>td:nth-child(4):last-child)>td:nth-child(4){grid-column:3;grid-row:2;text-align:right;font-weight:800}
.tt-checkout #ordersTable tr:has(>td:nth-child(4):last-child)>td:nth-child(1){grid-row:1/span 2;font-weight:700;text-align:left}

@media (min-width:900px){
 .tt-checkout tr:has(>td[width="48%"]){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}
 .tt-checkout table[style*="border-radius:10px"]{grid-template-columns:1fr 1fr}
 .tt-checkout input#process,.tt-checkout .slarge{width:auto;min-width:320px}
 .tt-checkout td:has(>#ttagreeterms)+*,.tt-checkout td:has(>input#process){text-align:center}
 .tt-checkout td:has(>input#process){display:flex;justify-content:center}
}
@media (min-width:700px){
 .tt-checkout #cartTable tr:has(>td.checkoutproducts){grid-template-columns:64px minmax(0,1fr) 28px 70px 90px 100px 40px;grid-template-areas:"img desc avail qty unit tot del"}
 .tt-checkout #cartTable td.checkoutproducts:nth-child(3){padding-right:0}
 .tt-checkout #cartTable td.checkoutproducts:nth-child(7){position:static;grid-area:del}
 .tt-checkout #cartTable td.checkoutproducts:nth-child(4){text-align:center}
}

/* ================= STAGE 5: login, create account, My Account, address book ================= */
.tt-checkout #form_container{box-sizing:border-box;position:static;width:100%;max-width:440px;margin:8px auto 0;padding:20px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);box-shadow:none}
.tt-checkout #form_container p,.tt-checkout p.loginlabel{margin:0 0 14px!important;text-align:left!important}
.tt-checkout p.loginlabel label{display:block;margin-bottom:4px;font-size:13px;font-weight:600;color:var(--mut)}
.tt-checkout #form_container div.jsonly{margin:0 0 14px!important;text-align:left!important}
.tt-checkout #form_container .sbutton{width:100%;min-height:50px;font-size:17px}
.tt-checkout #login_error{color:var(--bad);font-weight:600}
.tt-checkout .formbox600{max-width:640px;margin:0 auto 16px;padding:16px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
.tt-checkout input[type=text],.tt-checkout input[type=password],.tt-checkout input[type=email],.tt-checkout input[type=tel]{width:100%;min-height:46px;padding:0 12px;border:1px solid var(--bd);border-radius:10px;background:var(--bg);color:var(--tx);font:inherit;font-size:16px;box-sizing:border-box}
.tt-checkout #tab_header,.tt-account #tab_header{position:relative;width:auto;height:auto;margin:0 0 30px;overflow-x:auto;scrollbar-width:none;background:none;border:0}
.tt-checkout #tab_header ul#primary,.tt-account #tab_header ul#primary{position:static;width:auto;display:flex;gap:8px;list-style:none;margin:0;padding:2px 0;white-space:nowrap;background:none;border:0}
.tt-checkout #tab_header ul#primary li,.tt-account #tab_header ul#primary li{float:none;display:block;margin:0;padding:0;background:none;border:0}
.tt-checkout #tab_header ul#primary li>a,.tt-checkout #tab_header ul#primary li>span,.tt-account #tab_header ul#primary li>a,.tt-account #tab_header ul#primary li>span{display:inline-flex;float:none;width:auto;align-items:center;gap:6px;min-height:42px;margin:0;padding:0 14px;border:1px solid var(--bd);border-radius:99px;background:var(--surf);color:var(--tx);text-decoration:none;font-family:inherit;font-size:14px;font-weight:600;text-align:left}
.tt-checkout #tab_header ul#primary li>span,.tt-account #tab_header ul#primary li>span{background:var(--ac);color:var(--act);border-color:var(--ac)}
.tt-checkout #tab_header img,.tt-account #tab_header img{width:18px;height:18px}
.tt-checkout #tab_header ul#primary li>a.tt-active,.tt-account #tab_header ul#primary li>a.tt-active{background:var(--ac);color:var(--act);border-color:var(--ac)}
.tt-checkout #tab_header ul#primary li>a.tt-active img{filter:brightness(0) invert(1)}
table#account_info{margin-top:50px}
.postcode_lookup{font-weight:400;font-size:12px;margin-left:4px}
.tt-checkout #tab_container,.tt-checkout #contents,.tt-account #tab_container,.tt-account #contents{width:auto;height:auto;padding:0;background:none;border:0}
.tt-checkout table.addressBox{width:100%!important;margin:0 0 12px;padding:14px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);cursor:pointer}
.tt-checkout table.addressBox:hover{border-color:var(--ac)}
/* My Account: order history rows */
.tt-checkout #contents #ordersTable{max-width:none;margin:0;padding:0;background:none;border:0}
.tt-checkout #ordersTable tr:has(>td:nth-child(6)){display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"on tot" "date tot" "ref ref" "status status" "disp disp";gap:2px 12px;padding:12px 14px;margin:0 0 10px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
.tt-checkout #ordersTable tr:has(>td:nth-child(6)):hover{border-color:var(--ac)}
.tt-checkout #ordersTable tr:has(>td:nth-child(6))>td{padding:0;font-size:14px;color:var(--mut)}
.tt-checkout #ordersTable tr:has(>td:nth-child(6))>td:empty{display:none}
.tt-checkout #ordersTable tr:has(>td:nth-child(6))>td:nth-child(1){grid-area:date}
.tt-checkout #ordersTable tr:has(>td:nth-child(6))>td:nth-child(2){grid-area:on;font-size:16px;font-weight:700;color:var(--tx)}
.tt-checkout #ordersTable tr:has(>td:nth-child(6))>td:nth-child(3){grid-area:ref}
.tt-checkout #ordersTable tr:has(>td:nth-child(6))>td:nth-child(4){grid-area:status;color:var(--tx);font-weight:600}
.tt-checkout #ordersTable tr:has(>td:nth-child(6))>td:nth-child(5){grid-area:disp}
.tt-checkout #ordersTable tr:has(>td:nth-child(6))>td:nth-child(6){grid-area:tot;text-align:right;font-size:18px;font-weight:800;color:var(--tx)}
.tt-checkout #ordersTable tr:has(>td:nth-child(6))>td a{color:var(--ac);text-decoration:none}
@media (min-width:900px){
 .tt-checkout #ordersTable tr:has(>td:nth-child(6)),.tt-checkout #ordersTable tr:has(>th:nth-child(6)){grid-template-columns:90px 90px minmax(0,1fr) 120px minmax(0,1.4fr) 100px;grid-template-areas:"date on ref status disp tot";align-items:center;gap:12px}
 .tt-checkout #ordersTable tr:has(>th:nth-child(6)){display:grid;padding:6px 14px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}
 .tt-checkout #ordersTable tr:has(>th:nth-child(6))>th{text-align:left;padding:0;font-weight:600;background:none!important;color:var(--mut)!important}
 .tt-checkout #ordersTable tr:has(>th:nth-child(6))>th:last-child{text-align:right}
}

/* ================= STAGE 6: advanced search, notebooks, custom system editor, compare ================= */
.tt-checkout div[style*="width:450px"]{width:auto!important;max-width:440px;margin-left:auto;margin-right:auto}
#header_listing_left{margin:0 0 10px!important;max-width:none!important}
.middle_inner_container[style]{justify-content:flex-start!important}

/* notebooks */
.notebooks_middle_product_listing{margin:0 0 50px 0!important;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);overflow:hidden}
.notebooks_heading{margin:0 0 0 20px;padding:15px 0;min-height:20px}
.notebooks_heading img.manufacturerInfo{max-height:30px;width:auto;display:block;border-radius:4px}
table.notebooks{display:block;width:100%;border:0;font-size:14px;color:var(--tx)}
table.notebooks thead{display:none}
table.notebooks tbody{display:block}
table.notebooks tr{display:grid;grid-template-columns:minmax(0,1fr);gap:3px 12px;padding:14px;border-bottom:1px solid var(--bd);background:none}
table.notebooks tr:last-child{border-bottom:0}
table.notebooks tr,table.notebooks tbody tr.rowover{background:var(--surf)!important}
table.notebooks tr:hover{background:var(--hov)!important}
.notebooks_heading:empty{display:none}
table.notebooks tr:hover{background:var(--hov)}
table.notebooks td{display:block;padding:0;border:0;text-align:left;color:var(--tx)}
table.notebooks td:empty{display:none}
table.notebooks td:nth-child(n+2):nth-child(-n+9){display:flex;gap:10px;font-size:13px;color:var(--mut)}
table.notebooks td:nth-child(n+2):nth-child(-n+9)::before{flex:none;width:72px;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--mut);padding-top:1px}
table.notebooks td:nth-child(2)::before{content:"CPU"}
table.notebooks td:nth-child(3)::before{content:"Memory"}
table.notebooks td:nth-child(4)::before{content:"SSD"}
table.notebooks td:nth-child(5)::before{content:"HDD"}
table.notebooks td:nth-child(6)::before{content:"Display"}
table.notebooks td:nth-child(7)::before{content:"GPU"}
table.notebooks td:nth-child(8)::before{content:"Warranty"}
table.notebooks td:nth-child(9)::before{content:"OS"}
table.notebooks td:nth-child(1) a{font-size:16px;font-weight:700;color:var(--ac);text-decoration:none}
table.notebooks td:nth-child(10){display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;font-size:20px;font-weight:800}
a.notebook_addtocart_button{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:44px;padding:0 14px;font-size:20px;border-radius:10px}
.notebooks_search_other_models{display:flex;flex-wrap:wrap;width:auto;gap:8px 14px;padding:14px;border-top:1px solid var(--bd);flex-direction:row;justify-content:center}
.notebooks_search_other_models a{display:inline-flex;align-items:center;min-height:36px;padding:0 20px;width:auto;margin:0;border:1px solid var(--bd);border-radius:99px;color:var(--ac);text-decoration:none;font-size:13px;background:none}
.notebooks_search_other_models a:hover{background:var(--ach);border-color:var(--ac);color:var(--acd) !important}

/* custom system editor */
form#system{display:block;margin:0}
form#system table,form#system tbody{display:block;width:100%!important;font-size:15px!important;border-spacing:0}
form#system tr{display:block}
form#system tr:has(>td[colspan="7"]:only-child),form#system tr:has(>td[colspan="8"]:only-child){display:none}
form#system tr:has(>th){display:none}
form#system td{display:block;width:auto!important;padding:0;border:0;text-align:left}
form#system tr[id^="component_"]{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(0,1fr) auto;grid-template-areas:"label label label info" "sel sel sel sel" "qty orig tot diff";gap:8px 10px;align-items:center;padding:5px 14px;margin:0 0 10px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
form#system tr.system_changed{border-color:#f59e0b;background:#fffbeb}
form#system tr.system_discontinued{border-color:#dc2626;background:#fef2f2}
form#system tr[id^="component_"]>td:nth-child(1){grid-area:label;font-weight:700;text-align:left!important}
form#system tr[id^="component_"]>td:nth-child(2){grid-area:qty}
form#system tr[id^="component_"]>td:nth-child(3){display:none}
form#system tr[id^="component_"]>td:nth-child(4){grid-area:sel}
form#system tr[id^="component_"]>td:nth-child(5){grid-area:info;text-align:right}
form#system tr[id^="component_"]>td:nth-child(6){grid-area:orig}
form#system tr[id^="component_"]>td:nth-child(7){grid-area:tot}
form#system tr[id^="component_"]>td:nth-child(8){grid-area:diff;text-align:right;font-size:13px}
form#system select.component_options{width:100%!important;min-height:46px;padding:0 10px;border:1px solid var(--bd);border-radius:10px;background:var(--bg);color:var(--tx);font:inherit;font-size:16px}
form#system input.qty{width:64px;min-height:44px;font-size:16px;border:1px solid var(--bd);border-radius:10px;background:var(--bg);color:var(--tx)}
form#system input.origprice,form#system input.rowtotal{width:100%!important;border:0;background:none;padding:0;font:inherit;font-size:15px;text-align:left!important;color:var(--mut)}
form#system input.rowtotal{font-weight:800;color:var(--tx)}
form#system tr:has(>td>.add_button),form#system tr:has(>td>.upgrade_button){display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:center;padding:8px 0}
form#system .add_button,form#system .upgrade_button{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:10px;font-size:20px;background:var(--surf)!important;border-color:var(--ac)!important;color:var(--ac)}
form#system tr:has(>td>.add_button)>td:first-child,form#system tr:has(>td>.upgrade_button)>td:first-child,form#system tr:has(>td>.add_button)>td:last-child,form#system tr:has(>td>.upgrade_button)>td:last-child{display:none}
form#system tr:has(>td[colspan="4"]>b){margin:14px 0 4px}
form#system tr:has(>td>#total){display:flex;justify-content:flex-end;align-items:baseline;gap:12px;padding:12px 0}
form#system #total{width:auto!important;border:0;background:none;font-size:26px;font-weight:800;text-align:right;color:var(--tx);max-width:160px}
form#system tr:has(>td>#total)>td:first-child{font-size:15px!important;color:var(--mut)}
form#system tr:has(>td>#addtocart){display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}
form#system tr:has(>td>#addtocart)>td{flex:1 1 220px;text-align:left!important}
form#system tr:has(>td>#addtocart) #addtocart{width:100%;min-height:54px;font-size:18px}
form#system tr:has(>td>#assembly)>td:nth-child(2){display:none}
form#system input#assembly{width:22px;height:22px}
form#system .abutton,form#system .sbutton{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;font-size:16px;font-weight:700;border-radius:10px;line-height:1.2;cursor:pointer}
form#system tr:has(>td>#addtocart)>td:first-child{display:flex;gap:10px;flex-wrap:wrap}
form#system input#assembly_total{width:90px!important;border:0;background:none;font-weight:700}
#change_system{width:100%!important;max-width:420px;min-height:44px;font-size:16px;font-family:inherit;border-radius:10px;border:1px solid var(--bd);background:var(--surf);color:var(--tx)}
.middleProductHeading .bigblue{font-size:clamp(22px,4vw,30px);font-weight:800;color:var(--tx);letter-spacing:-.02em}

/* compare pop-up */
#thisstuff #comparetable{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:14px;width:100%;overflow-x:auto;align-items:start}
#thisstuff #comparetable>.tt-cmp-col{min-width:0;box-sizing:border-box;padding:12px;background:var(--surf);border:1px solid var(--bd);border-radius:12px;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
#thisstuff #comparetable img{max-width:100%;height:auto}
#thisstuff .compare_heading{font-size:15px;font-weight:700;line-height:1.35}
#thisstuff .compare_remove{display:inline-block;margin:6px 0;padding:6px 12px;border:1px solid var(--bd);border-radius:8px;color:var(--bad);font-size:13px;cursor:pointer}
#thisstuff .compare_image{max-width:100%;max-height:140px;width:auto;height:auto;object-fit:contain}

@media (min-width:900px){
 table.notebooks{display:table;border-collapse:collapse}
 table.notebooks thead{display:table-header-group}
 table.notebooks tbody{display:table-row-group}
 table.notebooks tr{display:table-row;padding:0}
 table.notebooks th{padding:10px 8px;text-align:left;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--mut);background:var(--hov);border-bottom:1px solid var(--bd);cursor:pointer;white-space:nowrap}
 table.notebooks td,table.notebooks td:nth-child(n+2):nth-child(-n+9),table.notebooks td:nth-child(10){display:table-cell;padding:10px 8px;border-bottom:1px solid var(--bd);font-size:13px;color:var(--tx);vertical-align:middle;margin:0}
 table.notebooks td:nth-child(n+2):nth-child(-n+9)::before{content:none!important}
 table.notebooks td:empty{display:table-cell}
 table.notebooks td:nth-child(10){white-space:nowrap;font-size:16px;font-weight:800;text-align:right}
 form#system tr[id^="component_"]{grid-template-columns:150px 64px minmax(0,1fr) 84px 90px 100px 90px;grid-template-areas:"label qty sel info orig tot diff"}
 form#system tr:has(>th){display:grid;grid-template-columns:150px 64px minmax(0,1fr) 84px 90px 100px 90px;grid-template-areas:"label qty sel info orig tot diff";gap:8px 10px;align-items:center;padding:0 14px;margin:0 0 8px;background:var(--hov);border-radius:10px}
 form#system th{display:block;padding:9px 0;border:0;background:none;text-align:left;font-size:12px!important;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--mut)}
 form#system th:nth-child(1){grid-area:label}
 form#system th:nth-child(2){grid-area:qty}
 form#system th:nth-child(3){display:none}
 form#system th:nth-child(4){grid-area:sel}
 form#system th:nth-child(5){grid-area:info}
 form#system th:nth-child(6){grid-area:orig}
 form#system th:nth-child(7){grid-area:tot}
}

/* ================= STAGE 7: information pages, account-created page ================= */
#middle_inner.tt-page{font-size:15px;line-height:1.65;color:var(--tx);padding:18px}
.tt-page .main,.tt-page td,.tt-page p,.tt-page li{font-family:inherit;font-size:15px;color:var(--tx)}
.tt-page .main a,.tt-page a{color:var(--acd);background:none}
.tt-page img{max-width:100%;height:auto}
.tt-page table{max-width:100%}
.tt-page .faqq{cursor:pointer;font-weight:700;padding:12px 0 6px;margin-top:6px;border-top:1px solid var(--bd);color:var(--tx);min-height:44px}
.tt-page .faqq,.tt-page .faqa,.tt-page .faqa *,.tt-page .main *:not(h1):not(h2):not(h3):not(b):not(strong):not(a){font-family:inherit;font-size:15px;line-height:1.65}
.tt-page .faqq:hover{color:var(--acd);background:none}
.tt-page .faqa{padding:0 18px 10px;color:var(--tx);max-width:800px}
.tt-checkout .tt-success-msg{font-size:16px;margin:0 0 18px}
.tt-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:640px;margin:0 0 20px}
a.tt-tile{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 14px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);color:var(--tx)!important;font-weight:600;text-decoration:none}
a.tt-tile:hover{border-color:var(--ac)}
a.tt-tile img{width:32px;height:32px;flex:none}
.tt-success-actions{margin:0}
.tt-checkout .infoBox{background:none;border:0}
@media (min-width:700px){.tt-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}

.tt-checkout form[name="contact_us"]{max-width:680px}

#thisstuff table[width="840"],#thisstuff table[width="400"]{width:100%!important;max-width:840px}
#thisstuff #ordersTable{width:100%!important}
#thisstuff td.main{font-family:inherit;font-size:14px}

.tt-hint{display:block;margin:3px 0 0 12px;font-size:11.5px;font-weight:400;line-height:1.35;color:var(--mut);font-style:italic;text-align:left}
.tt-hint a{color:var(--ac)}
.gallery_image img.inner_product,.gallery_image img.inner_manufacturer,.moduleboxgallery2 img.inner_product,.moduleboxgallery2 img.inner_manufacturer{position:static;display:block;margin:0 auto;left:auto;right:auto;top:auto;bottom:auto;width:auto;max-width:100%;height:auto;max-height:110px;object-fit:contain;border-radius:4px}

/* info pages: same text styling as shipping.php */
/* site icons (images/icons/*.png are 96px masters) */
:where(img[src*="images/icons/"]:not([src*="compatible"])){width:18px;height:18px;vertical-align:-3px}
.tt-checkout #tab_header ul#primary li>span img,.tt-account #tab_header ul#primary li>span img{filter:brightness(0) invert(1)}
/* message stack */
body td.messageStackError,body .messageStackError,body td.messageStackWarning,body .messageStackWarning,body td.messageStackSuccess,body .messageStackSuccess{display:block;margin:0 0 6px;font-family:inherit;font-size:14.5px;font-weight:600;line-height:1.45;text-align:left!important;padding:12px 16px 12px 46px;border:1px solid;border-left-width:5px;border-radius:12px;background-repeat:no-repeat;background-position:14px 12px;background-size:20px}
body .messageStackError em,body .messageStackWarning em,body .messageStackSuccess em{font-style:normal}
body .messageStackError img,body .messageStackWarning img,body .messageStackSuccess img{display:none}
body td.messageStackError,body .messageStackError{background-color:#fef1f0;border-color:#d92d20;color:#912018;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d92d20' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='M12 7v6M12 16.5v.5'/%3E%3C/svg%3E")}
body td.messageStackWarning,body .messageStackWarning{background-color:#fff6e6;border-color:#f79009;color:#93370d;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dc6803' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5 2.5 20h19z'/%3E%3Cpath d='M12 10v4.5M12 17.2v.3'/%3E%3C/svg%3E")}
body td.messageStackSuccess,body .messageStackSuccess{background-color:#ecfdf3;border-color:#12b76a;color:#05603a;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2312b76a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='m8 12.3 2.7 2.7L16 9.5'/%3E%3C/svg%3E")}
.tt-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 0}
.tt-actions-main{display:inline-flex;align-items:center;gap:10px;margin-left:auto}
/* messageStack: no double box when both <tr> and <td> carry the class */
body tr.messageStackError:has(>.messageStackError),body tr.messageStackWarning:has(>.messageStackWarning),body tr.messageStackSuccess:has(>.messageStackSuccess){background:none;border:0;padding:0;margin:0;border-radius:0;box-shadow:none}
body tr.messageStackError:has(>.messageStackError)>img,body tr.messageStackSuccess:has(>.messageStackSuccess)>img{display:none}
/* address book */
.tt-note{margin:8px 0 14px;padding:10px 14px;border-radius:12px;background:var(--hov);color:var(--mut);font-size:13.5px;line-height:1.45;text-align:left}
a.tt-add{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:12px;font-weight:700}
a.tt-add span{font-size:20px;line-height:1;font-weight:400}
/* selects (checkout etc.) */
.tt-checkout select{appearance:none;-webkit-appearance:none;padding-right:38px;background:var(--surf) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%235d6675' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 8 5 5 5-5'/%3E%3C/svg%3E") no-repeat right 12px center/16px;font-family:inherit;font-size:15px;color:var(--tx);cursor:pointer}
/* pagination */
.tt-pager{display:block;font-size:0;line-height:0;text-align:center}
.tt-pager a.pageResults,.tt-pager .pageResults_fl,.tt-pager .pageResults_pn,.tt-pager .pageResults_fl_nolink,.tt-pager .pageResults_pn_nolink,.tt-pager b,.tt-pager strong,a.pageResults,.pageResults_fl,.pageResults_pn,.pageResults_fl_nolink,.pageResults_pn_nolink{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:auto;min-width:38px;height:38px;padding:0 12px;margin:2px 3px;vertical-align:middle;border:1px solid var(--bd);border-radius:10px;background:var(--surf);color:var(--tx);font-size:14px;font-weight:600;line-height:1;text-decoration:none;text-align:center}
.tt-pager a.pageResults:hover,.pageResults_fl:hover,.pageResults_pn:hover,a.pageResults:hover{background:var(--hov);border-color:var(--ac);color:var(--ac);text-decoration:none}
.tt-pager b,.tt-pager strong{background:var(--ac);border-color:var(--ac);color:var(--act)}
.pageResults_fl_nolink,.pageResults_pn_nolink{opacity:.4;cursor:default;background:none}
select.pageResults_jump,input.pageResults_jump{box-sizing:border-box;width:auto!important;min-width:64px;padding-right:26px;height:38px;margin:2px 3px;vertical-align:middle;padding:0 8px;border:1px solid var(--bd);border-radius:10px;background:var(--surf);color:var(--tx);font:inherit;font-size:14px;text-align:center}
.search_split_results{display:block;height:auto;line-height:1.5;background:none;text-align:center;margin:20px 0;padding:0;color:var(--mut);font-size:14px}
.search_split_results form{display:block;margin:10px 0 0}
.search_split_results .tt-pager{float:none}
.tt-checkout tr:has(>td>.tt-pager),.tt-account tr:has(>td>.tt-pager){display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 16px;margin:20px 0;padding:0;color:var(--mut);font-size:14px}
.tt-checkout tr:has(>td>.tt-pager)>td,.tt-account tr:has(>td>.tt-pager)>td{width:auto!important;text-align:center}
/* Most Recent list */
.most_recent_container{margin:12px 0;padding:0;border:1px solid var(--bd);border-radius:var(--r);background:var(--surf);overflow:hidden}
.most_recent_container .most_popular_recent_heading{margin:0;padding:10px 14px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);background:var(--hov)}
ul.most_popular_recent{margin:0;padding:0;list-style:none;font-size:14px;line-height:1.35}
ul.most_popular_recent li{margin:0;padding:0;border-top:1px solid var(--bd)}
ul.most_popular_recent li:first-child{border-top:0}
.most_popular_recent_jump{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;border:0;font-size:14px;line-height:1.35;white-space:normal;color:var(--tx);cursor:pointer}
.most_popular_recent_jump::after{content:"";flex:none;width:7px;height:7px;border-top:2px solid var(--mut);border-right:2px solid var(--mut);transform:rotate(45deg)}
.most_popular_recent_jump:hover{background:var(--hov);color:var(--ac);border:0}
.most_popular_recent_jump:hover::after{border-color:var(--ac)}
/* Recently Viewed (footer) */
#recently_viewed_container{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;align-items:stretch;box-sizing:border-box;width:auto;max-width:1256px;margin:40px auto 0;padding:14px;font-size:0;text-align:left;border-top:5px solid var(--bd);border-bottom:none;scrollbar-width:thin}
#recently_viewed_container::before{content:"Recently viewed";flex:0 0 100%;text-align:center;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);margin:0 0 2px;position:sticky;left:0}
#recently_viewed_container .recently_viewed_item{position:static;display:flex;flex-direction:column;flex:0 0 132px;width:132px;height:auto;margin:0;padding:8px;box-sizing:border-box;overflow:hidden;background:var(--surf);border:1px solid var(--bd);border-radius:12px;box-shadow:none;text-align:center;font-size:13px;transition:border-color .15s}
#recently_viewed_container .recently_viewed_item:hover{border-color:var(--ac);box-shadow:none}
#recently_viewed_container .recently_viewed_image{position:static;display:grid;place-items:center;width:auto;height:68px;margin:0 0 6px}
#recently_viewed_container .testicool{position:static;display:block;margin:0 auto;top:auto;bottom:auto;left:auto;right:auto}
#recently_viewed_container .recently_viewed_image img{margin:0 auto;width:auto;height:auto;max-width:100%;max-height:64px;object-fit:contain}
#recently_viewed_container .recently_viewed_text{position:static;width:auto;height:auto;overflow:hidden;font-size:12.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}
#recently_viewed_container .recently_viewed_text a{color:var(--tx);text-decoration:none}
#recently_viewed_container .recently_viewed_text a:hover{color:var(--ac)}
/* Quick Info pill */
a.tt-qi{display:inline-flex;align-items:center;gap:5px;min-height:21px;padding:0 10px;margin:0;border:1px solid var(--bd);border-radius:99px;background:var(--surf);color:var(--ac)!important;font-size:11.5px;font-weight:400!important;line-height:1;text-decoration:none!important;white-space:nowrap;vertical-align:middle;cursor:pointer;transition:background .15s,border-color .15s}
a.tt-qi:hover{background:var(--hov);border-color:var(--ac)}
@media (pointer:coarse){a.tt-qi{min-height:28px;padding:0 12px;font-size:12.5px}}
.product_pid a.tt-qi{margin-left:2px}
.gallery_qi{margin:2px 0 0;text-align:left}
.moduleboxgallery2>.gallery_price,.moduleboxgallery2>.gallery_highlight{margin-top:auto}
.moduleboxgallery2>.gallery_highlight+.gallery_price{margin-top:0}
/* Featured / Recently Added product cards (new_products.php) */
.middle_heading.tt-section-heading{margin:28px 0 12px;padding:0;border:0;font-size:clamp(20px,3.5vw,26px);font-weight:800;letter-spacing:-.02em;text-align:left;color:var(--tx)}
.tt-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;width:auto;margin:0 0 32px;float:none}
.tt-card{position:relative;display:flex;flex-direction:column;gap:8px;box-sizing:border-box;min-width:0;padding:12px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);transition:border-color .15s,box-shadow .15s}
.tt-card:hover{border-color:var(--ac);box-shadow:0 8px 22px rgba(20,24,31,.08)}
.tt-card .tt-card-img{display:grid;place-items:center;height:132px;border-radius:10px;background:#fff}
.tt-card .tt-card-img img{width:auto;height:auto;max-width:100%;max-height:120px;object-fit:contain}
.tt-card-body{display:flex;flex-direction:column;gap:6px;flex:1}
.tt-card .tt-card-title{color:var(--tx);font-size:14.5px;font-weight:400;line-height:1.35;text-decoration:none;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tt-card .tt-card-title:hover{color:var(--ac);text-decoration:none}
.tt-card-price{margin-top:auto;font-size:19px;line-height:1.2;color:var(--tx)}
.tt-card-price b{font-weight:800}
.tt-card-price small{font-size:11px;font-weight:400;color:var(--pid)}
.tt-card-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
.tt-card .specials_addtocart{display:inline-flex;align-items:center;justify-content:center;flex:1 1 auto;height:auto;min-height:38px;padding:0 14px;font-size:14px;font-weight:600;border-radius:10px;box-shadow:none;white-space:nowrap}
.tt-card .loginforpricing{font-size:13px}
.tt-card-badge{position:absolute;top:10px;left:10px;z-index:1;padding:2px 9px;border-radius:99px;background:#c2410c;color:#fff;font-size:11.5px;font-weight:600;line-height:1.5}
.tt-card .cart_in_product{position:absolute;top:10px;right:10px;z-index:1;width:24px;height:24px;margin:0;border:0;border-radius:50%;background:#157f3b url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4.5 10.5 3.5 3.5 7.5-8'/%3E%3C/svg%3E") center/14px no-repeat}
.tt-card .cart_out_product{display:none}
/* ================= STAGE 20: super-menu tweaks, search gallery heading ================= */
#left_column,#left_column *{font-family:inherit}
#ttnav1 li a:hover,#ttnav2 li a:hover{text-decoration:underline;text-underline-offset:3px}
#left_column .infoBoxHeading{min-height:34px;display:flex;align-items:center}
.tt-cathead{justify-content:flex-start;gap:16px}
.tt-sortbtns{display:inline-flex;border:1px solid var(--bd);border-radius:999px;overflow:hidden;text-transform:none;letter-spacing:0}
.tt-sortbtns button{border:0;background:var(--surf);color:var(--mut);font-size:12.5px;font-weight:600;padding:5px 12px;min-height:28px;cursor:pointer}
.tt-sortbtns button+button{border-left:1px solid var(--bd)}
.tt-sortbtns button:hover{background:var(--ach);color:var(--acd)}
.tt-sortbtns button[aria-pressed="true"]{background:var(--ac);color:var(--act)}
br:has(+.CatHeading_Gallery){display:none}
.CatHeading_Gallery{box-sizing:border-box;clear:both;margin:20px 0 10px}
.CatHeading_Gallery .rssicon{float:none;display:inline-flex;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:400;color:var(--mut)}
.CatHeading_Gallery .sortby{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border:1px solid var(--bd);border-radius:999px;background:var(--surf);color:var(--tx);font-size:13px;font-weight:600;cursor:pointer;line-height:1.4}
.CatHeading_Gallery .sortby:hover{border-color:var(--ac);color:var(--ac)}
.CatHeading_Gallery .sortby img{width:10px;height:auto}
/* Search results gallery: pager/headings span the whole grid; new section for uncategorised */
.middle_product_listing:has(.moduleboxgallery2)>.search_split_results,.middle_product_listing:has(.moduleboxgallery2)>.CatHeading_Gallery,.middle_product_listing:has(.moduleboxgallery2)>br,.middle_product_listing:has(.moduleboxgallery2)>.tt-repeat-wrap{grid-column:1/-1}
.search_split_results{width:100%;box-sizing:border-box}
.CatHeading_Gallery.tt-newsection{margin-top:48px;background:none;border:0;border-top:2px solid var(--ac);border-radius:0;padding:16px 2px 4px;font-size:20px}
.tt-repeat-wrap{display:block;margin:18px 0 6px;text-align:center}
a.tt-repeat{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 18px;border:1px solid var(--ac);border-radius:999px;background:var(--surf);color:var(--ac);font-size:14px;font-weight:600;text-decoration:none!important;border-bottom:1px solid var(--ac)!important}
a.tt-repeat::before{content:"\21BB";font-size:16px;line-height:1}
a.tt-repeat:hover{background:var(--ac);color:var(--act)}
/* Category headings: sort controls moved to the toolbar (A-Z / Price buttons) */
.CatHeading_Gallery .rssicon{display:none}
th.sort_th{pointer-events:none}
th.sort_th a{pointer-events:auto}
th.sort_th img[class^="sortby_arrow"]{display:none}
.tt-seg.tt-sort button{width:auto;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:6px}
.tt-seg.tt-sort button+button{border-left:1px solid var(--bd)}
.tt-seg.tt-sort button i{font-style:normal;font-size:11px}
.CatHeading_Gallery a.CatHeading_desc,th.CatHeading_image a.CatHeading_desc{color:inherit;background:none;padding:0;margin:0;border:0;font:inherit;text-decoration:none;display:inline}
.CatHeading_Gallery a.CatHeading_desc:hover,th.CatHeading_image a.CatHeading_desc:hover{color:var(--ac);text-decoration:underline}
/* ================= STAGE 23 ================= */
table.tablesorter>thead th.CatHeading_price,table.tablesorter>thead th.CatHeading_price.sort_th{display:none}
table.tablesorter>thead>tr>th:first-child,.CatHeading_Gallery{font-size:20px}
table.tablesorter>thead>tr>th:first-child{line-height:1.25}
.middle_product_listing{margin-bottom:40px}
.CatHeading_Gallery{margin-top:40px}
.middle_display_options{justify-content:flex-end}
.middle_display_options input[type=checkbox]{order:2;margin:0 0 0 -6px}
.middle_display_options label{order:2}
.middle_display_options .tt-seg{order:3}
.middle_display_options .tt-seg.tt-sort{order:4}
.tt-disclaimer{display:block;max-width:800px;margin:10px auto 0;padding:14px 20px;box-sizing:border-box;font-size:12.5px;line-height:1.65;color:var(--bd);background:rgba(0,0,0,0.1);border-radius:12px;text-align:center;font-weight:400}
/* ================= STAGE 24 ================= */
/* Buttons: one rule so no container can recolour them or change their font (recurring problem). */
body a.abutton,body a.abutton:hover,body a.abutton:visited,body a.sbutton,body a.sbutton:hover,body a.cbutton,body a.cbutton:hover,body .abutton,body .sbutton,body .cbutton,body input.abutton,body input.sbutton,body button.abutton,body button.sbutton{color:var(--surf)!important;font-family:inherit}
.product_listing_addtocart{flex:none}
/* Login popup */
.tt-login{position:relative;padding:28px 28px 22px;font-family:inherit;color:var(--tx)}
.tt-login-title{margin:0 0 18px;font-size:22px;font-weight:800;letter-spacing:-.01em;color:var(--tx)}
.tt-login-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:var(--hov);color:var(--tx);font-size:22px;line-height:1;cursor:pointer}
.tt-login-x:hover{background:var(--ach)}
#login_form_div p.header2{margin:0 0 14px!important;padding:10px 12px;border-radius:10px;background:#fdecea;color:var(--bad);font-size:14px;font-weight:600}
#login_form_div p.loginlabel{margin:0 0 14px!important;font-family:inherit}
#login_form_div p.loginlabel label{display:block;margin:0 0 5px;font-size:13px;font-weight:600;color:var(--mut)}
#login_form_div input.login{display:block;width:100%;box-sizing:border-box;min-height:46px;padding:0 12px;border:1px solid var(--bd);border-radius:10px;background:var(--surf);color:var(--tx);font:inherit;font-size:15px}
#login_form_div input.login:focus{border-color:var(--ac);outline:2px solid var(--ac)}
#login_form_div .tt-login-forgot{display:block;margin-top:6px;font-size:13px}
#login_form_div a{color:var(--ac)}
#login_form_div .tt-login-actions{margin:4px 0 0!important}
#login_form_div .tt-login-actions .sbutton{width:100%;min-height:48px;height:auto;padding:0 20px;border-radius:12px;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center}
#login_form_div .tt-login-remember{margin:14px 0 0!important;font-size:14px;display:flex;flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:8px}
#login_form_div .tt-login-remember label{display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:var(--tx)}
#login_form_div .tt-login-remember input{width:18px;height:18px;margin:0}
#login_form_div .tt-login-note{margin:14px 0 0!important;padding:10px 12px;border-radius:10px;background:var(--hov);color:var(--mut);font-size:13px}
#login_form_div .tt-login-create{margin:16px 0 0!important;padding-top:16px;border-top:1px solid var(--bd);text-align:center!important;font-size:14px;color:var(--mut)}
#login_form_div .tt-login-create a{font-weight:600}
/* Mini-cart footer */
.minicart_footer a:not(.abutton):has(>img){display:none}
.minicart_footer a.main{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid var(--bd);border-radius:10px;background:var(--surf);font-size:13px;font-weight:600;text-decoration:none}
.minicart_footer a.main:hover{background:var(--ach);border-color:var(--ac);color:var(--acd)!important}
.minicart_footer .abutton{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 18px;font-size:14px;font-weight:600}
#header .minicart_footer a.main{font-size:13px;font-weight:600}
/* Footer notice */
.tt-disclaimer{display:flex;flex-direction:column;gap:2px}
.tt-disclaimer span{display:block}
.tt-footer-copy{margin:18px 0 0;padding:0 0 22px;font-size:16px;color:var(--ft)}
/* ================= STAGE 25 ================= */
.tt-checkout td.tt-center{text-align:center}
.tt-checkout td.tt-center label{display:inline}
.tt-checkout td.tt-center input.nada{display:inline-block;vertical-align:middle}
.tt-checkout .sbutton.tt-btn-wide{width:auto;min-width:220px;padding:0 28px;white-space:nowrap}
.tt-logoff{max-width:460px;margin:24px auto;padding:32px 28px;text-align:center;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
.tt-logoff-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--ok);color:#fff;font-size:28px;font-weight:700;margin:0 0 14px}
.tt-logoff-msg{margin:0 0 4px;font-size:18px;font-weight:700;color:var(--tx)}
.tt-logoff-sub{margin:0 0 22px;font-size:15px;color:var(--mut)}
.tt-logoff-actions{margin:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.tt-logoff-actions .abutton{min-width:130px;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;font-size:15px;font-weight:600}
/* ================= STAGE 26: account pill ================= */
.tt-acct{position:relative;display:inline-flex;align-items:center;gap:14px}
.tt-acct-btn{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px 0 4px;border:1px solid var(--bd);border-radius:999px;background:var(--surf);color:var(--tx);font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.tt-acct-btn:hover,.tt-acct-btn[aria-expanded="true"]{background:var(--hov);border-color:var(--ac)}
.tt-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--ac);color:var(--act);font-size:13px;font-weight:700;line-height:1}
.tt-avatar::after{content:"";position:absolute;right:-2px;bottom:-2px;width:10px;height:10px;border-radius:50%;background:var(--ok);border:2px solid var(--surf)}
.tt-acct-caret{width:7px;height:7px;border-right:2px solid var(--mut);border-bottom:2px solid var(--mut);transform:rotate(45deg) translate(-2px,-2px);transition:transform .15s}
.tt-acct-btn[aria-expanded="true"] .tt-acct-caret{transform:rotate(-135deg) translate(-2px,-2px)}
.tt-acct-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:400;min-width:230px;padding:6px;background:var(--surf);border:1px solid var(--bd);border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.2);text-align:left}
.tt-acct-menu[hidden]{display:none}
.tt-acct-head{padding:8px 12px 10px;margin:0 0 4px;border-bottom:1px solid var(--bd);font-size:13px;color:var(--mut);line-height:1.4}
.tt-acct-head b{display:block;font-size:15px;color:var(--tx)}
.tt-acct-menu a{display:flex;align-items:center;min-height:40px;padding:0 12px;border-radius:8px;color:var(--tx)!important;font-size:14px;font-weight:500;text-decoration:none}
.tt-acct-menu a:hover{background:var(--hov);color:var(--acd)!important}
.tt-acct-menu a.tt-acct-logoff{margin-top:4px;border-top:1px solid var(--bd);border-radius:0 0 8px 8px;color:var(--bad)!important}
.tt-acct-out{display:inline-flex;align-items:center;gap:14px}
a.tt-login-btn{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 16px 0 12px;border-radius:999px;background:var(--ac);color:var(--act)!important;font-size:14px;font-weight:600;text-decoration:none}
a.tt-login-btn:hover{filter:brightness(1.1)}
a.tt-login-btn svg{width:18px;height:18px;flex:none}
a.tt-create-link{font-size:14px;font-weight:600;color:var(--ac);text-decoration:none}
a.tt-create-link:hover{text-decoration:underline}
@media (max-width:599px){.tt-acct-name,a.tt-create-link,a.tt-login-btn span{display:none}a.tt-login-btn{padding:0 9px}}
/* Session-ended notice */
#tt-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:9000;display:flex;align-items:center;gap:12px;max-width:min(94vw,560px);padding:12px 12px 12px 16px;background:var(--tx);color:var(--surf);border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.35);font-size:14px;line-height:1.4}
#tt-toast a{color:#9fd0ff;font-weight:600;white-space:nowrap}
#tt-toast button{flex:none;width:30px;height:30px;border:0;border-radius:50%;background:rgba(255,255,255,.15);color:inherit;font-size:18px;line-height:1;cursor:pointer}
/* ================= STAGE 29: front page extras ================= */
.tt-front{margin:6px 0 10px}
.tt-front-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (min-width:900px){.tt-front-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}}
a.tt-front-tile{display:flex;flex-direction:column;gap:4px;padding:16px;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);color:var(--tx)!important;text-decoration:none}
a.tt-front-tile:hover{border-color:var(--ac);box-shadow:0 6px 18px rgba(0,0,0,.08)}
a.tt-front-tile b{font-size:16px;font-weight:700}
a.tt-front-tile span{font-size:13px;color:var(--mut)}
a.tt-front-tile em{margin-top:2px;font-style:normal;font-size:13px;font-weight:700;color:var(--ac)}
a.tt-front-tile span.tt-front-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:6px;border-radius:12px;background:var(--hov);color:var(--ac)}
.tt-front-icon svg{width:26px;height:26px}
.tt-front-pop{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0}
.tt-front-label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);margin-right:4px}
.tt-front-pop a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border:1px solid var(--bd);border-radius:999px;background:var(--surf);color:var(--tx);font-size:14px;text-decoration:none}
.tt-front-pop a:hover{border-color:var(--ac);color:var(--ac)}
.tt-ticker{display:flex;align-items:center;gap:12px;margin:14px 0 0;padding:8px 8px 8px 14px;background:var(--hov);border:1px solid var(--bd);border-radius:12px;font-size:14px}
.tt-ticker-tag{flex:none;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ac)}
.tt-ticker-list{position:relative;flex:1;min-width:0;height:24px;overflow:hidden}
a.tt-ticker-item{position:absolute;left:0;right:0;top:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--tx);text-decoration:none;opacity:0;transform:translateY(8px);transition:opacity .35s,transform .35s;pointer-events:none}
a.tt-ticker-item.on{opacity:1;transform:none;pointer-events:auto}
a.tt-ticker-item:hover{color:var(--ac);text-decoration:underline}
.tt-ticker-pause{flex:none;width:30px;height:30px;border:0;border-radius:50%;background:var(--surf);color:var(--mut);font-size:9px;cursor:pointer}
@media (prefers-reduced-motion:reduce){a.tt-ticker-item{transition:none}}
/* ================= STAGE 30 ================= */
.tt-carousel{position:relative;margin:0 0 32px}
.tt-products.tt-products-recent{display:flex;flex-wrap:nowrap;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;scroll-behavior:smooth;scrollbar-width:none;margin:0;padding:2px 2px 6px}
.tt-products-recent::-webkit-scrollbar{display:none}
.tt-products-recent>.tt-card{flex:0 0 220px;scroll-snap-align:start}
.tt-car-btn{position:absolute;top:50%;z-index:5;width:40px;height:40px;margin-top:-26px;border:1px solid var(--bd);border-radius:50%;background:var(--surf);color:var(--tx);font-size:20px;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.15)}
.tt-car-btn:hover{border-color:var(--ac);color:var(--ac)}
.tt-car-btn.prev{left:-8px}.tt-car-btn.next{right:-8px}
.tt-car-btn[hidden]{display:none}
.tt-ticker-item{display:flex!important;align-items:baseline;gap:12px}
.tt-ticker-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tt-ticker-price{flex:none;font-weight:700;color:var(--tx)}
.tt-ticker-price small{font-size:11px;font-weight:400;color:var(--pid)}
/* ================= STAGE 31 ================= */
.tt-carousel{margin-bottom:14px}
.tt-carousel+.tt-ticker,.tt-products-recent+.tt-ticker{margin:0 0 32px}
body.tt-chip-filtered #most_popular_recent_container{display:none!important}
#most_popular_recent_container .most_recent_container{width:fit-content;max-width:min(100%,800px);min-width:min(500px,100%);margin:0 0 0 auto}
#most_popular_recent_container .most_popular_recent_heading{padding:8px 12px;font-size:11px}
#most_popular_recent_container ul.most_popular_recent{margin:0;padding:0;font-size:12px;line-height:1.35}
#most_popular_recent_container .most_popular_recent_jump{padding:7px 12px;font-size:12px}
a.tt-qi.tt-qi-warn{border-color:var(--bad);color:var(--bad)!important}
/* shopping_cart.php (class tt-cartpage) */
.tt-cartpage .tt-cart{display:grid;grid-template-columns:1fr;gap:20px;align-items:start;margin:0 0 28px}
@media(min-width:900px){.tt-cartpage .tt-cart{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.tt-cartpage .tt-cart-sum{position:sticky;top:76px}}
.tt-cartpage .tt-cart-h{font-weight:800;font-size:19px;line-height:1.3;font-family:inherit;margin:6px 0 12px;color:var(--tx)}
.tt-cartpage .tt-cart-h small{font-weight:400;color:var(--mut);font-size:15px}
.tt-cartpage .tt-banner{border:1px solid var(--bd);border-left:4px solid var(--ac);background:var(--surf);border-radius:var(--r);padding:10px 14px;margin:0 0 10px;font-size:14px}
.tt-cartpage .tt-banner-warn{border-left-color:var(--bad);color:var(--bad)}
.tt-cartpage .tt-ci{display:grid;grid-template-columns:64px 1fr auto auto 36px;gap:6px 14px;align-items:center;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);padding:12px;margin:0 0 10px}
.tt-cartpage .tt-ci-bad{border-color:var(--bad)}
.tt-cartpage .tt-ci-img img{width:64px;height:64px;object-fit:contain;border-radius:8px;display:block}
.tt-cartpage .tt-ci-noimg{display:block;width:64px;height:64px;border-radius:8px;background:var(--hov)}
.tt-cartpage .tt-ci-info{min-width:0;display:flex;flex-direction:column;gap:2px;font-size:14px}
.tt-cartpage .tt-ci-name{font-weight:600;color:var(--tx)!important;text-decoration:none}
.tt-cartpage .tt-ci-name:hover{text-decoration:underline}
.tt-cartpage .product_pid{color:var(--pid);font-size:12px}
.tt-cartpage .tt-avail{font-size:12px;font-weight:600}
.tt-cartpage .tt-avail.ok{color:var(--ok)}
.tt-cartpage .tt-avail.no{color:var(--bad)}
.tt-cartpage .tt-ci-qty{display:inline-flex;align-items:center;border:1px solid var(--bd);border-radius:10px;overflow:hidden;background:var(--bg)}
.tt-cartpage .tt-ci-qty button{width:34px;height:36px;border:0;background:none;font-size:18px;color:var(--tx);cursor:pointer}
.tt-cartpage .tt-ci-qty button:hover:not(:disabled){background:var(--hov)}
.tt-cartpage .tt-ci-qty button:disabled{opacity:.35;cursor:default}
.tt-cartpage input.tt-qty{width:44px!important;min-height:36px!important;height:36px;padding:0!important;border:0!important;border-radius:0!important;text-align:center;background:none!important;font-size:15px!important;-moz-appearance:textfield}
.tt-cartpage .tt-ci-price{text-align:right;min-width:84px;display:flex;flex-direction:column}
.tt-cartpage .tt-ci-price small{color:var(--mut);font-size:12px}
.tt-cartpage .tt-ci-rm{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:8px;color:var(--mut)}
.tt-cartpage .tt-ci-rm:hover{background:var(--hov);color:var(--bad)}
.tt-cartpage .tt-ci-rm svg{width:20px;height:20px}
@media(max-width:640px){.tt-cartpage .tt-ci{grid-template-columns:56px 1fr auto;grid-template-areas:"img info rm" "qty qty price"}.tt-cartpage .tt-ci-img{grid-area:img}.tt-cartpage .tt-ci-info{grid-area:info}.tt-cartpage .tt-ci-rm{grid-area:rm;justify-self:end}.tt-cartpage .tt-ci-qty{grid-area:qty;justify-self:start}.tt-cartpage .tt-ci-price{grid-area:price}.tt-cartpage .tt-ci-img img,.tt-cartpage .tt-ci-noimg{width:56px;height:56px}}
.tt-cartpage .tt-cart-sum{background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);padding:16px}
.tt-cartpage .tt-sum-rows{display:grid;grid-template-columns:1fr auto;gap:6px 12px;margin:0 0 8px}
.tt-cartpage .tt-sum-rows dt,.tt-cartpage .tt-sum-rows dd{margin:0}
.tt-cartpage .tt-sum-total{font-weight:800;font-size:18px;border-top:1px solid var(--bd);padding-top:8px}
.tt-cartpage .tt-sum-note{font-size:13px;color:var(--mut);margin:0 0 12px}
.tt-cartpage a.tt-sum-checkout{display:flex;width:100%;box-sizing:border-box;justify-content:center}
.tt-cartpage .tt-sum-link{display:block;text-align:center;margin:12px 0 0;font-size:14px}
.tt-cartpage .tt-sum-more{display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--bd);font-size:13px}
.tt-cartpage .tt-cart-empty{background:var(--surf);border:1px solid var(--bd);border-radius:var(--r);padding:28px 20px;text-align:center;margin:0 0 24px}
.tt-cartpage .tt-cart-empty-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.tt-cartpage .tt-saved-intro{color:var(--mut);font-size:14px;margin:0 0 12px}
.tt-cartpage .tt-saved-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;align-items:start}
.tt-cartpage details.tt-sc{background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
.tt-cartpage details.tt-sc>summary{list-style:none;cursor:pointer;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.tt-cartpage details.tt-sc>summary::-webkit-details-marker{display:none}
.tt-cartpage .tt-sc-title{font-weight:700}
.tt-cartpage .tt-sc-meta,.tt-cartpage .tt-sc-preview{font-size:13px;color:var(--mut)}
.tt-cartpage .tt-sc-body{padding:0 14px 14px}
.tt-cartpage .tt-sc-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}
.tt-cartpage a.tt-sc-btn{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid var(--bd);border-radius:10px;font-size:13px;font-weight:600;text-decoration:none;color:var(--ac)}
.tt-cartpage a.tt-sc-btn:hover{background:var(--hov)}
.tt-cartpage a.tt-sc-del{color:var(--bad)}
.tt-cartpage .tt-sc-hint{font-size:13px;color:var(--mut)}
.tt-cartpage .tt-sc-row{display:grid;grid-template-columns:34px 1fr auto;gap:8px;padding:8px 0;border-top:1px solid var(--bd);font-size:14px}
.tt-cartpage .tt-sc-sub{display:flex;gap:8px;font-size:12px}
.tt-cartpage .tt-pchg{font-weight:600}
.tt-cartpage .tt-pchg.down{color:var(--ok)}
.tt-cartpage .tt-pchg.up{color:var(--bad)}
.tt-cartpage .tt-sc-notes{margin-top:14px;font-size:13px;color:var(--mut)}
.tt-cartpage .tt-sc-notes summary{cursor:pointer}
.tt-cartpage .tt-saved-login{font-size:14px}
a.tt-rm{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;color:var(--mut);vertical-align:middle}
a.tt-rm:hover{background:var(--hov);color:var(--bad)}
.tt-rm-ico{width:18px;height:18px;display:block}
.tt-rm.tt-rm-inline{display:inline-flex;vertical-align:middle;width:auto;height:auto;color:inherit}
.minicart_product_remove a.tt-rm{color:var(--mut)}.minicart_product_remove a.tt-rm:hover{background:var(--hov);color:var(--bad)}
.cart_in_notebooks{margin:-2px 0 0 -18px!important}
.minicart_product_remove{margin:-8px 0 0 0}
.minicart_footer a.tt-empty{gap:6px}.minicart_footer a.tt-empty .tt-rm-ico{width:16px;height:16px}
/* returns2.php (class tt-returns) */
.tt-returns .tt-ra-intro{max-width:640px;margin:0 auto 18px;padding:0 2px}
.tt-returns .tt-ra-intro p{margin:0 0 8px}
.tt-returns .tt-ra-intro ul{margin:0;padding-left:20px;color:var(--mut)}
.tt-returns .tt-ra-intro li{margin:0 0 4px;display:list-item}
.tt-returns .tt-ra-form{display:grid;gap:14px}
.tt-returns label.tt-ra-f{display:flex;flex-direction:column;gap:5px;margin:0}
.tt-returns label.tt-ra-f>span{font-size:14px;font-weight:600;color:var(--tx)}
.tt-returns label.tt-ra-f i{font-weight:400;color:var(--mut)}
.tt-returns .tt-ra-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:520px){.tt-returns .tt-ra-row{grid-template-columns:1fr}}
.tt-returns .tt-ra-send{text-align:center;margin-top:4px}
.tt-returns .tt-ra-send .sbutton{min-width:200px;justify-content:center}
.tt-returns .tt-ra-done{max-width:560px;margin:10px auto;padding:28px 20px;text-align:center;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
.tt-returns .tt-ra-done h2{margin:0 0 10px;font-size:22px;font-weight:800}
.tt-returns .tt-ra-done p{margin:0 0 12px}
.tt-returns .tt-ra-red{color:var(--bad);font-weight:700}
/* Buttons: flat colours (no gradients), colours from --btn-* so palettes/picker can change them */
body .abutton,body .sbutton,body .cbutton{background:var(--btn-blue)!important;background-image:none!important;border-color:var(--btn-blue)!important;box-shadow:none!important}
body .abutton.blue,body .sbutton.blue,body .cbutton.blue{background:var(--btn-blue)!important;border-color:var(--btn-blue)!important}
body .abutton.orange,body .sbutton.orange,body .cbutton.orange{background:var(--btn-orange)!important;border-color:var(--btn-orange)!important}
body .abutton.green,body .sbutton.green,body .cbutton.green{background:var(--btn-green)!important;border-color:var(--btn-green)!important}
body .abutton.redd,body .sbutton.redd,body .cbutton.redd,body .abutton.red,body .sbutton.red,body .cbutton.red{background:var(--btn-red)!important;border-color:var(--btn-red)!important}
body .abutton:hover,body .sbutton:hover,body .cbutton:hover{filter:brightness(.9)}
.tt-carousel + .tt-ticker,.tt-products-recent + .tt-ticker{margin:32px 0 20px}
/* breadcrumb */
.headerNavigation{display:flex;flex-wrap:wrap;align-items:center;gap:2px 0;padding:0}
.headerNavigation a.headerNavigation{display:inline-flex;align-items:center;min-height:32px;padding:0 6px;border-radius:8px;color:var(--ac);font-weight:500}
.headerNavigation a.headerNavigation:hover{background:var(--hov);text-decoration:none}
.tt-crumb-sep{display:inline-flex;color:var(--mut);opacity:.7}.tt-crumb-sep svg{width:14px;height:14px}
/* address note */
.tt-note{display:inline-flex;align-items:center;gap:8px;margin:6px 0;padding:8px 12px;border:1px solid var(--bd);border-radius:10px;background:var(--hov);color:var(--mut);font-size:13px;font-style:normal;text-align:left}
.tt-note svg{width:18px;height:18px;flex:none;color:var(--ac)}
/* product info tools */
.infotools{gap:8px}
.infotools .tt-tool{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border:1px solid var(--bd);border-radius:10px;background:var(--surf);color:var(--ac);font-size:14px;font-weight:600;text-decoration:none;cursor:pointer}
.infotools .tt-tool:hover{background:var(--hov);border-color:var(--ac)}
.infotools .tt-tool svg{width:18px;height:18px;flex:none}
.infotools .tt-tool-compare{gap:8px;padding:0 14px 0 10px;cursor:default}
.infotools .tt-tool-compare a{display:inline-flex;min-height:0;padding:0;border:0;background:none;font-size:14px;font-weight:600}
.infotools .tt-tool-compare a.compare_in_product,.infotools .tt-tool-compare a.compare_out_product{margin:0}
/* GST toggle moved into display options */
.middle_display_options .tt-opt,.middle_display_options .tt-gst-opt{order:2;flex:none;display:flex;justify-content:flex-end;align-items:center;gap:6px 14px}
/* ajax_addressbook.php picker (inside fancybox) */
.tt-addrlist{font-family:inherit;padding:4px 2px}
.tt-addrlist h3{margin:0 0 10px;font-size:16px;font-weight:700}
.tt-addrlist table,.tt-addrlist tbody{display:block;width:100%}
.tt-addrlist tr.address{display:block;margin:0 0 8px}
.tt-addrlist td.tt-addr{display:block;padding:10px 14px;border:1px solid var(--bd,#d6d9e0);border-radius:10px;background:var(--surf,#fff);color:var(--tx,#1b1f27);line-height:1.5;font-size:14px;cursor:pointer;text-align:left}
.tt-addrlist td.tt-addr:hover{border-color:var(--ac,#0b6bcb);background:var(--hov,#eef1f6)}
.tt-addrlist td.tt-addr b{font-weight:700}
.tt-addrlist td.tt-addr small{color:var(--mut,#667)}
#tt-chip,.tt-chip{font-size:13px}
#header{background:var(--ac)}
#tt-menu-btn{background:var(--act)}
#tt-logo{color:var(--act)}
#tt-logo span{color:var(--ach)}
.button_container label{color:var(--ach)}
.minicart_header{background-color:var(--btn-blue)}
.minicart_header:hover{background-color:var(--btn-blue);filter:contrast(1.3)}
.moduleboxgallery2{text-align:center}
.gallery_addtocart{justify-content:center}
table.tt-newsection-tbl{margin-top:40px;border-top:2px solid var(--ac)}
/* product_info_footer */
#product_info_footer{padding:18px}
#product_info_footer .tt-pif-h{margin:0 0 10px;font-size:17px;font-weight:700;color:var(--tx)}
#product_info_footer ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
#product_info_footer li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border:1px solid var(--bd);border-radius:10px;background:var(--bg)}
#product_info_footer li:hover{border-color:var(--ac);background:var(--hov)}
#product_info_footer a.tt-pif-name{flex:1;min-width:0;color:var(--tx);text-decoration:none;font-weight:500}
#product_info_footer a.tt-pif-name:hover{color:var(--ac);text-decoration:underline}
#product_info_footer a.tt-qi{flex:none}
/* product_info_compare.php (#thisstuff.tt-compare, shown in a fancybox) */
#thisstuff.tt-compare{font-family:inherit;color:var(--tx)}
#thisstuff.tt-compare #comparetable>.tt-cmp-col{padding:16px;box-shadow:0 1px 2px rgba(0,0,0,.05)}
#thisstuff.tt-compare .compare_heading{padding-bottom:8px;font-size:16px}
#thisstuff.tt-compare .compare_remove{display:inline-flex;align-items:center;gap:6px;margin:0 0 10px;padding:5px 12px;border-radius:99px;background:var(--surf);color:var(--mut);font-size:12.5px;font-weight:600}
#thisstuff.tt-compare .compare_remove:hover{color:var(--bad);border-color:var(--bad)}
#thisstuff.tt-compare .compare_remove svg{width:14px;height:14px}
#thisstuff.tt-compare .compare_price{margin:0 0 8px;font-size:18px;font-weight:800;color:var(--tx)}
#thisstuff.tt-compare .compare_info{margin:0 0 12px;padding:8px 10px;background:var(--hov);border-radius:8px;font-size:13px;color:var(--mut)}
#thisstuff.tt-compare .compare_info b{color:var(--tx);font-weight:600}
#thisstuff.tt-compare .compare_image{display:block;margin:0 auto 12px}
#thisstuff.tt-compare .compare_details{font-size:14px;line-height:1.55;border-top:1px solid var(--bd);padding-top:12px}
#thisstuff.tt-compare .tt-cmp-note{margin:12px 0 0;padding:8px 10px;border-left:3px solid var(--bad);background:var(--hov);color:var(--bad);font-size:13px}
#thisstuff.tt-compare .tt-cmp-empty{padding:40px 16px;text-align:center;color:var(--mut)}
/* product_info_footer tweaks */
#product_info_footer{font-family:inherit}
#product_info_footer ul{gap:12px}
#product_info_footer a.tt-pif-name{background:none}
#product_info_footer a.tt-qi{align-self:center;flex:0 0 auto;height:auto;min-height:0;padding:5px 12px;line-height:1.2;width:auto;white-space:nowrap}
/* Compare toggle: +/- icon pill (product_info.php and product_info_quick.php) */
.infotools .tt-tool-compare{padding:0;gap:0;cursor:pointer}
.infotools .tt-tool-compare>a.nobr{display:none}
.infotools .tt-tool-compare #incomparetext,.infotools .tt-cmp-btn{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;color:inherit;font-weight:600;text-decoration:none}
.infotools .tt-tool-compare #incomparetext::before,.infotools .tt-cmp-btn::before{content:"";flex:none;width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat}
.infotools .tt-tool-compare:has(a.compare_in_product) #incomparetext::before,.infotools .tt-cmp-btn.is-in::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E")}
.infotools .tt-tool-compare:has(a.compare_in_product),.infotools .tt-cmp-btn.is-in{border-color:var(--ac);background:var(--hov)}
.tt-qv-tools{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0}
img[src$="tick.svg"],img[src$="cross.svg"]{vertical-align:-3px}
/* Add to Cart inline feedback + toast */
.tt-adding{position:relative;color:transparent!important;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='white' stroke-opacity='.35' stroke-width='3'/%3E%3Cpath d='M12 3a9 9 0 0 1 9 9' fill='none' stroke='white' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='.7s' repeatCount='indefinite'/%3E%3C/path%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:center!important;background-size:20px!important}
.tt-added,body .abutton.tt-added,body .sbutton.tt-added{background-color:var(--btn-green)!important;border-color:var(--btn-green)!important}
a[onclick*="addtocart("].tt-added:not(.abutton){display:inline-flex;align-items:center;padding:6px 12px;border-radius:10px;background:var(--btn-green);color:var(--surf)!important;font-weight:600;text-decoration:none}
#tt-toasts{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:100000;display:flex;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:94vw;pointer-events:none}
.tt-toast{pointer-events:auto;display:flex;align-items:center;gap:12px;max-width:min(94vw,560px);padding:11px 12px 11px 14px;border-radius:12px;background:var(--tx);color:var(--surf);font-size:14px;box-shadow:0 10px 30px rgba(0,0,0,.28);animation:tt-toast-in .22s ease-out}
.tt-toast.out{opacity:0;transform:translateY(8px);transition:.22s}
.tt-toast.bad{background:var(--bad)}
.tt-toast-ico{flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--btn-green);color:#fff;font-size:13px;font-weight:700}
.tt-toast-msg{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tt-toast.bad .tt-toast-msg{white-space:normal}
#tt-toasts .tt-toast a.tt-toast-link,#tt-toasts .tt-toast a.tt-toast-link:visited,#tt-toasts .tt-toast-undo{color:var(--surf)!important}
.tt-toast-link,.tt-toast-undo{flex:none;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
.tt-toast-x{flex:none;border:0;background:none;color:inherit;opacity:.7;font-size:20px;line-height:1;cursor:pointer}
.tt-toast-x:hover{opacity:1}
@keyframes tt-toast-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.tt-pulse{animation:tt-pulse .9s ease-out}
@keyframes tt-pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.9)}100%{box-shadow:0 0 0 14px rgba(255,255,255,0)}}
/* compare table: equal columns */
#thisstuff.tt-compare .compare_image{max-width:100%;height:auto}
/* checkout_success.php */
.tt-success{max-width:560px;margin:8px auto;padding:26px 22px;text-align:center;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
.tt-success-ico{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--btn-green);color:#fff;margin-bottom:10px}
.tt-success-ico svg{width:30px;height:30px}
.tt-success h2{margin:0 0 6px;font-size:24px;font-weight:800}
.tt-success p{margin:0 0 10px;font-size:15px}
.tt-success-mail{color:var(--mut);font-size:14px!important}
.tt-success-next{color:var(--bad);font-weight:700}
.tt-success-thanks{margin:6px 0;font-size:16px;font-weight:700}
table.tt-os-summary{margin:0 auto;width:100%;max-width:560px;padding:14px 18px;border:1px solid var(--bd);border-radius:var(--r);background:var(--surf);font-size:13.5px;line-height:1.6}
table.tt-os-summary td{width:50%;vertical-align:top;padding:2px 8px}
.tt-os-addr{text-align:left}
.tt-os-lab{display:block;margin-bottom:2px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
/* checkout_confirmation.php login prompt */
.tt-co-login{max-width:520px;margin:22px auto 6px;padding:22px;text-align:center;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
.tt-co-login h3{margin:0 0 6px;font-size:18px;font-weight:800}
.tt-co-login p{margin:0 0 14px;color:var(--mut);font-size:14px}
.tt-co-login-btns{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}
.tt-co-or{color:var(--mut);font-size:14px}
.minicart_header_empty{color:var(--ft)}
img[src$="tick.svg"],img[src$="cross.svg"]{width:17px;height:17px}
/* checkout_success.php: courier/subtotal rows right-aligned, buttons on one row */
.tt-checkout #ordersTable tr:has(>td.checkoutsuccesscourier),.tt-checkout #ordersTable tr:has(>td.checkoutsuccesstotal){display:flex!important;justify-content:flex-end;align-items:baseline;gap:14px;padding:6px 0!important;border-bottom:0!important}
.tt-checkout #ordersTable tr:has(>td.checkoutsuccesscourier)>td:first-child,.tt-checkout #ordersTable tr:has(>td.checkoutsuccesstotal)>td:first-child{display:none}
.tt-checkout #ordersTable td.checkoutsuccesscourier{text-align:right!important;font-size:14px!important;color:var(--mut)}
.tt-checkout #ordersTable td.checkoutsuccesstotal{text-align:right!important;font-size:16px!important;font-weight:800;color:var(--tx)}
.tt-checkout #ordersTable tr:has(>td.checkoutsuccesstotal){border-top:1px solid var(--bd);padding-top:12px!important}
table.tt-success-btns{width:auto!important;margin:0}
table.tt-success-btns tbody,table.tt-success-btns tr{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start}
table.tt-success-btns td{display:block;padding:0}
/* fancybox loading spinner */
#fancybox-loading{width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:var(--surf);box-shadow:0 6px 24px rgba(0,0,0,.22)}
#fancybox-loading div{top:6px!important;left:6px!important;width:32px!important;height:32px!important;box-sizing:border-box;border:3px solid var(--bd);border-top-color:var(--ac);border-radius:50%;background:none!important;animation:tt-spin .7s linear infinite}
@keyframes tt-spin{to{transform:rotate(360deg)}}
/* stage 50 */
#thisstuff.tt-compare .compare_heading { margin: 0 0 6px; padding: 2px 2px 8px; font-size: 16px; height: 38px; width: 100%; background: var(--acd); color: var(--surf); text-shadow: none; text-align: center; border-bottom: none; border-radius: 6px; overflow: hidden; }
#thisstuff #comparetable img { border: none; }
.tt-success h2 { text-align: center; }
.tt-checkout table, .tt-checkout tbody, .tt-checkout tr, .tt-checkout td, .tt-checkout center { font-size: 15px; font-family: inherit; color: var(--tx); }
.tt-checkout #ordersTable { margin:16px auto; }
.tt-success-thanks { text-align: center; }
table.tt-success-btns tbody, table.tt-success-btns tr { justify-content: center; }
table.tt-success-btns { margin: 20px auto; }
body a.abutton, body a.abutton:hover, body a.abutton:visited, body a.sbutton, body a.sbutton:hover, body a.cbutton, body a.cbutton:hover, body .abutton, body .sbutton, body .cbutton, body input.abutton, body input.sbutton, body button.abutton, body button.sbutton { font-size: 15px; align-content: center; }
/* stage 52 */
.cart_in_listing{display:none!important}
#thisstuff .prinfoprice { text-align: center; }
.product_listing_addtocart .abutton, .gallery_addtocart .abutton { min-width: 80px; }
/* stage 53 */
.tt-basesys{display:block;margin:6px 0 14px;font-family:inherit!important;font-size:16px!important;font-weight:600;color:var(--tx)}
.tt-basesys select{font-size:15px}
.tt-search-opts{margin:6px 0 2px}
/* stage 54 */
.button_container label { color: var(--surf); }
.tt-ae-h { font-size:18px; font-family:inherit; color:var(--tx); font-weight:700; }
.tt-pleaselogin{max-width:520px;margin:22px auto 6px;padding:22px;text-align:center;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
.tt-pleaselogin h2{margin:0 0 6px;font-size:18px;font-weight:800;font-family:inherit;text-align:center}
.tt-pleaselogin p{margin:0 0 14px;color:var(--mut);font-size:14px}
.tt-pleaselogin-btns{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}
#tt-dark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-right:10px;padding:0;border:1px solid var(--bd);border-radius:50%;background:var(--surf);color:var(--tx);cursor:pointer;vertical-align:middle}
#tt-dark:hover{background:var(--hov);border-color:var(--ac)}
#tt-dark svg{width:18px;height:18px}
#tt-dark .tt-sun{display:none}
html[data-mode="dark"] #tt-dark .tt-sun{display:block}
html[data-mode="dark"] #tt-dark .tt-moon{display:none}
.headerNavigationRight{display:flex;align-items:center;justify-content:flex-end}
/* stage 55 */
#tt-dark{margin-right:10px}
@media (min-width:900px){#tt-dark{position:fixed;right:14px;bottom:14px;z-index:9999;width:44px;height:44px;margin:0;box-shadow:0 6px 20px rgba(0,0,0,.2)}#tt-dark svg{width:20px;height:20px}}
.ui-autocomplete{padding:6px;margin-top:6px;background:var(--surf);border:1px solid var(--bd);border-radius:14px;box-shadow:0 14px 36px rgba(0,0,0,.2);font-family:inherit;font-size:14.5px;list-style:none}
.ui-autocomplete .ui-menu-item{margin:0 0 2px;padding:0;border:0;background:none}
.ui-autocomplete .ui-menu-item:last-child{margin:0}
.ui-autocomplete .ui-menu-item-wrapper{display:block;margin:0;padding:9px 12px!important;border:0!important;border-radius:8px;background:none;color:var(--tx);font-weight:400;line-height:1.35}
.ui-autocomplete .ui-menu-item-wrapper.ui-state-active,.ui-autocomplete .ui-state-focus,.ui-autocomplete .ui-state-hover{margin:0;border:0!important;background:var(--hov)!important;color:var(--tx)!important;box-shadow:inset 3px 0 0 var(--ac)}
/* stage 56 */
.minicart_header_empty { background: var(--ac); }
#recently_viewed_container .recently_viewed_image img { border-radius: 4px; }
.tt-returns .tt-ra-intro li { color: var(--tx); }
.tt-checkout .formbox600 { margin: 40px auto 16px; box-shadow: none; width: auto;}
.tt-checkout #cartTable tr:has(#tr2) td { color: var(--tx); }
/* specials.php (class tt-specials) */
.tt-sp-intro{margin:0 0 16px;color:var(--mut);font-size:15px}
.tt-sp-empty{padding:28px;text-align:center;color:var(--mut);background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
.tt-specials{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:14px}
.tt-specials .tt-sp{display:grid;grid-template-columns:96px 1fr;grid-template-areas:"img text" "buy buy";gap:6px 14px;margin:2px 5px;padding:14px;box-sizing:border-box;box-shadow:none;width:auto;height:auto;float:none;background:var(--surf);border:1px solid var(--bd);border-radius:var(--r)}
.tt-specials .tt-sp:hover{border-color:var(--ac)}
.tt-specials .tt-sp-img{grid-area:img;float:none;width:96px;height:96px;margin:0;padding:0;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px;overflow:hidden}
.tt-specials .tt-sp-img a{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.tt-specials .tt-sp-img img{width:auto;max-width:100%;max-height:100%;height:auto;border:0;border-radius:4px}
.tt-specials .tt-sp-text{grid-area:text;float:none;width:auto;margin:0;padding:0;min-width:0;font-size:14px;line-height:1.45;color:var(--tx)}
.tt-specials a.tt-sp-name{display:block;font-size:15px;font-weight:700;line-height:1.35;color:var(--tx);text-decoration:none;background:none}
.tt-specials a.tt-sp-name:hover{color:var(--ac);text-decoration:underline}
.tt-sp-hl{margin:4px 0 0;font-weight:700;color:var(--bad)}
.tt-sp-bonus{margin:4px 0 0;color:var(--ok)}
.tt-sp-avail{margin:6px 0 0;font-size:13px;color:var(--mut)}
.tt-sp-qv{display:flex;align-items:center;gap:10px;margin:8px 0 0}
.tt-specials .tt-sp-buy{grid-area:buy;float:none;width:auto;margin:0;padding:10px 0 0;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--bd);text-align:left}
.tt-sp-price{display:flex;flex-direction:column;line-height:1.2;font-size:13px;color:var(--mut)}
.tt-sp-price b{font-size:20px;color:var(--tx)}
.tt-sp-price small{font-size:12px;margin:0 0 0 3px}
.tt-specials .specials_addtocart{display:inline-flex;align-items:center;justify-content:center;min-width:110px;min-height:40px;margin:0;padding:0 18px;font-size:15px;font-weight:600}
.tt-specials .tt-sp.cross{opacity:.85}
/* stage 60: specials Quick View pill must not sit under the price box */
.tt-specials .tt-sp-text,.tt-specials .tt-sp-img,.tt-specials .tt-sp-buy{position:static!important;overflow:visible}
.tt-specials .tt-sp-img{overflow:hidden}
.tt-specials .tt-sp-qv{position:relative;z-index:2;min-height:24px}
.tt-specials .tt-sp-qv a.tt-qi{position:static;float:none;display:inline-flex;margin:0}
.tt-specials .tt-sp-qv>div[id^="incart_newproducts"]{display:none!important}
.tt-specials div[id^="incart_newproducts"]{display:none!important}
.tt-specials .tt-sp-buy{clear:both}
/* password_reset.php (class tt-pw) */
.tt-checkout #form_container.tt-pw{text-align:left;margin-top:12px}
.tt-pw-msg{max-width:440px;margin:8px auto 0}
.tt-pw-email{display:block;margin:0 0 18px;padding:10px 12px;background:var(--hov);border-radius:10px;font-weight:700;color:var(--tx);overflow-wrap:anywhere}
.tt-pw-field{margin:0 0 16px}
.tt-pw label.formlabel{display:block;margin:0 0 6px;font-size:14px;font-weight:600;color:var(--tx)}
.tt-pw .score{display:block;margin-top:6px;font-size:13px;font-weight:600;color:var(--mut)}
.tt-pw-hint{display:block;margin-top:4px;font-size:12.5px;color:var(--mut)}
.tt-match{display:none;margin-top:6px;font-size:13px;font-weight:600;color:var(--ok)}
.tt-pw .tt-login-remember{display:flex;flex-direction:row;align-items:center;gap:10px;margin:0 0 16px}
.tt-pw .tt-login-remember input{width:18px;height:18px;margin:0}
.tt-pw .tt-login-remember label{font-size:14px;color:var(--tx);cursor:pointer}
/* ================= STAGE 64: super-menu quick filter ================= */
.tt-catfilter{position:relative;margin:2px 0 10px}
.tt-catfilter input{box-sizing:border-box;width:100%;height:42px;padding:0 38px 0 14px;border:1px solid var(--bd);border-radius:10px;background:var(--surf);color:var(--tx);font:inherit;font-size:15px;-webkit-appearance:none;appearance:none}
.tt-catfilter input::-webkit-search-cancel-button{display:none}
.tt-catfilter input::placeholder{color:var(--mut)}
.tt-catfilter input:focus{outline:2px solid var(--ac);outline-offset:1px;border-color:var(--ac)}
.tt-catfilter-x{position:absolute;right:4px;top:3px;width:36px;height:36px;border:0;border-radius:8px;background:none;color:var(--mut);font-size:22px;line-height:1;cursor:pointer}
.tt-catfilter-x:hover{background:var(--hov);color:var(--tx)}
.tt-catfilter-x[hidden],.tt-catfilter-none[hidden]{display:none}
.tt-catfilter-none{padding:10px 8px;color:var(--mut);font-size:14px}
#ttnav2 .tt-fhide{display:none!important}
#ttnav2.tt-filtering li.cat_sort>ul.ttnav2,#ttnav2.tt-filtering li.cat_sort:hover>ul.ttnav2{display:block!important}
#ttnav2.tt-filtering .tt-tog{display:none}
@media (min-width:900px){.tt-catfilter{max-width:340px}}
/* account_history_info.php (class tt-account): keep the page's own tables, modernise the look */
.tt-account{font-size:15px;color:var(--tx)}
.tt-account .middle_heading{font-size:clamp(22px,4vw,30px);font-weight:800;letter-spacing:-.02em;text-align:left;color:var(--tx);border:0;padding:4px 0 10px}
.tt-account table{max-width:100%}
.tt-account #contents table[width="98%"]{width:100%!important}
.tt-account #contents td,.tt-account #contents tr{background:none}
.tt-account tr#DelBill>td{padding:6px 0 10px;border-top:1px solid var(--bd)}
.tt-account td.orderView{height:0;padding:0;border:0}
.tt-account td.main,.tt-account td{font-family:inherit;font-size:15px;color:var(--tx)}
.tt-account #ordersTable{width:100%!important;border:1px solid var(--bd);border-radius:12px;overflow:hidden;background:var(--surf)}
.tt-account #ordersTable th{background:var(--hov)!important;color:var(--mut)!important;font-size:12px;text-transform:uppercase;letter-spacing:.05em;padding:8px}
.tt-account #ordersTable td{padding:8px;border-top:1px solid var(--bd)}
.tt-account a{color:var(--ac)}
.tt-account #tab_header{contain:inline-size}
.tt-account #ordersTable{table-layout:auto}
.tt-account ul{margin:6px 0 0;padding-left:0;list-style:none}

.notebooks_search_other_models_title{color:var(--tx)}
:is(html[data-pal="dark"],html[data-mode="dark"]) .notebooks_search_other_models a:hover{background:var(--hov);border-color:var(--ac);color: var(--tx) !important}
#product_info_inner table{margin:0;width:100%}
#product_info_inner table caption{padding:8px 0 0;font-size:15px;font-weight:700;text-align:left}
#product_info_inner table th{text-align:left;padding:2px;vertical-align:top} /* font-weight:400; */
#product_info_inner table td{padding:2px;vertical-align:top}
#product_info_inner table td p {margin:0}
#product_info_inner table th:first-child{min-width:40%}
#product_info_inner table td:first-child{min-width:40%}

@media (max-width:699px){
 .tt-account td[width="60%"],.tt-account td[width="40%"],.tt-account td[width="47%"]{display:block;width:auto!important;padding-bottom:8px}
 .tt-account tr:has(>td[width="47%"])>td:not([width="47%"]){display:none}
}

@media print{#tt-menu-btn,#left_column,#tt-scrim{display:none!important}}
