:root {
    --mm-bg:#0c111b;
    --mm-card:#101827;
    --mm-card2:#0f1522;
    --mm-ink:#eff4ff;
    --mm-muted:#93a0b8;
    --mm-line:#22304a;
    --mm-pink:#ff4ea3;
    --mm-purple:#7b5cff;
    --mm-blue:#42a5ff;
    --mm-green:#37d39b;
    --mm-gold:#ffb84c;
    --shadow:0 26px 70px rgba(0,0,0,.35)
}
* { box-sizing:border-box }
html,body { max-width:100%; overflow-x:hidden }
body {
    margin:0;
    background:radial-gradient(circle at top left,rgba(123,92,255,.18),transparent 18%),radial-gradient(circle at top right,rgba(66,165,255,.16),transparent 20%),linear-gradient(180deg,#0c111b,#09101a 55%,#0c111b);
    color:var(--mm-ink);
    font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif
}
img { display:block; max-width:100% }
.mm-wrap,.mm-hero,.mm-section,.mm-cta { width:min(1230px,calc(100% - 36px)); margin:0 auto }
.mm-tag {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 13px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.09);
    backdrop-filter:blur(8px);
    font-size:11px;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase;
    color:#cfe2ff
}
.mm-head { text-align:center; max-width:860px; margin:0 auto 40px }
.mm-head h2 { margin:14px 0 10px; font-size:clamp(34px,5vw,58px); line-height:1.03; letter-spacing:-.05em }
.mm-head p { margin:0; color:var(--mm-muted); font-size:15px; line-height:1.85 }
.mm-hero { display:grid; grid-template-columns:1.04fr .96fr; gap:42px; align-items:center; padding:74px 0 68px }
.mm-copy h1 { margin:0; font-size:clamp(46px,6.2vw,82px); line-height:.94; letter-spacing:-.06em }
.mm-copy h1 span { display:block }
.mm-copy p { margin:20px 0 0; max-width:700px; color:#b9c4d9; font-size:16px; line-height:1.92 }
.mm-chip-row { display:flex; flex-wrap:wrap; gap:10px; margin:28px 0 }
.mm-chip-row span {
    padding:9px 13px;
    border-radius:999px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.08);
    font-size:12px;
    font-weight:850;
    color:#e8edff
}
.mm-actions { display:flex; flex-wrap:wrap; gap:12px }
.mm-actions a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 18px;
    border-radius:15px;
    text-decoration:none;
    font-size:13px;
    font-weight:900
}
.mm-actions .primary { background:linear-gradient(100deg,var(--mm-purple),var(--mm-pink)); color:#fff; box-shadow:0 18px 40px rgba(123,92,255,.28) }
.mm-actions .ghost { background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.09); color:#fff }
.mm-stage {
    position:relative;
    min-height:620px;
    padding:22px;
    border-radius:34px;
    border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.03));
    box-shadow:var(--shadow);
    overflow:hidden
}
.mm-stage:before {
    content:"";
    position:absolute;
    inset:0;
    background:radial-gradient(circle at 20% 18%,rgba(255,78,163,.18),transparent 18%),radial-gradient(circle at 84% 16%,rgba(66,165,255,.18),transparent 18%),radial-gradient(circle at 52% 88%,rgba(55,211,155,.13),transparent 18%)
}
.mm-mock { position:absolute; overflow:hidden; border-radius:28px; background:#111; border:1px solid rgba(255,255,255,.08); box-shadow:0 24px 50px rgba(0,0,0,.34) }
.mm-mock img { width:100%; height:100%; object-fit:cover }
.mm-mock.a { left:20px; top:26px; width:208px; height:208px; transform:rotate(-6deg) }
.mm-mock.b { right:24px; top:38px; width:214px; height:214px; transform:rotate(8deg) }
.mm-mock.c { left:110px; bottom:104px; width:282px; height:282px; transform:rotate(-2deg); z-index:2 }
.mm-mock.d { right:44px; bottom:36px; width:180px; height:180px; transform:rotate(7deg) }
.mm-float {
    position:absolute;
    padding:14px 15px;
    border-radius:18px;
    background:rgba(13,18,29,.84);
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 16px 32px rgba(0,0,0,.24);
    backdrop-filter:blur(14px)
}
.mm-float strong { display:block; font-size:14px }
.mm-float span { display:block; margin-top:5px; color:#b7c2d9; font-size:12px; line-height:1.55 }
.mm-float.one { left:20px; bottom:18px; max-width:240px }
.mm-float.two { right:24px; top:392px; max-width:220px }
.mm-section { padding:92px 0 }
.mm-builder {
    padding:28px;
    border-radius:32px;
    border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.03));
    box-shadow:var(--shadow)
}
.mm-builder-grid { display:grid; grid-template-columns:380px 1fr; gap:26px }
.mm-upload {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:325px;
    border:1.5px dashed rgba(148,163,184,.38);
    border-radius:28px;
    background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
    overflow:hidden;
    cursor:pointer;
    transition:.24s
}
.mm-upload:hover,.mm-upload.drag { transform:translateY(-3px); border-color:#8f7bff; box-shadow:0 18px 36px rgba(123,92,255,.16) }
.mm-upload input { display:none }
.mm-upload-empty { padding:24px; text-align:center }
.mm-upload-icon {
    display:grid;
    place-items:center;
    width:76px;
    height:76px;
    margin:0 auto 14px;
    border-radius:24px;
    background:rgba(255,255,255,.08);
    box-shadow:0 14px 35px rgba(0,0,0,.18)
}
.mm-upload-empty strong { font-size:19px }
.mm-upload-empty span { display:block; margin-top:7px; color:#d5ccff; font-size:12px; font-weight:900 }
.mm-upload-empty small { display:block; max-width:260px; margin:12px auto 0; color:#97a3bc; font-size:11px; line-height:1.65 }
.mm-upload-preview { position:absolute; inset:0; padding:12px }
.mm-upload-preview[hidden] { display:none }
.mm-upload-preview img { width:100%; height:100%; object-fit:contain; border-radius:18px; background:rgba(255,255,255,.02) }
.mm-change {
    position:absolute;
    right:14px;
    bottom:14px;
    min-height:38px;
    padding:0 14px;
    border:0;
    border-radius:999px;
    background:rgba(5,8,15,.82);
    color:#fff;
    font-size:11px;
    font-weight:800;
    cursor:pointer
}
.mm-upload-tip { margin-top:16px; padding:16px 18px; border-radius:18px; background:rgba(255,255,255,.04) }
.mm-upload-tip b { font-size:12px }
.mm-upload-tip ul { margin:10px 0 0; padding-left:18px; color:#99a7c1; font-size:12px; line-height:1.8 }
.mm-builder-main h3 { margin:0; font-size:32px; letter-spacing:-.03em }
.mm-builder-main p { margin:10px 0 0; color:var(--mm-muted); font-size:14px; line-height:1.86 }
.mm-field { margin-top:18px }
.mm-field label { display:block; margin-bottom:10px; font-size:12px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; color:#cfe2ff }
.mm-chips { display:flex; flex-wrap:wrap; gap:8px }
.mm-chips button,.mm-filter-tabs button {
    min-height:40px;
    padding:0 13px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:999px;
    background:rgba(255,255,255,.04);
    color:#d3ddf2;
    font-size:12px;
    font-weight:850;
    cursor:pointer
}
.mm-chips button.active,.mm-filter-tabs button.active { border-color:#9079ff; background:rgba(123,92,255,.18); color:#fff; box-shadow:0 0 0 2px rgba(123,92,255,.08) }
.mm-select-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px }
.mm-select-grid label { display:flex; flex-direction:column; gap:8px; font-size:12px; font-weight:800 }
.mm-select-grid select,.mm-builder textarea { width:100%; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.04); color:#fff; font:inherit; outline:none }
.mm-select-grid select { min-height:46px; padding:0 12px; border-radius:12px }
.mm-builder textarea { min-height:140px; padding:15px; border-radius:18px; resize:vertical; line-height:1.7 }
.mm-select-grid select:focus,.mm-builder textarea:focus { border-color:#8f7bff; box-shadow:0 0 0 3px rgba(123,92,255,.1) }
.mm-actions-row { display:flex; flex-wrap:wrap; gap:12px; margin-top:18px }
.mm-actions-row button,.mm-actions-row a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 18px;
    border-radius:15px;
    font-size:13px;
    font-weight:900;
    text-decoration:none
}
.mm-actions-row button { border:0; background:linear-gradient(100deg,var(--mm-purple),var(--mm-pink)); color:#fff; cursor:pointer; box-shadow:0 16px 36px rgba(123,92,255,.22) }
.mm-actions-row a { border:1px solid rgba(255,255,255,.09); background:rgba(255,255,255,.04); color:#fff }
.mm-helper { margin-top:12px; color:#93a0b8; font-size:12px; line-height:1.75 }
.mm-prompt-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px }
.mm-prompt-card { padding:16px; border-radius:18px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07); cursor:pointer; transition:.2s }
.mm-prompt-card:hover { transform:translateY(-2px); border-color:rgba(123,92,255,.44); box-shadow:0 14px 30px rgba(0,0,0,.14) }
.mm-prompt-card strong { display:block; font-size:14px }
.mm-prompt-card span { display:block; margin-top:6px; color:#aab6cc; font-size:12px; line-height:1.7 }
.mm-filter-wrap { display:grid; gap:16px }
.mm-filter-tabs { display:flex; justify-content:center; flex-wrap:wrap; gap:10px }
.mm-show-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px }
.mm-show-card,.mm-more-card,.mm-adv,.mm-quote {
    overflow:hidden;
    border-radius:24px;
    border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.03));
    box-shadow:0 12px 28px rgba(0,0,0,.16)
}
.mm-show-media { position:relative; aspect-ratio:1; background:#0b1018 }
.mm-show-media img { width:100%; height:100%; object-fit:cover }
.mm-show-copy { padding:14px }
.mm-show-copy strong { display:block; font-size:12px; color:#dfe8ff; line-height:1.7 }
.mm-more-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px }
.mm-more-media { aspect-ratio:5/6; background:#0b1018 }
.mm-more-media img { width:100%; height:100%; object-fit:cover }
.mm-more-copy { padding:16px }
.mm-more-copy h3,.mm-adv h3 { margin:0 0 8px; font-size:20px; letter-spacing:-.02em }
.mm-more-copy p,.mm-adv p,.mm-quote p { margin:0; color:#aeb8ca; font-size:14px; line-height:1.84 }
.mm-adv-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px }
.mm-adv { padding:22px }
.mm-quote-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px }
.mm-quote { padding:24px }
.mm-quote strong { display:block; margin-top:14px; font-size:13px; color:#fff }
.mm-faq { max-width:980px; margin:0 auto; border-top:1px solid rgba(255,255,255,.08) }
.mm-faq details { border-bottom:1px solid rgba(255,255,255,.08) }
.mm-faq summary { display:flex; align-items:center; justify-content:space-between; padding:22px 0; list-style:none; cursor:pointer; font-weight:900 }
.mm-faq summary::-webkit-details-marker { display:none }
.mm-faq p { margin:-4px 0 22px; color:#aeb8ca; font-size:14px; line-height:1.82 }
.mm-cta { padding:88px 0 106px; text-align:center }
.mm-cta-box { padding:50px 24px; border-radius:34px; background:linear-gradient(130deg,rgba(123,92,255,.18),rgba(255,78,163,.12)); border:1px solid rgba(255,255,255,.08) }
.mm-cta-box h2 { margin:14px 0 12px; font-size:clamp(36px,5vw,64px); letter-spacing:-.05em }
.mm-cta-box p { max-width:800px; margin:0 auto 26px; color:#bcc7dc; line-height:1.85; font-size:15px }
.mm-cta-box a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 22px;
    border-radius:15px;
    background:linear-gradient(100deg,var(--mm-purple),var(--mm-pink));
    color:#fff;
    text-decoration:none;
    font-size:14px;
    font-weight:900;
    box-shadow:0 16px 38px rgba(123,92,255,.24)
}
@media(max-width:1100px) {
    .mm-hero { grid-template-columns:1fr }
    .mm-copy { text-align:center }
    .mm-copy p { margin-left:auto; margin-right:auto }
    .mm-chip-row,.mm-actions { justify-content:center }
    .mm-stage { max-width:760px; margin:auto }
    .mm-builder-grid { grid-template-columns:1fr }
    .mm-select-grid { grid-template-columns:repeat(2,1fr) }
    .mm-show-grid,.mm-more-grid { grid-template-columns:repeat(2,1fr) }
    .mm-adv-grid,.mm-quote-grid { grid-template-columns:repeat(2,1fr) }
}
@media(max-width:680px) {
    .mm-wrap,.mm-hero,.mm-section,.mm-cta { width:calc(100% - 20px) }
    .mm-hero { padding:46px 0 52px; gap:30px }
    .mm-copy h1 { font-size:44px }
    .mm-copy p { font-size:14px }
    .mm-stage { min-height:500px; padding:14px; border-radius:24px }
    .mm-mock.a { left:10px; top:16px; width:138px; height:138px }
    .mm-mock.b { right:12px; top:36px; width:144px; height:144px }
    .mm-mock.c { left:70px; bottom:90px; width:170px; height:170px }
    .mm-mock.d { right:16px; bottom:44px; width:116px; height:116px }
    .mm-float { padding:10px 11px; border-radius:14px }
    .mm-float strong { font-size:13px }
    .mm-float span { font-size:11px }
    .mm-float.one { left:10px; bottom:12px; right:140px; max-width:none }
    .mm-float.two { top:auto; right:10px; bottom:14px; width:126px; max-width:none }
    .mm-builder { padding:14px; border-radius:22px }
    .mm-upload { min-height:240px }
    .mm-select-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px }
    .mm-select-grid label span { font-size:9px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
    .mm-select-grid select { padding:0 6px; font-size:10px }
    .mm-prompt-grid,.mm-show-grid,.mm-more-grid,.mm-adv-grid,.mm-quote-grid { grid-template-columns:1fr }
    .mm-head h2,.mm-cta-box h2 { font-size:34px }
}

/* T67_MOBILE_HERO_FIX_V3 */
@media (max-width:680px){
  .mm-stage{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;min-height:0!important;height:auto!important;padding:12px!important;overflow:hidden!important;isolation:isolate}
  .mm-stage:before{z-index:0!important;pointer-events:none}
  .mm-mock,.mm-mock.a,.mm-mock.b,.mm-mock.c,.mm-mock.d{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%!important;height:auto!important;min-width:0!important;aspect-ratio:1/1!important;transform:none!important;border-radius:16px!important;z-index:1!important}
  .mm-mock img{display:block!important;width:100%!important;height:100%!important;min-width:0!important;object-fit:cover!important}
  .mm-float{display:none!important}
}


/* ==== Meme direct workbench refresh ==== */
:root {
  --mm-page-bg:#f6f2ec;
  --mm-surface:#ffffff;
  --mm-surface-2:#fbf8f4;
  --mm-text:#161310;
  --mm-soft:#6a625a;
  --mm-border:#dfd4c7;
  --mm-accent:#111111;
  --mm-accent-2:#6d4aff;
  --mm-accent-3:#ff5ca8;
  --mm-overlay:rgba(16,14,12,.78);
}
html[data-theme="dark"] {
  --mm-page-bg:#0d1016;
  --mm-surface:#141922;
  --mm-surface-2:#191f2a;
  --mm-text:#f4f6fb;
  --mm-soft:#a7b0bf;
  --mm-border:#2a3240;
  --mm-accent:#ffffff;
  --mm-accent-2:#8b74ff;
  --mm-accent-3:#ff5da8;
  --mm-overlay:rgba(7,10,15,.82);
}
body {
  background:
    radial-gradient(circle at top left, rgba(123,92,255,.10), transparent 22%),
    radial-gradient(circle at top right, rgba(255,92,168,.08), transparent 22%),
    linear-gradient(180deg, var(--mm-page-bg), var(--mm-page-bg));
  color:var(--mm-text);
}
.mm-head p,.mm-copy p,.mm-helper,.mm-more-copy p,.mm-adv p,.mm-quote p,.mm-faq p { color:var(--mm-soft); }
.mm-tag,
.mm-chip-row span,
.mm-actions .ghost,
.mm-show-card,
.mm-more-card,
.mm-adv,
.mm-quote,
.mm-cta-box,
.mm-stage,
.mm-builder,
.mm-upload-tip,
.mm-prompt-card,
.mm-faq,
.mm-faq details,
.mm-float {
  background:var(--mm-surface);
  color:var(--mm-text);
  border-color:var(--mm-border);
  box-shadow:0 14px 36px rgba(0,0,0,.06);
}
html[data-theme="dark"] .mm-tag,
html[data-theme="dark"] .mm-chip-row span,
html[data-theme="dark"] .mm-actions .ghost,
html[data-theme="dark"] .mm-show-card,
html[data-theme="dark"] .mm-more-card,
html[data-theme="dark"] .mm-adv,
html[data-theme="dark"] .mm-quote,
html[data-theme="dark"] .mm-cta-box,
html[data-theme="dark"] .mm-stage,
html[data-theme="dark"] .mm-builder,
html[data-theme="dark"] .mm-upload-tip,
html[data-theme="dark"] .mm-prompt-card,
html[data-theme="dark"] .mm-faq,
html[data-theme="dark"] .mm-faq details,
html[data-theme="dark"] .mm-float {
  box-shadow:0 18px 40px rgba(0,0,0,.28);
}
.mm-tag{ color:var(--mm-text); background:color-mix(in srgb, var(--mm-surface) 92%, var(--mm-accent-2) 8%); }
.mm-chip-row span{ color:var(--mm-text); }
.mm-actions .ghost{ color:var(--mm-text); }
.mm-actions .primary,
.mm-actions-row button,
.mm-download-all{ background:linear-gradient(100deg,var(--mm-accent-2),var(--mm-accent-3)); color:#fff; }
.mm-stage{ min-height:620px; }
.mm-builder.mm-workbench{ padding:22px; }
.mm-builder-grid--v2{ grid-template-columns:340px minmax(0,1fr); gap:22px; align-items:start; }
.mm-upload-stack{ display:grid; gap:14px; }
.mm-upload-panel{ display:grid; gap:0; }
.mm-upload{ min-height:340px; border-radius:26px; border:1.5px dashed var(--mm-border); background:var(--mm-surface-2); }
.mm-upload:hover,.mm-upload.drag{ border-color:var(--mm-accent-2); background:color-mix(in srgb, var(--mm-surface-2) 92%, var(--mm-accent-2) 8%); box-shadow:0 16px 30px rgba(123,92,255,.12); }
.mm-upload-empty span{ color:var(--mm-soft); font-weight:800; }
.mm-upload-empty small{ color:var(--mm-soft); }
.mm-upload-icon{ background:color-mix(in srgb, var(--mm-surface) 88%, var(--mm-accent-2) 12%); color:var(--mm-accent-2); box-shadow:none; }
.mm-upload-preview{ padding:12px; }
.mm-upload-preview img{ width:100%; height:100%; object-fit:contain; border-radius:18px; background:transparent; }
.mm-clear-btn{
  position:absolute; top:14px; right:14px; width:34px; height:34px; border:0; border-radius:999px; background:#fff; color:#111; font-size:13px; font-weight:900; cursor:pointer; box-shadow:0 10px 18px rgba(0,0,0,.18); }
html[data-theme="dark"] .mm-clear-btn{ background:#fff; color:#111; }
.mm-ref-toggle{
  display:inline-flex; align-items:center; justify-content:center; width:max-content; min-height:38px; padding:0 14px; border-radius:999px; border:1px solid var(--mm-border); background:transparent; color:var(--mm-text); font-size:12px; font-weight:800; cursor:pointer; }
.mm-ref-toggle:hover{ border-color:var(--mm-accent-2); color:var(--mm-accent-2); }
.mm-builder-main--v2{ display:grid; gap:18px; }
.mm-builder-main--v2 h3,.mm-builder-main--v2>p{ display:none; }
.mm-field{ margin-top:0; }
.mm-field label{ color:var(--mm-text); }
.mm-mini-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.mm-mini-grid label{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.mm-mini-grid label span{ font-size:11px; letter-spacing:.07em; text-transform:uppercase; color:var(--mm-soft); font-weight:900; }
.mm-mini-grid select,
.mm-builder-main--v2 textarea{
  width:100%;
  border:1px solid var(--mm-border);
  background:var(--mm-surface);
  color:var(--mm-text);
  outline:none;
}
.mm-mini-grid select{ min-height:38px; padding:0 11px; border-radius:12px; font-size:13px; }
.mm-builder-main--v2 textarea{ min-height:156px; padding:15px; border-radius:18px; resize:vertical; line-height:1.7; }
.mm-mini-grid select:focus,.mm-builder-main--v2 textarea:focus{ border-color:var(--mm-accent-2); box-shadow:0 0 0 3px rgba(123,92,255,.12); }
.mm-inline-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
.mm-inline-head label{ margin:0; }
.mm-sample{
  display:inline-flex; align-items:center; justify-content:center; min-height:32px; padding:0 12px; border-radius:999px; border:1px solid var(--mm-border); background:transparent; color:var(--mm-text); font-size:12px; font-weight:800; cursor:pointer; }
.mm-sample:hover{ border-color:var(--mm-accent-2); color:var(--mm-accent-2); }
.mm-actions-row--compact{ align-items:center; gap:14px; }
.mm-actions-row--compact button{ min-height:50px; min-width:240px; border-radius:16px; }
.mm-credit-box{ font-size:13px; line-height:1.55; color:var(--mm-text); font-weight:800; }
.mm-credit-box a{ color:var(--mm-accent-2); text-decoration:none; }
.mm-helper#mmStatus{ margin-top:-4px; }
.mm-results{ margin-top:24px; padding-top:24px; border-top:1px solid var(--mm-border); }
.mm-results-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:18px; }
.mm-results-head h3{ margin:12px 0 6px; font-size:28px; letter-spacing:-.03em; }
.mm-results-head p{ margin:0; color:var(--mm-soft); font-size:14px; }
.mm-results-actions{ display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px; }
.mm-download-all,.mm-clear-results{ min-height:40px; padding:0 15px; border-radius:999px; border:1px solid var(--mm-border); font-size:12px; font-weight:900; cursor:pointer; }
.mm-clear-results{ background:transparent; color:var(--mm-text); }
.mm-results-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.mm-results-grid[data-count="1"]{ grid-template-columns:minmax(0,420px); }
.mm-results-grid[data-count="2"]{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.mm-result-card{ border-radius:24px; overflow:hidden; background:var(--mm-surface); border:1px solid var(--mm-border); box-shadow:0 12px 26px rgba(0,0,0,.08); }
.mm-result-stage{ position:relative; min-height:300px; max-height:500px; aspect-ratio:1/1; background:var(--mm-surface-2); }
.mm-result-stage img{ width:100%; height:100%; object-fit:cover; display:block; }
.mm-result-overlay,
.mm-result-fail{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; padding:18px; text-align:center; background:var(--mm-overlay); color:#fff; }
.mm-result-fail[hidden],.mm-result-overlay[hidden]{ display:none !important; }
.mm-result-overlay strong,.mm-result-fail strong{ display:block; font-size:20px; }
.mm-result-overlay small,.mm-result-fail small{ display:block; margin-top:8px; font-size:13px; color:rgba(255,255,255,.78); line-height:1.6; }
.mm-spinner{ width:42px; height:42px; display:inline-block; border-radius:999px; border:3px solid rgba(255,255,255,.24); border-top-color:#fff; animation:mm-spin .85s linear infinite; margin-bottom:12px; }
@keyframes mm-spin{ to{ transform:rotate(360deg); } }
.mm-result-download{ position:absolute; right:14px; bottom:14px; width:44px; height:44px; border:0; border-radius:999px; background:#fff; color:#121212; font-size:20px; font-weight:900; cursor:pointer; box-shadow:0 12px 24px rgba(0,0,0,.18); }
.mm-result-meta{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; }
.mm-result-meta strong{ font-size:13px; }
.mm-result-meta span{ font-size:12px; color:var(--mm-soft); }
#mmShowGrid .mm-show-copy a{ color:var(--mm-text) !important; border-color:var(--mm-border) !important; background:var(--mm-surface) !important; }
@media (max-width:1100px){
  .mm-builder-grid--v2{ grid-template-columns:1fr; }
  .mm-results-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px){
  .mm-builder.mm-workbench{ padding:18px; border-radius:24px; }
  .mm-mini-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mm-actions-row--compact{ flex-direction:column; align-items:stretch; }
  .mm-actions-row--compact button{ width:100%; min-width:0; }
  .mm-results-head{ flex-direction:column; align-items:flex-start; }
  .mm-results-actions{ justify-content:flex-start; }
  .mm-results-grid{ grid-template-columns:1fr; }
}


/* ==== Meme workbench compact/mobile refinement v3 ==== */
.mm-upload{min-height:250px}
.mm-upload-stack:has(.mm-ref-panel:not([hidden])) .mm-upload{min-height:190px}
.mm-show-copy strong{color:var(--mm-text)!important}
.mm-show-copy{color:var(--mm-text)}
html:not([data-theme="dark"]) .mm-show-copy strong{color:#201b17!important}
html:not([data-theme="dark"]) .mm-show-copy{background:#fff;color:#201b17}
html:not([data-theme="dark"]) .mm-show-card{background:#fff;border-color:#d9cec1}
@media (max-width:760px){
  .mm-upload-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
  .mm-upload-stack:not(:has(.mm-ref-panel:not([hidden]))) .mm-upload-panel:first-child{grid-column:1/-1}
  .mm-ref-toggle{grid-column:1/-1}
  .mm-upload-stack:has(.mm-ref-panel:not([hidden])) .mm-ref-toggle{display:none}
  .mm-upload-panel{min-width:0}
  .mm-upload{min-height:180px;border-radius:18px}
  .mm-upload-stack:has(.mm-ref-panel:not([hidden])) .mm-upload{min-height:180px}
  .mm-upload-empty{padding:14px 9px}
  .mm-upload-icon{width:48px;height:48px;margin-bottom:9px;border-radius:16px}
  .mm-upload-icon svg{width:26px;height:26px}
  .mm-upload-empty strong{font-size:14px;line-height:1.25}
  .mm-upload-empty span{font-size:10px;line-height:1.35}
  .mm-upload-empty small{display:none}
  .mm-upload-preview{padding:7px}
  .mm-upload-preview img{border-radius:13px}
  .mm-clear-btn{top:8px;right:8px;width:30px;height:30px}
  .mm-mini-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .mm-mini-grid label span{font-size:9px;letter-spacing:.04em}
  .mm-mini-grid select{min-height:36px;padding:0 7px;font-size:11px;border-radius:9px}
}

/* Tool67 state visibility hardening */
.mm-result-overlay[hidden],.mm-result-fail[hidden],.mm-result-download[hidden],.mm-result-stage img[hidden]{display:none!important;}
