.piotrus-shell [hidden]{display:none!important}.piotrus-shell .workspace{align-items:stretch}.piotrus-shell #editor{min-height:0;overflow:auto}.piotrus-shell .piotrus-preview{min-height:0;position:relative;display:flex;flex-direction:column}.p-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;gap:20px;padding:16px 0}.p-stage canvas{width:auto;height:auto;max-width:calc(100% - 100px);max-height:100%;object-fit:contain;filter:drop-shadow(0 8px 12px #17203322)}.p-card-nav{font-size:38px;border:1px solid var(--line);border-radius:50%;width:42px;height:42px;background:white;flex-shrink:0}.piotrus-preview>p{text-align:center;margin:6px}.piotrus-preview h2{font-size:15px}.p-spec{background:var(--surface);padding:16px;border-radius:8px}.p-spec p{font-size:13px;margin:6px 0 0;color:#647087}.piotrus-shell h3{font-size:15px;margin:20px 0 12px}.p-upload-icon{font-size:36px;width:51px;text-align:center;color:var(--red)}.p-return{display:block;margin-top:8px}.piotrus-shell #controls label{display:block;font-size:13px;margin:12px 0 6px}.piotrus-shell #controls p{font-size:12px;color:#647087;margin:8px 0}.piotrus-shell #controls button{border:1px solid var(--line);border-radius:5px;padding:10px 12px;margin:4px 4px 4px 0}.piotrus-shell #controls #upload{background:var(--red);color:white;width:100%;font-weight:600}.piotrus-shell details{font-size:13px;margin:10px 0}.piotrus-shell summary{cursor:pointer;padding:6px 0}.piotrus-shell #status{font-size:12px;color:#8f1621;margin:10px 0}.piotrus-sheet{width:min(1200px,95vw)}.piotrus-sheet>div.p-sheet-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:10px}.piotrus-sheet img{width:100%}.p-theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px}.p-theme-grid button{border:1px solid var(--line);border-radius:10px;padding:16px;text-align:center}.p-theme-grid button:hover{border-color:var(--red);background:#fff8f8}.p-theme-grid img{width:100%;height:240px;object-fit:contain}.p-theme-grid strong,.p-theme-grid small{display:block;margin-top:10px}.p-theme-grid small{color:#647087}@media(min-width:761px){.piotrus-shell .workspace{height:calc(100dvh - 235px);min-height:380px}.piotrus-shell .p-stage{height:0}.piotrus-shell .piotrus-preview{height:100%}}@media(max-width:760px){.p-stage{height:360px;flex:auto}.p-theme-grid{grid-template-columns:1fr}.p-theme-grid img{height:180px}.piotrus-sheet>div.p-sheet-grid{grid-template-columns:repeat(4,1fr)}}
.piotrus-shell #card-3d-editor[open]{display:flex;flex-direction:column}
.piotrus-box-3d[open]{display:flex;flex-direction:column;width:min(1000px,95vw);height:min(900px,94dvh);overflow:hidden}
.piotrus-box-3d .dialog-heading{flex-shrink:0;gap:16px}.piotrus-box-3d .dialog-heading p{font-size:12px;color:#647087;margin:8px 0}
.piotrus-box-3d #box-stage{flex:1;min-height:0;width:100%;height:auto;display:flex;position:relative;margin:12px 0 0}
.piotrus-box-3d #box-stage .box-3d{width:100%;height:100%;display:flex;flex-direction:column}
.piotrus-box-3d #box-stage .box-3d-viewport{flex:1;min-height:0}

/* Keep the close action visible and scroll only the gallery, including short viewports. */
.piotrus-theme-picker[open],.piotrus-sheet[open]{display:flex;flex-direction:column;max-height:calc(100dvh - 32px);height:min(860px,calc(100dvh - 32px));overflow:hidden;gap:12px}
.piotrus-theme-picker>.dialog-heading,.piotrus-sheet>.dialog-heading,.piotrus-theme-picker>p{flex-shrink:0;margin:0}
.piotrus-theme-picker>.p-theme-grid,.piotrus-sheet>.p-sheet-grid{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-gutter:stable;align-content:start;grid-auto-rows:max-content;margin:0;padding:4px 10px 12px 4px}
.piotrus-theme-picker .p-theme-grid>button{min-height:310px;flex-shrink:0}
@media(max-width:760px){.piotrus-theme-picker[open],.piotrus-sheet[open]{max-height:calc(100dvh - 16px);height:calc(100dvh - 16px);padding:14px}.piotrus-theme-picker .p-theme-grid>button{min-height:250px}}
