.artist-manager,.artist-section{--artist-border:var(--color-line,#474954);--artist-surface:var(--color-surface,#22252d);--artist-text:var(--color-text,#f5f5f5);color:var(--artist-text)}
.artist-manager{max-width:1000px;margin:2rem auto;padding:1.5rem;border:1px solid var(--artist-border);border-radius:16px;background:var(--artist-surface)}
.artist-manager form{display:flex;gap:1rem;flex-wrap:wrap;align-items:end;margin:1.5rem 0}.artist-manager label{display:flex;flex-direction:column;gap:.4rem}.artist-manager input{font:inherit;padding:.6rem;border:1px solid var(--artist-border);border-radius:6px;background:transparent;color:inherit;max-width:100%;min-width:0}.artist-manager input[type=checkbox]{accent-color:var(--color-primary,#ff7400)}
.artist-manager button{font:inherit;padding:.6rem .9rem;border-radius:6px;border:1px solid var(--artist-border);background:var(--color-primary,#ff7400);color:var(--color-primary-text,#fff);cursor:pointer}.artist-manager button:disabled{opacity:.5;cursor:wait}.artist-manager :focus-visible{outline:3px solid var(--color-primary,#ff7400);outline-offset:3px}.artist-manager [hidden]{display:none!important}
.artist-row{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;padding:.8rem 0;border-bottom:1px solid var(--artist-border)}.artist-row strong{flex:1;min-width:120px;overflow-wrap:anywhere}.artist-row img,.artist-edit img{width:64px;height:64px;object-fit:cover;border-radius:12px}.artist-row label{font-size:.9rem}.artist-row input[type=number]{width:100px}.artist-error{color:#ff8585}.artist-pagination{display:flex;gap:.8rem;align-items:center;margin-top:1rem}.artist-create h3{flex-basis:100%}.artist-create p{flex-basis:100%;font-size:.9rem}.artist-selected{margin-top:2rem}
.artist-section{margin:2rem 0}.artist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:1.2rem}.artist-card{margin:0;min-width:0}.artist-card img{width:100%;max-width:100px;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-card,14px);background:var(--artist-surface)}.artist-card figcaption{padding:.6rem 0;font-weight:600;overflow-wrap:anywhere}.artist-page-link{display:inline-block;margin:1rem}
.event-layout>.artist-section{grid-column:2;grid-row:2}.event-layout>.artist-section .artist-grid{grid-template-columns:repeat(auto-fill,minmax(130px,180px))}
@media(max-width:520px){.artist-manager{padding:1rem;margin:1rem 0}.artist-manager form{align-items:stretch}.artist-manager form>label{width:100%}.artist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.artist-row{gap:.6rem}.artist-pagination{flex-wrap:wrap}}
.artist-section--sales .artist-grid:focus-visible{outline:2px solid var(--color-primary,#ff7400);outline-offset:3px}
@media(max-width:768px){.artist-section--sales{box-sizing:border-box;width:100%;max-width:100%;min-width:0}.artist-section--sales .artist-grid{box-sizing:border-box;display:flex;flex-wrap:nowrap;width:100%;max-width:100%;min-width:0;gap:1rem;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:.5rem}.artist-section--sales .artist-card{flex:0 0 100px;scroll-snap-align:start}}
