.marble-builder{box-sizing:border-box;width:min(960px,calc(100% - 16px));max-width:calc(100% - 16px);max-height:calc(100dvh - 24px);margin:auto;padding:clamp(12px,3vw,24px);border:1px solid var(--gm-violet-400);border-radius:24px;background:linear-gradient(140deg,var(--gm-ink-750),var(--gm-ink-850) 60%);color:var(--gm-ink-100);font:inherit;overflow:auto;overscroll-behavior:contain}
.marble-builder::backdrop{background:rgb(var(--gm-ink-950-rgb) / 0.867)}.marble-builder *{box-sizing:border-box;min-width:0}.marble-builder [hidden]{display:none!important}
.marble-builder header{display:flex;align-items:center;justify-content:space-between;gap:12px}.marble-builder h1{font-size:clamp(1.2rem,4vw,1.8rem);margin:.25em 0}.marble-builder h2{font-size:1.1rem;margin:.4em 0}.marble-builder h3{font-size:1rem}.marble-builder small{color:var(--gm-violet-300);letter-spacing:.08em;font-size:.7rem}
.marble-builder p,.marble-builder label,.marble-builder b,.marble-builder span{overflow-wrap:anywhere}.marble-builder p{line-height:1.5}.marble-builder button,.marble-builder input,.marble-builder select{font:inherit;color:inherit;max-width:100%}.marble-builder button{min-height:44px;padding:10px 14px;border-radius:12px;border:1px solid var(--gm-ink-400);background:linear-gradient(145deg,var(--gm-violet-800),var(--gm-ink-750));cursor:pointer;white-space:normal;overflow-wrap:anywhere}.marble-builder header>button{flex:0 0 44px;padding:8px;font-size:1.5rem}.marble-builder button:disabled{opacity:.45;cursor:default}.marble-builder button:focus-visible,.marble-builder input:focus-visible,.marble-builder select:focus-visible{outline:2px solid var(--gm-line-strong);outline-offset:2px}
.marble-builder input:not([type=checkbox]),.marble-builder select{display:block;width:100%;min-height:44px;margin-top:6px;padding:10px;border:1px solid var(--gm-ink-400);border-radius:8px;background:var(--gm-ink-850)}.marble-builder input[type=range]{padding:0;accent-color:var(--gm-violet-400)}.marble-builder input[type=checkbox]{width:24px;height:24px;vertical-align:middle;margin-left:12px}
.marble-builder label{display:block;font-size:.9rem;line-height:1.4}.mb-fields,.mb-tools,.mb-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.mb-fields>label{flex:1 1 160px}.mb-actions>label{flex:0 1 170px}.mb-tools>label{flex:1 1 180px}.mb-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin-top:16px}.mb-track{text-align:left;display:grid;gap:8px}.mb-track span,.mb-state,.mb-hint{font-size:.85rem;color:var(--gm-violet-300)}
.mb-notice{padding:12px 14px;border:1px solid var(--gm-ink-400);border-radius:12px;background:var(--gm-ink-800)}.mb-notice.error{border-color:var(--gm-red-500);color:var(--gm-ink-100)}.marble-builder details{margin-top:14px;border:1px solid var(--gm-ink-400);border-radius:12px;padding:12px}.marble-builder summary{min-height:44px;cursor:pointer;color:var(--gm-gold-400);line-height:1.5;overflow-wrap:anywhere}.mb-workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px}.mb-canvas{width:100%;aspect-ratio:2/3;display:block;background:var(--gm-ink-850);border:1px solid var(--gm-violet-400);border-radius:12px;touch-action:none}.mb-inspector{display:flex;flex-direction:column;gap:10px}.mb-paths section{border-bottom:1px solid var(--gm-ink-500);padding:10px 0}.mb-publish{margin-top:16px;border:1px solid var(--gm-line-strong);border-radius:16px;padding:14px}.mb-publish h2{color:var(--gm-gold-400)}.mb-preview{max-width:640px}.mb-preview canvas{display:block;width:100%;aspect-ratio:1;background:var(--gm-ink-850);border-radius:12px}.mb-preview label{margin-top:12px}
@media(max-width:620px){.mb-workspace{grid-template-columns:minmax(0,1fr)}.mb-inspector{border-top:1px solid var(--gm-ink-500);padding-top:12px}.mb-inspector label{width:100%}}
.marble-builder h1,.marble-builder h2,.marble-builder h3,.marble-builder small{overflow-wrap:anywhere}
.marble-builder input[type=range]{margin-left:0;margin-right:0}
@media(max-width:380px){.marble-builder header{display:grid;grid-template-columns:minmax(0,1fr) 44px}.marble-builder header>div{display:contents}.marble-builder header small{grid-column:1;grid-row:1}.marble-builder header h1{grid-column:1/-1;grid-row:2}.marble-builder header>button{grid-column:2;grid-row:1}}
.mb-preview canvas{aspect-ratio:5/7}
.mb-motion-status,.mb-direction{color:var(--gm-ink-100)}.marble-builder [data-action=delete-track]{border-color:var(--gm-red-500)}.mb-canvas:focus-visible{outline:2px solid var(--gm-line-strong);outline-offset:2px}.mb-paths section>button{display:block;margin:8px 0 14px}.mb-inspector>button{flex-shrink:0}
