/* Shared Merchant/Admin/Auth styles. Public pages intentionally excluded. */
@font-face {
    font-family: "Playpen Sans Thai";
    src: url("../fonts/PlaypenSansThai-Variable.ttf") format("truetype");
    font-weight: 100 800;
    font-style: normal;
    font-display: swap;
}
body.merchant-app,
body.tbfd-auth-page {
    --merchant-font-family: "Playpen Sans Thai", "Noto Sans Thai", system-ui, sans-serif;
    --font-geist: var(--merchant-font-family);
    font-family: var(--merchant-font-family);
}
:is(body.merchant-app, body.tbfd-auth-page) :is(h1,h2,h3,h4,h5,h6,p,a,label,span,small,strong,input,textarea,select,button) {
    font-family: var(--merchant-font-family);
}
/* Global notifications: neutral appearance also suits validation messages. */
.merchant-toast-stack{position:fixed;right:24px;top:96px;z-index:100000;width:min(420px,calc(100vw - 32px));display:grid;gap:10px;pointer-events:none}
.merchant-toast{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff;border:1px solid #ffd7c4;border-left:4px solid #ff510d;border-radius:12px;box-shadow:0 10px 35px #14203326;color:#24344e;pointer-events:auto;font-size:14px;line-height:1.6;overflow-wrap:anywhere;animation:merchant-toast-enter .2s ease-out}
.merchant-toast>svg{width:22px;height:22px;flex-shrink:0;color:#ff510d;margin-top:1px}.merchant-toast>span{flex:1}
.merchant-app .merchant-toast button{border:0;background:transparent;color:#74809a;padding:0 4px;font-size:24px;line-height:1.2;cursor:pointer}.merchant-toast button:focus-visible{outline:2px solid #ff510d;border-radius:4px}
@keyframes merchant-toast-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.merchant-toast-stack{top:88px;right:16px}}
@media(prefers-reduced-motion:reduce){.merchant-toast{animation:none}}
.merchant-toast[data-type=success]{border-color:#bae7ce;border-left-color:#13a760}.merchant-toast[data-type=error]{border-color:#ffc4c4;border-left-color:#e63c3c}
[data-header-shop-logo]{overflow:hidden;flex-shrink:0}[data-header-shop-logo] img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
