.piggy-settings fieldset { border:0; border-top:1px solid #34343d; padding:16px 0; margin:0; min-width:0; display:grid; gap:12px; }
.piggy-settings legend { padding:0 10px 0 0; font-size:14px; font-weight:600; }
.piggy-settings label { display:flex; align-items:center; gap:10px; font-size:13px; }
.piggy-settings output { margin-left:auto; font-variant-numeric:tabular-nums; color:#c1e4eb; }
.piggy-settings input[type=number] { max-width:150px; padding:9px 12px; background:#10131b; border:1px solid #454954; border-radius:7px; color:inherit; }
.piggy-settings .help { margin:0; line-height:1.7; }
.piggy-settings input:disabled { opacity:.4; }
.piggy-settings [hidden] { display:none !important; }
.piggy-settings [data-piggy-stale] { color:#f4ca83; }
.studio-settings-panel .piggy-settings > fieldset > select { border:1px solid #45414c; border-radius:9px; padding:0 12px; color:#f2edf3; font:inherit; font-size:13px; }
.studio-settings-panel .piggy-settings label { display:flex !important; justify-content:flex-start; gap:10px; color:#c5c3cc; }
.studio-settings-panel .piggy-settings input[type=checkbox] { width:16px; height:16px; flex:none; margin:0; }
.studio-settings-panel .piggy-settings .help { color:#aaa7b4; }
.studio-settings-panel .piggy-settings input[type=range] { min-height:0; height:6px; margin:8px 0; }
.overlay-grid .piggy-preview-wrap { width:560px; max-width:100%; height:480px; align-items:stretch; }
.overlay-grid .piggy-preview-wrap .physics-preview-scaler { width:100%; height:100%; transform:none; }
.overlay-grid .piggy-preview-wrap .physics-preview-frame { width:100%; height:100%; }
.piggy-audio-controls { display:grid; gap:10px; min-width:0; padding-top:2px; }
.piggy-sound-picker { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:center; }
.studio-settings-panel .piggy-settings .piggy-sound-picker select { min-width:0; height:44px; padding:0 12px; border:1px solid #45414c; border-radius:9px; background-color:#141419; color:#f2edf3; font:inherit; font-size:13px; cursor:pointer; }
body.dashboard-studio-active .piggy-settings .piggy-sound-picker [data-piggy-test-sound] { display:inline-flex; justify-content:center; align-items:center; gap:5px; height:44px; min-width:92px; margin:0; padding:0 12px; border:1px solid #a83459; border-radius:9px; background:#b32955; color:#fff; font-size:12px; font-weight:600; white-space:nowrap; }
body.dashboard-studio-active .piggy-settings .piggy-sound-picker [data-piggy-test-sound]:hover:not(:disabled) { background:#c93363; border-color:#d14b75; }
.studio-settings-panel .piggy-settings .piggy-volume-heading { margin:5px 0 0; }
.piggy-volume-heading output { min-width:46px; padding:3px 8px; border-radius:6px; background:#293239; color:#c1e4eb; text-align:center; font-size:12px; font-weight:600; }
.piggy-volume-slider { display:grid; grid-template-columns:18px minmax(0,1fr) 18px; align-items:center; gap:12px; color:#96929f; }
.studio-settings-panel .piggy-settings .piggy-volume-slider input[type=range] { appearance:none; -webkit-appearance:none; width:100%; height:32px; min-height:32px; padding:0; margin:0; border:0; background:transparent; cursor:pointer; }
.piggy-volume-slider input::-webkit-slider-runnable-track { height:6px; border-radius:999px; background:linear-gradient(to right,#d13c70 var(--piggy-volume,50%),#41404a var(--piggy-volume,50%)); }
.piggy-volume-slider input::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; width:17px; height:17px; margin-top:-5.5px; border:3px solid #d13c70; border-radius:50%; background:#fff; box-shadow:0 1px 4px #0005; }
.piggy-volume-slider input::-moz-range-track { height:6px; border-radius:999px; background:#41404a; }
.piggy-volume-slider input::-moz-range-progress { height:6px; border-radius:999px; background:#d13c70; }
.piggy-volume-slider input::-moz-range-thumb { width:11px; height:11px; border:3px solid #d13c70; border-radius:50%; background:#fff; }
.piggy-audio-controls :is(select,button,input):focus-visible { outline:2px solid #f075a0; outline-offset:3px; }
.piggy-audio-controls :disabled { opacity:.45; cursor:not-allowed; }
.piggy-model-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; min-width:0; }
.piggy-settings .piggy-model-card { position:relative; display:flex; flex-direction:column; align-items:stretch; width:100%; min-width:0; padding:0; margin:0; overflow:hidden; border:1px solid #45414c; border-radius:10px; background:#17171b; color:#eeeaf2; text-align:center; cursor:pointer; }
.piggy-model-card img { display:block; width:100%; height:auto; aspect-ratio:1/1; object-fit:contain; }
.piggy-model-name { display:block; padding:6px 4px 8px; font-size:11px; line-height:1.5; overflow-wrap:anywhere; }
.piggy-settings .piggy-model-card.is-selected { border-color:#ed5689; box-shadow:inset 0 0 0 1px #ed5689; }
.piggy-settings .piggy-model-card:hover:not(:disabled) { border-color:#f075a0; }
.piggy-settings .piggy-model-card:focus-visible { outline:2px solid #f075a0; outline-offset:3px; }
.piggy-settings .piggy-model-card:disabled { cursor:not-allowed; opacity:1; }
.piggy-model-card:disabled img { opacity:.65; }
.piggy-model-card .theme-tier-lock { position:absolute; top:7px; right:7px; padding:3px 7px; border-radius:5px; background:#a92d55; color:#fff; font-size:10px; font-weight:700; line-height:1.4; }
.piggy-model-card .theme-tier-lock[data-tier=premium] { background:#663db3; }
