:root{color-scheme:dark;--bg:#0e1916;--panel:#182923;--line:#40564a;--text:#eee9d7;--muted:#b0bdae;--gold:#debf78;font-family:system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{min-height:44px;border:1px solid #697e68;border-radius:7px;background:#273e31;color:var(--text);padding:10px 14px;cursor:pointer}button:hover{background:#38503d}button:disabled{opacity:.4;cursor:default}.gold{background:var(--gold);color:#18281c;border-color:#ffe4a4;font-weight:700}.gold:hover{background:#f1d394}a{color:#e3ca8e}label{display:grid;gap:7px;font-size:13px;font-weight:600}input,select,textarea{width:100%;min-height:44px;border:1px solid #5e7564;border-radius:5px;background:#102019;color:var(--text);padding:9px;font-weight:400}textarea{resize:vertical}[hidden]{display:none!important}.studio-header{display:flex;align-items:center;gap:24px;padding:22px 4vw;border-bottom:1px solid var(--line)}.wordmark{text-decoration:none;font:26px Georgia,serif;letter-spacing:4px}.studio-header>span{font-size:11px;letter-spacing:2px;color:var(--muted)}#identity{margin-left:auto;letter-spacing:0}main{max-width:1640px;margin:auto;padding:36px 4vw 70px}.intro h1{font:38px Georgia,serif;margin:12px 0}.intro p{line-height:1.8;color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--gold)!important}#status{padding:14px 18px;background:#22382b;border-left:3px solid var(--gold);min-height:48px}.topbar{display:flex;gap:28px;align-items:end;margin:28px 0}.topbar form{display:flex;align-items:end;gap:12px}.topbar label{min-width:180px}.editor-layout{display:grid;grid-template-columns:230px minmax(320px,1fr) 240px;gap:16px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;min-width:0}h2{font-size:16px;margin:0 0 20px;font-weight:600}.settings label{margin-bottom:15px}.settings h2:not(:first-child){margin-top:30px}.muted{font-size:12px;line-height:1.8;color:var(--muted)}.tools{display:grid;grid-template-columns:1fr 1fr;gap:6px}.tools button{font-size:12px;padding:8px}.tools [aria-pressed=true]{outline:2px solid var(--gold);background:#465239}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-heading h2{margin-bottom:4px}#dimensions{font-size:12px;color:var(--muted)}#tool-help{font-size:13px;color:var(--gold)}.grid-scroll{overflow:auto;padding:8px 0 16px;max-height:65vh}#grid{display:grid;gap:2px;width:max-content;margin:auto;background:#0c1712;padding:6px;border:1px solid var(--line);border-radius:5px}#grid button{width:36px;height:36px;min-height:36px;border-radius:2px;padding:0;background:#b4bf9a;border:1px solid #e1e3bd;color:#16251d;font-size:12px;font-weight:700}#grid button.wall{background:#4b5950;color:#dee5ca;border-color:#718476}#grid button.water{background:#318a93;color:#d2f8fc;border-color:#66b9bc}#grid button.bridge{background:#9b7949;color:#fff0be}#grid button.trap{background:#9d443d;color:#fff3d2}#grid button.object{background:#e1c37f;box-shadow:inset 0 0 0 2px #665634}#grid button.spawn{background:#9ce0ac}.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--muted);margin-top:12px}#validation{min-height:42px;font-size:13px;line-height:1.7;color:#e3cf9e}.actions{display:flex;gap:10px;flex-wrap:wrap}.release p{font-size:13px;line-height:1.9}.release button{width:100%;margin:6px 0}.release label{margin:14px 0}.quiet{background:transparent;color:var(--muted)}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.file-label input{font-size:11px}.preview-panel{margin-top:24px}iframe{width:100%;height:720px;border:1px solid var(--line);border-radius:8px;background:#11251d}.preview-panel .panel-heading{flex-wrap:wrap}@media(max-width:1100px){.editor-layout{grid-template-columns:210px minmax(300px,1fr)}.release{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px}.release h2,.release p,.release hr{grid-column:1/-1}.release label{margin:6px 0}}@media(max-width:640px){main{padding:22px 14px}.studio-header{padding:16px;flex-wrap:wrap;gap:12px}.studio-header>span{font-size:10px}.intro h1{font-size:30px}.topbar,.topbar form{display:grid;gap:12px}.editor-layout{display:flex;flex-direction:column}.tools{grid-template-columns:repeat(3,1fr)}.settings{order:0}.plan{order:1}.release{order:2;display:block}.panel{padding:16px}#grid button{width:44px;height:44px;min-height:44px}iframe{height:667px}.preview-panel .panel-heading>a{font-size:13px}}

.ai-design{margin-bottom:24px}.ai-options{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.ai-options label{flex:1;min-width:140px}.ai-options button{margin-bottom:14px}#ai-summary{white-space:pre-line;line-height:1.8}#ai-result{border-top:1px solid var(--line);padding-top:12px}#ai-result[hidden]{display:none}
#openai-connection{margin-bottom:16px}#openai-key-form .ai-options{margin-top:12px}#openai-key-status{min-height:1.5em;line-height:1.6;overflow-wrap:anywhere}
#workspace[inert] button{opacity:.4;cursor:wait}

/* Keep the complete feedback + wrapped actions inside even a short viewport. */
#ai-feedback{margin-top:12px;scroll-margin-block:12px}.ai-actions{display:flex;flex-wrap:wrap;gap:10px}.ai-actions button{flex:1 1 140px}#ai-status{margin:0 0 12px;max-height:min(12rem,35dvh);overflow:auto;overflow-wrap:anywhere;line-height:1.6}
