/* ECSTA.SI Lab v2: deeper tools, stronger outputs, fewer decorative alibis. */
.control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.control-grid .field{margin:0}.preset-row{display:flex;flex-wrap:wrap;gap:.5rem;margin:-2.5rem 0 1rem}.preset-row button{border:1px solid var(--line);background:var(--surface);color:var(--muted);padding:.55rem .7rem;font:700 .62rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.07em;cursor:pointer}.preset-row button:hover{border-color:var(--acid);color:var(--ink)}.lab-notes{margin-top:1rem;border:1px solid var(--line);background:var(--surface)}.lab-notes summary{padding:1rem 1.2rem;cursor:pointer;font:700 .68rem/1.3 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.08em}.lab-notes p{max-width:900px;margin:0;padding:0 1.2rem 1.2rem;color:#cbc8bf;line-height:1.65}.dark-button{border-color:#080808;color:#080808;margin-top:1rem}.dark-button:hover{background:#080808;color:#f3f0e7}

/* Poster studio */
.poster-shell{grid-template-columns:1fr 1.35fr}.poster-output-stage{min-height:680px;background:#b9b8b1;overflow:hidden}.poster-canvas{--poster-intensity:5;position:relative;width:min(94%,720px);aspect-ratio:4/5;overflow:hidden;background:#080808;color:#caff00;box-shadow:0 26px 70px rgba(0,0,0,.25);isolation:isolate;transition:aspect-ratio .25s ease,background .2s ease,color .2s ease}.poster-canvas[data-format="square"]{aspect-ratio:1}.poster-canvas[data-format="story"]{aspect-ratio:9/16;max-height:720px;width:auto}.poster-canvas[data-format="landscape"]{aspect-ratio:16/9;width:min(98%,920px)}.poster-canvas[data-format="a3"]{aspect-ratio:1/1.414}.poster-canvas[data-palette="orange"]{background:#ff5b35;color:#080808}.poster-canvas[data-palette="violet"]{background:#7b71ff;color:#fff}.poster-canvas[data-palette="mono"]{background:#f3f0e7;color:#080808}.poster-canvas[data-palette="emergency"]{background:#d61717;color:#f8f3e8}.poster-canvas[data-palette="blueprint"]{background:#0a42c8;color:#f8f3e8}.poster-canvas[data-palette="bone"]{background:#d8d1bf;color:#171713}.poster-canvas[data-palette="toxic"]{background:#caff00;color:#080808}.poster-kicker,.poster-footer,.poster-index{position:absolute;z-index:6;margin:0;font:700 clamp(.42rem,.9vw,.72rem)/1.2 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.08em}.poster-kicker{top:5%;left:5%;right:5%}.poster-footer{left:5%;bottom:5%;right:28%}.poster-index{right:5%;bottom:5%}.poster-canvas h3{position:absolute;z-index:5;margin:0;max-width:90%;font:900 clamp(2.4rem,7vw,7.6rem)/.76 "Archivo Black",sans-serif;text-transform:uppercase;letter-spacing:-.085em;overflow-wrap:anywhere}.poster-shape{position:absolute;z-index:2;background:currentColor}.poster-texture{position:absolute;inset:0;z-index:4;pointer-events:none;mix-blend-mode:multiply;opacity:.28}.poster-canvas[data-texture="grain"] .poster-texture{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}.poster-canvas[data-texture="halftone"] .poster-texture{background-image:radial-gradient(currentColor 1.2px,transparent 1.3px);background-size:9px 9px;opacity:.18}.poster-canvas[data-texture="scanlines"] .poster-texture{background:repeating-linear-gradient(0deg,currentColor 0 2px,transparent 2px 8px);opacity:.12}.poster-canvas[data-texture="grid"] .poster-texture{background-image:linear-gradient(currentColor 1px,transparent 1px),linear-gradient(90deg,currentColor 1px,transparent 1px);background-size:10% 10%;opacity:.12}.poster-canvas[data-texture="xerox"] .poster-texture{background:repeating-linear-gradient(-7deg,transparent 0 11%,currentColor 11.2% 12%,transparent 12.2% 24%);filter:contrast(160%);opacity:.13}.poster-canvas[data-type="outline"] h3{color:transparent;-webkit-text-stroke:clamp(1px,.25vw,4px) currentColor}.poster-canvas[data-type="shadow"] h3{text-shadow:.065em .065em 0 #caff00}.poster-canvas[data-palette="toxic"][data-type="shadow"] h3,.poster-canvas[data-palette="acid"][data-type="shadow"] h3{text-shadow:.065em .065em 0 #7b71ff}.poster-canvas[data-type="condensed"] h3{font-family:Impact,"Arial Narrow",sans-serif;letter-spacing:-.11em;width:100%}.poster-canvas[data-type="stamp"] h3{filter:contrast(180%);opacity:.92;text-shadow:2px 0 currentColor,-2px 0 currentColor}.poster-canvas[data-layout="stack"] h3{left:5%;top:19%;transform:rotate(var(--poster-rotation))}.poster-canvas[data-layout="stack"] .shape-a{left:5%;right:5%;height:2.2%;bottom:20%;background:#ff5b35}.poster-canvas[data-layout="split"] .shape-a{inset:0 64% 0 0;background:#caff00}.poster-canvas[data-layout="split"] h3{left:40%;top:20%;max-width:55%}.poster-canvas[data-layout="split"] .poster-kicker{transform:rotate(90deg);transform-origin:left top;left:27%;top:7%;width:58%}.poster-canvas[data-layout="warning"] h3{left:50%;top:27%;width:92%;text-align:center;transform:translateX(-50%) rotate(var(--poster-rotation-soft))}.poster-canvas[data-layout="warning"] .shape-a,.poster-canvas[data-layout="warning"] .shape-b{left:-12%;width:124%;height:15%;background:#caff00;transform:rotate(-7deg)}.poster-canvas[data-layout="warning"] .shape-a{top:13%}.poster-canvas[data-layout="warning"] .shape-b{bottom:16%}.poster-canvas[data-layout="swiss"] h3{left:34%;top:22%;max-width:62%;font-size:clamp(2rem,5.7vw,6rem);line-height:.82}.poster-canvas[data-layout="swiss"] .shape-a{left:29%;top:5%;bottom:5%;width:1px}.poster-canvas[data-layout="swiss"] .shape-b{left:5%;right:5%;top:15%;height:1px}.poster-canvas[data-layout="oversize"] h3{left:-4%;top:13%;max-width:114%;font-size:clamp(4.4rem,11vw,11rem);line-height:.66;transform:rotate(var(--poster-rotation))}.poster-canvas[data-layout="oversize"] .shape-a{right:-4%;bottom:12%;width:24%;aspect-ratio:1;border-radius:50%;background:#ff5b35}.poster-canvas[data-layout="vertical"] h3{left:11%;bottom:9%;max-width:112%;font-size:clamp(2.8rem,7.5vw,8rem);transform:rotate(-90deg);transform-origin:left bottom;white-space:nowrap}.poster-canvas[data-layout="vertical"] .shape-a{left:34%;top:0;bottom:0;width:8%;background:#caff00}.poster-canvas[data-layout="vertical"] .poster-kicker{left:50%;top:12%;max-width:42%}.poster-canvas[data-layout="editorial"]:after{content:"";position:absolute;inset:5%;border:clamp(2px,.35vw,5px) solid currentColor;z-index:3}.poster-canvas[data-layout="editorial"] h3{left:50%;top:30%;width:82%;text-align:center;transform:translateX(-50%);font-size:clamp(2.3rem,6vw,6.2rem)}.poster-canvas[data-layout="editorial"] .poster-footer{left:14%;right:14%;text-align:center;bottom:17%}.poster-canvas[data-layout="broadcast"] h3{left:5%;top:25%;max-width:90%;transform:skewX(var(--poster-skew));text-shadow:.05em 0 #ff5b35,-.05em 0 #7b71ff}.poster-canvas[data-layout="broadcast"] .shape-a{left:5%;top:12%;width:22%;height:8%;background:#caff00}.poster-canvas[data-layout="broadcast"] .shape-a:after{content:"LIVE";position:absolute;inset:0;display:grid;place-items:center;color:#080808;font:900 .72rem/1 "IBM Plex Mono",monospace}.poster-canvas[data-layout="broadcast"] .shape-b{left:0;right:0;bottom:14%;height:4%;background:#caff00}

/* Advanced bad idea generator */
.bad-idea-output{background:var(--acid);align-items:stretch}.startup-card{width:min(96%,900px);margin:auto;background:#080808;color:var(--ink);padding:clamp(1.3rem,3vw,2.5rem);box-shadow:24px 24px 0 rgba(0,0,0,.2);display:grid;gap:1.5rem}.startup-top{display:flex;justify-content:space-between;gap:1rem;align-items:start}.startup-top small{font:700 .62rem/1.3 "IBM Plex Mono",monospace;color:var(--acid);text-align:right}.startup-card h3{margin:0;font:900 clamp(3rem,7vw,7rem)/.78 "Archivo Black",sans-serif;text-transform:uppercase;letter-spacing:-.08em}.startup-pitch{margin:0;color:#d8d4ca;font-size:clamp(1.05rem,2vw,1.45rem);line-height:1.45}.startup-meta,.startup-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.startup-meta>div,.startup-columns>div{padding:1rem;background:#11110f}.startup-meta span,.startup-label,.startup-ask span{display:block;margin-bottom:.55rem;color:var(--acid);font:700 .6rem/1.25 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.08em}.startup-meta strong{font-size:1rem;line-height:1.4}.startup-columns p,.startup-columns li{color:#cbc8bf;line-height:1.5}.startup-columns ul{margin:0;padding-left:1.1rem}.startup-columns p{margin:.35rem 0 1rem}.startup-ask{padding-top:1rem;border-top:1px solid var(--line)}.startup-ask strong{font:900 clamp(1.4rem,3vw,2.8rem)/.95 "Archivo Black",sans-serif;text-transform:uppercase}.startup-card .status{color:var(--acid)}

@media(max-width:1000px){.poster-shell{grid-template-columns:1fr}.poster-output-stage{min-height:600px}.control-grid{grid-template-columns:1fr}}
@media(max-width:700px){.preset-row{margin:-2rem 0 1rem;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.4rem}.preset-row button{white-space:nowrap}.poster-output-stage{min-height:500px;padding:.8rem}.poster-canvas{width:100%}.startup-meta,.startup-columns{grid-template-columns:1fr}.startup-card{box-shadow:12px 12px 0 rgba(0,0,0,.2)}.startup-top{flex-direction:column}.startup-top small{text-align:left}}
@media(prefers-reduced-motion:reduce){.poster-canvas{transition:none}}
