.meme{--studio-rail:362px;--meme-sticky-top:calc(var(--header-h) + 78px);--meme-preview-height:clamp(190px, calc(100dvh - var(--meme-sticky-top) - 210px), 520px)}[data-tool=meme],[data-tool=meme] .winbar__name,.meme :is(h2,h3){color:var(--text)}.meme__split{align-items:start}.meme__stage{top:var(--meme-sticky-top);z-index:3;background:var(--surface);align-self:start;min-width:0;padding:18px 22px 12px;position:sticky}.meme__stagebar,.meme__previewfoot,.meme__starterhead{justify-content:space-between;align-items:center;gap:12px;display:flex}.meme__stagebar{margin-bottom:12px}.meme__browse{min-height:34px;color:var(--text);background:var(--surface);border:1px solid var(--border-input);border-radius:var(--r-sm);cursor:pointer;font:600 .6875rem var(--font);align-items:center;gap:7px;padding:7px 10px;display:flex}.meme__browse:hover{background:var(--bg-subtle)}.meme__librarytotal{border-radius:var(--r-sm);background:var(--surface-inset);font:.5625rem var(--font-mono);color:var(--text-muted);padding:2px 5px}.meme__stagebar .studio-eyebrow{align-items:center;gap:7px;display:flex}.meme__live{background:var(--success);width:5px;height:5px;box-shadow:0 0 0 3px var(--success-soft);border-radius:50%}.meme__private{color:var(--text-muted);font:500 .6875rem var(--font-mono);align-items:center;gap:6px;display:flex}.meme__history{align-items:center;gap:5px;display:flex}.meme__history button{border:1px solid var(--border-input);border-radius:var(--r-sm);background:var(--surface);width:34px;height:32px;color:var(--text);cursor:pointer;font-size:21px;line-height:1}.meme__history button:hover:not(:disabled){background:var(--bg-subtle)}.meme__history button:disabled{opacity:.35;cursor:default}.meme__history>span{border-left:1px solid var(--border);height:16px;margin-inline:4px}.meme__mat{min-height:min(430px, var(--meme-preview-height));border:1px solid var(--border);border-radius:var(--r-md);background-color:var(--surface-inset);background-image:radial-gradient(var(--border) .7px, transparent .7px);background-size:10px 10px;place-items:center;padding:16px;display:grid}.meme__mat>.filedrop{width:100%;min-height:min(340px, var(--meme-preview-height))}.meme__preview{width:min(100%, calc(var(--meme-preview-height) * var(--meme-ratio,1)));box-shadow:var(--shadow-md);flex:none;position:relative}.meme__preview canvas{width:100%;height:auto;display:block}.meme__targets{z-index:2;pointer-events:none;position:absolute;inset:0}.meme__photo-targets{z-index:1;pointer-events:none;position:absolute;inset:0}.meme__preview[data-selection=photo] .meme__photo-targets{z-index:3}.meme__photohit{pointer-events:none;position:absolute}.meme__photomove{cursor:move;touch-action:none;pointer-events:auto;background:0 0;border:1px solid #0000;border-radius:1px;width:100%;min-width:12px;height:100%;min-height:12px;padding:0;position:absolute;inset:0}.meme__photomove:hover,.meme__photohit[data-selected=true] .meme__photomove{border-color:var(--on-accent);outline:1px solid var(--accent);outline-offset:1px}.meme__photocorner{pointer-events:auto;touch-action:none;background:0 0;border:0;width:28px;height:28px;padding:9px;position:absolute}.meme__photocorner:after{content:"";border:1px solid var(--accent);background:var(--on-accent);width:10px;height:10px;box-shadow:var(--shadow-sm);border-radius:2px;display:block}.meme__photocorner[data-photo-resize=nw]{cursor:nwse-resize;top:-14px;left:-14px}.meme__photocorner[data-photo-resize=ne]{cursor:nesw-resize;top:-14px;right:-14px}.meme__photocorner[data-photo-resize=sw]{cursor:nesw-resize;bottom:-14px;left:-14px}.meme__photocorner[data-photo-resize=se]{cursor:nwse-resize;bottom:-14px;right:-14px}.meme__photomove:focus-visible,.meme__photocorner:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.meme__hit{pointer-events:auto;cursor:move;touch-action:none;background:0 0;border:1px solid #0000;border-radius:2px;min-height:22px;padding:0;display:block;position:absolute}.meme__hit:hover,.meme__hit[aria-pressed=true]{border-color:var(--on-accent);outline:1px solid var(--accent);outline-offset:1px}.meme__hit[aria-pressed=true]:after{content:"";background:var(--on-accent);border:1px solid var(--accent);width:6px;height:6px;position:absolute;bottom:-4px;right:-4px}.meme__hit[data-band=true]{cursor:text;touch-action:pan-y}.meme__hit:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.meme__previewfoot{color:var(--text-subtle);font:.625rem/1.5 var(--font-mono);padding:10px 0 12px}.meme__previewfoot>:last-child{text-align:right}.meme__source{color:var(--text-subtle);flex-wrap:wrap;justify-content:space-between;gap:5px 14px;margin:0 0 10px;font-size:.625rem;display:flex}.meme__source a{color:var(--text-muted)}.meme__starters{border-top:1px solid var(--border)}.meme__starters>summary{cursor:pointer;font:500 .6875rem var(--font);color:var(--text-muted);justify-content:space-between;align-items:center;padding:10px 0 0;list-style:none;display:flex}.meme__starters>summary::-webkit-details-marker{display:none}.meme__starters[open]>summary>span{transform:rotate(45deg)}.meme__templates{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px;display:grid}.meme__templates>button{text-align:left;border:1px solid var(--border-input);border-radius:var(--r-sm);background:var(--surface);min-width:0;color:var(--text);cursor:pointer;flex-direction:column;align-items:stretch;padding:0;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.meme__templates>button:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.meme__templates>button[aria-pressed=true]{box-shadow:0 0 0 1px var(--text);border-color:var(--text)}.meme__templates img,.meme__blankart{object-fit:cover;object-position:50% 44%;background:var(--bg-subtle);width:100%;height:48px}.meme__templates img[src$=\.svg]{object-fit:contain}.meme__blankart{font:500 42px var(--font-display);color:var(--text-subtle);place-items:center;display:grid}.meme__templates>button>span:not(.meme__blankart,.meme__templatearrow){gap:3px;padding:11px 10px;display:grid}.meme__templates strong{font-size:.75rem;font-weight:600}.meme__templates small{color:var(--text-subtle);font-size:.625rem}.meme__templates .meme__templatearrow{color:var(--text-subtle);font-size:12px;position:absolute;bottom:26px;right:8px}.meme__message{min-height:1.5em;color:var(--text-muted);margin:12px 0 0;font-size:.75rem}.meme__message[data-error=true],.meme__fit[data-warning=true]{color:var(--danger)}.meme__rail{align-self:stretch;min-height:610px}.meme__nav{border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:12px 14px;display:grid}.meme__nav button{border-radius:var(--r-sm);color:var(--text-muted);font:600 .6875rem var(--font);cursor:pointer;background:0 0;border:1px solid #0000;justify-items:center;gap:5px;padding:10px 3px;display:grid}.meme__nav button>span{font:.5625rem var(--font-mono);color:var(--text-subtle)}.meme__nav button[aria-selected=true]{color:var(--text);border-color:var(--border-input);background:var(--bg-subtle);box-shadow:var(--shadow-sm)}.meme__nav button:hover{background:var(--bg-subtle)}.meme__selected{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:11px 22px;display:flex}.meme__selected>label{font:.5625rem var(--font-mono);text-transform:uppercase;letter-spacing:.04em;color:var(--text-subtle);flex:none}.meme__selected>select{flex:1;min-width:0;max-width:100%;font-size:.6875rem}.meme__rail>.studio-section{border-top:0}.meme__railfoot{border-top:1px solid var(--border);font:.625rem/1.5 var(--font);color:var(--text-subtle);align-items:center;gap:8px;margin-top:auto;padding:16px 22px;display:flex}.meme__result{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:12px;padding:19px 22px;display:flex}.meme__resultmark{border:1px solid var(--border);background:var(--bg-subtle);width:33px;height:33px;color:var(--text-muted);border-radius:50%;place-items:center;font-size:20px;display:grid}.meme__result>div{gap:3px;display:grid}.meme__result strong{font:600 .8125rem var(--font-display)}.meme__result>div>span{font:.625rem/1.5 var(--font-mono);color:var(--text-subtle)}.meme__captions{gap:10px;display:grid}.meme__caption{border:1px solid var(--border-input);border-radius:var(--r-sm);background:var(--surface);overflow:clip}.meme__caption[data-selected=true]{border-color:var(--text);box-shadow:0 0 0 1px var(--text)}.meme__captionhead{justify-content:space-between;align-items:center;gap:8px;padding:9px 11px 0;display:flex}.meme__captionhead label{min-width:0;color:var(--text-muted);font:600 .625rem/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:.04em;flex:1}.meme__captionhead button{color:var(--text-subtle);cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:15px}.meme__captionhead .meme__captionstyle{color:var(--text-muted);white-space:nowrap;flex:none;font-size:.625rem}.meme__caption textarea{resize:vertical;outline-offset:-3px;width:100%;min-height:61px;color:var(--text);font:500 .875rem/1.5 var(--font);background:0 0;border:0;border-radius:0;padding:8px 11px 12px;display:block}.meme__addcaption{width:100%;color:var(--text-muted);border:1px dashed var(--border-input);border-radius:var(--r-sm);font:500 .75rem var(--font);cursor:pointer;background:0 0;margin-top:11px;padding:10px}.meme__addcaption:disabled{opacity:.45;cursor:default}.meme__photo-intake .filedrop{flex-wrap:wrap;gap:8px;padding:12px}.meme__photo-intake .filedrop__art,.meme__photo-intake .filedrop__meta{display:none}.meme__photo-intake .filedrop__text{min-width:120px}.meme__photo-intake .filedrop__title{font-size:.75rem}.meme__photo-intake .filedrop__hint{font-size:.625rem}.meme__photo-intake .filedrop__pick{font-size:.6875rem}.meme__photolist{gap:7px;margin-top:12px;display:grid}.meme__photolist:empty{margin-top:0}.meme__photolist .filechip{width:100%}.meme__photochip{border:1px solid var(--border-input);border-radius:var(--r-sm);background:var(--surface);width:100%;min-width:0;color:var(--text);text-align:left;cursor:pointer;align-items:center;gap:10px;padding:8px 34px 8px 8px;display:flex}.meme__photochip[aria-pressed=true]{border-color:var(--text);box-shadow:inset 0 0 0 1px var(--text)}.meme__photochip img{object-fit:contain;border-radius:var(--r-sm);background:var(--surface-inset);flex:none;width:38px;height:38px}.meme__photochip>span{gap:4px;min-width:0;display:grid}.meme__photochip strong{text-overflow:ellipsis;white-space:nowrap;font:600 .6875rem var(--font);overflow:hidden}.meme__photochip small{font:.5625rem var(--font-mono);color:var(--text-subtle)}.meme__photo-controls{border-top:1px solid var(--border);margin-top:15px;padding-top:15px}.meme__photoediting{text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font:.625rem/1.5 var(--font-mono);margin-bottom:12px;overflow:hidden}.meme__photo-size{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.meme__photo-size label{color:var(--text-muted);grid-template-columns:1fr auto;gap:6px;font-size:.75rem;display:grid}.meme__photo-size label>span{color:var(--text-subtle);font:.625rem var(--font-mono);align-self:center}.meme__photo-size input{grid-column:1/-1;width:100%;min-width:0}.meme__photo-order{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px;display:grid}.meme__photonote,.meme__photostatus{color:var(--text-muted);margin-top:14px;font-size:.6875rem;line-height:1.6}.meme__photostatus:empty{display:none}.meme__photostatus[data-error=true]{color:var(--danger)}.meme__layouts{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:17px;display:grid}.meme__layouts>button{border:1px solid var(--border-input);border-radius:var(--r-sm);background:var(--surface);color:var(--text-muted);font:500 .625rem var(--font);cursor:pointer;gap:8px;padding:9px 5px;display:grid}.meme__layouts>button[aria-pressed=true]{border-color:var(--text);box-shadow:0 0 0 1px var(--text);color:var(--text)}.meme__layoutart{border:1px solid var(--border-input);background:var(--surface);border-radius:2px;width:43px;height:37px;margin:auto;display:block;position:relative;overflow:hidden}.meme__layoutart i{background:linear-gradient(135deg, var(--surface-inset) 40%, var(--text-subtle));position:absolute;inset:5px 0 0}.meme__layoutart b{text-align:center;font:700 12px/1.5 var(--font);color:var(--text);position:absolute;inset:0}.meme__layoutart--classic b{top:9px}.meme__layoutart--white i,.meme__layoutart--black i{top:15px}.meme__layoutart--black{background:var(--text)}.meme__layoutart--black b{color:var(--surface)}.meme__label{color:var(--text-muted);margin:0 0 6px;font-size:.75rem;font-weight:500;display:block}.meme__typeface{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:10px;display:grid}.meme__typeface .meme__label{gap:6px;display:grid}.meme__typeface .input{min-width:0}.meme__weightnote{color:var(--text-subtle);font:.625rem/1.5 var(--font);margin:4px 0 0}.meme .input{min-height:37px;font-size:.75rem}.meme__slider{color:var(--text-muted);grid-template-columns:1fr auto;gap:7px 10px;margin-top:16px;font-size:.75rem;display:grid}.meme__slider input{width:100%;accent-color:var(--accent);cursor:pointer;grid-column:1/-1}.meme__slider output{font:.6875rem var(--font-mono);color:var(--text-subtle)}.meme__colours{flex-wrap:wrap;gap:18px;margin-top:16px;display:flex}.meme__colours label{color:var(--text-muted);cursor:pointer;align-items:center;gap:7px;font-size:.6875rem;display:flex}.meme__colours input{border:1px solid var(--border-input);background:var(--surface);cursor:pointer;border-radius:50%;width:26px;height:26px;padding:2px}.meme__colours input::-webkit-color-swatch-wrapper{padding:0}.meme__colours input::-webkit-color-swatch{border:0;border-radius:50%}.meme__fine{border-top:1px solid var(--border);margin-top:16px}.meme__fine summary{color:var(--text-muted);cursor:pointer;justify-content:space-between;padding:14px 0 0;font-size:.6875rem;list-style:none;display:flex}.meme__fine summary::-webkit-details-marker{display:none}.meme__fine[open] summary>span{transform:rotate(45deg)}.meme__finebody{padding-top:13px}.meme__align{gap:6px;display:flex}.meme__align button{border:1px solid var(--border-input);border-radius:var(--r-sm);color:var(--text-muted);background:var(--surface);cursor:pointer;flex:1;padding:7px;font-size:.6875rem}.meme__align button[aria-pressed=true]{border-color:var(--text);color:var(--text);box-shadow:inset 0 0 0 1px var(--text)}.meme__check{color:var(--text-muted);font:.6875rem var(--font-mono);align-items:center;gap:7px;margin-top:15px;display:flex}.meme__check input{accent-color:var(--accent)}.meme__textbutton{border:0;border-bottom:1px solid var(--border-input);color:var(--text-muted);cursor:pointer;background:0 0;margin-top:16px;padding:0;font-size:.6875rem}.meme__export{grid-template-columns:1.2fr 1fr;gap:9px;display:grid}.meme__export label{color:var(--text-muted);gap:6px;font-size:.75rem;display:grid}.meme__fit{color:var(--text-subtle);margin:11px 0 0;font-size:.6875rem;line-height:1.6}.meme [hidden]{display:none!important}.meme-library{border:1px solid var(--border-input);border-radius:var(--r-lg);background:var(--surface);width:min(920px,100vw - 28px);max-width:none;max-height:min(850px,100dvh - 32px);color:var(--text);box-shadow:var(--shadow-md);margin:auto;padding:0;overflow:hidden;container:meme-library/inline-size}.meme-library::backdrop{background:var(--scrim);backdrop-filter:blur(5px)}.meme-library[open]{flex-direction:column;display:flex}.meme-library__head{justify-content:space-between;align-items:flex-start;gap:20px;padding:26px 26px 17px;display:flex}.meme-library__head h2{font:700 2rem/1.15 var(--font-display);letter-spacing:-.04em;margin:6px 0}.meme-library__head p{color:var(--text-muted);margin:0;font-size:.8125rem}.meme-library__close{border:1px solid var(--border-input);background:var(--surface);width:34px;height:34px;color:var(--text-muted);cursor:pointer;font:400 22px/1 var(--font);border-radius:50%;flex:none;place-items:center;display:grid}.meme-library__find{border-bottom:1px solid var(--border);padding:0 26px}.meme-library__find>.input{min-height:44px;font-size:.8125rem}.meme-library__filters{flex-wrap:wrap;gap:7px;padding-top:12px;display:flex}.meme-library__filters button{border:1px solid var(--border-input);border-radius:var(--r-full);color:var(--text-muted);background:var(--surface);cursor:pointer;font:500 .6875rem var(--font);padding:7px 12px}.meme-library__filters button[aria-pressed=true]{border-color:var(--text);color:var(--text);background:var(--bg-subtle);box-shadow:inset 0 0 0 1px var(--text)}.meme-library__count{color:var(--text-subtle);font:.625rem var(--font-mono);margin:13px 0}.meme-library__body{overscroll-behavior:contain;min-height:0;padding:20px 26px 26px;overflow-y:auto}.meme-library__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.meme-library__template{border:1px solid var(--border-input);border-radius:var(--r-md);text-align:left;background:var(--surface);min-width:0;color:var(--text);cursor:pointer;flex-direction:column;padding:0;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.meme-library__template:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.meme-library__template[aria-pressed=true]{border-color:var(--text);box-shadow:0 0 0 1px var(--text)}.meme-library__image{aspect-ratio:1.18;border-bottom:1px solid var(--border);background:var(--bg-subtle);place-items:center;width:100%;padding:9px;display:grid;overflow:hidden}.meme-library__image img{object-fit:contain;width:100%;height:100%;min-height:0}.meme-library__caption{flex-direction:column;flex:1;justify-content:space-between;gap:7px;padding:11px 12px 12px;display:flex}.meme-library__caption strong{font:600 .75rem/1.4 var(--font);display:block}.meme-library__caption small{color:var(--text-subtle);font:.5625rem var(--font-mono)}.meme-library__empty{text-align:center;padding:44px 12px}.meme-library__empty strong{font:600 1.125rem var(--font-display)}.meme-library__empty p{color:var(--text-muted);margin:8px 0 18px;font-size:.8125rem}.meme-library__more{text-align:center;padding:24px 0 0}.meme-library__more p{color:var(--text-subtle);font:.625rem/1.5 var(--font-mono);margin:0 0 12px}.meme-library__foot{border-top:1px solid var(--border);color:var(--text-muted);background:var(--bg-subtle);flex-wrap:wrap;flex:none;justify-content:space-between;gap:8px 20px;padding:14px 26px;font-size:.6875rem;display:flex}@container meme-library (width<=640px){.meme-library__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}}@container meme-library (width<=440px){.meme-library__head{padding:20px 16px 15px}.meme-library__head h2{font-size:1.625rem}.meme-library__head p{font-size:.75rem}.meme-library__find{padding-inline:16px}.meme-library__filters{gap:5px}.meme-library__filters button{padding:7px 9px;font-size:.625rem}.meme-library__body{padding:15px 16px 18px}.meme-library__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meme-library__image{aspect-ratio:1.08}.meme-library__foot{padding:12px 16px;font-size:.625rem}}@container studio (width<=820px){.meme__split{top:var(--meme-sticky-top);height:max(440px, calc(100dvh - var(--meme-sticky-top) - 44px));scroll-margin-top:var(--meme-sticky-top);flex-direction:column;display:flex;position:sticky}.meme__stage{--meme-preview-height:min(24dvh, 200px);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);flex:none;align-self:stretch;padding:10px 16px 8px;position:static}.meme__mat{min-height:0;padding:10px}.meme__preview{width:min(100%, calc(var(--meme-preview-height) * var(--meme-ratio,1)))}.meme__previewfoot{padding-block:7px}.meme__previewfoot>:last-child{display:none}.meme__source{margin-bottom:6px;font-size:.5625rem}.meme__starters>summary{padding-top:7px}.meme__message{margin-top:7px;font-size:.6875rem}.meme__rail{overscroll-behavior-y:contain;scrollbar-gutter:stable;flex:1;min-height:0;overflow-y:auto}.meme__nav{z-index:2;position:sticky;top:0}.meme__result,.meme__railfoot{display:none}.meme__selected{padding-block:8px}.meme__nav{padding-block:7px}.meme__nav button{gap:4px;padding-block:7px}.meme__stage:has(.meme__starters[open]){--meme-preview-height:min(20dvh, 150px)}}@container studio (width<=540px){.meme__stage{padding-inline:12px}.meme__browse{gap:5px;padding-inline:7px;font-size:.625rem}.meme__history{gap:3px}.meme__history button{width:29px}.meme__history>span{margin-inline:2px}.meme__templates{gap:7px}.meme__templates img,.meme__blankart{height:42px}.meme__templates>button>span:not(.meme__blankart,.meme__templatearrow){padding:9px 8px}.meme__templates small,.meme__templatearrow{display:none}.meme__previewfoot{font-size:.5625rem}.meme__stagebar{margin-bottom:10px}}.workspace .meme,:root[data-embed=desk] .meme{--meme-sticky-top:68px;--meme-preview-height:clamp(160px, calc(100dvh - var(--meme-sticky-top) - 230px), 540px)}@media (height<=560px){.meme__stage:has(~.meme__rail :focus-within){--meme-preview-height:100px}}.tm-meme__picture{transform-origin:180px 90px}.tm-meme__picture,.tm-meme__text,.tm-meme__cursor,.tm-meme__saved{animation:7s ease-in-out infinite backwards meme-picture}.tm-meme__text{animation-name:meme-text}.tm-meme__cursor{opacity:0;animation-name:meme-cursor}.tm-meme__saved{animation-name:meme-saved}@keyframes meme-picture{0%,8%{opacity:.25;transform:translate(-26px)rotate(-5deg)}25%,88%{opacity:1;transform:none}to{opacity:1;transform:none}}@keyframes meme-text{0%,27%{opacity:0;transform:translateY(5px)}43%,to{opacity:1;transform:none}}@keyframes meme-cursor{0%,26%{opacity:0;transform:translate(17px,12px)}38%,56%{opacity:1;transform:none}70%,to{opacity:0}}@keyframes meme-saved{0%,58%{opacity:0;transform:translateY(8px)}73%,to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.tm-meme__picture,.tm-meme__text,.tm-meme__cursor,.tm-meme__saved{animation:none}.tm-meme__cursor{opacity:0}.meme__templates>button,.meme-library__template{transition:none}}
