/* One theme: every material below inherits Phillbook's core appearance tokens. */
html[data-page="sandbox"] #main{max-width:none;padding:28px;min-width:0}
.phill-sandbox{--paper:var(--surface);--green:var(--accent);--green-dark:var(--accent-hover);--soft:var(--surface-alt);--amber:var(--accent);--purple:var(--accent);--radius:12px;color:var(--ink);min-width:0}
.phill-sandbox .sb-intro{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:26px}
.phill-sandbox .sb-intro h1{font-size:clamp(28px,3.4vw,48px);letter-spacing:-.055em;line-height:1.08;margin:10px 0 12px;font-weight:650}
.phill-sandbox .sb-intro h1 span{color:var(--accent)}
.phill-sandbox .sb-intro p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.6}
.phill-sandbox .eyebrow{color:var(--accent);letter-spacing:.14em;font-size:10px;font-weight:700}
.phill-sandbox .sb-entry-actions{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0}
.phill-sandbox .button{min-height:42px;border:1px solid var(--line);border-radius:10px;padding:10px 15px;color:var(--ink);font-size:13px;display:inline-flex;gap:10px;align-items:center;justify-content:center}
.phill-sandbox .button.primary,.phill-sandbox .primary-button{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}
.phill-sandbox .sb-workbench{position:relative;border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}
.phill-sandbox .sb-world-nav{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--line);gap:12px}
.phill-sandbox .sb-world-nav>span{font-size:10px;font-weight:650;letter-spacing:.09em;color:var(--muted)}
.phill-sandbox .sb-world-nav>div{display:flex;gap:5px;flex-wrap:wrap}
.phill-sandbox .sb-world-nav button{padding:9px 12px;border-radius:8px;border:1px solid transparent;font-size:12px;color:var(--ink)}
.phill-sandbox .sb-world-nav button[aria-expanded="true"],.phill-sandbox .sb-world-nav button[aria-pressed="true"]{background:var(--accent-soft);color:var(--accent);border-color:var(--line)}
.phill-sandbox .studio-shell{min-height:0;background:var(--surface);max-width:none}
.phill-sandbox[data-mode="watch"] .studio-shell{display:flex;flex-direction:column}
.phill-sandbox[data-mode="watch"] .studio-header{order:3;border-top:1px solid var(--line)}
.phill-sandbox[data-mode="watch"] .studio-footer{order:4}
.phill-sandbox[data-mode="watch"] .canvas-column{display:flex;flex-direction:column}
.phill-sandbox[data-mode="watch"] .viewport{order:0}
.phill-sandbox[data-mode="watch"] .canvas-status{order:1}
.phill-sandbox[data-mode="watch"] .canvas-toolbar{order:2}
.phill-sandbox[data-mode="watch"] .offline-strip{order:3}
.phill-sandbox[data-mode="watch"] .offline-notice{order:4}
.phill-sandbox .world-picker-wrap,.phill-sandbox .world-meta{min-width:0;max-width:100%;flex-wrap:wrap}
.phill-sandbox .world-picker-wrap{flex:1;display:grid;grid-template-columns:auto minmax(100px,260px) minmax(80px,1fr);align-items:center}
.phill-sandbox .world-picker-wrap .sr-only{position:absolute}
.phill-sandbox .world-picker-wrap select{width:100%}
.phill-sandbox .world-picker-wrap select{min-width:0;max-width:min(320px,100%)}
.phill-sandbox[data-mode="watch"] .world-bar{display:grid;grid-template-columns:minmax(0,1fr) auto}
.phill-sandbox[data-mode="watch"] .world-picker-wrap{display:flex;flex-wrap:nowrap;max-width:100%}
.phill-sandbox[data-mode="watch"] .world-symbol,.phill-sandbox[data-mode="watch"] #fork-button,.phill-sandbox[data-mode="watch"] #seed-label{display:none}
.phill-sandbox[data-mode="watch"] .world-picker-wrap select{width:100%;max-width:450px}
.phill-sandbox .studio-header .text-button{font-size:12px;padding:6px 10px;gap:8px}
.phill-sandbox .studio-header #export-button{display:flex;font-size:12px}
.phill-sandbox .sb-context,.phill-sandbox .sb-gallery{min-width:0}
.phill-sandbox .studio-header{height:auto;min-height:54px;padding:10px 18px;border:0}
.phill-sandbox .studio-header .header-actions{margin:0;flex-wrap:wrap;width:100%;justify-content:flex-end}
.phill-sandbox .world-bar{padding:10px 18px;height:auto;min-height:52px;flex-wrap:wrap;gap:12px}
.phill-sandbox .sb-workspace{display:grid;grid-template-columns:minmax(0,1fr);min-width:0}
.phill-sandbox .build-panel,.phill-sandbox .inspect-panel{display:none}
.phill-sandbox .show-build .sb-workspace{grid-template-columns:260px minmax(0,1fr)}
.phill-sandbox .show-build .build-panel{display:block}
.phill-sandbox .show-inspect .sb-workspace{grid-template-columns:minmax(0,1fr) 300px}
.phill-sandbox .show-inspect .inspect-panel{display:block}
.phill-sandbox .show-build.show-inspect .sb-workspace{grid-template-columns:240px minmax(0,1fr) 290px}
.phill-sandbox .canvas-column{min-width:0;background:var(--bg)}
.phill-sandbox .viewport{height:clamp(440px,65vh,800px);min-height:400px;background:var(--bg)}
.phill-sandbox .canvas-toolbar{height:auto;min-height:54px;padding:10px 18px;flex-wrap:wrap;gap:8px}
.phill-sandbox .review-banner{padding:10px 18px;min-height:48px;background:var(--surface);flex-wrap:wrap}
.phill-sandbox .review-banner span,.phill-sandbox .canvas-status,.phill-sandbox .canvas-hint{font-size:11px;color:var(--muted)}
.phill-sandbox .review-banner strong{font-size:12px;color:var(--ink)}
.phill-sandbox[data-mode="watch"] .review-banner,.phill-sandbox[data-mode="watch"] .console-section,.phill-sandbox[data-mode="watch"] .simulation-controls{display:none}
.phill-sandbox .text-button,.phill-sandbox .secondary-button,.phill-sandbox .icon-button{color:var(--ink);font-size:12px}
.phill-sandbox input,.phill-sandbox select,.phill-sandbox textarea{background:var(--bg);color:var(--ink);border:1px solid var(--line);font-size:13px}
.phill-sandbox label,.phill-sandbox .form-note,.phill-sandbox .inventory-title small,.phill-sandbox .filter-note{font-size:12px;color:var(--muted);line-height:1.6}
.phill-sandbox .inventory-title strong{font-size:13px;color:var(--ink)}
.phill-sandbox .scene-mode-badge,.phill-sandbox .viewport-controls{background:var(--app-material-nav,var(--surface));color:var(--ink);border:1px solid var(--line);backdrop-filter:var(--app-material-blur)}
.phill-sandbox .canvas-hint{background:var(--surface);padding:7px 9px;border-radius:8px;max-width:75%}
.phill-sandbox .offline-strip{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 18px;background:var(--surface);color:var(--muted)}
.phill-sandbox .offline-strip input{flex:1;min-width:100px;width:auto;accent-color:var(--accent)}
.phill-sandbox .offline-notice{font-size:11px;padding:8px 18px;color:var(--muted);background:var(--surface)}
.phill-sandbox dialog{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:18px;max-width:min(720px,calc(100vw - 28px));max-height:85dvh;overflow:auto}
.phill-sandbox dialog::backdrop{background:#0009;backdrop-filter:blur(5px)}
.phill-sandbox .agent-access>*:not(h3):not(.form-note){display:none}
.phill-sandbox .sb-ecosystem{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);gap:30px;margin-top:32px}
.phill-sandbox h2{font-size:22px;letter-spacing:-.04em;margin:9px 0 12px}
.phill-sandbox .sb-section-title{display:flex;justify-content:space-between;align-items:center}
.phill-sandbox .sb-gallery-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.phill-sandbox .sb-empty{padding:24px;border:1px dashed var(--line);border-radius:14px;font-size:14px;line-height:1.8;color:var(--muted)}
.phill-sandbox .sb-world-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;display:grid;gap:12px}
.phill-sandbox .sb-world-card>span{font-size:10px;color:var(--accent);letter-spacing:.1em}
.phill-sandbox .sb-world-card h3{font-size:18px;overflow-wrap:anywhere}
.phill-sandbox .sb-world-card p,.phill-sandbox .sb-context>p:not(.eyebrow),.phill-sandbox .sb-sharing p{font-size:13px;line-height:1.7;color:var(--muted)}
.phill-sandbox .sb-world-card strong{font-size:12px;color:var(--accent)}
.phill-sandbox .sb-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.phill-sandbox .sb-links a{display:flex;align-items:center;gap:9px;font-size:12px;padding:12px 0}
.phill-sandbox .sb-sharing{margin-top:16px;border-top:1px solid var(--line);padding-top:16px}
.phill-sandbox .sb-sharing summary{cursor:pointer;font-weight:600}
.phill-sandbox .sb-sharing p{margin:12px 0}
.phill-sandbox .sb-footnote{font-size:12px;line-height:1.7;color:var(--muted);margin-top:26px}
.phill-sandbox .sb-expanded{position:fixed;inset:8px;z-index:2000;overflow:auto;border-radius:14px}
.phill-sandbox .sb-expanded .viewport{height:calc(100dvh - 260px)}
body.sb-focus-open{overflow:hidden}
@media(max-width:960px){html[data-page="sandbox"] .site-header .header-search{display:none}html[data-page="sandbox"] .site-header{gap:10px}html[data-page="sandbox"] .site-header .header-actions{min-width:0;margin-left:auto}}
.phill-sandbox :focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.phill-sandbox .sb-intro{margin-bottom:20px;gap:16px}
.phill-sandbox .sb-intro h1{font-size:clamp(28px,3vw,38px);margin:5px 0 6px}
.phill-sandbox .sb-intro p{margin:0}
.phill-sandbox .sb-workspace{min-height:0}
.phill-sandbox .viewport{height:clamp(420px,64dvh,760px)}
.phill-sandbox .blank-message{max-width:360px;width:calc(100% - 40px);padding:26px 20px;gap:0;border:1px solid var(--line);border-radius:20px;background:var(--app-material-nav,var(--surface));backdrop-filter:var(--app-material-blur);pointer-events:none}
.phill-sandbox .blank-message h2{font-size:25px;letter-spacing:-.045em;margin:17px 0 8px;color:var(--ink)}
.phill-sandbox .blank-message p{font-size:13px;line-height:1.7;margin:0 0 20px;color:var(--muted)}
.phill-sandbox .blank-message .button{pointer-events:auto;cursor:pointer;min-width:170px}
.phill-sandbox .blank-message small{display:block;font-size:10px;color:var(--muted);margin-top:15px}
.phill-sandbox .sb-blank-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;background:var(--accent-soft);color:var(--accent);font-size:23px;font-weight:400}
.phill-sandbox[data-mode="watch"].sb-no-world .world-bar,.phill-sandbox.sb-no-world .review-banner,.phill-sandbox.sb-no-world .simulation-controls{display:none}
.phill-sandbox .studio-footer{min-height:36px;height:auto;padding:10px 18px}
.phill-sandbox .sb-guide{margin-top:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;scroll-margin-top:100px}
.phill-sandbox .sb-guide summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--ink)}
.phill-sandbox .sb-guide summary>span{float:right;color:var(--muted);font-size:12px;font-weight:400}
.phill-sandbox .sb-guide-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:26px 0 6px}
.phill-sandbox .sb-guide-steps section>span{font-size:10px;letter-spacing:.09em;color:var(--accent)}
.phill-sandbox .sb-guide-steps h3{font-size:15px;margin:10px 0}
.phill-sandbox .sb-guide-steps p{font-size:12px;line-height:1.8;color:var(--muted)}
.phill-sandbox #sb-worlds{scroll-margin-top:100px}
@media(max-width:740px){.phill-sandbox .sb-guide-steps{grid-template-columns:1fr 1fr;gap:22px 16px}.phill-sandbox .sb-guide summary>span{display:none}.phill-sandbox .canvas-hint{display:none}.phill-sandbox .viewport{height:62dvh;min-height:440px}.phill-sandbox .blank-message{padding:22px 12px;max-width:280px}.phill-sandbox .sb-intro h1{font-size:32px}.phill-sandbox .sb-world-nav{padding:12px}.phill-sandbox .sb-world-nav>div{width:100%;justify-content:space-between}}
@media(max-width:1100px){html[data-page="sandbox"] #main{padding:20px}.phill-sandbox .sb-intro{align-items:flex-start;flex-direction:column}.phill-sandbox .show-build.show-inspect .sb-workspace{grid-template-columns:230px minmax(0,1fr)}.phill-sandbox .show-build.show-inspect .inspect-panel{grid-column:1/-1}.phill-sandbox .sb-ecosystem{gap:20px}}
@media(max-width:740px){html[data-page="sandbox"] #main{padding:14px}.phill-sandbox .sb-intro h1{font-size:34px}.phill-sandbox .sb-ecosystem{grid-template-columns:1fr}.phill-sandbox .sb-workspace,.phill-sandbox .show-build .sb-workspace,.phill-sandbox .show-inspect .sb-workspace,.phill-sandbox .show-build.show-inspect .sb-workspace{display:flex;flex-direction:column}.phill-sandbox .canvas-column{order:0}.phill-sandbox .build-panel{order:1}.phill-sandbox .inspect-panel{order:2}.phill-sandbox .sb-world-nav{align-items:flex-start;flex-direction:column}.phill-sandbox .viewport{height:55dvh;min-height:350px}.phill-sandbox .offline-strip{padding:10px}.phill-sandbox .offline-strip input{order:5;flex-basis:100%}.phill-sandbox .view-switch button{font-size:11px}.phill-sandbox .sb-expanded{inset:0;border-radius:0}.phill-sandbox .sb-links{grid-template-columns:1fr 1fr}}
