/* A shared sculpture garden: paper, pigment, stone and afternoon light. */
.scene{cursor:default}.scene:active{cursor:default}.scene.exploring{cursor:grab}.scene.exploring:active{cursor:grabbing}
.scene.selecting-area,.scene.selecting-area:active{cursor:crosshair}
.scene.selecting-area [data-ground] path:not(:first-child){stroke:#c5cbb7;stroke-width:.7;vector-effect:non-scaling-stroke}
.area-selection{width:min(440px,calc(100vw - 32px));padding:17px 19px;background:#fffcf5f5;border:1px solid #b9c0ab;border-radius:6px;box-shadow:0 8px 30px #453b2515;text-align:left}
.area-selection[hidden]{display:none}.area-selection-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.area-selection-heading strong{font:20px var(--font-title)}.area-selection-heading button{font-size:10px;white-space:nowrap}
.area-selection p{font-size:11px;line-height:1.5;margin:9px 0 14px;min-height:33px;color:#666b59}.area-selection-buttons{display:flex;align-items:center;gap:9px}.area-selection-buttons .primary{flex:1;width:auto;padding:12px}.area-selection-buttons .secondary{padding:12px;border:1px solid #d4d7c7;background:transparent;border-radius:3px;font-size:11px}.area-selection-buttons .cancel-build{padding:10px 3px;font-size:11px}
.world:has(.area-selection:not([hidden])) .hint{visibility:hidden}
@media(max-width:700px){.area-selection{padding:13px}.area-selection-heading strong{font-size:18px}.area-selection-buttons{gap:7px}.area-selection-buttons .primary{font-size:11px}}
.zoom #explore-mode{font-size:11px;padding:0 12px;margin-right:5px;border:1px solid #cfc8b8;min-width:72px}
.zoom #explore-mode[aria-pressed=true]{background:#354d3d;color:#fff}
.credit-choice{font-size:10px;background:#faf7eeeb;padding:5px 9px;border-radius:3px}.credit-choice input{vertical-align:middle;accent-color:#354d3d}
.area-status-chip{position:absolute;z-index:3;top:113px;right:34px;border:1px solid #a4b294;border-radius:3px;padding:9px 13px;background:#f4f5e9;font-size:11px;font-variant-numeric:tabular-nums}
#build-area-dialog{width:min(450px,calc(100% - 24px));max-height:calc(100dvh - 32px)}
#build-area-dialog [hidden]{display:none}
.advertising-settings{border-top:1px solid #ddd5c5;padding-top:17px;margin:18px 0}.advertising-settings label,#build-area-dialog label[for=pack-quantity]{display:block;font-size:11px;margin:10px 0 7px}.advertising-settings input,.advertising-settings select,#pack-quantity{width:100%;padding:10px;border:1px solid #cbcbbb;border-radius:3px;background:#fffcf5;color:#303b30}.advertising-settings p{font-size:11px;line-height:1.5;color:#6c7064}.advertising-settings #advertising-error{color:#a44832}#pack-quantity{margin-bottom:12px}#piece-website{display:block;font-size:12px;margin:10px 0;overflow-wrap:anywhere}#piece-website[hidden]{display:none}
#build-area-dialog h2{margin-top:13px}#build-area-dialog h3{font:23px var(--font-title);margin-bottom:9px}
.pack-balance,.area-timer{display:flex;align-items:center;justify-content:space-between;border-block:1px solid #ddd5c5;padding:15px 0;margin:18px 0;font-size:11px}
.pack-balance strong,.area-timer strong{font:25px var(--font-title);font-variant-numeric:tabular-nums}
#build-area-dialog .area-small{font-size:11px;line-height:1.6}#build-area-dialog .coordinate-fields{margin:14px 0}
#build-area-dialog .footprint-fields{margin-top:16px}#area-message{color:#35583e;min-height:20px}
#piece-info .secondary{width:100%;padding:10px;border:1px solid #bdbfac;border-radius:3px;background:#f1f1e5;font-size:12px;margin-top:12px}
@media(max-width:700px){.area-status-chip{left:22px;right:auto;top:94px;font-size:10px;padding:7px 10px}.header-actions #how{display:none}.header-actions #build-area{font-size:10px}.zoom #explore-mode{min-width:65px;padding:0 8px}.header-actions{gap:10px!important}header{gap:12px!important;padding-inline:16px!important}#my-bricks{max-width:44px;line-height:1.4}.credit-choice{font-size:9px}}
:root{--table:#f3eee3;--paper:#fffcf5;--ink:#303b30;--muted:#797768;--line:#ded8c9;--grass:#ddb858;--deep:#354d3d;--control:#f2eee3;--shadow:0 8px 25px #5241230c,0 1px 3px #52412312}
body{font-family:var(--font-ui);background:var(--table)}
header{height:88px;background:var(--table);padding:0 38px;border-color:#ddd5c4}
.brand{font-family:var(--font-title);font-size:23px;font-weight:normal;letter-spacing:-1px;line-height:.86;gap:13px}
.brand-icon{border-radius:3px;background:#c36549;transform:rotate(-8deg);box-shadow:3px 4px 0 #e4d1b4}
.brand-icon i{background:#f2cf9d;box-shadow:0 2px 0 #a34834}
.tagline{font-size:11px;letter-spacing:.15px;color:#787265;margin-left:35px}
.account{background:transparent;border-radius:4px;font-size:11px;padding:10px 12px}
.avatar{background:#dfc69a;color:#654b34;border-radius:3px}
.text-button{font-size:11px}
.workspace{height:calc(100dvh - 122px);min-height:620px}
.world{background:var(--table)}
.world-title{position:absolute;z-index:2;left:38px;top:34px;margin:0;font:normal clamp(40px,4.2vw,63px)/1.02 var(--font-title);letter-spacing:-2.5px;pointer-events:none}.world-title em{font-weight:normal;color:#a55740}
#why{margin-left:30px;padding:12px 7px}
#why-dialog{width:min(580px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow:auto;padding:34px 40px}
#close-why{float:right;margin:-12px -16px 0 14px}#why-dialog h2{font:normal 49px/1.03 var(--font-title);letter-spacing:-2px;margin:19px 0 24px;outline:none}#why-title em{color:#a55740;font-weight:normal}
#why-dialog p{font-size:13px;line-height:1.8;margin:0 0 17px}#why-dialog .why-lead{font:21px/1.5 var(--font-title);color:#354d3d}#why-dialog .why-invitation{border-top:1px solid #ded8c9;padding-top:18px;color:#354d3d}
.why-actions{display:flex;gap:24px;align-items:center;margin-top:22px}.why-actions .primary{width:auto;min-width:185px;gap:35px}.why-actions .text-button{font-size:12px}
.world:has(.area-selection:not([hidden])) .world-title{visibility:hidden}
.eyebrow{font-size:9px;letter-spacing:2.3px;font-weight:normal;color:#9a6148}
.world-tag{border:0;background:none;border-radius:0;padding:0;right:34px;top:37px;font-size:9px;letter-spacing:.5px}
.dot{background:#b46c47;width:5px;height:5px}
.world-location{top:67px;right:34px;background:#fbf8ef;border-color:#e0d7c5;box-shadow:none;border-radius:3px;font-size:10px}
.world-location button{padding:11px}
.world-note{padding:0;background:transparent;box-shadow:none;border-radius:0;border-left:2px solid #c9a367;padding-left:12px}
.world-note .mini-stack{display:none}
.world-note strong{font-size:10px;font-weight:normal;letter-spacing:.3px}
.world-note span{font-size:9px;color:#8a806e}
.world-bottom{left:38px;right:34px;bottom:25px}
.zoom{border:1px solid #ded5c4;background:#fbf8ef;border-radius:4px;box-shadow:none;padding:4px}
.zoom button{background:transparent;border-radius:3px}
.primary{background:#364f3e;border-radius:4px;font-weight:normal;letter-spacing:.15px}
#start-building{border-radius:4px;box-shadow:0 4px 0 #24382b,0 9px 22px #3b43231a;min-width:220px;padding:17px 23px;font-size:12px}
.hint{background:#f3eee3d9;font-size:9px;letter-spacing:.25px;bottom:100px;padding:6px 12px}
.build-dock{bottom:29px}
.preview-bar{background:#e9e2d3;border-color:#dcd3c1;color:#83755f;font-size:9px;letter-spacing:.4px}
.preview-bar strong{font-size:8px;letter-spacing:1.4px;font-weight:normal}
dialog{background:var(--paper);border-radius:8px;box-shadow:0 24px 100px #47371f30}
dialog::backdrop{background:#413a2c45;backdrop-filter:blur(5px)}
dialog h2,.builder h2{font-family:var(--font-title);font-size:32px;font-weight:normal;letter-spacing:-1px}
#rankings-dialog{width:min(520px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:32px;overflow:auto}
#close-rankings{float:right;margin:-8px -8px 0 12px}
#rankings-dialog h2{margin:15px 0 8px}.rankings-subtitle{font-size:12px;color:#797768;margin-bottom:28px}
.rankings-columns,#rankings-list li{display:grid;grid-template-columns:44px minmax(0,1fr) 65px;gap:12px;align-items:center}
.rankings-columns{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#797768;padding-bottom:12px;border-bottom:1px solid #c9c7b7}.rankings-columns span:last-child{text-align:right}
#rankings-list{list-style:none;padding:0;margin:0}#rankings-list li{padding:17px 0;border-bottom:1px solid #e4dfd2;font-size:13px}
.ranking-position{font:24px var(--font-title);color:#797768}.ranking-name{overflow-wrap:anywhere;line-height:1.5}.ranking-count{text-align:right;font-variant-numeric:tabular-nums;color:#354d3d}
#rankings-status{font:18px/1.6 var(--font-title);color:#6c7064;margin:30px 0}#rankings-status:empty{display:none}
#rankings-retry{padding:10px 16px;border:1px solid #bdbfac;border-radius:3px;background:#f1f1e5}#rankings-retry[hidden]{display:none}
.rankings-note{font-size:11px;line-height:1.7;color:#797768;margin:23px 0 0}
#help{width:min(680px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:36px 40px;overflow:auto}
#dismiss-help{float:right;margin:-12px -16px 0 14px}#help h2{font-size:39px;line-height:1.08;margin:19px 0 13px;letter-spacing:-1.3px}
#help .help-intro{max-width:430px;margin:0 0 20px;font-size:13px;line-height:1.7}
#help .help-payment{border-left:2px solid #ae7252;background:#f3ecdf;padding:11px 14px;font-size:11px;line-height:1.6;margin:0 0 10px;color:#68573c}
#help .help-steps{list-style:none;padding:0;margin:0 0 12px}.help-steps li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:17px;padding:20px 0;border-bottom:1px solid #ded8c9}.help-step-number{font:24px var(--font-title);color:#a26448;padding-top:2px}
#help h3{font:22px/1.2 var(--font-title);letter-spacing:-.3px;margin:0 0 8px;color:#354d3d}#help .help-steps p{font-size:12px;line-height:1.7;margin:0;max-width:460px}
.help-details details{border-bottom:1px solid #ded8c9}.help-details summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 0;font-size:12px;color:#354d3d}.help-details summary::-webkit-details-marker{display:none}.help-details summary::after{content:'+';font-size:20px;font-weight:normal;color:#9a6148}.help-details details[open] summary::after{content:'−'}.help-details summary:focus-visible{outline:3px solid #577334;outline-offset:3px}
#help .help-details p,.help-controls{font-size:12px;line-height:1.7;margin:0 0 14px;color:#797768}.help-controls{display:grid;grid-template-columns:48px 1fr;gap:8px 12px}.help-controls dt{color:#354d3d}.help-controls dd{margin:0}
.help-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:24px}.help-footer>span{font:italic 16px/1.5 var(--font-title);color:#797768}.help-footer .primary{width:auto;gap:30px;padding:14px 18px;white-space:nowrap;font-size:12px}
.builder-dialog{border-radius:8px}.builder-dialog .builder{background:var(--paper);padding:30px}
.brick-preview{border-radius:4px;background:#eee8d9}
.piece-option{border-radius:4px}.piece-option[aria-pressed=true]{background:#e8e8d4;border-color:#777d54}
.piece-direction,.side-tabs button,.side-upload-row button{border-radius:3px}
.side-tabs button[aria-pressed=true]{background:#e8e8d4}
#account-dialog{background:#faf7ef;border-radius:5px;padding:34px;max-width:420px}
#account-dialog h2{font:32px/1.1 var(--font-title);margin:18px 0}
#account-dialog .eyebrow{font-size:8px;letter-spacing:1.4px}
.account-close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:24px}
.google-button{width:100%;padding:14px;border:1px solid #b8b2a3;background:white;border-radius:4px;font-size:14px;margin-top:14px}
.google-button:hover{background:#f3efe5}
#account-dialog .account-privacy{font-size:11px}
#account-dialog #my-bricks{display:block;width:100%;max-width:none;margin-top:14px;text-align:center}
#account-dialog #my-bricks[hidden]{display:none}
#auth-status{min-height:20px;font-size:12px}
#account-label{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#piece-info{position:fixed;inset:auto;margin:0;width:260px;padding:24px;border:1px solid #d7cebd;background:#faf7ef;color:#29382e;border-radius:4px;box-shadow:0 12px 40px #29382e22}
#piece-info h2{font:24px/1.2 var(--font-title);margin:13px 0;overflow-wrap:anywhere}
#piece-info p{font-size:11px;color:#6c7064;line-height:1.6;margin:5px 0}
#piece-info .eyebrow{font-size:8px;letter-spacing:1.2px}
#close-piece-info{position:absolute;right:9px;top:7px;border:0;background:none;font-size:22px}
@media(max-width:700px){.header-actions{gap:10px}#my-bricks{font-size:10px}#account-label{max-width:72px;font-size:11px}}
.corner-control label{background:#777c52}.shape-footer{border-color:#ddd4c1}
.placement-actions{border-radius:5px;background:var(--paper);box-shadow:var(--shadow)}
.change-brick,.cancel-build{background:var(--paper);border-radius:3px}
.spot-caption{background:#faf6eced;border-radius:3px;font-size:9px}
.toast{background:#354a3b;border-radius:4px;top:130px;font-size:11px}
@media(max-width:1050px){
 .build-dock{bottom:82px}.hint{bottom:153px}.world-bottom{left:25px;right:25px}
}
@media(max-width:700px){
 header{height:72px;padding:0 20px}.brand{font-size:17px;gap:8px}.brand-icon{width:28px;height:28px}.header-actions{gap:8px!important}.header-actions .account{padding:6px;gap:5px}.header-actions .text-button{font-size:10px}#account-label{max-width:56px}
 #rankings-dialog{padding:26px 22px}.eyebrow{font-size:8px;letter-spacing:1.8px}
 .workspace{height:calc(100dvh - 108px);min-height:640px}.world{min-height:640px}
 .world-tag{right:20px;top:29px;font-size:8px}.world-tag .sample-label{display:none}
 .world-location{top:55px;left:22px;right:auto;font-size:9px}.world-location button{padding:8px 10px}
 .build-dock{bottom:88px}.hint{bottom:157px;font-size:8px}.world-bottom{bottom:23px;justify-content:center}
 .preview-bar{min-height:36px;font-size:8px}.preview-bar strong{font-size:7px}
}
@media(max-width:700px){
 header{height:116px;flex-wrap:wrap;align-content:center;gap:7px!important;padding-block:10px!important}.header-left{width:100%}.header-actions{width:100%;justify-content:space-between;gap:10px!important}.header-actions #how{display:block}.header-actions .text-button{padding:10px 0}#my-bricks{max-width:none}.workspace{height:calc(100dvh - 152px)}
 .world-title{left:22px;top:26px;font-size:36px;letter-spacing:-1.6px}.world-location{top:118px}.area-status-chip{top:158px}
 .header-left{justify-content:space-between}#why{margin-left:12px}#why-dialog{padding:27px 26px}#close-why{margin:-10px -10px 0 12px}#why-dialog h2{font-size:41px}#why-dialog .why-lead{font-size:19px}.why-actions{gap:10px;flex-direction:column;align-items:stretch}.why-actions .primary{width:100%}
 #help{padding:27px 24px}#dismiss-help{margin:-10px -9px 0 12px}#help h2{font-size:33px}.help-steps li{grid-template-columns:28px minmax(0,1fr);gap:12px}.help-footer{align-items:stretch;flex-direction:column;gap:13px}.help-footer .primary{width:100%}.help-footer>span{font-size:15px}
}
/* Compact material swatches share the existing face-image controls. */
.texture-hint{font-size:12px;color:var(--muted);margin:12px 0 9px}
.texture-templates{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-bottom:12px}
.texture-templates button{min-width:0;border:1px solid var(--line);border-radius:9px;background:var(--control);padding:4px;color:inherit;cursor:pointer}
.texture-templates img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:5px}
.texture-templates span{display:block;font-size:10px;line-height:1.3;padding:6px 0 3px;min-height:30px}
.texture-templates button[aria-pressed="true"]{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.texture-templates button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.texture-templates button:disabled{opacity:.55;cursor:wait}
.texture-all{display:flex;align-items:center;gap:7px;font-size:12px;margin:0 0 15px;min-height:30px}

.live-status{display:block;font-size:11px;margin:4px 0;color:var(--muted)}
.live-status::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#b39868;margin-right:6px}
.live-status[data-mode="live"]::before{background:#60845c}

.ranking-seed{display:block;font-size:10px;color:#797768;font-weight:normal;margin-top:3px}

/* Keep canvas actions within reach, even when the canvas is taller than the screen. */
.world-bottom{
 position:fixed;z-index:4;
 left:max(24px,env(safe-area-inset-left));right:max(24px,env(safe-area-inset-right));
 bottom:calc(20px + env(safe-area-inset-bottom));
}
.world-bottom .world-note{
 padding:12px 16px;background:var(--paper);border:0;border-radius:8px;
 box-shadow:0 6px 24px #5241231a;
}
.world-bottom .zoom{background:var(--paper);box-shadow:0 6px 24px #5241231a}
.build-dock{
 position:fixed;z-index:5;bottom:calc(24px + env(safe-area-inset-bottom));
 max-width:calc(100vw - 32px);
}
.hint{position:fixed;z-index:4;bottom:calc(96px + env(safe-area-inset-bottom))}
.world:has(.area-selection:not([hidden])) .build-dock,
.world:has(.draft-dock:not([hidden])) .build-dock{bottom:calc(88px + env(safe-area-inset-bottom))}
@media(max-width:1150px){
 .build-dock{bottom:calc(88px + env(safe-area-inset-bottom))}
 .hint{bottom:calc(160px + env(safe-area-inset-bottom))}
}
@media(max-width:700px){
 .world-bottom{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom))}
 .world-bottom .world-note{display:none}
}

/* Recognition keeps the number and label visible alongside trophy color. */
#rankings-list .ranking-position{display:flex;align-items:center;flex-direction:column;gap:3px;font-size:18px}
.ranking-trophy{width:27px;height:31px;flex:none}
#rankings-list [data-trophy="gold"] .ranking-position{color:#93651b}
#rankings-list [data-trophy="silver"] .ranking-position{color:#626d77}
#rankings-list [data-trophy="bronze"] .ranking-position{color:#98532f}
#ranking-personal{font-size:12px;line-height:1.7;color:var(--deep);padding:14px 0;margin:0 0 12px;border-bottom:1px solid var(--line)}
#ranking-personal:empty{display:none}
#rankings-list .ranking-you{background:#eaf0e3}
.ranking-you-label{display:inline-block;margin-left:8px;font-size:10px;color:var(--deep)}
.admin-piece-actions:has(button:not([hidden])){border-top:1px solid var(--line);margin-top:14px;padding-top:4px}
#piece-info #admin-remove-piece{color:#973d31}
#admin-piece-dialog{width:min(440px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow:auto;padding:28px}
#admin-piece-dialog h2{margin:0 0 14px}
#admin-piece-note,#admin-piece-message{font-size:12px;line-height:1.7}
#admin-piece-message{color:#973d31}
#admin-coordinates[hidden]{display:none}
.admin-dialog-actions{display:flex;align-items:center;gap:12px;margin-top:20px}
.admin-dialog-actions .primary{width:auto;flex:1;justify-content:center}
.admin-dialog-actions .secondary{padding:14px;border:1px solid var(--line);background:transparent;border-radius:4px}

#piece-info{max-height:min(480px,calc(100dvh - 24px));overflow-y:auto}

/* Both building paths belong together beside the canvas. */
.build-choices{display:flex;gap:8px;align-items:stretch;padding:6px;background:var(--paper);border-radius:10px;box-shadow:0 8px 26px #52412320}
.build-choices[hidden]{display:none}
.build-choices #start-building{min-width:175px;gap:16px;box-shadow:none;border-radius:6px;padding:15px 18px;justify-content:space-between}
.area-choice{display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:12px 16px;border-radius:6px;text-align:left;font-size:12px;color:var(--ink)}
.area-choice:hover{background:#eee8d9}.area-choice svg{flex:none;width:22px;height:22px}
.area-choice small{display:block;font-size:10px;line-height:1.5;color:#596451;margin-top:3px}
@media(min-width:1151px) and (max-width:1400px){.world-bottom .world-note{display:none}}
@media(max-width:500px){
 .build-choices{gap:3px;width:calc(100vw - 24px);max-width:380px;padding:5px}
 .build-choices #start-building{min-width:0;flex:1;flex-direction:column;justify-content:center;gap:5px;padding:12px;font-size:12px}
 .area-choice{flex:1;padding:10px;gap:7px}.area-choice small{font-size:9px}.area-choice svg{width:18px;height:18px}
 .hint{bottom:calc(173px + env(safe-area-inset-bottom))}
}

/* SVG groups receive a rectangular native focus ring unless replaced. Keep
   mouse, touch and keyboard selection on the block's rendered silhouette. */
#scene [data-piece-id]:focus{outline:none}
#scene [data-piece-id]:focus > use,
#scene [data-piece-id][data-selected="true"] > use{filter:url(#piece-selection-outline)}

/* Keep the basic shape choices small; advanced controls are optional. */
#customizer{width:min(780px,calc(100% - 32px));max-height:92dvh;padding:0;overflow:hidden}
#customizer .builder{display:flex;flex-direction:column;max-height:92dvh;padding:24px 26px 0;overflow:hidden;border:0}
#customizer .builder-layout{display:grid;grid-template-columns:minmax(200px,.85fr) minmax(0,1.15fr);gap:26px;min-height:0;overflow:auto;margin-top:18px;padding-bottom:14px}
.builder-preview-column{position:sticky;top:0;align-self:start;background:var(--paper);z-index:2}
#customizer .builder-preview-column .brick-preview{margin:0 0 12px;min-height:205px}
#customizer .builder-preview-column .brick-preview svg{height:185px}
#customizer .piece-options{margin:0 0 18px}.builder-controls{min-width:0}
#customizer .stud-toggle{margin:18px 0;padding:12px;border:1px solid var(--line);border-radius:6px}
.more-options{border-top:1px solid var(--line);margin-top:18px}
.more-options summary{cursor:pointer;padding:16px 0;font-size:13px;font-weight:bold;min-height:44px}
.more-options summary span{display:block;font-size:11px;font-weight:normal;color:var(--muted);margin:6px 0 0 17px}
.advanced-controls{padding-top:6px}.advanced-controls .control-heading{font-size:12px}
#customizer .shape-footer{flex:none;position:relative;background:var(--paper);margin:0;padding:16px 0;gap:16px}
#customizer .shape-footer .primary{width:185px}#customizer #shape-price{font-size:14px}
#back-overview{font-size:11px;white-space:nowrap;padding:0 12px}#back-overview[hidden]{display:none}
.area-timing{max-width:440px;font-size:10px;line-height:1.5;color:var(--muted);margin:8px 0 2px}
#scene [data-area-handle]{cursor:nwse-resize;pointer-events:all;touch-action:none}
#scene [data-area-handle]:focus{outline:none;stroke:#2d523b;stroke-width:3}
@media(max-width:600px){
 #customizer{width:calc(100% - 16px);max-height:94dvh}#customizer .builder{max-height:94dvh;padding:16px 16px 0}
 #customizer h2{font-size:25px;margin-top:5px}#customizer .sub{font-size:11px}
 #customizer .builder-layout{display:block;margin-top:12px;overflow:auto}
 #customizer .builder-preview-column{top:0;padding-bottom:6px;box-shadow:0 5px 9px #faf7ef}
 #customizer .builder-preview-column .brick-preview{min-height:112px;margin:0}
 #customizer .builder-preview-column .brick-preview svg{height:112px}
 #customizer .builder-preview-column .brick-type{display:none}#customizer .piece-direction{margin:4px 0 6px;padding:5px}
 #customizer .piece-options{margin:8px 0 14px}#customizer .shape-footer{flex-direction:row;align-items:center;padding:12px 0}
 #customizer .shape-footer .primary{width:auto;min-width:145px;padding:13px 14px;gap:12px}#customizer #shape-hint{font-size:9px;max-width:155px}
 #piece-info{left:10px!important;right:10px!important;top:auto!important;bottom:10px;width:auto;max-height:42dvh;border-radius:14px 14px 6px 6px;padding:20px;box-shadow:0 -8px 35px #29382e25}
 #close-piece-info{min-width:44px;min-height:44px;top:2px;right:2px}
 .area-timing{max-width:310px}.zoom:has(#back-overview:not([hidden])){gap:0}.zoom #back-overview{font-size:10px;padding:0 6px;max-width:75px;white-space:normal;line-height:1.15}
}
