.marketplace-page,.widget-detail{min-height:75vh;padding-block:3rem}.marketplace-intro{max-width:56rem;margin-bottom:2rem}.marketplace-intro h1{margin-block:1rem;font-size:clamp(2.25rem,4vw,3rem)}.marketplace-intro p{color:var(--muted-foreground);font-size:1.125rem}.marketplace-search{border:1px solid var(--input);border-radius:var(--radius-md);min-height:3.75rem;color:var(--muted-foreground);background:var(--surface);align-items:center;gap:1rem;padding:0 1.25rem;display:flex}.marketplace-search:focus-within{outline:2px solid var(--brand);outline-offset:3px}.marketplace-search input{width:100%;min-width:0;min-height:3.75rem;color:var(--foreground);background:0 0;outline:none}.marketplace-search input::placeholder{color:var(--muted-foreground)}.marketplace-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.25rem;display:flex}.category-filters{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.category-filters button{border:1px solid var(--input);border-radius:var(--radius-sm);min-height:2.75rem;color:var(--muted-foreground);padding:.5rem 1rem;font-size:.875rem}.category-filters button[aria-pressed=true]{color:var(--brand);border-color:var(--brand);background:var(--surface)}.marketplace-result-summary{min-height:4rem;color:var(--muted-foreground);justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.widget-section{margin-block:1rem 2rem}.widget-section h2{margin-bottom:1.5rem;font-size:1.375rem}.widget-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr));gap:1.25rem;display:grid}.widget-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;min-width:0;max-width:40rem;transition:border-color .15s;display:flex}.widget-card:hover,.widget-card:focus-visible{border-color:var(--input)}.widget-card-body{flex-direction:column;flex:1;gap:.75rem;padding:1rem;display:flex}.widget-card-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.widget-card h3{overflow-wrap:anywhere;font-size:1.125rem;line-height:1.35}.widget-card .widget-author{overflow-wrap:anywhere;margin-top:.125rem;font-size:.75rem}.widget-author{color:var(--muted-foreground);margin-top:.375rem;font-size:.875rem}.widget-verified{vertical-align:-.2em;color:#34d399;margin-left:.3rem;display:inline-flex}.widget-description{color:var(--muted-foreground);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.5;display:-webkit-box;overflow:hidden}.widget-tags{flex-wrap:wrap;gap:.5rem;margin-block:1rem;display:flex}.widget-tags span{background:var(--secondary);color:var(--muted-foreground);border-radius:var(--radius-sm);padding:.25rem .625rem;font-size:.75rem}.widget-card-link{color:var(--brand);align-items:center;gap:.25rem;font-size:.75rem;display:inline-flex}.widget-card-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-top:auto;display:flex}.marketplace-empty{text-align:center;padding:4rem 1rem}.marketplace-empty>svg{color:var(--muted-foreground);margin:0 auto 1.5rem}.marketplace-empty h2{font-size:1.5rem}.marketplace-empty p{color:var(--muted-foreground);margin-block:.75rem 1.5rem}.marketplace-create{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:2rem;margin-top:4rem;padding-block:2.5rem;display:flex}.marketplace-create h2{font-size:1.375rem}.marketplace-create p{color:var(--muted-foreground);margin-top:.625rem}.marketplace-back,.text-link{color:var(--muted-foreground);align-items:center;gap:.5rem;min-height:2.75rem;font-size:.875rem;display:inline-flex}.marketplace-back:hover,.text-link:hover{color:var(--brand)}.widget-preview-placeholder{color:var(--muted-foreground);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1rem;font-size:.8125rem;display:flex}.widget-section-description{color:var(--muted-foreground);margin:-1rem 0 1.5rem;font-size:.875rem}.builtin-mark{background:#8b8b94;flex-shrink:0;width:1rem;height:1rem;display:inline-block;-webkit-mask:url(/brand/playervox-mark-dark.svg) 50%/contain no-repeat;mask:url(/brand/playervox-mark-dark.svg) 50%/contain no-repeat}.builtin-mark-large{vertical-align:-.125em;width:1.75rem;height:1.75rem;margin-left:.75rem}.widget-preview{aspect-ratio:4/3;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--preview-stage);place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.widget-preview img{object-fit:contain;max-width:100%;max-height:100%;margin:auto;position:absolute;inset:0}.widget-card .widget-preview{border:0;border-bottom:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.widget-detail-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:3rem 2.5rem;margin-top:1.5rem;display:grid}.widget-detail-summary h1{overflow-wrap:anywhere;font-size:clamp(2rem,4vw,3rem);line-height:1.1}.widget-detail-description{color:var(--foreground);margin-top:1rem;font-size:1.0625rem;line-height:1.6}.widget-install{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);margin-top:1.5rem;padding:1.25rem 1.5rem}.widget-install h2{margin-top:.75rem;font-size:1.125rem}.widget-install p{color:var(--muted-foreground);margin-top:.375rem;font-size:.875rem}.widget-install .widget-get-app{margin-top:.875rem;font-size:.8125rem}.widget-get-app a{color:var(--brand);text-underline-offset:.2em;text-decoration:underline}.permission-details summary{cursor:pointer;color:var(--muted-foreground);min-height:1.75rem;font-size:.8125rem}.widget-permissions h2,.widget-box h2{font-size:1.25rem}.widget-permissions-none{color:var(--muted-foreground);margin-top:1rem}.permission-list{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);margin-top:1rem}.permission-list>li{border-bottom:1px solid var(--border);gap:.875rem;padding:.875rem 1rem;display:flex}.permission-list>li:last-child{border-bottom:0}.permission-icon{border:1px solid var(--border);border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--foreground);flex-shrink:0;place-items:center;display:grid}.permission-icon[data-sensitive]{color:var(--warning);border-color:color-mix(in srgb, var(--warning) 35%, var(--border))}.permission-title{font-size:.9375rem;font-weight:600}.permission-personal{border:1px solid color-mix(in srgb, var(--warning) 45%, var(--border));color:var(--warning);vertical-align:.125em;border-radius:999px;margin-left:.5rem;padding:0 .5rem;font-size:.6875rem;font-weight:600;display:inline-block}.permission-explanation{color:var(--muted-foreground);margin-top:.125rem;font-size:.875rem}.permission-details{margin-top:.375rem}.permission-details ul{gap:.25rem;margin-top:.25rem;padding-left:1rem;list-style:outside;display:grid}.permission-details code{color:var(--foreground);overflow-wrap:anywhere;font-size:.8125rem}.permission-note{color:var(--muted-foreground);margin-top:.75rem;font-size:.8125rem}.widget-detail-side{align-content:start;gap:1rem;display:grid}.widget-box{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:1.125rem 1.25rem}.widget-box h2{align-items:center;gap:.5rem;font-size:1.0625rem;display:flex}.widget-box ul{color:var(--muted-foreground);gap:.375rem;margin-top:.75rem;padding-left:1.125rem;font-size:.875rem;list-style:outside;display:grid}.widget-facts{gap:.625rem;margin-top:.875rem;font-size:.875rem;display:grid}.widget-facts>div{justify-content:space-between;gap:1rem;display:flex}.widget-facts dt{color:var(--muted-foreground)}.widget-facts dd{text-align:right;overflow-wrap:anywhere}.widget-facts .text-link{min-height:0;color:var(--brand);font-size:inherit;gap:.25rem}.widget-facts code{font-size:.8125rem}@media (width<=900px){.widget-detail-layout{grid-template-columns:minmax(0,1fr);gap:2rem}}@media (width<=640px){.marketplace-page,.widget-detail{padding-block:2.5rem}.marketplace-create{flex-direction:column;align-items:start}.widget-facts>div{flex-direction:column;gap:.125rem}.widget-facts dd{text-align:left}}@font-face{font-family:PlayerVox Score Rank;src:url(/fonts/SpaceGrotesk-Score.ttf)format("truetype");font-weight:700;font-display:swap}.rank-badge{border:3px solid var(--rank,#52525c);width:3.25rem;height:3.25rem;color:var(--rank,#52525c);font:700 1.5rem/1 "PlayerVox Score Rank", var(--font-display);background:#000;border-radius:.8rem;flex-shrink:0;place-items:center;display:grid;transform:rotate(4deg)}.rank-badge[data-tier=S\+]{--rank:#9ae600;box-shadow:0 0 12px #a3e635}.rank-badge[data-tier=S]{--rank:#7ccf00}.rank-badge[data-tier=A]{--rank:#00d3f2}.rank-badge[data-tier=B]{--rank:#fdc700}.rank-badge[data-tier=C]{--rank:#fe9a00}.rank-badge[data-tier=D]{--rank:#e7000b}.rank-badge[data-tier=none]{background:#27272a80;border-style:dashed;border-width:2px;font-size:1.125rem;transform:none}.rank-badge-small{border-width:2.5px;border-radius:.6rem;width:2.25rem;height:2.25rem;font-size:1rem}.widget-card .widget-preview .rank-badge{z-index:1;position:absolute;top:.75rem;right:.75rem}.widget-card .widget-tags{margin-block:0}
