.bsto-tool{--bsto-primary:#2563eb;--bsto-primary-dark:#1d4ed8;--bsto-text:#172033;--bsto-muted:#667085;--bsto-border:#e4e7ec;--bsto-bg:#fff;box-sizing:border-box;max-width:980px;margin:32px auto;padding:0;background:var(--bsto-bg);border:1px solid var(--bsto-border);border-radius:18px;box-shadow:0 10px 35px rgba(16,24,40,.07);overflow:hidden;font-family:inherit;color:var(--bsto-text)}
.bsto-tool *{box-sizing:border-box}.bsto-tool-header{padding:30px 30px 18px;background:linear-gradient(180deg,#f8fbff,#fff)}.bsto-eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;color:var(--bsto-primary)}.bsto-tool h2{margin:7px 0 8px;font-size:30px;line-height:1.2}.bsto-tool-header p{margin:0;color:var(--bsto-muted);font-size:15px;line-height:1.7}.bsto-tool-body{padding:28px 30px}.bsto-tool label{display:block;font-weight:700;font-size:14px;margin:0 0 16px}.bsto-input{display:block;width:100%;margin-top:8px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;padding:12px 14px;font:inherit;color:var(--bsto-text);min-height:46px}.bsto-input:focus{outline:0;border-color:var(--bsto-primary);box-shadow:0 0 0 3px rgba(37,99,235,.12)}textarea.bsto-input{resize:vertical;line-height:1.55}.bsto-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px}.bsto-btn{border:0;border-radius:10px;background:var(--bsto-primary);color:#fff;padding:12px 18px;font-weight:800;font-size:14px;cursor:pointer;transition:.2s}.bsto-btn:hover{background:var(--bsto-primary-dark);transform:translateY(-1px)}.bsto-result{margin-top:22px}.bsto-result pre,.bsto-code{white-space:pre-wrap;word-break:break-word;background:#101828;color:#f2f4f7;border-radius:12px;padding:18px;overflow:auto;line-height:1.6}.bsto-copybar{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.bsto-small-btn{border:1px solid var(--bsto-border);background:#fff;border-radius:8px;padding:8px 12px;font-weight:700;cursor:pointer}.bsto-stats,.bsto-social-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.bsto-stat{padding:14px;border:1px solid var(--bsto-border);border-radius:10px;background:#fafafa}.bsto-stat strong{display:block;font-size:20px}.bsto-stat span{font-size:12px;color:var(--bsto-muted)}.bsto-counters{font-size:13px;color:var(--bsto-muted);margin:8px 0 16px}.bsto-serp{border:1px solid #dfe3e8;border-radius:12px;padding:18px;background:#fff;max-width:760px}.bsto-serp-title{font-size:20px;line-height:1.3;color:#1a0dab;margin-bottom:4px}.bsto-serp-url{font-size:13px;color:#188038;margin-bottom:5px;word-break:break-all}.bsto-serp-desc{font-size:14px;color:#4d5156;line-height:1.5}.bsto-legal-options{display:flex;gap:14px;flex-wrap:wrap;margin:4px 0 20px}.bsto-legal-options label{font-weight:600;margin:0}.bsto-note{font-size:12px;color:var(--bsto-muted);margin-top:14px;line-height:1.6}.bsto-list{margin:0;padding-left:20px}.bsto-list li{margin:7px 0}.bsto-error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;padding:12px;border-radius:10px}.bsto-success{color:#027a48;background:#ecfdf3;border:1px solid #abefc6;padding:12px;border-radius:10px}
@media(max-width:700px){.bsto-tool{margin:22px 0;border-radius:14px}.bsto-tool-header,.bsto-tool-body{padding:22px 18px}.bsto-tool h2{font-size:25px}.bsto-grid{grid-template-columns:1fr}.bsto-stats,.bsto-social-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.2 polished directory, form spacing and legal generators */
.bsto-page-intro{max-width:900px;margin:0 auto 22px;color:#475467;line-height:1.75}.bsto-page-help{max-width:900px;margin:30px auto;padding:24px;border:1px solid #e4e7ec;border-radius:14px;background:#fbfcfe}.bsto-page-help h2{margin:0 0 8px}.bsto-page-help p{line-height:1.7}
.bsto-tools-directory{max-width:1180px;margin:0 auto;padding:10px 0 50px}.bsto-directory-hero{text-align:center;padding:20px 10px 36px}.bsto-directory-hero h1{font-size:40px;line-height:1.15;margin:8px 0 12px}.bsto-directory-hero p{max-width:760px;margin:0 auto;color:#667085;line-height:1.75}.bsto-tool-group{margin:0 0 42px}.bsto-tool-group h2{font-size:25px;margin:0 0 18px}.bsto-tool-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.bsto-tool-card{display:flex;gap:15px;padding:22px;border:1px solid #e4e7ec;border-radius:16px;background:#fff;box-shadow:0 5px 22px rgba(16,24,40,.05);min-height:170px}.bsto-card-icon{flex:0 0 34px;height:34px;border-radius:10px;background:#eef4ff;color:#2563eb;display:grid;place-items:center;font-weight:800}.bsto-tool-card h3{font-size:18px;margin:0 0 8px}.bsto-tool-card h3 a{color:#172033;text-decoration:none}.bsto-tool-card h3 a:hover{color:#2563eb}.bsto-tool-card p{font-size:14px;line-height:1.6;color:#667085;margin:0 0 12px}.bsto-card-link{font-size:13px;font-weight:800;text-decoration:none;color:#2563eb}.bsto-directory-note{padding:26px;border-radius:16px;background:#f8fbff;border:1px solid #dbeafe}.bsto-directory-note h2{margin:0 0 8px}.bsto-directory-note p{margin:0;color:#475467;line-height:1.7}
.bsto-tool{margin-top:38px;margin-bottom:42px}.bsto-tool-header{display:flex;gap:18px;align-items:flex-start}.bsto-legal-badge{min-width:70px;height:70px;border-radius:16px;display:grid;place-items:center;background:#eef4ff;color:#2563eb;font-size:11px;font-weight:900;letter-spacing:.08em}.bsto-legal-privacy_policy_generator .bsto-legal-badge{background:#ecfdf3;color:#027a48}.bsto-legal-terms_generator .bsto-legal-badge{background:#fff7ed;color:#c2410c}.bsto-legal-disclaimer_generator .bsto-legal-badge{background:#f5f3ff;color:#6d28d9}.bsto-section-title{display:flex;align-items:center;gap:12px;margin:10px 0 20px;padding-top:8px}.bsto-section-title>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#eef4ff;color:#2563eb;font-weight:800}.bsto-section-title strong{display:block;font-size:16px}.bsto-section-title small{display:block;color:#667085;margin-top:2px;font-weight:400}.bsto-form-grid{gap:18px 22px}.bsto-legal-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0 0 24px;padding:18px;border:1px solid #eaecf0;border-radius:14px;background:#fafbfc}.bsto-legal-options label{margin:0;padding:4px 0;font-weight:600}.bsto-legal-options input{margin-right:8px}.bsto-btn-wide{width:100%;min-height:50px;font-size:15px}.bsto-legal .bsto-result{margin-top:26px}.bsto-legal .bsto-code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px}.bsto-copybar{justify-content:flex-end}.bsto-result .bsto-copybar{background:#f8fafc;padding:10px;border:1px solid #eaecf0;border-top:0;border-radius:0 0 12px 12px}.bsto-result .bsto-code + .bsto-copybar{margin-top:-12px}
@media(max-width:900px){.bsto-tool-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.bsto-tool-cards{grid-template-columns:1fr}.bsto-directory-hero h1{font-size:32px}.bsto-legal-options{grid-template-columns:1fr}.bsto-tool-header{gap:12px}.bsto-legal-badge{min-width:58px;height:58px}.bsto-tool{margin-top:24px;margin-bottom:30px}}

/* v1.3 interaction and output polish */
.bsto-tool label{margin-bottom:22px}.bsto-form-grid label{margin-bottom:0}.bsto-grid{gap:22px}.bsto-tool-body{padding-top:32px}.bsto-input.bsto-invalid{border-color:#d92d20;box-shadow:0 0 0 3px rgba(217,45,32,.08)}.bsto-output-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;border:1px solid #e4e7ec;border-bottom:0;border-radius:12px 12px 0 0;background:#f8fafc}.bsto-output-head strong{font-size:15px}.bsto-output-head span{font-size:12px;color:#667085}.bsto-hashtags{display:flex;flex-wrap:wrap;gap:9px;padding:18px;border:1px solid #e4e7ec;border-radius:0 0 12px 12px;background:#fff}.bsto-chip{border:1px solid #dbe4ff;background:#f5f8ff;color:#1d4ed8;border-radius:999px;padding:8px 11px;cursor:pointer;font:inherit}.bsto-chip:hover{background:#eaf0ff}.bsto-slug-result,.bsto-url-result{padding:18px;border:1px solid #dbeafe;background:#f8fbff;border-radius:12px;font-weight:700;word-break:break-all}.bsto-over{border-color:#fecdca;background:#fff6f5}.bsto-result .bsto-code{margin:0;border-radius:0 0 12px 12px}.bsto-copybar{margin:0!important}.bsto-tool .bsto-note{line-height:1.7}.bsto-tools-directory{margin-top:15px}.bsto-tool-card{transition:transform .18s ease,box-shadow .18s ease}.bsto-tool-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(16,24,40,.08)}
/* v1.4 cleanup: remove escaped-newline artifacts and keep tool pages spacious */
.bsto-tool-shortcode-wrap{margin:0;padding:0}.bsto-page-intro:empty,.bsto-page-help:empty{display:none}
.bsto-page-intro{margin-bottom:24px}.bsto-page-help{margin-top:38px}
.bsto-no-toc .bsto-page-intro{padding-top:0}

.bsto-help-box{display:flex;gap:8px;flex-direction:column;margin:0 0 20px;padding:14px 16px;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff;color:#344054}.bsto-help-box strong{font-size:14px}.bsto-help-box span,.bsto-inline-help{font-size:13px;color:#667085;font-weight:400}.bsto-inline-help{display:block;margin-top:4px}

/* v1.5.4 visual breadcrumbs and resilient directory UI */
.bsto-breadcrumbs{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important;max-width:1180px!important;margin:0 auto 20px!important;padding:8px 10px!important;font-size:13px!important;line-height:1.5!important;color:#667085!important}.bsto-breadcrumbs a{color:#2563eb!important;text-decoration:none!important}.bsto-breadcrumbs a:hover{text-decoration:underline!important}.bsto-breadcrumbs span[aria-hidden="true"]{color:#98a2b3!important}.bsto-directory-breadcrumbs{margin-bottom:8px!important}.bsto-tools-directory{display:block!important;width:100%!important;max-width:1180px!important;margin:0 auto!important;padding:10px 0 50px!important}.bsto-tool-cards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}.bsto-tool-card{display:flex!important;visibility:visible!important;opacity:1!important}.bsto-tool-group{display:block!important;visibility:visible!important}.bsto-tool{display:block!important;visibility:visible!important;opacity:1!important}
@media(max-width:900px){.bsto-tool-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:700px){.bsto-tool-cards{grid-template-columns:1fr!important}.bsto-breadcrumbs{padding-left:0!important;padding-right:0!important}}

/* v1.5.5 button visibility fix: protect result action buttons from theme/global button styles */
.bsto-tool .bsto-small-btn,
.bsto-result .bsto-copybar .bsto-small-btn,
.bsto-tool button.bsto-small-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  visibility:visible !important;
  opacity:1 !important;
  color:#172033 !important;
  background:#ffffff !important;
  border:1px solid #cfd6e4 !important;
  border-radius:8px !important;
  padding:9px 14px !important;
  min-height:40px !important;
  font-family:inherit !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  text-transform:none !important;
  box-shadow:none !important;
  cursor:pointer !important;
}
.bsto-tool .bsto-small-btn:hover,
.bsto-result .bsto-copybar .bsto-small-btn:hover,
.bsto-tool button.bsto-small-btn:hover{
  color:#ffffff !important;
  background:#2563eb !important;
  border-color:#2563eb !important;
}
.bsto-tool .bsto-small-btn:focus-visible,
.bsto-tool .bsto-small-btn:active{
  color:#ffffff !important;
  background:#1d4ed8 !important;
  border-color:#1d4ed8 !important;
  outline:3px solid rgba(37,99,235,.18) !important;
  outline-offset:2px !important;
}
.bsto-copybar{align-items:center !important;}
