/*
Theme Name: Technical Manual Finder
Theme URI: https://technicalmanualfinder.com/
Author: Technical Manual Finder
Description: Dark KZ Mechanic-inspired Technical Manual Finder theme.
Version: 30.0.3
Text Domain: technical-manual-finder-theme
*/

/* V30: paged catalog loading */
.tmf-v18-results-col .tmf-load-more-wrap{grid-column:1/-1;text-align:center;margin:26px 0 10px}
.tmf-v18-results-col .tmf-load-more{min-width:260px;box-shadow:0 0 0 3px rgba(57,255,106,.08)}

:root{
  --tmf-bg:#050d08;
  --tmf-panel:#08150d;
  --tmf-panel2:#0b1b11;
  --tmf-green:#39ff6a;
  --tmf-border:#193d27;
  --tmf-text:#eef7f0;
  --tmf-muted:#9fb2a5;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--tmf-bg);color:var(--tmf-text)}
body{font-family:Arial,Helvetica,sans-serif;line-height:1.5}
a{color:inherit}
.site-footer{display:none}
.site-main{min-height:100vh}

/* Branded header */
.tmf-brand-header{background:#050b07;border-bottom:1px solid #12351f}
.tmf-brand-inner{max-width:1540px;margin:0 auto;min-height:105px;padding:10px 20px;display:flex;align-items:center;gap:15px}
.tmf-brand-logo{display:block;flex:0 0 82px;height:82px}
.tmf-brand-logo img{width:82px;height:82px;object-fit:contain;display:block}
.tmf-brand-copy{min-width:300px}
.tmf-brand-title{font-size:25px;font-weight:900;letter-spacing:.3px;color:#f2f7f3}
.tmf-brand-title span{color:var(--tmf-green)}
.tmf-brand-tagline{font-size:13px;color:#a7b8ac;margin-top:3px}
.tmf-contact{margin-left:auto;display:flex;align-items:center;gap:20px;font-size:12px}
.tmf-contact-item{display:flex;align-items:center;gap:7px;text-decoration:none;white-space:nowrap;color:#dce8df}
.tmf-contact-icon{color:var(--tmf-green);font-size:19px}

/* Finder frame */
.site-main>.tmf-finder{max-width:none!important;width:100%!important;margin:0!important;padding:0 18px 55px!important;background:var(--tmf-bg)!important;color:var(--tmf-text)}
.tmf-finder .tmf-top{display:none!important}
.tmf-finder .tmf-hero{padding:0!important;text-align:left}
.tmf-theme-news{margin:10px 0 14px!important}

/* Main top: search/filter + plans */
.tmf-top-layout{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:16px;align-items:start}
.tmf-top-center{min-width:0}
.tmf-top-center .tmf-search{max-width:none!important;margin:0 0 14px!important}
.tmf-top-center .tmf-filters{max-width:none!important;margin:0!important}

/* Plans */
.tmf-right-column{min-width:0}
.tmf-side-panel{background:var(--tmf-panel);border:1px solid var(--tmf-border);border-radius:12px;padding:10px}
.tmf-side-heading{color:var(--tmf-green);font-size:13px;font-weight:900;line-height:1.3;letter-spacing:.3px;margin:2px 4px 8px;text-transform:uppercase}
.tmf-plan-card{min-height:68px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px;margin-top:7px;background:#07130c;border:1px solid #1d492c;border-radius:9px;text-decoration:none;transition:.15s}
.tmf-plan-card:hover{border-color:var(--tmf-green);transform:translateY(-1px)}
.tmf-plan-icon{font-size:23px;text-align:center}
.tmf-plan-main{min-width:0}
.tmf-plan-main strong{display:block;font-size:12px;line-height:1.25;white-space:nowrap}
.tmf-plan-main small{display:block;margin-top:4px;color:#aabbb0;font-size:10px}
.tmf-plan-main i{display:inline-block;background:#ffd83d;color:#1a1600;border-radius:4px;padding:2px 4px;margin-left:3px;font-size:6px;font-style:normal;vertical-align:middle;white-space:nowrap}
.tmf-plan-buy{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.tmf-plan-buy b{color:var(--tmf-green);font-size:12px;white-space:nowrap}
.tmf-plan-buy em{background:var(--tmf-green);color:#031008;font-style:normal;font-size:9px;font-weight:900;border-radius:5px;padding:4px 7px;text-transform:uppercase;white-space:nowrap}

/* Lower: original manufacturer + results, plus support */
.tmf-lower-layout{display:block;margin-top:18px;align-items:start}
.tmf-lower-center{min-width:0}
.tmf-lower-center .tmf-content{margin:0!important;max-width:none!important}
.tmf-support-column{min-width:0}
.tmf-support-panel{padding:14px}
.tmf-support-icon{color:var(--tmf-green);font-size:26px;line-height:1;margin:1px 0 5px}
.tmf-support-panel p{margin:0 4px 12px;color:var(--tmf-muted);font-size:11px}
.tmf-support-contact{display:flex;align-items:center;gap:8px;text-decoration:none;padding:9px 4px;border-top:1px solid #173622;font-size:11px;overflow-wrap:anywhere}
.tmf-support-contact span{color:var(--tmf-green);font-size:18px;flex:0 0 auto}
.tmf-support-contact strong{font-size:11px}
.tmf-support-button{display:block;text-align:center;text-decoration:none;background:var(--tmf-green);color:#031008;border-radius:7px;padding:8px 6px;margin:8px 0 9px;font-size:10px;font-weight:900}
.tmf-support-email{background:transparent;color:var(--tmf-green);border:1px solid var(--tmf-green)}

/* Keep plugin content visual style coherent */
.tmf-search input{background:#0a170e!important;border-color:#245c36!important;color:#fff!important}
.tmf-filters{background:#08150d!important;border-color:#1d482c!important}
.tmf-filter-option{background:#0a170e!important;border-color:#1d482c!important}
.tmf-maker-panel{background:#08150d!important;border-color:#1d482c!important}
.tmf-card{background:#08150d!important;border-color:#1b3e27!important}
.tmf-card:hover{border-color:var(--tmf-green)!important}

/* Desktop widths close to the reference */
@media(max-width:1200px){
  .tmf-brand-inner{padding-left:14px;padding-right:14px}
  .tmf-contact{gap:10px}
  .tmf-top-layout,.tmf-lower-layout{grid-template-columns:1fr}
}
@media(max-width:980px){
  .tmf-brand-inner{min-height:86px}
  .tmf-brand-logo{flex-basis:65px;height:65px}
  .tmf-brand-logo img{width:65px;height:65px}
  .tmf-brand-title{font-size:21px}
  .tmf-contact{display:none}
  .tmf-top-layout,.tmf-lower-layout{grid-template-columns:1fr}
  .tmf-right-column,.tmf-support-column{order:2}
  .tmf-plan-card{min-height:62px}
}
@media(max-width:760px){
  .site-main>.tmf-finder{padding:0 10px 40px!important}
  .tmf-brand-inner{padding:8px 10px}
  .tmf-brand-logo{flex-basis:55px;height:55px}
  .tmf-brand-logo img{width:55px;height:55px}
  .tmf-brand-copy{min-width:0}
  .tmf-brand-title{font-size:17px}
  .tmf-brand-tagline{font-size:10px}
  .tmf-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .tmf-plan-card{grid-template-columns:32px minmax(0,1fr) auto}
}
@media(max-width:430px){
  .tmf-filter-grid{grid-template-columns:1fr!important}
}


/* =========================================================
   TECHNICAL MANUAL FINDER — THEME V9
   Final layout:
   - large finder/search area
   - compact membership sidebar
   - Makes/Manufacturers remains below finder area
   - support stays in header
   ========================================================= */

.tmf-final-sidebar {
    position: absolute;
    top: 122px;
    right: 20px;
    width: 245px;
    z-index: 30;
    pointer-events: none;
}

.tmf-membership-card {
    pointer-events: auto;
    width: 100%;
    background: #07100b;
    border: 1px solid #193f26;
    border-radius: 10px;
    padding: 9px;
    box-shadow: 0 7px 20px rgba(0,0,0,.22);
}

.tmf-side-title {
    color: #39ff6a;
    font-weight: 800;
    font-size: 11px;
    line-height: 1.25;
    letter-spacing: .35px;
    margin: 2px 3px 7px;
}

.tmf-plan {
    min-height: 59px;
    display: grid;
    grid-template-columns: 28px minmax(0,1fr) auto;
    grid-template-rows: auto auto;
    column-gap: 6px;
    align-items: center;
    margin-top: 5px;
    padding: 6px 7px;
    color: #eef7f0 !important;
    text-decoration: none !important;
    background: #08130c;
    border: 1px solid #193f26;
    border-radius: 8px;
    transition: border-color .15s ease, transform .15s ease;
}

.tmf-plan:hover {
    border-color: #39ff6a;
    transform: translateY(-1px);
}

.tmf-plan-icon {
    grid-row: 1 / span 2;
    font-size: 20px;
    text-align: center;
}

.tmf-plan-info {
    min-width: 0;
    grid-column: 2;
}

.tmf-plan-info strong {
    display: block;
    font-size: 11px;
    line-height: 1.15;
    white-space: nowrap;
}

.tmf-plan-info small {
    display: block;
    margin-top: 3px;
    color: #aebdb2;
    font-size: 9px;
}

.tmf-plan-price {
    grid-column: 3;
    grid-row: 1;
    color: #39ff6a;
    font-weight: 800;
    font-size: 11px;
    white-space: nowrap;
    align-self: start;
}

.tmf-buy {
    grid-column: 3;
    grid-row: 2;
    margin-top: 3px;
    padding: 3px 7px;
    border-radius: 5px;
    background: #39ff6a;
    color: #061006;
    font-size: 8px;
    font-weight: 800;
    text-transform: uppercase;
    white-space: nowrap;
}

.tmf-plan-info em {
    display: inline-block;
    margin-left: 2px;
    padding: 1px 3px;
    border-radius: 3px;
    background: #ffd33d;
    color: #1a1600;
    font-size: 6px;
    font-style: normal;
    vertical-align: middle;
}

/*
 * Reserve only the narrow membership column on desktop.
 * The existing finder remains the large central area.
 */
@media (min-width: 1251px) {
    .tmf-final-sidebar {
        right: 20px;
    }
}

/* Hide the sidebar on narrow screens so the finder gets full width. */
@media (max-width: 1250px) {
    .tmf-final-sidebar {
        display: none;
    }
}


/* Theme V10: the header already contains support details.
   Do not reserve any lower/right-column space for support. */
.tmf-support-column,
.tmf-support-panel {
    display: none !important;
}

.tmf-lower-layout {
    display: block !important;
    width: 100% !important;
}

.tmf-lower-center {
    width: 100% !important;
    max-width: none !important;
}

.tmf-lower-center .tmf-content {
    width: 100% !important;
    max-width: none !important;
}


/* Theme V11 — use the empty right-side space for Search Results.
   The lower section is intentionally full-width: Makes/Manufacturers
   stays on the left and Search Results expands into all remaining space. */
.tmf-lower-layout,
.tmf-lower-center,
.tmf-lower-center .tmf-content,
.tmf-lower-center .tmf-results {
    width: 100% !important;
    max-width: none !important;
}

.tmf-lower-center .tmf-content {
    grid-template-columns: 240px minmax(0, 1fr) !important;
}

.tmf-lower-center .tmf-grid {
    width: 100% !important;
    max-width: none !important;
}

@media (min-width: 1500px) {
    .tmf-lower-center .tmf-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}


/* =========================================================
   TECHNICAL MANUAL FINDER — THEME V12 FINAL WIDTH FIX
   The upper finder remains wide with a compact plans column.
   The lower content has ONLY:
      left  = Makes / Manufacturers
      right = Search Results
   The Search Results column consumes ALL remaining width.
   ========================================================= */

@media (min-width: 1251px) {

    /* Full-width lower section */
    .tmf-lower-layout,
    .tmf-lower-center,
    .tmf-lower-center > .tmf-content {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    /* Two columns only: manufacturers + results */
    .tmf-lower-center > .tmf-content {
        display: grid !important;
        grid-template-columns: 240px minmax(0, 1fr) !important;
        column-gap: 18px !important;
        align-items: start !important;
    }

    .tmf-lower-center > .tmf-content > .tmf-maker-panel,
    .tmf-lower-center > .tmf-content > .maker-panel {
        width: 240px !important;
        min-width: 0 !important;
        max-width: 240px !important;
    }

    .tmf-lower-center > .tmf-content > .tmf-results,
    .tmf-lower-center > .tmf-content > .results-area {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    /* Make the actual results grid fill the entire results column. */
    .tmf-lower-center #grid,
    .tmf-lower-center .tmf-grid,
    .tmf-lower-center .grid {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }
}

/* Very wide desktop: use the extra space instead of leaving a blank area. */
@media (min-width: 1600px) {
    .tmf-lower-center #grid,
    .tmf-lower-center .tmf-grid,
    .tmf-lower-center .grid {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

/* At smaller widths the two lower columns naturally stack. */
@media (max-width: 1250px) {
    .tmf-lower-center > .tmf-content {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        max-width: none !important;
    }

    .tmf-lower-center #grid,
    .tmf-lower-center .tmf-grid,
    .tmf-lower-center .grid {
        width: 100% !important;
        max-width: none !important;
    }
}


/* =========================================================
   TECHNICAL MANUAL FINDER — THEME V15
   New structure based on the approved hand-drawn layout:
   Header
   Latest Items
   Membership cards
   Full-width Search Bar
   Left: Filters + Makes/Manufacturers
   Right: Search Results
   ========================================================= */

.tmf-v15-plans {
    width: 100% !important;
    margin: 0 0 14px !important;
    padding: 9px 10px 10px !important;
    background: #07100b !important;
    border: 1px solid #193d27 !important;
    border-radius: 11px !important;
}

.tmf-v15-plans-title {
    color: #39ff6a !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    letter-spacing: .4px !important;
    text-transform: uppercase !important;
    margin: 0 4px 7px !important;
}

.tmf-v15-plans-row {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 7px !important;
}

.tmf-v15-plan {
    min-width: 0 !important;
    min-height: 60px !important;
    display: grid !important;
    grid-template-columns: 27px minmax(0,1fr) auto !important;
    grid-template-rows: auto auto !important;
    column-gap: 6px !important;
    align-items: center !important;
    padding: 7px 8px !important;
    background: #08130c !important;
    border: 1px solid #1d492c !important;
    border-radius: 8px !important;
    color: #eef7f0 !important;
    text-decoration: none !important;
}

.tmf-v15-plan:hover {
    border-color: #39ff6a !important;
    transform: translateY(-1px);
}

.tmf-v15-icon {
    grid-row: 1 / span 2;
    font-size: 20px;
    text-align: center;
}

.tmf-v15-plan > span:not(.tmf-v15-icon) {
    min-width: 0;
}

.tmf-v15-plan strong {
    display: block !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}

.tmf-v15-plan small {
    display: block !important;
    margin-top: 3px !important;
    color: #aabbb0 !important;
    font-size: 9px !important;
}

.tmf-v15-plan b {
    grid-column: 3;
    grid-row: 1;
    align-self: start;
    color: #39ff6a !important;
    font-size: 11px !important;
    white-space: nowrap !important;
}

.tmf-v15-plan em {
    grid-column: 3;
    grid-row: 2;
    align-self: end;
    justify-self: end;
    background: #39ff6a !important;
    color: #031008 !important;
    border-radius: 4px !important;
    padding: 3px 6px !important;
    font-style: normal !important;
    font-size: 8px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.tmf-v15-plan i {
    display: inline-block !important;
    background: #ffd83d !important;
    color: #1a1600 !important;
    border-radius: 3px !important;
    padding: 1px 3px !important;
    margin-left: 2px !important;
    font-size: 5px !important;
    font-style: normal !important;
    vertical-align: middle !important;
}

.tmf-v15-search-row {
    width: 100% !important;
    margin: 0 0 12px !important;
}

.tmf-v15-search-row .tmf-search {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

.tmf-v15-workspace {
    width: 100% !important;
    max-width: none !important;
    display: grid !important;
    grid-template-columns: 240px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: start !important;
}

.tmf-v15-left {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.tmf-v15-left .tmf-filters {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

.tmf-v15-left .tmf-filter-grid {
    grid-template-columns: 1fr !important;
}

/* V16: the complete left filter area is sticky.
   This includes Manual Type + Makes / Manufacturers together. */
.tmf-v15-left {
    position: sticky !important;
    top: 15px !important;
    align-self: start !important;
    max-height: calc(100vh - 30px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

/* The manufacturer list itself is no longer independently sticky. */
.tmf-v15-left .tmf-maker-panel {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    position: static !important;
    max-height: none !important;
    overflow: visible !important;
}

.tmf-v15-results {
    min-width: 0 !important;
    width: 100% !important;
}

.tmf-v15-results .tmf-results {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

.tmf-v15-results .tmf-grid {
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

@media (min-width: 1550px) {
    .tmf-v15-results .tmf-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 1250px) {
    .tmf-v15-plans-row {
        grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    }

    .tmf-v15-workspace {
        grid-template-columns: 210px minmax(0,1fr) !important;
    }

    .tmf-v15-results .tmf-grid {
        grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    }
}

@media (max-width: 900px) {
    .tmf-v15-plans-row {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }

    .tmf-v15-workspace {
        grid-template-columns: 1fr !important;
    }

    .tmf-v15-left {
        position: static !important;
        max-height: none !important;
        overflow: visible !important;
    }

    .tmf-v15-left .tmf-maker-panel {
        position: static !important;
        max-height: 260px !important;
        overflow-y: auto !important;
    }

    .tmf-v15-results .tmf-grid {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }
}

@media (max-width: 600px) {
    .tmf-v15-plans-row {
        grid-template-columns: 1fr !important;
    }

    .tmf-v15-results .tmf-grid {
        grid-template-columns: 1fr !important;
    }

    .tmf-v15-plan {
        min-height: 62px !important;
    }
}


/* =========================================================
   TECHNICAL MANUAL FINDER — THEME V16
   Approved behavior:
   - Header / Latest Items / Membership Plans / Search Bar scroll normally.
   - Manual Type + Makes / Manufacturers form ONE sticky left rail
     on desktop.
   - Search Results remain the normal scrolling content.
   - No internal page-locking or results-only scrolling.
   ========================================================= */

@media (min-width: 901px) {
    .tmf-v15-workspace {
        align-items: start !important;
    }

    .tmf-v15-left {
        position: sticky !important;
        top: 15px !important;
        align-self: start !important;
        max-height: calc(100vh - 30px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    .tmf-v15-left .tmf-filters,
    .tmf-v15-left .tmf-maker-panel {
        position: static !important;
    }

    .tmf-v15-left .tmf-maker-panel {
        max-height: none !important;
        overflow: visible !important;
    }

    .tmf-v15-results,
    .tmf-v15-results .tmf-results,
    .tmf-v15-results .tmf-grid {
        position: relative !important;
        overflow: visible !important;
        height: auto !important;
        max-height: none !important;
    }
}

@media (max-width: 900px) {
    .tmf-v15-left {
        position: static !important;
        max-height: none !important;
        overflow: visible !important;
    }
}


/* =========================================================
   TECHNICAL MANUAL FINDER — THEME V17
   Approved desktop behavior:
   - Manual Type is its own searchable filter section.
   - Makes / Manufacturers is its own searchable filter section.
   - Both left-side sections remain sticky together.
   - Search Results scroll naturally with the page.
   - Top content remains normal page flow.
   ========================================================= */

.tmf-v17-side-search,
.tmf-v17-maker-search {
    margin: 0 0 9px !important;
    padding: 8px !important;
    background: #07110b !important;
    border: 1px solid #1b472a !important;
    border-radius: 8px !important;
}

.tmf-v17-side-search label,
.tmf-v17-maker-search label {
    display: block !important;
    margin: 0 0 5px !important;
    color: #39ff6a !important;
    font-size: 9px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
    letter-spacing: .35px !important;
}

.tmf-v17-input-wrap {
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
    height: 31px !important;
    background: #050b07 !important;
    border: 1px solid #245a35 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
}

.tmf-v17-input-wrap:focus-within {
    border-color: #39ff6a !important;
    box-shadow: 0 0 0 1px rgba(57,255,106,.18) !important;
}

.tmf-v17-input-wrap span {
    flex: 0 0 26px !important;
    text-align: center !important;
    color: #39ff6a !important;
    font-size: 17px !important;
}

.tmf-v17-input-wrap input {
    width: 100% !important;
    min-width: 0 !important;
    height: 29px !important;
    padding: 0 7px 0 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #fff !important;
    font-size: 10px !important;
}

.tmf-v17-input-wrap input::placeholder {
    color: #718077 !important;
}

@media (min-width: 901px) {
    /* One sticky rail keeps Manual Type + Manufacturers together. */
    .tmf-v15-left {
        position: sticky !important;
        top: 15px !important;
        align-self: start !important;
        max-height: calc(100vh - 30px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        scrollbar-width: thin;
    }

    .tmf-v15-left .tmf-filters,
    .tmf-v15-left .tmf-maker-panel {
        position: static !important;
    }

    /* Keep both sections visible together; only the sidebar itself
       can scroll if the manufacturer's list is exceptionally long. */
    .tmf-v15-left .tmf-filters,
    .tmf-v15-left .tmf-maker-panel {
        width: 100% !important;
        max-width: none !important;
    }

    /* Results must never become an internal scroller. */
    .tmf-v15-results,
    .tmf-v15-results .tmf-results,
    .tmf-v15-results .tmf-grid {
        position: relative !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }
}

@media (max-width: 900px) {
    .tmf-v15-left {
        position: static !important;
        max-height: none !important;
        overflow: visible !important;
    }

    .tmf-v17-side-search,
    .tmf-v17-maker-search {
        margin-bottom: 8px !important;
    }
}


/* =========================================================
   TECHNICAL MANUAL FINDER — THEME V18
   FINAL APPROVED STRUCTURE

   Header
   Latest Items
   Technical Information Access Plans
   Full-width Search Bar
   ┌──────────────┬──────────────┬──────────────────────────┐
   │   MAKERS     │ MANUAL TYPES │      SEARCH RESULTS      │
   │   STICKY     │    STICKY    │     NORMAL SCROLLING     │
   └──────────────┴──────────────┴──────────────────────────┘
   ========================================================= */

.tmf-v18-plans {
    width: 100% !important;
    margin: 0 0 12px !important;
    padding: 8px 9px !important;
    background: #07100b !important;
    border: 1px solid #193d27 !important;
    border-radius: 10px !important;
}

.tmf-v18-plans-title {
    color: #39ff6a !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .35px !important;
    margin: 0 4px 6px !important;
}

.tmf-v18-plans-row {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 7px !important;
}

.tmf-v18-plan {
    min-width: 0 !important;
    min-height: 57px !important;
    display: grid !important;
    grid-template-columns: 25px minmax(0,1fr) auto !important;
    grid-template-rows: auto auto !important;
    column-gap: 6px !important;
    align-items: center !important;
    padding: 6px 7px !important;
    background: #08130c !important;
    border: 1px solid #1d492c !important;
    border-radius: 8px !important;
    color: #eef7f0 !important;
    text-decoration: none !important;
}

.tmf-v18-plan:hover {
    border-color: #39ff6a !important;
    transform: translateY(-1px);
}

.tmf-v18-icon {
    grid-row: 1 / span 2;
    font-size: 19px !important;
    text-align: center !important;
}

.tmf-v18-plan > span:not(.tmf-v18-icon) {
    min-width: 0 !important;
}

.tmf-v18-plan strong {
    display: block !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}

.tmf-v18-plan small {
    display: block !important;
    margin-top: 2px !important;
    color: #aabbb0 !important;
    font-size: 8px !important;
}

.tmf-v18-plan b {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: start !important;
    color: #39ff6a !important;
    font-size: 10px !important;
    white-space: nowrap !important;
}

.tmf-v18-plan em {
    grid-column: 3 !important;
    grid-row: 2 !important;
    align-self: end !important;
    justify-self: end !important;
    background: #39ff6a !important;
    color: #031008 !important;
    border-radius: 4px !important;
    padding: 3px 5px !important;
    font-style: normal !important;
    font-size: 7px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.tmf-v18-plan i {
    display: inline-block !important;
    background: #ffd83d !important;
    color: #1a1600 !important;
    border-radius: 3px !important;
    padding: 1px 3px !important;
    margin-left: 2px !important;
    font-size: 5px !important;
    font-style: normal !important;
    vertical-align: middle !important;
}

.tmf-v18-search-row {
    width: 100% !important;
    margin: 0 0 14px !important;
}

/* V29.0.5: Native integration point for the separate Manual Preview Manager. */
.tmf-v29-preview-mode-slot {
    width: 100% !important;
    margin: 0 0 14px !important;
}

.tmf-v29-preview-mode-slot:empty {
    display: none !important;
}

.tmf-v18-workspace[hidden],
.tmfp-workspace[hidden] {
    display: none !important;
}

.tmf-v18-search-row .tmf-search {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

.tmf-v18-workspace {
    width: 100% !important;
    max-width: none !important;
    display: grid !important;
    grid-template-columns: 180px 220px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
}

.tmf-v18-maker-col,
.tmf-v18-type-col,
.tmf-v18-results-col {
    min-width: 0 !important;
}

.tmf-v18-maker-col,
.tmf-v18-type-col {
    position: sticky !important;
    top: 15px !important;
    align-self: start !important;
    max-height: calc(100vh - 30px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: thin;
}

.tmf-v18-maker-col .tmf-maker-panel,
.tmf-v18-type-col .tmf-filters {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    position: static !important;
}

.tmf-v18-type-col .tmf-filter-grid {
    grid-template-columns: 1fr !important;
}

.tmf-v18-results-col,
.tmf-v18-results-col .tmf-results,
.tmf-v18-results-col .tmf-grid {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

.tmf-v18-results-col .tmf-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 15px !important;
}

@media (min-width: 1550px) {
    .tmf-v18-results-col .tmf-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 1250px) {
    .tmf-v18-workspace {
        grid-template-columns: 165px 195px minmax(0, 1fr) !important;
        gap: 10px !important;
    }

    .tmf-v18-results-col .tmf-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 900px) {
    .tmf-v18-workspace {
        grid-template-columns: 1fr !important;
    }

    .tmf-v18-maker-col,
    .tmf-v18-type-col {
        position: static !important;
        max-height: none !important;
        overflow: visible !important;
    }

    .tmf-v18-results-col .tmf-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .tmf-v18-plans-row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 600px) {
    .tmf-v18-results-col .tmf-grid {
        grid-template-columns: 1fr !important;
    }

    .tmf-v18-plans-row {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   V19 - Action button visibility only
   - Strong KZMechanic-style neon green + black text
   - Larger Technical Information Access Plan BUY NOW buttons
   - Larger finder result action buttons, including offer price text
   ========================================================= */

/* Finder/result action buttons */
.tmf-finder .tmf-actions .tmf-btn.tmf-buy,
.tmf-finder a.tmf-btn.tmf-buy {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    padding: 9px 16px !important;
    background: #22f34f !important;
    color: #031008 !important;
    border: 1px solid #39ff6a !important;
    border-radius: 9px !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    letter-spacing: .1px !important;
    text-shadow: none !important;
    white-space: nowrap !important;
    box-shadow: 0 0 0 1px rgba(57,255,106,.08), 0 0 12px rgba(57,255,106,.16) !important;
}
.tmf-finder .tmf-actions .tmf-btn.tmf-buy:hover,
.tmf-finder a.tmf-btn.tmf-buy:hover {
    background: #39ff6a !important;
    color: #020a04 !important;
    box-shadow: 0 0 16px rgba(57,255,106,.34) !important;
}

/* Technical Information Access Plans - BUY NOW */
.tmf-v18-plan em {
    min-width: 92px !important;
    min-height: 31px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 6px 10px !important;
    background: #22f34f !important;
    color: #031008 !important;
    border: 1px solid #39ff6a !important;
    border-radius: 7px !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    text-shadow: none !important;
    box-shadow: 0 0 10px rgba(57,255,106,.14) !important;
}
.tmf-v18-plan:hover em {
    background: #39ff6a !important;
    box-shadow: 0 0 14px rgba(57,255,106,.28) !important;
}


/* =========================================================
   V20 - Restore V19 search emphasis
   Keep all V19 button improvements unchanged.
   ========================================================= */

.tmf-v18-search-row .tmf-search input,
.tmf-finder .tmf-search input {
    min-height: 54px !important;
    border: 2px solid #1687ff !important;
    border-radius: 12px !important;
    background: #08130c !important;
    color: #ffffff !important;
    font-size: 16px !important;
    box-shadow:
        0 0 0 1px rgba(22,135,255,.20),
        0 0 12px rgba(22,135,255,.16) !important;
}

.tmf-v18-search-row .tmf-search input::placeholder,
.tmf-finder .tmf-search input::placeholder {
    color: #9ecbff !important;
    opacity: 1 !important;
}

.tmf-v18-search-row .tmf-search input:focus,
.tmf-finder .tmf-search input:focus {
    border-color: #42a5ff !important;
    box-shadow:
        0 0 0 2px rgba(66,165,255,.18),
        0 0 16px rgba(66,165,255,.28) !important;
}


/* V23: fallback Manual Type rows are fully active/clickable.
   Do not inherit the disabled-placeholder styling used in V21. */
.tmf-v21-placeholder-type.tmf-v22-active-type {
    opacity: 1 !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}
.tmf-v21-placeholder-type.tmf-v22-active-type input {
    cursor: pointer !important;
    pointer-events: auto !important;
    opacity: 1 !important;
}
.tmf-v21-placeholder-type.tmf-v22-active-type span {
    cursor: pointer !important;
    pointer-events: auto !important;
}


/* V25: Manual Type typography cleanup.
   Fallback rows (for types not supplied by the plugin) must look exactly like normal filter rows. */
.tmf-v18-type-col .tmf-v21-placeholder-type.tmf-v22-active-type {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 52px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 12px !important;
    margin: 0 !important;
    border: 1px solid #1d482c !important;
    border-radius: 9px !important;
    background: #0a170e !important;
    color: #d8e5dc !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}
.tmf-v18-type-col .tmf-v21-placeholder-type.tmf-v22-active-type span {
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    color: #d8e5dc !important;
}

/* Keep all Manual Type labels visually consistent. */
.tmf-v18-type-col .tmf-filter-option,
.tmf-v18-type-col .tmf-filter-option label,
.tmf-v18-type-col .tmf-filter-option span {
    font-size: 12px !important;
    line-height: 1.35 !important;
}

/* Only Special Offers gets an icon and stronger attention styling. */
.tmf-v18-type-col .tmf-v25-special-offer {
    border-color: #ff9f1a !important;
    background: linear-gradient(90deg, rgba(255,159,26,.14), #0a170e) !important;
    box-shadow: 0 0 10px rgba(255,159,26,.12) !important;
}
.tmf-v18-type-col .tmf-v25-special-offer,
.tmf-v18-type-col .tmf-v25-special-offer label,
.tmf-v18-type-col .tmf-v25-special-offer span {
    color: #ffd166 !important;
    font-weight: 700 !important;
}

/* =========================================================
   TECHNICAL MANUAL FINDER — THEME V28
   Members Only Technical Library filter.
   ========================================================= */
.tmf-v18-type-col .tmf-v28-member-library{
    display:flex;
    align-items:center;
    gap:6px;
    width:100%;
    min-height:34px;
    margin:0;
    padding:7px 9px;
    border:1px solid #2a633c !important;
    border-radius:7px;
    background:linear-gradient(90deg,rgba(57,255,106,.10),#0a170e) !important;
    color:#8dffad !important;
    font-size:12px !important;
    line-height:1.35 !important;
    font-weight:800 !important;
    cursor:pointer;
    box-shadow:0 0 9px rgba(57,255,106,.08);
}
.tmf-v18-type-col .tmf-v28-member-library:hover,
.tmf-v18-type-col .tmf-v28-member-library.is-active{
    border-color:#39ff6a !important;
    color:#39ff6a !important;
    box-shadow:0 0 12px rgba(57,255,106,.16) !important;
}
.tmf-v18-type-col .tmf-v28-member-library span{
    color:inherit !important;
    font-size:12px !important;
    font-weight:800 !important;
}

/* =========================================================
   TECHNICAL MANUAL FINDER - THEME V29.0.4
   Member Resource badge for Technical Information cards
   without an individual price.
   ========================================================= */
.tmf-finder article.tmf-v30-member-resource-card{
    position:relative !important;
    padding-bottom:52px !important;
    border-color:#8a6a14 !important;
    box-shadow:0 0 0 1px rgba(245,197,66,.08), 0 0 15px rgba(245,197,66,.07) !important;
}

.tmf-finder article.tmf-v30-member-resource-card:hover{
    border-color:#f5c542 !important;
    box-shadow:0 0 18px rgba(245,197,66,.14) !important;
}

.tmf-v30-member-resource-badge{
    position:absolute;
    right:10px;
    bottom:10px;
    z-index:8;
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:6px 10px;
    border:1px solid #f5c542;
    border-radius:7px;
    background:rgba(18,14,3,.94);
    color:#ffd65a !important;
    font-size:10px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.35px;
    white-space:nowrap;
    box-shadow:0 2px 10px rgba(0,0,0,.35);
    pointer-events:none;
}

@media (max-width:600px){
    .tmf-v30-member-resource-badge{
        right:8px;
        bottom:8px;
        min-height:25px;
        padding:5px 8px;
        font-size:9px !important;
    }
}

/* V30.0.1 Member Access Levels navigation */
.tmf-v18-type-col a.tmf-member-access-link{text-decoration:none !important;justify-content:center;text-align:center}
.tmf-v18-type-col a.tmf-member-access-link:focus-visible{outline:2px solid #39ff6a;outline-offset:2px}

/* V30.0.2: Separate diagnostic plan strip; avoid overlapping the search area. */
.tmf-v302-diagnostic-plans { position:relative !important; display:block !important; clear:both !important; margin:0 0 14px !important; }
.tmf-v302-diagnostic-plans .tmf-v18-plans-title { color:#39ff6a !important; }
.tmf-v302-diagnostic-plans .tmf-v18-plan em { font-size:7px !important; }
.tmf-v18-search-row { position:relative !important; clear:both !important; }
@media(max-width:900px){.tmf-v302-diagnostic-plans .tmf-v18-plans-row{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
@media(max-width:520px){.tmf-v302-diagnostic-plans .tmf-v18-plans-row{grid-template-columns:1fr !important}}

/* v30.0.3: Hide the confusing catalog/preview mode selector.
   Keep its integration slot in the DOM for compatibility with Preview Manager. */
#tmf-preview-mode-slot, .tmf-v29-preview-mode-slot { display: none !important; }
