/* The workshop stays inside the game's shared navigation and session shell. */
.contenido:has(.pose-studio){max-width:1440px;width:100%;padding:24px 32px 40px}
.pose-studio{--studio-green:#285d4b;--studio-muted:#647269;--studio-line:#e2e6db;color:#2c4438;font-size:16px}
.pose-studio button,.pose-studio select{font:inherit;color:inherit;cursor:pointer;min-height:48px;border-radius:12px;border:1px solid var(--studio-line);background:#fff}
.pose-studio button{padding:10px 14px;font-weight:650;transition:background .15s,box-shadow .15s}
.pose-studio button:hover{background:#edf2e8}.pose-studio button:focus-visible,.pose-studio select:focus-visible,.pose-studio input:focus-visible{outline:3px solid #487bda;outline-offset:3px}
.pose-studio button:disabled{opacity:.45;cursor:default}.pose-studio h1,.pose-studio h2,.pose-studio p{margin:0}.pose-studio h2{font-size:17px;letter-spacing:-.3px}.pose-studio p{color:var(--studio-muted)}
.studio-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.back-link{font-size:14px;text-decoration:none;color:var(--studio-muted);display:inline-flex;min-height:32px;align-items:center}.studio-heading h1{font-size:34px;letter-spacing:-1.4px;line-height:1.2;margin:5px 0 8px}.studio-heading h1 span{font-size:27px}.studio-heading p{font-size:15px}
.pose-studio .primary{background:var(--studio-green);color:#fff;border-color:var(--studio-green);box-shadow:0 4px 0 #193e32;padding:13px 22px}.pose-studio .primary:hover{background:#34705b}.studio-button.subtle{background:#f7f8f3;width:100%;font-size:14px}
.studio-workspace{display:grid;grid-template-columns:172px minmax(0,1fr) 260px;min-height:530px;border:1px solid var(--studio-line);border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 8px 28px #46513c08}
.pose-presets{padding:24px 16px;border-right:1px solid var(--studio-line);background:#fffefa}.step-dot{display:inline-grid;place-items:center;width:24px;height:24px;background:#edf0df;color:#5b744c;border-radius:50%;margin-right:3px;font-size:13px}.pose-presets>p{font-size:14px;margin:8px 0 20px}.preset-list{display:grid;gap:10px}.preset-list button{display:flex;align-items:center;gap:12px;text-align:left;min-height:70px!important}.preset-list button>span{font-size:27px}.pose-studio [aria-pressed=true]{background:#edf4e6;border-color:#92b17b;color:#31542a;box-shadow:inset 0 0 0 1px #92b17b}.preset-note{display:flex;gap:8px;margin-top:25px}.preset-note>span{color:#bda342}.preset-note p{font-size:13px;line-height:1.6}
.stage-column{min-width:0;display:flex;flex-direction:column}.stage{position:relative;flex:1;min-height:460px;background:radial-gradient(ellipse at 50% 55%,#f4f7e6,#e9eedc 85%);overflow:hidden;isolation:isolate}.stage-label{position:absolute;top:20px;left:22px;display:flex;align-items:center;gap:8px;z-index:2;pointer-events:none}.stage-label strong{font-size:20px;letter-spacing:-.6px}.pokemon-number{font-size:13px;color:#63735c}.electric-tag{font-size:12px;background:#fff6c3;border:1px solid #e9dca1;border-radius:7px;padding:3px 6px}.stage-top-actions{position:absolute;right:14px;top:14px;z-index:3}.stage-top-actions button{background:#ffffffb5;font-size:14px;padding:8px 10px}
#canvas-host{position:absolute;inset:0}#canvas-host canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}.stage-loading{position:absolute;inset:0;display:grid;place-items:center;background:#edf0e2;z-index:8;padding:36px;text-align:center}.stage-loading.error{background:#fff3d4}
#joint-handles{position:absolute;inset:0;pointer-events:none;z-index:2}.pose-studio .joint-handle{position:absolute;pointer-events:auto;padding:0;width:48px;height:48px;min-height:48px;border:0;background:transparent!important;transform:translate(-50%,-50%);touch-action:none;box-shadow:none;border-radius:50%}.joint-handle::after{content:'';display:block;width:13px;height:13px;background:#fff;border:3px solid #5b996f;border-radius:50%;margin:auto;box-shadow:0 2px 6px #25382830}.joint-handle.selected::after{width:18px;height:18px;background:#fff2a2;border-color:#4173cf;box-shadow:0 0 0 5px #ffffff80}.joint-handle:hover::after{transform:scale(1.2)}
.stage-hint{position:absolute;bottom:17px;left:8px;right:8px;text-align:center;font-size:13px;pointer-events:none}
.stage-toolbar{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:10px 12px;border-top:1px solid var(--studio-line);background:#fffefa}.mode-buttons{display:flex;gap:4px}.stage-toolbar button{font-size:18px;padding:9px;display:flex;gap:6px;align-items:center;justify-content:center;border-color:transparent}.stage-toolbar span{font-size:13px}
.pose-details{padding:24px 20px;border-left:1px solid var(--studio-line)}.field-label{display:block;font-size:14px;margin:20px 0 8px}.pose-details select{width:100%;padding:10px 12px;background:#f9faf6}.slider-control{margin-top:14px}.slider-control label{font-size:14px;font-weight:600}.slider-control>div{display:flex;justify-content:space-between;font-size:12px;color:var(--studio-muted)}.slider-control input{width:100%;height:32px;cursor:pointer;accent-color:#3f7556;touch-action:pan-y;margin:0}.face-picker{border:0;margin:21px 0 0;padding:0}.face-picker legend{font-size:14px;font-weight:650;margin-bottom:9px}.face-picker>div{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.face-picker button{display:flex;flex-direction:column;align-items:center;padding:6px 2px;font-size:11px;min-width:0}.face-picker button span{font-size:25px}.tail-shortcuts{display:flex;align-items:center;gap:5px;font-size:14px;margin:16px 0}.tail-shortcuts>span{margin-right:auto}.tail-shortcuts button{font-size:13px;padding:7px}
.studio-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0 25px}.studio-footer p{font-size:14px}.studio-footer button{font-size:14px;background:transparent}.saved-section{display:flex;gap:30px;align-items:center;border-top:1px solid var(--studio-line);padding-top:22px}.saved-section>div:first-child{flex-shrink:0}.saved-section h2{font-size:18px}.saved-section p{font-size:13px;margin-top:5px}#saved-poses{display:flex;gap:10px;overflow-x:auto;padding:3px;min-width:0}.empty-poses{border:1px dashed #cbd6c0;border-radius:12px;padding:20px 30px}.saved-card{position:relative;flex-shrink:0}.pose-studio .saved-load{padding:4px;display:flex;flex-direction:column;align-items:center;width:108px;font-size:12px}.saved-load img{width:98px;height:74px;object-fit:cover;border-radius:8px}.pose-studio .saved-delete{position:absolute;right:0;top:0;min-height:48px;width:48px;padding:0;background:transparent;border:0;box-shadow:none;color:#2c4438;font-size:20px;text-shadow:0 1px 2px white}
@media(min-width:1400px){.stage{min-height:550px}.pose-details{padding:28px 22px}.studio-workspace{grid-template-columns:185px minmax(0,1fr) 280px}}
@media(max-width:1100px){.contenido:has(.pose-studio){padding:18px}.studio-workspace{grid-template-columns:130px minmax(0,1fr) 230px}.pose-presets{padding:20px 10px}.pose-presets h2{font-size:14px}.pose-details{padding:20px 14px}.stage-label{top:18px;left:12px}.electric-tag{display:none}.stage-top-actions button span{display:none}.stage-toolbar span{display:none}.stage-toolbar button{min-width:48px}.preset-list button{padding:10px;gap:6px;font-size:14px}}
@media(max-width:800px){.studio-heading h1{font-size:28px}.studio-workspace{grid-template-columns:minmax(0,1fr) 235px}.pose-presets{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--studio-line);padding:14px 16px}.pose-presets h2{font-size:16px}.pose-presets>p,.preset-note{display:none}.preset-list{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.preset-list button{min-height:54px!important;justify-content:center}.stage{min-height:510px}.saved-section{gap:16px}}
@media(max-width:560px){.contenido:has(.pose-studio){padding:14px 10px 30px}.studio-heading{align-items:flex-start;gap:6px;margin-bottom:15px}.studio-heading h1{font-size:26px}.studio-heading h1 span{display:none}.studio-heading p{font-size:13px;max-width:185px}.pose-studio .primary{padding:10px;font-size:13px;max-width:125px;align-self:center}.studio-workspace{display:flex;flex-direction:column;border-radius:18px}.preset-list button{flex-direction:column;gap:0;font-size:12px;padding:6px}.preset-list button>span{font-size:24px}.stage{min-height:410px}.stage-toolbar span{display:inline;font-size:11px}.stage-toolbar button{padding:7px;gap:3px}.stage-toolbar{padding:8px}.stage-toolbar #undo span{display:none}.pose-details{border-left:0;border-top:1px solid var(--studio-line);display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px}.pose-details h2,.pose-details .field-label,.pose-details select,.face-picker,.tail-shortcuts,.pose-details>.subtle{grid-column:1/-1}.pose-details .field-label{margin:0}.slider-control{margin:0}.slider-control:nth-of-type(3){grid-column:1/-1}.face-picker{margin-top:0}.face-picker button{font-size:13px}.face-picker button span{font-size:27px}.tail-shortcuts{margin:0}.studio-footer{margin-bottom:18px}.studio-footer p{font-size:13px}.studio-footer button{flex-shrink:0;padding:8px}.saved-section{align-items:flex-start;flex-direction:column;gap:12px}#saved-poses{width:100%}.stage-hint{font-size:12px}}
@media(prefers-reduced-motion:reduce){.pose-studio button{transition:none}}

/* The photo sheet keeps the preview and large terrain tiles within easy reach. */
.photo-dialog{width:min(1040px,calc(100vw - 32px));max-height:calc(100dvh - 32px);border:0;border-radius:24px;padding:24px;color:#263d35;background:#fffdf7;box-shadow:0 24px 90px #102e3660;overflow:auto}
.photo-dialog::backdrop{background:#153a35a6;backdrop-filter:blur(5px)}
.photo-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.photo-heading h2{font-size:1.6rem;margin:0 0 5px}.photo-heading p{margin:0;color:#66766e}.photo-heading button{flex:none;width:48px;height:48px;border:1px solid #d9e0d5;border-radius:50%;background:white;font-size:28px;color:inherit}
.photo-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:24px;align-items:start}.photo-preview-area{background:#ecf0e5;border-radius:18px;overflow:hidden;min-height:240px;text-align:center}.photo-preview-area img{display:block;width:100%;max-height:60dvh;object-fit:contain}.photo-preview-area img[hidden]{display:none}.photo-preview-area p{margin:12px 16px;font-size:.9rem}.photo-preview-area button{margin:12px}.photo-options h3{margin:0 0 12px;font-size:1.1rem}.photo-backgrounds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.photo-backgrounds button{padding:3px;border:2px solid transparent;border-radius:12px;background:#f1f2e9;overflow:hidden;color:inherit;min-height:78px}.photo-backgrounds button[aria-pressed=true]{border-color:#357558;background:#e1efd9;box-shadow:0 0 0 2px #e1efd9}.photo-backgrounds img{width:100%;aspect-ratio:1.7;object-fit:cover;display:block;border-radius:7px}.photo-backgrounds span{display:block;font-size:.78rem;font-weight:700;padding:5px 0}.photo-atmosphere{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.photo-atmosphere label{font-size:.9rem;font-weight:700}.photo-atmosphere select{display:block;width:100%;height:48px;border:1px solid #d5ddcf;border-radius:10px;background:white;color:inherit;margin-top:5px;padding:8px;font:inherit}.photo-tip{font-size:.84rem;color:#6a776e;line-height:1.5;margin:14px 0 0}.photo-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:22px}.photo-actions a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.photo-actions [aria-disabled=true]{opacity:.45;pointer-events:none}.photo-dialog button:focus-visible,.photo-dialog a:focus-visible,.photo-dialog select:focus-visible{outline:3px solid #4381ca;outline-offset:3px}
@media(max-width:700px){.photo-dialog{padding:16px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:18px}.photo-heading{margin-bottom:14px}.photo-heading h2{font-size:1.2rem}.photo-heading p{font-size:.85rem}.photo-layout{grid-template-columns:1fr;gap:16px}.photo-preview-area{min-height:150px}.photo-preview-area img{max-height:38dvh}.photo-backgrounds{grid-template-columns:repeat(3,1fr)}.photo-backgrounds img{aspect-ratio:2.7}.photo-actions{position:sticky;bottom:-16px;background:#fffdf7;padding:12px 0;margin-top:10px;justify-content:stretch}.photo-actions>*{flex:1}.photo-tip{font-size:.8rem}}
.photo-dialog button{font-family:inherit;cursor:pointer}.photo-dialog .studio-button{min-height:48px;padding:12px 20px;border:1px solid #cbd8c9;border-radius:12px;background:#fff;color:#284b3c;font:inherit;font-weight:650}.photo-dialog .primary{background:#285f4c;border-color:#285f4c;color:white;box-shadow:0 3px 0 #193e32}.photo-dialog .studio-button:hover{filter:brightness(.96)}.photo-dialog button:disabled{opacity:.45;cursor:default}

.photo-preview-area img.photo-loading{opacity:.6}

.tail-shortcuts[hidden]{display:none}
.species-picker{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:16px 0}
.species-picker label{font-weight:650;font-size:14px}
.species-picker select{width:100%;max-width:360px;padding:10px 14px;background:#f7faf2;border-color:#a8bea4}
.stage-toolbar{flex-wrap:wrap;justify-content:flex-start;gap:8px;flex-shrink:0}
.stage-toolbar #undo{margin-left:auto}
.camera-tools{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.camera-tools label{font-size:13px;font-weight:650;margin-right:2px}
.camera-tools select{padding:8px;max-width:180px;font-size:13px}
.stage-toolbar .camera-tools button{min-width:48px}
@media(max-width:560px){.camera-tools{order:3;flex-basis:100%;border-top:1px solid var(--studio-line);padding-top:8px}.camera-tools select{flex:1;max-width:none;min-width:0}.species-picker select{max-width:none}}

.stage-toolbar .mode-buttons span{display:inline;font-size:12px}

.stage-top-actions{display:flex;gap:6px}.stage-top-actions button[aria-pressed="true"]{background:#dbe9d2;box-shadow:inset 0 0 0 2px #678b5b}
