/* Website layout for the same editor used by the Chrome extension. */
body.web-mode { width: 100%; max-height: none; min-height: 100vh; }
.web-mode .shell { width: min(1120px, 100%); max-width: 1120px; margin: auto; min-height: 100vh; }
.web-mode .topbar { padding: 20px 32px; gap: 15px; }
.web-mode .brand-mark { width: 44px; height: 44px; }
.web-mode .brand-copy strong { font-size: 23px; }
.web-mode .brand-copy span { font-size: 13px; }
.web-mode .header-actions { flex-direction: row; max-width: none; gap: 10px; }
.web-mode .language-select, .web-mode .account-toggle { font-size: 13px; min-height: 40px; padding: 8px 12px; }
.web-mode .language-select { width: 125px; }
.web-mode .account-toolbar { padding: 14px 32px 0; }
.web-mode .account-toolbar button { font-size: 13px; }
.web-mode .hero { margin: 22px 28px; padding: 36px; }
.web-mode .hero h1 { font-size: clamp(30px, 4vw, 44px); max-width: 730px; }
.web-mode .hero > p { font-size: 16px; max-width: 680px; line-height: 1.6; }
.web-mode .hero-tag { font-size: 12px; padding: 7px 10px; margin-bottom: 16px; }
.web-mode .search { margin: 0 28px; height: 52px; }
.web-mode .search input { font-size: 15px; }
.web-mode .filters { padding: 18px 28px; }
.web-mode .filter { font-size: 13px; padding: 9px 14px; }
.web-mode .tools { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0 28px 28px; gap: 14px; }
.web-mode .tool-card { padding: 20px; min-height: 148px; }
.web-mode .tool-copy strong { font-size: 15px; white-space: normal; }
.web-mode .tool-copy > span { font-size: 12px; white-space: normal; line-height: 1.5; }
.web-mode .workspace { width: min(900px, 100%); margin: 0 auto; }
.web-mode .workspace-heading h2 { font-size: 26px; }
.web-mode .workspace-heading > div:last-child > p:last-child { font-size: 14px; }
.web-mode .eyebrow, .web-mode .back { font-size: 12px; }
.web-mode .dropzone { min-height: 175px; }
.web-mode .dropzone strong { font-size: 16px; }
.web-mode .dropzone > span:last-child { font-size: 13px; }
.web-mode .account-panel { max-width: 640px; }
.web-mode .account-help, .web-mode .account-label, .web-mode .disclosure, .web-mode .placement-hint, .web-mode .zoom-help { font-size: 13px; line-height: 1.6; }
.web-mode .guest-welcome p { font-size: 14px; }
.web-mode .account-panel input, .web-mode .draft-controls input { font-size: 15px; }
.web-mode footer { flex-wrap: wrap; row-gap: 15px; padding: 22px 28px; font-size: 12px; }
.web-mode .footer-links { flex-wrap: wrap; }
.web-extra-links { display: flex; flex-wrap: wrap; gap: 12px 20px; width: 100%; }
.web-extra-links a { color: var(--brand-dark); text-decoration: none; }
.web-extra-links a:hover { text-decoration: underline; }
.web-mode #openEditorTab { display: none; }
.web-mode button:focus-visible, .web-mode a:focus-visible { outline: 3px solid #6547e8; outline-offset: 3px; }
@media (max-width: 720px) {
  .web-mode .topbar { padding: 14px 16px; gap: 10px; }
  .web-mode .brand-copy strong { font-size: 18px; }
  .web-mode .brand-copy span { font-size: 11px; }
  .web-mode .header-actions { flex-direction: column; gap: 5px; }
  .web-mode .language-select, .web-mode .account-toggle { min-height: 32px; font-size: 12px; width: 114px; }
  .web-mode .hero { margin: 16px; padding: 25px 22px; }
  .web-mode .hero > p { font-size: 14px; }
  .web-mode .tools { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0 16px 20px; gap: 10px; }
  .web-mode .tool-card { padding: 16px; }
  .web-mode .search { margin: 0 16px; }
  .web-mode .filters { padding: 14px 16px; }
  .web-mode .account-toolbar { padding: 12px 16px 0; }
}
@media (max-width: 370px) {
  .web-mode .brand-copy span { display: none; }
  .web-mode .brand-mark { width: 32px; height: 36px; }
  .web-mode .tools { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .web-mode *, .web-mode *::before, .web-mode *::after { scroll-behavior: auto !important; transition: none !important; }
}
