.mx-acc{font:600 14px var(--f-body);color:var(--ink);background:transparent;border:1.5px solid var(--ink);min-height:40px;padding:0 12px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.mx-acc:hover{background:var(--ink);color:var(--paper)}
.mx-acc.on{border-color:var(--brass);color:var(--brass-ink,var(--brass))}
body.mx-locked main,body.mx-locked nav.bar,body.mx-locked details.guide{filter:blur(5px);opacity:.5;pointer-events:none;user-select:none;-webkit-user-select:none}
body.mx-locked main{max-height:620px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 35%,transparent);mask-image:linear-gradient(#000 35%,transparent)}
body.mx-locked #cartbtn,body.mx-locked #drawer,body.mx-soft #cartbtn,body.mx-soft #drawer{display:none!important}
.mx-gate{position:relative;z-index:5;margin:26px auto 0;max-width:640px;background:var(--sheet);border:1.5px solid var(--ink);box-shadow:8px 8px 0 var(--brass);padding:26px 24px;text-align:center}
.mx-gate .k{font:600 12px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--brass)}
.mx-gate h2{font:800 30px/1.05 var(--f-display);text-transform:uppercase;margin:8px 0 10px}
.mx-gate p{margin:0 auto 18px;max-width:52ch;color:var(--muted);font-size:15px}
.mx-gate ul{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:6px;font-size:14px;text-align:left;max-width:420px;margin-inline:auto}
.mx-gate li:before{content:"✓ ";color:var(--brass);font-weight:700}
.mx-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.mx-b{min-height:44px;padding:0 18px;font:600 15px var(--f-body);border:1.5px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer}
.mx-b.p{background:var(--ink);color:var(--paper)}
.mx-ov{position:fixed;inset:0;z-index:200;background:rgba(10,15,20,.55);display:none;align-items:flex-start;justify-content:center;padding:5vh 16px;overflow:auto}
.mx-ov.show{display:flex}
.mx-box{background:var(--sheet);color:var(--ink);border:1.5px solid var(--ink);width:100%;max-width:520px;padding:22px 22px 18px;position:relative}
.mx-box h3{font:800 26px/1.05 var(--f-display);text-transform:uppercase;margin:0 0 4px}
.mx-box .sub{margin:0 0 14px;color:var(--muted);font-size:14px}
.mx-x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:20px;cursor:pointer;color:var(--ink)}
.mx-tabs{display:flex;border-bottom:1.5px solid var(--line);margin:0 0 14px}
.mx-tabs button{flex:1;border:0;background:none;padding:10px 6px;font:600 14px var(--f-body);color:var(--muted);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-1.5px}
.mx-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--brass)}
.mx-f{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mx-f .w{grid-column:1/-1}
.mx-f label{display:block;font:600 11px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.mx-f input[type=text],.mx-f input[type=email],.mx-f input[type=tel],.mx-f input[type=password]{width:100%;min-height:42px;padding:0 10px;font:400 15px var(--f-body);color:var(--ink);background:var(--paper);border:1.5px solid var(--line);border-radius:0}
.mx-f input.bad{border-color:#b42318}
.mx-f label.ck{display:flex;gap:8px;align-items:flex-start;font:400 13px/1.4 var(--f-body);letter-spacing:0;text-transform:none;color:var(--muted)}.mx-acc .mx-n{max-width:180px;overflow:hidden;text-overflow:ellipsis}
.mx-f .ck a{color:inherit}
.mx-err{color:#b42318;font-size:13px;min-height:1em;margin:8px 0 0}
.mx-note{font-size:12px;color:var(--muted);margin:12px 0 0}
@media (max-width:520px){.mx-acc .mx-n{display:none}.mx-f{grid-template-columns:1fr}.mx-gate{margin-inline:16px;padding:22px 16px}.mx-gate h2{font-size:25px}.mx-acc{padding:0 9px;font-size:13px}}
.mx-ok{background:#ecf8ef;border-left:4px solid #1a7f37;padding:12px 14px;font-size:15px;margin:6px 0 0}
.mx-link{background:none;border:0;padding:0;color:var(--muted);text-decoration:underline;cursor:pointer;font:400 13px var(--f-body);margin-top:8px}
.mx-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
