.toy{height:100dvh;overflow:hidden;position:relative}.toy canvas{width:100%;height:100%;display:block;touch-action:none}.toy header{position:absolute;top:16px;left:18px;right:18px;display:flex;align-items:center;gap:12px;pointer-events:none}.toy header>*{pointer-events:auto;background:var(--paper);padding:10px 12px;border-radius:12px;border:0}.toy header a{font-size:11px;text-decoration:none;color:var(--ink);letter-spacing:1px}.toy header span{font-size:11px;margin-left:auto}.toy button{border-radius:10px;min-height:48px}.floating,.home{position:absolute;right:18px;background:var(--paper);border:0;width:48px}.floating{top:80px}.home{bottom:24px}.welcome,.hud{position:absolute;left:24px;bottom:24px;width:360px;background:var(--paper);border:1px solid #fff5;border-radius:20px;padding:18px;box-shadow:0 8px 28px #35453415}.welcome h1{font-size:43px;margin:14px 0}.welcome p{font-size:16px}.welcome>button{width:100%;margin-bottom:8px}.welcome small{display:block;font-size:11px;color:var(--quiet)}.hud-top{display:flex;justify-content:space-between;align-items:center;min-height:28px}.hud-top span{font-size:11px;letter-spacing:.8px}.hud-top button{border:0;padding:4px 10px;min-height:36px}.hud p{font-size:14px;margin:4px 0 12px}.palette{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.palette button{display:flex;align-items:center;flex-direction:column;gap:8px;background:#e3ddcc;border:0;min-height:74px;font-size:13px}.shape{display:block;background:#c79968;border:1px solid #97724c;transform:skewY(-10deg);box-shadow:4px 3px #a67e52}.shape.block{width:28px;height:20px}.shape.sheet{width:34px;height:5px;margin:8px 0 7px}.shape.post{width:7px;height:28px;margin:-4px 0}.row,#actions,#placement{display:flex;gap:5px}.row{margin-top:5px}.row button,#actions button,#placement button{flex:1;padding:6px;font-size:12px;background:#e3ddcc;border:0}.hud>.text-action{font-size:12px;min-height:36px;padding:6px 0;margin-top:4px}.toy dialog{border-radius:18px}.toy dialog h2{font-size:28px}.toy input{width:100%;padding:12px;border:1px solid var(--rule);background:var(--surface);font-size:16px;min-height:48px;margin-bottom:14px}.toy textarea{margin-bottom:10px}.idea-row{display:block;width:100%;text-align:left;margin:8px 0;background:var(--surface)}.idea-row strong,.idea-row small{display:block}.idea-row small{font-size:12px;color:var(--quiet)}#comments p{padding:10px;border-left:2px solid var(--coral);font-size:14px}.busy #hud button{pointer-events:none;opacity:.6}
@media(max-width:620px){.toy header{top:12px;left:12px;right:12px;gap:6px;flex-wrap:wrap}.toy header span{order:3;flex-basis:100%;padding:4px 10px;background:transparent;font-size:10px}.toy header button{margin-left:auto;font-size:12px}.welcome,.hud{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;padding:14px;border-radius:18px}.welcome h1{font-size:36px}.home{bottom:230px;right:12px}.floating{top:90px;right:12px}.hud p{font-size:13px}.hud #actions button{min-height:52px}.hud .row button{min-height:44px}.hud>.text-action{margin-top:2px}.toy dialog{max-height:85dvh;overflow:auto}}

.palette{grid-template-columns:1fr}.palette button{flex-direction:row;justify-content:center;min-height:58px}.size-row{display:flex;align-items:center;gap:8px;margin:5px 0}.size-row span{flex:1;font-size:14px}.size-row button{width:64px;font-size:23px;background:#e3ddcc;border:0}.hud:has(#transform:not([hidden])) #feedback{display:none}
#buildReplay{min-height:44px;border:0;padding:6px 10px;font-size:12px;margin-left:auto}#buildMute{font-size:12px;min-height:48px}

.piece-extras summary{padding:12px 0;font-size:12px;cursor:pointer;min-height:44px}.size-done{width:100%;background:var(--coral);color:white;border:0}

.size-simple{display:flex;gap:8px;margin:10px 0}.size-simple button{flex:1;min-height:64px;background:#e3ddcc;border:0;font-size:16px}

.object-size{position:absolute;z-index:3;display:flex;flex-direction:column;gap:6px;pointer-events:none}.object-size button{width:52px;height:52px;min-height:52px;border:1px solid #fff8;background:var(--paper);color:var(--ink);font-size:28px;box-shadow:0 3px 14px #35453425;pointer-events:auto}.object-size button:first-child{background:var(--coral);color:white}

.toy .block-name{position:absolute;z-index:4;width:190px;min-height:44px;margin:0;text-align:center;transform:translateX(-50%);border:1px solid #9c4f3b88;border-radius:12px;background:var(--paper);font-weight:600;padding:8px}.build-labels span{position:absolute;z-index:2;transform:translateX(-50%);background:var(--paper);padding:8px 12px;border-radius:10px;max-width:190px;overflow-wrap:anywhere;font-size:16px;pointer-events:none}.busy .object-size{pointer-events:none}.busy .object-size button{pointer-events:none}
