/*! Copyright (c) 2026 StickerMint LLC. All rights reserved. Proprietary software. */
/* The studio's body-child container reset uses unlayered !important rules.
   A scoped important layer preserves this native modal's centering and inset. */
@layer studio-font-dialog{
 dialog.sms-font-browser{position:fixed!important;inset:0!important;margin:auto!important;padding:20px!important;max-width:640px!important;height:fit-content!important;overflow:hidden!important}
 @media(max-width:480px){dialog.sms-font-browser{padding:16px!important}}
}
.sms-font-browser{box-sizing:border-box;width:min(640px,calc(100vw - 24px));max-width:640px;max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--tm-brand-dce5ef,#dce5ef);border-radius:20px;background:#fff;color:var(--tm-brand-213a4b,#213a4b);box-shadow:0 24px 80px #14263b40;font:14px/1.45 Inter,Arial,sans-serif;overflow:hidden}
.sms-font-browser::backdrop{background:#10233b70}
.sms-font-browser[open]{display:flex;flex-direction:column}
.sms-font-browser>*{flex-shrink:0}
.sms-font-browser *{box-sizing:border-box}
.sms-font-browser-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.sms-font-browser h2{margin:0 0 4px;font-size:21px;line-height:1.2;color:var(--tm-brand-1c416a,#1c416a)}
.sms-font-browser-header p{margin:0;color:#60748a;font-size:13px}
.sms-font-close{flex:none;width:36px;height:36px;border:0;border-radius:10px;background:var(--tm-brand-edf2f8,#edf2f8);color:#60748a;font:26px/1 Arial;cursor:pointer}
.sms-font-filters{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:12px}
.sms-font-filters label{display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--tm-brand-536b86,#536b86)}
.sms-font-filters input,.sms-font-filters select{width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid var(--tm-brand-ccd9e9,#ccd9e9);border-radius:10px;background:var(--tm-brand-f8fafc,#f8fafc);color:var(--tm-brand-213a4b,#213a4b);font:14px Inter,Arial,sans-serif}
.sms-font-count{margin:12px 0 9px;color:#60748a;font-size:12px}
.sms-font-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:min(440px,calc(100dvh - 235px));min-height:0;flex-shrink:1;overflow:auto;overscroll-behavior:contain;padding:2px 6px 4px 2px;scrollbar-width:thin}
.sms-font-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;align-content:start;min-height:106px;min-width:0;padding:12px;border:1px solid var(--tm-brand-dce5ef,#dce5ef);border-radius:12px;background:var(--tm-brand-f8fafc,#f8fafc);color:var(--tm-brand-203e61,#203e61);text-align:left;cursor:pointer;font:12px/1.4 Inter,Arial,sans-serif}
.sms-font-card:hover{border-color:var(--tm-brand-8fb8f1,#8fb8f1);background:var(--tm-brand-f0f7ff,#f0f7ff)}
.sms-font-card[aria-pressed=true]{border-color:var(--tm-brand-2893f2,#2893f2);background:var(--tm-brand-eaf4ff,#eaf4ff);box-shadow:inset 0 0 0 1px var(--tm-brand-2893f2,#2893f2)}
.sms-font-card-label{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sms-font-card-category{align-self:center;font-size:10px;color:#698199}
.sms-font-sample{display:block;grid-column:1/-1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.65;min-height:42px;font-size:26px;font-synthesis:none}
.sms-font-preview-status{grid-column:1/-1;min-height:14px;font-size:10px;color:#8798a8}
.sms-font-feedback{margin:12px 0 0;color:#b42318;font-size:12px}
.sms-font-empty{grid-column:1/-1;margin:20px;color:#60748a;text-align:center}
.sms-font-browser :is(button,input,select):focus-visible{outline:3px solid var(--tm-brand-2893f2,#2893f2);outline-offset:2px}
.sms-font-browse-link{float:right;padding:0;border:0;background:none;color:var(--tm-brand-2176cc,#2176cc);font:600 11px/1.5 Inter,Arial,sans-serif;text-transform:none;letter-spacing:0;cursor:pointer}
#smsTbBold:disabled,#smsTbItalic:disabled,#smsModalBold:disabled,#smsModalItalic:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:480px){.sms-font-browser{padding:16px;max-height:calc(100dvh - 20px);width:calc(100vw - 20px);border-radius:16px}.sms-font-filters{gap:8px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.sms-font-results{grid-template-columns:minmax(0,1fr);max-height:calc(100dvh - 220px)}.sms-font-card{min-height:104px}.sms-font-filters input,.sms-font-filters select{font-size:16px}}
@media(prefers-reduced-motion:reduce){.sms-font-browser *{scroll-behavior:auto!important}}
