        @import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;1,400;1,700&family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap');

        /* ───────────────────────────────────────────
   DESIGN TOKENS
─────────────────────────────────────────── */
        :root {
          --maxw: 1200px;

          /* Gold ramp */
          --gold-light: #f5e8d0;
          --gold: #c4862a;
          --gold-mid: #a06820;
          --gold-dark: #8a5a14;
          --gold-deeper: #5c3a0a;

          /* Main accent */
          --mc: #c4862a;
          --mc-hover: #a06820;
          --mc-light: rgba(196, 134, 42, .10);
          --mc-mid: rgba(196, 134, 42, .22);
          --mc-ring: rgba(196, 134, 42, .28);

          /* Gradients */
          --gold-grad: linear-gradient(135deg, #f5e8d0 0%, #c4862a 50%, #8a5a14 100%);
          --gold-grad-v: linear-gradient(180deg, #f5e8d0 0%, #c4862a 60%, #8a5a14 100%);
          --gold-line: linear-gradient(90deg, transparent 0%, #c4862a 40%, #f5e8d0 55%, #c4862a 70%, transparent 100%);

          /* Parchment surfaces (replaces obsidian) */
          --bg: #faf8f4;
          --surface: #f4f1eb;
          --surface-2: #edeae2;
          --surface-3: #e4e0d6;
          --surface-4: #d9d4c8;

          --border: rgba(196, 134, 42, .18);
          --border-soft: rgb(220 217 217);
          --border-bright: rgba(196, 134, 42, .40);

          --text-primary: #1a1714;
          --text-secondary: #5a4e38;
          --text-muted: #9e8e72;

          --shadow-xs: 0 1px 4px rgba(0, 0, 0, .08);
          --shadow-sm: 0 4px 20px rgba(0, 0, 0, .10), 0 1px 4px rgba(0, 0, 0, .06);
          --shadow-md: 0 12px 48px rgba(0, 0, 0, .14), 0 3px 12px rgba(0, 0, 0, .08);
          --shadow-glow: 0 0 0 3px var(--mc-ring);
          --shadow-gold: 0 0 24px rgba(196, 134, 42, .18);
          --shadow-gold-lg: 0 0 48px rgba(196, 134, 42, .14), 0 0 12px rgba(196, 134, 42, .10);

          --radius-sm: 8px;
          --radius-md: 14px;
          --radius-lg: 20px;
          --radius-pill: 999px;

          --ftfamily: 'DM Sans', system-ui, sans-serif;
          --display: 'Playfair Display', Georgia, serif;

          --ease-spring: cubic-bezier(.34, 1.56, .64, 1);
          --ease-out: cubic-bezier(.16, 1, .3, 1);
        }

        /* ───────────────────────────────────────────
   RESET
─────────────────────────────────────────── */
        *,
        *::before,
        *::after {
          box-sizing: border-box;
          margin: 0;
          padding: 0;
        }

        html,
        body {
          height: 100%;
        }

        body {
          font-family: var(--ftfamily);
          font-size: 16px;
          line-height: 1.65;
          color: var(--text-primary);
          background: var(--bg);
          background-image:
            radial-gradient(ellipse at 20% 0%, rgba(196, 134, 42, .06) 0%, transparent 55%),
            radial-gradient(ellipse at 80% 100%, rgba(180, 120, 40, .05) 0%, transparent 55%),
            radial-gradient(ellipse at 50% 50%, rgba(196, 134, 42, .03) 0%, transparent 70%);
          background-attachment: fixed;
          -webkit-font-smoothing: antialiased;
          padding-bottom: 60px;
        }

        a {
          text-decoration: none;
        }

        h1 {
          font-family: var(--display);
          font-size: 1.65rem;
          font-weight: 700;
          letter-spacing: .5px;
          color: var(--text-primary);
          margin: 0;
        }

        h2 {
          font-family: var(--display);
          font-weight: 600;
          color: var(--text-secondary);
          font-size: 1.1rem;
        }

        h3 {
          font-family: var(--display);
          font-weight: 600;
          color: var(--text-secondary);
        }

        /* ───────────────────────────────────────────
   HEADER
─────────────────────────────────────────── */
        header {
          background: #1a1714;
          border-bottom: 1px solid var(--border);
          box-shadow: var(--shadow-xs);
          position: relative;
        }

        header::before {
          content: '';
          display: block;
          height: 2px;
          width: 100%;
          background: var(--gold-line);
        }

        header .inner {
          max-width: var(--maxw);
          margin: 0 auto;
          padding: 0 20px;
          display: flex;
          align-items: center;
          gap: 10px;
        }

        header a {
          color: rgba(250, 248, 244, .6);
          padding: 6px 12px;
          cursor: pointer;
          transition: color .2s;
        }

        header a:hover {
          color: var(--gold);
        }

        header h1 {
          background: var(--gold-grad);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          background-clip: text;
          font-style: italic;
          letter-spacing: 1px;
        }

        /* ───────────────────────────────────────────
   CONTAINER
─────────────────────────────────────────── */
        .container {
          max-width: var(--maxw);
          margin: 0 auto;
          padding: 0 20px;
        }

        /* ───────────────────────────────────────────
   TOP MENU
─────────────────────────────────────────── */
        #topMenu {
          display: flex;
          align-items: center;
          gap: 4px;
          padding: 10px 0;
          overflow-x: auto;
          overflow-y: hidden;
          white-space: nowrap;
          scroll-behavior: smooth;
          scrollbar-width: none;
        }

        #topMenu::-webkit-scrollbar {
          display: none;
        }

        #topMenu a {
          display: inline-flex;
          align-items: center;
          padding: 7px 16px;
          border-radius: var(--radius-pill);
          font-size: .75rem;
          font-weight: 500;
          color: var(--text-secondary);
          border: 1px solid var(--border);
          background: var(--surface-2);
          transition: all .22s var(--ease-out);
          white-space: nowrap;
          font-family: var(--ftfamily);
          letter-spacing: .04em;
          text-transform: uppercase;
        }

        #topMenu a:hover,
        #topMenu a.active {
          color: #1a1714;
          background: var(--gold-grad);
          border-color: transparent;
          font-weight: 600;
          box-shadow: 0 4px 18px rgba(196, 134, 42, .30);
        }

        #topMenu h3 {
          font-size: .67rem;
          font-weight: 600;
          color: var(--text-muted);
          text-transform: uppercase;
          letter-spacing: .12em;
          margin: 0 6px;
          white-space: nowrap;
        }

        /* ───────────────────────────────────────────
   INPUT SECTION
─────────────────────────────────────────── */
        .input-section {
          display: flex;
          position: sticky;
          top: 0;
          z-index: 40;
          padding: 12px 0;
          gap: 10px;
          align-items: center;
        }

        .input-section div {
          width: 100%;
          position: relative;
        }

        .input-section input {
          width: 100%;
          padding: 15px 52px 15px 24px;
          border-radius: var(--radius-pill);
          border: 1.5px solid var(--border);
          background: white;
          font-family: var(--ftfamily);
          font-size: 1rem;
          color: var(--text-primary);
          outline: none;
          box-shadow: var(--shadow-xs);
          transition: border-color .22s, box-shadow .22s, transform .18s var(--ease-spring);
          letter-spacing: .02em;
        }

        .input-section input::placeholder {
          color: var(--text-muted);
        }

        .input-section input:focus {
          border-color: var(--gold-mid);
          box-shadow: 0 0 0 3px rgba(196, 134, 42, .18), var(--shadow-gold);
          transform: translateY(-1px);
        }

        #input-count {
          position: absolute;
          right: 30px;
          bottom: 3px;
          font-size: 10px;
          font-weight: 600;
          color: var(--text-muted);
        }

        .clear-overlay {
          position: absolute;
          right: 4px;
          top: 50%;
          transform: translateY(-50%);
          display: inline-flex;
          align-items: center;
          justify-content: center;
          width: 38px;
          height: 38px;
          border-radius: 50%;
          cursor: pointer;
          color: var(--text-muted);
          transition: color .2s, background .2s;
          z-index: 10;
        }

        .clear-overlay:hover {
          color: var(--gold);
          background: var(--mc-light);
        }

        /* ───────────────────────────────────────────
   BUTTONS
─────────────────────────────────────────── */
        .btn {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          gap: 6px;
          padding: 12px 24px;
          border-radius: var(--radius-pill);
          border: 1px solid rgba(196, 134, 42, .5);
          font-family: var(--ftfamily);
          font-size: .75rem;
          font-weight: 600;
          cursor: pointer;
          background: var(--gold-grad);
          color: #1a1714;
          box-shadow: 0 4px 18px rgba(196, 134, 42, .25), inset 0 1px 0 rgba(255, 255, 255, .2);
          transition: transform .16s var(--ease-spring), box-shadow .2s, filter .2s;
          white-space: nowrap;
          text-transform: uppercase;
          letter-spacing: .08em;
        }

        .btn:hover {
          transform: translateY(-2px);
          box-shadow: 0 8px 32px rgba(196, 134, 42, .40);
          filter: brightness(1.06);
        }

        .btn:active {
          transform: scale(.97);
        }

        .btn.secondary {
          background: white;
          color: var(--text-secondary);
          border: 1px solid var(--border);
          box-shadow: var(--shadow-xs);
        }

        .btn.secondary:hover {
          border-color: var(--gold);
          color: var(--gold);
          background: var(--mc-light);
          box-shadow: var(--shadow-sm);
        }

        button.btn.closeit {
          background: linear-gradient(135deg, #b52a2a, #7a1a1a);
          border-color: rgba(180, 60, 60, .4);
          box-shadow: 0 4px 14px rgba(139, 26, 26, .25);
          color: #fde8e8;
        }

        button#menu {
          font-size: 1.4rem;
          height: 44px;
          width: 44px;
          border-radius: var(--radius-md);
          border: 1px solid var(--border);
          background: white;
          box-shadow: var(--shadow-xs);
          transition: all .2s;
          color: var(--text-secondary);
        }

        button#menu:hover {
          border-color: var(--gold);
          background: var(--mc-light);
          color: var(--gold);
        }

        /* ───────────────────────────────────────────
   RANDOM CLOUD
─────────────────────────────────────────── */
        #randomcloud {
          text-align: center;
          width: 100%;
          height: 70px;
          overflow: auto;
          scrollbar-width: none;
        }

        #randomcloud::-webkit-scrollbar {
          display: none;
        }

        #randomcloud li {
          background: transparent;
          border: none;
          box-shadow: none;

        }

        #randomcloud p {
          color: var(--text-secondary);
          background: transparent;
          text-align: center;
          border: none;
          font-size: 26px !important;
          padding: 10px 0 0;
          margin: 0;
          cursor: pointer;
          transition: color .2s, transform .2s var(--ease-spring);
          font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
        }

        #randomcloud p:hover {
          color: var(--gold);
          transform: scale(1.15);
        }

        #randombutton {
          display: inline-flex;
          align-items: center;
          gap: 8px;
          border-radius: var(--radius-pill);
          padding: 13px 30px;
          margin-top: 12px;
          background: var(--gold-grad);
          color: #1a1714;
          font-family: var(--display);
          font-weight: 600;
          font-size: 1.05rem;
          font-style: italic;
          border: 1px solid rgba(196, 134, 42, .4);
          cursor: pointer;
          box-shadow: 0 6px 24px rgba(196, 134, 42, .25);
          transition: transform .16s var(--ease-spring), box-shadow .2s, filter .2s;
        }

        #randombutton:hover {
          transform: translateY(-2px);
          box-shadow: 0 10px 36px rgba(196, 134, 42, .40);
          filter: brightness(1.06);
        }

        /* ───────────────────────────────────────────
   FONT SIZE CONTROLLER
─────────────────────────────────────────── */
        .font-size-controller {
          display: flex;
          align-items: center;
          gap: 12px;
          justify-content: flex-end;
          padding: 10px;
        }

        .font-size-controller label {
          font-size: .7rem;
          font-weight: 600;
          color: var(--text-muted);
          text-transform: uppercase;
          letter-spacing: .1em;
        }

        .font-size-controller input[type="range"] {
          width: 200px;
          height: 3px;
          background: var(--surface-3);
          border-radius: var(--radius-pill);
          outline: none;
          appearance: none;
          -webkit-appearance: none;
          cursor: pointer;
        }

        .font-size-controller input[type="range"]::-webkit-slider-thumb {
          appearance: none;
          width: 16px;
          height: 16px;
          background: var(--gold-grad);
          border: 2px solid white;
          border-radius: 50%;
          box-shadow: 0 2px 8px rgba(196, 134, 42, .40);
          transition: transform .15s var(--ease-spring);
          cursor: grab;
        }

        .font-size-controller input[type="range"]::-webkit-slider-thumb:hover {
          transform: scale(1.25);
        }

        /* ───────────────────────────────────────────
   RESULTS GRID
─────────────────────────────────────────── */
        #results {
          width: 100%;
        }

        .grid ul {
          display: grid;
          margin: 0;
          padding: 0;
          gap: 9px;
          grid-template-columns: repeat(3, 1fr);
        }

        .stylishfont li {
          display: flex;
          align-items: stretch;
          position: relative;
          border-radius: var(--radius-lg);
          overflow: hidden;
          border: 1px solid var(--border-soft);
          background: white;
          transition: border-color .22s, box-shadow .22s, transform .22s var(--ease-spring);
        }

        .stylishfont li:hover {
          border-color: var(--gold-mid);
          transform: translateY(-2px);
        }

        li p {
          background: transparent;
          padding: 10px 0 20px 15px;
          margin: 0;
          color: var(--text-primary);
          cursor: pointer;
          user-select: none;
          text-align: left;
          width: 100%;
          position: relative;
          white-space: normal;
          word-break: break-word;
          font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
          overflow: hidden;
          border: none;
          transition: color .2s, background .2s;
          line-height: 1.55;
        }

        li p:hover,
        li p:focus {
          outline: none;
          color: var(--gold-dark);
          background: var(--mc-light);
        }

        li i {
          position: absolute;
          bottom: 2px;
          left: 16px;
          font-size: 12px;
          font-weight: 600;
          color: var(--text-muted);
          z-index: 2;
          display: flex;
          align-items: baseline;
          gap: 4px;
        }

        .stylishfont li button {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          flex-shrink: 0;
          font-size: 12px;
          font-weight: 700;
          padding: 8px 18px 8px 10px;
          gap: 4px;
          color: #555555;
          background: #f9f9f9;
          border: none;
          cursor: pointer;
          font-family: var(--ftfamily);
          letter-spacing: .05em;
          text-transform: uppercase;
          transition: filter .2s;
        }

        .stylishfont li button:hover {
          filter: brightness(1.08);
        }

        /* ───────────────────────────────────────────
   FLOATING BUTTONS
─────────────────────────────────────────── */
        .buttons {
          position: fixed;
          right: 10px;
          bottom: 70px;
          z-index: 99;
          display: flex;
          flex-direction: column-reverse;
          gap: 2px;
        }

        .buttons button {
          width: 50px;
          height: 50px;
          border-radius: var(--radius-md);
          background: white;
          border: 1px solid var(--border);
          box-shadow: var(--shadow-sm);
          display: inline-flex;
          align-items: center;
          justify-content: center;
          cursor: pointer;
          transition: all .2s var(--ease-spring);
          color: var(--text-secondary);
        }

        .buttons button:hover {
          border-color: var(--gold-mid);
          background: var(--mc-light);
          transform: scale(1.08);
          box-shadow: var(--shadow-gold);
          color: var(--gold);
        }

        #bulbBtn svg {
          stroke: var(--gold);
        }

        button,
        #othertools a {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          border: none;
          cursor: pointer;
          background: transparent;
          font-size: 16px;
          line-height: 1;
          touch-action: manipulation;
          -webkit-tap-highlight-color: transparent;
          font-family: var(--ftfamily);
        }

        button:hover {
          opacity: .88;
        }

        #othertools a {
          padding: 9px 16px;
          background: white;
          color: var(--text-secondary);
          border-radius: var(--radius-sm);
          font-size: .83rem;
          font-weight: 500;
          border: 1px solid var(--border);
          transition: all .2s;
          letter-spacing: .04em;
        }

        #othertools a:hover {
          background: var(--mc-light);
          color: var(--gold);
          border-color: var(--gold-mid);
        }

        svg {
          width: 20px;
          height: 20px;
          stroke: currentColor;
          stroke-width: 1.7;
          fill: none;
        }

        /* ───────────────────────────────────────────
   SIDE DRAWER
─────────────────────────────────────────── */
        .f-m {
          position: fixed;
          top: 0;
          right: 0;
          width: 310px;
          height: 100%;
          background: white;
          border-left: 1px solid var(--border);
          box-shadow: -8px 0 48px rgba(0, 0, 0, .12);
          z-index: 9999;
          display: none;
          overflow-y: auto;
          padding: 24px 20px;
        }

        .floatmenu h3 {
          color: var(--text-muted);
          font-size: .68rem;
          text-transform: uppercase;
          letter-spacing: .12em;
          margin-bottom: 8px;
        }

        .floatmenu a,
        .right-menu a {
          display: inline-block;
          align-items: center;
          padding: 10px 14px;
          border-radius: var(--radius-md);
          font-size: .88rem;
          font-weight: 500;
          color: var(--text-secondary);
          background: var(--surface-2);
          border: 1px solid var(--border-soft);
          margin-bottom: 6px;
          transition: all .2s;
          font-family: var(--ftfamily);
          scroll-snap-align: start;
          white-space: nowrap;
        }

        .floatmenu a:hover,
        .right-menu a:hover {
          color: #1a1714;
          background: var(--gold-grad);
          border-color: transparent;
        }

        .font-list {
          margin-bottom: 24px;
        }

        .font-list h2 {
          color: var(--text-secondary);
          margin-bottom: 10px;
          font-size: .95rem;
        }

        .info-text {
          white-space: normal;
          word-break: break-word;
        }

        .info-text img {
          max-width: 100%;
          border-radius: var(--radius-md);
        }

        .info-text ul {
          overflow: auto;
        }

        .fAr {
          display: none;
        }

        #fMN {
          overflow: auto;
        }

        #menu {
          color: var(--text-secondary);
        }

        .close-button {
          position: fixed;
          top: 10px;
          right: 10px;
          display: inline-flex;
          align-items: center;
          justify-content: center;
          width: 40px;
          height: 40px;
          font-size: 20px;
          border: 1px solid var(--border);
          border-radius: var(--radius-md);
          color: var(--text-secondary);
          background: white;
          box-shadow: var(--shadow-xs);
          cursor: pointer;
          transition: all .2s;
          z-index: 10000;
          padding: 0;
        }

        .close-button:hover {
          border-color: var(--gold-mid);
          color: var(--gold);
          background: var(--mc-light);
        }

        /* ───────────────────────────────────────────
   COPIED TOAST
─────────────────────────────────────────── */
        .copied {
          display: flex;
          flex-direction: column;
          gap: 4px;
          padding: 12px 14px;
          position: fixed;
          top: 12%;
          right: 0;
          z-index: 9999;
          width: 210px;
          background: var(--gold-grad);
          color: #1a1714;
          border-radius: var(--radius-lg) 0 0 var(--radius-lg);
          box-shadow: -4px 4px 28px rgba(196, 134, 42, .35);
          animation: slideIn .25s var(--ease-spring);
        }

        @keyframes slideIn {
          from {
            transform: translateX(100%);
            opacity: 0;
          }

          to {
            transform: translateX(0);
            opacity: 1;
          }
        }

        .copied textarea {
          background: transparent;
          border: none;
          color: rgba(26, 23, 20, .85);
          font-family: 'DM Sans', sans-serif;
          font-size: .83rem;
          resize: none;
          outline: none;
          padding: 6px;
        }

        .copied-btn {
          position: absolute;
          top: 8px;
          left: 10px;
          background: rgba(26, 23, 20, .15);
          color: #1a1714;
          border-radius: var(--radius-pill);
          padding: 4px 10px;
          font-size: .72rem;
          font-weight: 700;
          border: none;
          cursor: default;
        }

        /* ───────────────────────────────────────────
   LOADER
─────────────────────────────────────────── */
        .loader {
          width: 44px;
          height: 44px;
          border: 2px solid var(--surface-3);
          border-top-color: var(--gold);
          border-radius: 50%;
          animation: spin .75s linear infinite;
        }

        @keyframes spin {
          to {
            transform: rotate(360deg);
          }
        }

        .page-load-status,
        .aryapage {
          display: none;
          align-items: center;
          justify-content: center;
          width: 100%;
          margin: 24px 0;
        }

        .loadmore {
          text-align: center;
          padding: 16px 0;
        }

        /* ───────────────────────────────────────────
   POPUP
─────────────────────────────────────────── */
        .flourish-popup {
          position: fixed;
          inset: 0;
          background: rgba(250, 248, 244, .7);
          backdrop-filter: blur(10px);
          display: flex;
          align-items: center;
          justify-content: center;
          z-index: 999;
          animation: fadeIn .2s ease;
        }

        @keyframes fadeIn {
          from {
            opacity: 0;
          }

          to {
            opacity: 1;
          }
        }

        .flourish-popup.hidden {
          display: none;
        }

        .popup-box {
          background: white;
          width: 92%;
          max-width: 470px;
          max-height: 72vh;
          border-radius: var(--radius-lg);
          overflow: hidden;
          display: flex;
          flex-direction: column;
          box-shadow: var(--shadow-md), 0 0 0 1px rgba(196, 134, 42, .20), var(--shadow-gold-lg);
          animation: popIn .25s var(--ease-spring);
        }

        .popup-box::before {
          content: '';
          display: block;
          height: 2px;
          background: var(--gold-line);
          flex-shrink: 0;
        }

        @keyframes popIn {
          from {
            transform: scale(.94) translateY(10px);
            opacity: 0;
          }

          to {
            transform: scale(1) translateY(0);
            opacity: 1;
          }
        }

        .popup-header {
          display: flex;
          justify-content: space-between;
          align-items: center;
          background: var(--surface);
          border-bottom: 1px solid var(--border);
          padding: 4px 16px;
        }

        .popup-header h3 {
          font-family: var(--display);
          font-size: 1.1rem;
          font-weight: 700;
          font-style: italic;
          color: var(--gold-dark);
          padding: 12px 0;
          margin: 0;
          letter-spacing: .5px;
        }

        .popup-header button {
          background: none;
          border: none;
          color: var(--text-muted);
          cursor: pointer;
          font-size: 16px;
          padding: 15px;
          border-radius: var(--radius-sm);
          transition: all .2s;
        }

        .popup-header button:hover {
          background: var(--surface-2);
          color: var(--gold);
        }

        #flourishList {
          padding: 14px;
          overflow-y: auto;
          list-style: none;
          flex: 1;
        }

        #flourishList li {
          margin-bottom: 9px;
          position: relative;
          border-radius: var(--radius-lg);
          overflow: hidden;
          border: 1px solid var(--border-soft);
          background: var(--surface);
          transition: all .2s var(--ease-spring);
        }

        #flourishList li:hover {
          border-color: var(--gold-mid);
          transform: translateY(-1px);
          box-shadow: var(--shadow-sm), var(--shadow-gold);
        }

        #flourishList .count {
          display: flex;
          justify-content: flex-end;
          font-size: 10px;
          color: var(--text-muted);
          padding: 2px 8px;
          font-weight: 600;
        }

        #flourishList li p {
          font-size: 1rem !important;
          color: var(--text-primary);
          border-radius: 0;
          border: none;
          background: transparent;
          text-align: center;
          padding: 12px;
        }

        #flourishList li:hover p {
          color: var(--gold);
        }

        .flourishit {
          padding: 12px 16px;
          text-align: center;
          border-top: 1px solid var(--border);
          background: var(--surface);
        }

        .select-flourish {
          display: flex;
          align-items: center;
          gap: 10px;
          margin-bottom: 10px;
          flex-wrap: wrap;
          justify-content: center;
        }

        .select-flourish label {
          font-size: .83rem;
          font-weight: 600;
          color: var(--text-secondary);
        }

        #flourishSelect {
          appearance: none;
          padding: 9px 32px 9px 14px;
          font-size: .88rem;
          font-family: var(--ftfamily);
          border-radius: var(--radius-pill);
          border: 1px solid var(--border);
          background: white;
          color: var(--text-primary);
          cursor: pointer;
          outline: none;
          transition: border-color .2s, box-shadow .2s;
        }

        #flourishSelect:focus {
          border-color: var(--gold-mid);
          box-shadow: var(--shadow-glow);
        }

        #flourishRegenerate {
          padding: 12px 30px;
          border-radius: var(--radius-pill);
          background: var(--gold-grad);
          color: #1a1714;
          font-family: var(--display);
          font-weight: 700;
          font-style: italic;
          font-size: 1rem;
          border: none;
          cursor: pointer;
          box-shadow: 0 4px 18px rgba(196, 134, 42, .30);
          transition: transform .16s var(--ease-spring), box-shadow .2s, filter .2s;
        }

        #flourishRegenerate:hover {
          filter: brightness(1.08);
          transform: translateY(-2px);
          box-shadow: 0 8px 28px rgba(196, 134, 42, .45);
        }

        #flourishRegenerate:active {
          transform: scale(.96);
        }

        .ads {
          grid-column: 1 / -1;
          display: block;
          width: 100%;
          margin: 12px 0;
          border-radius: var(--radius-md);
          background: var(--surface-2);
          border: 1px dashed var(--border);
          overflow: hidden;
        }

        .material-symbols-outlined {
          font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
        }

        /* ───────────────────────────────────────────
   FOOTER
─────────────────────────────────────────── */
        footer {
          margin-top: 48px;
          background: var(--surface);
          border-top: 1px solid var(--border);
          padding: 22px 0;
          position: relative;
        }

        footer::before {
          content: '';
          display: block;
          height: 1px;
          width: 100%;
          background: var(--gold-line);
          position: absolute;
          top: 0;
          left: 0;
        }

        footer .inner {
          max-width: var(--maxw);
          margin: 0 auto;
          padding: 0 20px;
          display: flex;
          justify-content: space-between;
          align-items: center;
          gap: 12px;
          flex-wrap: wrap;
        }

        footer a {
          background: var(--gold-grad);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          background-clip: text;
          font-weight: 600;
          font-style: italic;
          font-family: var(--display);
          transition: filter .2s;
        }

        footer a:hover {
          filter: brightness(1.15);
        }

        /* ───────────────────────────────────────────
   INFO TEXT
─────────────────────────────────────────── */
        .info-text {
          font-family: var(--ftfamily);
          line-height: 1.75;
          color: var(--text-secondary);
          padding: 44px 28px;
          background: linear-gradient(180deg, var(--surface) 0%, rgba(244, 241, 235, .85) 100%);
          margin-top: 20px;
          border-radius: var(--radius-lg);
          border: 1px solid var(--border-soft);
          box-shadow: inset 0 1px 0 rgba(196, 134, 42, .08);
        }

        .info-text h1 {
          font-size: 2.4rem;
          background: var(--gold-grad);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          background-clip: text;
          text-align: center;
          margin-bottom: 30px;
          padding-bottom: 16px;
          border-bottom: 1px solid var(--border);
          font-style: italic;
          letter-spacing: .5px;
        }

        .info-text h2 {
          font-size: 1.65rem;
          color: var(--gold-dark);
          margin-top: 38px;
          margin-bottom: 16px;
          position: relative;
          font-style: italic;
        }

        .info-text h2::after {
          content: '';
          display: block;
          width: 48px;
          height: 1px;
          background: var(--gold-line);
          margin-top: 8px;
          border-radius: 2px;
        }

        .info-text h3 {
          font-size: 1.3rem;
          color: var(--gold);
          margin-top: 26px;
          margin-bottom: 10px;
          font-style: italic;
        }

        .info-text p {
          font-size: 1.02rem;
          margin-bottom: 20px;
          text-align: justify;
        }

        .info-text ul,
        .info-text ol {
          margin-bottom: 25px;
          padding-left: 25px;
        }

        .info-text li {
          font-size: 1.02rem;
          margin-bottom: 10px;
        }

        .info-text strong {
          color: var(--gold-dark);
        }

        .info-text code {
          background-color: var(--surface-3);
          color: var(--gold-dark);
          padding: 3px 8px;
          border-radius: 4px;
          font-family: 'DM Mono', monospace;
          font-size: 0.92rem;
          word-break: break-all;
          display: inline-block;
          margin: 2px;
          border: 1px solid var(--border-soft);
        }

        .info-text .example-box {
          background-color: var(--surface-2);
          border-left: 2px solid var(--gold-mid);
          border-radius: 4px;
          padding: 20px;
          margin: 26px 0;
          box-shadow: 0 2px 12px rgba(0, 0, 0, .06), inset 0 0 0 1px rgba(196, 134, 42, .06);
        }

        .info-text .example-title {
          font-weight: 600;
          font-size: 1.05rem;
          color: var(--gold);
          margin-top: 15px;
          margin-bottom: 8px;
          font-style: italic;
        }

        .info-text .example-title:first-child {
          margin-top: 0;
        }

        .info-text .example-box ol {
          list-style-type: decimal;
          margin-bottom: 15px;
        }

        .info-text .example-box li {
          font-size: 1.12rem;
          letter-spacing: 0.5px;
          color: var(--text-primary);
          background: white;
          padding: 8px 12px;
          margin-bottom: 6px;
          border-radius: 4px;
          border: 1px solid var(--border-soft);
        }

        /* ───────────────────────────────────────────
   RESPONSIVE
─────────────────────────────────────────── */
        @media (max-width: 940px) {
          .grid ul {
            grid-template-columns: repeat(2, 1fr);
            /* tablet */
          }
        }

        @media (max-width: 640px) {
          h1 {
            font-size: 1.3rem;
          }

          .container {
            padding: 0 12px;
            max-width: 100%;
          }

          .f-m {
            width: 100%;
          }

          .font-size-controller input[type="range"] {
            width: 160px;
          }

          .grid ul {
            grid-template-columns: 1fr;
            /* mobile */
          }
        }