/* Scoped desktop character controls and modal. */
html body.social-page #socialGrid .cc-launchers{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin:0;align-items:stretch;}
html body.social-page #socialGrid .cc-launchers>.video-effects-panel{width:auto!important;min-width:0!important;margin:0!important;padding:12px!important;box-sizing:border-box;cursor:pointer;text-align:left;}
html body.social-page #socialGrid .cc-launchers .video-effects-title{width:100%;min-width:0;padding:0!important;font-size:13px!important;text-align:left;}
html body.social-page #socialGrid .cc-launchers b{font-size:13px!important;white-space:normal!important;}
html body.social-page #socialGrid .cc-launchers small{display:block;font-size:11px!important;line-height:1.4;white-space:normal!important;margin-top:5px;text-align:left;}
html body.social-page #socialGrid .cc-launchers .video-effects-selected{font-size:11px;margin-top:8px;display:block;}
.cc-generation-note{font-size:11px;line-height:1.5;color:#64748b;margin:-4px 0 12px;}
body.social-dark .cc-generation-note{color:#a9b9d1;}
body.cc-modal-open{overflow:hidden;}
.cc-dialog{--cc-bg:#fff;--cc-card:#f8fafc;--cc-border:#dce3ee;--cc-text:#172238;--cc-muted:#64748b;color:var(--cc-text);background:var(--cc-bg);border:1px solid var(--cc-border);border-radius:22px;padding:0;margin:auto;width:min(860px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);box-shadow:0 30px 100px #0005;overflow:hidden;font:14px/1.5 Arial,sans-serif;}
.cc-dialog[open]{display:flex;flex-direction:column;}
.cc-dialog::backdrop{background:#030712b3;backdrop-filter:blur(5px);}
body.social-dark .cc-dialog{--cc-bg:#111827;--cc-card:#182235;--cc-border:#344156;--cc-text:#f1f5f9;--cc-muted:#b2bed0;color-scheme:dark;}
.cc-dialog *{box-sizing:border-box;}
.cc-dialog button,.cc-dialog input,.cc-dialog select{font:inherit;}
.cc-dialog button{cursor:pointer;border:1px solid var(--cc-border);border-radius:9px;padding:8px 13px;background:var(--cc-bg);color:var(--cc-text);}
.cc-dialog button:hover:not(:disabled){border-color:#3b82f6;}
.cc-dialog button:disabled{opacity:.5;cursor:default;}
.cc-dialog[aria-busy="true"] button:disabled{cursor:wait;}
.cc-dialog :focus-visible{outline:3px solid #60a5fa;outline-offset:3px;}
.cc-head{display:flex;justify-content:space-between;gap:24px;padding:24px 28px 20px;border-bottom:1px solid var(--cc-border);flex-shrink:0;}
.cc-eyebrow{color:#4c8aff;font-size:11px;font-weight:700;letter-spacing:1.8px;}
.cc-head h2{font-size:27px;line-height:1.25;margin:6px 0;color:var(--cc-text);}
.cc-head p{margin:0;color:var(--cc-muted);}
.cc-body{overflow-y:auto;padding:20px 28px;min-height:0;overscroll-behavior:contain;}
.cc-info{border-radius:12px;padding:14px 16px;background:#3b82f60c;border:1px solid #3b82f635;margin-bottom:18px;}
.cc-info b{font-size:13px;}.cc-info p{font-size:12px;color:var(--cc-muted);margin:6px 0 0;}
.cc-row{border:1px solid var(--cc-border);border-radius:14px;padding:16px;background:var(--cc-card);margin:12px 0;}
.cc-row.cc-selected{border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f625;}
.cc-row-top{display:flex;align-items:center;gap:14px;}
.cc-row input[type=checkbox]{width:18px;height:18px;accent-color:#2563eb;flex-shrink:0;}
.cc-dialog .cc-photo{width:66px;height:66px;border-radius:50%;padding:0;overflow:hidden;flex-shrink:0;display:grid;place-items:center;}
.cc-photo img{width:100%;height:100%;object-fit:cover;}.cc-photo span{font-size:24px;line-height:1;}.cc-photo small{display:block;font-size:10px;}
.cc-identity{flex:1;min-width:0;}.cc-identity input{display:block;width:100%;font-size:18px;font-weight:600;border:1px solid var(--cc-border);background:var(--cc-bg);color:var(--cc-text);padding:8px 13px;outline-offset:1px;border-radius:9px;}.cc-identity input:focus{border-bottom-color:#3b82f6;}.cc-identity small{color:var(--cc-muted);font-size:12px;}
.cc-dialog .cc-play{background:#2563eb;color:#fff;border:0;border-radius:50%;width:38px;height:38px;padding:0;flex-shrink:0;display:grid;place-items:center;font-size:15px;}
.cc-dialog .cc-delete{color:var(--cc-muted);border:0;background:transparent;font-size:25px;padding:0 4px;}
.cc-row-actions{display:flex;align-items:center;gap:10px;margin:12px 0 0 98px;flex-wrap:wrap;}.cc-row-actions button{font-size:12px;}.cc-tags{font-size:11px;color:var(--cc-muted);}
.cc-voice-panel{margin:16px 0 0 98px;padding:16px;border:1px solid var(--cc-border);border-radius:12px;background:var(--cc-bg);box-shadow:0 12px 30px #0001;}
.cc-filters,.cc-upload-tags{display:flex;gap:12px;}.cc-filters label,.cc-upload-tags label{display:grid;gap:6px;flex:1;font-size:12px;color:var(--cc-muted);}
.cc-dialog select{width:100%;border:1px solid var(--cc-border);background:var(--cc-card);color:var(--cc-text);padding:9px;border-radius:8px;}
.cc-small{font-size:11px;color:var(--cc-muted);line-height:1.6;margin:12px 0 0;}.cc-voices{margin-top:10px;}.cc-voice-option{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--cc-border);}.cc-voice-option>div{flex:1;min-width:0;}.cc-voice-option b{font-size:12px;}.cc-voice-option small{display:block;font-size:10px;color:var(--cc-muted);}.cc-voice-option>button:last-child{font-size:11px;}.cc-empty-small{font-size:12px;color:var(--cc-muted);padding:12px 0;}
.cc-dialog .cc-add{width:100%;border-style:dashed;background:transparent;padding:14px;margin-top:6px;color:#4c8aff;}.cc-empty{text-align:center;padding:30px;color:var(--cc-muted);}
.cc-upload-tags{margin:12px 0 0 98px;}
.cc-footer{padding:15px 28px 20px;border-top:1px solid var(--cc-border);flex-shrink:0;}.cc-status{font-size:12px;color:var(--cc-muted);min-height:18px;margin-bottom:10px;}.cc-error{color:#e65757;}.cc-footer-buttons{display:flex;gap:10px;justify-content:flex-end;align-items:center;}.cc-footer-buttons>span{margin-right:auto;font-size:12px;color:var(--cc-muted);}.cc-dialog .cc-primary{background:#2563eb;border-color:#2563eb;color:white;}.cc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);}
@media(max-width:650px){.cc-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);}.cc-head,.cc-body,.cc-footer{padding:16px;}.cc-row-actions,.cc-voice-panel,.cc-upload-tags{margin-left:0;}.cc-row-top{gap:8px;}.cc-dialog .cc-photo{width:48px;height:48px;}.cc-identity input{font-size:15px;}.cc-footer-buttons{flex-wrap:wrap;}.cc-footer-buttons>span{width:100%;}}

/* Match the circular selectors in the video effects panel. */
.cc-dialog .cc-row input[type=checkbox]{appearance:none;-webkit-appearance:none;width:15px;height:15px;margin:0;border:1px solid #bdc6d1;border-radius:50%;background:#fff;box-shadow:none;cursor:pointer;}
.cc-dialog .cc-row input[type=checkbox]:checked{border:4px solid #aeb8c4;background:#1d232b;}
body.social-dark .cc-dialog .cc-row input[type=checkbox]{background:#111827;border-color:#6b7280;}
body.social-dark .cc-dialog .cc-row input[type=checkbox]:checked{background:#d1d5db;border-color:#6b7280;}
.cc-library-filter,.cc-library-admin>label{display:grid;gap:6px;margin-top:12px;font-size:12px;color:var(--cc-muted);}
.cc-library-admin{border-top:1px solid var(--cc-border);margin-top:16px;padding-top:16px;}
.cc-library-admin input:not([type=file]){width:100%;border:1px solid var(--cc-border);border-radius:9px;padding:8px 13px;background:var(--cc-bg);color:var(--cc-text);}
.cc-library-admin .cc-filters{margin-top:12px;}.cc-library-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px;}
.cc-library .cc-voice-option b{overflow-wrap:anywhere;}

/* Voice controls: align with the name field and use the supplied SVG. */
.cc-dialog .cc-row-actions{margin-left:109px;}
.cc-dialog .cc-chevron{display:inline-block;transition:transform .15s;}
.cc-dialog button[aria-expanded="true"] .cc-chevron{transform:rotate(180deg);}
.cc-dialog .cc-play{background:transparent url('../icons-social/voice.svg?v=20261008-voice-controls-1') center/contain no-repeat;font-size:0;color:transparent;}
.cc-dialog .cc-play[aria-label="Остановить голос"]{box-shadow:0 0 0 3px #2563eb40;}
@media(max-width:650px){.cc-dialog .cc-row-actions{margin-left:79px;}}

/* Character name, actual voice waveform and playback share one centre line. */
.cc-dialog .cc-row-top{display:grid;grid-template-columns:15px 66px minmax(0,1fr) minmax(0,1fr) 38px 20px;gap:14px;align-items:start;}
.cc-dialog .cc-row-top>[data-cc-select]{align-self:center;}

.cc-dialog .cc-identity input{height:44px;min-width:0;}
.cc-dialog .cc-identity small{display:block;margin-top:3px;overflow-wrap:anywhere;}
.cc-dialog .cc-row-top>.cc-play{margin-top:3px;}
.cc-dialog .cc-row-top>.cc-delete{height:44px;line-height:44px;padding:0;}
.cc-wave{height:44px;min-width:0;display:flex;align-items:center;justify-content:center;color:var(--cc-text);font-size:10px;}
.cc-wave svg{display:block;width:100%;height:40px;fill:currentColor;}
@media(max-width:650px){.cc-dialog .cc-row-top{grid-template-columns:15px 48px minmax(0,1fr) 38px 20px;gap:8px;}.cc-dialog .cc-wave{grid-column:3;grid-row:2;height:32px;}.cc-dialog .cc-row-top>.cc-play{grid-column:4;grid-row:1;}.cc-dialog .cc-row-top>.cc-delete{grid-column:5;grid-row:1;}}

/* Match video effect selectors in both themes. */
.cc-dialog .cc-row input[type=checkbox]{appearance:none;-webkit-appearance:none;width:15px;height:15px;border:1px solid #bdc6d1;border-radius:50%;background:#fff;box-shadow:none;}
.cc-dialog .cc-row input[type=checkbox]:checked{border:4px solid #aeb8c4;background:#1d232b;}
body.social-dark .cc-dialog .cc-row input[type=checkbox]{background:#111827;border-color:#6b7280;}
body.social-dark .cc-dialog .cc-row input[type=checkbox]:checked{background:#d1d5db;border-color:#6b7280;}
.cc-dialog .cc-row input[type=checkbox]::before,.cc-dialog .cc-row input[type=checkbox]::after{content:none;display:none;}
.cc-save-dialog{width:min(520px,calc(100vw - 32px));}
.cc-save-dialog .cc-head{gap:16px;}.cc-save-dialog .cc-head h2{font-size:23px;}
.cc-save-dialog .cc-body p{margin:0;color:var(--cc-muted);}
.cc-save-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;}
