.taxonomy-filter{background:#f8fbfe;border:1px solid #d9e8f6;border-radius:18px;box-shadow:none;min-width:0}
.taxonomy-filter>summary{cursor:pointer;font-weight:800}
.taxonomy-filter__form{display:grid;gap:14px;margin-top:14px;min-width:0}
.filter-field{display:grid;gap:6px;min-width:0;font-weight:700}
.filter-field input,.filter-field select{width:100%;min-width:0;min-height:44px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:12px;background:#fff;padding:10px 38px 10px 12px;color:#172033;font:inherit;font-size:16px}
.filter-field input,.filter-field select:not([multiple]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.filter-field select[multiple]{height:auto;max-height:min(320px,55vh);padding:6px 4px 6px 8px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;white-space:normal;touch-action:pan-y}
.filter-field select[multiple] option,.filter-field select[multiple] optgroup{white-space:normal;line-height:1.35}.filter-field select[multiple] option{padding:7px 8px;overflow-wrap:anywhere}
.filter-field input::placeholder{color:#718096;opacity:1}
.filter-field input:focus-visible,.filter-field select:focus-visible,.upload-control:focus-within{outline:3px solid rgba(8,125,204,.16);outline-offset:2px;border-color:#087dcc}
.filter-actions{display:flex;gap:8px;flex-wrap:wrap;min-width:0}.filter-actions .btn{flex:1 1 130px;min-width:0}
.taxonomy-auto-summary{display:flex;gap:6px;flex-wrap:wrap}.taxonomy-auto-chip{display:inline-flex;max-width:100%;padding:5px 9px;border-radius:999px;background:#e8f3fc;color:#225f91;font-size:13px;overflow-wrap:anywhere}
main.registration-page{width:100%;min-width:0;min-height:100dvh;padding:env(safe-area-inset-top,0) max(14px,env(safe-area-inset-right,0)) max(24px,env(safe-area-inset-bottom,0)) max(14px,env(safe-area-inset-left,0));overflow-x:hidden;background:linear-gradient(145deg,#eef7fd 0%,#fff 50%,#fff5ed 100%)}
.registration-page .registration-content{width:100%;max-width:600px;margin:12px auto 0;padding:26px;background:#fff;border:1px solid rgba(148,163,184,.24);border-radius:28px;box-shadow:0 12px 32px rgba(31,83,123,.10)}
.registration-page .registration-content>h1{margin:0 0 8px;color:#183b56;font-size:clamp(26px,7vw,34px);line-height:1.15;font-weight:750;text-align:left}.registration-lead{margin:0 0 26px;color:#64748b;font-size:15px;line-height:1.5}
.registration-page .registration-content>label{display:block;margin:0 0 8px;color:#334155;font-weight:650}
.registration-page .registration-content>input[type="text"],.registration-page .registration-content>input[type="number"],.registration-page .registration-content>textarea,.registration-page .registration-content>select{width:100%;min-width:0;min-height:52px;margin:0 0 20px;padding:12px 16px;border:1px solid #d8e0e8;border-radius:14px;background:#f4f7f9;color:#172033;font-size:16px;box-sizing:border-box}
.registration-page .registration-content>textarea{min-height:112px;resize:vertical}.registration-page .registration-content input:focus-visible,.registration-page .registration-content select:focus-visible,.registration-page .registration-content textarea:focus-visible{outline:3px solid rgba(8,125,204,.14);outline-offset:1px;border-color:#087dcc}
.registration-page .registration-content>#submitBtn,.registration-page .registration-content>button[type="submit"],.registration-page .registration-content form>button[type="submit"]{width:100%;min-height:52px;padding:13px 18px;border:0;border-radius:15px;background:linear-gradient(135deg,#087dcc,#db7356);color:#fff;font-weight:750;box-shadow:0 5px 13px rgba(31,83,123,.16)}
.registration-page .registration-content>#submitBtn:hover,.registration-page .registration-content>button[type="submit"]:hover{filter:brightness(.97)}.registration-page .registration-content>#submitBtn:active,.registration-page .registration-content>button[type="submit"]:active{transform:translateY(1px)}.registration-page .registration-content>#submitBtn:focus-visible,.registration-page .registration-content>button[type="submit"]:focus-visible{outline:3px solid rgba(8,125,204,.22);outline-offset:3px}.registration-page .registration-content>#submitBtn:disabled,.registration-page .registration-content>button[type="submit"]:disabled{cursor:not-allowed;filter:saturate(.35);opacity:.62}
.upload-panel,.media-uploader{min-width:0}.upload-panel>h3{margin-bottom:6px}.required-hint{display:block;color:#64748b;font-size:13px;font-weight:500;margin-top:3px}
.upload-control{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:center;width:100%;min-width:0;min-height:66px;box-sizing:border-box;padding:12px 14px;border:1px dashed #94b9d5;border-radius:12px;background:#f7fbff;color:#172033;cursor:pointer}
.upload-control__icon{grid-row:1/3;font-size:22px;color:#087dcc}.upload-control__title{font-weight:750}.upload-control__hint{color:#64748b;font-size:13px}
.upload-control input[type=file]{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.upload-selection{min-height:18px;margin:7px 0 0;color:#475569;font-size:13px;overflow-wrap:anywhere}
.scenario-cover,.scenario-card>img,.stack>img.card{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px}.scenario-card{overflow:hidden}.scenario-card>.scenario-cover{margin-bottom:12px}.scenario-cover--detail,.stack>img.card{max-height:620px}
.profile-media-frame{position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;margin:0;padding:0;border:1px solid #e2e8f0;border-radius:18px;background:linear-gradient(145deg,#f8fafc,#edf4f8 58%,#f8f1ed);font:inherit;color:inherit}
.profile-media-frame:is(button){cursor:zoom-in}
.profile-media-frame>img,.profile-media-frame>video{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:transparent}
.profile-media-frame>video{background:transparent}
.profile-media-frame--detail{width:min(100%,calc(min(75vh,720px) * .8));max-height:min(75vh,720px);margin-inline:auto}
.profile-media-item{display:grid;gap:8px;min-width:0}
.profile-media-placeholder{display:grid;width:100%;height:100%;place-content:center;gap:6px;padding:20px;text-align:center;color:#64748b;background:linear-gradient(145deg,#f8fafc,#eef4f7)}
.profile-media-placeholder strong{color:#334155}.profile-media-placeholder span{font-size:13px}
.artists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:12px}.artist-card{min-width:0;background:#fff;border:1px solid var(--border);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);display:grid;color:inherit;text-decoration:none}.artist-card>a{display:block;min-width:0}.artist-card .profile-media-frame{border:0;border-radius:0}.artist-card__info{padding:12px;display:grid;gap:6px}.artist-card__info p{margin:0;color:var(--muted);font-size:13px;line-height:1.35;word-break:break-word;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.media-file-card{max-width:100%;overflow:hidden}.media-meta,.media-meta b,.media-meta small{min-width:0;overflow-wrap:anywhere}
.btn-primary{min-height:44px;padding:11px 16px;border:0;border-radius:14px;background:linear-gradient(135deg,#087dcc,#db7356);color:#fff;font-weight:800;box-shadow:0 5px 13px rgba(31,83,123,.16);transition:filter .15s ease,transform .15s ease,box-shadow .15s ease}
.btn-primary:hover{filter:brightness(.97);box-shadow:0 7px 16px rgba(31,83,123,.2)}.btn-primary:active{filter:brightness(.93);transform:translateY(1px)}.btn-primary:focus-visible{outline:3px solid rgba(8,125,204,.24);outline-offset:3px}.btn-primary:disabled,.btn-primary[aria-disabled="true"]{cursor:not-allowed;filter:saturate(.35);opacity:.62;box-shadow:none}
.add-service-btn.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;max-width:100%;min-height:44px;margin:0 0 15px;box-sizing:border-box;padding:11px 16px;border-radius:14px;background:linear-gradient(135deg,#087dcc,#db7356)}
.add-service-btn.btn-primary:hover{background:linear-gradient(135deg,#087dcc,#db7356);filter:brightness(.97)}
@media(max-width:640px){main.registration-page{padding-left:max(14px,env(safe-area-inset-left,0));padding-right:max(14px,env(safe-area-inset-right,0))}.registration-page .registration-content{margin-top:8px;padding:20px;border-radius:22px}.registration-page .registration-content input,.registration-page .registration-content select,.registration-page .registration-content textarea{font-size:16px}}
@media(max-width:360px){.filter-actions{display:grid}.filter-actions .btn{width:100%}.registration-page .registration-content{padding:18px}}
