/* Remaining pages: 404, children, account details, generic forms. Loaded after shop.css, before desktop.css. */

/* 404 */
.k-404{text-align:center;padding:36px 20px 24px;display:flex;flex-direction:column;align-items:center}
.k-404>img{width:84px;height:84px;border-radius:50%;margin-bottom:10px}
.k-404-code{font-size:72px;font-weight:800;letter-spacing:-.04em;line-height:1;background:linear-gradient(90deg,#0B1F4B,#1D4ED8);-webkit-background-clip:text;background-clip:text;color:transparent}
.k-404 h2{font-size:24px;color:var(--navy);margin:8px 0 6px}
.k-404 p{color:var(--muted);max-width:34ch;margin-bottom:6px}
.k-404 .k-sbox{width:100%;max-width:440px;margin:18px 0 0!important}
.k-404-acts{display:flex;gap:10px;margin-top:18px}

/* empty cart */
.k-empty-cart{text-align:center;margin:28px 16px 0;padding:34px 22px;background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow)}
.k-empty-ic{width:72px;height:72px;margin:0 auto 12px;border-radius:50%;background:#EEF3FB;display:grid;place-items:center}
.k-empty-ic svg{width:34px;height:34px;stroke:var(--blue)}
.k-empty-cart h2{font-size:22px;color:var(--navy);margin-bottom:6px}
.k-empty-cart p{color:var(--muted);max-width:32ch;margin:0 auto 18px}
.k-big{height:52px;padding:0 32px;font-size:16px}

/* children (My Account) */
.k-children{display:grid;gap:12px}
.k-child{background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow);padding:16px 18px;margin:0}
.k-child b{display:block;font-size:18px;color:var(--navy);margin-bottom:6px}
.k-child dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:8px 0 10px;font-size:14.5px}
.k-child form{margin:0}
.k-child .k-link{background:none;border:2px solid #FECACA;color:#B91C1C;border-radius:99px;padding:7px 16px;font-weight:700;font-size:13.5px;cursor:pointer}
.k-children .k-card{margin:0}
.k-card h3{font-size:19px}
.k-card p{margin:0 0 12px}
.k-card label{display:block;font-weight:700;font-size:14px;color:var(--navy)}
.k-card input[type=text],.k-card input[type=tel],.k-card input[type=email]{display:block;width:100%;margin-top:5px;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;font:inherit;font-size:16px}
.k-card input:focus,.k-fields input:focus,.k-content input:focus{outline:2px solid rgba(29,78,216,.35);border-color:var(--blue)}
.k-card .k-save{width:100%;height:52px;font-weight:800}

/* account details */
.woocommerce-EditAccountForm{background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow);padding:18px}
.woocommerce-EditAccountForm .form-row{padding:0;margin:0 0 14px;width:100%!important;float:none!important}
.woocommerce-EditAccountForm fieldset{border:1px solid var(--line);border-radius:14px;padding:14px;margin:6px 0 16px}
.woocommerce-EditAccountForm legend{padding:0 8px;font-weight:800;color:var(--navy)}
.woocommerce-EditAccountForm em{font-size:13px;color:var(--muted)}
.woocommerce-EditAccountForm .woocommerce-Button{width:100%;height:52px;font-weight:800}
.woocommerce-form-row .password-input{width:100%}

/* generic polish */
.woocommerce-notices-wrapper:empty{display:none}
.k-content .woocommerce-info,.k-content .woocommerce-message,.k-content .woocommerce-error{margin-left:0!important;margin-right:0!important}
:focus-visible{outline:3px solid rgba(29,78,216,.45);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* product images keep a little air so tall bottles never touch the card edge */
.ph img{padding:8px}
.k-product-buy .quantity{background:none!important;box-shadow:none!important}
.k-related{margin-top:34px}
.news .k-empty{grid-column:1/-1;margin:0}

/* login / register welcome */
.k-welcome{text-align:center;padding:22px 16px 6px}
.k-welcome img{width:72px;height:72px;border-radius:50%;margin:0 auto 10px}
.k-welcome h2{font-size:26px;font-weight:800;letter-spacing:-.02em;color:var(--navy)}
.k-welcome p{color:var(--muted);max-width:36ch;margin:6px auto 0}
.k-auth{max-width:460px;margin-left:auto;margin-right:auto}
.k-auth .u-columns,.k-authtabs{max-width:460px;margin-left:auto;margin-right:auto}
.woocommerce-message:focus-visible,.woocommerce-error:focus-visible,.woocommerce-info:focus-visible{outline-color:transparent}

.k-auth .u-columns>div{width:100%!important;float:none!important;margin:0}
.k-auth .u-columns{display:block}

/* picked-up order: the code is spent, so it reads as finished */
.k-code-done .k-code-n{opacity:.45;text-decoration:line-through;text-decoration-thickness:3px}
.k-code-done .k-pill{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.3);color:#E2E8F0}
.k-code-done .k-pill i{background:#94A3B8}

/* tablet and up: account menu is no longer a floated column */
@media (min-width:600px){
	.woocommerce-MyAccount-navigation,.woocommerce-MyAccount-content{float:none!important;width:auto!important}
}

/* lost / reset password */
.k-authcard{max-width:460px;margin:8px auto 26px;padding:18px;background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow)}
.k-authcard .form-row{padding:0;margin:0 0 14px;width:100%!important;float:none!important}
.k-authcard label{display:block;font-weight:700;font-size:14px;color:var(--navy);margin-bottom:5px}
.k-authcard .required{color:#B42318;text-decoration:none}
.k-authcard input.input-text{display:block;width:100%;min-height:50px;padding:12px 14px;border:1px solid #64748B;border-radius:14px;background:#fff;font:inherit;font-size:16px;color:var(--text)}
.k-authcard input.input-text:focus{outline:3px solid rgba(29,78,216,.35);border-color:var(--blue)}
.k-authsubmit{width:100%;height:52px;font-weight:800!important}
.k-authalt{text-align:center;margin:4px 0 0!important}
.k-authalt a{color:var(--blue);font-weight:700;display:inline-block;padding:10px 6px}
.k-sent{text-align:center}
.k-sent svg{color:#15803D;margin:4px auto 8px}
.k-sent h2{font-size:22px;font-weight:800;color:var(--navy);margin-bottom:6px}
.k-sent p{color:var(--muted)}
.k-fail svg{color:#B42318}
.k-actionbtn{display:flex;align-items:center;justify-content:center;margin:16px 0 4px;text-decoration:none;border-radius:99px;background:var(--blue);color:#fff!important}
.k-help{color:var(--muted);font-size:14px}
.k-help a{display:inline;padding:0}
/* the failed / cancelled state is shown by our own card; hide the HitPay plugin's English duplicates (its status script still runs) */
.payment-panel-failed,.payment-panel-cancelled,.payment-panel-error{display:none!important}

/* form fields need a visible edge (WCAG 1.4.11, 3:1) */
.k-content input[type=text],.k-content input[type=email],.k-content input[type=tel],.k-content input[type=password],.k-content input[type=search],.k-content input[type=number],.k-content select,.k-content textarea,.k-card input[type=text],.k-card input[type=tel],.k-card input[type=email],.k-fields input,.k-fields select,.k-fields textarea{border-color:#64748B}

/* skip link: hidden until a keyboard user tabs to it */
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--navy);color:#fff;padding:12px 18px;border-radius:12px;font-weight:700;transition:top .15s}
.skip:focus{top:12px}
main:focus{outline:none}
