.app-home-studios{margin:0 auto 38px;max-width:1200px}
.app-home-studios__grid,.app-studios-directory__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.app-home-studio-card,.app-studio-directory-card{overflow:hidden;border:1px solid rgba(91,88,150,.18);border-radius:16px;background:var(--card,#fff);box-shadow:0 10px 28px rgba(23,21,61,.06)}
.app-home-studio-card>a,.app-studio-directory-card>a{display:block;height:100%;color:inherit;text-decoration:none}
.app-home-studio-card__image,.app-studio-directory-card__image{display:grid;aspect-ratio:2/1;place-items:center;overflow:hidden;background:linear-gradient(135deg,#4338ca,#8b5cf6);color:#fff}
.app-home-studio-card__image img,.app-studio-directory-card__image img{width:100%;height:100%;object-fit:cover}
.app-home-studio-card__body,.app-studio-directory-card__body{padding:14px}
.app-home-studio-card__body>div,.app-studio-directory-card__body>div{display:flex;align-items:start;justify-content:space-between;gap:8px}
.app-home-studio-card h3,.app-studio-directory-card h3{margin:0;font-size:15px}
.app-home-studio-card p,.app-studio-directory-card p{display:flex;align-items:center;gap:4px;margin:9px 0;color:var(--text-muted,#6d6b7b);font-size:12px}
.app-home-studio-card ul,.app-studio-directory-card ul{display:flex;flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none}
.app-home-studio-card li,.app-studio-directory-card li{padding:4px 7px;border-radius:6px;background:rgba(113,72,239,.09);color:#6640c7;font-size:10px}
.app-home-studio-card__verified,.app-studio-directory-card__body>div>span{padding:4px 6px;border-radius:6px;background:#e7f8ee;color:#16804a;font-size:10px;white-space:nowrap}
.app-home-studios__map-link{display:flex;align-items:center;justify-content:center;gap:6px;width:max-content;margin:18px auto 0;color:#6841db;font-weight:700;text-decoration:none}
.app-home-studios__empty,.app-studios-map__empty,.app-studios-directory__empty{display:grid;gap:7px;place-items:center;min-height:148px;padding:20px;border:1px dashed rgba(103,67,214,.34);border-radius:16px;color:var(--text-muted,#6d6b7b);text-align:center}
.app-home-studios__empty strong,.app-studios-map__empty strong{color:inherit}
.app-home-studios__empty{grid-template-columns:auto auto;justify-content:center;min-height:116px;padding:18px 24px;gap:13px;border-style:solid;border-color:rgba(139,92,246,.3);background:linear-gradient(135deg,rgba(109,70,222,.13),rgba(28,21,51,.1));text-align:right}
.app-home-studios__empty-icon{display:grid;width:54px;height:54px;place-items:center;border:1px solid rgba(174,141,255,.42);border-radius:16px;color:#c4a7ff;background:rgba(112,69,236,.23);box-shadow:0 8px 22px rgba(29,16,68,.28)}
.app-home-studios__empty>div{display:grid;justify-items:start;gap:4px}
.app-home-studios__empty strong{color:var(--text,#252238);font-size:14px;line-height:1.55}
.app-home-studios__empty span:not(.app-home-studios__empty-icon){color:var(--text-muted,#6d6b7b);font-size:12px;line-height:1.55}
html[data-theme="dark"] .app-home-studios__empty{border-color:rgba(157,114,255,.32);background:linear-gradient(135deg,rgba(103,63,224,.18),rgba(16,12,31,.34))}
html[data-theme="dark"] .app-home-studios__empty strong{color:#f5f1ff}
html[data-theme="dark"] .app-home-studios__empty span:not(.app-home-studios__empty-icon){color:#c5bcd7}
.app-studios-archive{padding-top:42px;padding-bottom:70px}
.app-studios-archive__header{max-width:700px;margin:0 auto 30px;text-align:center}
.app-studios-archive__header span,.app-studios-map header span,.app-studios-directory header span{color:#7147e7;font-size:12px;font-weight:800}
.app-studios-archive h1{margin:8px 0;font-size:34px}
.app-studios-archive__header p{margin:0;color:var(--text-muted,#6d6b7b)}
.app-studios-map,.app-studios-directory{margin-top:22px;padding:22px;border:1px solid rgba(91,88,150,.16);border-radius:20px;background:var(--card,#fff)}
.app-studios-map header,.app-studios-directory>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}
.app-studios-map h2,.app-studios-directory h2{margin:4px 0 0;font-size:20px}
.app-studios-map header>b,.app-studios-directory>header>b{padding:8px 10px;border-radius:9px;background:rgba(113,72,239,.08);color:#6841db;font-size:11px}
.app-studios-map__canvas{position:relative;min-height:430px;overflow:hidden;border-radius:15px;background:radial-gradient(circle at 60% 43%,rgba(124,91,240,.32),transparent 38%),linear-gradient(135deg,#161b41,#352568 62%,#1e2351);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.app-studios-map__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:10% 10%;mask-image:radial-gradient(ellipse at center,#000,transparent 78%)}
.app-studios-map__pin{position:absolute;left:var(--map-x);top:var(--map-y);z-index:1;display:grid;justify-items:center;transform:translate(-50%,-100%);color:#fff;text-decoration:none}
.app-studios-map__pin span{width:16px;height:16px;border:3px solid #fff;border-radius:50% 50% 50% 0;background:#9c6cff;box-shadow:0 4px 12px rgba(0,0,0,.45);transform:rotate(-45deg)}
.app-studios-map__pin b{max-width:130px;margin-top:7px;padding:4px 7px;border-radius:7px;background:rgba(9,10,29,.77);font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.app-studios-map__pin:hover span,.app-studios-map__pin:focus-visible span{background:#ffbd59;transform:rotate(-45deg) scale(1.15)}
.app-studios-map__note{margin:12px 0 0;color:var(--text-muted,#6d6b7b);font-size:12px}
.app-studios-directory{margin-top:28px}
.app-studio-directory-card__body{min-height:114px}
@media(max-width:900px){.app-home-studios__grid,.app-studios-directory__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){.app-home-studios__grid,.app-studios-directory__grid{grid-template-columns:1fr}
.app-studios-archive{padding-top:25px}
.app-studios-archive h1{font-size:27px}
.app-studios-map,.app-studios-directory{padding:15px}
.app-studios-map__canvas{min-height:340px}
.app-studios-map__pin b{display:none}
}
@media(max-width:480px){.app-home-studios__empty{grid-template-columns:1fr;justify-items:center;text-align:center}.app-home-studios__empty>div{justify-items:center}}
