.concert-manager{max-width:1000px;margin:0 auto;padding:30px 0 70px}.concert-heading{margin:24px 0 32px}.concert-heading h1{font-size:30px;letter-spacing:-.04em;margin:6px 0 12px}.concert-heading>p:last-child{color:#71717b;font-size:15px;line-height:1.8}.concert-editor,.concert-record{padding:28px;background:#fff;border:1px solid #e9e9ed;border-radius:20px}.concert-editor h2,.concert-collection h2{font-size:20px;margin:0 0 20px}.concert-editor label,.concert-edit-dialog label{display:block;font-size:14px;margin:12px 0}.concert-fields{display:grid;grid-template-columns:2fr 1fr;gap:20px}.concert-editor textarea,.concert-edit-dialog textarea{min-height:90px}.concert-editor>.primary-button{width:auto;min-width:200px;margin-top:16px}.concert-collection{margin-top:40px}.concert-collection h2 span{color:#999;font-size:15px;margin-left:8px}.concert-metrics-note{font-size:12px;line-height:1.8;color:#777780;max-width:640px;margin-bottom:20px}.concert-record{margin-top:18px}.concert-record-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.concert-record-heading p{font-size:12px;color:#898993;margin:0 0 6px}.concert-record-heading h3{font-size:21px;margin:0;overflow-wrap:anywhere}.concert-record-heading button{width:auto;margin:0;white-space:nowrap}.concert-prompt{font-size:14px;line-height:1.8;color:#666;margin:16px 0 24px}.concert-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;background:#f8f8fa;border-radius:14px;padding:20px 12px}.concert-metrics>div{display:flex;flex-direction:column;align-items:center;gap:8px}.concert-metrics strong{font-size:25px;line-height:1.2}.concert-metrics span{font-size:12px;color:#7e7e87}.concert-revenue{font-size:13px;color:#74747e;margin:16px 0 24px}.concert-revenue strong{color:#292932;margin-left:8px}.concert-revenue>span{margin-left:8px;font-size:11px}.concert-photos{display:flex;gap:10px;flex-wrap:wrap}.concert-photos img{width:90px;height:90px;object-fit:cover;border-radius:12px}.concert-rights{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:#6d6d77;margin:16px 0;line-height:1.7}.concert-rights input{width:16px;margin-top:3px;flex:none}.concert-actions{display:flex;flex-wrap:wrap;gap:8px}.concert-actions button{background:#f6f6f8;border:1px solid #e7e7eb;border-radius:30px;padding:10px 16px;font-size:12px}.concert-intro{padding:20px 22px;background:#fffbf5;border:1px solid #f6e6cc;border-radius:16px;margin:0 0 24px}.concert-intro time{font-size:12px;color:#9b7847}.concert-intro h2{font-size:19px;line-height:1.5;margin:7px 0;overflow-wrap:anywhere}.concert-intro p{font-size:14px;line-height:1.75;margin:0;color:#72695b}.concert-picks{margin:14px 0 18px}.concert-picks>p{font-size:13px;color:#696973;margin-bottom:10px}.concert-pick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.concert-pick-grid button{border:1px solid #e7e7eb;background:#fff;padding:0;border-radius:12px;overflow:hidden;position:relative;aspect-ratio:1}.concert-pick-grid img{width:100%;height:100%;object-fit:cover}.concert-pick-grid button[aria-pressed=true]{outline:2px solid #ff9933;outline-offset:2px}.concert-pick-grid button span{position:absolute;right:7px;bottom:7px;background:#fff;border-radius:50%;width:24px;height:24px;font-size:18px;line-height:24px}.reply-new{display:inline-flex;font-size:11px;background:#fff2de;color:#a36515;padding:3px 7px;border-radius:5px;margin-left:8px}
.concert-editor input,.concert-edit-dialog input{display:block;width:100%;min-height:48px;border:1px solid #e2e2e8;border-radius:12px;background:white;padding:12px 14px;margin-top:8px;color:#292932;font:inherit}.concert-editor label,.concert-edit-dialog label{font-weight:500}.concert-editor textarea,.concert-edit-dialog textarea{margin-top:8px;font-weight:400}.profile-history-links{display:flex;flex-wrap:wrap;gap:18px;justify-content:flex-end}
.concert-photo-heading,.photo-area-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.concert-photo-heading h4,.photo-area-heading h4{margin:0;font-size:14px;font-weight:500;letter-spacing:-.3px}
.concert-photo-heading>span,.photo-area-heading>span{font-size:12px;color:#8a8380}
.concert-photo-note{font-size:12px;line-height:1.7;color:#8a8380;margin:6px 0 14px}
.concert-photo{position:relative;width:90px;flex:none}
.concert-photo img{display:block}
.concert-photo-remove{position:absolute;right:-5px;top:-5px;width:30px;height:30px;padding:5px;display:grid;place-items:center;background:#35353c;color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 1px 5px #0002;cursor:pointer}
.concert-photo-remove::after{content:"";position:absolute;inset:-6px}
.concert-photo-remove svg{width:16px;height:16px}
.concert-photo-remove:hover{background:#111}
.concert-photo-remove:focus-visible{outline:2px solid #ed8528;outline-offset:3px}
.concert-photo-remove.removing svg{visibility:hidden}
.concert-photo-remove.removing::before{content:"";width:12px;height:12px;border:2px solid #fff5;border-top-color:#fff;border-radius:50%;position:absolute;animation:photo-spin .8s linear infinite}
.photo-progress{display:flex;align-items:flex-start;gap:10px;margin:16px 0 4px;padding:13px 14px;border-radius:12px;background:#fff5e9;color:#795337;font-size:12px;line-height:1.6}
.photo-progress:empty,.photo-progress[hidden]{display:none}
.photo-progress>div{flex:1;min-width:0}
.photo-progress strong{display:block;font-weight:500;font-size:12px}
.photo-progress span:not(.photo-spinner){display:block;font-size:11px;color:#9c7b62;margin-top:3px}
.photo-progress progress{display:block;width:100%;height:4px;margin-top:9px;border:0;border-radius:8px;overflow:hidden;appearance:none;background:#ecdcc9;accent-color:#ed922f}
.photo-progress progress::-webkit-progress-bar{background:#ecdcc9;border-radius:8px}
.photo-progress progress::-webkit-progress-value{background:#ed922f;border-radius:8px;transition:width .2s}
.photo-progress progress::-moz-progress-bar{background:#ed922f}
.photo-spinner{width:17px;height:17px;flex:none;margin-top:1px;border:2px solid #e9cfb4;border-top-color:#dc7b24;border-radius:50%;animation:photo-spin .8s linear infinite}
@keyframes photo-spin{to{transform:rotate(360deg)}}
.writer-photo-section .concert-picks{background:#f6f6f8;border:1px solid #eeeef1;border-radius:16px;padding:18px;margin:14px 0 18px}
.writer-photo-section .concert-picks>p{font-size:12px;line-height:1.7;margin:7px 0 14px;color:#8b8790}
.photo-area-heading .photo-source-tag{font-size:10px;color:#8d8793;padding:3px 7px;background:#eae9ee;border-radius:5px;white-space:nowrap}
.writer-photo-section .concert-pick-grid{display:flex;gap:10px;flex-wrap:wrap}
.writer-photo-section .concert-pick-grid button{width:84px;flex:none;aspect-ratio:1;border-radius:10px;border:1px solid #dcdce2;overflow:hidden;outline:none}
.writer-photo-section .concert-pick-grid button[aria-pressed=true]{border:2px solid #e99136;outline:none}
.writer-photo-section .concert-pick-grid img{display:block}
.writer-photo-section .concert-pick-grid .concert-pick-mark{width:20px;height:20px;right:5px;top:5px;bottom:auto;font-size:16px;line-height:20px;box-shadow:0 1px 4px #0002}
.writer-photo-section .concert-pick-grid button[aria-pressed=true] .concert-pick-mark{background:#e99136;color:white;font-size:12px}
.writer-photo-section .concert-pick-grid .concert-pick-label{left:0;right:0;bottom:0;width:auto;height:auto;padding:3px 0;background:#242429a6;color:#fff;border-radius:0;font-size:10px;line-height:16px;backdrop-filter:blur(6px)}
.writer-photo-section .attached-photos{border:1px solid #efd6b7;background:#fffcf8;padding:18px;border-radius:16px}
.attached-photo-note{font-size:12px;line-height:1.7;color:#9c8e80;margin:7px 0 15px}
.writer-photo-section .thumbs{flex-wrap:wrap;overflow:visible;gap:14px 12px;padding:4px 4px 6px 0}
.writer-photo-section .thumb-wrap .remove{width:28px;height:28px;top:-5px;right:-5px}
.writer-photo-section .thumb-wrap .remove::after{content:"";position:absolute;inset:-7px}
.writer-photo-section .image-tools{margin-top:16px;gap:8px}
.writer-photo-section .image-tools button{font-size:11px;padding:9px 11px}
.writer-photo-section .hint{font-size:11px;line-height:1.8;margin:10px 0 0}
.writer-photo-section .photo-empty{background:#fff;border-color:#e6d8c9;padding:20px 12px}
.writer-photo-section .photo-empty .small{font-size:11px}
.writer-photo-section .photo-format-note{color:#a59b92;font-size:10px}
#form-error{white-space:pre-line;overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){.photo-spinner,.concert-photo-remove.removing::before{animation:none}.photo-progress progress::-webkit-progress-value{transition:none}}
@media(max-width:400px){.writer-photo-section .concert-picks,.writer-photo-section .attached-photos{padding:14px}.writer-photo-section .concert-pick-grid{gap:8px}.writer-photo-section .concert-pick-grid button{width:70px}.writer-photo-section .thumb-wrap{flex-basis:72px}.writer-photo-section .thumb-wrap img{width:72px;height:96px}.writer-photo-section .thumb-wrap button.pick{width:72px}.concert-photo{width:76px}}
@media(max-width:600px){.concert-manager{padding:16px 0 45px}.concert-heading h1{font-size:25px}.concert-editor,.concert-record{padding:20px 16px;border-radius:16px}.concert-fields{grid-template-columns:1fr;gap:0}.concert-record-heading{align-items:flex-start;gap:8px}.concert-record-heading h3{font-size:18px}.concert-record-heading button{font-size:12px;padding:10px 12px}.concert-metrics{padding:16px 4px;gap:2px}.concert-metrics strong{font-size:22px}.concert-metrics span{font-size:10px}.concert-photos img{width:76px;height:76px}.concert-revenue>span{display:block;margin:6px 0 0}.concert-intro{padding:16px 18px}}
