/* Muze Live 2.0 — dark theme, AMUZEME pink */
.muze-live-shell{--ml-bg:#14060d;--ml-panel:#1e0a14;--ml-panel-2:#2a0f1c;--ml-line:#3d1628;--ml-pink:#ff2a70;--ml-pink-2:#c026d3;--ml-text:#f5e6ee;--ml-dim:#b08ca0;color:var(--ml-text);font-size:15px;line-height:1.45}
.muze-live-shell *{box-sizing:border-box}
.muze-live-shell a{color:var(--ml-pink);text-decoration:none}
.muze-live-test-banner{background:repeating-linear-gradient(45deg,#7a3b00,#7a3b00 14px,#8f4a00 14px,#8f4a00 28px);color:#ffe9c7;padding:10px 16px;border-radius:10px;margin:0 0 14px;font-weight:600;letter-spacing:.02em}
@media(min-width:1100px){.ml-hero-actions{margin-right:96px}.ml-chat-head{padding-right:96px}}
.ml-hero{display:flex;justify-content:space-between;align-items:center;gap:16px;background:linear-gradient(120deg,var(--ml-panel),var(--ml-panel-2));border:1px solid var(--ml-line);border-radius:16px;padding:22px 26px;margin-bottom:18px}
.ml-hero h1{margin:.1em 0;font-size:2em;color:#fff}
.ml-hero p{margin:0;color:var(--ml-dim)}
.ml-eyebrow{color:var(--ml-pink);font-weight:700;font-size:.78em;letter-spacing:.14em}
.muze-live-shell a.ml-btn,.muze-live-shell button.ml-btn{color:#fff;text-decoration:none}
.ml-btn{display:inline-block;padding:10px 20px;border-radius:999px;border:1px solid var(--ml-line);background:var(--ml-panel-2);color:#fff;font-weight:600;cursor:pointer;font-size:.95em}
.ml-btn:hover{border-color:var(--ml-pink)}
.ml-btn-primary{background:linear-gradient(90deg,var(--ml-pink),var(--ml-pink-2));border:none;color:#fff}
.ml-btn-danger{background:#5b1020;border-color:#8f1b34}
.ml-btn[disabled]{opacity:.5;cursor:not-allowed}
.ml-loading,.ml-empty{padding:40px;text-align:center;color:var(--ml-dim);background:var(--ml-panel);border:1px solid var(--ml-line);border-radius:14px}
/* directory */
.ml-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.ml-tile{background:var(--ml-panel);border:1px solid var(--ml-line);border-radius:14px;overflow:hidden;transition:transform .15s,border-color .15s}
.ml-tile:hover{transform:translateY(-3px);border-color:var(--ml-pink)}
.ml-tile-thumb{position:relative;aspect-ratio:16/10;background:#0c030a center/cover no-repeat;display:flex;align-items:center;justify-content:center}
.ml-tile-thumb img{width:84px;height:84px;border-radius:50%;border:3px solid var(--ml-pink);object-fit:cover}
.ml-live-badge{position:absolute;top:10px;left:10px;background:#e01243;color:#fff;font-size:.72em;font-weight:800;letter-spacing:.08em;padding:3px 10px;border-radius:6px;animation:ml-pulse 1.6s infinite}
.ml-cb-badge{position:absolute;top:10px;right:10px;background:#f47321;color:#fff;font-size:.7em;font-weight:700;padding:3px 8px;border-radius:6px}
.ml-off-badge{position:absolute;top:10px;left:10px;background:#333;color:#bbb;font-size:.72em;font-weight:700;padding:3px 10px;border-radius:6px}
@keyframes ml-pulse{0%,100%{opacity:1}50%{opacity:.55}}
.ml-tile-meta{padding:12px 14px}
.ml-tile-meta .ml-name{font-weight:700;color:#fff}
.ml-tile-meta .ml-title{color:var(--ml-dim);font-size:.9em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ml-tile-row{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:.85em}
.ml-tile-links a{margin-right:10px}
.ml-viewers-chip{color:var(--ml-dim)}
/* room */
.ml-room{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}
@media(max-width:900px){.ml-room{grid-template-columns:1fr}}
.ml-player{position:relative;background:#000;border-radius:14px;overflow:hidden;aspect-ratio:16/9;border:1px solid var(--ml-line)}
.ml-player video,.ml-player iframe{width:100%;height:100%;display:block;border:0;object-fit:contain;background:#000}
.ml-player-status{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--ml-dim);background:#0c030a;z-index:2}
.ml-player-status.ml-hidden{display:none}
.ml-player-overlay{position:absolute;left:0;right:0;bottom:0;padding:8px 12px;display:flex;gap:10px;align-items:center;background:linear-gradient(transparent,rgba(0,0,0,.75));z-index:3;pointer-events:none}
.ml-under-player{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:12px;flex-wrap:wrap}
.ml-girl{display:flex;align-items:center;gap:12px}
.ml-girl img{width:52px;height:52px;border-radius:50%;border:2px solid var(--ml-pink);object-fit:cover}
.ml-girl .ml-name{font-weight:800;color:#fff;font-size:1.1em}
.ml-girl .ml-links a{margin-right:12px;font-size:.9em}
.ml-goal{flex:1;min-width:220px}
.ml-goal-bar{height:12px;border-radius:999px;background:var(--ml-panel-2);border:1px solid var(--ml-line);overflow:hidden}
.ml-goal-fill{height:100%;background:linear-gradient(90deg,var(--ml-pink),var(--ml-pink-2));width:0;transition:width .5s}
.ml-goal-label{font-size:.85em;color:var(--ml-dim);margin-top:4px}
.ml-tip-menu{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.muze-live-shell button.ml-tip-chip{text-transform:none;box-shadow:none}
.ml-tip-chip{background:var(--ml-panel);border:1px solid var(--ml-line);border-radius:999px;padding:8px 16px;cursor:pointer;color:#fff;font-weight:600}
.ml-tip-chip:hover{border-color:var(--ml-pink);background:var(--ml-panel-2)}
.ml-tip-chip .ml-coins{color:#ffd166;font-weight:800}
/* chat */
.ml-chat{background:var(--ml-panel);border:1px solid var(--ml-line);border-radius:14px;display:flex;flex-direction:column;height:560px}
.ml-chat-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--ml-line);font-weight:700;color:#fff}
.ml-viewers{color:var(--ml-dim);font-weight:600;font-size:.85em}
.ml-chat-body{flex:1;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:7px}
.ml-chat-body-studio{height:420px}
.ml-msg{font-size:.92em;word-wrap:break-word}
.ml-msg .ml-who{font-weight:700;color:#7dd3fc;cursor:default}
.ml-msg.ml-msg-girl .ml-who{color:var(--ml-pink)}
.ml-msg.ml-msg-system{color:var(--ml-dim);font-style:italic}
.ml-msg.ml-msg-tip{background:linear-gradient(90deg,rgba(255,42,112,.18),transparent);border-left:3px solid #ffd166;padding:6px 10px;border-radius:6px}
.ml-msg.ml-msg-tip .ml-coins{color:#ffd166;font-weight:800}
.ml-msg .ml-test-flag{color:#f5a623;font-size:.75em;font-weight:700;margin-left:6px}
.muze-live-shell .ml-mute-btn{margin-left:8px;cursor:pointer;color:var(--ml-dim);font-size:.75em;background:none;border:none;padding:0;text-transform:lowercase;text-decoration:underline;box-shadow:none;border-radius:0;line-height:1}
.muze-live-shell .ml-mute-btn:hover{color:#e01243}
.ml-chat-foot{border-top:1px solid var(--ml-line);padding:10px}
.ml-chat-form{display:flex;gap:8px}
.ml-chat-form input[type=text]{flex:1;background:var(--ml-panel-2);border:1px solid var(--ml-line);color:#fff;border-radius:10px;padding:10px 12px;font-size:.95em}
.ml-chat-form input:focus{outline:none;border-color:var(--ml-pink)}
.ml-balance-row{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:.85em;color:var(--ml-dim)}
.ml-balance-row .ml-coins{color:#ffd166;font-weight:800}
/* studio */
.ml-studio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}
.ml-panel{background:var(--ml-panel);border:1px solid var(--ml-line);border-radius:14px;padding:18px}
.ml-panel h2{margin:0 0 12px;font-size:1.15em;color:#fff}
.ml-preview{position:relative;background:#000;border-radius:12px;overflow:hidden;aspect-ratio:16/9;border:1px solid var(--ml-line)}
.ml-preview video{width:100%;height:100%;object-fit:cover;display:block}
.ml-preview-status{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--ml-dim);background:#0c030a}
.ml-preview-status.ml-hidden{display:none}
.ml-studio-controls{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.ml-studio-stats{display:flex;gap:18px;margin-top:12px;color:var(--ml-dim);font-size:.9em;flex-wrap:wrap}
.ml-studio-stats b{color:#ffd166}
.ml-form-row{margin-bottom:12px}
.ml-form-row label{display:block;font-size:.85em;color:var(--ml-dim);margin-bottom:4px}
.ml-form-row input[type=text],.ml-form-row input[type=number],.ml-form-row select{width:100%;background:var(--ml-panel-2);border:1px solid var(--ml-line);color:#fff;border-radius:10px;padding:9px 12px}
.ml-inline{display:flex;gap:8px}
.ml-inline input{flex:1}
.ml-list-row{display:flex;gap:8px;margin-bottom:8px;align-items:center}
.ml-list-row input{background:var(--ml-panel-2);border:1px solid var(--ml-line);color:#fff;border-radius:8px;padding:7px 10px;min-width:0}
.ml-list-row .ml-x{cursor:pointer;color:#e01243;background:none;border:none;font-size:1.1em}
.ml-lovense-qr{text-align:center;padding:10px}
.ml-lovense-qr img{max-width:220px;border-radius:12px;background:#fff;padding:8px}
.ml-status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;background:#555}
.ml-status-dot.on{background:#22c55e}
.ml-note{color:var(--ml-dim);font-size:.85em;margin-top:8px}
.ml-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#2a0f1c;border:1px solid var(--ml-pink);color:#fff;padding:12px 22px;border-radius:12px;z-index:9999;box-shadow:0 8px 30px rgba(0,0,0,.5)}
