/* Shared public controls. Route adapters below cover native plugin specificity.
 * Primary: 60px/gold. Secondary and fields: 48px. No submission/selection changes.
 */
body.ftk-premium-page{
 --ftk-control-primary:var(--gold,#796749);
 --ftk-control-ink:var(--ink,#262724);
 --ftk-control-line:var(--line,#d8d5cc);
 --ftk-control-disabled:#e7dfd3;
 --ftk-control-disabled-text:#6f6253;
}

body.ftk-premium-page .button,
body.ftk-premium-page.home .hero-actions .button,
body.ftk-premium-page.home .oem-content .oem-branches .button,
body.ftk-premium-page .oem-journey .journey-after .button,
body.ftk-premium-page .premium-native-form div.wpforms-container-full .wpforms-form button.wpforms-submit,
body.ftk-premium-page .premium-review .form-actions .button,
body.ftk-premium-page.page-content .reading-body .wpcf7 input[type=submit],
body.ftk-premium-page.page-content .reading-body[data-premium-recruit-body] .ftk-parttime-recruitment .button,
body.ftk-premium-page.page-wholesale .quick-order-form.quick-catalog-form .quick-order-checkout,
body.ftk-premium-page.page-wholesale .wholesale-trial-banner .quick-trial-checkout,
body.ftk-premium-page.premium-commerce .woocommerce :is(button,a,input).button,
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .ftk-detail-actions>.button,
body.ftk-premium-page.premium-commerce .wc-block-components-button:not(.is-link),
body.ftk-premium-page.premium-commerce #respond .comment-form input#submit,
body.ftk-premium-page.premium-commerce .ftk-checkout-layout #place_order{
 --ftk-action-bg:var(--ftk-control-primary);
 --ftk-action-text:#fff;
 appearance:none;box-sizing:border-box;display:inline-flex;align-items:center;
 justify-content:space-between;gap:32px;min-height:60px;height:auto;max-width:100%;
 padding:18px 27px;border:0;border-radius:0;box-shadow:none;
 background:var(--ftk-action-bg);color:var(--ftk-action-text);
 font-family:var(--sans,"Hiragino Kaku Gothic ProN",sans-serif);font-size:14px;
 font-weight:400;line-height:1.5;letter-spacing:.04em;text-decoration:none;
 white-space:normal;cursor:pointer;transition:background .2s,color .2s,border-color .2s;
}
body.ftk-premium-page .button:hover:not(:disabled):not([aria-disabled=true]),
body.ftk-premium-page.home .hero-actions .button:hover:not(:disabled),
body.ftk-premium-page.home .oem-content .oem-branches .button:hover:not(:disabled),
body.ftk-premium-page .oem-journey .journey-after .button:hover:not(:disabled),
body.ftk-premium-page .premium-native-form div.wpforms-container-full .wpforms-form button.wpforms-submit:hover:not(:disabled),
body.ftk-premium-page .premium-review .form-actions .button:hover:not(:disabled),
body.ftk-premium-page.page-content .reading-body .wpcf7 input[type=submit]:hover:not(:disabled),
body.ftk-premium-page.page-content .reading-body[data-premium-recruit-body] .ftk-parttime-recruitment .button:hover:not(:disabled),
body.ftk-premium-page.page-wholesale .quick-order-form.quick-catalog-form .quick-order-checkout:is(:hover,:active):not(:disabled),
body.ftk-premium-page.page-wholesale .wholesale-trial-banner .quick-trial-checkout:hover,
body.ftk-premium-page.premium-commerce .woocommerce :is(button,a,input).button:hover:not(:disabled),
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .ftk-detail-actions>.button:hover:not(:disabled),
body.ftk-premium-page.premium-commerce .wc-block-components-button:not(.is-link):hover:not(:disabled),
body.ftk-premium-page.premium-commerce #respond .comment-form input#submit:hover,
body.ftk-premium-page.premium-commerce .ftk-checkout-layout #place_order:hover:not(:disabled){
 --ftk-action-bg:var(--ftk-control-ink);background:var(--ftk-action-bg);color:#fff;
}
/* WPForms gives its resting state a more specific theme selector. */
body.ftk-premium-page .premium-native-form div.wpforms-container-full{
 --wpforms-button-background-color:var(--ftk-control-primary);
 --wpforms-button-text-color:#fff;--wpforms-button-border-radius:0px;
}
body.ftk-premium-page .premium-native-form div.wpforms-container-full .wpforms-form button.wpforms-submit:not(:hover):not(:active){background:var(--ftk-control-primary);color:#fff}
body.ftk-premium-page .site-header .header-contact{background:var(--ftk-control-primary);color:#fff;border-radius:0;min-height:48px}
body.ftk-premium-page .site-header .header-contact:hover{background:var(--ftk-control-ink);color:#fff}

body.ftk-premium-page .button:disabled,
body.ftk-premium-page.home .hero-actions .button:disabled,
body.ftk-premium-page.home .oem-content .oem-branches .button:disabled,
body.ftk-premium-page .oem-journey .journey-after .button:disabled,
body.ftk-premium-page .button[aria-disabled=true],
body.ftk-premium-page .premium-native-form div.wpforms-container-full .wpforms-form button.wpforms-submit:disabled,
body.ftk-premium-page .premium-native-form div.wpforms-container-full .wpforms-form button.wpforms-submit:not(:hover):not(:active):disabled,
body.ftk-premium-page .premium-review .form-actions .button:disabled,
body.ftk-premium-page.page-content .reading-body .wpcf7 input[type=submit]:disabled,
body.ftk-premium-page.page-content .reading-body[data-premium-recruit-body] .ftk-parttime-recruitment .button:disabled,
body.ftk-premium-page.page-wholesale .quick-order-form.quick-catalog-form .quick-order-checkout:disabled,
body.ftk-premium-page.premium-commerce .woocommerce :is(button,input).button:disabled,
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .ftk-detail-actions>button.button:disabled,
body.ftk-premium-page.premium-commerce #respond .comment-form input#submit:disabled,
body.ftk-premium-page.premium-commerce .ftk-checkout-layout #place_order:disabled,
body.ftk-premium-page.premium-commerce .wc-block-components-button:not(.is-link):disabled{
 --ftk-action-bg:var(--ftk-control-disabled);--ftk-action-text:var(--ftk-control-disabled-text);
 opacity:1;background:var(--ftk-action-bg);color:var(--ftk-action-text);border-color:var(--ftk-control-disabled);cursor:default;
}

/* Secondary actions retain their role instead of looking like another submit. */
body.ftk-premium-page .premium-review .form-actions .text-link,
body.ftk-premium-page.premium-commerce .summary .cart .ftk-continue,
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .ftk-detail-actions>.ftk-detail-continue,
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .related.products ul.products li.product .button{
 --ftk-action-bg:transparent;--ftk-action-text:var(--ftk-control-ink);
 box-sizing:border-box;min-height:48px;padding:12px 20px;border:1px solid var(--ftk-control-line);
 border-radius:0;box-shadow:none;background:transparent;color:var(--ftk-control-ink);font-size:14px;line-height:1.5;
}
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .ftk-detail-actions>.ftk-detail-continue{min-height:60px;padding:17px 26px}
body.ftk-premium-page .premium-review .form-actions .text-link:hover,
body.ftk-premium-page.premium-commerce .summary .cart .ftk-continue:hover,
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .ftk-detail-actions>.ftk-detail-continue:hover:not(:disabled),
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .related.products ul.products li.product .button:hover{
 --ftk-action-bg:var(--paper,#fcfbf9);--ftk-action-text:var(--ftk-control-ink);
 background:var(--ftk-action-bg);color:var(--ftk-control-ink);border-color:var(--ftk-control-primary);
}
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .ftk-detail-actions>button.ftk-detail-continue:disabled{
 --ftk-action-bg:transparent;--ftk-action-text:var(--ftk-control-disabled-text);
 background:transparent;color:var(--ftk-control-disabled-text);border-color:var(--ftk-control-line);
}

/* Text, select and textarea adapters exclude compact quantity and file controls. */
body.ftk-premium-page .field :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),
body.ftk-premium-page .premium-native-form div.wpforms-container-full .wpforms-field :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),
body.ftk-premium-page .ftk-recruit-application .recruit-field :is(input,select,textarea):not([type=file]),
body.ftk-premium-page.premium-commerce .woocommerce form .form-row :is(input.input-text,select,textarea),
body.ftk-premium-page.premium-commerce .woocommerce .comment-form :is(input:not([type=submit]):not([type=checkbox]),textarea),
body.ftk-premium-page.premium-commerce .wc-block-components-text-input input,
body.ftk-premium-page .search-area input{
 box-sizing:border-box;max-width:100%;min-width:0;width:100%;min-height:var(--ftk-field-min-height,48px);
 padding:11px 15px;border:1px solid var(--ftk-field-border,var(--ftk-control-line));border-radius:0;
 background:#fff;color:var(--ftk-control-ink);box-shadow:none;
 font-family:var(--sans,"Hiragino Kaku Gothic ProN",sans-serif);font-size:16px;font-weight:400;line-height:1.5;
}
body.ftk-premium-page .field :is(input,select):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),
body.ftk-premium-page .premium-native-form div.wpforms-container-full .wpforms-field :is(input,select):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),
body.ftk-premium-page .ftk-recruit-application .recruit-field :is(input,select):not([type=file]),
body.ftk-premium-page.premium-commerce .woocommerce form .form-row :is(input.input-text,select),
body.ftk-premium-page.premium-commerce .woocommerce .comment-form input:not([type=submit]):not([type=checkbox]),
body.ftk-premium-page .search-area input{height:48px}
body.ftk-premium-page .field textarea,
body.ftk-premium-page .premium-native-form div.wpforms-container-full .wpforms-field textarea,
body.ftk-premium-page .ftk-recruit-application .recruit-field textarea,
body.ftk-premium-page.premium-commerce .woocommerce form .form-row textarea,
body.ftk-premium-page.premium-commerce .woocommerce .comment-form textarea{--ftk-field-min-height:140px;height:auto;min-height:140px;resize:vertical}
body.ftk-premium-page main :is(input,select,textarea):is([aria-invalid=true],.wpforms-error,.wpcf7-not-valid){--ftk-field-border:#b42318}
body.ftk-premium-page .ftk-recruit-application .recruit-field>label{font-size:14px}
body.ftk-premium-page .ftk-recruit-application label>span{font-size:12px;margin-left:8px;color:var(--muted,#60615b)}

/* Native file inputs stay keyboard accessible and show their original filename. */
body.ftk-premium-page .ftk-recruit-application input[type=file],
body.ftk-premium-page .premium-native-form .wpforms-field input[type=file],
body.ftk-premium-page .wpcf7 input[type=file]{
 box-sizing:border-box;width:100%;max-width:100%;min-height:48px;padding:0;border:0;background:transparent;
 color:var(--ftk-control-ink);font-size:13px;line-height:1.5;box-shadow:none;
}
body.ftk-premium-page input[type=file]::file-selector-button{
 box-sizing:border-box;min-height:48px;margin-right:16px;padding:12px 20px;border:1px solid var(--ftk-control-line);border-radius:0;
 background:transparent;color:var(--ftk-control-ink);font:inherit;cursor:pointer;transition:border-color .2s;
}
body.ftk-premium-page input[type=file]::file-selector-button:hover{border-color:var(--ftk-control-primary)}

body.ftk-premium-page main :is(button,a.button,input,select,textarea):focus-visible{
 outline:2px solid var(--ftk-control-primary);outline-offset:3px;
}
body.ftk-premium-page .premium-native-form div.wpforms-container-full .wpforms-field :is(input,select,textarea):focus,
body.ftk-premium-page .field :is(input,select,textarea):focus,
body.ftk-premium-page .ftk-recruit-application .recruit-field :is(input,select,textarea):focus{
 border-color:var(--ftk-field-border,var(--ftk-control-primary));outline:2px solid var(--ftk-control-primary);outline-offset:3px;box-shadow:none;
}
body.ftk-premium-page input:is([type=checkbox],[type=radio]){accent-color:var(--ftk-control-primary)}

/* View switches are quiet tabs, not purchase buttons. */
body.ftk-premium-page .filter-buttons button,
body.ftk-premium-page .search-area button{box-sizing:border-box;min-height:48px;font-size:14px;line-height:1.5}
body.ftk-premium-page .search-area button{padding:11px 0}
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .ftk-detail-sizes>button{
 border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;color:var(--muted,#60615b);min-height:44px;
}
body.ftk-premium-page.premium-commerce.ftk-wholesale-detail .ftk-detail-sizes>button[aria-pressed=true]{border-bottom-color:var(--ftk-control-primary);background:transparent;color:var(--ftk-control-ink)}
body.ftk-premium-page.page-wholesale .quick-variant-catalog{--quick-size-height:44px}
body.ftk-premium-page.page-wholesale .quick-variant-catalog .quick-order-sizes button{min-height:44px}

/* The password toggle is a separate action, with room reserved in the field. */
body.ftk-premium-page.premium-commerce .woocommerce :is(form.login,form.register,form.lost_reset_password){border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}
body.ftk-premium-page.premium-commerce .woocommerce .lost_password a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;text-decoration:underline;text-underline-offset:5px}
body.ftk-premium-page.premium-commerce .woocommerce .form-row .password-input input.input-text{padding-right:52px}
body.ftk-premium-page.premium-commerce .password-input .show-password-input{
 box-sizing:border-box;display:grid;place-items:center;width:44px;height:44px;min-height:44px;
 top:2px;right:2px;transform:none;translate:none;padding:0;border:0;border-radius:0;background:transparent;
}

@media(max-width:767px){
 body.ftk-premium-page .premium-native-form div.wpforms-container-full .wpforms-form button.wpforms-submit,
 body.ftk-premium-page .premium-review .form-actions .button,
 body.ftk-premium-page .premium-review .form-actions .text-link,
 body.ftk-premium-page .ftk-recruit-application button.button{width:100%;min-width:0}
 body.ftk-premium-page.home .hero-actions .button{font-size:14px;min-height:60px;min-width:0;padding:18px 16px;gap:12px}
 body.ftk-premium-page.home .hero-actions .text-link{min-height:60px;font-size:12px;line-height:1.5;padding:14px 8px;gap:8px}
 body.ftk-premium-page .hero-actions{flex-wrap:wrap}
}
@media(max-width:359px){
 body.ftk-premium-page.home .hero-actions{flex-direction:column;align-items:stretch}
 body.ftk-premium-page.home .hero-actions :is(.button,.text-link){width:100%;min-width:0}
}
@media(max-width:600px){
 body.ftk-premium-page.page-wholesale .wholesale-trial-banner .wholesale-trial-banner-order{grid-template-columns:minmax(0,1fr);gap:16px}
 body.ftk-premium-page.page-wholesale .wholesale-trial-banner .quick-trial-purchase{width:100%;max-width:none}
}
