:root { --bg:#171c14;--panel:#22291e;--panel-2:#2b3425;--panel-3:#36402e;--line:#424d37;--muted:#bcc3ad;--dim:#959e85; }
#topbar { gap:8px; } .brand span {display:none;} .brand-logo {max-width:160px;}
.topbar-actions {align-items:center;gap:7px;} .btn {border-radius:6px;padding:7px 11px;}
.project-menu {position:relative;}.project-menu>summary {list-style:none;cursor:pointer;}
.project-menu-items {position:absolute;right:0;top:42px;z-index:40;min-width:215px;padding:10px;display:grid;gap:7px;background:var(--panel);border:1px solid var(--line-2);border-radius:8px;box-shadow:0 8px 30px #0008;}
.project-menu-items .btn {display:block!important;text-align:left;text-decoration:none;}
.builder-tip {margin:2px 12px 12px;color:var(--muted);font-size:12px;}
.quiet-details {border-top:1px solid var(--line);padding:10px 0;margin-top:10px;}
.quiet-details>summary {cursor:pointer;color:var(--muted);font-weight:600;}
.quiet-details .section {border:0;padding:10px 0;}.quiet-details .buildlist h2 {font-size:12px;}
#right>.scroll {padding-bottom:60px;}.item {border-radius:7px;padding:9px;gap:6px;}.item .thumb {max-height:105px;}
.simple-ui .item .meta>span:first-child,.simple-ui .item .tag,.simple-ui .cat-group h3 small {display:none;}
.simple-ui #sumExtra,.simple-ui #hammers {font-size:12px;}
.simple-ui #viewTools #btnLabels,.simple-ui #viewTools #btnLight,.simple-ui #viewTools #btnBackdrop,.simple-ui #toggleRings,.simple-ui #coords {display:none;}
.simple-ui #hint {display:none;}.simple-ui #rules {opacity:.85;}
.simple-ui .stat:not(.build) {display:none;}.simple-ui .stat-grid {grid-template-columns:1fr;}
.simple-ui #actDup,.simple-ui #actMirror {display:none;}
#topBody .blist {grid-template-columns:1fr;}#topBody .lcols h3 {margin:12px 0;}
@media(max-width:860px){.brand{display:none;}#planName{font-size:14px;max-width:100px;}#topbar{padding:0 6px;gap:4px;}.topbar-actions{gap:4px;}.topbar-actions>.btn,.project-menu>summary{padding:6px;font-size:12px;}#btnHelp{display:none;}#btnAccount{max-width:85px;overflow:hidden;text-overflow:ellipsis;}.project-menu-items{left:0;right:auto;} }
@media(max-width:480px){#planName{display:none;} .topbar-actions{margin-left:0;flex:1;justify-content:space-between;}}

/* Keep popovers above the canvas, and keep every tool reachable without a keyboard. */
#topbar { position:relative; z-index:35; overflow:visible; }
#topbar {padding-left:max(6px,env(safe-area-inset-left));padding-right:max(6px,env(safe-area-inset-right));}
.project-menu-items { max-height:calc(100dvh - 76px); overflow-y:auto; }
html, body { height:100%; height:100dvh; }
body {padding-top:env(safe-area-inset-top,0px);}
.modal .box { max-height:calc(100dvh - 24px); }
.modal .box header { z-index:1; }
.modal input,.modal textarea,.modal select { max-width:100%; }
.toast { max-width:calc(100vw - 24px); overflow-wrap:anywhere; }
#drawerShade { display:none; }
.drawer-close { display:none; }
.touch-tools { display:none; }
.touch-tools:has([aria-pressed="true"]) {display:flex;}
@media(max-width:1100px) {
  #app { grid-template-columns:1fr; grid-template-rows:52px 1fr; }
  #viewport { grid-column:1; grid-row:2; }
  .brand {display:none;}
  .mobile-only {display:inline-block;}
  #topbar {padding:0 6px; gap:4px;}
  #planName {max-width:160px;}
  aside {position:absolute;top:52px;bottom:0;width:min(340px,88vw);z-index:32;visibility:hidden;transform:translateX(-102%);box-shadow:0 0 30px #0008;}
  #left {left:0;} #right {right:0;transform:translateX(102%);}
  aside.open,#right.open {visibility:visible;transform:translateX(0);}
  .drawer-close {display:block;margin:8px;align-self:flex-end;}
  #drawerShade.active {display:block;position:absolute;inset:52px 0 0;z-index:31;background:#0005;border:0;}
  #toolbar {left:0;right:0;bottom:env(safe-area-inset-bottom,0px);max-width:100%;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding:6px 8px 10px;scrollbar-width:thin;background:linear-gradient(transparent,#171c14 25%);}
  #toolbar {padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right));}
  .tb-group,.tb-select {flex-shrink:0;}
  #hint,#coords {display:none;}
  #btnFeedback {bottom:calc(66px + env(safe-area-inset-bottom,0px));right:8px;}
  #status {max-width:calc(100% - 16px);}
  .btn,.btn.icon,#viewTools .btn {min-height:44px;min-width:44px;}
  .topbar-actions {gap:4px;min-width:0;}
  .topbar-actions>.btn,.project-menu>summary {padding:8px 6px;font-size:12px;}
  #btnAccount {max-width:88px;overflow:hidden;text-overflow:ellipsis;}
  .project-menu-items {left:0;right:auto;top:46px;}
  .project-menu-items .btn {min-height:44px;}
  #viewTools {top:48px;left:8px;right:8px;flex-wrap:wrap;justify-content:flex-end;}
  #rules {top:100px;left:8px;right:8px;justify-content:flex-end;}
  #rules .tb-group {flex-wrap:nowrap;}
  #radiusWrap input[type=range] {width:70px;min-height:44px;}
  #status {top:6px;left:8px;right:8px;max-height:38px;overflow:auto;font-size:12px;}
  .touch-tools {display:flex;}
  input,textarea,select,.tb-select select {font-size:16px;}
  .lib-row {grid-template-columns:48px minmax(0,1fr);}
  .lib-row .acts {grid-column:1/-1;flex-wrap:wrap;}
  .modal .box header {flex-wrap:wrap;gap:8px;}
  .modal .box header .acct-tabs {width:100%;order:3;overflow-x:auto;}
}
@media(max-width:480px) {
  #btnExplore {font-size:0;min-width:52px;}#btnExplore::after {content:'Explore';font-size:12px;}
  #btnAccount {max-width:65px;}
  #topbar .btn.icon {min-width:36px;}
  .modal {padding:6px;}.modal .box {max-height:calc(100dvh - 12px);}
  .bcard {min-width:0;}.bcard h3 {overflow-wrap:anywhere;}
}
@media(max-width:350px) {
  .project-menu>summary {font-size:0;min-width:44px;}
  .project-menu>summary::after {content:'Menu';font-size:12px;}
  #btnAccount {max-width:54px;}
}
@media(max-height:500px) and (max-width:1100px) {
  #status {right:175px;}
  #viewTools {top:6px;left:auto;}
  #rules {top:56px;}
  #btnFeedback {font-size:11px;min-height:36px;bottom:66px;}
}
@media(pointer:coarse) { .touch-tools {display:flex;} button,summary,select {touch-action:manipulation;} }
@media(min-width:1101px) and (max-width:1400px) {
  #status {left:10px;right:10px;max-width:none;max-height:34px;overflow:auto;}
  #viewTools {top:52px;}
  #rules {top:94px;}
}
@media(max-width:1100px) {
  #topbar {padding-left:max(6px,env(safe-area-inset-left));padding-right:max(6px,env(safe-area-inset-right));}
  #feedbackForm input,#feedbackForm select,#feedbackForm textarea {font-size:16px;}
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after {scroll-behavior:auto!important;transition:none!important;} }
