/* Existing site design is preserved. Styles below apply only to the added support controls. */
.release-date-hint{display:block;margin-top:7px;color:#c7cede;font-size:12px;line-height:1.5}
.support-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.support-mode{font-size:10px!important;padding:9px 16px 0;margin:0;color:var(--text-secondary)}
.support-chat-form{display:flex;gap:7px;margin:0 12px 9px;padding:6px;border:1px solid var(--glass-border);border-radius:10px;background:var(--bg-color)}
.support-chat-form input{width:100%;min-width:0;padding:6px;border:0;background:transparent;color:var(--text-primary);font:inherit;font-size:13px}
.support-chat-form button{background:var(--accent-primary);color:#fff;border:0;border-radius:7px;flex-shrink:0;width:32px;height:32px;font-size:18px;cursor:pointer}
.support-chat-form button:disabled{opacity:.5;cursor:wait}
.support-notice{font-size:9px!important;line-height:1.6;margin:0;padding:0 15px 13px;color:var(--text-secondary)}
.ai-body{min-height:80px;overscroll-behavior:contain;scrollbar-width:thin}
.ai-body .ai-msg{white-space:pre-wrap;overflow-wrap:anywhere}
.support-message-tag{display:block;font-size:9px;letter-spacing:.05em;font-weight:700;margin-bottom:4px;opacity:.7}
.ai-panel{max-height:calc(100dvh - 240px)}
.ai-panel .ai-body{flex:1;min-height:60px}
.ai-panel>*:not(.ai-body){flex-shrink:0}
.support-mail-status{margin-top:15px;border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:12px 14px;color:#fff;font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.support-mail-status.error{background:rgba(178,42,42,.22);border-color:#d88585}
.support-mail-status.success{background:rgba(25,140,90,.22);border-color:#70c89d}
.support-mail-alt{font-size:11px!important;margin:12px 0 0;color:#c7cede}
.support-mail-alt a{text-decoration:underline;color:inherit}
.support-remove-file{font-size:11px;color:inherit;border:0;background:none;text-decoration:underline;cursor:pointer}
.support-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.support-chat-form input:focus-visible,.support-chat-form button:focus-visible{outline:2px solid #83a6f9;outline-offset:2px}
html.dark .support-chat-form{background:#101521}
html.dark .support-chat-form button{background:#e1e7f5;color:#152033}
@media(max-width:768px){.ai-panel{max-height:calc(100dvh - 196px)}.support-chat-form input{font-size:16px}.support-chat-form input::placeholder{font-size:12px}.support-mail-status{font-size:12px}}
@media(max-height:500px){.ai-panel{top:8px;bottom:8px!important;max-height:none}.support-notice{display:none}}
.album-flow.catalogue-flow{display:block;position:relative;overflow-x:auto;overflow-y:hidden;height:auto!important;min-height:220px;padding:18px 0!important;margin:28px 0 12px!important;scroll-behavior:auto;cursor:grab;scrollbar-width:none;touch-action:pan-x pan-y}
.catalogue-flow::-webkit-scrollbar{display:none}.catalogue-flow:active{cursor:grabbing}
.catalogue-track{display:flex;width:max-content}.catalogue-group{display:flex;gap:20px;padding-right:20px;flex-shrink:0}
.catalogue-card{position:relative;display:block;flex:0 0 220px;width:220px;height:220px;overflow:hidden;border-radius:12px;background:var(--accent-primary);box-shadow:0 8px 22px rgba(10,20,40,.13);user-select:none}
.catalogue-card img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.catalogue-card:focus-visible{outline:3px solid #6d92ed;outline-offset:3px}
.catalogue-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff;font-size:12px;text-align:left;padding:26px 13px 11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .2s}
.catalogue-card:hover .catalogue-caption,.catalogue-card:focus .catalogue-caption,.catalogue-card.no-cover .catalogue-caption{opacity:1}.catalogue-card.no-cover:before{content:'♪';position:absolute;inset:0;display:grid;place-items:center;font-size:70px;color:rgba(255,255,255,.55)}
.catalogue-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin:14px 0 20px;font-size:11px;color:var(--text-secondary)}
.catalogue-controls button{border:1px solid var(--glass-border);background:var(--bg-color);color:var(--text-primary);border-radius:30px;padding:7px 12px;font:inherit;font-size:12px;cursor:pointer}
@media(max-width:768px){.catalogue-card{width:175px;height:175px;flex-basis:175px}.album-flow.catalogue-flow{min-height:195px}.catalogue-caption{font-size:10px}.catalogue-controls{gap:8px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.catalogue-caption{transition:none}.catalogue-controls #albumPause{display:none}}
[hidden]{display:none!important}
.support-chat-open .float-stack{visibility:hidden}
.support-tabs{display:flex;border-bottom:1px solid var(--glass-border);margin:8px 12px 0}
.support-tabs button{flex:1;background:none;border:0;padding:9px 4px;color:var(--text-secondary);font:inherit;font-size:12px;cursor:pointer}
.support-tabs button[aria-selected=true]{border-bottom:2px solid var(--accent-primary);color:var(--text-primary);font-weight:700}
.support-direct{padding:12px 16px 16px;overflow-y:auto;flex:1;min-height:0!important;flex-shrink:1!important}
.support-direct>p{font-size:11px;color:var(--text-secondary);margin-bottom:12px}
.support-direct>label{font-size:11px;display:block;margin:8px 0 4px;color:var(--text-primary)}
.support-direct>input,.support-direct>textarea{width:100%;border:1px solid var(--glass-border);background:var(--bg-color);color:var(--text-primary);border-radius:6px;padding:8px 10px;font:inherit;font-size:13px;box-sizing:border-box}
.support-direct>textarea{resize:vertical;min-height:75px}
.support-direct label.support-direct-consent{display:flex;gap:7px;font-size:10px;line-height:1.6;margin-top:12px;align-items:flex-start}
.support-direct-consent input{flex-shrink:0;margin-top:3px}
.support-direct>button{width:100%;margin-top:12px;border:0;border-radius:7px;background:var(--accent-primary);color:#fff;padding:10px;font:inherit;font-size:12px;cursor:pointer}
#directStatus{font-size:11px;border:1px solid var(--glass-border);padding:10px;margin-top:10px;border-radius:7px;color:var(--text-primary)}
#directStatus.error{color:#b64444}.ai-panel:has(.support-direct:not([hidden])){bottom:120px;max-height:calc(100dvh - 155px)}
@media(max-width:768px){.support-direct>input,.support-direct>textarea{font-size:16px}.ai-panel:has(.support-direct:not([hidden])){bottom:76px!important;max-height:calc(100dvh - 100px)}}
