:root{--btn-h:44px;--btn-h-sm:32px;--btn-h-lg:52px;--btn-px:20px;--btn-px-sm:14px;--btn-px-lg:24px;--btn-radius:100px;--btn-border:1px;--btn-fs:13px;--btn-fs-sm:11px;--btn-fs-lg:14px;--btn-fw:600;--btn-ls:0.08em;--btn-navy:#001e40;--btn-navy-hover:#003366;--btn-navy-active:#00152d;--btn-gold:#f7d377;--btn-gold-hover:#f5c84a;--btn-gold-active:#e8b832;--btn-ink:#0b1620;--btn-ink-soft:#2d4250;--btn-teal:#006972;--btn-teal-hover:#00818c;--btn-teal-active:#004d54;--btn-border-color:rgba(11,22,32,0.10);--btn-border-hover:rgba(11,22,32,0.25);--btn-white:#fff;--btn-disabled-opacity:0.5;--btn-focus-color:#001e40;--btn-focus-width:2px;--btn-focus-offset:2px}.btn-primary,.btn-promo,.btn-secondary,.btn-back,.btn-toggle,.btn-link{box-sizing:border-box;margin:0;font-family:inherit;line-height:1;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.btn-primary:disabled,.btn-promo:disabled,.btn-secondary:disabled,.btn-back:disabled,.btn-toggle:disabled,.btn-link:disabled{opacity:var(--btn-disabled-opacity);pointer-events:none;cursor:not-allowed}.btn-primary{display:inline-flex;align-items:center;justify-content:center;height:var(--btn-h);padding:0 var(--btn-px);background:var(--btn-navy);color:var(--btn-white);border:none;border-radius:var(--btn-radius);font-size:var(--btn-fs);font-weight:var(--btn-fw);transition:background 0.2s,transform 0.1s}.btn-primary:hover{background:var(--btn-navy-hover)}.btn-primary:active{background:var(--btn-navy-active);transform:scale(0.98)}.btn-primary:focus-visible{outline:var(--btn-focus-width) solid var(--btn-white);outline-offset:var(--btn-focus-offset);box-shadow:0 0 0 calc(var(--btn-focus-offset) + var(--btn-focus-width) + 2px) var(--btn-focus-color)}.btn-primary.--small{height:var(--btn-h-sm);padding:0 var(--btn-px-sm);font-size:var(--btn-fs-sm)}.btn-primary.--large{height:var(--btn-h-lg);padding:0 var(--btn-px-lg);font-size:var(--btn-fs-lg)}.btn-promo{display:inline-flex;align-items:center;justify-content:center;height:var(--btn-h);padding:0 var(--btn-px);background:var(--btn-teal);color:var(--btn-white);border:none;border-radius:var(--btn-radius);font-size:var(--btn-fs);font-weight:var(--btn-fw);letter-spacing:var(--btn-ls);text-transform:uppercase;transition:background 0.2s,transform 0.1s}.btn-promo:hover{background:var(--btn-teal-hover)}.btn-promo:active{background:var(--btn-teal-active);transform:scale(0.98)}.btn-promo:focus-visible{outline:var(--btn-focus-width) solid var(--btn-focus-color);outline-offset:var(--btn-focus-offset)}.btn-promo.--small{height:var(--btn-h-sm);padding:0 var(--btn-px-sm);font-size:var(--btn-fs-sm)}.btn-promo.--large{height:var(--btn-h-lg);padding:0 var(--btn-px-lg);font-size:var(--btn-fs-lg)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;height:var(--btn-h);padding:0 var(--btn-px);background:transparent;color:var(--btn-ink);border:var(--btn-border) solid var(--btn-border-color);border-radius:var(--btn-radius);font-size:var(--btn-fs);font-weight:var(--btn-fw);transition:background 0.2s,border-color 0.2s}.btn-secondary:hover{background:rgba(11,22,32,0.04);border-color:var(--btn-border-hover)}.btn-secondary:active{background:rgba(11,22,32,0.08)}.btn-secondary:focus-visible{outline:var(--btn-focus-width) solid var(--btn-focus-color);outline-offset:var(--btn-focus-offset)}.btn-secondary.--small{height:var(--btn-h-sm);padding:0 var(--btn-px-sm);font-size:var(--btn-fs-sm)}.btn-secondary.--large{height:var(--btn-h-lg);padding:0 var(--btn-px-lg);font-size:var(--btn-fs-lg)}.btn-back{display:inline-flex;align-items:center;gap:4px;height:40px;padding:0 4px;background:transparent;color:var(--btn-teal);border:none;border-radius:0;font-size:var(--btn-fs);font-weight:var(--btn-fw);transition:opacity 0.15s}.btn-back:hover{opacity:0.75}.btn-back:active{opacity:0.6}.btn-back:focus-visible{outline:var(--btn-focus-width) solid var(--btn-focus-color);outline-offset:var(--btn-focus-offset);border-radius:4px}.btn-toggle{display:inline-flex;align-items:center;justify-content:center;height:var(--btn-h);padding:0 var(--btn-px);background:var(--btn-white);color:var(--btn-ink);border:var(--btn-border) solid var(--btn-border-color);border-radius:var(--btn-radius);font-size:var(--btn-fs);font-weight:var(--btn-fw);transition:background 0.15s,color 0.15s,border-color 0.15s}.btn-toggle:hover{background:rgba(11,22,32,0.04);border-color:var(--btn-border-hover)}.btn-toggle:active{transform:scale(0.97)}.btn-toggle.is-on{background:var(--btn-navy);color:var(--btn-white);border-color:var(--btn-navy)}.btn-toggle.is-on:hover{background:var(--btn-navy-hover);border-color:var(--btn-navy-hover)}.btn-toggle:focus-visible{outline:var(--btn-focus-width) solid var(--btn-focus-color);outline-offset:var(--btn-focus-offset)}.btn-toggle.is-on:focus-visible{outline-color:var(--btn-white);box-shadow:0 0 0 calc(var(--btn-focus-offset) + var(--btn-focus-width) + 2px) var(--btn-focus-color)}.btn-toggle.--small{height:var(--btn-h-sm);padding:0 var(--btn-px-sm);font-size:var(--btn-fs-sm)}.btn-link{display:inline-flex;align-items:center;gap:4px;padding:4px 0;background:transparent;color:var(--btn-navy);border:none;border-radius:0;font-size:var(--btn-fs);font-weight:var(--btn-fw);text-decoration:none;transition:color 0.15s}.btn-link:hover{color:var(--btn-teal);text-decoration:underline}.btn-link:active{opacity:0.7}.btn-link:focus-visible{outline:var(--btn-focus-width) solid var(--btn-focus-color);outline-offset:var(--btn-focus-offset);border-radius:2px}