/* Shared controls across the landing page, dashboard, editors and dialogs. */
:root{--control-border:rgba(177,211,255,.32);--control-fill:rgba(166,207,255,.12);--control-text:#eef6ff;--control-radius:16px;--focus:#a6d4ff}
[hidden]{display:none!important}
body button,body a.btn,body a.button,body a.white-button,body a.outline-button{font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:500;line-height:1.35;min-height:44px;padding:12px 19px;border:1px solid var(--control-border);border-radius:var(--control-radius);background:var(--control-fill);color:var(--control-text);box-shadow:inset 0 1px 0 #ffffff0a;text-align:center;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s;transform:none;filter:none}
body a.btn,body a.button,body a.white-button,body a.outline-button{display:inline-flex;align-items:center;justify-content:center;gap:8px}
body button:hover:not(:disabled),body a.btn:hover,body a.button:hover,body a.white-button:hover,body a.outline-button:hover{background:#b5d9ff26;border-color:#bddfff88;transform:none;filter:none}
body button:focus-visible,body a:focus-visible{outline:2px solid var(--focus);outline-offset:4px}
body button:active:not(:disabled),body a.btn:active,body a.white-button:active{background:#9bcaff38}
body button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
body .primary,body button.dark,body a.dark,body a.white-button,body button.white-button,body .chip-row .selected,body .payment-tabs .selected,body .payment-switch button.selected{background:#e5f2ff;border-color:#e5f2ff;color:#123964;box-shadow:inset 0 1px 0 #fff4}
body .primary:hover:not(:disabled),body button.dark:hover:not(:disabled),body a.dark:hover,body a.white-button:hover,body button.white-button:hover:not(:disabled),body .chip-row .selected:hover{background:#cbe5ff;border-color:#cbe5ff;color:#10365d}
body button.textbtn,body button.linkbutton,body button.text-button,body #forgot,body #show-password{border-color:transparent;background:transparent;box-shadow:none;color:#c2dcf8;padding:10px 12px}
body button.textbtn:hover,body button.linkbutton:hover,body button.text-button:hover{border-color:#bddfff20;background:#b5d9ff0c}
body .step-tabs button{border:0;background:transparent;box-shadow:none;padding:4px 0;color:#a5c0e2;min-height:42px;display:flex;align-items:center;gap:7px;font-size:12px}
body .step-tabs button:hover{background:transparent;border:0;color:white}
body .step-tabs .current{color:white;background:none}
body .step-tabs span{background:#bddfff16;border:1px solid #c2ddff16}
body .step-tabs .current span{background:#194f94;outline:4px solid #ffffff20}
body .quantity-control button{border-radius:50%;height:44px;width:44px;padding:0;font-size:24px;display:inline-grid;place-items:center}
body .item button{padding:0;min-height:34px;width:26px;border:0;background:transparent;box-shadow:none;border-radius:8px;font-size:22px}
body .auth-tabs button{border:0;border-radius:12px;box-shadow:none;color:#b7cce4;background:transparent}
body .auth-tabs button.selected{background:#b7d9ff19;border:0;color:#f1f7ff}
body .auth-tabs{padding:5px;border:1px solid #afcfff28;border-radius:17px;gap:5px}
body .payment-tabs,body .payment-switch{border-radius:20px;background:#b7d9ff0a;border:1px solid #afcfff2c;padding:5px;gap:5px}
body .payment-tabs button,body .payment-switch button{border-radius:14px;padding:10px 20px;min-height:40px;border-color:transparent}
body .clear-button{font-size:12px;min-height:40px;padding:9px 15px}
body #output button,body #output a.btn,body #viewer button{background:#e6f0fc;color:#19436c;border-color:#bfd3e9}
body #output button.dark,body #output a.dark,body #viewer #printdoc{background:#235a94;color:white;border-color:#235a94}
body .navfoot a.btn{font-size:11px;padding:10px 12px;min-height:40px}
body .account-bar button{min-height:34px;padding:7px 12px;font-size:11px}
body .hero .buttons{gap:10px}
body .bottom .textbtn{font-size:11px}
@media(max-width:720px){body button,body a.btn,body a.button,body a.white-button,body a.outline-button{font-size:12px;padding:12px 16px;min-height:44px}body .step-tabs button{font-size:11px;padding:4px 0}body .quantity-control button{padding:0}body .item button{padding:0;min-height:34px}body .payment-tabs button,body .payment-switch button{padding:10px 15px;min-height:40px}body .actions{gap:8px}body .actions button{flex:1 1 145px}body .top-actions .button{font-size:11px;padding:10px 12px}body .auth-tabs button{flex:1}}
@media(prefers-reduced-motion:reduce){body button,body a{transition:none!important}}
@media print{body button,body a.btn,body a.button{display:none!important}}
